mirror of
https://github.com/wassname/pi-goals.git
synced 2026-08-20 12:40:53 +08:00
release 0.2.0: docs and description follow the per-session plan path
Co-Authored-By: Claudypoo <288921227+claudypoo@users.noreply.github.com>
This commit is contained in:
@@ -2,11 +2,17 @@
|
||||
|
||||
Plan mode for agreeing on goals before any code gets written. Each goal names the subtle failure
|
||||
mode that could fake a "done" and the discriminator that tells real success from it. Everything
|
||||
lives in one markdown file, `.pi/plan.md`, which the agent edits with its normal edit tool and which
|
||||
doubles as the task list. A goal is signed off only after a fresh read-only judge checks its
|
||||
evidence against the repo.
|
||||
lives in one markdown file, `.pi/plan/<session_id>.md`, which the agent edits with its normal edit
|
||||
tool and which doubles as the task list. A goal is signed off only after a fresh read-only judge
|
||||
checks its evidence against the repo.
|
||||
|
||||

|
||||

|
||||
|
||||
One plan file per session, not per repo. Two windows on one checkout, and any subagent (pi spawns
|
||||
those with `--no-session`, extensions on), each get their own path, so they can't read or overwrite
|
||||
each other's plan. The file name is also the on switch: a session that never ran `/goals` has no file
|
||||
at its path, so the widget, the reminders and `CompleteGoal` all stay quiet. The id survives a
|
||||
`/resume` and a compaction; an explicit fork gets a new id, and so a fresh empty plan.
|
||||
|
||||
The file has a fold at `## Log`. Above it is the working set: title, the human's own words, goals,
|
||||
discriminators. Below it is durable memory: the log, the learnings, and an unlimited unverified
|
||||
@@ -47,20 +53,18 @@ pi -e ./src/index.ts
|
||||
`/goals` enters plan mode and starts a conversation; the objective is an optional seed. From there:
|
||||
|
||||
1. Plan. The agent explores read-only (edit/write are blocked except on the plan file itself), asks
|
||||
about anything unclear, and drafts the goals into `.pi/plan.md`. The drafting rules are sent
|
||||
once, with your objective, not re-sent every turn.
|
||||
about anything unclear, and drafts the goals into this session's plan file. The drafting rules
|
||||
are sent once, with your objective, not re-sent every turn.
|
||||
2. Review. Read the file; a menu asks Ready, open in `$EDITOR`, or keep planning. To revise, just
|
||||
reply. Plan mode ends when you pick Ready.
|
||||
3. Work. The agent ticks subtasks, appends to `## Log` and `## Learnings`, fills `evidence:`, and
|
||||
calls `CompleteGoal` when a discriminator is satisfied. If it leaves the plan untouched for two
|
||||
turns, the working set is sent back with a short upkeep reminder.
|
||||
|
||||
Other commands: `/goals clear` empties the plan file; `/goals judge <model-ref>` picks a specific
|
||||
model for the sign-off judge (default: your current session model, else pi's default).
|
||||
Other commands: `/goals clear` deletes this session's plan file; `/goals judge <model-ref>` picks a
|
||||
specific model for the sign-off judge (default: your current session model, else pi's default).
|
||||
|
||||
Coming from v1: a leftover `.pi/goals.md` is renamed to `.pi/plan.md` on session start.
|
||||
|
||||
## The plan.md format (a convention, not a schema)
|
||||
## The plan file format (a convention, not a schema)
|
||||
|
||||
```markdown
|
||||
# ship the cache layer
|
||||
|
||||
@@ -4,6 +4,9 @@ Working title. A pi extension: set up goals (with subtasks and evidence) through
|
||||
|
||||
Status: draft for review. Names, defaults, field shapes provisional.
|
||||
|
||||
The file is now `.pi/plan/<session_id>.md`, one per session, not the `plan.md` this spec names
|
||||
throughout. See [2026-08-14_per-session-plan.md](2026-08-14_per-session-plan.md).
|
||||
|
||||
---
|
||||
|
||||
## 1. Original ask → this spec
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@wassname2/pi-goals",
|
||||
"version": "0.1.1",
|
||||
"description": "One .pi/plan.md: set goals in plan mode, work them, sign off only when a read-only judge checks the evidence.",
|
||||
"version": "0.2.0",
|
||||
"description": "One plan file per session: set goals in plan mode, work them, sign off only when a read-only judge checks the evidence.",
|
||||
"author": "wassname",
|
||||
"license": "MIT",
|
||||
"type": "module",
|
||||
|
||||
Reference in New Issue
Block a user