copilotkit 4.10.0 → 4.11.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 (76) hide show
  1. package/README.md +14 -4
  2. package/cli-build-info.json +8 -8
  3. package/index.js +150 -43
  4. package/onboarding/index.json +26 -1
  5. package/onboarding/prompts/authenticate/start.md +27 -13
  6. package/onboarding/prompts/conversion/plan.md +3 -3
  7. package/onboarding/prompts/credentials/finalize-plan.md +30 -21
  8. package/onboarding/prompts/credentials/plan.md +20 -20
  9. package/onboarding/prompts/credentials/settle-credentials.md +9 -9
  10. package/onboarding/prompts/credentials/write-plan.md +7 -7
  11. package/onboarding/prompts/fallback/best-effort.md +9 -8
  12. package/onboarding/prompts/feature/a2ui/implement.md +6 -6
  13. package/onboarding/prompts/feature/a2ui/proof.md +6 -6
  14. package/onboarding/prompts/feature/a2ui/start.md +7 -7
  15. package/onboarding/prompts/feature/channels/implement.md +70 -0
  16. package/onboarding/prompts/feature/channels/proof.md +60 -0
  17. package/onboarding/prompts/feature/channels/start.md +90 -0
  18. package/onboarding/prompts/feature/chat-suggestions/implement.md +6 -6
  19. package/onboarding/prompts/feature/chat-suggestions/proof.md +6 -6
  20. package/onboarding/prompts/feature/chat-suggestions/start.md +7 -7
  21. package/onboarding/prompts/feature/complete.md +1 -1
  22. package/onboarding/prompts/feature/learning/implement.md +12 -12
  23. package/onboarding/prompts/feature/learning/proof.md +7 -7
  24. package/onboarding/prompts/feature/learning/start.md +6 -6
  25. package/onboarding/prompts/feature/open-generative-ui/implement.md +6 -6
  26. package/onboarding/prompts/feature/open-generative-ui/proof.md +6 -6
  27. package/onboarding/prompts/feature/open-generative-ui/start.md +7 -7
  28. package/onboarding/prompts/feature/realtime-sync/implement.md +7 -7
  29. package/onboarding/prompts/feature/realtime-sync/proof.md +6 -6
  30. package/onboarding/prompts/feature/realtime-sync/start.md +6 -6
  31. package/onboarding/prompts/feature/rich-threads/implement.md +8 -8
  32. package/onboarding/prompts/feature/rich-threads/proof.md +6 -6
  33. package/onboarding/prompts/feature/rich-threads/start.md +6 -6
  34. package/onboarding/prompts/feature/stop.md +12 -6
  35. package/onboarding/prompts/feature/voice/implement.md +6 -6
  36. package/onboarding/prompts/feature/voice/proof.md +6 -6
  37. package/onboarding/prompts/feature/voice/start.md +7 -7
  38. package/onboarding/prompts/framework/ag2.md +2 -2
  39. package/onboarding/prompts/framework/agno.md +2 -2
  40. package/onboarding/prompts/framework/built-in.md +2 -2
  41. package/onboarding/prompts/framework/claude-sdk-python.md +2 -2
  42. package/onboarding/prompts/framework/claude-sdk-typescript.md +2 -2
  43. package/onboarding/prompts/framework/crewai-flows.md +2 -2
  44. package/onboarding/prompts/framework/deep-agents.md +2 -2
  45. package/onboarding/prompts/framework/google-adk.md +2 -2
  46. package/onboarding/prompts/framework/langgraph-fastapi.md +2 -2
  47. package/onboarding/prompts/framework/langgraph-python.md +2 -2
  48. package/onboarding/prompts/framework/langgraph-typescript.md +2 -2
  49. package/onboarding/prompts/framework/llamaindex.md +2 -2
  50. package/onboarding/prompts/framework/mastra.md +2 -2
  51. package/onboarding/prompts/framework/ms-agent-dotnet.md +2 -2
  52. package/onboarding/prompts/framework/ms-agent-harness-dotnet.md +2 -2
  53. package/onboarding/prompts/framework/ms-agent-python.md +2 -2
  54. package/onboarding/prompts/framework/pydantic-ai.md +2 -2
  55. package/onboarding/prompts/framework/strands-python.md +2 -2
  56. package/onboarding/prompts/framework/strands-typescript.md +2 -2
  57. package/onboarding/prompts/frontend/angular.md +3 -3
  58. package/onboarding/prompts/frontend/nextjs.md +3 -3
  59. package/onboarding/prompts/frontend/plan.md +17 -12
  60. package/onboarding/prompts/frontend/react-native.md +2 -2
  61. package/onboarding/prompts/frontend/react-spa.md +2 -2
  62. package/onboarding/prompts/frontend/vue.md +2 -2
  63. package/onboarding/prompts/implementation/build-and-validate.md +29 -17
  64. package/onboarding/prompts/proof/complete.md +22 -14
  65. package/onboarding/prompts/proof/oss-baseline.md +5 -5
  66. package/onboarding/prompts/proof/round-trip.md +16 -15
  67. package/onboarding/prompts/research/gather.md +18 -4
  68. package/onboarding/prompts/research/route.md +9 -10
  69. package/onboarding/prompts/starter/clone.md +6 -6
  70. package/onboarding/prompts/stopped/run-failed.md +3 -3
  71. package/onboarding/prompts/subagent/create-plan.md +1 -1
  72. package/onboarding/prompts/subagent/prove-oss-baseline.md +1 -1
  73. package/onboarding/prompts/subagent/prove-round-trip.md +32 -15
  74. package/onboarding/prompts/unsupported/no-validated-path.md +4 -4
  75. package/package.json +1 -1
  76. package/release/release-tool.js +1 -1
