copilotkit 4.21.0 → 4.22.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 (81) hide show
  1. package/README.md +29 -6
  2. package/cli-build-info.json +8 -8
  3. package/index.js +4558 -3358
  4. package/onboarding/index.json +10 -1
  5. package/onboarding/prompts/authenticate/start.md +11 -17
  6. package/onboarding/prompts/conversion/plan.md +3 -3
  7. package/onboarding/prompts/credentials/finalize-plan.md +7 -7
  8. package/onboarding/prompts/credentials/plan.md +36 -25
  9. package/onboarding/prompts/credentials/settle-credentials.md +3 -3
  10. package/onboarding/prompts/credentials/write-plan.md +10 -18
  11. package/onboarding/prompts/fallback/best-effort.md +8 -8
  12. package/onboarding/prompts/feature/a2ui/implement.md +6 -6
  13. package/onboarding/prompts/feature/a2ui/proof.md +5 -5
  14. package/onboarding/prompts/feature/a2ui/start.md +9 -9
  15. package/onboarding/prompts/feature/channels/implement.md +7 -7
  16. package/onboarding/prompts/feature/channels/proof.md +5 -5
  17. package/onboarding/prompts/feature/channels/start.md +9 -9
  18. package/onboarding/prompts/feature/chat-suggestions/implement.md +6 -6
  19. package/onboarding/prompts/feature/chat-suggestions/proof.md +5 -5
  20. package/onboarding/prompts/feature/chat-suggestions/start.md +9 -9
  21. package/onboarding/prompts/feature/complete.md +2 -2
  22. package/onboarding/prompts/feature/learning/implement.md +13 -13
  23. package/onboarding/prompts/feature/learning/proof.md +6 -6
  24. package/onboarding/prompts/feature/learning/start.md +9 -9
  25. package/onboarding/prompts/feature/open-generative-ui/implement.md +6 -6
  26. package/onboarding/prompts/feature/open-generative-ui/proof.md +5 -5
  27. package/onboarding/prompts/feature/open-generative-ui/start.md +9 -9
  28. package/onboarding/prompts/feature/realtime-sync/implement.md +7 -7
  29. package/onboarding/prompts/feature/realtime-sync/proof.md +5 -5
  30. package/onboarding/prompts/feature/realtime-sync/start.md +8 -8
  31. package/onboarding/prompts/feature/rich-threads/implement.md +8 -8
  32. package/onboarding/prompts/feature/rich-threads/proof.md +5 -5
  33. package/onboarding/prompts/feature/rich-threads/start.md +8 -8
  34. package/onboarding/prompts/feature/stop.md +3 -3
  35. package/onboarding/prompts/feature/voice/implement.md +6 -6
  36. package/onboarding/prompts/feature/voice/proof.md +5 -5
  37. package/onboarding/prompts/feature/voice/start.md +9 -9
  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/custom-ag-ui.md +98 -0
  45. package/onboarding/prompts/framework/deep-agents.md +2 -2
  46. package/onboarding/prompts/framework/google-adk.md +2 -2
  47. package/onboarding/prompts/framework/langgraph-fastapi.md +2 -2
  48. package/onboarding/prompts/framework/langgraph-python.md +2 -2
  49. package/onboarding/prompts/framework/langgraph-typescript.md +2 -2
  50. package/onboarding/prompts/framework/llamaindex.md +2 -2
  51. package/onboarding/prompts/framework/mastra.md +2 -2
  52. package/onboarding/prompts/framework/ms-agent-dotnet.md +3 -3
  53. package/onboarding/prompts/framework/ms-agent-harness-dotnet.md +3 -3
  54. package/onboarding/prompts/framework/ms-agent-python.md +2 -2
  55. package/onboarding/prompts/framework/pydantic-ai.md +2 -2
  56. package/onboarding/prompts/framework/strands-python.md +2 -2
  57. package/onboarding/prompts/framework/strands-typescript.md +2 -2
  58. package/onboarding/prompts/frontend/angular.md +10 -21
  59. package/onboarding/prompts/frontend/nextjs.md +3 -3
  60. package/onboarding/prompts/frontend/plan.md +7 -7
  61. package/onboarding/prompts/frontend/react-native.md +2 -2
  62. package/onboarding/prompts/frontend/react-spa.md +2 -2
  63. package/onboarding/prompts/frontend/vue.md +2 -2
  64. package/onboarding/prompts/implementation/build-and-validate.md +12 -12
  65. package/onboarding/prompts/proof/complete.md +3 -3
  66. package/onboarding/prompts/proof/oss-baseline.md +5 -5
  67. package/onboarding/prompts/proof/round-trip.md +10 -10
  68. package/onboarding/prompts/research/gather.md +5 -5
  69. package/onboarding/prompts/research/merge.md +2 -2
  70. package/onboarding/prompts/research/preflight.md +2 -2
  71. package/onboarding/prompts/research/route.md +9 -9
  72. package/onboarding/prompts/starter/clone.md +15 -14
  73. package/onboarding/prompts/stopped/run-failed.md +2 -2
  74. package/onboarding/prompts/subagent/create-plan.md +26 -40
  75. package/onboarding/prompts/subagent/implement-and-validate.md +26 -38
  76. package/onboarding/prompts/subagent/inspect-repository.md +4 -1
  77. package/onboarding/prompts/subagent/prove-oss-baseline.md +1 -1
  78. package/onboarding/prompts/subagent/prove-round-trip.md +86 -244
  79. package/onboarding/prompts/unsupported/no-validated-path.md +2 -2
  80. package/package.json +1 -1
  81. package/release/release-tool.js +1 -1
