copilotkit 4.25.1 → 4.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/README.md +15 -10
  2. package/cli-build-info.json +6 -6
  3. package/index.js +795 -716
  4. package/onboarding/index.json +2 -2
  5. package/onboarding/prompts/authenticate/start.md +13 -13
  6. package/onboarding/prompts/conversion/plan.md +3 -3
  7. package/onboarding/prompts/credentials/finalize-plan.md +13 -13
  8. package/onboarding/prompts/credentials/plan.md +23 -23
  9. package/onboarding/prompts/credentials/settle-credentials.md +8 -7
  10. package/onboarding/prompts/credentials/write-plan.md +7 -7
  11. package/onboarding/prompts/deployment/choose-local.md +10 -10
  12. package/onboarding/prompts/deployment/local-evaluation.md +7 -7
  13. package/onboarding/prompts/fallback/best-effort.md +6 -6
  14. package/onboarding/prompts/feature/a2ui/implement.md +4 -4
  15. package/onboarding/prompts/feature/a2ui/plan.md +3 -3
  16. package/onboarding/prompts/feature/a2ui/proof.md +5 -5
  17. package/onboarding/prompts/feature/a2ui/start.md +8 -8
  18. package/onboarding/prompts/feature/channels/implement.md +6 -6
  19. package/onboarding/prompts/feature/channels/plan.md +3 -3
  20. package/onboarding/prompts/feature/channels/proof.md +5 -5
  21. package/onboarding/prompts/feature/channels/start.md +8 -8
  22. package/onboarding/prompts/feature/chat-suggestions/implement.md +4 -4
  23. package/onboarding/prompts/feature/chat-suggestions/plan.md +3 -3
  24. package/onboarding/prompts/feature/chat-suggestions/proof.md +5 -5
  25. package/onboarding/prompts/feature/chat-suggestions/start.md +8 -8
  26. package/onboarding/prompts/feature/complete.md +2 -2
  27. package/onboarding/prompts/feature/learning/implement.md +12 -12
  28. package/onboarding/prompts/feature/learning/plan.md +4 -4
  29. package/onboarding/prompts/feature/learning/proof.md +12 -12
  30. package/onboarding/prompts/feature/learning/start.md +8 -8
  31. package/onboarding/prompts/feature/open-generative-ui/implement.md +4 -4
  32. package/onboarding/prompts/feature/open-generative-ui/plan.md +3 -3
  33. package/onboarding/prompts/feature/open-generative-ui/proof.md +5 -5
  34. package/onboarding/prompts/feature/open-generative-ui/start.md +8 -8
  35. package/onboarding/prompts/feature/realtime-sync/implement.md +5 -5
  36. package/onboarding/prompts/feature/realtime-sync/plan.md +3 -3
  37. package/onboarding/prompts/feature/realtime-sync/proof.md +5 -5
  38. package/onboarding/prompts/feature/realtime-sync/start.md +7 -7
  39. package/onboarding/prompts/feature/rich-threads/implement.md +6 -6
  40. package/onboarding/prompts/feature/rich-threads/plan.md +3 -3
  41. package/onboarding/prompts/feature/rich-threads/proof.md +5 -5
  42. package/onboarding/prompts/feature/rich-threads/start.md +7 -7
  43. package/onboarding/prompts/feature/stop.md +4 -4
  44. package/onboarding/prompts/feature/voice/implement.md +4 -4
  45. package/onboarding/prompts/feature/voice/plan.md +4 -4
  46. package/onboarding/prompts/feature/voice/proof.md +5 -5
  47. package/onboarding/prompts/feature/voice/start.md +8 -8
  48. package/onboarding/prompts/framework/ag2.md +2 -2
  49. package/onboarding/prompts/framework/agno.md +2 -2
  50. package/onboarding/prompts/framework/built-in.md +2 -2
  51. package/onboarding/prompts/framework/claude-sdk-python.md +2 -2
  52. package/onboarding/prompts/framework/claude-sdk-typescript.md +2 -2
  53. package/onboarding/prompts/framework/crewai-flows.md +3 -3
  54. package/onboarding/prompts/framework/custom-ag-ui.md +3 -3
  55. package/onboarding/prompts/framework/deep-agents.md +2 -2
  56. package/onboarding/prompts/framework/google-adk.md +2 -2
  57. package/onboarding/prompts/framework/langgraph-fastapi.md +2 -2
  58. package/onboarding/prompts/framework/langgraph-python.md +2 -2
  59. package/onboarding/prompts/framework/langgraph-typescript.md +2 -2
  60. package/onboarding/prompts/framework/llamaindex.md +2 -2
  61. package/onboarding/prompts/framework/mastra.md +2 -2
  62. package/onboarding/prompts/framework/ms-agent-dotnet.md +4 -4
  63. package/onboarding/prompts/framework/ms-agent-harness-dotnet.md +4 -4
  64. package/onboarding/prompts/framework/ms-agent-python.md +2 -2
  65. package/onboarding/prompts/framework/pydantic-ai.md +2 -2
  66. package/onboarding/prompts/framework/strands-python.md +2 -2
  67. package/onboarding/prompts/framework/strands-typescript.md +2 -2
  68. package/onboarding/prompts/frontend/angular.md +4 -4
  69. package/onboarding/prompts/frontend/nextjs.md +4 -4
  70. package/onboarding/prompts/frontend/plan.md +8 -8
  71. package/onboarding/prompts/frontend/react-native.md +3 -3
  72. package/onboarding/prompts/frontend/react-spa.md +3 -3
  73. package/onboarding/prompts/frontend/vue.md +3 -3
  74. package/onboarding/prompts/implementation/build-and-validate.md +10 -10
  75. package/onboarding/prompts/proof/complete.md +3 -3
  76. package/onboarding/prompts/proof/oss-baseline.md +5 -5
  77. package/onboarding/prompts/proof/round-trip.md +10 -10
  78. package/onboarding/prompts/research/gather.md +8 -8
  79. package/onboarding/prompts/research/merge.md +3 -3
  80. package/onboarding/prompts/research/preflight.md +2 -2
  81. package/onboarding/prompts/research/route.md +4 -4
  82. package/onboarding/prompts/setup/questions.md +31 -29
  83. package/onboarding/prompts/starter/clone.md +23 -23
  84. package/onboarding/prompts/stopped/run-failed.md +3 -3
  85. package/onboarding/prompts/subagent/create-plan.md +9 -5
  86. package/onboarding/prompts/subagent/implement-and-validate.md +6 -3
  87. package/onboarding/prompts/subagent/inspect-repository.md +1 -1
  88. package/onboarding/prompts/subagent/prove-oss-baseline.md +1 -1
  89. package/onboarding/prompts/subagent/prove-round-trip.md +5 -5
  90. package/onboarding/prompts/unsupported/no-validated-path.md +3 -3
  91. package/package.json +1 -1
