copilotkit 4.12.0 → 4.13.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 (80) hide show
  1. package/README.md +10 -0
  2. package/cli-build-info.json +8 -8
  3. package/index.js +1015 -123
  4. package/onboarding/index.json +20 -2
  5. package/onboarding/prompts/authenticate/start.md +38 -33
  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 +26 -20
  9. package/onboarding/prompts/credentials/settle-credentials.md +8 -8
  10. package/onboarding/prompts/credentials/write-plan.md +19 -6
  11. package/onboarding/prompts/fallback/best-effort.md +6 -6
  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 +67 -12
  16. package/onboarding/prompts/feature/channels/proof.md +13 -6
  17. package/onboarding/prompts/feature/channels/start.md +27 -10
  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 +15 -15
  23. package/onboarding/prompts/feature/learning/proof.md +7 -7
  24. package/onboarding/prompts/feature/learning/start.md +8 -8
  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 +2 -2
  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 +4 -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 +5 -2
  45. package/onboarding/prompts/framework/google-adk.md +4 -2
  46. package/onboarding/prompts/framework/langgraph-fastapi.md +4 -3
  47. package/onboarding/prompts/framework/langgraph-python.md +6 -2
  48. package/onboarding/prompts/framework/langgraph-typescript.md +6 -2
  49. package/onboarding/prompts/framework/llamaindex.md +2 -2
  50. package/onboarding/prompts/framework/mastra.md +4 -2
  51. package/onboarding/prompts/framework/ms-agent-dotnet.md +4 -2
  52. package/onboarding/prompts/framework/ms-agent-harness-dotnet.md +2 -2
  53. package/onboarding/prompts/framework/ms-agent-python.md +4 -2
  54. package/onboarding/prompts/framework/pydantic-ai.md +2 -2
  55. package/onboarding/prompts/framework/strands-python.md +4 -2
  56. package/onboarding/prompts/framework/strands-typescript.md +4 -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 +21 -10
  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 +33 -15
  64. package/onboarding/prompts/proof/complete.md +35 -16
  65. package/onboarding/prompts/proof/oss-baseline.md +5 -5
  66. package/onboarding/prompts/proof/round-trip.md +23 -12
  67. package/onboarding/prompts/research/gather.md +12 -102
  68. package/onboarding/prompts/research/merge.md +60 -0
  69. package/onboarding/prompts/research/preflight.md +75 -0
  70. package/onboarding/prompts/research/route.md +28 -4
  71. package/onboarding/prompts/starter/clone.md +5 -5
  72. package/onboarding/prompts/stopped/run-failed.md +2 -2
  73. package/onboarding/prompts/subagent/create-plan.md +18 -1
  74. package/onboarding/prompts/subagent/implement-and-validate.md +30 -0
  75. package/onboarding/prompts/subagent/inspect-repository.md +1 -1
  76. package/onboarding/prompts/subagent/prove-oss-baseline.md +1 -1
  77. package/onboarding/prompts/subagent/prove-round-trip.md +17 -7
  78. package/onboarding/prompts/unsupported/no-validated-path.md +2 -2
  79. package/package.json +4 -1
  80. package/release/release-tool.js +1 -1
@@ -54,7 +54,7 @@ variable names the repository proves or the developer named, these URLs, the ada
54
54
  shared-state limit.
55
55
 
56
56
  If the pages support the selection, run
57
- `npx --yes copilotkit@4.12.0 onboard read frontend/plan`.
57
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
58
58
 
59
59
  If the documentation does not support the selection, run
60
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
60
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -25,11 +25,14 @@ agent-app-context setup. If the requested work needs it, run the unsupported rou
25
25
  A2UI is not on this path. If the developer asks for it, say first that its backend example
26
26
  is Python-only, so a TypeScript project has nothing to follow.
27
27
 
28
+ Connect the Copilot Runtime with `LangGraphAgent` from `@copilotkit/runtime/langgraph`
29
+ on the Deep Agent path, or `HttpAgent` from `@ag-ui/client` on the FastAPI path.
30
+
28
31
  Record the selected framework, language, vendor, model, required credential variable
29
32
  names, these URLs, and each documentation gap.
30
33
 
31
34
  If the pages support the selection, run
32
- `npx --yes copilotkit@4.12.0 onboard read frontend/plan`.
35
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
33
36
 
34
37
  If the documentation does not support the selection, run