@@ -37,7 +37,7 @@ selected pair is not in the table, or the directory name is not valid, stop the
37
37
  Do not run `init`. Treat this result as a failed shortcut and follow the final failure
38
38
  instruction in this prompt.
39
39
 
40
- If the developer did not name an Intelligence project, create one for the app being
40
+ If the developer did not name a project, create one for the app being
41
41
  cloned. This directory is new, so no existing project is already its own: take the project
42
42
  name from the target directory name derived above, and ask the developer to confirm it or
43
43
  give another. Do not list the projects in the organization. If no developer answers, use
@@ -46,7 +46,7 @@ the derived name.
46
46
  Only if the developer asks for an existing project, or asks to see the projects they have,
47
47
  read the choices:
48
48
 
49
- `npx --yes copilotkit@4.10.0 project list --json`
49
+ `npx --yes copilotkit@4.11.0 project list --json`
50
50
 
51
51
  Then ask which one to use. Do not order the projects by creation time. If the developer
52
52
  already gave this answer, do not ask again. Do not read a secret value. Do not show or
@@ -56,7 +56,7 @@ Run the command from the parent directory. Do not inspect another entry in the p
56
56
  directory. Replace each placeholder with the recorded value. Do not run a placeholder as
57
57
  a shell argument.
58
58
 
59
- `npx --yes copilotkit@4.10.0 init --name <project-name> --framework <framework-id> --channel none --no-banner --create <name> --install`
59
+ `npx --yes copilotkit@4.11.0 init --name <project-name> --framework <framework-id> --channel none --no-banner --create <name> --install`
60
60
 
61
61
  Pass the confirmed name to both `--name` and `--create`: the app directory and its
62
62
  Intelligence project take the same name here. If the developer names an existing project,
@@ -72,7 +72,7 @@ account. The command does not need terminal input.
72
72
  Report the clone before you inspect anything:
73
73
 
74
74
  ```text
75
- npx --yes copilotkit@4.10.0 onboard checkpoint --phase starter-cloned
75
+ npx --yes copilotkit@4.11.0 onboard checkpoint --phase starter-cloned
76
76
  ```
77
77
 
78
78
  This is its own step, not an aside. A run that clones and then goes quiet is
@@ -82,10 +82,10 @@ separates them.
82
82
  Do not rebuild the starter by hand. Then inspect only the generated
83
83
  paths inside the target directory. Record the files, install result, project connection,
84
84
  and validation commands. Then run
85
- `npx --yes copilotkit@4.10.0 onboard read proof/round-trip`.
85
+ `npx --yes copilotkit@4.11.0 onboard read proof/round-trip`.
86
86
 