@@ -16,7 +16,7 @@ project to use, or to open the coding agent in a new empty folder.
16
16
  Before you end your turn to wait for the developer, report the pause:
17
17
 
18
18
  ```text
19
- npx --prefer-offline --yes copilotkit@4.25.1 onboard checkpoint --phase awaiting-developer
19
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
20
20
  ```
21
21
 
22
22
  Match the selected agent framework and frontend to this table:
@@ -71,7 +71,7 @@ the derived name.
71
71
  Only if the developer asks for an existing project, or asks to see the projects they have,
72
72
  read the choices:
73
73
 
74
- `npx --prefer-offline --yes copilotkit@4.25.1 project list --json`
74
+ `npx --prefer-offline --yes copilotkit@4.26.0 project list --json`
75
75
 
76
76
  Then ask which one to use. Do not order the projects by creation time. If the developer
77
77
  already gave this answer, do not ask again. Do not read a secret value. Do not show or
@@ -80,7 +80,7 @@ store a secret value.
80
80
  Before you end your turn to wait for the developer, report the pause:
81
81
 
82
82
  ```text
83
- npx --prefer-offline --yes copilotkit@4.25.1 onboard checkpoint --phase awaiting-developer
83
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
84
84
  ```
85
85
 
86
86
  ## Ask where the model credential lives
@@ -100,14 +100,14 @@ value. Never ask for the value itself. If no answer comes, clone anyway. The ste
100
100
  the clone pauses for the key.
101
101
 
102
102
  If the developer has no key file yet and wants to create one, ask them to put it outside the
