copilotkit 4.23.0 → 4.24.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 +91 -5
- package/cli-build-info.json +8 -8
- package/exporters/langgraph/README.md +33 -0
- package/exporters/langgraph/export_checkpointer.py +16 -0
- package/index.js +4384 -3590
- package/onboarding/index.json +2 -1
- package/onboarding/prompts/authenticate/start.md +15 -12
- package/onboarding/prompts/conversion/plan.md +3 -3
- package/onboarding/prompts/credentials/finalize-plan.md +8 -8
- package/onboarding/prompts/credentials/plan.md +23 -23
- package/onboarding/prompts/credentials/settle-credentials.md +14 -5
- package/onboarding/prompts/credentials/write-plan.md +6 -6
- package/onboarding/prompts/deployment/choose-local.md +24 -13
- package/onboarding/prompts/deployment/local-evaluation.md +31 -7
- 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 +4 -4
- package/onboarding/prompts/feature/a2ui/proof.md +5 -5
- package/onboarding/prompts/feature/a2ui/start.md +25 -8
- package/onboarding/prompts/feature/channels/implement.md +7 -7
- package/onboarding/prompts/feature/channels/plan.md +4 -4
- package/onboarding/prompts/feature/channels/proof.md +5 -5
- package/onboarding/prompts/feature/channels/start.md +23 -19
- package/onboarding/prompts/feature/chat-suggestions/implement.md +6 -6
- package/onboarding/prompts/feature/chat-suggestions/plan.md +4 -4
- package/onboarding/prompts/feature/chat-suggestions/proof.md +5 -5
- package/onboarding/prompts/feature/chat-suggestions/start.md +25 -8
- package/onboarding/prompts/feature/complete.md +2 -2
- package/onboarding/prompts/feature/learning/implement.md +13 -13
- package/onboarding/prompts/feature/learning/plan.md +4 -4
- package/onboarding/prompts/feature/learning/proof.md +49 -6
- package/onboarding/prompts/feature/learning/start.md +25 -8
- package/onboarding/prompts/feature/open-generative-ui/implement.md +6 -6
- package/onboarding/prompts/feature/open-generative-ui/plan.md +4 -4
- package/onboarding/prompts/feature/open-generative-ui/proof.md +5 -5
- package/onboarding/prompts/feature/open-generative-ui/start.md +25 -8
- package/onboarding/prompts/feature/realtime-sync/implement.md +7 -7
- package/onboarding/prompts/feature/realtime-sync/plan.md +4 -4
- package/onboarding/prompts/feature/realtime-sync/proof.md +5 -5
- package/onboarding/prompts/feature/realtime-sync/start.md +24 -7
- package/onboarding/prompts/feature/rich-threads/implement.md +8 -8
- package/onboarding/prompts/feature/rich-threads/plan.md +4 -4
- package/onboarding/prompts/feature/rich-threads/proof.md +5 -5
- package/onboarding/prompts/feature/rich-threads/start.md +24 -7
- package/onboarding/prompts/feature/stop.md +3 -3
- package/onboarding/prompts/feature/voice/implement.md +6 -6
- package/onboarding/prompts/feature/voice/plan.md +5 -5
- package/onboarding/prompts/feature/voice/proof.md +5 -5
- package/onboarding/prompts/feature/voice/start.md +25 -8
- 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 +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 +16 -14
- package/onboarding/prompts/proof/complete.md +3 -3
- package/onboarding/prompts/proof/oss-baseline.md +5 -5
- package/onboarding/prompts/proof/round-trip.md +8 -8
- package/onboarding/prompts/research/gather.md +5 -5
- package/onboarding/prompts/research/merge.md +2 -2
- package/onboarding/prompts/research/preflight.md +2 -2
- package/onboarding/prompts/research/route.md +5 -5
- package/onboarding/prompts/starter/clone.md +92 -7
- package/onboarding/prompts/stopped/run-failed.md +2 -2
- package/onboarding/prompts/subagent/create-plan.md +2 -2
- package/onboarding/prompts/subagent/implement-and-validate.md +2 -2
- 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 +8 -6
- package/onboarding/prompts/unsupported/no-validated-path.md +2 -2
- package/package.json +1 -1
- package/release/release-tool.js +12 -1
- package/services/local-auth-worker.js +175 -159
|
@@ -12,7 +12,7 @@ The approval is a wait for the developer. Before you end your turn to wait, repo
|
|
|
12
12
|
pause:
|
|
13
13
|
|
|
14
14
|
```text
|
|
15
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
15
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard checkpoint --phase awaiting-developer
|
|
16
16
|
```
|
|
17
17
|
|
|
18
18
|
A turn that ends while the run waits is a pause, not a stop, even when your harness ends it.
|
|
@@ -34,7 +34,7 @@ you plan. Run `onboard protect` again from the target app directory: on the same
|
|
|
34
34
|
prints the baseline the run already holds.
|
|
35
35
|
|
|
36
36
|
```text
|
|
37
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
37
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
Then have one read-only subagent repeat the inspection for the findings above, and wait
|
|
@@ -72,11 +72,11 @@ one.
|
|
|
72
72
|
After approval, record each approved path before implementation:
|
|
73
73
|
|
|
74
74
|
```text
|
|
75
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
75
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>"
|
|
76
76
|
```
|
|
77
77
|
|
|
78
78
|
If an approved path changed after capture and no implementation step has run, add
|
|
79
79
|
`--with-prior-change`. Continue only when every result starts with `Status: passed`. Do not
|
|
80
80
|
authorize a path the approved plan did not list.
|
|
81
81
|
|
|
82
|
-
Then run `npx --prefer-offline --yes copilotkit@4.
|
|
82
|
+
Then run `npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/learning/implement`.
|
|
@@ -4,10 +4,53 @@ Delegate proof to a fresh subagent. In the real authenticated app, create or use
|
|
|
4
4
|
send a normal agent request, and confirm the resulting run reached the selected Learning
|
|
5
5
|
Container. Confirm the thread remains associated with the expected user.
|
|
6
6
|
|
|
7
|
+
## Check the local Learning model first
|
|
8
|
+
|
|
9
|
+
If the app directory has `.copilotkit/local.json`, the app uses a local evaluation stack.
|
|
10
|
+
A local stack runs Learning only with a model that the developer gave it. Before the proof,
|
|
11
|
+
run this command from the app directory:
|
|
12
|
+
|
|
13
|
+
```text
|
|
14
|
+
npx --prefer-offline --yes copilotkit@4.24.0 local status --json
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Read `learning.configuration`. If it is `configured`, continue with the proof. Any other
|
|
18
|
+
value means that the stack has no Learning model.
|
|
19
|
+
|
|
20
|
+
If the developer chose "configure later" in `deployment/choose-local`, and the run's plan
|
|
21
|
+
records that choice, do not ask again. Continue with the proof, and report it as below.
|
|
22
|
+
|
|
23
|
+
Otherwise, tell the developer that Learning cannot process this container's threads until
|
|
24
|
+
it has a model. Ask them to run this command in their own terminal window, in the app
|
|
25
|
+
directory:
|
|
26
|
+
|
|
27
|
+
```text
|
|
28
|
+
npx --prefer-offline --yes copilotkit@4.24.0 local setup
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Do not give it as a `!` line, and do not run it yourself. Its guided model prompt needs a
|
|
32
|
+
terminal, and a coding agent's shell has none. Without a terminal, the command stops and
|
|
33
|
+
changes nothing. The prompt asks for the model and its key, and it saves them privately.
|
|
34
|
+
On a running stack, it restarts only Learning. The container and its threads stay. Do not
|
|
35
|
+
ask the developer to write a model file, and do not read or print the model key.
|
|
36
|
+
|
|
37
|
+
Say that the run continues when they reply or resume this session. Report the pause with
|
|
38
|
+
`npx --prefer-offline --yes copilotkit@4.24.0 onboard checkpoint --phase awaiting-model-credential`, end your
|
|
39
|
+
turn, and wait. When the developer replies, run `local status --json` again.
|
|
40
|
+
When it reports `configured`, continue with the proof.
|
|
41
|
+
|
|
42
|
+
If the developer declines, continue with the proof, because the container assignment can
|
|
43
|
+
still be proved. In the closing report, write "Learning configuration incomplete". Name the
|
|
44
|
+
command that adds the model later: `npx --prefer-offline --yes copilotkit@4.24.0 local setup`, run from
|
|
45
|
+
the app directory. `learning.verified` is always `false`. It does not mean that Learning
|
|
46
|
+
failed.
|
|
47
|
+
|
|
48
|
+
## Prove the container assignment
|
|
49
|
+
|
|
7
50
|
One command decides it:
|
|
8
51
|
|
|
9
52
|
```text
|
|
10
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
53
|
+
npx --prefer-offline --yes copilotkit@4.24.0 verify --expect-runtime intelligence --round-trip --agent <agent-id> --expect-learning-container <id> --json
|
|
11
54
|
```
|
|
12
55
|
|
|
13
56
|
It reads the thread back from the platform, so it answers for any runtime mount, and it
|
|
@@ -40,7 +83,7 @@ still go on the record. Name the file and why the fix needs it, then end your tu
|
|
|
40
83
|
for the developer's answer. If they allow it, record their answer before any edit:
|
|
41
84
|
|
|
42
85
|
```text
|
|
43
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
86
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
|
|
44
87
|
```
|
|
45
88
|
|
|
46
89
|
Continue only when the result starts with `Status: passed`. Run the audit again, take the
|
|
@@ -53,12 +96,12 @@ Report the outcome of each attempt as it ends, before any repair. The command co
|
|
|
53
96
|
attempts and the repairs:
|
|
54
97
|
|
|
55
98
|
```text
|
|
56
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
99
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
|
|
57
100
|
```
|
|
58
101
|
|
|
59
102
|
Use `passed` only for a proved Container assignment, `failed` for an attempted proof that
|
|
60
103
|
failed, and `skipped` when the proof could not run. Then run
|
|
61
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
104
|
+
`npx --prefer-offline --yes copilotkit@4.24.0 onboard audit`. Continue only when it starts with
|
|
62
105
|
`Status: passed`.
|
|
63
106
|
|
|
64
107
|
If the audit fails, never repair, reset, or revert a protected path. Compare each named path
|
|
@@ -73,9 +116,9 @@ the path and the change the audit reports. Run the audit again after each accept
|
|
|
73
116
|
If the audit still fails, or starts with `Status: blocked`, route out and stop:
|
|
74
117
|
|
|
75
118
|
```text
|
|
76
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
119
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/stop
|
|
77
120
|
```
|
|
78
121
|
|
|
79
122
|
When the audit passes, run
|
|
80
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
123
|
+
`npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/complete` with the actual surface
|
|
81
124
|
outcome.
|
|
@@ -4,6 +4,23 @@ Treat Learning as a managed Intelligence feature that assigns real threads to a
|
|
|
4
4
|
Learning Container. Orchestrate with separate read-only, implementation, and proof
|
|
5
5
|
subagents. Work only inside the target project and preserve its existing agent and chat.
|
|
6
6
|
|
|
7
|
+
## First, say which coding agent you are
|
|
8
|
+
|
|
9
|
+
Run this before anything else in this prompt:
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard identify --coding-agent <coding-agent-slug> --model <model-id> --model-family <model-family>
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
Report your product slug, such as `codex` or `claude-code`. The command needs no sign-in,
|
|
16
|
+
browser, or project. If this run already ran `onboard identify`, skip this step.
|
|
17
|
+
|
|
18
|
+
- `--model`: copy the model id exactly as your instructions write it. If they name no
|
|
19
|
+
exact model id, leave out `--model` rather than guess.
|
|
20
|
+
- `--model-family`: your model's family, such as `claude-opus` or `gpt-5`. Give it even
|
|
21
|
+
without `--model`, and leave out `--model-family` if you do not know it.
|
|
22
|
+
- Never give your product slug as a model or a family.
|
|
23
|
+
|
|
7
24
|
## Waits, stops, and subagents
|
|
8
25
|
|
|
9
26
|
A run that starts here has not read these rules yet, so they come first. They cover this
|
|
@@ -20,13 +37,13 @@ carry on. Keep a read-only assignment read-only. If no subagent works at all, re
|
|
|
20
37
|
once:
|
|
21
38
|
|
|
22
39
|
```text
|
|
23
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
40
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard checkpoint --phase delegation-unavailable
|
|
24
41
|
```
|
|
25
42
|
|
|
26
43
|
Before you end your turn to wait for the developer, report the pause:
|
|
27
44
|
|
|
28
45
|
```text
|
|
29
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
46
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard checkpoint --phase awaiting-developer
|
|
30
47
|
```
|
|
31
48
|
|
|
32
49
|
A turn that ends while the run waits is a pause, not a stop, even when your harness ends it.
|
|
@@ -36,7 +53,7 @@ If you stop this run, send one short report before you stop. The friction comman
|
|
|
36
53
|
the telemetry setting the developer already chose, so it needs no separate question.
|
|
37
54
|
|
|
38
55
|
```text
|
|
39
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
56
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard friction --phase stop --category <slug> --message "<sentences>"
|
|
40
57
|
```
|
|
41
58
|
|
|
42
59
|
`--message` takes one or two sentences: the step you stopped at and what stopped it.
|
|
@@ -66,7 +83,7 @@ status:
|
|
|
66
83
|
before the capture, the inspection, and any edit:
|
|
67
84
|
|
|
68
85
|
```text
|
|
69
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
86
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/blocked-by-plan
|
|
70
87
|
```
|
|
71
88
|
|
|
72
89
|
- `LEARNING_AVAILABILITY_UNAVAILABLE` means the platform did not resolve the answer. It is
|
|
@@ -87,7 +104,7 @@ again: it has no answer, so it carries the question forward rather than ending o
|
|
|
87
104
|
Before any subagent or project process runs, capture the developer's existing work:
|
|
88
105
|
|
|
89
106
|
```text
|
|
90
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
107
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect
|
|
91
108
|
```
|
|
92
109
|
|
|
93
110
|
Keep the exact protected path list it prints and give that list to every subagent. No
|
|
@@ -101,20 +118,20 @@ test/dev commands. Prove the current round trip and inspect `/info`.
|
|
|
101
118
|
Wait for the inspection subagent to finish. Then report that the inspection came back:
|
|
102
119
|
|
|
103
120
|
```text
|
|
104
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
121
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard checkpoint --phase research-returned
|
|
105
122
|
```
|
|
106
123
|
|
|
107
124
|
If the inspection did not prove the baseline this intent extends, stop here without
|
|
108
125
|
changing files:
|
|
109
126
|
|
|
110
127
|
```text
|
|
111
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
128
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/stop
|
|
112
129
|
```
|
|
113
130
|
|
|
114
131
|
When the inspection proved what this intent needs, read the next prompt now, in this turn:
|
|
115
132
|
|
|
116
133
|
```text
|
|
117
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
134
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/learning/plan
|
|
118
135
|
```
|
|
119
136
|
|
|
120
137
|
That prompt holds the plan, the developer's approval, and the paths the plan changes.
|
|
@@ -16,7 +16,7 @@ validation results without secrets.
|
|
|
16
16
|
Before you spawn the implementation subagent, take the authorized list from the CLI:
|
|
17
17
|
|
|
18
18
|
```text
|
|
19
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
19
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard audit
|
|
20
20
|
```
|
|
21
21
|
|
|
22
22
|
From its result, copy the paths under `Authorized to modify:`. A passed or failed audit with
|
|
@@ -35,7 +35,7 @@ still go on the record. Name the file and why the work needs it, then end your t
|
|
|
35
35
|
for the developer's answer. If they allow it, record their answer before any edit:
|
|
36
36
|
|
|
37
37
|
```text
|
|
38
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
38
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
|
|
39
39
|
```
|
|
40
40
|
|
|
41
41
|
Continue only when the result starts with `Status: passed`. Run the audit again, take the
|
|
@@ -47,7 +47,7 @@ feature stop route below.
|
|
|
47
47
|
After validation and each repair, run:
|
|
48
48
|
|
|
49
49
|
```text
|
|
50
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
50
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard audit
|
|
51
51
|
```
|
|
52
52
|
|
|
53
53
|
Continue only when it starts with `Status: passed`. A path under `Authorized to modify:` is
|
|
@@ -58,7 +58,7 @@ with the implementation subagent's `Files changed` section. If that section does
|
|
|
58
58
|
the path, accept the developer's external change:
|
|
59
59
|
|
|
60
60
|
```text
|
|
61
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
61
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect --accept-external --path <path>
|
|
62
62
|
```
|
|
63
63
|
|
|
64
64
|
For an env file where the developer placed a requested credential, use
|
|
@@ -71,11 +71,11 @@ Run the audit again after each accepted change. If it still fails, or starts
|
|
|
71
71
|
with `Status: blocked`, route out and stop:
|
|
72
72
|
|
|
73
73
|
```text
|
|
74
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
74
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/stop
|
|
75
75
|
```
|
|
76
76
|
|
|
77
77
|
If validation cannot pass, or this intent needs a prerequisite the app does not have, use
|
|
78
78
|
the feature stop route above without further changes.
|
|
79
79
|
|
|
80
80
|
Otherwise run
|
|
81
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
81
|
+
`npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/open-generative-ui/proof`.
|
|
@@ -12,7 +12,7 @@ The approval is a wait for the developer. Before you end your turn to wait, repo
|
|
|
12
12
|
pause:
|
|
13
13
|
|
|
14
14
|
```text
|
|
15
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
15
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard checkpoint --phase awaiting-developer
|
|
16
16
|
```
|
|
17
17
|
|
|
18
18
|
A turn that ends while the run waits is a pause, not a stop, even when your harness ends it.
|
|
@@ -33,7 +33,7 @@ you plan. Run `onboard protect` again from the target app directory: on the same
|
|
|
33
33
|
prints the baseline the run already holds.
|
|
34
34
|
|
|
35
35
|
```text
|
|
36
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
36
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect
|
|
37
37
|
```
|
|
38
38
|
|
|
39
39
|
Then have one read-only subagent repeat the inspection for the findings above, and wait
|
|
@@ -60,11 +60,11 @@ one.
|
|
|
60
60
|
After approval, record each approved path before implementation:
|
|
61
61
|
|
|
62
62
|
```text
|
|
63
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
63
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>"
|
|
64
64
|
```
|
|
65
65
|
|
|
66
66
|
If an approved path changed after capture and no implementation step has run, add
|
|
67
67
|
`--with-prior-change`. Continue only when every result starts with `Status: passed`. Do not
|
|
68
68
|
authorize a path the approved plan did not list.
|
|
69
69
|
|
|
70
|
-
Then run `npx --prefer-offline --yes copilotkit@4.
|
|
70
|
+
Then run `npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/open-generative-ui/implement`.
|
|
@@ -21,7 +21,7 @@ still go on the record. Name the file and why the fix needs it, then end your tu
|
|
|
21
21
|
for the developer's answer. If they allow it, record their answer before any edit:
|
|
22
22
|
|
|
23
23
|
```text
|
|
24
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
24
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
Continue only when the result starts with `Status: passed`. Run the audit again, take the
|
|
@@ -34,11 +34,11 @@ Report the outcome of each attempt as it ends, before any repair. The command co
|
|
|
34
34
|
attempts and the repairs:
|
|
35
35
|
|
|
36
36
|
```text
|
|
37
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
37
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
Use `passed` only for a proved generated UI, `failed` for an attempted proof that failed,
|
|
41
|
-
and `skipped` when the proof could not run. Then run `npx --prefer-offline --yes copilotkit@4.
|
|
41
|
+
and `skipped` when the proof could not run. Then run `npx --prefer-offline --yes copilotkit@4.24.0 onboard audit`.
|
|
42
42
|
Continue only when it starts with `Status: passed`.
|
|
43
43
|
|
|
44
44
|
If the audit fails, never repair, reset, or revert a protected path. Compare each named path
|
|
@@ -53,9 +53,9 @@ the path and the change the audit reports. Run the audit again after each accept
|
|
|
53
53
|
If the audit still fails, or starts with `Status: blocked`, route out and stop:
|
|
54
54
|
|
|
55
55
|
```text
|
|
56
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
56
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/stop
|
|
57
57
|
```
|
|
58
58
|
|
|
59
59
|
When the audit passes, run
|
|
60
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
60
|
+
`npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/complete` with the outcome actually
|
|
61
61
|
observed.
|
|
@@ -3,6 +3,23 @@
|
|
|
3
3
|
Treat this as a focused OSS enhancement. Orchestrate the work with separate read-only,
|
|
4
4
|
implementation, and proof subagents, all restricted to the target project directory.
|
|
5
5
|
|
|
6
|
+
## First, say which coding agent you are
|
|
7
|
+
|
|
8
|
+
Run this before anything else in this prompt:
|
|
9
|
+
|
|
10
|
+
```text
|
|
11
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard identify --coding-agent <coding-agent-slug> --model <model-id> --model-family <model-family>
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
Report your product slug, such as `codex` or `claude-code`. The command needs no sign-in,
|
|
15
|
+
browser, or project. If this run already ran `onboard identify`, skip this step.
|
|
16
|
+
|
|
17
|
+
- `--model`: copy the model id exactly as your instructions write it. If they name no
|
|
18
|
+
exact model id, leave out `--model` rather than guess.
|
|
19
|
+
- `--model-family`: your model's family, such as `claude-opus` or `gpt-5`. Give it even
|
|
20
|
+
without `--model`, and leave out `--model-family` if you do not know it.
|
|
21
|
+
- Never give your product slug as a model or a family.
|
|
22
|
+
|
|
6
23
|
## Waits, stops, and subagents
|
|
7
24
|
|
|
8
25
|
A run that starts here has not read these rules yet, so they come first. They cover this
|
|
@@ -19,13 +36,13 @@ carry on. Keep a read-only assignment read-only. If no subagent works at all, re
|
|
|
19
36
|
once:
|
|
20
37
|
|
|
21
38
|
```text
|
|
22
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
39
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard checkpoint --phase delegation-unavailable
|
|
23
40
|
```
|
|
24
41
|
|
|
25
42
|
Before you end your turn to wait for the developer, report the pause:
|
|
26
43
|
|
|
27
44
|
```text
|
|
28
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
45
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard checkpoint --phase awaiting-developer
|
|
29
46
|
```
|
|
30
47
|
|
|
31
48
|
A turn that ends while the run waits is a pause, not a stop, even when your harness ends it.
|
|
@@ -35,7 +52,7 @@ If you stop this run, send one short report before you stop. The friction comman
|
|
|
35
52
|
the telemetry setting the developer already chose, so it needs no separate question.
|
|
36
53
|
|
|
37
54
|
```text
|
|
38
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
55
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard friction --phase stop --category <slug> --message "<sentences>"
|
|
39
56
|
```
|
|
40
57
|
|
|
41
58
|
`--message` takes one or two sentences: the step you stopped at and what stopped it.
|
|
@@ -49,7 +66,7 @@ one scoped fix, and sends the report itself when no fix is approved.
|
|
|
49
66
|
Before any subagent or project process runs, capture the developer's existing work:
|
|
50
67
|
|
|
51
68
|
```text
|
|
52
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
69
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect
|
|
53
70
|
```
|
|
54
71
|
|
|
55
72
|
Keep the exact protected path list it prints and give that list to every subagent. No
|
|
@@ -59,26 +76,26 @@ approved authorization before implementation.
|
|
|
59
76
|
Before edits, have a research subagent identify the current CopilotKit runtime route,
|
|
60
77
|
provider/chat component, agent id, package versions, existing middleware, sandbox/CSP
|
|
61
78
|
constraints, and normal test/dev commands. Prove the existing app first with `/info`,
|
|
62
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
79
|
+
`npx --prefer-offline --yes copilotkit@4.24.0 verify --expect-runtime oss --round-trip --agent <agent-id> --json`,
|
|
63
80
|
and a real frontend request when browser control is available.
|
|
64
81
|
|
|
65
82
|
Wait for the inspection subagent to finish. Then report that the inspection came back:
|
|
66
83
|
|
|
67
84
|
```text
|
|
68
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
85
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard checkpoint --phase research-returned
|
|
69
86
|
```
|
|
70
87
|
|
|
71
88
|
If the inspection did not prove the baseline this intent extends, stop here without
|
|
72
89
|
changing files:
|
|
73
90
|
|
|
74
91
|
```text
|
|
75
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
92
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/stop
|
|
76
93
|
```
|
|
77
94
|
|
|
78
95
|
When the inspection proved what this intent needs, read the next prompt now, in this turn:
|
|
79
96
|
|
|
80
97
|
```text
|
|
81
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
98
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/open-generative-ui/plan
|
|
82
99
|
```
|
|
83
100
|
|
|
84
101
|
That prompt holds the plan, the developer's approval, and the paths the plan changes.
|
|
@@ -17,14 +17,14 @@ non-zero on an app that is working. Pass what `identifyUser` reads with a repeat
|
|
|
17
17
|
It is not a defect to repair.
|
|
18
18
|
|
|
19
19
|
Run focused tests and
|
|
20
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
20
|
+
`npx --prefer-offline --yes copilotkit@4.24.0 verify --expect-runtime intelligence --round-trip --agent <agent-id> --json`.
|
|
21
21
|
Repair changed-file failures and record changed paths and secret-safe validation
|
|
22
22
|
evidence.
|
|
23
23
|
|
|
24
24
|
Before you spawn the implementation subagent, take the authorized list from the CLI:
|
|
25
25
|
|
|
26
26
|
```text
|
|
27
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
27
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard audit
|
|
28
28
|
```
|
|
29
29
|
|
|
30
30
|
From its result, copy the paths under `Authorized to modify:`. A passed or failed audit with
|
|
@@ -43,7 +43,7 @@ still go on the record. Name the file and why the work needs it, then end your t
|
|
|
43
43
|
for the developer's answer. If they allow it, record their answer before any edit:
|
|
44
44
|
|
|
45
45
|
```text
|
|
46
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
46
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
|
|
47
47
|
```
|
|
48
48
|
|
|
49
49
|
Continue only when the result starts with `Status: passed`. Run the audit again, take the
|
|
@@ -55,7 +55,7 @@ feature stop route below.
|
|
|
55
55
|
After validation and each repair, run:
|
|
56
56
|
|
|
57
57
|
```text
|
|
58
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
58
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard audit
|
|
59
59
|
```
|
|
60
60
|
|
|
61
61
|
Continue only when it starts with `Status: passed`. A path under `Authorized to modify:` is
|
|
@@ -66,7 +66,7 @@ with the implementation subagent's `Files changed` section. If that section does
|
|
|
66
66
|
the path, accept the developer's external change:
|
|
67
67
|
|
|
68
68
|
```text
|
|
69
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
69
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect --accept-external --path <path>
|
|
70
70
|
```
|
|
71
71
|
|
|
72
72
|
For an env file where the developer placed a requested credential, use
|
|
@@ -79,11 +79,11 @@ Run the audit again after each accepted change. If it still fails, or starts
|
|
|
79
79
|
with `Status: blocked`, route out and stop:
|
|
80
80
|
|
|
81
81
|
```text
|
|
82
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
82
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/stop
|
|
83
83
|
```
|
|
84
84
|
|
|
85
85
|
If validation cannot pass, or this intent needs a prerequisite the app does not have, use
|
|
86
86
|
the feature stop route above without further changes.
|
|
87
87
|
|
|
88
88
|
Otherwise run
|
|
89
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
89
|
+
`npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/realtime-sync/proof`.
|
|
@@ -12,7 +12,7 @@ The approval is a wait for the developer. Before you end your turn to wait, repo
|
|
|
12
12
|
pause:
|
|
13
13
|
|
|
14
14
|
```text
|
|
15
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
15
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard checkpoint --phase awaiting-developer
|
|
16
16
|
```
|
|
17
17
|
|
|
18
18
|
A turn that ends while the run waits is a pause, not a stop, even when your harness ends it.
|
|
@@ -34,7 +34,7 @@ you plan. Run `onboard protect` again from the target app directory: on the same
|
|
|
34
34
|
prints the baseline the run already holds.
|
|
35
35
|
|
|
36
36
|
```text
|
|
37
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
37
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
Then have one read-only subagent repeat the inspection for the findings above, and wait
|
|
@@ -65,11 +65,11 @@ one.
|
|
|
65
65
|
After approval, record each approved path before implementation:
|
|
66
66
|
|
|
67
67
|
```text
|
|
68
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
68
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>"
|
|
69
69
|
```
|
|
70
70
|
|
|
71
71
|
If an approved path changed after capture and no implementation step has run, add
|
|
72
72
|
`--with-prior-change`. Continue only when every result starts with `Status: passed`. Do not
|
|
73
73
|
authorize a path the approved plan did not list.
|
|
74
74
|
|
|
75
|
-
Then run `npx --prefer-offline --yes copilotkit@4.
|
|
75
|
+
Then run `npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/realtime-sync/implement`.
|
|
@@ -23,7 +23,7 @@ still go on the record. Name the file and why the fix needs it, then end your tu
|
|
|
23
23
|
for the developer's answer. If they allow it, record their answer before any edit:
|
|
24
24
|
|
|
25
25
|
```text
|
|
26
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
26
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
|
|
27
27
|
```
|
|
28
28
|
|
|
29
29
|
Continue only when the result starts with `Status: passed`. Run the audit again, take the
|
|
@@ -36,11 +36,11 @@ Report the outcome of each attempt as it ends, before any repair. The command co
|
|
|
36
36
|
attempts and the repairs:
|
|
37
37
|
|
|
38
38
|
```text
|
|
39
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
39
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
|
|
40
40
|
```
|
|
41
41
|
|
|
42
42
|
Use `passed` only for proved two-client sync, `failed` for an attempted proof that failed,
|
|
43
|
-
and `skipped` when the proof could not run. Then run `npx --prefer-offline --yes copilotkit@4.
|
|
43
|
+
and `skipped` when the proof could not run. Then run `npx --prefer-offline --yes copilotkit@4.24.0 onboard audit`.
|
|
44
44
|
Continue only when it starts with `Status: passed`.
|
|
45
45
|
|
|
46
46
|
If the audit fails, never repair, reset, or revert a protected path. Compare each named path
|
|
@@ -55,8 +55,8 @@ the path and the change the audit reports. Run the audit again after each accept
|
|
|
55
55
|
If the audit still fails, or starts with `Status: blocked`, route out and stop:
|
|
56
56
|
|
|
57
57
|
```text
|
|
58
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
58
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/stop
|
|
59
59
|
```
|
|
60
60
|
|
|
61
61
|
When the audit passes, run
|
|
62
|
-
`npx --prefer-offline --yes copilotkit@4.
|
|
62
|
+
`npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/complete` with the actual outcome.
|
|
@@ -4,6 +4,23 @@ Treat realtime sync as the Intelligence thread-realtime plane, not as a generic
|
|
|
4
4
|
exercise. Act as the orchestrator and delegate read-only inspection, implementation, and
|
|
5
5
|
two-context proof to subagents within the target project.
|
|
6
6
|
|
|
7
|
+
## First, say which coding agent you are
|
|
8
|
+
|
|
9
|
+
Run this before anything else in this prompt:
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard identify --coding-agent <coding-agent-slug> --model <model-id> --model-family <model-family>
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
Report your product slug, such as `codex` or `claude-code`. The command needs no sign-in,
|
|
16
|
+
browser, or project. If this run already ran `onboard identify`, skip this step.
|
|
17
|
+
|
|
18
|
+
- `--model`: copy the model id exactly as your instructions write it. If they name no
|
|
19
|
+
exact model id, leave out `--model` rather than guess.
|
|
20
|
+
- `--model-family`: your model's family, such as `claude-opus` or `gpt-5`. Give it even
|
|
21
|
+
without `--model`, and leave out `--model-family` if you do not know it.
|
|
22
|
+
- Never give your product slug as a model or a family.
|
|
23
|
+
|
|
7
24
|
## Waits, stops, and subagents
|
|
8
25
|
|
|
9
26
|
A run that starts here has not read these rules yet, so they come first. They cover this
|
|
@@ -20,13 +37,13 @@ carry on. Keep a read-only assignment read-only. If no subagent works at all, re
|
|
|
20
37
|
once:
|
|
21
38
|
|
|
22
39
|
```text
|
|
23
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
40
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard checkpoint --phase delegation-unavailable
|
|
24
41
|
```
|
|
25
42
|
|
|
26
43
|
Before you end your turn to wait for the developer, report the pause:
|
|
27
44
|
|
|
28
45
|
```text
|
|
29
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
46
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard checkpoint --phase awaiting-developer
|
|
30
47
|
```
|
|
31
48
|
|
|
32
49
|
A turn that ends while the run waits is a pause, not a stop, even when your harness ends it.
|
|
@@ -36,7 +53,7 @@ If you stop this run, send one short report before you stop. The friction comman
|
|
|
36
53
|
the telemetry setting the developer already chose, so it needs no separate question.
|
|
37
54
|
|
|
38
55
|
```text
|
|
39
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
56
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard friction --phase stop --category <slug> --message "<sentences>"
|
|
40
57
|
```
|
|
41
58
|
|
|
42
59
|
`--message` takes one or two sentences: the step you stopped at and what stopped it.
|
|
@@ -50,7 +67,7 @@ one scoped fix, and sends the report itself when no fix is approved.
|
|
|
50
67
|
Before any subagent or project process runs, capture the developer's existing work:
|
|
51
68
|
|
|
52
69
|
```text
|
|
53
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
70
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard protect
|
|
54
71
|
```
|
|
55
72
|
|
|
56
73
|
Keep the exact protected path list it prints and give that list to every subagent. No
|
|
@@ -65,20 +82,20 @@ round trip and inspect `/info`.
|
|
|
65
82
|
Wait for the inspection subagent to finish. Then report that the inspection came back:
|
|
66
83
|
|
|
67
84
|
```text
|
|
68
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
85
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard checkpoint --phase research-returned
|
|
69
86
|
```
|
|
70
87
|
|
|
71
88
|
If the inspection did not prove the baseline this intent extends, stop here without
|
|
72
89
|
changing files:
|
|
73
90
|
|
|
74
91
|
```text
|
|
75
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
92
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/stop
|
|
76
93
|
```
|
|
77
94
|
|
|
78
95
|
When the inspection proved what this intent needs, read the next prompt now, in this turn:
|
|
79
96
|
|
|
80
97
|
```text
|
|
81
|
-
npx --prefer-offline --yes copilotkit@4.
|
|
98
|
+
npx --prefer-offline --yes copilotkit@4.24.0 onboard read feature/realtime-sync/plan
|
|
82
99
|
```
|
|
83
100
|
|
|
84
101
|
That prompt holds the plan, the developer's approval, and the paths the plan changes.
|