87
87
  If the command fails, report its exact error and do not claim that the starter is ready.
88
88
  Then run
89
- `npx --yes copilotkit@4.10.0 onboard read stopped/run-failed`. The starter is one this
89
+ `npx --yes copilotkit@4.11.0 onboard read stopped/run-failed`. The starter is one this
90
90
  graph ships and the stack was chosen from its own supported list, so a command that
91
91
  returned an error is a run that broke, not a setup this release does not support.
@@ -25,11 +25,11 @@ without saying what it left behind leaves the developer to discover it.
25
25
 
26
26
  Stop onboarding without making more repository changes.
27
27
 
28
- Send one short report. Run the friction command without another developer question. The
29
- CLI telemetry gate decides whether the report is sent.
28
+ Send one short report. Run the friction command without another developer question. Do not
29
+ ask the developer about telemetry: the command applies the setting they already have.
30
30
 
31
31
  ```text
32
- npx --yes copilotkit@4.10.0 onboard friction --phase stop --category <slug>
32
+ npx --yes copilotkit@4.11.0 onboard friction --phase stop --category <slug>
33
33
  ```
34
34
 
35
35
  Write one or two sentences to standard input: the step you stopped at and what stopped
@@ -153,7 +153,7 @@ here is work the developer did not ask for.
153
153
  Plan the threads drawer itself: add it from the selected drawer page, where this frontend
154
154
  does not already render one. Where this journey's frontend framework ships no threads
155
155
  drawer -- React Native --, plan that the thread is proved by
156
- `npx --yes copilotkit@4.10.0 verify --round-trip`, which needs no browser. Do not plan a
156
+ `npx --yes copilotkit@4.11.0 verify --round-trip`, which needs no browser. Do not plan a
157
157
  step that opens the managed Intelligence dashboard.
158
158
 
159
159
  ## Order the plan into steps
@@ -19,7 +19,7 @@ Prove the live runtime in this order:
19
19
  4. Confirm from project files that the runtime constructor passes a `runner` option rather
20
20
  than an `intelligence` option. A package, import, project file, or key is not use proof.
21
21
  5. Run
22
- `npx --yes copilotkit@4.10.0 verify --expect-runtime oss --round-trip --agent <expected-agent-id> --json`,
22
+ `npx --yes copilotkit@4.11.0 verify --expect-runtime oss --round-trip --agent <expected-agent-id> --json`,
23
23
  with the runtime URL or auth header options that this project needs. Require exit zero
24
24
  and the JSON `ok` field to be `true`.
25
25
  6. Drive one real request through the existing frontend, CopilotKit runtime, and expected
@@ -135,7 +135,7 @@ IPv6 only, so an IPv4 literal fails against the correct port.
135
135
  ## Step 4 -- Check the wiring
136
136
 
137
137
  With both running, check the wiring in one command before you open a browser:
138
- `npx --yes copilotkit@4.10.0 verify --json`. It reads the port from this project, so a
138
+ `npx --yes copilotkit@4.11.0 verify --json`. It reads the port from this project, so a
139
139
  non-default port needs no flag. The payload reports `runtimeUrl` and `runtimeUrlSource`. A
140
140
  `runtimeUrlSource` of `default` means nothing in the project named a port, so pass
141
141
  `--runtime-url` with the URL from step 1 in that case. Read the individual checks rather than
@@ -150,7 +150,7 @@ used the Intelligence credential. `api_key_authenticates` proves only that the k
150
150
  will not read. `verify` searches upward for the credential and a framework's env loader
151
151
  does not, so a key at the repository root is invisible to an app in a subdirectory. The
152
152
  check names the file to write instead. Write the key there, or run
153
- `npx --yes copilotkit@4.10.0 project select` from the app directory. Do not link,
153
+ `npx --yes copilotkit@4.11.0 project select` from the app directory. Do not link,
154
154
  copy, or symlink the file to work around it, and do not treat the credential as missing:
155
155
  the check above already reported that it exists.
156
156
 
@@ -168,7 +168,7 @@ named no port the CLI can read: keep step 2's URL, and rewrite its host as `loca
168
168
  before you use it.
169
169
 
170
170
  Then run the command once more with the URL you are about to open:
171
- `npx --yes copilotkit@4.10.0 verify --frontend-url <that url> --json`. The
171
+ `npx --yes copilotkit@4.11.0 verify --frontend-url <that url> --json`. The
172
172
  `frontend_assets_served` check asks that server for its page and for one of the page's own
173
173
  assets, on that exact host. A `fail` there means the dev server refuses its own static
174
174
  assets on the host you were about to use, and the check names the URL to use instead. This
@@ -176,7 +176,7 @@ is the cheapest step that can save the most expensive one, so run it before the
176
176
 
177
177
  ## Step 5 -- Prove that the agent runs
178
178
 
179
- Run `npx --yes copilotkit@4.10.0 verify --round-trip --json`. It sends one request through
179
+ Run `npx --yes copilotkit@4.11.0 verify --round-trip --json`. It sends one request through
180
180
  the runtime and reads the answer back from the thread, so it separates an agent that is
181
181
  configured from an agent that works. Use `--agent <id>` when the runtime declares more
182
182
  than one. If it reports `user-not-identified`, this project's `identifyUser` reads a
@@ -189,7 +189,7 @@ Where this run settled a Learning Container, add the flag to the call above rath
189
189
  running a second round trip:
190
190
 
191
191
  ```text
192
- npx --yes copilotkit@4.10.0 verify --round-trip --expect-learning-container <container id> --json
192
+ npx --yes copilotkit@4.11.0 verify --round-trip --expect-learning-container <container id> --json
193
193
  ```
194
194
 
195
195
  The check reads the thread that this run created, so a second round trip proves a second
@@ -285,7 +285,7 @@ For a recorded `both-oss` starting state, this step has no component to render.
285
285
  same request the baseline recorded, require the same kind of user-visible result the
286
286
  baseline produced, and require that the thread for that request is listed in the drawer.
287
287
  Where this journey's frontend framework ships no threads drawer -- React Native --, prove
288
- that thread with `npx --yes copilotkit@4.10.0 verify --round-trip`, which reads the
288
+ that thread with `npx --yes copilotkit@4.11.0 verify --round-trip`, which reads the
289
289
  answer back off the thread and needs no browser. Record which of the two you proved.
290
290
 
291
291
  Use the surface control the main coding agent recorded for your environment. It either had
@@ -313,7 +313,7 @@ request never exercises. Drive it with the browser control step 6 named.
313
313
  the page to finish loading. Do not retype the host, and do not substitute a URL a tool
314
314
  offers you by default. Where the page loads but its styling is missing or the chat
315
315
  control is dead, run
316
- `npx --yes copilotkit@4.10.0 verify --frontend-url <the url you opened> --json`
316
+ `npx --yes copilotkit@4.11.0 verify --frontend-url <the url you opened> --json`
317
317
  before you diagnose anything else. A dev server can serve its page and refuse every
318
318
  static chunk behind it, and on screen that is indistinguishable from a broken
319
319
  integration. The `frontend_assets_served` check tells the two apart.
@@ -337,8 +337,9 @@ request never exercises. Drive it with the browser control step 6 named.
337
337
  9. Record one line for the finished turn: the time, the page URL, the element you read
338
338
  the answer from, and what that element showed.
339
339
 
340
- Report exactly one of `performed`, `skipped-no-browser-tool`, or `failed` for a web
341
- frontend.
340
+ Report exactly one of `performed`, `skipped-no-browser-tool`, `skipped-cloned-starter`, or
341
+ `failed` for a web frontend. Report `skipped-cloned-starter` when this prompt told you to
342
+ open no browser because the run cloned a starter.
342
343
 
343
344
  ### Step 6b -- React Native
344
345
 
@@ -363,7 +364,8 @@ An Android emulator reaches a runtime on the host machine at `10.0.2.2` rather t
363
364
  `localhost`. A request that fails against the runtime with nothing in the runtime's own
364
365
  log is that, rather than a broken runtime.
365
366
 
366
- Report exactly one of `performed`, `skipped-no-device`, or `failed` for React Native.
367
+ Report exactly one of `performed`, `skipped-no-device`, `skipped-cloned-starter`, or
368
+ `failed` for React Native.
367
369
 
