copilotkit 4.18.0 → 4.20.0

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.
Files changed (79) hide show
  1. package/README.md +26 -12
  2. package/cli-build-info.json +7 -7
  3. package/index.js +4949 -3293
  4. package/onboarding/index.json +1 -1
  5. package/onboarding/prompts/authenticate/start.md +39 -32
  6. package/onboarding/prompts/conversion/plan.md +3 -3
  7. package/onboarding/prompts/credentials/finalize-plan.md +7 -7
  8. package/onboarding/prompts/credentials/plan.md +47 -21
  9. package/onboarding/prompts/credentials/settle-credentials.md +26 -12
  10. package/onboarding/prompts/credentials/write-plan.md +9 -6
  11. package/onboarding/prompts/fallback/best-effort.md +31 -19
  12. package/onboarding/prompts/feature/a2ui/implement.md +6 -12
  13. package/onboarding/prompts/feature/a2ui/proof.md +8 -19
  14. package/onboarding/prompts/feature/a2ui/start.md +9 -18
  15. package/onboarding/prompts/feature/channels/implement.md +12 -21
  16. package/onboarding/prompts/feature/channels/proof.md +7 -18
  17. package/onboarding/prompts/feature/channels/start.md +14 -21
  18. package/onboarding/prompts/feature/chat-suggestions/implement.md +6 -12
  19. package/onboarding/prompts/feature/chat-suggestions/proof.md +7 -18
  20. package/onboarding/prompts/feature/chat-suggestions/start.md +9 -18
  21. package/onboarding/prompts/feature/complete.md +4 -2
  22. package/onboarding/prompts/feature/learning/implement.md +13 -38
  23. package/onboarding/prompts/feature/learning/proof.md +8 -19
  24. package/onboarding/prompts/feature/learning/start.md +9 -18
  25. package/onboarding/prompts/feature/open-generative-ui/implement.md +6 -12
  26. package/onboarding/prompts/feature/open-generative-ui/proof.md +7 -18
  27. package/onboarding/prompts/feature/open-generative-ui/start.md +9 -18
  28. package/onboarding/prompts/feature/realtime-sync/implement.md +7 -13
  29. package/onboarding/prompts/feature/realtime-sync/proof.md +7 -18
  30. package/onboarding/prompts/feature/realtime-sync/start.md +8 -17
  31. package/onboarding/prompts/feature/rich-threads/implement.md +8 -14
  32. package/onboarding/prompts/feature/rich-threads/proof.md +7 -18
  33. package/onboarding/prompts/feature/rich-threads/start.md +8 -17
  34. package/onboarding/prompts/feature/stop.md +3 -3
  35. package/onboarding/prompts/feature/voice/implement.md +6 -12
  36. package/onboarding/prompts/feature/voice/proof.md +7 -18
  37. package/onboarding/prompts/feature/voice/start.md +9 -18
  38. package/onboarding/prompts/framework/ag2.md +2 -2
  39. package/onboarding/prompts/framework/agno.md +2 -2
  40. package/onboarding/prompts/framework/built-in.md +2 -2
  41. package/onboarding/prompts/framework/claude-sdk-python.md +2 -2
  42. package/onboarding/prompts/framework/claude-sdk-typescript.md +2 -2
  43. package/onboarding/prompts/framework/crewai-flows.md +2 -2
  44. package/onboarding/prompts/framework/deep-agents.md +2 -2
  45. package/onboarding/prompts/framework/google-adk.md +2 -2
  46. package/onboarding/prompts/framework/langgraph-fastapi.md +2 -2
  47. package/onboarding/prompts/framework/langgraph-python.md +2 -2
  48. package/onboarding/prompts/framework/langgraph-typescript.md +2 -2
  49. package/onboarding/prompts/framework/llamaindex.md +2 -2
  50. package/onboarding/prompts/framework/mastra.md +2 -2
  51. package/onboarding/prompts/framework/ms-agent-dotnet.md +8 -3
  52. package/onboarding/prompts/framework/ms-agent-harness-dotnet.md +8 -3
  53. package/onboarding/prompts/framework/ms-agent-python.md +2 -2
  54. package/onboarding/prompts/framework/pydantic-ai.md +2 -2
  55. package/onboarding/prompts/framework/strands-python.md +2 -2
  56. package/onboarding/prompts/framework/strands-typescript.md +2 -2
  57. package/onboarding/prompts/frontend/angular.md +3 -3
  58. package/onboarding/prompts/frontend/nextjs.md +3 -3
  59. package/onboarding/prompts/frontend/plan.md +7 -7
  60. package/onboarding/prompts/frontend/react-native.md +2 -2
  61. package/onboarding/prompts/frontend/react-spa.md +2 -2
  62. package/onboarding/prompts/frontend/vue.md +2 -2
  63. package/onboarding/prompts/implementation/build-and-validate.md +32 -40
  64. package/onboarding/prompts/proof/complete.md +89 -191
  65. package/onboarding/prompts/proof/oss-baseline.md +5 -5
  66. package/onboarding/prompts/proof/round-trip.md +22 -27
  67. package/onboarding/prompts/research/gather.md +5 -14
  68. package/onboarding/prompts/research/merge.md +4 -12
  69. package/onboarding/prompts/research/preflight.md +14 -55
  70. package/onboarding/prompts/research/route.md +7 -6
  71. package/onboarding/prompts/starter/clone.md +5 -15
  72. package/onboarding/prompts/stopped/run-failed.md +2 -2
  73. package/onboarding/prompts/subagent/create-plan.md +25 -1
  74. package/onboarding/prompts/subagent/inspect-repository.md +10 -2
  75. package/onboarding/prompts/subagent/prove-oss-baseline.md +1 -1
  76. package/onboarding/prompts/subagent/prove-round-trip.md +78 -56
  77. package/onboarding/prompts/unsupported/no-validated-path.md +2 -2
  78. package/package.json +1 -1
  79. package/release/release-tool.js +11 -2