103
- target directory, such as in its parent folder. `init` refuses a target that holds a `.env`
104
- file, so a new `.env` in the target stops the clone. Pass the new file with
105
- `--model-key-file`, as for any other key file.
103
+ target directory, such as in its parent folder. Tell them only where it goes. The reason is
104
+ for you: `init` refuses a target that holds a `.env` file, so a new `.env` in the target
105
+ stops the clone. Pass the new file with `--model-key-file`, as for any other key file.
106
106
 
107
107
  Before you end your turn to wait for the developer, report the pause:
108
108
 
109
109
  ```text
110
- npx --prefer-offline --yes copilotkit@4.25.1 onboard checkpoint --phase awaiting-model-credential
110
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-model-credential
111
111
  ```
112
112
 
113
113
  A path the developer names is theirs to give, including one outside the project. A path
@@ -120,7 +120,7 @@ This route skips the plan step that records the path, so record it here, once, b
120
120
  the clone:
121
121
 
122
122
  ```text
123
- npx --prefer-offline --yes copilotkit@4.25.1 onboard classify --starting-state <starting-state> --agent-framework <agent-framework> --frontend <frontend> --model-vendor <model-vendor> --model-vendor-choice <model-vendor-choice>
123
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard classify --starting-state <starting-state> --agent-framework <agent-framework> --frontend <frontend> --model-vendor <model-vendor> --model-vendor-choice <model-vendor-choice>
124
124
  ```
125
125
 
126
126
  - `<starting-state>`: the starting state the research recorded, usually `empty`.
@@ -143,7 +143,7 @@ Do not inspect another entry in the parent directory. Replace each placeholder w
143
143
  recorded value. Do not run a placeholder as a shell argument. If the path holds a space,
144
144
  put it in double quotes.
145
145
 
146
- `npx --prefer-offline --yes copilotkit@4.25.1 init --dir <absolute-target-directory> --framework <framework-id> --channel none --no-banner --no-key-prompt --create <name> --install`
146
+ `npx --prefer-offline --yes copilotkit@4.26.0 init --dir <absolute-target-directory> --framework <framework-id> --channel none --no-banner --no-key-prompt --create <name> --install`
147
147
 
148
148
  `--dir` is always the absolute path of the target directory. `init` builds the app in that
149
149
  directory and gives the app the directory's name. Do not add `--name`: `init` refuses
@@ -164,23 +164,23 @@ the developer for the right path, or run the command again without the flag.
164
164
  Before you end your turn to wait for the developer, report the pause:
165
165
 
166
166
  ```text
167
- npx --prefer-offline --yes copilotkit@4.25.1 onboard checkpoint --phase awaiting-model-credential
167
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-model-credential
168
168
  ```
169
169
 
170
170
  If you cannot pass the key file to `init`, for example because a sandbox refuses the path,
171
171
  clone without `--model-key-file`. Then copy the key from `<target>` with one command:
172
- `cd <target> && npx --prefer-offline --yes copilotkit@4.25.1 onboard credentials --model-key <VARIABLE> --env-path <key-file> --copy-to <env file> --json`.
172
+ `cd <target> && npx --prefer-offline --yes copilotkit@4.26.0 onboard credentials --model-key <VARIABLE> --env-path <key-file> --copy-to <env file> --json`.
173
173
  `<env file>` is `.env`, or `agent/.env` for the Microsoft Agent Framework Python starter.
174
174
  The command writes the key into that file without printing it. If the
175
175
  command is refused too, ask the developer to run it. Give them exactly this one line:
176
- `! cd <target> && npx --prefer-offline --yes copilotkit@4.25.1 onboard credentials --model-key <VARIABLE> --env-path <key-file> --copy-to <env file>`.
176
+ `! cd <target> && npx --prefer-offline --yes copilotkit@4.26.0 onboard credentials --model-key <VARIABLE> --env-path <key-file> --copy-to <env file>`.
177
177
  The command needs no input. Without `!`, they run the same command in a terminal.
178
178
  Do not write a `sed`, `grep`, or `cat` command to copy the key.
179
179
 
180
180
  Before you end your turn to wait for the developer, report the pause:
181
181
 
182
182
  ```text
183
- npx --prefer-offline --yes copilotkit@4.25.1 onboard checkpoint --phase awaiting-model-credential
183
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-model-credential
184
184
  ```
185
185
 
186
186
  ### For a recorded local choice