35
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
38
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -24,11 +24,13 @@ that missing page as a documentation gap. Do not read the built-in-agent context
24
24
  in its place: that page states no backend work is needed, which holds for the built-in
25
25
  agent and not for ADK.
26
26
 
27
+ Connect the Copilot Runtime with `HttpAgent` from `@ag-ui/client`.
28
+
27
29
  Record the selected framework, vendor, model, required credential variable names, and
28
30
  these URLs.
29
31
 
30
32
  If the pages support the selection, run
31
- `npx --yes copilotkit@4.12.0 onboard read frontend/plan`.
33
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
32
34
 
33
35
  If the documentation does not support the selection, run
34
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
36
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -17,14 +17,15 @@ The FastAPI graph must have a checkpointer.
17
17
  Keep the existing checkpointer. For a new local agent, use `MemorySaver` only for
18
18
  development.
19
19
  Use `add_langgraph_fastapi_endpoint` for the FastAPI agent endpoint.
20
- Use `LangGraphHttpAgent` in the Copilot Runtime.
20
+ Connect the Copilot Runtime with `HttpAgent` from `@ag-ui/client`.
21
+ `LangGraphHttpAgent` is deprecated. Do not use it.
21
22
  Do not copy the LangSmith path, its no-checkpointer rule, or its `LangGraphAgent` adapter.
22
23
 
23
24
  Record the selected framework, vendor, model, required credential variable names, and
24
25
  these URLs.
25
26
 
26
27
  If the pages support the selection, run
27
- `npx --yes copilotkit@4.12.0 onboard read frontend/plan`.
28
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
28
29
 
29
30
  If the documentation does not support the selection, run
30
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
31
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -11,11 +11,15 @@ name its credential variables and setup steps.
11
11
  - https://docs.copilotkit.ai/langgraph-python/generative-ui/tool-based.md
12
12
  - https://docs.copilotkit.ai/langgraph-python/agent-app-context.md
13
13
 
14
+ Connect the Copilot Runtime with `LangGraphAgent` from `@copilotkit/runtime/langgraph`
15
+ on the LangSmith path, or `HttpAgent` from `@ag-ui/client` on the FastAPI path.
16
+ `LangGraphHttpAgent` is deprecated. Do not use it.
17
+
14
18
  Record the selected framework, vendor, model, required credential variable names, and
15
19
  these URLs.
16
20
 
17
21
  If the pages support the selection, run
18
- `npx --yes copilotkit@4.12.0 onboard read frontend/plan`.
22
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
19
23
 
20
24
  If the documentation does not support the selection, run
21
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
25
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -11,11 +11,15 @@ name its credential variables and setup steps.
11
11
  - https://docs.copilotkit.ai/langgraph-typescript/generative-ui/tool-based.md
12
12
  - https://docs.copilotkit.ai/langgraph-typescript/agent-app-context.md
13
13
 
14
+ Connect the Copilot Runtime with `LangGraphAgent` from `@copilotkit/runtime/langgraph`
15
+ on the LangSmith path, or `HttpAgent` from `@ag-ui/client` on the FastAPI path.
16
+ `LangGraphHttpAgent` is deprecated. Do not use it.
17
+
14
18
  Record the selected framework, vendor, model, required credential variable names, and
15
19
  these URLs.
16
20
 
17
21
  If the pages support the selection, run
18
- `npx --yes copilotkit@4.12.0 onboard read frontend/plan`.
22
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
19
23
 
20
24
  If the documentation does not support the selection, run
21
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
25
+ `npx --yes copilotkit@4.13.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 --yes copilotkit@4.12.0 onboard read frontend/plan`.
37
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
38
38
 
39
39
  If the documentation does not support the selection, run
40
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
40
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -41,11 +41,13 @@ what the developer had.
41
41
  - https://docs.copilotkit.ai/mastra/generative-ui/tool-based.md
42
42
  - https://docs.copilotkit.ai/mastra/agent-app-context.md
43
43
 
44
+ Connect the Copilot Runtime with `MastraAgent` from `@ag-ui/mastra`.
45
+
44
46
  Record the selected framework, vendor, model, required credential variable names, and
45
47
  these URLs.
46
48
 
47
49
  If the pages support the selection, run
48
- `npx --yes copilotkit@4.12.0 onboard read frontend/plan`.
50
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
49
51
 
50
52
  If the documentation does not support the selection, run