@@ -17,7 +17,7 @@ follows the telemetry setting the developer already chose, so it needs no separa
17
17
  question.
18
18
 
19
19
  ```text
20
- npx --prefer-offline --yes copilotkit@4.18.0 onboard friction --phase stop --category <slug> --message "<sentences>"
20
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard friction --phase stop --category <slug> --message "<sentences>"
21
21
  ```
22
22
 
23
23
  `--message` takes one or two sentences: the step you stopped at and what stopped it.
@@ -49,7 +49,7 @@ settled refusal rather than a missing baseline, so stop here, before any file ch
49
49
  take its own ending:
50
50
 
51
51
  ```text
52
- npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/blocked-by-plan
52
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/blocked-by-plan
53
53
  ```
54
54
 
55
55
  `LEARNING_AVAILABILITY_UNAVAILABLE` means the platform did not resolve the answer. It is
@@ -63,7 +63,7 @@ then, so the read below is where its refusal surfaces.
63
63
  When the plan or the repository already names an id, ask about that one id and nothing else:
64
64
 
65
65
  ```text
66
- npx --prefer-offline --yes copilotkit@4.18.0 learning containers get <id> --json
66
+ npx --prefer-offline --yes copilotkit@4.20.0 learning containers get <id> --json
67
67
  ```
68
68
 
69
69
  One call answers it, and no list is needed.
@@ -71,7 +71,7 @@ One call answers it, and no list is needed.
71
71
  When no id is in hand, survey what the project holds:
72
72
 
73
73
  ```text
74
- npx --prefer-offline --yes copilotkit@4.18.0 learning containers list --json
74
+ npx --prefer-offline --yes copilotkit@4.20.0 learning containers list --json
75
75
  ```
76
76
 
77
77
  One call returns at most 500 containers. When `nextCursor` in the result is not null, read
@@ -79,15 +79,6 @@ the next page with `--cursor <nextCursor>` and keep going until it is null. A pr
79
79
  container sits on the second page looks empty to a single call, and the run then adds a
80
80
  second container for work the first one already covers.
81
81
 
