@linimin/pi-letscook 0.1.62 → 0.1.64
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/README.md +18 -18
- package/extensions/completion/driver.ts +27 -46
- package/extensions/completion/index.ts +51 -69
- package/extensions/completion/prompt-surfaces.ts +2 -1
- package/extensions/completion/role-runner.ts +105 -0
- package/package.json +1 -1
- package/scripts/context-proposal-test.sh +141 -42
- package/scripts/refocus-test.sh +81 -4
- package/scripts/release-check.sh +15 -20
- package/scripts/smoke-test.sh +3 -3
- package/skills/cook-handoff-boundary/SKILL.md +22 -22
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: cook-handoff-boundary
|
|
3
|
-
description: Ordinary-chat contract for treating `/cook` as an optional workflow mode while
|
|
3
|
+
description: Ordinary-chat contract for treating `/cook` as an optional workflow mode while requiring `/cook` to use primary-agent-authored handoff data instead of guessing from recent discussion.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# /cook Handoff Boundary
|
|
@@ -17,7 +17,7 @@ This skill governs the relationship between:
|
|
|
17
17
|
- Ordinary chat may be used to clarify requirements, discuss tradeoffs, refine scope, and directly implement requested repo changes.
|
|
18
18
|
- `/cook` is an explicit workflow entrypoint for users who want resumability, review, audit, or canonical `.agent/**` workflow state.
|
|
19
19
|
- `/cook` is optional. It is not required just because the work spans multiple files or looks substantial.
|
|
20
|
-
- Ordinary chat remains ordinary chat until the user explicitly
|
|
20
|
+
- Ordinary chat remains ordinary chat until the user explicitly chooses `/cook`.
|
|
21
21
|
|
|
22
22
|
## What Ordinary Chat May Do
|
|
23
23
|
|
|
@@ -52,24 +52,20 @@ But even in those cases:
|
|
|
52
52
|
- do not frame `/cook` as mandatory for direct repo edits
|
|
53
53
|
- continue helping directly in ordinary chat unless the user explicitly chooses workflow mode
|
|
54
54
|
|
|
55
|
-
## Required Behavior
|
|
55
|
+
## Required Behavior When The User Explicitly Chooses `/cook`
|
|
56
56
|
|
|
57
|
-
|
|
57
|
+
If the user explicitly runs or clearly chooses `/cook` workflow mode, the system behavior should be:
|
|
58
58
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
59
|
+
1. check for a fresh explicit primary-agent `cook_handoff`
|
|
60
|
+
2. if none exists, call a primary-agent handoff synthesis step immediately from the current task context
|
|
61
|
+
3. use that handoff to show Start / Cancel confirmation in the same `/cook` entry
|
|
62
|
+
4. write canonical workflow state only after Start
|
|
63
63
|
|
|
64
|
-
|
|
64
|
+
That means:
|
|
65
65
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
- `/cook`
|
|
69
|
-
- `/cook` shows Start / Cancel confirmation before canonical workflow state is rewritten
|
|
70
|
-
- that synthesized startup brief is advisory intake only until the user confirms startup
|
|
71
|
-
|
|
72
|
-
This means the primary agent does not need to proactively attach startup capsules during ordinary chat just because the task looks ready.
|
|
66
|
+
- `/cook` must not infer or guess the startup slice from recent discussion alone
|
|
67
|
+
- `/cook` should use primary-agent-authored handoff data
|
|
68
|
+
- `/cook` should not require a manual rerun just to consume a handoff it can synthesize immediately from the primary-agent view
|
|
73
69
|
|
|
74
70
|
## Optional Preview Behavior
|
|
75
71
|
|
|
@@ -107,14 +103,12 @@ Optional preview capsule format:
|
|
|
107
103
|
Notes:
|
|
108
104
|
|
|
109
105
|
- `constraints` may be replaced or supplemented by `non_goals` when clearer.
|
|
110
|
-
- `first_slice_goal`, `first_slice_non_goals`, `implementation_surfaces`, `verification_commands`, and `why_this_slice_first` are required
|
|
111
|
-
- Any
|
|
106
|
+
- `first_slice_goal`, `first_slice_non_goals`, `implementation_surfaces`, `verification_commands`, and `why_this_slice_first` are required for an implementation-ready handoff.
|
|
107
|
+
- Any capsule is startup intake for `/cook` only. It is not canonical `.agent/**` state, not active-slice state, and not a second repo contract source.
|
|
112
108
|
|
|
113
109
|
Suggested wording:
|
|
114
110
|
|
|
115
|
-
> We can continue directly in ordinary chat if you want. If you prefer
|
|
116
|
-
|
|
117
|
-
A short recap may include mission, scope, or acceptance, but that recap must not be presented as canonical plan state.
|
|
111
|
+
> We can continue directly in ordinary chat if you want. If you prefer workflow mode, run `/cook` and it should use a primary-agent handoff for Start / Cancel confirmation rather than guessing from recent discussion.
|
|
118
112
|
|
|
119
113
|
## Forbidden Behaviors
|
|
120
114
|
|
|
@@ -125,9 +119,15 @@ Before the user explicitly runs `/cook`, the primary agent must not:
|
|
|
125
119
|
- claim canonical `.agent/**` startup state exists when it does not
|
|
126
120
|
- refuse ordinary-chat implementation solely because `/cook` would also be possible
|
|
127
121
|
|
|
122
|
+
When the user does explicitly choose `/cook`, the system must not:
|
|
123
|
+
|
|
124
|
+
- let `/cook` invent the startup mission from recent discussion alone
|
|
125
|
+
- let `/cook` replace missing handoff data with generic transcript guessing
|
|
126
|
+
- require a second `/cook` invocation when same-entry primary-agent handoff synthesis is possible
|
|
127
|
+
|
|
128
128
|
## Relationship To `completion-protocol`
|
|
129
129
|
|
|
130
|
-
This skill is only about pre-`/cook` ordinary-chat behavior.
|
|
130
|
+
This skill is only about pre-`/cook` ordinary-chat behavior and `/cook` handoff expectations.
|
|
131
131
|
|
|
132
132
|
After the user explicitly enters `/cook`, the separate `completion-protocol` skill governs:
|
|
133
133
|
|