51
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
53
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -30,11 +30,13 @@ Use `Microsoft.Agents.AI.Hosting.AGUI.AspNetCore` from the Learn guide. Register
30
30
  with `AddAGUIServer`. Map the existing `AIAgent` with `MapAGUIServer`. The endpoint accepts
31
31
  `RunAgentInput` requests and streams AG-UI events with server-sent events.
32
32
 
33
+ Connect the Copilot Runtime with `HttpAgent` from `@ag-ui/client`.
34
+
33
35
  Record the selected framework, provider, model, required credential variable names, and
34
36
  these URLs.
35
37
 
36
38
  If the pages support the selection, run
37
- `npx --yes copilotkit@4.12.0 onboard read frontend/plan`.
39
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
38
40
 
39
41
  If the documentation does not support the selection, run
40
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
42
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -44,7 +44,7 @@ Record the selected framework, provider, model, required credential variable nam
44
44
  URLs, and the quickstart gap.
45
45
 
46
46
  If the pages support the selection, run
47
- `npx --yes copilotkit@4.12.0 onboard read frontend/plan`.
47
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
48
48
 
49
49
  If the documentation does not support the selection, run
50
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
50
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -24,11 +24,13 @@ byte-identical to the one at `ms-agent-dotnet`: one page serves both languages t
24
24
  a `.NET` and `Python` tab group. The scope in the URL does not select the language, so
25
25
  read the Python tab. The first code block on the page is the .NET one.
26
26
 
27
+ Connect the Copilot Runtime with `HttpAgent` from `@ag-ui/client`.
28
+
27
29
  Record the selected framework, vendor, model, required credential variable names, and
28
30
  these URLs.
29
31
 
30
32
  If the pages support the selection, run
31
- `npx --yes copilotkit@4.12.0 onboard read frontend/plan`.
33
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
32
34
 
33
35
  If the documentation does not support the selection, run
34
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
36
+ `npx --yes copilotkit@4.13.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 --yes copilotkit@4.12.0 onboard read frontend/plan`.
46
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
47
47
 
48
48
  If the documentation does not support the selection, run
49
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
49
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -23,11 +23,13 @@ No Strands agent-app-context Markdown page is available. Do not invent an
23
23
  agent-app-context setup. If the requested work needs that missing setup, run the
24
24
  unsupported route below.
25
25
 
26
+ Connect the Copilot Runtime with `HttpAgent` from `@ag-ui/client`.
27
+
26
28
  Record the selected framework, vendor, model, required credential variable names, these
27
29
  URLs, and the context documentation gap.
28
30
 
29
31
  If the pages support the selection, run
30
- `npx --yes copilotkit@4.12.0 onboard read frontend/plan`.
32
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
31
33
 
32
34
  If the documentation does not support the selection, run
33
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
35
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -24,11 +24,13 @@ run the unsupported route below.
24
24
  A2UI is not on this path. If the developer asks for it, say first that its page has no
25
25
  Strands TypeScript backend example, so a TypeScript project has nothing to follow.
26
26
 
27
+ Connect the Copilot Runtime with `HttpAgent` from `@ag-ui/client`.
28
+
27
29
  Record the selected framework, vendor, model, required credential variable names, these
28
30
  URLs, and the context documentation gap.
29
31
 
30
32
  If the pages support the selection, run
31
- `npx --yes copilotkit@4.12.0 onboard read frontend/plan`.
33
+ `npx --yes copilotkit@4.13.0 onboard read frontend/plan`.
32
34
 
33
35
  If the documentation does not support the selection, run
34
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
36
+ `npx --yes copilotkit@4.13.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 --yes copilotkit@4.12.0 onboard read starter/clone` before you fetch documentation.
8
+ `npx --yes copilotkit@4.13.0 onboard read starter/clone` before you fetch documentation.
9
9
 
10
10
  ## Documentation
11
11
 
@@ -63,7 +63,7 @@ you create or build an Angular project. If the installed version is lower, selec
63
63
  supported version first and use it for every later command in this project.
64
64
 
65
65
  If the pages support the selection, record Angular and these URLs. Then run
66
- `npx --yes copilotkit@4.12.0 onboard read credentials/finalize-plan`.
66
+ `npx --yes copilotkit@4.13.0 onboard read credentials/finalize-plan`.
67
67
 
68
68
  If the documentation does not support the selection, or the two version lines do not fit