@@ -0,0 +1,98 @@
1
+ # Connect an existing AG-UI agent
2
+
3
+ This route is for an agent that the project already has, that speaks AG-UI, and that is
4
+ none of the listed frameworks. For example, an `AbstractAgent` subclass that the project
5
+ wrote, or a service that streams AG-UI events through AG-UI middleware.
6
+
7
+ Do not port the agent to a listed framework. Do not rewrite its tools, model, or prompts.
8
+ Preserve its model setup and the credential variable names that the repository already
9
+ uses. This route has no default vendor.
10
+
11
+ The research findings must prove that the agent speaks AG-UI. Either of these is proof:
12
+
13
+ - a class that extends `AbstractAgent` from `@ag-ui/client` and implements `run`,
14
+ - an endpoint that the project serves and that streams AG-UI events.
15
+
16
+ A package that names AG-UI is not proof. If the findings prove neither, run the
17
+ unsupported route below.
18
+
19
+ ## Documentation
20
+
21
+ - https://docs.copilotkit.ai/backend/copilot-runtime.md
22
+ - https://docs.copilotkit.ai/backend/ag-ui.md
23
+ - https://docs.copilotkit.ai/quickstart.md
24
+ - https://docs.copilotkit.ai/inspector.md
25
+ - https://docs.copilotkit.ai/agent-app-context.md
26
+ - https://docs.copilotkit.ai/generative-ui/tool-based.md
27
+
28
+ These pages use the root documentation scope. Do not add a framework path segment to
29
+ their URLs. Use the tool-based generative UI page for this route.
30
+
31
+ ## Connect the agent
32
+
33
+ Register the agent in the `agents` map of the Copilot Runtime from
34
+ `@copilotkit/runtime/v2`. The key in that map is the agent id that the frontend asks for.
35
+
36
+ - Register an `AbstractAgent` subclass that runs in the runtime process directly. Pass an
37
+ instance of the project's own class.
38
+ - Connect an agent that runs as its own service with `HttpAgent` from `@ag-ui/client`. Its
39
+ `url` is the service's own AG-UI endpoint, not the runtime's `/api/copilotkit` path.
40
+
41
+ Do not use `selfManagedAgents` or `agents__unsafe_dev_only`. Those provider options send
42
+ requests past the runtime, so the Intelligence features that this run adds never reach
43
+ the agent.
44
+
45
+ ## Match the AG-UI client version
46
+
47
+ `@copilotkit/runtime` depends on one exact `@ag-ui/client` version. Read that version
48
+ from the `package.json` of the installed `@copilotkit/runtime`. The npm `latest` tag of
49
+ `@ag-ui/client` can be a different version.
50
+
51
+ An `AbstractAgent` subclass built on another version is a different class to TypeScript.
52
+ `AbstractAgent` has private members, so the `agents` map rejects the subclass with
53
+ `Types have separate declarations of a private property`. Import `HttpAgent` from the
54
+ same version for the same reason.
55
+
56
+ If the project's `@ag-ui/client` version is not the runtime's version, name both versions
57
+ in the plan. The agent depends on its own version, so ask the developer before you change
58
+ it.
59
+
60
+ ## Keep the agent working on a clone
61
+
62
+ The runtime clones the registered agent for every request. `AbstractAgent.clone()`
63
+ copies only the fields that `AbstractAgent` itself declares. A subclass that sets its
64
+ own fields in its constructor, such as a model client or a configuration object, loses
65
+ them on the clone. Its `run` then fails on the first request. `HttpAgent` copies its own
66
+ fields, so this applies only to a subclass.
67
+
68
+ Read the subclass before you plan. If `run` reads a field that the subclass sets, and
69
+ the subclass does not override `clone()`, the plan adds an override. The override calls
70
+ `super.clone()` and copies those fields. This is the only change that this route makes to
71
+ the agent's code. Name it in the plan.
72
+
73
+ ## Project data
74
+
75
+ The agent receives `useAgentContext` entries on the AG-UI run input, in its `context`
76
+ field. No page documents how a custom agent gives them to its model, because that is the
77
+ agent's own code. If the requested work passes project data to the agent, and the
78
+ agent's code does not already read `context`, run the unsupported route below. Otherwise,
79
+ record the gap and continue.
80
+
81
+ A2UI is not on this path. If the developer asks for it, say first that no page documents
82
+ A2UI for a custom agent.
83
+
84
+ ## Record the selection
85
+
86
+ The Copilot Runtime that this route adds runs on Node. The agent keeps running the way
87
+ the project runs it now.
88
+
89
+ Record the selected framework `custom-ag-ui` and the agent id. Record how the agent
90
+ connects: in the runtime process, or through `HttpAgent` and its URL. Record the
91
+ credential variable names that the agent already uses, the `clone()` finding, and these
92
+ URLs.
93
+
94
+ If the pages support the selection, run
95
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
96
+
97
+ If the documentation does not support the selection, run
98
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -33,7 +33,7 @@ Record the selected framework, language, vendor, model, required credential vari
33
33
  names, these URLs, and each documentation gap.
