@ricoyudog/pi-goal-hermes
Goal-driven autonomous continuation for Pi coding agent - set a goal and let the agent work until done, with LLM-based judge evaluation
Package details
Install @ricoyudog/pi-goal-hermes from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@ricoyudog/pi-goal-hermes- Package
@ricoyudog/pi-goal-hermes- Version
0.1.0- Published
- May 23, 2026
- Downloads
- not available
- Author
- ricoyudog
- License
- MIT
- Types
- extension
- Size
- 34 KB
- Dependencies
- 0 dependencies · 3 peers
Pi manifest JSON
{
"extensions": [
"./index.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-goal-hermes
Goal-driven autonomous continuation extension for Pi. Set a goal and let the agent work autonomously until done, evaluated by a secondary LLM judge.
Install
pi install npm:@ricoyudog/pi-goal-hermes
Or project-local:
pi install -l npm:@ricoyudog/pi-goal-hermes
How It Works
- You set a goal via
/goal <description> - The agent works toward the goal autonomously
- After each turn, a secondary LLM (judge) evaluates whether the goal is achieved
- If not done, the agent automatically continues with a follow-up prompt
- The loop stops when: goal achieved, turn budget exhausted, or manually paused
Commands
/goal
| Command | Description |
|---|---|
/goal <text> |
Set a new goal (starts autonomous loop) |
/goal status |
Show current goal status and progress |
/goal pause |
Pause the goal loop |
/goal stop |
Stop the goal loop (alias for pause) |
/goal resume |
Resume a paused goal (resets turn counter) |
/goal done |
Manually mark goal as achieved |
/goal clear |
Clear the goal entirely |
/subgoal
Add additional acceptance criteria that the judge evaluates alongside the main goal.
| Command | Description |
|---|---|
/subgoal <text> |
Add a subgoal criterion |
/subgoal list |
List all subgoals |
/subgoal remove <n> |
Remove subgoal by index |
/subgoal clear |
Clear all subgoals |
Status Bar
The extension shows goal status in the Pi footer:
●Pursuing goal (active)⏸Goal paused✓Goal achieved
Configuration
- Default max turns: 20 (the agent gets 20 turns before the goal auto-pauses with "budget exhausted")
- Turn counter resets on
/goal resume
Pause Conditions
The goal automatically pauses when:
- Turn budget exhausted (20 turns by default)
- Judge output unparseable 3 times in a row
- Agent response errors or aborts
- Session reloads
- User interrupts (Ctrl+C)
Architecture
- Judge: Uses a fast model (e.g., Haiku) as a secondary evaluator
- State persistence: Goal state is stored in the session via custom entries (survives compaction)
- Continuation: Sends follow-up prompts to keep the agent working
- Event rendering: Custom message renderers for goal events in the conversation
License
MIT