@@ -190,7 +190,7 @@ command instead of the hosted command above. Do not ask the project questions ab
190
190
  Local evaluation creates its own empty project, and `init --local` refuses `--create` and
191
191
  `--project`.
192
192
 
193
- `npx --prefer-offline --yes copilotkit@4.25.1 init --dir <absolute-target-directory> --framework <framework-id> --channel none --no-banner --no-key-prompt --local --defer-model --install`
193
+ `npx --prefer-offline --yes copilotkit@4.26.0 init --dir <absolute-target-directory> --framework <framework-id> --channel none --no-banner --no-key-prompt --local --defer-model --install`
194
194
 
195
195
  Use the model choice from `deployment/choose-local`. If the developer deferred it, keep
196
196
  `--defer-model`. If the developer gave model settings, replace `--defer-model` with
@@ -205,7 +205,7 @@ After `init` reports the stack ready:
205
205
  Ask the developer to run this command in their own terminal window, in `<target>`:
206
206
 
207
207
  ```text
208
- npx --prefer-offline --yes copilotkit@4.25.1 local setup
208
+ npx --prefer-offline --yes copilotkit@4.26.0 local setup
209
209
  ```
210
210
 
211
211
  Do not give it as a `!` line, and do not run it yourself. Its guided model prompt needs a
@@ -214,9 +214,9 @@ changes nothing. The prompt asks for the model and its key, and it saves them pr
214
214
  On a running stack, it restarts only Learning. Do not ask for a model file.
215
215
 
216
216
  Say that the run continues when they reply or resume this session. Report the pause with
217
- `npx --prefer-offline --yes copilotkit@4.25.1 onboard checkpoint --phase awaiting-model-credential`, end your
217
+ `npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-model-credential`, end your
218
218
  turn, and wait. When the developer replies, run
219
- `npx --prefer-offline --yes copilotkit@4.25.1 local status --json` from `<target>` and read `learning.configuration`.
219
+ `npx --prefer-offline --yes copilotkit@4.26.0 local status --json` from `<target>` and read `learning.configuration`.
220
220
 
221
221
  The command installs the local stack, then connects the starter to it. It writes the
222
222
  gitignored `.copilotkit/local.json` stack reference and `.copilotkit/project.json` with the
@@ -270,7 +270,7 @@ When you ask, name each variable and the file it goes in, and say that the run c
270
270
  when they reply or resume this session. Then report the pause and end your turn:
271
271
 
272
272
  ```text
273
- npx --prefer-offline --yes copilotkit@4.25.1 onboard checkpoint --phase awaiting-model-credential
273
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-model-credential
274
274
  ```
275
275
 
276
276
  This is a pause, not a stop. Do not send a stop report, and do not take a stop route.
@@ -281,7 +281,7 @@ call.
281
281
 
282
282
  If no credential is missing, report no pause and continue.
283
283
 
284
- Then run `npx --prefer-offline --yes copilotkit@4.25.1 onboard read proof/round-trip`.
284
+ Then run `npx --prefer-offline --yes copilotkit@4.26.0 onboard read proof/round-trip`.
285
285
 
286
286
  If the local command fails, `init` keeps the cloned starter in `<target>`. Do not run
287
287
  `init` again, because the target is no longer empty. Do not delete the starter or the stack.
@@ -292,14 +292,14 @@ available memory, or 40 GiB storage. Tell the developer what to change in Docker
292
292
  memory, pass on the amount the message names. Then report the pause and end your turn:
293
293
 
294
294
  ```text
295
- npx --prefer-offline --yes copilotkit@4.25.1 onboard checkpoint --phase awaiting-developer
295
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
296
296
  ```
297
297
 
298
298
  When the developer says that Docker is ready, resume from `<target>` with the same model
299
299
  choice. If the run used a `--candidate`, add the same one:
300
300
 
301
301
  ```text
302
- npx --prefer-offline --yes copilotkit@4.25.1 local setup --defer-model --json
302
+ npx --prefer-offline --yes copilotkit@4.26.0 local setup --defer-model --json
303
303
  ```
304
304
 
305
305
  If the run used model settings, replace `--defer-model` with `--model-config <private-file>`.
@@ -307,7 +307,7 @@ Read blockers and the recorded failed step. Do not delete or recreate a failed s
307
307
  setup reports the stack ready, connect the starter from `<target>`:
308
308
 