368
370
  ## Step 7 -- Check the answer against the project's data
369
371
 
@@ -412,7 +414,7 @@ it, rather than reading the compatibility field as a pass.
412
414
  For every other starting state, record Step 8 as not applicable.
413
415
 
414
416
  The application edit ban ends only after Step 8 passes or is recorded as not applicable.
415
- Step 9 can write only the tool files named by its guide.
417
+ Step 9 can write only the tool files named by its guide or by this step.
416
418
 
417
419
  ## Step 9 -- Set up the continued-development tools
418
420
 
@@ -423,12 +425,27 @@ Tell the developer what the skills install writes into this project before you r
423
425
  `.agents/skills` directory holding one folder per CopilotKit skill, linked into
424
426
  `.claude/skills`. Both sit in the working tree, so the install shows up in `git status`
425
427
  and can land in a commit. You cannot know whether this project keeps those directories in
426
- version control, so name them before you write them rather than after.
428
+ version control, so name them before you write them rather than after. Say the same
429
+ thing about the MCP registration below where it writes `.mcp.json`: that file lands in the
430
+ working tree beside them, for the same reason and with the same consequence.
427
431
 
428
432
  Use it to install the project-scoped CopilotKit Skills.
429
- Use it to configure the CopilotKit documentation MCP server for the current coding agent.
430
- That registration goes in the coding agent's own configuration for this project, not in
431
- the working tree.
433
+ Use it to configure the CopilotKit documentation MCP server for the coding-agent slug this
434
+ run reported to `onboard identify`.
435
+
436
+ Register it in this project wherever that agent reads a project-scoped file. For
437
+ `claude-code` that is `claude mcp add --scope project`, which writes `.mcp.json` at the
438
+ project root. Without that flag the command writes the agent's own configuration under the
439
+ developer's home directory, outside this project, so pass it even where the command line
440
+ you were given leaves it out. For `github-copilot` the project-scoped file is
441
+ `.vscode/mcp.json`, and for `cursor` it is the project `mcp.json`.
442
+
443
+ Where the agent reads no project-scoped file at all, do not run the registration. `codex`
444
+ and `windsurf` write only under the home directory, and the desktop and web clients
445
+ register through a settings screen this run cannot reach. Print the exact command or
446
+ setting the guide gives for that agent, and tell the developer it is theirs to run. Record
447
+ that as handed over rather than as failed: nothing went wrong, and this run is not allowed
448
+ to edit configuration outside the project.
432
449
 
433
450
  Check whether each install succeeded and record what you found. Record the command result
434
451
  for each attempt. Report the Skills result and the MCP result separately from the proof
@@ -30,13 +30,13 @@ Before you show the best-effort plan, require this complete packet:
30
30
  - Give the ordered proof rules.
31
31
 
32
32
  After the developer approves the best-effort plan, run
33
- `npx --yes copilotkit@4.10.0 onboard read fallback/best-effort`.
33
+ `npx --yes copilotkit@4.11.0 onboard read fallback/best-effort`.
34
34
 
35
- Send one short report. Run the friction command without another developer question. The
36
- CLI telemetry gate decides whether the report is sent.
35
+ Send one short report. Run the friction command without another developer question. Do not
36
+ ask the developer about telemetry: the command applies the setting they already have.
37
37
 
38
38
  ```text
39
- npx --yes copilotkit@4.10.0 onboard friction --phase stop --category <slug>
39
+ npx --yes copilotkit@4.11.0 onboard friction --phase stop --category <slug>
40
40
  ```
41
41
 
42
42
  Write one or two sentences to standard input: 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.10.0",
3
+ "version": "4.11.0",
4
4
  "type": "module",
5
5
  "repository": {
6
6
  "type": "git",
@@ -14698,7 +14698,7 @@ import * as path4 from "node:path";
14698
14698
 
14699
14699
  // apps/cli/src/config.ts
14700
14700
  function getTemplateRef() {
14701
- return true ? "ce490419d046abe697438b070a99ad5d674365cc" : "main";
14701
+ return true ? "dc1238c0bd473e259c992b85026cb30fe6b3b726" : "main";
14702
14702
  }
14703
14703
 
14704
14704
  // apps/cli/src/services/agentcore-config.ts