34
34
 
35
35
  If the pages support the selection, run
36
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/plan`.
36
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
37
37
 
38
38
  If the documentation does not support the selection, run
39
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
39
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -30,7 +30,7 @@ Record the selected framework, vendor, model, required credential variable names
30
30
  these URLs.
31
31
 
32
32
  If the pages support the selection, run
33
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/plan`.
33
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
34
34
 
35
35
  If the documentation does not support the selection, run
36
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
36
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -25,7 +25,7 @@ Record the selected framework, vendor, model, required credential variable names
25
25
  these URLs.
26
26
 
27
27
  If the pages support the selection, run
28
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/plan`.
28
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
29
29
 
30
30
  If the documentation does not support the selection, run
31
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
31
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -19,7 +19,7 @@ Record the selected framework, vendor, model, required credential variable names
19
19
  these URLs.
20
20
 
21
21
  If the pages support the selection, run
22
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/plan`.
22
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
23
23
 
24
24
  If the documentation does not support the selection, run
25
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
25
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -19,7 +19,7 @@ Record the selected framework, vendor, model, required credential variable names
19
19
  these URLs.
20
20
 
21
21
  If the pages support the selection, run
22
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/plan`.
22
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
23
23
 
24
24
  If the documentation does not support the selection, run
25
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
25
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -34,7 +34,7 @@ Record the selected framework, vendor, model, required credential variable names
34
34
  URLs, the documented dependencies and adapter, and both documentation limits.
35
35
 
36
36
  If the pages support the selection, run
37
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/plan`.
37
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
38
38
 