309
309
  ```text
310
- npx --prefer-offline --yes copilotkit@4.25.1 local connect --approve-connection --json
310
+ npx --prefer-offline --yes copilotkit@4.26.0 local connect --approve-connection --json
311
311
  ```
312
312
 
313
313
  The connection writes `.copilotkit/local.json`, `.copilotkit/project.json`, and the local
@@ -316,6 +316,6 @@ setup fails again with an error that does not name Docker, take the route below.
316
316
 
317
317
  If the command fails, report its exact error and do not claim that the starter is ready.
318
318
  Then run
319
- `npx --prefer-offline --yes copilotkit@4.25.1 onboard read stopped/run-failed`. The starter is one this
319
+ `npx --prefer-offline --yes copilotkit@4.26.0 onboard read stopped/run-failed`. The starter is one this
320
320
  graph ships and the stack was chosen from its own supported list, so a command that
321
321
  returned an error is a run that broke, not a setup this release does not support.
@@ -40,13 +40,13 @@ put to them, stop here and send the report below.
40
40
  Before you end your turn to wait for the developer, report the pause:
41
41
 
42
42
  ```text
43
- npx --prefer-offline --yes copilotkit@4.25.1 onboard checkpoint --phase awaiting-developer
43
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
44
44
  ```
45
45
 
46
46
  If they approve it, make that one fix and nothing else. Then come back into this run:
47
47
 
48
48
  ```text
49
- npx --prefer-offline --yes copilotkit@4.25.1 onboard resume --message "<approval>"
49
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard resume --message "<approval>"
50
50
  ```
51
51
 
52
52
  Put the developer's approval in `--message`, in one or two sentences: the fix they
@@ -69,7 +69,7 @@ Send one short report. The friction command follows the telemetry setting the de
69
69
  already chose, so it needs no separate question.
70
70
 
71
71
  ```text
72
- npx --prefer-offline --yes copilotkit@4.25.1 onboard friction --phase stop --category <slug> --message "<sentences>"
72
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard friction --phase stop --category <slug> --message "<sentences>"
73
73
  ```
74
74
 
75
75
  `--message` takes one or two sentences: the step you stopped at and what stopped
@@ -39,6 +39,9 @@ developer wrote is the agent's behavior rather than a setting this run tunes unt
39
39
  component renders. Where the plan cannot be written without such a change and you cannot
40
40
  state it that way, return `Status: blocked`.
41
41
 
42
+ A run whose `environmentPath` ends in `.env.local` hosts the CopilotKit runtime in that
43
+ Next.js app, never in a separate server: no other process reads the key from that file.
44
+
42
45
  Plan the runtime to consume the Intelligence credential. The runtime takes an
43
46
  `intelligence` option holding a client built from the project key. A runtime given a
44
47
  `runner` option instead is the OSS runtime. It never reads the Intelligence key, and the
@@ -94,7 +97,7 @@ against a dead host, and the failure arrives as an empty-body 404 with no cause
94
97
  Ask the CLI for the dependency upgrade, from the target directory:
95
98
 
96
99
  ```text
97
- npx --prefer-offline --yes copilotkit@4.25.1 onboard upgrade-plan --json
100
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard upgrade-plan --json
98
101
  ```
99
102
 
100
103
  It reads the installed tree and the registry. Read `status`:
@@ -177,7 +180,7 @@ here is work the developer did not ask for.
177
180
  Plan the threads drawer itself: add it from the selected drawer page, where this frontend
178
181
  does not already render one. Where this journey's frontend framework ships no threads
179
182
  drawer -- React Native --, plan that the thread is proved by
180
- `npx --prefer-offline --yes copilotkit@4.25.1 verify --round-trip`, which needs no browser. Do not plan a
183
+ `npx --prefer-offline --yes copilotkit@4.26.0 verify --round-trip`, which needs no browser. Do not plan a
181
184
  step that opens the managed Intelligence dashboard.
182
185
 
183
186
  ## Name the files the run writes itself
@@ -186,9 +189,10 @@ List these in the plan under `Files the run writes itself`, apart from the imple
186
189
  steps. They are not steps, and they need no separate approval. A developer who approved a plan
187
190
  without them reads each one later as a change they never agreed to.
188
191
 
