sisyphi 1.1.9 → 1.1.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-REUQ4B45.js → chunk-GSXF3TCZ.js} +6 -2
- package/dist/{chunk-REUQ4B45.js.map → chunk-GSXF3TCZ.js.map} +1 -1
- package/dist/{chunk-M7LZ2ZHD.js → chunk-HQZOAX6D.js} +2 -2
- package/dist/{chunk-Z32YVDMY.js → chunk-ZSIYQB45.js} +2 -2
- package/dist/cli.js +7 -26
- package/dist/cli.js.map +1 -1
- package/dist/daemon.js +6 -3
- package/dist/daemon.js.map +1 -1
- package/dist/{paths-IJXOAN4E.js → paths-3EL2SCHI.js} +6 -4
- package/dist/templates/CLAUDE.md +2 -0
- package/dist/templates/orchestrator-base.md +15 -5
- package/dist/templates/orchestrator-completion.md +86 -0
- package/dist/templates/orchestrator-validation.md +8 -2
- package/dist/tui.js +1285 -265
- package/dist/tui.js.map +1 -1
- package/package.json +4 -1
- package/templates/CLAUDE.md +2 -0
- package/templates/orchestrator-base.md +15 -5
- package/templates/orchestrator-completion.md +86 -0
- package/templates/orchestrator-validation.md +8 -2
- /package/dist/{chunk-M7LZ2ZHD.js.map → chunk-HQZOAX6D.js.map} +0 -0
- /package/dist/{chunk-Z32YVDMY.js.map → chunk-ZSIYQB45.js.map} +0 -0
- /package/dist/{paths-IJXOAN4E.js.map → paths-3EL2SCHI.js.map} +0 -0
|
@@ -24,8 +24,9 @@ import {
|
|
|
24
24
|
snapshotsDir,
|
|
25
25
|
socketPath,
|
|
26
26
|
statePath,
|
|
27
|
-
strategyPath
|
|
28
|
-
|
|
27
|
+
strategyPath,
|
|
28
|
+
tuiScratchDir
|
|
29
|
+
} from "./chunk-GSXF3TCZ.js";
|
|
29
30
|
export {
|
|
30
31
|
contextDir,
|
|
31
32
|
cycleLogPath,
|
|
@@ -51,6 +52,7 @@ export {
|
|
|
51
52
|
snapshotsDir,
|
|
52
53
|
socketPath,
|
|
53
54
|
statePath,
|
|
54
|
-
strategyPath
|
|
55
|
+
strategyPath,
|
|
56
|
+
tuiScratchDir
|
|
55
57
|
};
|
|
56
|
-
//# sourceMappingURL=paths-
|
|
58
|
+
//# sourceMappingURL=paths-3EL2SCHI.js.map
|
package/dist/templates/CLAUDE.md
CHANGED
|
@@ -9,6 +9,7 @@ System prompt templates for orchestrator and agent initialization.
|
|
|
9
9
|
- **orchestrator-strategy.md** — Strategy-phase orchestrator guidance. Maps out visible stages, acknowledges constraints ahead, and establishes lifecycle ownership.
|
|
10
10
|
- **orchestrator-impl.md** — Implementation-phase orchestrator guidance. Context propagation from planning, code smell escalation, and verification patterns. Appended when `--mode implementation`.
|
|
11
11
|
- **orchestrator-validation.md** — Validation-phase orchestrator guidance. Emphasis on proving features work end-to-end via e2e recipes and operator agents for UI features.
|
|
12
|
+
- **orchestrator-completion.md** — Completion-phase orchestrator guidance. Appended when `--mode completion`.
|
|
12
13
|
- **agent-suffix.md** — Agent system prompt suffix. Contains `{{SESSION_ID}}` and `{{INSTRUCTION}}` placeholders. Rendered once per agent spawn.
|
|
13
14
|
- **dashboard-claude.md** — Dashboard companion prompt. Guides a Claude instance embedded in the TUI to help users manage sessions. Contains `{{CWD}}` and `{{SESSIONS_CONTEXT}}` placeholders.
|
|
14
15
|
- **banner.txt** — ASCII banner (cosmetic).
|
|
@@ -32,6 +33,7 @@ System prompt templates for orchestrator and agent initialization.
|
|
|
32
33
|
- `--mode strategy`: orchestrator-strategy.md
|
|
33
34
|
- `--mode implementation`: orchestrator-impl.md
|
|
34
35
|
- `--mode validation`: orchestrator-validation.md
|
|
36
|
+
- `--mode completion`: orchestrator-completion.md
|
|
35
37
|
3. Inject session state with agent reports, cycle count, roadmap.md/logs.md references
|
|
36
38
|
4. Load settings from `orchestrator-settings.json` (or project override)
|
|
37
39
|
5. Pass via `--append-system-prompt` flag
|
|
@@ -95,7 +95,7 @@ Every cycle, read strategy.md first. It tells you:
|
|
|
95
95
|
**Strategy is a living document.** Update it when:
|
|
96
96
|
- **The goal crystallizes** — you now see further ahead than when the strategy was written. Detail the next stage, flesh out "Ahead."
|
|
97
97
|
- **The goal shifts** — new information changes what "done" looks like. Revise the affected stages.
|
|
98
|
-
- **A stage completes** —
|
|
98
|
+
- **A stage completes** — delete it entirely and promote the next stage. Completed work belongs in cycle logs, not the strategy.
|
|
99
99
|
- **The approach is wrong** — backtracking reveals a fundamental issue. Revise the strategy.
|
|
100
100
|
|
|
101
101
|
Strategy updates happen every few cycles, not every cycle. The roadmap tracks cycle-to-cycle progress within a stage; the strategy tracks the shape of the work across stages.
|
|
@@ -113,6 +113,8 @@ You are respawned fresh each cycle — without roadmap.md, you'd have no idea wh
|
|
|
113
113
|
3. **Active Context** — list of context files currently relevant to the work
|
|
114
114
|
4. **Next Steps** — immediate actions for this and the next cycle
|
|
115
115
|
|
|
116
|
+
**Delete completed items entirely.** Do not mark them done, check them off, or summarize them. Completed work belongs in cycle logs, not the roadmap. The roadmap should get shorter as work completes, not longer. No `[done]` markers, no phase summaries, no completion history.
|
|
117
|
+
|
|
116
118
|
**Decisions do not go in the roadmap.** When exploration, review, or user feedback resolves a question or changes the approach, fold the result into the relevant context document (spec, plan, design) or create a new context file. The roadmap references these artifacts but never contains decision content, rationale, or design detail.
|
|
117
119
|
|
|
118
120
|
**The roadmap is not an implementation plan.** Stage breakdowns, design decisions, and file-level detail live in `context/` files.
|
|
@@ -142,7 +144,7 @@ Status: iterating on design after review feedback
|
|
|
142
144
|
- If clean, transition to plan stage
|
|
143
145
|
```
|
|
144
146
|
|
|
145
|
-
**Remove completed
|
|
147
|
+
**Remove completed items as stages finish** — exit criteria that are met, context files that are no longer relevant, next steps that are done. The roadmap reflects only outstanding work.
|
|
146
148
|
|
|
147
149
|
### Cycle Logs — Audit trail (write-only)
|
|
148
150
|
|
|
@@ -261,7 +263,8 @@ sisyphus yield --mode strategy --prompt "re-evaluate" # return to strategy mo
|
|
|
261
263
|
sisyphus yield --mode planning --prompt "re-evaluate" # switch to planning mode
|
|
262
264
|
sisyphus yield --mode implementation --prompt "begin" # switch to implementation mode
|
|
263
265
|
sisyphus yield --mode validation --prompt "validate" # switch to validation mode
|
|
264
|
-
sisyphus
|
|
266
|
+
sisyphus yield --mode completion --prompt "validated" # switch to completion mode (user sign-off)
|
|
267
|
+
sisyphus complete --report "summary of accomplishments" # complete the session (only from completion mode)
|
|
265
268
|
sisyphus continue # reactivate a completed session
|
|
266
269
|
sisyphus status # check session status
|
|
267
270
|
sisyphus message "note for next cycle" # queue message for yourself
|
|
@@ -276,14 +279,21 @@ If multiple agents run concurrently, ensure they don't edit the same files. If o
|
|
|
276
279
|
|
|
277
280
|
<completion>
|
|
278
281
|
|
|
279
|
-
|
|
282
|
+
**`sisyphus complete` should only be called from completion mode, after explicit user confirmation.**
|
|
283
|
+
|
|
284
|
+
The completion flow:
|
|
285
|
+
1. Validation passes → yield to completion mode (`sisyphus yield --mode completion`)
|
|
286
|
+
2. Completion mode presents a summary to the user and waits for confirmation
|
|
287
|
+
3. User confirms → `sisyphus complete --report "summary"`
|
|
288
|
+
|
|
289
|
+
Before yielding to completion mode, verify ALL of the following:
|
|
280
290
|
|
|
281
291
|
- [ ] The overall goal is genuinely achieved
|
|
282
292
|
- [ ] An agent other than the implementer has validated the work
|
|
283
293
|
- [ ] No unresolved MAJOR or CRITICAL review findings remain (labeling known issues as "prototype-acceptable" does not resolve them)
|
|
284
294
|
- [ ] You have stepped back and checked: Did we introduce code smells? Are we doing something stupid? Challenge assumptions that accumulated over the session — abstractions that made sense three cycles ago, workarounds that outlived their reason, complexity that crept in without justification
|
|
285
295
|
|
|
286
|
-
If any check fails, fix the issue
|
|
296
|
+
If any check fails, fix the issue before transitioning to completion mode.
|
|
287
297
|
|
|
288
298
|
After completing, if the user has follow-up requests, reactivate with `sisyphus continue`. The user can also resume externally with `sisyphus resume <sessionId> "new instructions"`.
|
|
289
299
|
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Completion Phase
|
|
2
|
+
|
|
3
|
+
You are in completion mode. Your job is to **present what was accomplished and get explicit user confirmation before finalizing the session.** This is the handoff — the user sees the results, asks questions, requests fixes, and confirms when they're satisfied.
|
|
4
|
+
|
|
5
|
+
## Build Your Understanding
|
|
6
|
+
|
|
7
|
+
Before presenting anything, read thoroughly:
|
|
8
|
+
|
|
9
|
+
1. **strategy.md** — the stages, the approach, how it evolved
|
|
10
|
+
2. **roadmap.md** — final state of the work
|
|
11
|
+
3. **Cycle history and agent reports** — what actually happened, not what was planned
|
|
12
|
+
4. **goal.md** — the original goal and any refinements
|
|
13
|
+
|
|
14
|
+
Synthesize this into a clear picture of what was done and how it maps to what was asked for.
|
|
15
|
+
|
|
16
|
+
## Present the Summary
|
|
17
|
+
|
|
18
|
+
Output a concise summary directly in the tmux pane. The user already knows what they asked for — don't recap the goal. Focus on what's interesting:
|
|
19
|
+
|
|
20
|
+
- **What was built** — the key deliverables, not an exhaustive file list. Highlight anything non-obvious or that diverged from the original ask.
|
|
21
|
+
- **Inflection points** — where the approach changed, surprising findings, tradeoffs that were made, things that were harder or easier than expected.
|
|
22
|
+
- **Gaps** — anything deferred, any known limitations. Be honest.
|
|
23
|
+
- **Validation** — brief summary of what was tested. Reference reports if the user wants detail.
|
|
24
|
+
|
|
25
|
+
Keep it tight. If the session was straightforward, the summary should be short. Save the detail for when the user asks.
|
|
26
|
+
|
|
27
|
+
## Wait for User Confirmation
|
|
28
|
+
|
|
29
|
+
After presenting the report, ask the user directly:
|
|
30
|
+
|
|
31
|
+
> Does this look good? Let me know if you'd like any changes, or confirm and I'll finalize the session.
|
|
32
|
+
|
|
33
|
+
Then **stop and wait.** The user will respond in the tmux pane.
|
|
34
|
+
|
|
35
|
+
**NEVER yield while waiting for user input.** Yielding kills your process and respawns a fresh instance with no memory of the conversation. This is the same rule as all other user-interaction points — ask and wait.
|
|
36
|
+
|
|
37
|
+
**NEVER call `sisyphus complete` until the user explicitly confirms.**
|
|
38
|
+
|
|
39
|
+
## Handle Feedback
|
|
40
|
+
|
|
41
|
+
When the user responds, assess the scope:
|
|
42
|
+
|
|
43
|
+
### Minor (typo, rename, small fix, cosmetic tweak)
|
|
44
|
+
Fix it yourself directly. Then re-present the affected section and ask for confirmation again. Multiple rounds of minor fixes are fine — stay in the conversation.
|
|
45
|
+
|
|
46
|
+
### Moderate (bug, edge case, missing error handling, incomplete feature)
|
|
47
|
+
These need agents. Accumulate all moderate items the user raises, then:
|
|
48
|
+
|
|
49
|
+
1. Update roadmap.md with the items to address
|
|
50
|
+
2. Update strategy.md if the approach needs adjustment
|
|
51
|
+
3. Yield back to implementation (or planning if the fix requires design):
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
sisyphus yield --mode implementation --prompt "User review surfaced issues to fix: [list items]. See roadmap.md for details."
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Don't yield after each individual item — collect them, then yield once.
|
|
58
|
+
|
|
59
|
+
### Major (new feature request, fundamental approach change, scope expansion)
|
|
60
|
+
These change the goal itself:
|
|
61
|
+
|
|
62
|
+
1. Update goal.md with the revised scope
|
|
63
|
+
2. Update strategy.md with the new direction
|
|
64
|
+
3. Yield to strategy mode:
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
sisyphus yield --mode strategy --prompt "User requested significant scope change: [summary]. Goal and strategy updated."
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Context Management
|
|
71
|
+
|
|
72
|
+
If the conversation runs long (many rounds of minor fixes, extended discussion), yield back to completion mode with a progress summary so you get fresh context:
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
sisyphus yield --mode completion --prompt "User review in progress. Fixed: [list]. Still discussing: [list]. Awaiting final confirmation."
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Finalizing
|
|
79
|
+
|
|
80
|
+
Only after the user explicitly confirms — "looks good", "ship it", "done", "approved", or equivalent — call:
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
sisyphus complete --report "summary of what was accomplished"
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
The report should be a concise summary suitable for session history. Reference the full completion report you presented if needed.
|
|
@@ -84,11 +84,17 @@ sisyphus yield --mode planning --prompt "Validation revealed [architectural issu
|
|
|
84
84
|
|
|
85
85
|
## Completion Gate
|
|
86
86
|
|
|
87
|
-
|
|
87
|
+
When all validation passes, **do not call `sisyphus complete` directly.** Yield to completion mode for user sign-off:
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
sisyphus yield --mode completion --prompt "Validation passed — all recipe steps verified. Ready for user review."
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
Only yield to completion when:
|
|
88
94
|
- Every recipe step has been executed (not skipped, not assumed)
|
|
89
95
|
- Every step has evidence of success in the validation report
|
|
90
96
|
- The evidence actually matches the success criteria from the recipe
|
|
91
97
|
|
|
92
98
|
If the recipe was updated during validation, re-validate against the updated version. Completion means the current recipe passes, not that an earlier draft would have.
|
|
93
99
|
|
|
94
|
-
Before
|
|
100
|
+
Before transitioning, step back: does the validated behavior actually satisfy the original goal? It's possible to pass every recipe step and still miss the point. The recipe is a tool, not a substitute for judgment.
|