39
39
  If the documentation does not support the selection, run
40
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
40
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -47,7 +47,7 @@ Record the selected framework, vendor, model, required credential variable names
47
47
  these URLs.
48
48
 
49
49
  If the pages support the selection, run
50
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/plan`.
50
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
51
51
 
52
52
  If the documentation does not support the selection, run
53
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
53
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -15,7 +15,7 @@ Run `dotnet --version` before you change the project. If it fails, no .NET SDK i
15
15
  shell's PATH. Do not change the project, and do not install the SDK yourself. Tell the
16
16
  developer to install the .NET SDK from https://dotnet.microsoft.com/download. Say that the
17
17
  coding agent's shell cannot see a new install until the developer restarts the coding
18
- agent. Give them `npx --prefer-offline --yes copilotkit@4.21.0 onboard start --run <onboarding_run_id>`
18
+ agent. Give them `npx --prefer-offline --yes copilotkit@4.22.0 onboard start --run <onboarding_run_id>`
19
19
  to resume the run after the restart. Then end your turn and wait for the developer.
20
20
 
21
21
  ## Documentation
@@ -41,7 +41,7 @@ Record the selected framework, provider, model, required credential variable nam
41
41
  these URLs.
42
42
 
43
43
  If the pages support the selection, run
44
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/plan`.
44
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
45
45
 
46
46
  If the documentation does not support the selection, run
47
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
47
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -9,7 +9,7 @@ you change the project. If it fails, no .NET SDK is on this shell's PATH. Do not
9
9
  the project, and do not install the SDK yourself. Tell the developer to install the .NET
10
10
  SDK from https://dotnet.microsoft.com/download. Say that the coding agent's shell cannot
11
11
  see a new install until the developer restarts the coding agent. Give them
12
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard start --run <onboarding_run_id>` to resume the run
12
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard start --run <onboarding_run_id>` to resume the run
13
13
  after the restart. Then end your turn and wait for the developer.
14
14
 
15
15
  ## Documentation
@@ -49,7 +49,7 @@ Record the selected framework, provider, model, required credential variable nam
49
49
  URLs, and the quickstart gap.
50
50
 
51
51
  If the pages support the selection, run
52
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/plan`.
52
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
53
53
 
54
54
  If the documentation does not support the selection, run
55
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
55
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -30,7 +30,7 @@ Record the selected framework, vendor, model, required credential variable names
30
30
  these URLs.
31
31
 
32
32
  If the pages support the selection, run
33
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/plan`.
33
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
34
34
 
35
35
  If the documentation does not support the selection, run
36
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
36
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -43,7 +43,7 @@ Record the selected framework, vendor, model, required credential variable names
43
43
  URLs, and the two-step context route.
44
44
 
45
45
  If the pages support the selection, run
46
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/plan`.
46
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
47
47
 
48
48
  If the documentation does not support the selection, run
49
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
49
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -29,7 +29,7 @@ Record the selected framework, vendor, model, required credential variable names
29
29
  URLs, and the context documentation gap.
30
30
 
31
31
  If the pages support the selection, run
32
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/plan`.
32
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
33
33
 
34
34
  If the documentation does not support the selection, run
35
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
35
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -30,7 +30,7 @@ Record the selected framework, vendor, model, required credential variable names
30
30
  URLs, and the context documentation gap.
31
31
 
32
32
  If the pages support the selection, run
33
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/plan`.
33
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/plan`.
34
34
 
35
35
  If the documentation does not support the selection, run
36
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
36
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -5,7 +5,7 @@ Preserve an existing Angular frontend. Use the selected page for a new frontend.
5
5
  Use the starter shortcut only if all these facts are true: the target directory holds no