82
- Report what the read found before asking anyone anything:
83
-
84
- ```text
85
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase container-surveyed
86
- ```
87
-
88
- Everything after this waits on a person, so a run that stops past this point stopped on a
89
- decision rather than on a read.
90
-
91
82
  Reuse an existing container when one covers the workflow this run is instrumenting, and ask
92
83
  the developer which one when more than one could. Otherwise create one.
93
84
 
@@ -103,7 +94,7 @@ user, so the callback can return a different id per tier or per customer.
103
94
  Ask the CLI for the id rather than spelling one yourself:
104
95
 
105
96
  ```text
106
- npx --prefer-offline --yes copilotkit@4.18.0 learning containers default-id --json
97
+ npx --prefer-offline --yes copilotkit@4.20.0 learning containers default-id --json
107
98
  ```
108
99
 
109
100
  It derives the project-scoped id from the selected project's slug, reads the local project
@@ -117,7 +108,7 @@ run that spells the id differently gives one project two containers, each below
117
108
  above on its own. One command is what keeps the two spellings identical.
118
109
 
119
110
  ```text
120
- npx --prefer-offline --yes copilotkit@4.18.0 learning containers create --id <id> --name <name> --json
111
+ npx --prefer-offline --yes copilotkit@4.20.0 learning containers create --id <id> --name <name> --json
121
112
  ```
122
113
 
123
114
  An id already in use answers `LEARNING_CONTAINER_ALREADY_EXISTS`. That is a container to
@@ -129,16 +120,6 @@ the cheap one to keep: a selector wired to an id the platform does not hold retu
129
120
  breaks on the next message. If the id does not resolve, take the feature stop route below. Do not write a placeholder
130
121
  or a guessed id.
131
122
 
132
- Then report that the container is settled, before any edit:
133
-
134
- ```text
135
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase container-settled
136
- ```
137
-
138
- Everything above happens between two prompts, so a run that stopped on a developer who could
139
- not choose, on a taken id, or on an id that never resolved would otherwise report the plan
140
- and then nothing at all.
141
-
142
123
  Add only the documented managed runtime/thread prerequisites and the selected
143
124
  `getLearningContainerId` on the `CopilotKitIntelligence` instance. Return the same stable
144
125
  1-64 character id for the same thread every time: a thread cannot move after its first
@@ -153,13 +134,13 @@ non-zero on an app that is working. Pass what `identifyUser` reads with a repeat
153
134
  It is not a defect to repair.
154
135
 
155
136
  Run focused tests and
156
- `npx --prefer-offline --yes copilotkit@4.18.0 verify --expect-runtime intelligence --round-trip --agent <agent-id> --json`.
137
+ `npx --prefer-offline --yes copilotkit@4.20.0 verify --expect-runtime intelligence --round-trip --agent <agent-id> --json`.
157
138
  Repair changed-file failures and record secret-safe evidence.
158
139
 
159
140
  Before you spawn the implementation subagent, take the authorized list from the CLI:
160
141
 
161
142
  ```text
162
- npx --prefer-offline --yes copilotkit@4.18.0 onboard audit
143
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard audit
163
144
  ```
164
145
 
165
146
  From its result, copy the paths under `Authorized to modify:`. A passed or failed audit with
@@ -178,7 +159,7 @@ still go on the record. Name the file and why the work needs it, then end your t
178
159
  for the developer's answer. If they allow it, record their answer before any edit:
179
160
 
180
161
  ```text
181
- npx --prefer-offline --yes copilotkit@4.18.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
162
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
182
163
  ```
183
164
 
184
165
  Continue only when the result starts with `Status: passed`. Run the audit again, take the
@@ -190,7 +171,7 @@ feature stop route below.
190
171
  After validation and each repair, run:
191
172
 
192
173
  ```text
193
- npx --prefer-offline --yes copilotkit@4.18.0 onboard audit
174
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard audit
194
175
  ```
195
176
 
196
177
  Continue only when it starts with `Status: passed`. A path under `Authorized to modify:` is
@@ -201,7 +182,7 @@ with the implementation subagent's `Files changed` section. If that section does
201
182
  the path, accept the developer's external change:
202
183
 
203
184
  ```text
204
- npx --prefer-offline --yes copilotkit@4.18.0 onboard protect --accept-external --path <path>
185
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --accept-external --path <path>
205
186
  ```
206
187
 
207
188
  For an env file where the developer placed a requested credential, use
@@ -215,17 +196,11 @@ with `Status: blocked`, route out and stop. Route out the same way when
215
196
  `--accept-credential` refuses because it names a lost variable:
216
197
 
217
198
  ```text
218
- npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/stop
219
- ```
220
-
221
- When implementation validation passes, report it:
222
-
223
- ```text
224
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase build-validated
199
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
225
200
  ```
226
201
 
227
202
  If validation cannot pass, or this intent needs a prerequisite the app does not have, use
228
203
  the feature stop route above without further changes.
229
204
 
230
205
  Otherwise run
231
- `npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/learning/proof`.
206
+ `npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/learning/proof`.
@@ -7,7 +7,7 @@ Container. Confirm the thread remains associated with the expected user.
7
7
  One command decides it:
8
8
 
9
9
  ```text
10
- npx --prefer-offline --yes copilotkit@4.18.0 verify --expect-runtime intelligence --round-trip --agent <agent-id> --expect-learning-container <id> --json
10
+ npx --prefer-offline --yes copilotkit@4.20.0 verify --expect-runtime intelligence --round-trip --agent <agent-id> --expect-learning-container <id> --json
11
11
  ```
12
12
 
13
13
  It reads the thread back from the platform, so it answers for any runtime mount, and it
@@ -40,7 +40,7 @@ still go on the record. Name the file and why the fix needs it, then end your tu
40
40
  for the developer's answer. If they allow it, record their answer before any edit:
41
41
 
42
42
  ```text
43
- npx --prefer-offline --yes copilotkit@4.18.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
43
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
44
44
  ```
45
45
 
46
46
  Continue only when the result starts with `Status: passed`. Run the audit again, take the
@@ -49,27 +49,16 @@ same handoff and that list. A subagent that already returned cannot pick up cons
49
49
  after it was spawned. If you cannot ask, or the developer declines, take the feature stop
50
50
  route below.
51
51
 
52
- Report each attempt at the proof as it ends, counting from one:
52
+ Report the outcome of each attempt as it ends, before any repair. The command counts the
53
+ attempts and the repairs:
53
54
 
54
55
  ```text
55
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase journey-attempted --attempt 1
56
- ```
57
-
58
- Report each repair cycle the same way, counting from one:
59
-
60
- ```text
61
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase repair-attempted --attempt 1
62
- ```
63
-
64
- After the final attempt, report the gate exactly once:
65
-
66
- ```text
67
- npx --prefer-offline --yes copilotkit@4.18.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
56
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
68
57
  ```
69
58
 
70
59
  Use `passed` only for a proved Container assignment, `failed` for an attempted proof that
71
60
  failed, and `skipped` when the proof could not run. Then run
72
- `npx --prefer-offline --yes copilotkit@4.18.0 onboard audit`. Continue only when it starts with
61
+ `npx --prefer-offline --yes copilotkit@4.20.0 onboard audit`. Continue only when it starts with
73
62
  `Status: passed`.
74
63
 
75
64
  If the audit fails, never repair, reset, or revert a protected path. Compare each named path
@@ -84,9 +73,9 @@ the path and the change the audit reports. Run the audit again after each accept
84
73
  If the audit still fails, or starts with `Status: blocked`, route out and stop:
85
74
 
86
75
  ```text
87
- npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/stop
76
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
88
77
  ```
89
78
 
90
79
  When the audit passes, run
91
- `npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/complete` with the actual surface
80
+ `npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/complete` with the actual surface
92
81
  outcome.
@@ -20,13 +20,13 @@ carry on. Keep a read-only assignment read-only. If no subagent works at all, re
20
20
  once:
21
21
 
22
22
  ```text
23
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase delegation-unavailable
23
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard checkpoint --phase delegation-unavailable
24
24
  ```
25
25
 
