copilotkit 4.28.0 → 4.29.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 +6 -3
- package/cli-build-info.json +5 -5
- package/index.js +555 -196
- package/onboarding/index.json +2 -2
- package/onboarding/prompts/authenticate/start.md +32 -20
- package/onboarding/prompts/conversion/plan.md +3 -3
- package/onboarding/prompts/credentials/finalize-plan.md +15 -15
- package/onboarding/prompts/credentials/plan.md +24 -24
- package/onboarding/prompts/credentials/settle-credentials.md +7 -7
- package/onboarding/prompts/credentials/write-plan.md +34 -26
- package/onboarding/prompts/deployment/choose-local.md +9 -9
- package/onboarding/prompts/deployment/local-evaluation.md +12 -12
- package/onboarding/prompts/fallback/best-effort.md +6 -6
- package/onboarding/prompts/feature/a2ui/implement.md +4 -4
- package/onboarding/prompts/feature/a2ui/plan.md +3 -3
- package/onboarding/prompts/feature/a2ui/proof.md +5 -5
- package/onboarding/prompts/feature/a2ui/start.md +17 -8
- package/onboarding/prompts/feature/channels/implement.md +7 -7
- package/onboarding/prompts/feature/channels/plan.md +5 -5
- package/onboarding/prompts/feature/channels/proof.md +5 -5
- package/onboarding/prompts/feature/channels/start.md +18 -9
- package/onboarding/prompts/feature/chat-suggestions/implement.md +4 -4
- package/onboarding/prompts/feature/chat-suggestions/plan.md +3 -3
- package/onboarding/prompts/feature/chat-suggestions/proof.md +5 -5
- package/onboarding/prompts/feature/chat-suggestions/start.md +17 -8
- package/onboarding/prompts/feature/complete.md +2 -2
- package/onboarding/prompts/feature/learning/implement.md +12 -12
- package/onboarding/prompts/feature/learning/plan.md +4 -4
- package/onboarding/prompts/feature/learning/proof.md +13 -13
- package/onboarding/prompts/feature/learning/start.md +17 -8
- package/onboarding/prompts/feature/open-generative-ui/implement.md +4 -4
- package/onboarding/prompts/feature/open-generative-ui/plan.md +3 -3
- package/onboarding/prompts/feature/open-generative-ui/proof.md +5 -5
- package/onboarding/prompts/feature/open-generative-ui/start.md +17 -8
- package/onboarding/prompts/feature/realtime-sync/implement.md +5 -5
- package/onboarding/prompts/feature/realtime-sync/plan.md +3 -3
- package/onboarding/prompts/feature/realtime-sync/proof.md +5 -5
- package/onboarding/prompts/feature/realtime-sync/start.md +16 -7
- package/onboarding/prompts/feature/rich-threads/implement.md +6 -6
- package/onboarding/prompts/feature/rich-threads/plan.md +3 -3
- package/onboarding/prompts/feature/rich-threads/proof.md +5 -5
- package/onboarding/prompts/feature/rich-threads/start.md +16 -7
- package/onboarding/prompts/feature/stop.md +4 -4
- package/onboarding/prompts/feature/voice/implement.md +4 -4
- package/onboarding/prompts/feature/voice/plan.md +4 -4
- package/onboarding/prompts/feature/voice/proof.md +5 -5
- package/onboarding/prompts/feature/voice/start.md +17 -8
- package/onboarding/prompts/framework/ag2.md +3 -3
- package/onboarding/prompts/framework/agno.md +3 -3
- package/onboarding/prompts/framework/built-in.md +3 -3
- package/onboarding/prompts/framework/claude-sdk-python.md +3 -3
- package/onboarding/prompts/framework/claude-sdk-typescript.md +3 -3
- package/onboarding/prompts/framework/crewai-flows.md +5 -5
- package/onboarding/prompts/framework/custom-ag-ui.md +4 -4
- package/onboarding/prompts/framework/deep-agents.md +3 -3
- package/onboarding/prompts/framework/google-adk.md +3 -3
- package/onboarding/prompts/framework/langgraph-fastapi.md +3 -3
- package/onboarding/prompts/framework/langgraph-python.md +3 -3
- package/onboarding/prompts/framework/langgraph-typescript.md +3 -3
- package/onboarding/prompts/framework/llamaindex.md +3 -3
- package/onboarding/prompts/framework/mastra.md +3 -3
- package/onboarding/prompts/framework/ms-agent-dotnet.md +5 -5
- package/onboarding/prompts/framework/ms-agent-harness-dotnet.md +5 -5
- package/onboarding/prompts/framework/ms-agent-python.md +3 -3
- package/onboarding/prompts/framework/pydantic-ai.md +3 -3
- package/onboarding/prompts/framework/strands-python.md +3 -3
- package/onboarding/prompts/framework/strands-typescript.md +3 -3
- package/onboarding/prompts/frontend/angular.md +4 -4
- package/onboarding/prompts/frontend/nextjs.md +4 -4
- package/onboarding/prompts/frontend/plan.md +10 -10
- package/onboarding/prompts/frontend/react-native.md +3 -3
- package/onboarding/prompts/frontend/react-spa.md +3 -3
- package/onboarding/prompts/frontend/vue.md +3 -3
- package/onboarding/prompts/implementation/build-and-validate.md +26 -10
- package/onboarding/prompts/proof/complete.md +3 -3
- package/onboarding/prompts/proof/oss-baseline.md +21 -5
- package/onboarding/prompts/proof/round-trip.md +33 -11
- package/onboarding/prompts/research/gather.md +58 -41
- package/onboarding/prompts/research/merge.md +3 -3
- package/onboarding/prompts/research/preflight.md +2 -2
- package/onboarding/prompts/research/route.md +5 -5
- package/onboarding/prompts/setup/questions.md +6 -6
- package/onboarding/prompts/starter/clone.md +28 -28
- package/onboarding/prompts/stopped/run-failed.md +3 -3
- package/onboarding/prompts/subagent/create-plan.md +27 -2
- package/onboarding/prompts/subagent/implement-and-validate.md +31 -3
- package/onboarding/prompts/subagent/inspect-repository.md +17 -4
- package/onboarding/prompts/subagent/prove-oss-baseline.md +24 -1
- package/onboarding/prompts/subagent/prove-round-trip.md +29 -6
- package/onboarding/prompts/unsupported/no-validated-path.md +3 -3
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Prove the existing OSS baseline
|
|
2
2
|
|
|
3
3
|
Do not prove the baseline yourself. Spawn one proof subagent. Tell it to run
|
|
4
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
4
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read subagent/prove-oss-baseline` first and follow
|
|
5
5
|
the prompt it returns. Tell it to return at once, and say so, if that read is refused or
|
|
6
6
|
fails, and not to wait for an approval. If it returns that way, stop that subagent. Run the
|
|
7
7
|
same command yourself, then spawn a fresh subagent with the returned prompt and the same
|
|
@@ -18,10 +18,26 @@ for a substitute.
|
|
|
18
18
|
|
|
19
19
|
Wait for the subagent to finish.
|
|
20
20
|
|
|
21
|
+
If only its closing `subagent-returned` checkpoint was refused, the subagent finished.
|
|
22
|
+
Record no `refused` return and spawn nothing: run that checkpoint yourself, with the result
|
|
23
|
+
the subagent returned.
|
|
24
|
+
|
|
25
|
+
If the subagent returns because its harness refused any other command, record that return:
|
|
26
|
+
|
|
27
|
+
```text
|
|
28
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase subagent-returned --brief prove-oss-baseline --result refused
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Then run that command yourself, from the directory the subagent named. Spawn at most one
|
|
32
|
+
fresh subagent for each refused command, with the same handoff and that command's result.
|
|
33
|
+
If the fresh subagent is refused a command too, spawn no other. Follow the
|
|
34
|
+
`subagent/prove-oss-baseline` brief yourself, as "When a subagent cannot work" in
|
|
35
|
+
`research/gather` says.
|
|
36
|
+
|
|
21
37
|
Record what that proof returned before you route on it:
|
|
22
38
|
|
|
23
39
|
```text
|
|
24
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
40
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard proof --step oss-baseline --outcome <passed|failed|skipped> [--predicate <1-6>]
|
|
25
41
|
```
|
|
26
42
|
|
|
27
43
|
Report the gate whatever it returned. Use the list below. A proof that never ran is `skipped`, not failed. The command prints one line and sends
|
|
@@ -43,7 +59,7 @@ Do not change project files before this proof ends. Starting existing developmen
|
|
|
43
59
|
processes and their ignored runtime files is allowed.
|
|
44
60
|
|
|
45
61
|
If the subagent proves the `both-oss` predicate, keep its evidence with the plan and run
|
|
46
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
62
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read conversion/plan`. That project already works.
|
|
47
63
|
What it needs is the conversion, not a build.
|
|
48
64
|
|
|
49
65
|
A failed baseline does not end the run, and this step does not repair it. Decide which
|
|
@@ -58,7 +74,7 @@ pass. This proof only reads.
|
|
|
58
74
|
A failed baseline whose cause is in the project is the starting state of this project. So
|
|
59
75
|
is an operational failure still there after the third attempt. Record the starting state
|
|
60
76
|
`both-copilotkit-unproved` and run
|
|
61
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
77
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read credentials/plan`. This prompt is served
|
|
62
78
|
whenever a project looks like an OSS integration, so a baseline that did not prove is an
|
|
63
79
|
ordinary starting state rather than a failure. The build that follows fixes the
|
|
64
80
|
integration, and `proof/round-trip` proves the result, with its own bounded repair cycle.
|
|
@@ -78,5 +94,5 @@ operational. Run the proof again, three times in total, then record the starting
|
|
|
78
94
|
above and go on. Both causes lead to the same plan.
|
|
79
95
|
|
|
80
96
|
If the proof cannot identify the running process safely, or it exposes a secret, run
|
|
81
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
97
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read stopped/run-failed`. Neither means the
|
|
82
98
|
project is unsupported: each means this run did not establish what it needed to.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Prove the user journey
|
|
2
2
|
|
|
3
3
|
Do not do the proof work yourself. Spawn one proof subagent. Tell it to run
|
|
4
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
4
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read subagent/prove-round-trip` first and follow the
|
|
5
5
|
prompt it returns. Tell it to return at once, and say so, if that read is refused or fails,
|
|
6
6
|
and not to wait for an approval. If it returns that way, stop that subagent. Run the same
|
|
7
7
|
command yourself, then spawn a fresh subagent with the returned prompt and the same handoff.
|
|
@@ -37,10 +37,26 @@ the run.
|
|
|
37
37
|
Wait for the subagent to finish. Its result arrives as a notification. Do not sleep to
|
|
38
38
|
pass the time.
|
|
39
39
|
|
|
40
|
+
If only its closing `subagent-returned` checkpoint was refused, the subagent finished.
|
|
41
|
+
Record no `refused` return and spawn nothing: run that checkpoint yourself, with the result
|
|
42
|
+
the subagent returned.
|
|
43
|
+
|
|
44
|
+
If the subagent returns because its harness refused any other command, record that return:
|
|
45
|
+
|
|
46
|
+
```text
|
|
47
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase subagent-returned --brief prove-round-trip --result refused
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Then run that command yourself, from the directory the subagent named. Spawn at most one
|
|
51
|
+
fresh subagent for each refused command, with the same handoff and that command's result.
|
|
52
|
+
If the fresh subagent is refused a command too, spawn no other. Follow the
|
|
53
|
+
`subagent/prove-round-trip` brief yourself, as "When a subagent cannot work" in
|
|
54
|
+
`research/gather` says.
|
|
55
|
+
|
|
40
56
|
Record what that proof returned before you route on it:
|
|
41
57
|
|
|
42
58
|
```text
|
|
43
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
59
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
|
|
44
60
|
```
|
|
45
61
|
|
|
46
62
|
Report the gate whatever it returned. A proof that never ran is `skipped`, not failed. A
|
|
@@ -52,7 +68,7 @@ the next one starts. Until then, `onboard proof-check` counts the next failure a
|
|
|
52
68
|
If the CLI prints `## Stop: this run deleted or moved the developer's work` instead of a
|
|
53
69
|
step, show the developer the list it printed, and run what they choose:
|
|
54
70
|
the `onboard restore` command the tripwire stop prints, which names each deleted file, or
|
|
55
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
71
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard tripwire --continue`. Then read the step again. If
|
|
56
72
|
you cannot ask, use the route-out rules below.
|
|
57
73
|
|
|
58
74
|
Never repair, reset, or revert a file the developer changed outside this run. That holds for
|
|
@@ -62,14 +78,20 @@ developer's, however right the diagnosis is and however small the fix. Ask the d
|
|
|
62
78
|
allow the change, or route out. Never send it to a repair worker without their answer.
|
|
63
79
|
|
|
64
80
|
This prompt pauses for the developer in several places. Before you end your turn to wait
|
|
65
|
-
for the developer, report the pause:
|
|
81
|
+
for the developer, report the pause. For the tripwire choice:
|
|
82
|
+
|
|
83
|
+
```text
|
|
84
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about restore-files
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
For a file the plan does not name:
|
|
66
88
|
|
|
67
89
|
```text
|
|
68
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
90
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about uncommitted-file
|
|
69
91
|
```
|
|
70
92
|
|
|
71
93
|
If the proof result starts with `Status: passed`, run
|
|
72
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
94
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read proof/complete`. A skipped
|
|
73
95
|
surface outcome still enters `proof/complete`. The CLI records `skipped-cloned-starter` and
|
|
74
96
|
`skipped-no-browser-tool` after a passed round trip as complete, and `skipped-no-device` as
|
|
75
97
|
blocked. Do not describe a
|
|
@@ -95,7 +117,7 @@ credentials step found the model key missing, or the vendor refused it, and the
|
|
|
95
117
|
started nothing. Do not send it to a repair worker. Run the `onboard credentials` command
|
|
96
118
|
that its detail names, and act on its answer as `credentials/settle-credentials` says. Ask
|
|
97
119
|
the developer its question, report the pause with
|
|
98
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
120
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-model-credential`, and
|
|
99
121
|
end your turn. When the key settles, run the proof subagent again. If you have not recorded
|
|
100
122
|
this attempt yet, record it first, with the outcome it ended with. This attempt does not
|
|
101
123
|
count toward the three.
|
|
@@ -122,7 +144,7 @@ fault, so this is not a route-out. Ask the developer to send one message in the
|
|
|
122
144
|
thread, and to give you that thread's id. Give them the app URL and the request words from
|
|
123
145
|
the result. Tell them where the id is: in the browser's network tools, the request the page
|
|
124
146
|
sends to the runtime URL carries `threadId` in its body. Report the pause with
|
|
125
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
147
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about thread-id` and end your
|
|
126
148
|
turn. When the developer gives the id, start a new proof subagent with
|
|
127
149
|
the full original proof handoff, the pinned Step 1 record, and the thread id. Tell it to run
|
|
128
150
|
the proof checks with `--thread <id>`. This attempt does not count toward the three. Use the
|
|
@@ -171,7 +193,7 @@ the files the developer allowed.
|
|
|
171
193
|
Before you end your turn to wait for the developer, report the pause:
|
|
172
194
|
|
|
173
195
|
```text
|
|
174
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
196
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about uncommitted-file
|
|
175
197
|
```
|
|
176
198
|
|
|
177
199
|
Restart each project-owned process changed by the repair. Then spawn a fresh proof subagent
|
|
@@ -189,7 +211,7 @@ takes the developer path above instead.
|
|
|
189
211
|
|
|
190
212
|
Route out only when the failure is not yours to fix, when the same proof still fails after
|
|
191
213
|
three attempts, or when no evidence of the round trip can be produced. In those cases run
|
|
192
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
214
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read stopped/run-failed`. The stack is supported:
|
|
193
215
|
this run did not finish, which is a different ending and a different report. All three are
|
|
194
216
|
about the round trip itself. A round trip that proved is not one of them, whatever failed
|
|
195
217
|
after it.
|
|
@@ -200,7 +222,7 @@ friction command follows the telemetry setting the developer already chose, so i
|
|
|
200
222
|
separate question.
|
|
201
223
|
|
|
202
224
|
```text
|
|
203
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
225
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard friction --phase stop --category <slug> --message "<sentences>"
|
|
204
226
|
```
|
|
205
227
|
|
|
206
228
|
`--message` takes one or two sentences: the step you stopped at and what stopped it.
|
|
@@ -15,16 +15,16 @@ own bookkeeping. Say what the run is doing in the developer's words instead.
|
|
|
15
15
|
|
|
16
16
|
Every later command must run from the directory this run is bound to. Elsewhere, the
|
|
17
17
|
command cannot find its run and refuses. Do not report that refusal as a stop. Run
|
|
18
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
18
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard start --run <onboarding_run_id>` where you are
|
|
19
19
|
standing, then run the refused command again.
|
|
20
20
|
|
|
21
|
-
If you no longer hold the id, run `npx --prefer-offline --yes copilotkit@4.
|
|
21
|
+
If you no longer hold the id, run `npx --prefer-offline --yes copilotkit@4.29.0 onboard start` in the
|
|
22
22
|
directory this run started in, with no `--run` and no `--intent`. It reprints the id
|
|
23
23
|
and starts nothing. An id this project does not already hold starts a second
|
|
24
24
|
run, and the work already done stops counting toward the first.
|
|
25
25
|
|
|
26
26
|
Read only inside the target project directory. Every subagent you spawn inherits that
|
|
27
|
-
limit
|
|
27
|
+
limit. Answer a CopilotKit API or configuration
|
|
28
28
|
question from the documentation this graph gives you. Another checkout on this machine is
|
|
29
29
|
not a source.
|
|
30
30
|
|
|
@@ -35,7 +35,7 @@ pass.
|
|
|
35
35
|
|
|
36
36
|
Telemetry and friction reports follow the CLI telemetry setting the developer controls with
|
|
37
37
|
`copilotkit telemetry` or `DO_NOT_TRACK=1`. Each report is one or two sentences and carries
|
|
38
|
-
no secrets and no source. The
|
|
38
|
+
no secrets and no source. The commands enforce that setting. Explain it once.
|
|
39
39
|
|
|
40
40
|
The directory this run started in is the run root. Every `--path` argument is read against
|
|
41
41
|
it, so one path names one file from anywhere in the project.
|
|
@@ -48,19 +48,33 @@ to the repository root and prints its path.
|
|
|
48
48
|
|
|
49
49
|
This rule covers every subagent this run spawns, here and in every later prompt.
|
|
50
50
|
|
|
51
|
-
Spawning a subagent returns almost at once. That return is the dispatch
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
you already hold the result. Either way there is nothing to poll.
|
|
51
|
+
Spawning a subagent returns almost at once. That return is the dispatch, not the result:
|
|
52
|
+
the result reaches you as a notification, or with the dispatch in some harnesses. There is
|
|
53
|
+
nothing to poll.
|
|
55
54
|
|
|
56
|
-
After you dispatch, do the work that does not depend on the result
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
what it means. It is a pause, as "Pausing vs stopping" below describes, and not a stop.
|
|
55
|
+
After you dispatch, do the work that does not depend on the result, then end your turn
|
|
56
|
+
and wait for the result. That is what "wait for a subagent to finish" means in this graph.
|
|
57
|
+
It is a pause, as "Pausing vs stopping" below describes, and not a stop.
|
|
60
58
|
|
|
61
|
-
Do not sleep to pass the time
|
|
62
|
-
|
|
63
|
-
|
|
59
|
+
Do not sleep to pass the time: no `sleep`, no timer, and no loop that re-checks for a
|
|
60
|
+
result. It spends wall clock and tells you nothing.
|
|
61
|
+
|
|
62
|
+
## When a subagent is refused a command
|
|
63
|
+
|
|
64
|
+
This rule covers every subagent this run spawns. A subagent whose harness refuses a command
|
|
65
|
+
returns at once with the command, its directory, and the refusal. Then run that command
|
|
66
|
+
yourself, from that directory. Spawn at most one fresh subagent for each refused command,
|
|
67
|
+
with the same handoff and that result. If the fresh subagent is refused a command too,
|
|
68
|
+
spawn no other: do the brief yourself.
|
|
69
|
+
|
|
70
|
+
Record each research result, since a research subagent runs no onboarding command:
|
|
71
|
+
|
|
72
|
+
```text
|
|
73
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase subagent-returned --brief inspect-repository --result <ok|refused|failed>
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
`ok` is `Status: passed`, `failed` is failed or blocked, and `refused` names a refused
|
|
77
|
+
command.
|
|
64
78
|
|
|
65
79
|
## Pausing vs stopping
|
|
66
80
|
|
|
@@ -74,7 +88,7 @@ says to file none, follow it, so the run sends one report at most. Nothing else
|
|
|
74
88
|
A pause keeps the run open. "End your turn and wait for" something means: end this turn.
|
|
75
89
|
When that thing arrives, continue. A pause waits for one of two things:
|
|
76
90
|
|
|
77
|
-
1. A subagent result
|
|
91
|
+
1. A subagent result, waited for as the section above says.
|
|
78
92
|
2. The developer. Ask the question, then end your turn and wait for the reply. The reply
|
|
79
93
|
is the answer. A developer who replies without choosing, such as "go ahead" or "you
|
|
80
94
|
pick", gives no answer, and the default that the prompt states applies. Where the
|
|
@@ -83,54 +97,57 @@ When that thing arrives, continue. A pause waits for one of two things:
|
|
|
83
97
|
Before you end your turn to wait for the developer, report the pause:
|
|
84
98
|
|
|
85
99
|
```text
|
|
86
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
100
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about <question>
|
|
87
101
|
```
|
|
88
102
|
|
|
103
|
+
Use the question the asking prompt names, or else the closest of: `harness-permission`,
|
|
104
|
+
`sign-in`, `setup-answers`, `stack-choice`, `project-name`, `which-project`,
|
|
105
|
+
`env-file-tracked`, `local-connection`, `local-terms`, `existing-folder`,
|
|
106
|
+
`environment-fix`, `uncommitted-file`, `agent-change`, `restore-files`, `thread-id`,
|
|
107
|
+
`scoped-fix`, `feature-binding`, `other`. Report it before every turn that ends while the
|
|
108
|
+
run is open, with `other` if you asked nothing. A run that goes quiet without it reads as
|
|
109
|
+
a run that died.
|
|
110
|
+
|
|
89
111
|
When the answer or the result arrives, continue from the step that paused. Do not read an
|
|
90
|
-
earlier prompt again, send the welcome again, or start a new run
|
|
91
|
-
|
|
112
|
+
earlier prompt again, send the welcome again, or start a new run. If you lost the step you
|
|
113
|
+
were on, run `npx --prefer-offline --yes copilotkit@4.29.0 onboard route`. Skip every `subagent/` entry: a
|
|
114
|
+
subagent read that brief. The last step left is that step. Read it again with `onboard read`. A pause is not a stop. It sends no stop report.
|
|
92
115
|
|
|
93
116
|
## When a subagent cannot work
|
|
94
117
|
|
|
95
|
-
This rule
|
|
118
|
+
This rule covers every subagent too.
|
|
96
119
|
|
|
97
|
-
A subagent that returns no usable result failed in your harness, not in this graph.
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
rather than treating it as the end of the run.
|
|
120
|
+
A subagent that returns no usable result failed in your harness, not in this graph. Every
|
|
121
|
+
assignment in this run is work you can do yourself, slower. So do it yourself and carry
|
|
122
|
+
on. It is not the end of the run.
|
|
101
123
|
|
|
102
124
|
Both research subagents failing means this harness has no working subagent at all, which
|
|
103
125
|
is worth recording once:
|
|
104
126
|
|
|
105
127
|
```text
|
|
106
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
128
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase delegation-unavailable
|
|
107
129
|
```
|
|
108
130
|
|
|
109
|
-
Then
|
|
110
|
-
|
|
131
|
+
Then tell the developer once that this environment has no working subagents, so you do
|
|
132
|
+
each step yourself and the run takes longer.
|
|
111
133
|
|
|
112
134
|
For the rest of this run, do not spawn a subagent where a prompt tells you to. Read that
|
|
113
135
|
`subagent/` brief yourself and follow it.
|
|
114
136
|
|
|
115
|
-
Before you ask the developer any setup question, finish every read-only investigation and
|
|
116
|
-
preflight check in this section. The setup message below is the one exception.
|
|
117
|
-
|
|
118
137
|
Prepare two research assignments. Before you spawn either subagent, run these two
|
|
119
138
|
read-only commands yourself, from the target project directory:
|
|
120
139
|
|
|
121
140
|
```text
|
|
122
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
123
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
141
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard read subagent/inspect-repository
|
|
142
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard inspect --json
|
|
124
143
|
```
|
|
125
144
|
|
|
126
145
|
Give each research subagent the prompt that the first command returns, the whole JSON that
|
|
127
146
|
the second command returns, and one assignment. Tell it that its handoff already holds both,
|
|
128
|
-
so it runs no onboarding command
|
|
129
|
-
|
|
130
|
-
The run then waits for an approval that nobody sees. Require only its assigned packet.
|
|
147
|
+
so it runs no onboarding command: a permission layer can refuse one inside a subagent, and
|
|
148
|
+
the run then waits for an approval nobody sees. Require only its assigned packet.
|
|
131
149
|
|
|
132
|
-
Give the same JSON to every later subagent
|
|
133
|
-
focused directory check, or a conflict verifier.
|
|
150
|
+
Give the same JSON to every later subagent this research spawns, such as a retry.
|
|
134
151
|
|
|
135
152
|
Start both research subagents in parallel:
|
|
136
153
|
|
|
@@ -149,12 +166,12 @@ names no Channel (as `research/route` lists), and the `onboard inspect` JSON sho
|
|
|
149
166
|
`detection.agentFramework` has an empty `matched` and an empty `unmatched`.
|
|
150
167
|
|
|
151
168
|
Once `login --json` has emitted `type: completed`, read the setup questions now:
|
|
152
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
169
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read setup/questions`. Record the frontend from
|
|
153
170
|
`detection` first.
|
|
154
171
|
Show the message. Before you end your turn to wait for the developer, report the pause:
|
|
155
172
|
|
|
156
173
|
```text
|
|
157
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
174
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about setup-answers
|
|
158
175
|
```
|
|
159
176
|
|
|
160
177
|
Then continue below: the preflight and the merge do not wait for the reply. When the
|
|
@@ -168,8 +185,8 @@ the research first.
|
|
|
168
185
|
The research is under way. Continue to the surface-control preflight while it runs:
|
|
169
186
|
|
|
170
187
|
```text
|
|
171
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
188
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard read research/preflight
|
|
172
189
|
```
|
|
173
190
|
|
|
174
191
|
If inspection stops onboarding, run
|
|
175
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
192
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read stopped/run-failed`.
|
|
@@ -51,11 +51,11 @@ waits on the developer, end your turn and wait for it: that is a pause.
|
|
|
51
51
|
Before you end your turn to wait for the developer, report the pause:
|
|
52
52
|
|
|
53
53
|
```text
|
|
54
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
54
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about sign-in
|
|
55
55
|
```
|
|
56
56
|
|
|
57
57
|
When both research results are merged and sign-in is done, run
|
|
58
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
58
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read research/route`.
|
|
59
59
|
|
|
60
60
|
If inspection stops onboarding, run
|
|
61
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
61
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read stopped/run-failed`.
|
|
@@ -32,8 +32,8 @@ Where the device probe found no booted device, that is the whole finding.
|
|
|
32
32
|
Then merge the research:
|
|
33
33
|
|
|
34
34
|
```text
|
|
35
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
35
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard read research/merge
|
|
36
36
|
```
|
|
37
37
|
|
|
38
38
|
If inspection stops onboarding, run
|
|
39
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
39
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read stopped/run-failed`.
|
|
@@ -21,7 +21,7 @@ On any one of them, run this before you read the three findings below, and witho
|
|
|
21
21
|
the purpose question:
|
|
22
22
|
|
|
23
23
|
```text
|
|
24
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
24
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/channels/start
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
Name the provider to that node so it does not ask again. A `/slack` page names Slack. A
|
|
@@ -82,7 +82,7 @@ settle these three from your own reading of the project. Each one comes from the
|
|
|
82
82
|
packets or it is not proved.
|
|
83
83
|
|
|
84
84
|
If all three are proved, prove the live starting state before any project file changes. Run
|
|
85
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
85
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read proof/oss-baseline`.
|
|
86
86
|
|
|
87
87
|
Route there before any other question to the developer. The questions after this prompt
|
|
88
88
|
select a framework and a frontend that the findings already name, so a developer who
|
|
@@ -91,16 +91,16 @@ application is what that node protects. Whether it works is what the proof decid
|
|
|
91
91
|
these three findings.
|
|
92
92
|
|
|
93
93
|
For every other combination of the three, run
|
|
94
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
94
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read setup/questions`. That node asks every
|
|
95
95
|
remaining setup question in one message, including what the project is for when nothing
|
|
96
96
|
proves it.
|
|
97
97
|
|
|
98
98
|
On a blank folder the setup message can go out before the research ends. If the setup
|
|
99
99
|
message is already out and the developer has not replied, record what the findings settle
|
|
100
100
|
with `onboard setup-answers`, then end your turn and send the developer nothing. Report
|
|
101
|
-
the pause with `onboard checkpoint --phase awaiting-developer` first. Do not remind them,
|
|
101
|
+
the pause with `onboard checkpoint --phase awaiting-developer --about setup-answers` first. Do not remind them,
|
|
102
102
|
and do not restate the setup. Their reply continues the run.
|
|
103
103
|
|
|
104
104
|
If authentication or inspection stops onboarding, run
|
|
105
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
105
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read stopped/run-failed`. Neither says anything
|
|
106
106
|
about whether this project's stack is supported, which is not yet known at this point.
|
|
@@ -6,7 +6,7 @@ Never ask for the key itself: the message asks only for the file that holds it.
|
|
|
6
6
|
## Record what the findings already answer
|
|
7
7
|
|
|
8
8
|
Do not ask the developer for a fact that the repository or their request answers. Record
|
|
9
|
-
each one with `npx --prefer-offline --yes copilotkit@4.
|
|
9
|
+
each one with `npx --prefer-offline --yes copilotkit@4.29.0 onboard setup-answers` before you build the
|
|
10
10
|
message, so the message leaves it out:
|
|
11
11
|
|
|
12
12
|
- An agent the project already has: `--framework <name>` with its vendor and the choice
|
|
@@ -31,14 +31,14 @@ For an existing app on the managed route, the command reads the app's project it
|
|
|
31
31
|
env-file and project lines are in the same message as the key. That read creates no project
|
|
32
32
|
and writes no file. If the command prints `status: stopped`, do what its `next` says.
|
|
33
33
|
|
|
34
|
-
On the local route, first run `npx --prefer-offline --yes copilotkit@4.
|
|
34
|
+
On the local route, first run `npx --prefer-offline --yes copilotkit@4.29.0 onboard local-terms --json`.
|
|
35
35
|
If it reports `signed-out` or `unavailable`, follow its `next`. Do not add its
|
|
36
36
|
`question.ask` yourself: the setup message already carries the agreement line.
|
|
37
37
|
|
|
38
38
|
From the target app directory, run:
|
|
39
39
|
|
|
40
40
|
```text
|
|
41
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
41
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard setup-message --target <empty|existing> [--language <typescript|python|dotnet>] [--vendor <vendor>]
|
|
42
42
|
```
|
|
43
43
|
|
|
44
44
|
- `--target empty` for a target with no project yet, `existing` for one with a project.
|
|
@@ -52,14 +52,14 @@ your own reply word for word. The developer does not see your tool output. Befor
|
|
|
52
52
|
put the one short line `next` names, and add nothing else. Before you end your turn to wait for the developer, report the pause:
|
|
53
53
|
|
|
54
54
|
```text
|
|
55
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
55
|
+
npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about setup-answers
|
|
56
56
|
```
|
|
57
57
|
|
|
58
58
|
Then end your turn and wait for the developer. When the developer replies, record their
|
|
59
59
|
answers with `onboard setup-answers`, and run `onboard setup-message` again with
|
|
60
60
|
`--accept-defaults`, as `next` says. When it prints `status: settled`, run
|
|
61
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
61
|
+
`npx --prefer-offline --yes copilotkit@4.29.0 onboard read credentials/plan`. If you came here from
|
|
62
62
|
`research/gather` before the research merged, do not read `credentials/plan` yet: finish the
|
|
63
63
|
research. If it returns and the developer has not replied, record what the findings settle
|
|
64
64
|
with `onboard setup-answers`, then end your turn and send the developer nothing. Report
|
|
65
|
-
the pause
|
|
65
|
+
the same pause first.
|