6
6
  project, its name is a valid `init` project name, and the selected framework is ADK.
7
7
  If all three facts are true, record Angular as the selected frontend. Then run
8
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read starter/clone` before you fetch documentation.
8
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read starter/clone` before you fetch documentation.
9
9
 
10
10
  ## Documentation
11
11
 
@@ -35,26 +35,15 @@ thread as the tool's result.
35
35
  `@copilotkit/angular` publishes on a `0.x` line of its own. Every other `@copilotkit/*`
36
36
  package publishes on the `1.x` line. Never move either onto the other's line.
37
37
 
38
- The two lines are released separately, so a published `@copilotkit/angular` declares a
39
- `@copilotkit/core` chosen when that Angular release was cut, not when this run happens.
40
- Read that declaration before you plan any dependency change:
38
+ A published `@copilotkit/angular` declares the `@copilotkit/core` chosen when that Angular
39
+ release was cut. `onboard upgrade-plan` reads that declaration from the registry. When it
40
+ excludes the version the floor requires, the command answers `blocked` and names both
41
+ versions. Installing both gives two copies of `@copilotkit/core`, and the threads drawer
42
+ then throws in the browser while every command-line check passes.
41
43
 
42
- ```text
43
- npm view @copilotkit/angular@latest dependencies
44
- ```
45
-
46
- If the `@copilotkit/core` it declares cannot be satisfied by the version the floor
47
- requires, the two published packages do not fit together. Installing both resolves two
48
- copies of `@copilotkit/core`, the Angular package's calls land on the copy that does not
49
- export what they need, and the threads drawer and the Inspector threads view throw in the
50
- browser while every command-line check passes.
51
-
52
- That is a version-line mismatch. Report it naming both versions -- the `@copilotkit/core`
53
- the Angular package declares, and the one the floor requires -- and take the unsupported
44
+ That is a version-line mismatch. Report it naming both versions, and take the unsupported
54
45
  route at the end of this page. Do not add an `overrides`, `resolutions`, or
55
- `pnpm.overrides` block to force them together. That is a repair the developer did not
56
- approve, it silently pins their whole tree, and it hides a mismatch between two packages
57
- CopilotKit publishes rather than reporting it.
46
+ `pnpm.overrides` block to force them together.
58
47
 
59
48
  ## Node
60
49
 
@@ -63,7 +52,7 @@ you create or build an Angular project. If the installed version is lower, selec
63
52
  supported version first and use it for every later command in this project.
64
53
 
65
54
  If the pages support the selection, record Angular and these URLs. Then run
66
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read credentials/finalize-plan`.
55
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read credentials/finalize-plan`.
67
56
 
68
57
  If the documentation does not support the selection, or the two version lines do not fit
69
- together, run `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
58
+ together, run `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -15,7 +15,7 @@ These TypeScript options have starters: Claude Agent SDK TypeScript, LangGraph T
15
15
  Mastra, and Strands Agents TypeScript. The .NET option is Microsoft Agent Framework .NET.
16
16
 
17
17
  If all shortcut conditions are true, record Next.js as the selected frontend. Then run
18
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read starter/clone` before you fetch documentation.
18
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read starter/clone` before you fetch documentation.
19
19
 
20
20
  ## Documentation
21
21
 
@@ -40,7 +40,7 @@ developer's work.
40
40
  - Do not claim, revert, or delete these files. Name them in the report as Next.js output.
41
41
 
42
42
  If the page supports the selection, record Next.js and this URL. Then run
43
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read credentials/finalize-plan`.
43
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read credentials/finalize-plan`.
44
44
 
45
45
  If the documentation does not support the selection, run
46
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
46
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -37,15 +37,15 @@ CopilotKit web apps. Then recommend the one the developer names, and say what ea
37
37
 
38
38
  Use exactly one matching internal route:
39
39
 