26
26
  Before you end your turn to wait for the developer, report the pause:
27
27
 
28
28
  ```text
29
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase awaiting-developer
29
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard checkpoint --phase awaiting-developer
30
30
  ```
31
31
 
32
32
  A turn that ends while the run waits is a pause, not a stop, even when your harness ends it.
@@ -36,7 +36,7 @@ If you stop this run, send one short report before you stop. The friction comman
36
36
  the telemetry setting the developer already chose, so it needs no separate question.
37
37
 
38
38
  ```text
39
- npx --prefer-offline --yes copilotkit@4.18.0 onboard friction --phase stop --category <slug> --message "<sentences>"
39
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard friction --phase stop --category <slug> --message "<sentences>"
40
40
  ```
41
41
 
42
42
  `--message` takes one or two sentences: the step you stopped at and what stopped it.
@@ -66,7 +66,7 @@ status:
66
66
  before the capture, the inspection, and any edit:
67
67
 
68
68
  ```text
69
- npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/blocked-by-plan
69
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/blocked-by-plan
70
70
  ```
71
71
 
72
72
  - `LEARNING_AVAILABILITY_UNAVAILABLE` means the platform did not resolve the answer. It is
@@ -87,7 +87,7 @@ again: it has no answer, so it carries the question forward rather than ending o
87
87
  Before any subagent or project process runs, capture the developer's existing work:
88
88
 
89
89
  ```text
90
- npx --prefer-offline --yes copilotkit@4.18.0 onboard protect
90
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard protect
91
91
  ```
92
92
 
93
93
  Keep the exact protected path list it prints and give that list to every subagent. No
@@ -101,17 +101,14 @@ test/dev commands. Prove the current round trip and inspect `/info`.
101
101
  Wait for the inspection subagent to finish. Then report that the inspection came back:
102
102
 
103
103
  ```text
104
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase research-returned
104
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard checkpoint --phase research-returned
105
105
  ```
106
106
 
107
- A refused checkpoint prints its reason and leaves onboarding unaffected. It is not a
108
- failed step.
109
-
110
107
  If the inspection did not prove the baseline this intent extends, stop here without
111
108
  changing files:
112
109
 
113
110
  ```text
114
- npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/stop
111
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
115
112
  ```
116
113
 
117
114
  Fetch the current official guides before planning:
@@ -143,17 +140,11 @@ one.
143
140
  After approval, record each approved path before implementation:
144
141
 
145
142
  ```text
146
- npx --prefer-offline --yes copilotkit@4.18.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>"
143
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>"
147
144
  ```
148
145
 
149
146
  If an approved path changed after capture and no implementation step has run, add
150
147
  `--with-prior-change`. Continue only when every result starts with `Status: passed`. Do not
151
148
  authorize a path the approved plan did not list.
152
149
 
153
- Then report the plan this run is about to implement:
154
-
155
- ```text
156
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase plan-written
157
- ```
158
-
159
- Then run `npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/learning/implement`.
150
+ Then run `npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/learning/implement`.
@@ -16,7 +16,7 @@ validation results without secrets.
16
16
  Before you spawn the implementation subagent, take the authorized list from the CLI:
17
17
 
18
18
  ```text
19
- npx --prefer-offline --yes copilotkit@4.18.0 onboard audit
19
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard audit
20
20
  ```
21
21
 
22
22
  From its result, copy the paths under `Authorized to modify:`. A passed or failed audit with
@@ -35,7 +35,7 @@ still go on the record. Name the file and why the work needs it, then end your t
35
35
  for the developer's answer. If they allow it, record their answer before any edit:
36
36
 
37
37
  ```text
38
- npx --prefer-offline --yes copilotkit@4.18.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
38
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
39
39
  ```
40
40
 
41
41
  Continue only when the result starts with `Status: passed`. Run the audit again, take the
@@ -47,7 +47,7 @@ feature stop route below.
47
47
  After validation and each repair, run:
48
48
 
49
49
  ```text
50
- npx --prefer-offline --yes copilotkit@4.18.0 onboard audit
50
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard audit
51
51
  ```
