copilotkit 4.21.0 → 4.23.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.
- package/README.md +419 -23
- package/cli-build-info.json +8 -8
- package/index.js +62600 -43650
- package/onboarding/index.json +92 -9
- package/onboarding/prompts/authenticate/start.md +47 -43
- package/onboarding/prompts/conversion/plan.md +3 -3
- package/onboarding/prompts/credentials/finalize-plan.md +12 -7
- package/onboarding/prompts/credentials/plan.md +36 -25
- package/onboarding/prompts/credentials/settle-credentials.md +10 -7
- package/onboarding/prompts/credentials/write-plan.md +22 -20
- package/onboarding/prompts/deployment/choose-local.md +46 -0
- package/onboarding/prompts/deployment/local-evaluation.md +71 -0
- package/onboarding/prompts/fallback/best-effort.md +8 -8
- package/onboarding/prompts/feature/a2ui/implement.md +6 -6
- package/onboarding/prompts/feature/a2ui/plan.md +72 -0
- package/onboarding/prompts/feature/a2ui/proof.md +5 -5
- package/onboarding/prompts/feature/a2ui/start.md +11 -32
- package/onboarding/prompts/feature/channels/implement.md +23 -16
- package/onboarding/prompts/feature/channels/plan.md +85 -0
- package/onboarding/prompts/feature/channels/proof.md +5 -5
- package/onboarding/prompts/feature/channels/start.md +14 -41
- package/onboarding/prompts/feature/chat-suggestions/implement.md +6 -6
- package/onboarding/prompts/feature/chat-suggestions/plan.md +71 -0
- package/onboarding/prompts/feature/chat-suggestions/proof.md +5 -5
- package/onboarding/prompts/feature/chat-suggestions/start.md +11 -30
- package/onboarding/prompts/feature/complete.md +2 -2
- package/onboarding/prompts/feature/learning/implement.md +13 -13
- package/onboarding/prompts/feature/learning/plan.md +82 -0
- package/onboarding/prompts/feature/learning/proof.md +6 -6
- package/onboarding/prompts/feature/learning/start.md +11 -40
- package/onboarding/prompts/feature/open-generative-ui/implement.md +6 -6
- package/onboarding/prompts/feature/open-generative-ui/plan.md +70 -0
- package/onboarding/prompts/feature/open-generative-ui/proof.md +5 -5
- package/onboarding/prompts/feature/open-generative-ui/start.md +11 -30
- package/onboarding/prompts/feature/realtime-sync/implement.md +7 -7
- package/onboarding/prompts/feature/realtime-sync/plan.md +75 -0
- package/onboarding/prompts/feature/realtime-sync/proof.md +5 -5
- package/onboarding/prompts/feature/realtime-sync/start.md +10 -33
- package/onboarding/prompts/feature/rich-threads/implement.md +8 -8
- package/onboarding/prompts/feature/rich-threads/plan.md +77 -0
- package/onboarding/prompts/feature/rich-threads/proof.md +5 -5
- package/onboarding/prompts/feature/rich-threads/start.md +10 -35
- package/onboarding/prompts/feature/stop.md +3 -3
- package/onboarding/prompts/feature/voice/implement.md +6 -6
- package/onboarding/prompts/feature/voice/plan.md +74 -0
- package/onboarding/prompts/feature/voice/proof.md +5 -5
- package/onboarding/prompts/feature/voice/start.md +11 -29
- package/onboarding/prompts/framework/ag2.md +2 -2
- package/onboarding/prompts/framework/agno.md +2 -2
- package/onboarding/prompts/framework/built-in.md +2 -2
- package/onboarding/prompts/framework/claude-sdk-python.md +2 -2
- package/onboarding/prompts/framework/claude-sdk-typescript.md +2 -2
- package/onboarding/prompts/framework/crewai-flows.md +2 -2
- package/onboarding/prompts/framework/custom-ag-ui.md +101 -0
- package/onboarding/prompts/framework/deep-agents.md +2 -2
- package/onboarding/prompts/framework/google-adk.md +2 -2
- package/onboarding/prompts/framework/langgraph-fastapi.md +2 -2
- package/onboarding/prompts/framework/langgraph-python.md +2 -2
- package/onboarding/prompts/framework/langgraph-typescript.md +2 -2
- package/onboarding/prompts/framework/llamaindex.md +2 -2
- package/onboarding/prompts/framework/mastra.md +2 -2
- package/onboarding/prompts/framework/ms-agent-dotnet.md +3 -3
- package/onboarding/prompts/framework/ms-agent-harness-dotnet.md +3 -3
- package/onboarding/prompts/framework/ms-agent-python.md +2 -2
- package/onboarding/prompts/framework/pydantic-ai.md +2 -2
- package/onboarding/prompts/framework/strands-python.md +2 -2
- package/onboarding/prompts/framework/strands-typescript.md +2 -2
- package/onboarding/prompts/frontend/angular.md +10 -21
- package/onboarding/prompts/frontend/nextjs.md +3 -3
- package/onboarding/prompts/frontend/plan.md +7 -7
- package/onboarding/prompts/frontend/react-native.md +2 -2
- package/onboarding/prompts/frontend/react-spa.md +2 -2
- package/onboarding/prompts/frontend/vue.md +2 -2
- package/onboarding/prompts/implementation/build-and-validate.md +14 -13
- package/onboarding/prompts/proof/complete.md +3 -3
- package/onboarding/prompts/proof/oss-baseline.md +5 -5
- package/onboarding/prompts/proof/round-trip.md +18 -13
- package/onboarding/prompts/research/gather.md +9 -8
- package/onboarding/prompts/research/merge.md +6 -3
- package/onboarding/prompts/research/preflight.md +2 -2
- package/onboarding/prompts/research/route.md +26 -18
- package/onboarding/prompts/starter/clone.md +15 -14
- package/onboarding/prompts/stopped/run-failed.md +2 -2
- package/onboarding/prompts/subagent/create-plan.md +33 -40
- package/onboarding/prompts/subagent/implement-and-validate.md +58 -38
- package/onboarding/prompts/subagent/inspect-repository.md +4 -1
- package/onboarding/prompts/subagent/prove-oss-baseline.md +1 -1
- package/onboarding/prompts/subagent/prove-round-trip.md +117 -257
- package/onboarding/prompts/unsupported/no-validated-path.md +2 -2
- package/package.json +4 -1
- package/release/release-tool.js +167 -18
- package/services/local-auth-worker.js +21465 -0
package/onboarding/index.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"graphTree": "
|
|
2
|
+
"graphTree": "a92d5d4a1d73d583df5be10af020eeee9dc84ca9",
|
|
3
3
|
"intentRoots": {
|
|
4
4
|
"add-a2ui": "feature/a2ui/start",
|
|
5
5
|
"add-chat-suggestions": "feature/chat-suggestions/start",
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
"prompts": [
|
|
14
14
|
{
|
|
15
15
|
"edges": [
|
|
16
|
+
"deployment/choose-local",
|
|
16
17
|
"research/gather",
|
|
17
18
|
"stopped/run-failed"
|
|
18
19
|
],
|
|
@@ -29,6 +30,7 @@
|
|
|
29
30
|
},
|
|
30
31
|
{
|
|
31
32
|
"edges": [
|
|
33
|
+
"deployment/local-evaluation",
|
|
32
34
|
"credentials/settle-credentials"
|
|
33
35
|
],
|
|
34
36
|
"milestone": "credentials",
|
|
@@ -43,6 +45,7 @@
|
|
|
43
45
|
"framework/claude-sdk-python",
|
|
44
46
|
"framework/claude-sdk-typescript",
|
|
45
47
|
"framework/crewai-flows",
|
|
48
|
+
"framework/custom-ag-ui",
|
|
46
49
|
"framework/deep-agents",
|
|
47
50
|
"framework/langgraph-python",
|
|
48
51
|
"framework/langgraph-fastapi",
|
|
@@ -78,6 +81,21 @@
|
|
|
78
81
|
"milestone": "credentials",
|
|
79
82
|
"name": "credentials/write-plan"
|
|
80
83
|
},
|
|
84
|
+
{
|
|
85
|
+
"edges": [
|
|
86
|
+
"research/gather",
|
|
87
|
+
"stopped/run-failed"
|
|
88
|
+
],
|
|
89
|
+
"milestone": "deployment",
|
|
90
|
+
"name": "deployment/choose-local"
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"edges": [
|
|
94
|
+
"credentials/settle-credentials"
|
|
95
|
+
],
|
|
96
|
+
"milestone": "deployment",
|
|
97
|
+
"name": "deployment/local-evaluation"
|
|
98
|
+
},
|
|
81
99
|
{
|
|
82
100
|
"edges": [],
|
|
83
101
|
"milestone": "fallback",
|
|
@@ -91,6 +109,13 @@
|
|
|
91
109
|
"milestone": "feature",
|
|
92
110
|
"name": "feature/a2ui/implement"
|
|
93
111
|
},
|
|
112
|
+
{
|
|
113
|
+
"edges": [
|
|
114
|
+
"feature/a2ui/implement"
|
|
115
|
+
],
|
|
116
|
+
"milestone": "feature",
|
|
117
|
+
"name": "feature/a2ui/plan"
|
|
118
|
+
},
|
|
94
119
|
{
|
|
95
120
|
"edges": [
|
|
96
121
|
"feature/stop",
|
|
@@ -102,7 +127,7 @@
|
|
|
102
127
|
{
|
|
103
128
|
"edges": [
|
|
104
129
|
"feature/stop",
|
|
105
|
-
"feature/a2ui/
|
|
130
|
+
"feature/a2ui/plan"
|
|
106
131
|
],
|
|
107
132
|
"milestone": "feature",
|
|
108
133
|
"name": "feature/a2ui/start"
|
|
@@ -120,6 +145,13 @@
|
|
|
120
145
|
"milestone": "feature",
|
|
121
146
|
"name": "feature/channels/implement"
|
|
122
147
|
},
|
|
148
|
+
{
|
|
149
|
+
"edges": [
|
|
150
|
+
"feature/channels/implement"
|
|
151
|
+
],
|
|
152
|
+
"milestone": "feature",
|
|
153
|
+
"name": "feature/channels/plan"
|
|
154
|
+
},
|
|
123
155
|
{
|
|
124
156
|
"edges": [
|
|
125
157
|
"feature/stop",
|
|
@@ -131,7 +163,7 @@
|
|
|
131
163
|
{
|
|
132
164
|
"edges": [
|
|
133
165
|
"feature/stop",
|
|
134
|
-
"feature/channels/
|
|
166
|
+
"feature/channels/plan"
|
|
135
167
|
],
|
|
136
168
|
"milestone": "feature",
|
|
137
169
|
"name": "feature/channels/start"
|
|
@@ -144,6 +176,13 @@
|
|
|
144
176
|
"milestone": "feature",
|
|
145
177
|
"name": "feature/chat-suggestions/implement"
|
|
146
178
|
},
|
|
179
|
+
{
|
|
180
|
+
"edges": [
|
|
181
|
+
"feature/chat-suggestions/implement"
|
|
182
|
+
],
|
|
183
|
+
"milestone": "feature",
|
|
184
|
+
"name": "feature/chat-suggestions/plan"
|
|
185
|
+
},
|
|
147
186
|
{
|
|
148
187
|
"edges": [
|
|
149
188
|
"feature/stop",
|
|
@@ -155,7 +194,7 @@
|
|
|
155
194
|
{
|
|
156
195
|
"edges": [
|
|
157
196
|
"feature/stop",
|
|
158
|
-
"feature/chat-suggestions/
|
|
197
|
+
"feature/chat-suggestions/plan"
|
|
159
198
|
],
|
|
160
199
|
"milestone": "feature",
|
|
161
200
|
"name": "feature/chat-suggestions/start"
|
|
@@ -174,6 +213,13 @@
|
|
|
174
213
|
"milestone": "feature",
|
|
175
214
|
"name": "feature/learning/implement"
|
|
176
215
|
},
|
|
216
|
+
{
|
|
217
|
+
"edges": [
|
|
218
|
+
"feature/learning/implement"
|
|
219
|
+
],
|
|
220
|
+
"milestone": "feature",
|
|
221
|
+
"name": "feature/learning/plan"
|
|
222
|
+
},
|
|
177
223
|
{
|
|
178
224
|
"edges": [
|
|
179
225
|
"feature/stop",
|
|
@@ -186,7 +232,7 @@
|
|
|
186
232
|
"edges": [
|
|
187
233
|
"feature/blocked-by-plan",
|
|
188
234
|
"feature/stop",
|
|
189
|
-
"feature/learning/
|
|
235
|
+
"feature/learning/plan"
|
|
190
236
|
],
|
|
191
237
|
"milestone": "feature",
|
|
192
238
|
"name": "feature/learning/start"
|
|
@@ -199,6 +245,13 @@
|
|
|
199
245
|
"milestone": "feature",
|
|
200
246
|
"name": "feature/open-generative-ui/implement"
|
|
201
247
|
},
|
|
248
|
+
{
|
|
249
|
+
"edges": [
|
|
250
|
+
"feature/open-generative-ui/implement"
|
|
251
|
+
],
|
|
252
|
+
"milestone": "feature",
|
|
253
|
+
"name": "feature/open-generative-ui/plan"
|
|
254
|
+
},
|
|
202
255
|
{
|
|
203
256
|
"edges": [
|
|
204
257
|
"feature/stop",
|
|
@@ -210,7 +263,7 @@
|
|
|
210
263
|
{
|
|
211
264
|
"edges": [
|
|
212
265
|
"feature/stop",
|
|
213
|
-
"feature/open-generative-ui/
|
|
266
|
+
"feature/open-generative-ui/plan"
|
|
214
267
|
],
|
|
215
268
|
"milestone": "feature",
|
|
216
269
|
"name": "feature/open-generative-ui/start"
|
|
@@ -223,6 +276,13 @@
|
|
|
223
276
|
"milestone": "feature",
|
|
224
277
|
"name": "feature/realtime-sync/implement"
|
|
225
278
|
},
|
|
279
|
+
{
|
|
280
|
+
"edges": [
|
|
281
|
+
"feature/realtime-sync/implement"
|
|
282
|
+
],
|
|
283
|
+
"milestone": "feature",
|
|
284
|
+
"name": "feature/realtime-sync/plan"
|
|
285
|
+
},
|
|
226
286
|
{
|
|
227
287
|
"edges": [
|
|
228
288
|
"feature/stop",
|
|
@@ -234,7 +294,7 @@
|
|
|
234
294
|
{
|
|
235
295
|
"edges": [
|
|
236
296
|
"feature/stop",
|
|
237
|
-
"feature/realtime-sync/
|
|
297
|
+
"feature/realtime-sync/plan"
|
|
238
298
|
],
|
|
239
299
|
"milestone": "feature",
|
|
240
300
|
"name": "feature/realtime-sync/start"
|
|
@@ -247,6 +307,13 @@
|
|
|
247
307
|
"milestone": "feature",
|
|
248
308
|
"name": "feature/rich-threads/implement"
|
|
249
309
|
},
|
|
310
|
+
{
|
|
311
|
+
"edges": [
|
|
312
|
+
"feature/rich-threads/implement"
|
|
313
|
+
],
|
|
314
|
+
"milestone": "feature",
|
|
315
|
+
"name": "feature/rich-threads/plan"
|
|
316
|
+
},
|
|
250
317
|
{
|
|
251
318
|
"edges": [
|
|
252
319
|
"feature/stop",
|
|
@@ -258,7 +325,7 @@
|
|
|
258
325
|
{
|
|
259
326
|
"edges": [
|
|
260
327
|
"feature/stop",
|
|
261
|
-
"feature/rich-threads/
|
|
328
|
+
"feature/rich-threads/plan"
|
|
262
329
|
],
|
|
263
330
|
"milestone": "feature",
|
|
264
331
|
"name": "feature/rich-threads/start"
|
|
@@ -276,6 +343,14 @@
|
|
|
276
343
|
"milestone": "feature",
|
|
277
344
|
"name": "feature/voice/implement"
|
|
278
345
|
},
|
|
346
|
+
{
|
|
347
|
+
"edges": [
|
|
348
|
+
"feature/stop",
|
|
349
|
+
"feature/voice/implement"
|
|
350
|
+
],
|
|
351
|
+
"milestone": "feature",
|
|
352
|
+
"name": "feature/voice/plan"
|
|
353
|
+
},
|
|
279
354
|
{
|
|
280
355
|
"edges": [
|
|
281
356
|
"feature/stop",
|
|
@@ -287,7 +362,7 @@
|
|
|
287
362
|
{
|
|
288
363
|
"edges": [
|
|
289
364
|
"feature/stop",
|
|
290
|
-
"feature/voice/
|
|
365
|
+
"feature/voice/plan"
|
|
291
366
|
],
|
|
292
367
|
"milestone": "feature",
|
|
293
368
|
"name": "feature/voice/start"
|
|
@@ -340,6 +415,14 @@
|
|
|
340
415
|
"milestone": "framework",
|
|
341
416
|
"name": "framework/crewai-flows"
|
|
342
417
|
},
|
|
418
|
+
{
|
|
419
|
+
"edges": [
|
|
420
|
+
"frontend/plan",
|
|
421
|
+
"unsupported/no-validated-path"
|
|
422
|
+
],
|
|
423
|
+
"milestone": "framework",
|
|
424
|
+
"name": "framework/custom-ag-ui"
|
|
425
|
+
},
|
|
343
426
|
{
|
|
344
427
|
"edges": [
|
|
345
428
|
"frontend/plan",
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# Start CopilotKit onboarding
|
|
2
2
|
|
|
3
|
-
## What this run does
|
|
3
|
+
## What this run does
|
|
4
4
|
|
|
5
|
-
Read this before you
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
Read this before you proceed. This run executes the CopilotKit CLI through `npx`.
|
|
6
|
+
It spawns read-only inspection subagents inside the target project. It sends checkpoints
|
|
7
|
+
and optional friction reports to CopilotKit under the developer's telemetry setting. It
|
|
8
|
+
reads nothing outside the project
|
|
9
9
|
directory and changes files only after the developer approves a written plan. CopilotKit
|
|
10
10
|
Intelligence has a free Developer plan, and this run needs no paid subscription. Nothing it
|
|
11
11
|
does is hidden from the developer.
|
|
@@ -14,7 +14,7 @@ does is hidden from the developer.
|
|
|
14
14
|
|
|
15
15
|
Run each CLI call exactly as written, as its own command: no pipe, `tee`, `&&`, redirect,
|
|
16
16
|
or variable prefix. Every CLI call in this run matches the prefix rule
|
|
17
|
-
`["npx", "--prefer-offline", "--yes", "copilotkit@4.
|
|
17
|
+
`["npx", "--prefer-offline", "--yes", "copilotkit@4.23.0"]`. If a command can request
|
|
18
18
|
escalation with a prefix rule, request this one on the `onboard identify` call. If your
|
|
19
19
|
harness asks the developer to approve commands, tell them one approval of that prefix covers
|
|
20
20
|
every CLI call. Say then that the install, the dev servers, `curl` to the local app, and
|
|
@@ -33,10 +33,10 @@ That refusal is a pause, not a stop.
|
|
|
33
33
|
Run this before anything else in this prompt, including the welcome message below:
|
|
34
34
|
|
|
35
35
|
```text
|
|
36
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
36
|
+
npx --prefer-offline --yes copilotkit@4.23.0 onboard identify --coding-agent <coding-agent-slug> --model <model-id> --model-family <model-family>
|
|
37
37
|
```
|
|
38
38
|
|
|
39
|
-
Report your
|
|
39
|
+
Report your product slug, such as `codex` or `claude-code`.
|
|
40
40
|
|
|
41
41
|
- `--model`: copy the model id exactly as your instructions write it. If they name no
|
|
42
42
|
exact model id, leave out `--model` rather than guess.
|
|
@@ -55,17 +55,15 @@ own bookkeeping. Say what the run is doing in the developer's words instead.
|
|
|
55
55
|
Work from the target project directory. When `onboard start` listed several projects, the
|
|
56
56
|
one the developer chose is that directory.
|
|
57
57
|
|
|
58
|
-
The command
|
|
59
|
-
|
|
60
|
-
printed once.
|
|
58
|
+
The first command printed `onboarding_run_id:` followed by an id, once. Keep it for
|
|
59
|
+
the whole run. Every later command reports against it.
|
|
61
60
|
|
|
62
|
-
Every later command must run from the directory this run started in.
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
`npx --prefer-offline --yes copilotkit@4.21.0 onboard start --run <onboarding_run_id>` where you are
|
|
61
|
+
Every later command must run from the directory this run started in. Elsewhere, the
|
|
62
|
+
command cannot find its run and refuses. Do not report that refusal as a stop. Run
|
|
63
|
+
`npx --prefer-offline --yes copilotkit@4.23.0 onboard start --run <onboarding_run_id>` where you are
|
|
66
64
|
standing, then run the refused command again.
|
|
67
65
|
|
|
68
|
-
If you no longer hold the id, run `npx --prefer-offline --yes copilotkit@4.
|
|
66
|
+
If you no longer hold the id, run `npx --prefer-offline --yes copilotkit@4.23.0 onboard start` in the
|
|
69
67
|
directory this run started in, with no `--run` and no `--intent`. It reprints the id of the
|
|
70
68
|
run under way and starts nothing. An id this project does not already hold starts a second
|
|
71
69
|
run, and the work already done stops counting toward the first.
|
|
@@ -95,44 +93,34 @@ round trip, and leave the app running with its URLs. You finish with working sof
|
|
|
95
93
|
the evidence that it works.
|
|
96
94
|
|
|
97
95
|
Everything I need from you comes before that approval: sign-in, a few short setup questions,
|
|
98
|
-
and the plan itself. After you approve it,
|
|
99
|
-
|
|
100
|
-
me next when the app is running and I hand you its URLs
|
|
101
|
-
tell you what it was.
|
|
96
|
+
and the plan itself. After you approve it, I build and prove the integration, which is the
|
|
97
|
+
long part of this run. If I need you to approve a command, or something blocks me, I will ask
|
|
98
|
+
you here. Otherwise you hear from me next when the app is running and I hand you its URLs.
|
|
102
99
|
|
|
103
|
-
|
|
104
|
-
away" through "without you." with: "I will ask you to approve some commands while I build.
|
|
105
|
-
Keep this window open until the app runs." Decide this from your own approval policy, not
|
|
106
|
-
from your coding-agent slug.
|
|
107
|
-
|
|
108
|
-
That message belongs to the run, not to this prompt. If you already sent it in this run, do
|
|
109
|
-
not send it again, including on a second read of this prompt.
|
|
100
|
+
That message belongs to the run. Send it only once, including after a second read of this prompt.
|
|
110
101
|
|
|
111
102
|
Telemetry and friction reports follow the CLI telemetry setting the developer controls with
|
|
112
103
|
`copilotkit telemetry` or `DO_NOT_TRACK=1`. Each report is one or two sentences and carries
|
|
113
|
-
no secrets and no source. The feedback commands enforce that setting on every send
|
|
114
|
-
run says so once instead of asking again at each report.
|
|
104
|
+
no secrets and no source. The feedback commands enforce that setting on every send. Explain it once.
|
|
115
105
|
|
|
116
106
|
## Where commands run
|
|
117
107
|
|
|
118
108
|
The directory this run started in is the run root. Every `--path` argument is read against
|
|
119
109
|
it, so one path names one file from anywhere in the project.
|
|
120
110
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
record to the repository root by itself and prints where it put it.
|
|
111
|
+
`project select` differs: it writes the credential into the `.env` in its current directory.
|
|
112
|
+
Run it from the directory whose application reads that file. It hoists the project record
|
|
113
|
+
to the repository root and prints its path.
|
|
125
114
|
|
|
126
115
|
## Report a stop, wherever it happens
|
|
127
116
|
|
|
128
117
|
This run reports its own stops. If you stop this run at any point, send one short report
|
|
129
|
-
before you stop.
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
the report itself, or says to file none, overrides this.
|
|
118
|
+
before you stop. This includes unexpected stops and stops caused by your harness.
|
|
119
|
+
A turn that ends while the run waits is a pause, not a stop, even when your harness ends it.
|
|
120
|
+
A terminal that sends the report itself, or says to file none, overrides this.
|
|
133
121
|
|
|
134
122
|
```text
|
|
135
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
123
|
+
npx --prefer-offline --yes copilotkit@4.23.0 onboard friction --phase stop --category <slug> --message "<sentences>"
|
|
136
124
|
```
|
|
137
125
|
|
|
138
126
|
`--message` takes one or two sentences: the step you stopped at and what stopped it.
|
|
@@ -145,9 +133,20 @@ not a failed step. Reword it and send it again, or stop without a report.
|
|
|
145
133
|
Reporting a stop is not a route change. It does not resume the run or replace what the
|
|
146
134
|
rule that stopped you says next: send the report, then stop.
|
|
147
135
|
|
|
136
|
+
## Choose where the app stores data
|
|
137
|
+
|
|
138
|
+
Before sign-in, run `npx --prefer-offline --yes copilotkit@4.23.0 local --help`.
|
|
139
|
+
If it lists candidate setup and no choice exists, offer managed service or local Docker
|
|
140
|
+
evaluation. If it does not, keep the managed path. Existing local recovery still works.
|
|
141
|
+
|
|
142
|
+
For a local choice, run
|
|
143
|
+
`npx --prefer-offline --yes copilotkit@4.23.0 onboard read deployment/choose-local`.
|
|
144
|
+
It records the choice for new and existing apps, completes sign-in, and starts research.
|
|
145
|
+
For managed service, continue with “Check sign-in”.
|
|
146
|
+
|
|
148
147
|
## Check sign-in
|
|
149
148
|
|
|
150
|
-
Run `npx --prefer-offline --yes copilotkit@4.
|
|
149
|
+
Run `npx --prefer-offline --yes copilotkit@4.23.0 login --json` before any project work. This command
|
|
151
150
|
checks the current session. It starts sign-in only as needed. Treat this as a long-lived
|
|
152
151
|
streaming process. Do not wait for the command to exit before you read its standard output.
|
|
153
152
|
|
|
@@ -160,6 +159,9 @@ Read each JSON Lines record as the running command writes it:
|
|
|
160
159
|
When that first URL arrives, send this exact message once. Do not send it when the
|
|
161
160
|
existing session is already valid, and do not add a feature list or another explanation:
|
|
162
161
|
|
|
162
|
+
For local evaluation, say: “Sign in to get the renewable evaluation license. Your
|
|
163
|
+
local dashboard will use CLI approval.” For the managed choice, say:
|
|
164
|
+
|
|
163
165
|
I am opening a sign-in page. Signing in gives this project a managed CopilotKit project
|
|
164
166
|
and its API key. That key is what lets your users reopen past conversations. You can
|
|
165
167
|
remove it later to disconnect this workspace.
|
|
@@ -172,7 +174,7 @@ Read each JSON Lines record as the running command writes it:
|
|
|
172
174
|
them to finish sign-in there. The page works from any device. Your own built-in browser
|
|
173
175
|
does not carry the session the developer already signed in with, so do not use it.
|
|
174
176
|
4. Keep monitoring the same login process. Do not start a second login command.
|
|
175
|
-
5.
|
|
177
|
+
5. Go past the research only after that same process emits `type: completed`.
|
|
176
178
|
6. On `type: failed` with `reason: expired`, ask once whether to retry. If yes, start one
|
|
177
179
|
new `login --json`. Use `--force` only when the developer asks.
|
|
178
180
|
7. If that process emits `type: failed`, report the error and stop onboarding. On
|
|
@@ -187,9 +189,11 @@ again and handle a new `authentication_url` as above. Step 4 forbids a second lo
|
|
|
187
189
|
Do not use `whoami` for this check. Do not put account tokens or credentials in the
|
|
188
190
|
conversation.
|
|
189
191
|
|
|
190
|
-
|
|
191
|
-
|
|
192
|
+
Research reads only this project and needs no account. Start it as soon as the session is
|
|
193
|
+
valid or the developer has the sign-in page, and keep monitoring the login process while it
|
|
194
|
+
runs: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read research/gather`. If this run already
|
|
195
|
+
started the research, do not start it again.
|
|
192
196
|
|
|
193
197
|
If sign-in stops onboarding, run
|
|
194
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
198
|
+
`npx --prefer-offline --yes copilotkit@4.23.0 onboard read stopped/run-failed`. It says nothing about
|
|
195
199
|
whether this project's stack is supported, which is not yet known at this point.
|
|
@@ -100,7 +100,7 @@ of this journey, and a drawer that lists nothing is not a reason to mint one. Li
|
|
|
100
100
|
tokens stay a self-hosted concern.
|
|
101
101
|
|
|
102
102
|
Where this journey's frontend framework ships no threads drawer -- React Native --, the
|
|
103
|
-
fifth item is proved by `npx --prefer-offline --yes copilotkit@4.
|
|
103
|
+
fifth item is proved by `npx --prefer-offline --yes copilotkit@4.23.0 verify --round-trip`, which sends a
|
|
104
104
|
real request and reads the answer back off the thread it landed on. The run says which of
|
|
105
105
|
the two it proved. Do not send a run to the managed Intelligence dashboard to prove this.
|
|
106
106
|
An authenticated browser session at a hosted dashboard is the one thing an agent-driven run
|
|
@@ -116,7 +116,7 @@ and passed -- so a run scored on either one was scored on the same fact. Every r
|
|
|
116
116
|
resolves that condition from, while `licenseStatus` is a compatibility projection of it
|
|
117
117
|
for older thread surfaces and outlives them only until those surfaces go.
|
|
118
118
|
|
|
119
|
-
Then run `npx --prefer-offline --yes copilotkit@4.
|
|
119
|
+
Then run `npx --prefer-offline --yes copilotkit@4.23.0 onboard read credentials/finalize-plan`.
|
|
120
120
|
|
|
121
121
|
If a selected page does not load after the second method, run
|
|
122
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
122
|
+
`npx --prefer-offline --yes copilotkit@4.23.0 onboard read unsupported/no-validated-path`.
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Select the Intelligence project
|
|
2
2
|
|
|
3
|
+
For a recorded local choice, run
|
|
4
|
+
`npx --prefer-offline --yes copilotkit@4.23.0 onboard read deployment/local-evaluation`.
|
|
5
|
+
That path obtains approval and connects the local project. Skip hosted selection.
|
|
6
|
+
Keep the implementation and feature-proof requirements.
|
|
7
|
+
|
|
3
8
|
Use the selected framework, frontend, model vendor, model, documentation URLs, and
|
|
4
9
|
repository findings. On a conversion, use the values the conversion prompt recorded, and
|
|
5
10
|
ask no framework or frontend question. Do not change application code in this phase. Do
|
|
@@ -24,7 +29,7 @@ Choose the starting state from the repository findings:
|
|
|
24
29
|
A run served `proof/oss-baseline` records one of the last two.
|
|
25
30
|
|
|
26
31
|
```text
|
|
27
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
32
|
+
npx --prefer-offline --yes copilotkit@4.23.0 onboard classify --starting-state <starting-state> --agent-framework <agent-framework> --frontend <frontend>
|
|
28
33
|
```
|
|
29
34
|
|
|
30
35
|
If a value is refused, fix it from the choices the earlier prompts gave, and run the
|
|
@@ -37,7 +42,7 @@ runtime `.env` file, that directory is the target, not the repository root. Do n
|
|
|
37
42
|
the developer to another terminal.
|
|
38
43
|
|
|
39
44
|
```text
|
|
40
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
45
|
+
npx --prefer-offline --yes copilotkit@4.23.0 onboard credentials --json
|
|
41
46
|
```
|
|
42
47
|
|
|
43
48
|
Every credential this run writes goes to the target's `.env`, the environment path. The
|
|
@@ -67,9 +72,9 @@ project from a listing without an answer that names it.
|
|
|
67
72
|
`--runtime-url` is the URL port research settled, mount path included:
|
|
68
73
|
|
|
69
74
|
```text
|
|
70
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
75
|
+
npx --prefer-offline --yes copilotkit@4.23.0 onboard credentials --create <name> \
|
|
71
76
|
--runtime-url http://localhost:<port>/api/copilotkit --json
|
|
72
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
77
|
+
npx --prefer-offline --yes copilotkit@4.23.0 onboard credentials --project <slug-or-id> \
|
|
73
78
|
--runtime-url http://localhost:<port>/api/copilotkit --json
|
|
74
79
|
```
|
|
75
80
|
|
|
@@ -79,8 +84,8 @@ command unless the developer asks to see their projects, or `notFound` is presen
|
|
|
79
84
|
show only what they asked for, and do not order it by creation time:
|
|
80
85
|
|
|
81
86
|
```text
|
|
82
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
83
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
87
|
+
npx --prefer-offline --yes copilotkit@4.23.0 project list --json
|
|
88
|
+
npx --prefer-offline --yes copilotkit@4.23.0 project list --search <query> --json
|
|
84
89
|
```
|
|
85
90
|
|
|
86
91
|
`app-directory` means that the key landed where no app reads it. Pick the directory in
|
|
@@ -95,4 +100,4 @@ the `--project` command from there with `project.slug`. Do not copy or link the
|
|
|
95
100
|
reused. The round-trip proof later runs the authenticated Intelligence checks, so record
|
|
96
101
|
the reused project credentials as unverified in the plan until those checks pass.
|
|
97
102
|
|
|
98
|
-
Then run `npx --prefer-offline --yes copilotkit@4.
|
|
103
|
+
Then run `npx --prefer-offline --yes copilotkit@4.23.0 onboard read credentials/settle-credentials`.
|
|
@@ -20,7 +20,7 @@ If the target directory holds no project and the copied prompt came from the Sla
|
|
|
20
20
|
Microsoft Teams docs page, do not ask the framework question. The Channel starter brings
|
|
21
21
|
its own agent, so an answer here decides nothing. Tell the developer that the Channel
|
|
22
22
|
starter decides the agent, then run
|
|
23
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
23
|
+
`npx --prefer-offline --yes copilotkit@4.23.0 onboard read frontend/plan`.
|
|
24
24
|
|
|
25
25
|
## Frameworks this machine cannot run yet
|
|
26
26
|
|
|
@@ -42,7 +42,7 @@ things in one message:
|
|
|
42
42
|
2. That the coding agent's shell reads PATH when it starts, so it cannot see the new
|
|
43
43
|
toolchain until the developer restarts the coding agent.
|
|
44
44
|
3. That the run resumes after the restart with
|
|
45
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
45
|
+
`npx --prefer-offline --yes copilotkit@4.23.0 onboard start --run <onboarding_run_id>`.
|
|
46
46
|
|
|
47
47
|
Then end your turn and wait for the developer. That restart is a step here, not an error.
|
|
48
48
|
|
|
@@ -65,6 +65,7 @@ These are the agent frameworks and their default vendors:
|
|
|
65
65
|
| Claude Agent SDK (Python) | Anthropic |
|
|
66
66
|
| Claude Agent SDK (TypeScript) | Anthropic |
|
|
67
67
|
| CrewAI Flows | Project-defined |
|
|
68
|
+
| Existing AG-UI agent | The agent's own |
|
|
68
69
|
| Deep Agents | OpenAI |
|
|
69
70
|
| LangGraph FastAPI | OpenAI |
|
|
70
71
|
| LangGraph Python | OpenAI |
|
|
@@ -83,9 +84,18 @@ the vendor with the developer: it keeps the one the repository already uses, and
|
|
|
83
84
|
single question when the repository shows none. Do not read it as a framework this release
|
|
84
85
|
cannot onboard.
|
|
85
86
|
|
|
87
|
+
"The agent's own" means that the route keeps the vendor the existing agent already uses.
|
|
88
|
+
Ask no vendor question for it.
|
|
89
|
+
|
|
86
90
|
If the project already has an agent in a listed framework, preserve that framework and
|
|
87
91
|
its model setup. Ask only about choices that remain unknown.
|
|
88
92
|
|
|
93
|
+
An existing agent that speaks AG-UI, but is none of the other frameworks above, takes the
|
|
94
|
+
Existing AG-UI agent route. For example, an `AbstractAgent` subclass that the project
|
|
95
|
+
wrote, or a service behind AG-UI middleware. Select it only for an agent that the
|
|
96
|
+
repository already has, and only when the findings prove that it speaks AG-UI. Do not
|
|
97
|
+
offer it for a new agent.
|
|
98
|
+
|
|
89
99
|
If the project needs an agent, show the options and one recommendation based on repository
|
|
90
100
|
evidence. Match the language the repository already uses. Ask the developer to choose.
|
|
91
101
|
|
|
@@ -101,26 +111,27 @@ developer's words instead.
|
|
|
101
111
|
|
|
102
112
|
Use exactly one matching internal route:
|
|
103
113
|
|
|
104
|
-
1. AG2: `npx --prefer-offline --yes copilotkit@4.
|
|
105
|
-
2. Agno: `npx --prefer-offline --yes copilotkit@4.
|
|
106
|
-
3. Built-in CopilotKit agent: `npx --prefer-offline --yes copilotkit@4.
|
|
107
|
-
4. Claude Agent SDK Python: `npx --prefer-offline --yes copilotkit@4.
|
|
108
|
-
5. Claude Agent SDK TypeScript: `npx --prefer-offline --yes copilotkit@4.
|
|
109
|
-
6. CrewAI Flows: `npx --prefer-offline --yes copilotkit@4.
|
|
110
|
-
7.
|
|
111
|
-
8.
|
|
112
|
-
9. LangGraph
|
|
113
|
-
10. LangGraph
|
|
114
|
-
11.
|
|
115
|
-
12.
|
|
116
|
-
13.
|
|
117
|
-
14. Microsoft Agent Framework
|
|
118
|
-
15.
|
|
119
|
-
16.
|
|
120
|
-
17.
|
|
121
|
-
18.
|
|
122
|
-
19. Strands Agents
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
114
|
+
1. AG2: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/ag2`
|
|
115
|
+
2. Agno: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/agno`
|
|
116
|
+
3. Built-in CopilotKit agent: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/built-in`
|
|
117
|
+
4. Claude Agent SDK Python: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/claude-sdk-python`
|
|
118
|
+
5. Claude Agent SDK TypeScript: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/claude-sdk-typescript`
|
|
119
|
+
6. CrewAI Flows: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/crewai-flows`
|
|
120
|
+
7. Existing AG-UI agent: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/custom-ag-ui`
|
|
121
|
+
8. Deep Agents: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/deep-agents`
|
|
122
|
+
9. LangGraph Python: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/langgraph-python`
|
|
123
|
+
10. LangGraph FastAPI: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/langgraph-fastapi`
|
|
124
|
+
11. LangGraph TypeScript: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/langgraph-typescript`
|
|
125
|
+
12. LlamaIndex: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/llamaindex`
|
|
126
|
+
13. ADK: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/google-adk`
|
|
127
|
+
14. Microsoft Agent Framework Python: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/ms-agent-python`
|
|
128
|
+
15. Microsoft Agent Framework .NET: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/ms-agent-dotnet`
|
|
129
|
+
16. Mastra: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/mastra`
|
|
130
|
+
17. MS Agent Harness .NET: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/ms-agent-harness-dotnet`
|
|
131
|
+
18. Pydantic AI: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/pydantic-ai`
|
|
132
|
+
19. Strands Agents Python: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/strands-python`
|
|
133
|
+
20. Strands Agents TypeScript: `npx --prefer-offline --yes copilotkit@4.23.0 onboard read framework/strands-typescript`
|
|
134
|
+
|
|
135
|
+
If the project has an agent in another framework that does not speak AG-UI, or no
|
|
136
|
+
listed framework fits, keep the developer's current agent and run
|
|
137
|
+
`npx --prefer-offline --yes copilotkit@4.23.0 onboard read unsupported/no-validated-path`.
|
|
@@ -21,23 +21,26 @@ The plan names the model credential variables. Run this from the directory that
|
|
|
21
21
|
`environmentPath` in the project step's result, with one `--model-key` for each variable:
|
|
22
22
|
|
|
23
23
|
```text
|
|
24
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
24
|
+
npx --prefer-offline --yes copilotkit@4.23.0 onboard credentials --model-key <variable> --json
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
When the framework node names another env file for the credential, add
|
|
28
|
-
`--env-
|
|
29
|
-
|
|
28
|
+
`--env-path <file>`. When the agent runs as its own service, such as a remote AG-UI agent,
|
|
29
|
+
that service reads its own env file. Add `--copy-to <service>/.env` for it. The command
|
|
30
|
+
copies the key there and protects that file, so do not copy the key yourself. Add one
|
|
31
|
+
`--path <file>` for each project file the developer changed for the credential. The command asks the vendor whether each key can pay for a model call, and it
|
|
30
32
|
never prints a value. When every key settles, it protects the credential paths. Read
|
|
31
33
|
`status`:
|
|
32
34
|
|
|
33
35
|
- `ready`: continue. Name each `unsupported` or `undetermined` `reason` in `modelKeys` in
|
|
34
|
-
the closing report.
|
|
36
|
+
the closing report. Name each `copiedKeys` entry with the outcome `kept` or `no-value`
|
|
37
|
+
too: that service does not get the checked key. When `outsideRepository` names a file, the app does not load it by
|
|
35
38
|
itself. By default, plan to copy the key into the app's env file, which git ignores.
|
|
36
39
|
This command protects that env file, and the copy is a file the run writes itself, so
|
|
37
40
|
list the copy under `Files the run writes itself`, not under `Authorization requested`.
|
|
38
41
|
The developer's approval of the plan is their consent to the copy. Copy the key without
|
|
39
42
|
printing it. Then record the copy with
|
|
40
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
43
|
+
`npx --prefer-offline --yes copilotkit@4.23.0 onboard protect --accept-credential --path <env file>`. If the developer declines the copy, the plan has the app read the key from an
|
|
41
44
|
environment variable that the developer sets. The plan then says how to set it. Never
|
|
42
45
|
write the outside path into a project file, not even in a config file such as
|
|
43
46
|
`langgraph.json`. A committed file that names a folder in the developer's home directory
|
|
@@ -46,7 +49,7 @@ never prints a value. When every key settles, it protects the credential paths.
|
|
|
46
49
|
- `needs-developer` with `question.status` `missing`: ask the developer `question.ask` in
|
|
47
50
|
those words. It offers three answers: another env file in this project, a file outside it,
|
|
48
51
|
or the developer adds the key to `question.envFile`. If they name a file, rerun the command
|
|
49
|
-
with `--env-
|
|
52
|
+
with `--env-path <path>`. If they add the key, rerun it as it is. Do not replace the
|
|
50
53
|
question with an instruction to paste the value into a file. The key can already be in a
|
|
51
54
|
file that you can point the check at.
|
|
52
55
|
- `needs-developer` with `question.status` `fail`: tell the developer `question.cause`.
|
|
@@ -66,4 +69,4 @@ Never read a file outside the project directory to find a credential: a key foun
|
|
|
66
69
|
bills another project. Asking for a path is not requesting a secret. A path the developer
|
|
67
70
|
names is theirs to give, including one outside the project. A path this run finds is not.
|
|
68
71
|
|
|
69
|
-
Then run `npx --prefer-offline --yes copilotkit@4.
|
|
72
|
+
Then run `npx --prefer-offline --yes copilotkit@4.23.0 onboard read credentials/write-plan`.
|