40
- 1. React SPA: `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/react-spa`
41
- 2. Next.js: `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/nextjs`
42
- 3. Angular: `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/angular`
43
- 4. Vue 3: `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/vue`
44
- 5. React Native: `npx --prefer-offline --yes copilotkit@4.21.0 onboard read frontend/react-native`
45
- 6. Slack or Microsoft Teams: `npx --prefer-offline --yes copilotkit@4.21.0 onboard read feature/channels/start`
40
+ 1. React SPA: `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/react-spa`
41
+ 2. Next.js: `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/nextjs`
42
+ 3. Angular: `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/angular`
43
+ 4. Vue 3: `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/vue`
44
+ 5. React Native: `npx --prefer-offline --yes copilotkit@4.22.0 onboard read frontend/react-native`
45
+ 6. Slack or Microsoft Teams: `npx --prefer-offline --yes copilotkit@4.22.0 onboard read feature/channels/start`
46
46
 
47
47
  If they chose Slack or Microsoft Teams, tell that node which one they chose so it
48
48
  does not ask again.
49
49
 
50
50
  If no listed frontend fits, run
51
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
51
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -18,7 +18,7 @@ documents `useRenderTool`, which is React Native's own hook for drawing a tool t
18
18
  already has. That is a different job and needs a tool in the agent.
19
19
 
20
20
  If the pages support the selection, record React Native and these URLs. Then run
21
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read credentials/finalize-plan`.
21
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read credentials/finalize-plan`.
22
22
 
23
23
  If the documentation does not support the selection, run
24
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
24
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -14,7 +14,7 @@ not move the agent into it.
14
14
  - https://docs.copilotkit.ai/react-spa.md
15
15
 
16
16
  If the page supports the selection, record React SPA and this URL. Then run
17
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read credentials/finalize-plan`.
17
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read credentials/finalize-plan`.
18
18
 
19
19
  If the documentation does not support the selection, run
20
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
20
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -19,7 +19,7 @@ page above. Vue has its own `useComponent`, which is not the React package. Take
19
19
  that reference page rather than from a Vue generative-UI guide, which is not published.
20
20
 
21
21
  If the pages support the selection, record Vue 3 and these URLs. Then run
22
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read credentials/finalize-plan`.
22
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read credentials/finalize-plan`.
23
23
 
24
24
  If the documentation does not support the selection, run
25
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
25
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -12,7 +12,7 @@ acted on. Send one short report before you stop. The friction command follows th
12
12
  setting the developer already chose, so it needs no separate question.
13
13
 
14
14
  ```text
15
- npx --prefer-offline --yes copilotkit@4.21.0 onboard friction --phase stop --category <slug> --message "<sentences>"
15
+ npx --prefer-offline --yes copilotkit@4.22.0 onboard friction --phase stop --category <slug> --message "<sentences>"
16
16
  ```
17
17
 
18
18
  `--message` takes one or two sentences: the step you stopped at and what stopped it.
@@ -67,7 +67,7 @@ Approving the plan is the developer agreeing to every path it listed under
67
67
  app directory:
68
68
 
69
69
  ```text
70
- npx --prefer-offline --yes copilotkit@4.21.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>"
70
+ npx --prefer-offline --yes copilotkit@4.22.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>"
71
71
  ```
72
72
 
73
73
  Consent has to be on the record before the file moves, so a call made after the change is
@@ -99,7 +99,7 @@ No implementation step has run yet, so the change is theirs rather than this run
99
99
  consent over it by adding one flag:
100
100
 
101
101
  ```text
102
- npx --prefer-offline --yes copilotkit@4.21.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>" --with-prior-change
102
+ npx --prefer-offline --yes copilotkit@4.22.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>" --with-prior-change
103
103
  ```
104
104
 
105
105
  The flag records their change as drift beside the consent, so the closing report names both
@@ -119,7 +119,7 @@ audit below describes, rather than use this section.
119
119
  Run the audit from the target app directory:
120
120
 