189
- - Each `planChanges` entry from `onboard credentials`: the project key in `.env`, the
190
- project record, and, where it lists `ignore-entries`, the lines `project select` adds to
191
- `.gitignore` so that no `.env` file can be committed.
192
+ - Each `planChanges` entry from `onboard credentials`: the project key in the env file
193
+ `environmentPath` names, the project record, and, where it lists `ignore-entries`, the
194
+ lines `project select` adds to `.gitignore` so that no credential env file can be
195
+ committed.
192
196
  - `.copilotkit/proof/`, where the proof writes its evidence. It holds no source. The
193
197
  developer can delete it after the run.
194
198
  - The CopilotKit Skills, as a line the developer approves or declines:
@@ -84,6 +84,9 @@ Wiring is not behavior. Add the CopilotKit SDK dependency, wrap the agent in the
84
84
  middleware, mount the runtime, connect AG-UI, and render what the agent already returns.
85
85
  Those are the parts this run adds.
86
86
 
87
+ A run whose `environmentPath` ends in `.env.local` hosts the CopilotKit runtime in that
88
+ Next.js app, never in a separate server: no other process reads the key from that file.
89
+
87
90
  A change on the behavior list changes how the agent answers everywhere, not only in
88
91
  CopilotKit, so the developer approves it before it is written. Where a step cannot be
89
92
  built without one the plan did not name, return `Status: blocked` and name the file, the
@@ -110,7 +113,7 @@ Intelligence: declare each exact version in its app's manifest, then install wit
110
113
  project's package manager. Then check the installed tree:
111
114
 
112
115
  ```text
113
- npx --prefer-offline --yes copilotkit@4.25.1 onboard upgrade-plan --check --json
116
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard upgrade-plan --check --json
114
117
  ```
115
118
 
116
119
  `single` means every direct dependency resolved to one version. `duplicates` names each
@@ -125,7 +128,7 @@ If the check finds duplicates or the baseline regresses, put the manifests and l
125
128
  back, leave Intelligence unwired, and report what failed:
126
129
 
127
130
  ```text
128
- npx --prefer-offline --yes copilotkit@4.25.1 onboard upgrade-plan --revert --json
131
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard upgrade-plan --revert --json
129
132
  ```
130
133
 
131
134
  Then end your turn. Never add an `overrides`, `resolutions`, or `pnpm.overrides` block to
@@ -161,7 +164,7 @@ Where the plan names a Learning Container id, check that the container exists fi
161
164
  this from the target app directory, before you write any selector:
162
165
 
163
166
  ```text
164
- npx --prefer-offline --yes copilotkit@4.25.1 learning containers get <id> --json
167
+ npx --prefer-offline --yes copilotkit@4.26.0 learning containers get <id> --json
165
168
  ```
166
169
 
167
170
  `"status": "success"` means the container exists. An `error.code` of
@@ -8,7 +8,7 @@ Your handoff holds the JSON of this command, which the main coding agent ran fro
8
8
  target project directory:
9
9
 
10
10
  ```text
11
- npx --prefer-offline --yes copilotkit@4.25.1 onboard inspect --json
11
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard inspect --json
12
12
  ```
13
13
 
14
14
  Read that JSON. Do not run the command again. If the handoff holds no inspection JSON, run
@@ -32,7 +32,7 @@ Prove the live runtime in this order:
32
32
  4. Confirm from project files that the runtime constructor passes a `runner` option rather
33
33
  than an `intelligence` option. A package, import, project file, or key is not use proof.
34
34
  5. Run
35
- `npx --prefer-offline --yes copilotkit@4.25.1 verify --expect-runtime oss --round-trip --agent <expected-agent-id> --json`,
35
+ `npx --prefer-offline --yes copilotkit@4.26.0 verify --expect-runtime oss --round-trip --agent <expected-agent-id> --json`,
36
36
  with the runtime URL or auth header options that this project needs. Require exit zero
37
37
  and the JSON `ok` field to be `true`.
38
38
  6. Drive one real request through the existing frontend, CopilotKit runtime, and expected
@@ -75,7 +75,7 @@ about the failure it was spawned to clear.
75
75
  Run this from the target app directory:
76
76
 
77
77
  ```text
78
- npx --prefer-offline --yes copilotkit@4.25.1 onboard proof-check --json
78
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard proof-check --json
79
79
  ```
80
80
 
