pi-better-goal
Pi extension for goal tracking with background-aware continuation.
Package details
Install pi-better-goal from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:pi-better-goal- Package
pi-better-goal- Version
0.3.1- Published
- Sep 19, 2026
- Downloads
- 1,309/mo · 435/wk
- Author
- exoulster
- License
- MIT
- Types
- extension
- Size
- 72.9 KB
- Dependencies
- 1 dependency · 3 peers
Pi manifest JSON
{
"image": "https://raw.githubusercontent.com/1aboveio/pi-better-harness/main/docs/images/package-gallery/pi-better-goal.png",
"extensions": [
"./src/index.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-better-goal
pi-better-goal is a Pi extension for goal tracking with background-aware continuation.
Quick Answer
Use pi-better-goal when a Pi session should keep an explicit objective visible until the foreground work and registered background activity are both done. It tracks active versus elapsed time and wakes the foreground when background work drains.
Screenshots
Core Features
/goalruntime for starting, pausing, resuming, completing, and clearing the current objective.escapepauses the active goal; paused goals are never poked.- A compact goal widget that does not replace Pi's footer.
- Background activity tracking for subagents and other registered providers.
- A progress-aware follow-up loop that holds after repeated identical outcomes.
- An observable-progress stall state for active goals.
Skill-Owned Workflows
Skills that own execution and their own task plan can opt in through SKILL.md frontmatter:
metadata:
workflow-role: coordinator
Invoke the skill with Pi's /skill:name command. The goal extension checks Pi's skill-command provenance, persists the owner on the session branch, and restores its instructions on resumed turns. It does not infer ownership from ordinary text or skill names. A goal such as /goal /skill:name task is rejected; invoke /skill:name task directly and use /goal only for a plain-language objective. Legacy slash-shaped goals pause on resume rather than running without the skill. /workflow shows the owner; call release_workflow after the workflow's completion audit (or use /workflow clear to release it manually). Completing an active goal also releases ownership.
When pi-better-plan is installed, it defers its prompt, checklist, and update_plan tool to a skill-owned task plan. Skills without this metadata retain normal goal and plan behavior. The skill itself owns its planning format and worker policy; the harness does not enumerate skills or impose a shared workflow schema. The former pi-better-plan-workflow: coordinator metadata remains supported for installed skills.
Install
pi install npm:pi-better-goal
Try it for one run:
pi -e npm:pi-better-goal
When To Use
Use this package for longer Pi sessions where subagents, background tasks, or other providers may still be active after the foreground message is idle.
Do not use it when you only need a note or checklist outside Pi's runtime state.
Compatibility
| Requirement | Support |
|---|---|
| Pi | Required |
| Install method | pi install npm:pi-better-goal |
| Background providers | Works with registered providers |
| Development runtime | Node.js 22+ |
Update Or Remove
pi update npm:pi-better-goal
pi remove npm:pi-better-goal
