- Restore exitPlanMode closing brace + CompleteGoal tool registration
opening that an earlier edit dropped (parse error at 224)
- Edit-revise path now sends with deliverAs:"followUp" so it doesn't
throw "Agent is already processing" mid-stream
- Bare /plan now prompts for an objective and enters plan mode instead
of only showing the current plan
Co-Authored-By: Claudypoo <288921227+claudypoo@users.noreply.github.com>
External review (deepseek-v4-pro, docs/reviews/review.md) found:
- Real bug: reviewLoop cast agent_end's ExtensionContext to ExtensionCommandContext
and called newSession on it, which would crash the "fresh context" path. Now the
/plan command handler's context (which has newSession) is saved and reused, with a
graceful in-place fallback (burneikis pattern).
- Dead code: continuation + loopJudge prompts are unused (the autonomous loop is
intentionally cut). Marked NOT-YET-WIRED in the prompts.ts flow header rather than
removed, so the full intended flow stays reviewable.
Review also confirmed: no comment bloat, no over-engineering.
Co-Authored-By: Claudypoo <288921227+claudypoo@users.noreply.github.com>
Small, guide-not-gate plan/goal tracker for pi. The agent edits plan.md with
its normal Edit tool; CompleteGoal is the one blessed path that runs verify +
a read-only judge and records the result. Plan mode drafts goals (done_when +
failure_modes + subtasks), a per-turn injection keeps the active goal alive
through compaction, and a reminder drives upkeep + autonomy.
- src/plan-file.ts: pure parse + the two writes CompleteGoal needs + recordSignOff
- src/index.ts: plan mode, review menu, injection, reminder, widget, CompleteGoal, oracle spawn
- src/prompts.ts: all model-facing text in flow order
- test/: 15 unit tests (parser, disambiguation, sign-off record logic)
Co-Authored-By: Claudypoo <288921227+claudypoo@users.noreply.github.com>