pi-better-goal

Pi extension for goal tracking with background-aware continuation.

Packages

Package details

extension

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

  • /goal runtime for starting, pausing, resuming, completing, and clearing the current objective.
  • escape pauses 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

More Detail