69
- together, run `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
69
+ together, run `npx --yes copilotkit@4.13.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 --yes copilotkit@4.12.0 onboard read starter/clone` before you fetch documentation.
18
+ `npx --yes copilotkit@4.13.0 onboard read starter/clone` before you fetch documentation.
19
19
 
20
20
  ## Documentation
21
21
 
@@ -27,7 +27,7 @@ agent as the default agent, which is correct only for a project that has no agen
27
27
  Do not replace the developer's existing agent with the built-in agent.
28
28
 
29
29
  If the page supports the selection, record Next.js and this URL. Then run
30
- `npx --yes copilotkit@4.12.0 onboard read credentials/finalize-plan`.
30
+ `npx --yes copilotkit@4.13.0 onboard read credentials/finalize-plan`.
31
31
 
32
32
  If the documentation does not support the selection, run
33
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
33
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -1,5 +1,19 @@
1
1
  # Select the frontend
2
2
 
3
+ ## A named Channel decides this node
4
+
5
+ If the developer already named Slack or Microsoft Teams, use that choice.
6
+ If the copied prompt came from a Slack or Teams docs page, use that page as the named frontend.
7
+
8
+ Either one is final here. Do not ask the frontend question on that run. Do not let an
9
+ existing frontend take a web route instead: the project keeps the frontend it has, and the
10
+ Channel is what this run adds. Take the Slack or Microsoft Teams route below and name the
11
+ provider to it. A Slack page names Slack. A Teams page names Teams.
12
+
13
+ Every rule below is for a run that named neither.
14
+
15
+ ## Select the frontend from the findings
16
+
3
17
  Use the repository findings to select the frontend. Ask the developer only for choices
4
18
  that the repository does not show. Do not change application code in this phase.
5
19
 
@@ -9,9 +23,6 @@ the alternatives short. When the frontend is unknown, use this rule: Ask one fro
9
23
  question that lists the recommendation and valid choices. Do not ask a yes-or-no question
10
24
  first. Do not ask about the model or project in this step.
11
25
 
12
- If the developer already named Slack or Microsoft Teams, use that choice.
13
- If the copied prompt came from a Slack or Teams docs page, use that page as the named frontend.
14
-
15
26
  If the project has a frontend, preserve it and use the matching route below. If the project
16
27
  needs a frontend, show the valid choices and one recommendation based on repository
17
28
  evidence, then ask the developer to choose.
@@ -25,15 +36,15 @@ CopilotKit web apps. Then recommend the one the developer names, and say what ea
25
36
 
26
37
  Use exactly one matching internal route:
27
38
 
28
- 1. React SPA: `npx --yes copilotkit@4.12.0 onboard read frontend/react-spa`
29
- 2. Next.js: `npx --yes copilotkit@4.12.0 onboard read frontend/nextjs`
30
- 3. Angular: `npx --yes copilotkit@4.12.0 onboard read frontend/angular`
31
- 4. Vue 3: `npx --yes copilotkit@4.12.0 onboard read frontend/vue`
32
- 5. React Native: `npx --yes copilotkit@4.12.0 onboard read frontend/react-native`
33
- 6. Slack or Microsoft Teams: `npx --yes copilotkit@4.12.0 onboard read feature/channels/start`
39
+ 1. React SPA: `npx --yes copilotkit@4.13.0 onboard read frontend/react-spa`
40
+ 2. Next.js: `npx --yes copilotkit@4.13.0 onboard read frontend/nextjs`
41
+ 3. Angular: `npx --yes copilotkit@4.13.0 onboard read frontend/angular`
42
+ 4. Vue 3: `npx --yes copilotkit@4.13.0 onboard read frontend/vue`
43
+ 5. React Native: `npx --yes copilotkit@4.13.0 onboard read frontend/react-native`
44
+ 6. Slack or Microsoft Teams: `npx --yes copilotkit@4.13.0 onboard read feature/channels/start`
34
45
 
35
46
  If they chose Slack or Microsoft Teams, tell that node which one they chose so it
36
47
  does not ask again.
37
48
 
38
49
  If no listed frontend fits, run
39
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
50
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -15,7 +15,7 @@ documents `useRenderTool`, which is React Native's own hook for drawing a tool t
15
15
  already has. That is a different job and needs a tool in the agent.
16
16
 
17
17
  If the pages support the selection, record React Native and these URLs. Then run
18
- `npx --yes copilotkit@4.12.0 onboard read credentials/finalize-plan`.
18
+ `npx --yes copilotkit@4.13.0 onboard read credentials/finalize-plan`.
19
19
 
20
20
  If the documentation does not support the selection, run
21
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
21
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -11,7 +11,7 @@ not move the agent into it.
11
11
  - https://docs.copilotkit.ai/react-spa.md
12
12
 
13
13
  If the page supports the selection, record React SPA and this URL. Then run
14
- `npx --yes copilotkit@4.12.0 onboard read credentials/finalize-plan`.
14
+ `npx --yes copilotkit@4.13.0 onboard read credentials/finalize-plan`.
15
15
 
16
16
  If the documentation does not support the selection, run
17
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
17
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -16,7 +16,7 @@ page above. Vue has its own `useComponent`, which is not the React package. Take
16
16
  that reference page rather than from a Vue generative-UI guide, which is not published.
17
17
 
18
18
  If the pages support the selection, record Vue 3 and these URLs. Then run
19
- `npx --yes copilotkit@4.12.0 onboard read credentials/finalize-plan`.
19
+ `npx --yes copilotkit@4.13.0 onboard read credentials/finalize-plan`.
20
20
 
21
21
  If the documentation does not support the selection, run
22
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
22
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -12,7 +12,7 @@ command without another developer question. Do not ask the developer about telem
12
12
  command applies the setting they already have.
13
13
 
14
14
  ```text