52
52
 
53
53
  Continue only when it starts with `Status: passed`. A path under `Authorized to modify:` is
@@ -58,7 +58,7 @@ with the implementation subagent's `Files changed` section. If that section does
58
58
  the path, accept the developer's external change:
59
59
 
60
60
  ```text
61
- npx --prefer-offline --yes copilotkit@4.18.0 onboard protect --accept-external --path <path>
61
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --accept-external --path <path>
62
62
  ```
63
63
 
64
64
  For an env file where the developer placed a requested credential, use
@@ -71,17 +71,11 @@ Run the audit again after each accepted change. If it still fails, or starts
71
71
  with `Status: blocked`, route out and stop:
72
72
 
73
73
  ```text
74
- npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/stop
75
- ```
76
-
77
- When implementation validation passes, report it:
78
-
79
- ```text
80
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase build-validated
74
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
81
75
  ```
82
76
 
83
77
  If validation cannot pass, or this intent needs a prerequisite the app does not have, use
84
78
  the feature stop route above without further changes.
85
79
 
86
80
  Otherwise run
87
- `npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/open-generative-ui/proof`.
81
+ `npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/open-generative-ui/proof`.
@@ -21,7 +21,7 @@ still go on the record. Name the file and why the fix needs it, then end your tu
21
21
  for the developer's answer. If they allow it, record their answer before any edit:
22
22
 
23
23
  ```text
24
- npx --prefer-offline --yes copilotkit@4.18.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
24
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
25
25
  ```
26
26
 
27
27
  Continue only when the result starts with `Status: passed`. Run the audit again, take the
@@ -30,26 +30,15 @@ same handoff and that list. A subagent that already returned cannot pick up cons
30
30
  after it was spawned. If you cannot ask, or the developer declines, take the feature stop
31
31
  route below.
32
32
 
33
- Report each attempt at the proof as it ends, counting from one:
33
+ Report the outcome of each attempt as it ends, before any repair. The command counts the
34
+ attempts and the repairs:
34
35
 
35
36
  ```text
36
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase journey-attempted --attempt 1
37
- ```
38
-
39
- Report each repair cycle the same way, counting from one:
40
-
41
- ```text
42
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase repair-attempted --attempt 1
43
- ```
44
-
45
- After the final attempt, report the gate exactly once:
46
-
47
- ```text
48
- npx --prefer-offline --yes copilotkit@4.18.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
37
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
49
38
  ```
50
39
 
51
40
  Use `passed` only for a proved generated UI, `failed` for an attempted proof that failed,
52
- and `skipped` when the proof could not run. Then run `npx --prefer-offline --yes copilotkit@4.18.0 onboard audit`.
41
+ and `skipped` when the proof could not run. Then run `npx --prefer-offline --yes copilotkit@4.20.0 onboard audit`.
53
42
  Continue only when it starts with `Status: passed`.
54
43
 
55
44
  If the audit fails, never repair, reset, or revert a protected path. Compare each named path
@@ -64,9 +53,9 @@ the path and the change the audit reports. Run the audit again after each accept
64
53
  If the audit still fails, or starts with `Status: blocked`, route out and stop:
65
54
 
66
55
  ```text
67
- npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/stop
56
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
68
57
  ```
69
58
 
70
59
  When the audit passes, run
71
- `npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/complete` with the outcome actually
60
+ `npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/complete` with the outcome actually
72
61
  observed.
@@ -19,13 +19,13 @@ carry on. Keep a read-only assignment read-only. If no subagent works at all, re
19
19
  once:
20
20
 
21
21
  ```text
22
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase delegation-unavailable
22
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard checkpoint --phase delegation-unavailable
23
23
  ```
24
24
 
25
25
  Before you end your turn to wait for the developer, report the pause:
26
26
 
27
27
  ```text
28
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase awaiting-developer
28
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard checkpoint --phase awaiting-developer
29
29
  ```
30
30
 
31
31
  A turn that ends while the run waits is a pause, not a stop, even when your harness ends it.