121
121
  ```text
122
- npx --prefer-offline --yes copilotkit@4.21.0 onboard audit
122
+ npx --prefer-offline --yes copilotkit@4.22.0 onboard audit
123
123
  ```
124
124
 
125
125
  It compares every protected path with the digest the CLI captured for it. Its result starts
@@ -154,14 +154,14 @@ A path that no Files changed section names changed outside the run, and it is th
154
154
  developer's own file. Accept it by name:
155
155
 
156
156
  ```text
157
- npx --prefer-offline --yes copilotkit@4.21.0 onboard protect --accept-external --path <path>
157
+ npx --prefer-offline --yes copilotkit@4.22.0 onboard protect --accept-external --path <path>
158
158
  ```
159
159
 
160
160
  A changed env file is its own case. This run asked the developer to place a credential
161
161
  there, so it takes the credential route rather than this one:
162
162
 
163
163
  ```text
164
- npx --prefer-offline --yes copilotkit@4.21.0 onboard protect --accept-credential --path <path>
164
+ npx --prefer-offline --yes copilotkit@4.22.0 onboard protect --accept-credential --path <path>
165
165
  ```
166
166
 
167
167
  That route proves no recorded credential was lost, instead of taking the run's word that it
@@ -180,7 +180,7 @@ neither does a one-line fix. Never repair, reset, or revert it. Ask the develope
180
180
  the change, and record the answer they give:
181
181
 
182
182
  ```text
183
- npx --prefer-offline --yes copilotkit@4.21.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
183
+ npx --prefer-offline --yes copilotkit@4.22.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
184
184
  ```
185
185
 
186
186
  Use it only for an answer a developer actually gave. It records the consent as taken
@@ -215,7 +215,7 @@ directory. The developer approved the id before it was made, so this is the firs
215
215
  which it can be created:
216
216
 
217
217
  ```text
218
- npx --prefer-offline --yes copilotkit@4.21.0 learning containers create --id <id> --name <name> --json
218
+ npx --prefer-offline --yes copilotkit@4.22.0 learning containers create --id <id> --name <name> --json
219
219
  ```
220
220
 
221
221
  Pass the id the plan names. Take the name from the selected project's own display name, so
@@ -232,7 +232,7 @@ plan names no container, skip this section.
232
232
  ## Implement the plan
233
233
 
234
234
  Spawn one implementation subagent. Tell it to run
235
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read subagent/implement-and-validate` first and follow
235
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read subagent/implement-and-validate` first and follow
236
236
  the prompt it returns. If that read fails because the subagent cannot use the shell, stop that
237
237
  subagent. Run the same command yourself, then spawn a fresh subagent with the returned prompt
238
238
  and the same handoff. Give it the plan, selected framework, frontend, model, exact target app
@@ -259,7 +259,7 @@ names the same way as above, against the Files changed section that subagent jus
259
259
  returned. Continue to proof only when that audit passes.
260
260
 
261
261
  Then run
262
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read proof/round-trip`.
262
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read proof/round-trip`.
263
263
 
264
264
  ## Repair rules
265
265
 
@@ -285,9 +285,9 @@ the same command still fails after three repair attempts, a result starts with
285
285
  declined a file the plan does not name, or the run cannot ask them about it. A defect in a
286
286
  package this run installed is not a stack CopilotKit does not serve, a command this run cannot get to pass is not one either, and a blocked audit
287
287
  proved nothing about the stack. In those cases run
288
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read stopped/run-failed`.
288
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read stopped/run-failed`.
289
289
 
290
290
  A plan with no path to follow takes the unsupported ending: the fix requires changing the
291
291
  developer's existing agent or frontend, or the documentation does not support the plan. In
292
292
  those cases run
293
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read unsupported/no-validated-path`.
293
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read unsupported/no-validated-path`.
@@ -24,7 +24,7 @@ friction commands follow the telemetry setting the developer already chose, so t
24
24
  separate question.
25
25
 