15
- npx --yes copilotkit@4.12.0 onboard friction --phase stop --category <slug>
15
+ npx --yes copilotkit@4.13.0 onboard friction --phase stop --category <slug>
16
16
  ```
17
17
 
18
18
  Write one or two sentences to standard input: the step you stopped at and what stopped it.
@@ -36,6 +36,16 @@ plan said, what you did instead, and why. Carry that record into the closing sum
36
36
  which has an item for it. Do not stop for a departure that is the right call, and do not
37
37
  leave it unrecorded either.
38
38
 
39
+ The existing agent's behavior is never a departure to record and carry on from. It is four
40
+ things: its system prompt and instructions, its tools and what those tools do, its model
41
+ and provider configuration, and its memory or state handling. Repair a failing check on
42
+ the CopilotKit side first -- the frontend rendering, the tool schema, the runtime wiring.
43
+ Where the only fix you can find is a change to the agent's instructions or tools, stop:
44
+ report the failing predicate and the change you propose, and continue only after the
45
+ developer approves it. An approved change is a behavior change, and the closing report
46
+ names it as one. Never call a change to the agent's instructions or tools a repair. If you
47
+ cannot ask, or the developer declines, use the route-out rules below.
48
+
39
49
  ## Authorization requested by the plan
40
50
 
41
51
  Approving the plan is the developer agreeing to every path it listed under
@@ -43,7 +53,7 @@ Approving the plan is the developer agreeing to every path it listed under
43
53
  app directory:
44
54
 
45
55
  ```text
46
- npx --yes copilotkit@4.12.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>"
56
+ npx --yes copilotkit@4.13.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>"
47
57
  ```
48
58
 
49
59
  Consent has to be on the record before the file moves, so a call made after the change is
@@ -60,7 +70,7 @@ No implementation step has run yet, so the change is theirs rather than this run
60
70
  consent over it by adding one flag:
61
71
 
62
72
  ```text
63
- npx --yes copilotkit@4.12.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>" --with-prior-change
73
+ npx --yes copilotkit@4.13.0 onboard protect --authorize --path <path> --reason "<the plan's sentence>" --with-prior-change
64
74
  ```
65
75
 
66
76
  The flag records their change as drift beside the consent, so the closing report names both
@@ -79,7 +89,7 @@ rather than this section.
79
89
  Run the audit from the target app directory:
80
90
 
81
91
  ```text
82
- npx --yes copilotkit@4.12.0 onboard audit
92
+ npx --yes copilotkit@4.13.0 onboard audit
83
93
  ```
84
94
 
85
95
  It compares every protected path with the digest the CLI captured for it. Its result starts
@@ -114,14 +124,14 @@ A path that no Files changed section names changed outside the run, and it is th
114
124
  developer's own file. Accept it by name:
115
125
 
116
126
  ```text
117
- npx --yes copilotkit@4.12.0 onboard protect --accept-external --path <path>
127
+ npx --yes copilotkit@4.13.0 onboard protect --accept-external --path <path>
118
128
  ```
119
129
 
120
130
  A changed env file is its own case. This run asked the developer to place a credential
121
131
  there, so it takes the credential route rather than this one:
122
132
 
123
133
  ```text
