copilotkit 4.19.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.
- package/README.md +18 -9
- package/cli-build-info.json +7 -7
- package/index.js +3127 -2335
- package/onboarding/index.json +1 -1
- package/onboarding/prompts/authenticate/start.md +26 -28
- package/onboarding/prompts/conversion/plan.md +3 -3
- package/onboarding/prompts/credentials/finalize-plan.md +7 -7
- package/onboarding/prompts/credentials/plan.md +22 -22
- package/onboarding/prompts/credentials/settle-credentials.md +7 -5
- package/onboarding/prompts/credentials/write-plan.md +9 -6
- package/onboarding/prompts/fallback/best-effort.md +8 -8
- package/onboarding/prompts/feature/a2ui/implement.md +6 -12
- package/onboarding/prompts/feature/a2ui/proof.md +7 -18
- package/onboarding/prompts/feature/a2ui/start.md +9 -18
- package/onboarding/prompts/feature/channels/implement.md +12 -21
- package/onboarding/prompts/feature/channels/proof.md +7 -18
- package/onboarding/prompts/feature/channels/start.md +14 -21
- package/onboarding/prompts/feature/chat-suggestions/implement.md +6 -12
- package/onboarding/prompts/feature/chat-suggestions/proof.md +7 -18
- package/onboarding/prompts/feature/chat-suggestions/start.md +9 -18
- package/onboarding/prompts/feature/complete.md +4 -2
- package/onboarding/prompts/feature/learning/implement.md +13 -38
- package/onboarding/prompts/feature/learning/proof.md +8 -19
- package/onboarding/prompts/feature/learning/start.md +9 -18
- package/onboarding/prompts/feature/open-generative-ui/implement.md +6 -12
- package/onboarding/prompts/feature/open-generative-ui/proof.md +7 -18
- package/onboarding/prompts/feature/open-generative-ui/start.md +9 -18
- package/onboarding/prompts/feature/realtime-sync/implement.md +7 -13
- package/onboarding/prompts/feature/realtime-sync/proof.md +7 -18
- package/onboarding/prompts/feature/realtime-sync/start.md +8 -17
- package/onboarding/prompts/feature/rich-threads/implement.md +8 -14
- package/onboarding/prompts/feature/rich-threads/proof.md +7 -18
- package/onboarding/prompts/feature/rich-threads/start.md +8 -17
- package/onboarding/prompts/feature/stop.md +3 -3
- package/onboarding/prompts/feature/voice/implement.md +6 -12
- package/onboarding/prompts/feature/voice/proof.md +7 -18
- package/onboarding/prompts/feature/voice/start.md +9 -18
- 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/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 +3 -3
- 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 +24 -40
- package/onboarding/prompts/proof/complete.md +86 -204
- package/onboarding/prompts/proof/oss-baseline.md +5 -5
- package/onboarding/prompts/proof/round-trip.md +9 -22
- package/onboarding/prompts/research/gather.md +5 -14
- package/onboarding/prompts/research/merge.md +2 -11
- package/onboarding/prompts/research/preflight.md +2 -8
- package/onboarding/prompts/research/route.md +5 -5
- package/onboarding/prompts/starter/clone.md +5 -15
- package/onboarding/prompts/stopped/run-failed.md +2 -2
- package/onboarding/prompts/subagent/create-plan.md +16 -1
- package/onboarding/prompts/subagent/inspect-repository.md +1 -1
- package/onboarding/prompts/subagent/prove-oss-baseline.md +1 -1
- package/onboarding/prompts/subagent/prove-round-trip.md +28 -20
- package/onboarding/prompts/unsupported/no-validated-path.md +2 -2
- package/package.json +1 -1
- package/release/release-tool.js +1 -1
|
@@ -19,15 +19,12 @@ On Teams, skip Slack-only tools and the Slack e2e harness. Do not add a CopilotK
|
|
|
19
19
|
web app to make this run look complete. Do not replace the existing agent.
|
|
20
20
|
|
|
21
21
|
If repository evidence does not prove an existing valid Intelligence selection, sign in
|
|
22
|
-
yourself with `npx --prefer-offline --yes copilotkit@4.
|
|
23
|
-
session generic onboarding uses. Read its JSON Lines while the process runs.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
check against the sign-in page, which works from any device. Never ask the developer to run a login command. If the opener is
|
|
29
|
-
unavailable or fails, show the developer the clickable URL and ask them to finish sign-in
|
|
30
|
-
there, and keep reading the same process. Continue only after that same process emits
|
|
22
|
+
yourself with `npx --prefer-offline --yes copilotkit@4.20.0 login --json`: the same single streaming
|
|
23
|
+
session generic onboarding uses. Read its JSON Lines while the process runs. The CLI opens
|
|
24
|
+
the page itself when it can: with `"browser_opened": false` in `action_required`, show the
|
|
25
|
+
developer the clickable URL and ask them to finish sign-in there. If the record carries
|
|
26
|
+
`user_code`, show the developer the code to check against the page. Never ask the developer
|
|
27
|
+
to run a login command. Keep reading the same process. Continue only after that same process emits
|
|
31
28
|
`type: completed`. Only when it emits `type: failed`, report the error and take the
|
|
32
29
|
feature stop route below. Then list projects and select or create one only after they choose. Require the secret-safe project/key provisioning summary
|
|
33
30
|
before wiring the Channel. Never display a key.
|
|
@@ -78,7 +75,7 @@ starter to satisfy this rule, and do not report the page that shows it.
|
|
|
78
75
|
Before you spawn the implementation subagent, take the authorized list from the CLI:
|
|
79
76
|
|
|
80
77
|
```text
|
|
81
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
78
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard audit
|
|
82
79
|
```
|
|
83
80
|
|
|
84
81
|
From its result, copy the paths under `Authorized to modify:`. A passed or failed audit with
|
|
@@ -97,7 +94,7 @@ still go on the record. Name the file and why the work needs it, then end your t
|
|
|
97
94
|
for the developer's answer. If they allow it, record their answer before any edit:
|
|
98
95
|
|
|
99
96
|
```text
|
|
100
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
97
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
|
|
101
98
|
```
|
|
102
99
|
|
|
103
100
|
Continue only when the result starts with `Status: passed`. Run the audit again, take the
|
|
@@ -109,7 +106,7 @@ feature stop route below.
|
|
|
109
106
|
After validation and each repair, run:
|
|
110
107
|
|
|
111
108
|
```text
|
|
112
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
109
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard audit
|
|
113
110
|
```
|
|
114
111
|
|
|
115
112
|
Continue only when it starts with `Status: passed`. A path under `Authorized to modify:` is
|
|
@@ -120,7 +117,7 @@ with the implementation subagent's `Files changed` section. If that section does
|
|
|
120
117
|
the path, accept the developer's external change:
|
|
121
118
|
|
|
122
119
|
```text
|
|
123
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
120
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --accept-external --path <path>
|
|
124
121
|
```
|
|
125
122
|
|
|
126
123
|
For an env file where the developer placed a requested credential, use
|
|
@@ -133,7 +130,7 @@ Run the audit again after each accepted change. If it still fails, or starts
|
|
|
133
130
|
with `Status: blocked`, route out and stop:
|
|
134
131
|
|
|
135
132
|
```text
|
|
136
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
133
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
|
|
137
134
|
```
|
|
138
135
|
|
|
139
136
|
## Values this run writes, and the one credential the developer supplies
|
|
@@ -166,14 +163,8 @@ both default to 3000, append one line to that env file and change no other line.
|
|
|
166
163
|
accept it with `onboard protect --accept-credential --path <path>`, which accepts an added
|
|
167
164
|
variable while every recorded one keeps its value, and run the audit again.
|
|
168
165
|
|
|
169
|
-
When implementation validation passes, report it:
|
|
170
|
-
|
|
171
|
-
```text
|
|
172
|
-
npx --prefer-offline --yes copilotkit@4.19.0 onboard checkpoint --phase build-validated
|
|
173
|
-
```
|
|
174
|
-
|
|
175
166
|
If validation cannot pass, or this run needs a prerequisite the app does not have, use
|
|
176
167
|
the feature stop route above without further changes.
|
|
177
168
|
|
|
178
169
|
Otherwise run
|
|
179
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
170
|
+
`npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/channels/proof`.
|
|
@@ -31,7 +31,7 @@ still go on the record. Name the file and why the fix needs it, then end your tu
|
|
|
31
31
|
for the developer's answer. If they allow it, record their answer before any edit:
|
|
32
32
|
|
|
33
33
|
```text
|
|
34
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
34
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
|
|
35
35
|
```
|
|
36
36
|
|
|
37
37
|
Continue only when the result starts with `Status: passed`. Run the audit again, take the
|
|
@@ -40,26 +40,15 @@ same handoff and that list. A subagent that already returned cannot pick up cons
|
|
|
40
40
|
after it was spawned. If you cannot ask, or the developer declines, take the feature stop
|
|
41
41
|
route below.
|
|
42
42
|
|
|
43
|
-
Report
|
|
43
|
+
Report the outcome of each attempt as it ends, before any repair. The command counts the
|
|
44
|
+
attempts and the repairs:
|
|
44
45
|
|
|
45
46
|
```text
|
|
46
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
Report each repair cycle the same way, counting from one:
|
|
50
|
-
|
|
51
|
-
```text
|
|
52
|
-
npx --prefer-offline --yes copilotkit@4.19.0 onboard checkpoint --phase repair-attempted --attempt 1
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
After the final attempt, report the gate exactly once:
|
|
56
|
-
|
|
57
|
-
```text
|
|
58
|
-
npx --prefer-offline --yes copilotkit@4.19.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
|
|
47
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
|
|
59
48
|
```
|
|
60
49
|
|
|
61
50
|
Use `passed` only for a proved mention reply, `failed` for an attempted proof that
|
|
62
|
-
failed, and `skipped` when the proof did not run. Then run `npx --prefer-offline --yes copilotkit@4.
|
|
51
|
+
failed, and `skipped` when the proof did not run. Then run `npx --prefer-offline --yes copilotkit@4.20.0 onboard audit`.
|
|
63
52
|
Continue only when it starts with `Status: passed`.
|
|
64
53
|
|
|
65
54
|
If the audit fails, never repair, reset, or revert a protected path. Compare each named path
|
|
@@ -74,11 +63,11 @@ the path and the change the audit reports. Run the audit again after each accept
|
|
|
74
63
|
If the audit still fails, or starts with `Status: blocked`, route out and stop:
|
|
75
64
|
|
|
76
65
|
```text
|
|
77
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
66
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
|
|
78
67
|
```
|
|
79
68
|
|
|
80
69
|
When the audit passes and the round trip you reported above was `passed`, run
|
|
81
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
70
|
+
`npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/complete` and complete with
|
|
82
71
|
`--visual-check channels-proof-passed`. The recorded mention and reply are this run's
|
|
83
72
|
proof, so no web app check is missing. Use `--visual-check performed` only when a
|
|
84
73
|
browser drove Slack or Teams web and proved the mention reply. Do not use
|
|
@@ -3,12 +3,14 @@
|
|
|
3
3
|
First, report your coding agent identity using the same command as generic onboarding:
|
|
4
4
|
|
|
5
5
|
```text
|
|
6
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
6
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard identify --coding-agent <coding-agent-slug> --model <model-id> --model-family <model-family>
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
-
Use your own product's slug, such as `codex` or `claude-code`. For `--model`,
|
|
10
|
-
|
|
11
|
-
guess.
|
|
9
|
+
Use your own product's slug, such as `codex` or `claude-code`. For `--model`, copy the
|
|
10
|
+
model id exactly as your instructions write it. If they name no exact model id, leave out
|
|
11
|
+
`--model` rather than guess. For `--model-family`, give the family of the model you run,
|
|
12
|
+
such as `claude-opus` or `gpt-5`, and leave it out if you do not know it. Never give your
|
|
13
|
+
product slug as a model or a family. This also covers entry commands that omit `--coding-agent`. It needs no login,
|
|
12
14
|
browser, or project setup.
|
|
13
15
|
|
|
14
16
|
Treat Slack or Teams as the UI for this run. A CopilotKit web app is not required.
|
|
@@ -32,13 +34,13 @@ carry on. Keep a read-only assignment read-only. If no subagent works at all, re
|
|
|
32
34
|
once:
|
|
33
35
|
|
|
34
36
|
```text
|
|
35
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
37
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard checkpoint --phase delegation-unavailable
|
|
36
38
|
```
|
|
37
39
|
|
|
38
40
|
Before you end your turn to wait for the developer, report the pause:
|
|
39
41
|
|
|
40
42
|
```text
|
|
41
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
43
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard checkpoint --phase awaiting-developer
|
|
42
44
|
```
|
|
43
45
|
|
|
44
46
|
A turn that ends while the run waits is a pause, not a stop, even when your harness ends it.
|
|
@@ -48,7 +50,7 @@ If you stop this run, send one short report before you stop. The friction comman
|
|
|
48
50
|
the telemetry setting the developer already chose, so it needs no separate question.
|
|
49
51
|
|
|
50
52
|
```text
|
|
51
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
53
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard friction --phase stop --category <slug> --message "<sentences>"
|
|
52
54
|
```
|
|
53
55
|
|
|
54
56
|
`--message` takes one or two sentences: the step you stopped at and what stopped it.
|
|
@@ -62,7 +64,7 @@ one scoped fix, and sends the report itself when no fix is approved.
|
|
|
62
64
|
Before any subagent or project process runs, capture the developer's existing work:
|
|
63
65
|
|
|
64
66
|
```text
|
|
65
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
67
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard protect
|
|
66
68
|
```
|
|
67
69
|
|
|
68
70
|
Keep the exact protected path list it prints and give that list to every subagent. Do not
|
|
@@ -92,12 +94,9 @@ This one does not.
|
|
|
92
94
|
Wait for the inspection subagent to finish. Then report that the inspection came back:
|
|
93
95
|
|
|
94
96
|
```text
|
|
95
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
97
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard checkpoint --phase research-returned
|
|
96
98
|
```
|
|
97
99
|
|
|
98
|
-
A refused checkpoint prints its reason and leaves onboarding unaffected. It is not a
|
|
99
|
-
failed step.
|
|
100
|
-
|
|
101
100
|
If the folder is empty, check Node 22, `uv`, and Python before cloning. Python 3.12 or
|
|
102
101
|
newer satisfies the check. If no Python 3.12 or newer is present and `uv` is, offer once
|
|
103
102
|
to install one with `uv python install 3.12`, and continue after the developer approves.
|
|
@@ -109,7 +108,7 @@ and its install command in the message the developer sees: `nvm install 22` for
|
|
|
109
108
|
for Python. Offer a custom headless build as a later path. Then route out:
|
|
110
109
|
|
|
111
110
|
```text
|
|
112
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
111
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
|
|
113
112
|
```
|
|
114
113
|
|
|
115
114
|
Do not run login, select Intelligence, or create a credential until the developer
|
|
@@ -139,17 +138,11 @@ one.
|
|
|
139
138
|
After approval, record each approved path before implementation:
|
|
140
139
|
|
|
141
140
|
```text
|
|
142
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
141
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>"
|
|
143
142
|
```
|
|
144
143
|
|
|
145
144
|
If an approved path changed after capture and no implementation step has run, add
|
|
146
145
|
`--with-prior-change`. Continue only when every result starts with `Status: passed`. Do not
|
|
147
146
|
authorize a path the approved plan did not list.
|
|
148
147
|
|
|
149
|
-
Then
|
|
150
|
-
|
|
151
|
-
```text
|
|
152
|
-
npx --prefer-offline --yes copilotkit@4.19.0 onboard checkpoint --phase plan-written
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
Then run `npx --prefer-offline --yes copilotkit@4.19.0 onboard read feature/channels/implement`.
|
|
148
|
+
Then run `npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/channels/implement`.
|
|
@@ -15,7 +15,7 @@ Run focused type/test checks and start the app. Record the changed files and val
|
|
|
15
15
|
Before you spawn the implementation subagent, take the authorized list from the CLI:
|
|
16
16
|
|
|
17
17
|
```text
|
|
18
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
18
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard audit
|
|
19
19
|
```
|
|
20
20
|
|
|
21
21
|
From its result, copy the paths under `Authorized to modify:`. A passed or failed audit with
|
|
@@ -34,7 +34,7 @@ still go on the record. Name the file and why the work needs it, then end your t
|
|
|
34
34
|
for the developer's answer. If they allow it, record their answer before any edit:
|
|
35
35
|
|
|
36
36
|
```text
|
|
37
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
37
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
Continue only when the result starts with `Status: passed`. Run the audit again, take the
|
|
@@ -46,7 +46,7 @@ feature stop route below.
|
|
|
46
46
|
After validation and each repair, run:
|
|
47
47
|
|
|
48
48
|
```text
|
|
49
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
49
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard audit
|
|
50
50
|
```
|
|
51
51
|
|
|
52
52
|
Continue only when it starts with `Status: passed`. A path under `Authorized to modify:` is
|
|
@@ -57,7 +57,7 @@ with the implementation subagent's `Files changed` section. If that section does
|
|
|
57
57
|
the path, accept the developer's external change:
|
|
58
58
|
|
|
59
59
|
```text
|
|
60
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
60
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --accept-external --path <path>
|
|
61
61
|
```
|
|
62
62
|
|
|
63
63
|
For an env file where the developer placed a requested credential, use
|
|
@@ -70,17 +70,11 @@ Run the audit again after each accepted change. If it still fails, or starts
|
|
|
70
70
|
with `Status: blocked`, route out and stop:
|
|
71
71
|
|
|
72
72
|
```text
|
|
73
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
When implementation validation passes, report it:
|
|
77
|
-
|
|
78
|
-
```text
|
|
79
|
-
npx --prefer-offline --yes copilotkit@4.19.0 onboard checkpoint --phase build-validated
|
|
73
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
|
|
80
74
|
```
|
|
81
75
|
|
|
82
76
|
If validation cannot pass, or this intent needs a prerequisite the app does not have, use
|
|
83
77
|
the feature stop route above without further changes.
|
|
84
78
|
|
|
85
79
|
Otherwise run
|
|
86
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
80
|
+
`npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/chat-suggestions/proof`.
|
|
@@ -20,7 +20,7 @@ still go on the record. Name the file and why the fix needs it, then end your tu
|
|
|
20
20
|
for the developer's answer. If they allow it, record their answer before any edit:
|
|
21
21
|
|
|
22
22
|
```text
|
|
23
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
23
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
Continue only when the result starts with `Status: passed`. Run the audit again, take the
|
|
@@ -29,26 +29,15 @@ same handoff and that list. A subagent that already returned cannot pick up cons
|
|
|
29
29
|
after it was spawned. If you cannot ask, or the developer declines, take the feature stop
|
|
30
30
|
route below.
|
|
31
31
|
|
|
32
|
-
Report
|
|
32
|
+
Report the outcome of each attempt as it ends, before any repair. The command counts the
|
|
33
|
+
attempts and the repairs:
|
|
33
34
|
|
|
34
35
|
```text
|
|
35
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
Report each repair cycle the same way, counting from one:
|
|
39
|
-
|
|
40
|
-
```text
|
|
41
|
-
npx --prefer-offline --yes copilotkit@4.19.0 onboard checkpoint --phase repair-attempted --attempt 1
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
After the final attempt, report the gate exactly once:
|
|
45
|
-
|
|
46
|
-
```text
|
|
47
|
-
npx --prefer-offline --yes copilotkit@4.19.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
|
|
36
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
|
|
48
37
|
```
|
|
49
38
|
|
|
50
39
|
Use `passed` only for a proved sent suggestion, `failed` for an attempted proof that failed,
|
|
51
|
-
and `skipped` when the proof could not run. Then run `npx --prefer-offline --yes copilotkit@4.
|
|
40
|
+
and `skipped` when the proof could not run. Then run `npx --prefer-offline --yes copilotkit@4.20.0 onboard audit`.
|
|
52
41
|
Continue only when it starts with `Status: passed`.
|
|
53
42
|
|
|
54
43
|
If the audit fails, never repair, reset, or revert a protected path. Compare each named path
|
|
@@ -63,9 +52,9 @@ the path and the change the audit reports. Run the audit again after each accept
|
|
|
63
52
|
If the audit still fails, or starts with `Status: blocked`, route out and stop:
|
|
64
53
|
|
|
65
54
|
```text
|
|
66
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
55
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
|
|
67
56
|
```
|
|
68
57
|
|
|
69
58
|
When the audit passes, run
|
|
70
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
59
|
+
`npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/complete` with the real browser-proof
|
|
71
60
|
outcome.
|
|
@@ -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.
|
|
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.
|
|
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.
|
|
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.
|
|
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
|
|
@@ -58,23 +58,20 @@ approved authorization before implementation.
|
|
|
58
58
|
|
|
59
59
|
Before edits, identify the current CopilotKit provider, chat component, message lifecycle,
|
|
60
60
|
agent id, package version, and test/dev commands. Prove the existing OSS round trip with
|
|
61
|
-
`/info`, `npx --prefer-offline --yes copilotkit@4.
|
|
61
|
+
`/info`, `npx --prefer-offline --yes copilotkit@4.20.0 verify --expect-runtime oss --round-trip --agent <agent-id> --json`,
|
|
62
62
|
and one real frontend request when browser control is available.
|
|
63
63
|
|
|
64
64
|
Wait for the inspection subagent to finish. Then report that the inspection came back:
|
|
65
65
|
|
|
66
66
|
```text
|
|
67
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
67
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard checkpoint --phase research-returned
|
|
68
68
|
```
|
|
69
69
|
|
|
70
|
-
A refused checkpoint prints its reason and leaves onboarding unaffected. It is not a
|
|
71
|
-
failed step.
|
|
72
|
-
|
|
73
70
|
If the inspection did not prove the baseline this intent extends, stop here without
|
|
74
71
|
changing files:
|
|
75
72
|
|
|
76
73
|
```text
|
|
77
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
74
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/stop
|
|
78
75
|
```
|
|
79
76
|
|
|
80
77
|
Do not run login, provision Intelligence, request a credential, replace the agent, or alter
|
|
@@ -96,17 +93,11 @@ one.
|
|
|
96
93
|
After approval, record each approved path before implementation:
|
|
97
94
|
|
|
98
95
|
```text
|
|
99
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
96
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>"
|
|
100
97
|
```
|
|
101
98
|
|
|
102
99
|
If an approved path changed after capture and no implementation step has run, add
|
|
103
100
|
`--with-prior-change`. Continue only when every result starts with `Status: passed`. Do not
|
|
104
101
|
authorize a path the approved plan did not list.
|
|
105
102
|
|
|
106
|
-
Then
|
|
107
|
-
|
|
108
|
-
```text
|
|
109
|
-
npx --prefer-offline --yes copilotkit@4.19.0 onboard checkpoint --phase plan-written
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
Then run `npx --prefer-offline --yes copilotkit@4.19.0 onboard read feature/chat-suggestions/implement`.
|
|
103
|
+
Then run `npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/chat-suggestions/implement`.
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Use the outcome the proof step observed. Run:
|
|
4
4
|
|
|
5
5
|
```text
|
|
6
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
6
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard complete --visual-check <performed|skipped-no-browser-tool|channels-proof-passed|failed>
|
|
7
7
|
```
|
|
8
8
|
|
|
9
9
|
Use `channels-proof-passed` for a Slack or Teams run that recorded a passed round-trip proof
|
|
@@ -14,13 +14,15 @@ Use `performed` only when browser control drove the real user-visible surface. U
|
|
|
14
14
|
`skipped-no-browser-tool` only when no browser tool was available. Use `failed` when the
|
|
15
15
|
browser proof ran but did not prove the feature.
|
|
16
16
|
|
|
17
|
+
Paste the **Handoff facts** block the command prints into your summary, as it is.
|
|
18
|
+
|
|
17
19
|
## Report friction before completing
|
|
18
20
|
|
|
19
21
|
Before `onboard complete`, send the friction this run mentioned to the developer, one
|
|
20
22
|
report each, at most four, costliest first:
|
|
21
23
|
|
|
22
24
|
```text
|
|
23
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
25
|
+
npx --prefer-offline --yes copilotkit@4.20.0 onboard friction --category <slug> --cost-seconds <seconds> --message "<sentences>"
|
|
24
26
|
```
|
|
25
27
|
|
|
26
28
|
Put one or two sentences in `--message`, with no secrets, source, or logs. Pick the
|
|
@@ -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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.19.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.
|
|
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.
|
|
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.19.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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
219
|
-
```
|
|
220
|
-
|
|
221
|
-
When implementation validation passes, report it:
|
|
222
|
-
|
|
223
|
-
```text
|
|
224
|
-
npx --prefer-offline --yes copilotkit@4.19.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.
|
|
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.
|
|
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.
|
|
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
|
|
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.
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
Report each repair cycle the same way, counting from one:
|
|
59
|
-
|
|
60
|
-
```text
|
|
61
|
-
npx --prefer-offline --yes copilotkit@4.19.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.19.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.
|
|
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.
|
|
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.
|
|
80
|
+
`npx --prefer-offline --yes copilotkit@4.20.0 onboard read feature/complete` with the actual surface
|
|
92
81
|
outcome.
|