26
26
  ```text
27
- npx --prefer-offline --yes copilotkit@4.21.0 onboard friction --category <slug> --cost-seconds <seconds> --message "<sentences>"
27
+ npx --prefer-offline --yes copilotkit@4.22.0 onboard friction --category <slug> --cost-seconds <seconds> --message "<sentences>"
28
28
  ```
29
29
 
30
30
  Put one or two sentences in `--message`. Pick one category from docs-missing, docs-wrong,
@@ -46,7 +46,7 @@ Pass the surface-check outcome the proof subagent returned, not the one you want
46
46
  web frontend, pass `--visual-check` and the URL the browser opened, unchanged:
47
47
 
48
48
  ```text
49
- npx --prefer-offline --yes copilotkit@4.21.0 onboard complete --visual-check <outcome> \
49
+ npx --prefer-offline --yes copilotkit@4.22.0 onboard complete --visual-check <outcome> \
50
50
  --frontend-url <the url you opened>
51
51
  ```
52
52
 
@@ -74,7 +74,7 @@ this graph opens.
74
74
  nothing drove the frontend:
75
75
 
76
76
  ```text
77
- npx --prefer-offline --yes copilotkit@4.21.0 onboard complete --visual-check failed --blocked-by browser-control-unresponsive
77
+ npx --prefer-offline --yes copilotkit@4.22.0 onboard complete --visual-check failed --blocked-by browser-control-unresponsive
78
78
  ```
79
79
 
80
80
  ## Write the handoff
@@ -1,7 +1,7 @@
1
1
  # Prove the existing OSS baseline
2
2
 
3
3
  Do not prove the baseline yourself. Spawn one proof subagent. Tell it to run
4
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read subagent/prove-oss-baseline` first and follow the
4
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read subagent/prove-oss-baseline` first and follow the
5
5
  prompt it returns. If that read fails because the subagent cannot use the shell, stop that
6
6
  subagent. Run the same command yourself, then spawn a fresh subagent with the returned prompt
7
7
  and the same handoff. Give it the repository findings and exact CLI package spec.
@@ -17,7 +17,7 @@ Wait for the subagent to finish.
17
17
  Record what that proof returned before you route on it:
18
18
 
19
19
  ```text
20
- npx --prefer-offline --yes copilotkit@4.21.0 onboard proof --step oss-baseline --outcome <passed|failed|skipped> [--predicate <1-6>]
20
+ npx --prefer-offline --yes copilotkit@4.22.0 onboard proof --step oss-baseline --outcome <passed|failed|skipped> [--predicate <1-6>]
21
21
  ```
22
22
 
23
23
  Report the gate whatever it returned. Use the list below. A proof that never ran is `skipped`, not failed. The command prints one line and sends
@@ -39,12 +39,12 @@ Do not change project files before this proof ends. Starting existing developmen
39
39
  processes and their ignored runtime files is allowed.
40
40
 
41
41
  If the subagent proves the `both-oss` predicate, keep its evidence with the plan and run
42
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read conversion/plan`. That project already works.
42
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read conversion/plan`. That project already works.
43
43
  What it needs is the conversion, not a build.
44
44
 
45
45
  If the proof does not establish the baseline, record the starting state
46
46
  `both-copilotkit-unproved` and run
47
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read credentials/plan`. This prompt is served
47
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read credentials/plan`. This prompt is served
48
48
  whenever a project looks like an OSS integration, so a baseline that did not prove is an
49
49
  ordinary starting state rather than a failure. Keep the failing predicate with the plan.
50
50
 
@@ -58,5 +58,5 @@ and the plan preserves it rather than repeating it.
58
58
 
59
59
  If it cannot identify the running process safely, exposes a secret, or finds a baseline
60
60
  failure that cannot be classified, run
61
- `npx --prefer-offline --yes copilotkit@4.21.0 onboard read stopped/run-failed`. None of those mean the
61
+ `npx --prefer-offline --yes copilotkit@4.22.0 onboard read stopped/run-failed`. None of those mean the
62
62
  project is unsupported: they mean this run did not establish what it needed to.