124
- npx --yes copilotkit@4.12.0 onboard protect --accept-credential --path <path>
134
+ npx --yes copilotkit@4.13.0 onboard protect --accept-credential --path <path>
125
135
  ```
126
136
 
127
137
  That route proves no recorded credential was lost, instead of taking the run's word that it
@@ -140,7 +150,7 @@ neither does a one-line fix. Never repair, reset, or revert it. Ask the develope
140
150
  the change, and record the answer they give:
141
151
 
142
152
  ```text
143
- npx --yes copilotkit@4.12.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
153
+ npx --yes copilotkit@4.13.0 onboard protect --authorize --unplanned --path <path> --reason "<what the developer said>"
144
154
  ```
145
155
 
146
156
  Use it only for an answer a developer actually gave. It records the consent as taken
@@ -161,7 +171,7 @@ create it now, from the target app directory. The developer approved the id befo
161
171
  made, so this is the first point at which it can be created:
162
172
 
163
173
  ```text
164
- npx --yes copilotkit@4.12.0 learning containers create --id <id> --name <name> --json
174
+ npx --yes copilotkit@4.13.0 learning containers create --id <id> --name <name> --json
165
175
  ```
166
176
 
167
177
  Pass the id the plan names. Take the name from the selected project's own display name, so
@@ -177,7 +187,7 @@ hold.
177
187
  Then report that the container is settled, before any edit:
178
188
 
179
189
  ```text
180
- npx --yes copilotkit@4.12.0 onboard checkpoint --phase container-settled
190
+ npx --yes copilotkit@4.13.0 onboard checkpoint --phase container-settled
181
191
  ```
182
192
 
183
193
  Where the plan names a container the platform already held, report the same checkpoint and
@@ -186,11 +196,11 @@ create nothing. Where the plan names no container, skip this section.
186
196
  Report the plan this run is about to implement:
187
197
 
188
198
  ```text
189
- npx --yes copilotkit@4.12.0 onboard checkpoint --phase plan-written
199
+ npx --yes copilotkit@4.13.0 onboard checkpoint --phase plan-written
190
200
  ```
191
201
 
192
202
  Spawn one implementation subagent. Tell it to run
193
- `npx --yes copilotkit@4.12.0 onboard read subagent/implement-and-validate` first and follow
203
+ `npx --yes copilotkit@4.13.0 onboard read subagent/implement-and-validate` first and follow
194
204
  the prompt it returns. If that read fails because the subagent cannot use the shell, stop that
195
205
  subagent. Run the same command yourself, then spawn a fresh subagent with the returned prompt
196
206
  and the same handoff. Give it the plan, selected framework, frontend, model, exact target app
@@ -202,6 +212,14 @@ to implement every step in plan order and run the full validation list. Wait for
202
212
  One subagent implements the whole plan. Do not divide the work across concurrent subagents,
203
213
  and do not spawn a second subagent to reconcile a split.
204
214
 
215
+ All implementation work happens in the run root's own working tree: the target app
216
+ directory this run started in. Never send the subagent to a separate worktree, a branch
217
+ checkout, or a copy of the project, and tell it to work in that directory itself. A
218
+ subagent that worked elsewhere must bring its changes into the run root before it reports.
219
+ The completion step verifies that the changed files exist in this project and refuses a run
220
+ whose tree never changed, so work left in another tree ends the run with nothing in the
221
+ developer's hands.
222
+
205
223
  If the implementation result does not start with `Status: passed`, do not continue to proof.
206
224
  Run the protected-path audit after the implementation subagent passes. Decide each path it
207
225
  names the same way as above, against the Files changed section that subagent just
@@ -210,11 +228,11 @@ returned. Continue to proof only when that audit passes.
210
228
  After the selected implementation path passes, report it:
211
229
 
212
230
  ```text