81
81
  It starts each app's `dev` script unless a server from that app already listens, and
@@ -126,7 +126,7 @@ Otherwise sort `firstFailure`, and run the command again after each repair:
126
126
  asking. Read the port from the log, not from the plan, and record it:
127
127
 
128
128
  ```text
129
- npx --prefer-offline --yes copilotkit@4.25.1 onboard runtime-url --url <runtime-url>
129
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard runtime-url --url <runtime-url>
130
130
  ```
131
131
 
132
132
  `<runtime-url>` is the project's runtime URL, or the plan's, with its port replaced by the
@@ -296,7 +296,7 @@ For a recorded `both-oss` starting state, this step has no component to render.
296
296
  same request the baseline recorded, require the same kind of user-visible result the
297
297
  baseline produced, and require that the thread for that request is listed in the drawer.
298
298
  Where this journey's frontend framework ships no threads drawer -- React Native --, prove
299
- that thread with `npx --prefer-offline --yes copilotkit@4.25.1 verify --round-trip`, which reads the
299
+ that thread with `npx --prefer-offline --yes copilotkit@4.26.0 verify --round-trip`, which reads the
300
300
  answer back off the thread and needs no browser. Where the proof checks needed `--thread`,
301
301
  prove the thread for this request with `verify --thread <id>` instead. Record which of the
302
302
  two you proved.
@@ -326,7 +326,7 @@ limit can be ten minutes. You cannot interrupt a call while it runs, so the limi
326
326
  what you do after one. If a browser call took longer than 60 seconds to return, the browser
327
327
  control is unresponsive. Do not call the browser again in this attempt. A second call to a
328
328
  hung tool waits as long as the first one did. Run
329
- `npx --prefer-offline --yes copilotkit@4.25.1 verify --frontend-url <the frontendUrl the proof checks resolved> --json` once,
329
+ `npx --prefer-offline --yes copilotkit@4.26.0 verify --frontend-url <the frontendUrl the proof checks resolved> --json` once,
330
330
  and record the `frontend_assets_served` result. Report the outcome `failed` with the cause
331
331
  `browser-control-unresponsive`. The application is not at fault on this evidence: every
332
332
  step before the browser proved the runtime without one, and no repair to the project can
@@ -336,7 +336,7 @@ reach the tool.
336
336
  the page to finish loading. Do not retype the host, and do not substitute a URL a tool
337
337
  offers you by default. Where the page loads but its styling is missing or the chat
338
338
  control is dead, run
339
- `npx --prefer-offline --yes copilotkit@4.25.1 verify --frontend-url <the url you opened> --json`
339
+ `npx --prefer-offline --yes copilotkit@4.26.0 verify --frontend-url <the url you opened> --json`
340
340
  before you diagnose anything else. A dev server can serve its page and refuse every
341
341
  static chunk behind it, and on screen that is indistinguishable from a broken
342
342
  integration. The `frontend_assets_served` check tells the two apart.
@@ -35,17 +35,17 @@ Before you show the best-effort plan, require this complete packet:
35
35
  Before you end your turn to wait for the developer, report the pause:
36
36
 
37
37
  ```text
38
- npx --prefer-offline --yes copilotkit@4.25.1 onboard checkpoint --phase awaiting-developer
38
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
39
39
  ```
40
40
 
41
41
  After the developer approves the best-effort plan, run
42
- `npx --prefer-offline --yes copilotkit@4.25.1 onboard read fallback/best-effort`.
42
+ `npx --prefer-offline --yes copilotkit@4.26.0 onboard read fallback/best-effort`.
43
43
 
44
44
  Send one short report. The friction command follows the telemetry setting the developer
45
45
  already chose, so it needs no separate question.
46
46
 
47
47
  ```text
48
- npx --prefer-offline --yes copilotkit@4.25.1 onboard friction --phase stop --category <slug> --message "<sentences>"
48
+ npx --prefer-offline --yes copilotkit@4.26.0 onboard friction --phase stop --category <slug> --message "<sentences>"
49
49
  ```
50
50
 
51
51
  `--message` takes one or two sentences: the step you stopped at and what stopped it.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "copilotkit",
3
- "version": "4.25.1",
3
+ "version": "4.26.0",
4
4
  "type": "module",
5
5
  "engines": {
6
6
  "node": ">=20.9.0"