@@ -35,7 +35,7 @@ If you stop this run, send one short report before you stop. The friction comman
35
35
  the telemetry setting the developer already chose, so it needs no separate question.
36
36
 
37
37
  ```text
38
- npx --prefer-offline --yes copilotkit@4.18.0 onboard friction --phase stop --category <slug> --message "<sentences>"
38
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard friction --phase stop --category <slug> --message "<sentences>"
39
39
  ```
40
40
 
41
41
  `--message` takes one or two sentences: the step you stopped at and what stopped it.
@@ -49,7 +49,7 @@ one scoped fix, and sends the report itself when no fix is approved.
49
49
  Before any subagent or project process runs, capture the developer's existing work:
50
50
 
51
51
  ```text
52
- npx --prefer-offline --yes copilotkit@4.18.0 onboard protect
52
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard protect
53
53
  ```
54
54
 
55
55
  Keep the exact protected path list it prints and give that list to every subagent. No
@@ -59,23 +59,20 @@ approved authorization before implementation.
59
59
  Before edits, have a research subagent identify the current CopilotKit runtime route,
60
60
  provider/chat component, agent id, package versions, existing middleware, sandbox/CSP
61
61
  constraints, and normal test/dev commands. Prove the existing app first with `/info`,
62
- `npx --prefer-offline --yes copilotkit@4.18.0 verify --expect-runtime oss --round-trip --agent <agent-id> --json`,
62
+ `npx --prefer-offline --yes copilotkit@4.20.0 verify --expect-runtime oss --round-trip --agent <agent-id> --json`,
63
63
  and a real frontend request when browser control is available.
64
64
 
65
65
  Wait for the inspection subagent to finish. Then report that the inspection came back:
66
66
 
67
67
  ```text
68
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase research-returned
68
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard checkpoint --phase research-returned
69
69
  ```
70
70
 
71
- A refused checkpoint prints its reason and leaves onboarding unaffected. It is not a
72
- failed step.
73
-
74
71
  If the inspection did not prove the baseline this intent extends, stop here without
75
72
  changing files:
76
73
 
77
74
  ```text
78
- npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/stop
75
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
79
76
  ```
80
77
 
81
78
  Do not sign in, select an Intelligence project, create credentials, change the existing
@@ -97,17 +94,11 @@ one.
97
94
  After approval, record each approved path before implementation:
98
95
 
99
96
  ```text
100
- npx --prefer-offline --yes copilotkit@4.18.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>"
97
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>"
101
98
  ```
102
99
 
103
100
  If an approved path changed after capture and no implementation step has run, add
104
101
  `--with-prior-change`. Continue only when every result starts with `Status: passed`. Do not
105
102
  authorize a path the approved plan did not list.
106
103
 
107
- Then report the plan this run is about to implement:
108
-
109
- ```text
110
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase plan-written
111
- ```
112
-
113
- Then run `npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/open-generative-ui/implement`.
104
+ Then run `npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/open-generative-ui/implement`.
@@ -17,14 +17,14 @@ non-zero on an app that is working. Pass what `identifyUser` reads with a repeat
17
17
  It is not a defect to repair.
18
18
 
19
19
  Run focused tests and
20
- `npx --prefer-offline --yes copilotkit@4.18.0 verify --expect-runtime intelligence --round-trip --agent <agent-id> --json`.
20
+ `npx --prefer-offline --yes copilotkit@4.20.0 verify --expect-runtime intelligence --round-trip --agent <agent-id> --json`.
21
21
  Repair changed-file failures and record changed paths and secret-safe validation
22
22
  evidence.
23
23
 
24
24
  Before you spawn the implementation subagent, take the authorized list from the CLI:
25
25
 
26
26
  ```text
27
- npx --prefer-offline --yes copilotkit@4.18.0 onboard audit
27
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard audit
28
28
  ```
29
29
 
30
30
  From its result, copy the paths under `Authorized to modify:`. A passed or failed audit with
@@ -43,7 +43,7 @@ still go on the record. Name the file and why the work needs it, then end your t
43
43
  for the developer's answer. If they allow it, record their answer before any edit:
44
44
 
45
45
  ```text
46
- npx --prefer-offline --yes copilotkit@4.18.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
46
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
47
47
  ```
48
48
 
49
49
  Continue only when the result starts with `Status: passed`. Run the audit again, take the
@@ -55,7 +55,7 @@ feature stop route below.
55
55
  After validation and each repair, run:
56
56
 
57
57
  ```text
58
- npx --prefer-offline --yes copilotkit@4.18.0 onboard audit
58
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard audit
59
59
  ```
60
60
 
61
61
  Continue only when it starts with `Status: passed`. A path under `Authorized to modify:` is
@@ -66,7 +66,7 @@ with the implementation subagent's `Files changed` section. If that section does
66
66
  the path, accept the developer's external change:
67
67
 
68
68
  ```text
69
- npx --prefer-offline --yes copilotkit@4.18.0 onboard protect --accept-external --path <path>
69
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --accept-external --path <path>
70
70
  ```
71
71
 
72
72
  For an env file where the developer placed a requested credential, use
@@ -79,17 +79,11 @@ Run the audit again after each accepted change. If it still fails, or starts
79
79
  with `Status: blocked`, route out and stop:
80
80
 
81
81
  ```text
82
- npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/stop
83
- ```
84
-
85
- When implementation validation passes, report it:
86
-
87
- ```text
88
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase build-validated
82
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
89
83
  ```
90
84
 
91
85
  If validation cannot pass, or this intent needs a prerequisite the app does not have, use
92
86
  the feature stop route above without further changes.
93
87
 
94
88
  Otherwise run
95
- `npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/realtime-sync/proof`.
89
+ `npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/realtime-sync/proof`.
@@ -23,7 +23,7 @@ still go on the record. Name the file and why the fix needs it, then end your tu
23
23
  for the developer's answer. If they allow it, record their answer before any edit:
24
24
 
25
25
  ```text
26
- npx --prefer-offline --yes copilotkit@4.18.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
26
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
27
27
  ```
28
28
 
29
29
  Continue only when the result starts with `Status: passed`. Run the audit again, take the
@@ -32,26 +32,15 @@ same handoff and that list. A subagent that already returned cannot pick up cons
32
32
  after it was spawned. If you cannot ask, or the developer declines, take the feature stop
33
33
  route below.
34
34
 
35
- Report each attempt at the proof as it ends, counting from one:
35
+ Report the outcome of each attempt as it ends, before any repair. The command counts the
36
+ attempts and the repairs:
36
37
 
37
38
  ```text
38
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase journey-attempted --attempt 1
39
- ```
40
-
41
- Report each repair cycle the same way, counting from one:
42
-
43
- ```text
44
- npx --prefer-offline --yes copilotkit@4.18.0 onboard checkpoint --phase repair-attempted --attempt 1
45
- ```
46
-
47
- After the final attempt, report the gate exactly once:
48
-
49
- ```text
50
- npx --prefer-offline --yes copilotkit@4.18.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
39
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
51
40
  ```
52
41
 
53
42
  Use `passed` only for proved two-client sync, `failed` for an attempted proof that failed,
54
- and `skipped` when the proof could not run. Then run `npx --prefer-offline --yes copilotkit@4.18.0 onboard audit`.
43
+ and `skipped` when the proof could not run. Then run `npx --prefer-offline --yes copilotkit@4.20.0 onboard audit`.
55
44
  Continue only when it starts with `Status: passed`.
56
45
 
57
46
  If the audit fails, never repair, reset, or revert a protected path. Compare each named path
@@ -66,8 +55,8 @@ the path and the change the audit reports. Run the audit again after each accept
66
55
  If the audit still fails, or starts with `Status: blocked`, route out and stop:
67
56
 
68
57
  ```text
69
- npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/stop
58
+ npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
70
59
  ```
71
60
 
72
61
  When the audit passes, run
73
- `npx --prefer-offline --yes copilotkit@4.18.0 onboard read feature/complete` with the actual outcome.
62
+ `npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/complete` with the actual outcome.