213
- npx --yes copilotkit@4.12.0 onboard checkpoint --phase build-validated
231
+ npx --yes copilotkit@4.13.0 onboard checkpoint --phase build-validated
214
232
  ```
215
233
 
216
234
  Then run
217
- `npx --yes copilotkit@4.12.0 onboard read proof/round-trip`.
235
+ `npx --yes copilotkit@4.13.0 onboard read proof/round-trip`.
218
236
 
219
237
  ## Repair rules
220
238
 
@@ -236,9 +254,9 @@ the same command still fails after three repair attempts, or a result starts wit
236
254
  `Status: blocked`. A defect in a package this run installed is not a stack CopilotKit does
237
255
  not serve, a command this run cannot get to pass is not one either, and a blocked audit
238
256
  proved nothing about the stack. In those cases run
239
- `npx --yes copilotkit@4.12.0 onboard read stopped/run-failed`.
257
+ `npx --yes copilotkit@4.13.0 onboard read stopped/run-failed`.
240
258
 
241
259
  A plan with no path to follow takes the unsupported ending: the fix requires changing the
242
260
  developer's existing agent or frontend, or the documentation does not support the plan. In
243
261
  those cases run
244
- `npx --yes copilotkit@4.12.0 onboard read unsupported/no-validated-path`.
262
+ `npx --yes copilotkit@4.13.0 onboard read unsupported/no-validated-path`.
@@ -32,6 +32,12 @@ about it: keep this version pin, wire this constructor, run this build. It never
32
32
  as an account of hitting it. No count of what went wrong, no list of fixes made along the
33
33
  way, no argument that a failed check is not a defect.
34
34
 
35
+ Where this run connected and proved Rich Threads, explain in your own words that they
36
+ preserve messages, generative UI, tool interactions, and application state so users
37
+ can return to earlier work. Explain that these interactions can also provide evidence
38
+ for Automatic Learning. Describe only the capabilities supported by this run's result.
39
+ This is required content within the handoff, not a separate message or a new check.
40
+
35
41
  The handoff must include:
36
42
 
37
43
  - The URL of the running app.
@@ -41,11 +47,19 @@ The handoff must include:
41
47
  installation. Do not open it. This item makes the developer aware the dashboard is
42
48
  there, and it is a sentence to write rather than a check to perform. Nothing in this
43
49
  graph gates on the dashboard, so a dashboard this run never opened is not a finding,
44
- not a caveat, and not a blocker.
50
+ not a caveat, and not a blocker. Where this run settled a Learning Container, tell the
51
+ developer they can use their project there to follow progress, review Insights and
52
+ supporting conversations, and approve proposed Skills as they become available.
45
53
  - What changed since the developer approved the plan. Name every path, version, or step
46
54
  the run departed from, and why. A deviation can be the right call and still has to
47
55
  reach the person who approved the thing it departed from. Where nothing departed, say
48
56
  that in one line rather than leaving the item out.
57
+ - Every change to the existing agent's behavior: its system prompt or instructions, its
58
+ tools or what those tools do, its model or provider configuration, or its memory or
59
+ state handling. Name each one, name the file, and say the developer approved it. Where
60
+ none of them changed, write `none` on that line rather than leaving the item out. Such a
61
+ change answers differently everywhere the agent is used, not only in CopilotKit, and the
62
+ developer is the only one who can tell whether that is wanted.
49
63
  - The process IDs and stop commands for the running agent and frontend.
50
64
  - The `@copilotkit/*` versions this conversion changed, and what they were before.
51
65
  - On a conversion, the criterion this run was judged against, in the words the run was
@@ -70,19 +84,24 @@ Name the debugging surface this journey's frontend can reach, rather than the on
70
84
  of the documentation leads with. For a web frontend it is the CopilotKit Inspector. For
71
85
  React Native there is no Inspector: it is a browser overlay built on a DOM custom element,
72
86
  and `@copilotkit/react-native` does not ship it. Give a mobile developer
73
- `npx --yes copilotkit@4.12.0 verify --round-trip`, the runtime's own log, the AG-UI
87
+ `npx --yes copilotkit@4.13.0 verify --round-trip`, the runtime's own log, the AG-UI
74
88
  Event Inspector in the CopilotKit VS Code extension, and the CopilotKit Intelligence
75
89
  thread view
76
90
  instead. Naming the Inspector to a developer who cannot open it costs them the time it
77
91
  takes to conclude their own wiring is broken.
78
92
 
79
- Where this run settled a Learning Container, tell the developer what happens next, because
80
- a correct run looks like a broken one otherwise. Learning runs on its own: the first
81
- automatic run needs new threads from 15 distinct conversations in this container, and only
82
- the newest snapshot of each thread counts. Existing threads can receive their first
83
- container assignment after prior runs. Their surviving earlier history becomes eligible
84
- for collection and counts toward the same threshold. Creating a container does not enroll
85
- existing threads automatically.
93
+ Where this run settled a Learning Container, explain in your own words that new
94
+ conversations are routed to it, where Automatic Learning can find recurring patterns
95
+ and propose reusable Skills to help the agent improve. The developer controls which
96
+ Skills get approved. Explain that Learning results appear as new conversations provide
97
+ enough evidence.
98
+
99
+ These are required explanations within the existing handoff, not fixed wording or
100
+ additional actions. Describe only the setup supported by this run's evidence. Do not
101
+ claim this run produced Insights or Skills or configured automatic Skill delivery
102
+ unless its evidence proves that. If no container was configured, report the actual
103
+ reason and retain the project-management destination without implying that Learning
104
+ is collecting evidence.
86
105
 
87
106
  Where the Learning step was skipped because this organization cannot use Learning, say so in
88
107
  one line and name what was not created. A skip nobody names reads as a container that
@@ -95,7 +114,7 @@ the friction commands without another developer question. Do not ask the develop
95
114
  telemetry: the command applies the setting they already have.
96
115
 
97
116
  ```text
98
- npx --yes copilotkit@4.12.0 onboard friction --category <slug> --cost-seconds <seconds>
117
+ npx --yes copilotkit@4.13.0 onboard friction --category <slug> --cost-seconds <seconds>
99
118
  ```
100
119
 
101
120
  Write one or two sentences on the command's standard input. Pick one category from
@@ -107,7 +126,7 @@ Pass --docs-path only for a docs-missing or docs-wrong report, naming the page t
107
126
  is about:
108
127
 
109
128
  ```text
110
- npx --yes copilotkit@4.12.0 onboard friction --category docs-wrong --cost-seconds 300 --docs-path /docs/threads/drawer
129
+ npx --yes copilotkit@4.13.0 onboard friction --category docs-wrong --cost-seconds 300 --docs-path /docs/threads/drawer
111
130
  ```
112
131
 
113
132
  Give the page's site-relative path or its full URL, with no spaces, query string, or
@@ -124,14 +143,14 @@ Tell the developer when you send a friction report. Do not quote or summarize th
124
143
  unless the developer asks. If the CLI says the report was not sent,
125
144
  state what it said and continue without another question.
126
145
 
127
- When the evidence is gathered, run `npx --yes copilotkit@4.12.0 onboard complete`, carrying
146
+ When the evidence is gathered, run `npx --yes copilotkit@4.13.0 onboard complete`, carrying
128
147
  the surface-check outcome the proof subagent returned. Pass exactly one flag, and pass the
129
148
  one that matches this journey's surface.
130
149
 
131
150
  For a web frontend -- React SPA, Next.js, Angular, Vue:
132
151
 
133
152
  ```text
134
- npx --yes copilotkit@4.12.0 onboard complete --visual-check <outcome>
153
+ npx --yes copilotkit@4.13.0 onboard complete --visual-check <outcome>
135
154
  ```
136
155
 
137
156
  The outcome is one of `performed`, `skipped-no-browser-tool`, `skipped-cloned-starter`, or
@@ -141,7 +160,7 @@ open no browser. It is the one skip that does not block.
141
160
  For React Native:
142
161
 
143
162
  ```text
144
- npx --yes copilotkit@4.12.0 onboard complete --device-check <outcome>
163
+ npx --yes copilotkit@4.13.0 onboard complete --device-check <outcome>
145
164
  ```
146
165
 
147
166
  The outcome is one of `performed`, `skipped-no-device`, `skipped-cloned-starter`, or
@@ -154,7 +173,7 @@ browser-origin CORS, so the flag you pass is how this run states which surface i
154
173
  For a web frontend, also pass the URL the browser opened:
155
174
 
156
175
  ```text
157
- npx --yes copilotkit@4.12.0 onboard complete --visual-check <outcome> \
176
+ npx --yes copilotkit@4.13.0 onboard complete --visual-check <outcome> \
158
177
  --frontend-url <the url you opened>
159
178
  ```
160
179
 
@@ -173,7 +192,7 @@ If the round trip proved and something after it still blocked this run, add `--b
173
192
  to the same command:
174
193
 
175
194
  ```text
176
- npx --yes copilotkit@4.12.0 onboard complete --visual-check performed --blocked-by <cause>
195
+ npx --yes copilotkit@4.13.0 onboard complete --visual-check performed --blocked-by <cause>
177
196
  ```
178
197
 
179
198
  The cause is one of `inspector` for a debugging surface that did not open,