copilotkit 4.26.0 → 4.27.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 (92) hide show
  1. package/README.md +271 -25
  2. package/cli-build-info.json +7 -7
  3. package/index.js +6785 -3294
  4. package/onboarding/index.json +2 -2
  5. package/onboarding/prompts/authenticate/start.md +28 -23
  6. package/onboarding/prompts/conversion/plan.md +3 -3
  7. package/onboarding/prompts/credentials/finalize-plan.md +34 -25
  8. package/onboarding/prompts/credentials/plan.md +46 -33
  9. package/onboarding/prompts/credentials/settle-credentials.md +38 -14
  10. package/onboarding/prompts/credentials/write-plan.md +104 -47
  11. package/onboarding/prompts/deployment/choose-local.md +17 -20
  12. package/onboarding/prompts/deployment/local-evaluation.md +45 -21
  13. package/onboarding/prompts/fallback/best-effort.md +11 -9
  14. package/onboarding/prompts/feature/a2ui/implement.md +4 -4
  15. package/onboarding/prompts/feature/a2ui/plan.md +3 -3
  16. package/onboarding/prompts/feature/a2ui/proof.md +5 -5
  17. package/onboarding/prompts/feature/a2ui/start.md +10 -8
  18. package/onboarding/prompts/feature/channels/implement.md +11 -8
  19. package/onboarding/prompts/feature/channels/plan.md +15 -7
  20. package/onboarding/prompts/feature/channels/proof.md +5 -5
  21. package/onboarding/prompts/feature/channels/start.md +11 -10
  22. package/onboarding/prompts/feature/chat-suggestions/implement.md +4 -4
  23. package/onboarding/prompts/feature/chat-suggestions/plan.md +3 -3
  24. package/onboarding/prompts/feature/chat-suggestions/proof.md +5 -5
  25. package/onboarding/prompts/feature/chat-suggestions/start.md +10 -8
  26. package/onboarding/prompts/feature/complete.md +2 -2
  27. package/onboarding/prompts/feature/learning/implement.md +14 -12
  28. package/onboarding/prompts/feature/learning/plan.md +4 -4
  29. package/onboarding/prompts/feature/learning/proof.md +24 -14
  30. package/onboarding/prompts/feature/learning/start.md +8 -8
  31. package/onboarding/prompts/feature/open-generative-ui/implement.md +4 -4
  32. package/onboarding/prompts/feature/open-generative-ui/plan.md +3 -3
  33. package/onboarding/prompts/feature/open-generative-ui/proof.md +5 -5
  34. package/onboarding/prompts/feature/open-generative-ui/start.md +10 -8
  35. package/onboarding/prompts/feature/realtime-sync/implement.md +7 -5
  36. package/onboarding/prompts/feature/realtime-sync/plan.md +3 -3
  37. package/onboarding/prompts/feature/realtime-sync/proof.md +5 -5
  38. package/onboarding/prompts/feature/realtime-sync/start.md +7 -7
  39. package/onboarding/prompts/feature/rich-threads/implement.md +8 -6
  40. package/onboarding/prompts/feature/rich-threads/plan.md +3 -3
  41. package/onboarding/prompts/feature/rich-threads/proof.md +5 -5
  42. package/onboarding/prompts/feature/rich-threads/start.md +7 -7
  43. package/onboarding/prompts/feature/stop.md +4 -4
  44. package/onboarding/prompts/feature/voice/implement.md +4 -4
  45. package/onboarding/prompts/feature/voice/plan.md +4 -4
  46. package/onboarding/prompts/feature/voice/proof.md +5 -5
  47. package/onboarding/prompts/feature/voice/start.md +10 -8
  48. package/onboarding/prompts/framework/ag2.md +20 -5
  49. package/onboarding/prompts/framework/agno.md +25 -9
  50. package/onboarding/prompts/framework/built-in.md +21 -6
  51. package/onboarding/prompts/framework/claude-sdk-python.md +11 -5
  52. package/onboarding/prompts/framework/claude-sdk-typescript.md +13 -6
  53. package/onboarding/prompts/framework/crewai-flows.md +24 -10
  54. package/onboarding/prompts/framework/custom-ag-ui.md +62 -28
  55. package/onboarding/prompts/framework/deep-agents.md +26 -9
  56. package/onboarding/prompts/framework/google-adk.md +18 -5
  57. package/onboarding/prompts/framework/langgraph-fastapi.md +20 -5
  58. package/onboarding/prompts/framework/langgraph-python.md +20 -5
  59. package/onboarding/prompts/framework/langgraph-typescript.md +27 -7
  60. package/onboarding/prompts/framework/llamaindex.md +24 -8
  61. package/onboarding/prompts/framework/mastra.md +21 -8
  62. package/onboarding/prompts/framework/ms-agent-dotnet.md +24 -6
  63. package/onboarding/prompts/framework/ms-agent-harness-dotnet.md +24 -5
  64. package/onboarding/prompts/framework/ms-agent-python.md +21 -5
  65. package/onboarding/prompts/framework/pydantic-ai.md +20 -5
  66. package/onboarding/prompts/framework/strands-python.md +27 -12
  67. package/onboarding/prompts/framework/strands-typescript.md +27 -12
  68. package/onboarding/prompts/frontend/angular.md +4 -4
  69. package/onboarding/prompts/frontend/nextjs.md +4 -4
  70. package/onboarding/prompts/frontend/plan.md +21 -13
  71. package/onboarding/prompts/frontend/react-native.md +3 -3
  72. package/onboarding/prompts/frontend/react-spa.md +3 -3
  73. package/onboarding/prompts/frontend/vue.md +3 -3
  74. package/onboarding/prompts/implementation/build-and-validate.md +25 -20
  75. package/onboarding/prompts/proof/complete.md +10 -7
  76. package/onboarding/prompts/proof/oss-baseline.md +6 -6
  77. package/onboarding/prompts/proof/round-trip.md +10 -10
  78. package/onboarding/prompts/research/gather.md +8 -8
  79. package/onboarding/prompts/research/merge.md +3 -3
  80. package/onboarding/prompts/research/preflight.md +2 -2
  81. package/onboarding/prompts/research/route.md +4 -4
  82. package/onboarding/prompts/setup/questions.md +192 -159
  83. package/onboarding/prompts/starter/clone.md +126 -51
  84. package/onboarding/prompts/stopped/run-failed.md +5 -3
  85. package/onboarding/prompts/subagent/create-plan.md +73 -20
  86. package/onboarding/prompts/subagent/implement-and-validate.md +30 -14
  87. package/onboarding/prompts/subagent/inspect-repository.md +3 -2
  88. package/onboarding/prompts/subagent/prove-oss-baseline.md +10 -5
  89. package/onboarding/prompts/subagent/prove-round-trip.md +23 -14
  90. package/onboarding/prompts/unsupported/no-validated-path.md +5 -4
  91. package/package.json +1 -1
  92. package/release/release-tool.js +12 -2
@@ -1,9 +1,24 @@
1
1
  # Configure Pydantic AI
2
2
 
3
+ First run `npx --prefer-offline --yes copilotkit@4.27.0 onboard setup-answers`. Its `vendor` is the
4
+ vendor the framework step recorded, even after this conversation lost it, with
5
+ `vendor.baseUrl` and `vendor.modelId` for an OpenAI-compatible provider.
6
+
3
7
  Preserve an existing Pydantic AI model setup. For a new agent, use the vendor that the
4
- framework step recorded. If it recorded none, use OpenAI. Offer another vendor only after
5
- an exact CopilotKit Markdown page names it. The page must name its credential variables
6
- and setup steps.
8
+ framework step recorded. Use OpenAI only when the record and this conversation have no
9
+ vendor. This release offers a new agent on this framework OpenAI or an OpenAI-compatible
10
+ provider only. For a new agent, if the developer names Anthropic or Google, say that this
11
+ release supports OpenAI or an OpenAI-compatible provider on this framework, that Anthropic
12
+ and Google come in a later release, and offer the built-in CopilotKit agent if they need
13
+ Anthropic or Google now. An existing agent keeps its vendor and model. If it runs on
14
+ Anthropic or Google, add one line to the plan: the page context that CopilotKit sends can
15
+ fail with that vendor until a CopilotKit SDK release fixes it (PE-728). Take that vendor's
16
+ package, class, and credential variable names from the framework's own documentation, and
17
+ use a model id that the vendor serves to a new key today. For an OpenAI-compatible
18
+ provider, keep `OPENAI_API_KEY`, use the model id that `setup/questions` recorded, and
19
+ write the base URL that `setup/questions` recorded as `OPENAI_BASE_URL` in the app's env
20
+ file. The key can stay in its own file. Where the framework does not read that variable,
21
+ also pass it in code. Take every CopilotKit step from the pages below.
7
22
 
8
23
  Name the default model credential `OPENAI_API_KEY`.
9
24
 
@@ -44,7 +59,7 @@ Record the selected framework, vendor, model, required credential variable names
44
59
  URLs, and the two-step context route.
45
60
 
46
61
  If the pages support the selection, run
47
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read frontend/plan`.
62
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read frontend/plan`.
48
63
 
49
64
  If the documentation does not support the selection, run
50
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read unsupported/no-validated-path`.
65
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read unsupported/no-validated-path`.
@@ -1,12 +1,26 @@
1
1
  # Configure Strands Agents Python
2
2
 
3
- Preserve an existing Strands model setup. For a new agent, use the vendor that the
4
- framework step recorded. If it recorded none, use OpenAI. Offer another vendor only after
5
- an exact CopilotKit Markdown page names it. The page must name its credential variables
6
- and setup steps.
3
+ First run `npx --prefer-offline --yes copilotkit@4.27.0 onboard setup-answers`. Its `vendor` is the
4
+ vendor the framework step recorded, even after this conversation lost it, with
5
+ `vendor.baseUrl` and `vendor.modelId` for an OpenAI-compatible provider.
7
6
 
8
- Name the default model credential `OPENAI_API_KEY`. For Anthropic, follow the
9
- quickstart's "Using Anthropic instead" steps, and name the credential `ANTHROPIC_API_KEY`.
7
+ Preserve an existing Strands model setup. For a new agent, use the vendor that the
8
+ framework step recorded. Use OpenAI only when the record and this conversation have no
9
+ vendor. This release offers a new agent on this framework OpenAI or an OpenAI-compatible
10
+ provider only. For a new agent, if the developer names Anthropic or Google, say that this
11
+ release supports OpenAI or an OpenAI-compatible provider on this framework, that Anthropic
12
+ and Google come in a later release, and offer the built-in CopilotKit agent if they need
13
+ Anthropic or Google now. An existing agent keeps its vendor and model. If it runs on
14
+ Anthropic or Google, add one line to the plan: the page context that CopilotKit sends can
15
+ fail with that vendor until a CopilotKit SDK release fixes it (PE-728). Take that vendor's
16
+ package, class, and credential variable names from the framework's own documentation, and
17
+ use a model id that the vendor serves to a new key today. For an OpenAI-compatible
18
+ provider, keep `OPENAI_API_KEY`, use the model id that `setup/questions` recorded, and
19
+ write the base URL that `setup/questions` recorded as `OPENAI_BASE_URL` in the app's env
20
+ file. The key can stay in its own file. Where the framework does not read that variable,
21
+ also pass it in code. Take every CopilotKit step from the pages below.
22
+
23
+ Name the default model credential `OPENAI_API_KEY`.
10
24
  The dynamic A2UI tool still calls OpenAI, so a developer who later adds A2UI also needs
11
25
  `OPENAI_API_KEY`.
12
26
 
@@ -23,17 +37,18 @@ A2UI is not on this path. If the developer asks for it, say first that the fixed
23
37
  A2UI tool makes its own OpenAI call, so it bills a second model call this plan does not
24
38
  account for.
25
39
 
26
- No Strands agent-app-context Markdown page is available. Do not invent an
27
- agent-app-context setup. If the requested work passes project data to the agent, run the unsupported
28
- route below. Otherwise, record the gap and continue.
40
+ The agent receives `useAgentContext` entries on the AG-UI run input, in its `context`
41
+ field, as https://docs.copilotkit.ai/agent-app-context.md shows. If the requested work
42
+ passes project data to the agent, read `context` in the agent with this framework's own
43
+ API, and pass it to the model. Name that code in the plan.
29
44
 
30
45
  Connect the Copilot Runtime with `HttpAgent` from `@ag-ui/client`.
31
46
 
32
47
  Record the selected framework, vendor, model, required credential variable names, these
33
- URLs, and the context documentation gap.
48
+ URLs, and how the agent reads `context`.
34
49
 
35
50
  If the pages support the selection, run
36
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read frontend/plan`.
51
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read frontend/plan`.
37
52
 
38
53
  If the documentation does not support the selection, run
39
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read unsupported/no-validated-path`.
54
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read unsupported/no-validated-path`.
@@ -1,12 +1,26 @@
1
1
  # Configure Strands Agents TypeScript
2
2
 
3
- Preserve an existing Strands model setup. For a new agent, use the vendor that the
4
- framework step recorded. If it recorded none, use OpenAI. Offer another vendor only after
5
- an exact CopilotKit Markdown page names it. The page must name its credential variables
6
- and setup steps.
3
+ First run `npx --prefer-offline --yes copilotkit@4.27.0 onboard setup-answers`. Its `vendor` is the
4
+ vendor the framework step recorded, even after this conversation lost it, with
5
+ `vendor.baseUrl` and `vendor.modelId` for an OpenAI-compatible provider.
7
6
 
8
- Name the default model credential `OPENAI_API_KEY`. For Anthropic, follow the
9
- quickstart's "Using Anthropic instead" steps, and name the credential `ANTHROPIC_API_KEY`.
7
+ Preserve an existing Strands model setup. For a new agent, use the vendor that the
8
+ framework step recorded. Use OpenAI only when the record and this conversation have no
9
+ vendor. This release offers a new agent on this framework OpenAI or an OpenAI-compatible
10
+ provider only. For a new agent, if the developer names Anthropic or Google, say that this
11
+ release supports OpenAI or an OpenAI-compatible provider on this framework, that Anthropic
12
+ and Google come in a later release, and offer the built-in CopilotKit agent if they need
13
+ Anthropic or Google now. An existing agent keeps its vendor and model. If it runs on
14
+ Anthropic or Google, add one line to the plan: the page context that CopilotKit sends can
15
+ fail with that vendor until a CopilotKit SDK release fixes it (PE-728). Take that vendor's
16
+ package, class, and credential variable names from the framework's own documentation, and
17
+ use a model id that the vendor serves to a new key today. For an OpenAI-compatible
18
+ provider, keep `OPENAI_API_KEY`, use the model id that `setup/questions` recorded, and
19
+ write the base URL that `setup/questions` recorded as `OPENAI_BASE_URL` in the app's env
20
+ file. The key can stay in its own file. Where the framework does not read that variable,
21
+ also pass it in code. Take every CopilotKit step from the pages below.
22
+
23
+ Name the default model credential `OPENAI_API_KEY`.
10
24
  The dynamic A2UI tool still calls OpenAI, so a developer who later adds A2UI also needs
11
25
  `OPENAI_API_KEY`.
12
26
 
@@ -21,9 +35,10 @@ The documentation scope is `strands-typescript`. Use only the TypeScript example
21
35
  these pages. Install `@modelcontextprotocol/sdk` as a runtime dependency.
22
36
  `@strands-agents/sdk` loads it even when the application does not use MCP.
23
37
 
24
- No Strands TypeScript agent-app-context Markdown page is available. Do not translate
25
- another language's backend example or invent that setup. If the requested work passes project data
26
- to the agent, run the unsupported route below. Otherwise, record the gap and continue.
38
+ The agent receives `useAgentContext` entries on the AG-UI run input, in its `context`
39
+ field, as https://docs.copilotkit.ai/agent-app-context.md shows. If the requested work
40
+ passes project data to the agent, read `context` in the agent with this framework's own
41
+ API, and pass it to the model. Name that code in the plan.
27
42
 
28
43
  A2UI is not on this path. If the developer asks for it, say first that its page has no
29
44
  Strands TypeScript backend example, so a TypeScript project has nothing to follow.
@@ -31,10 +46,10 @@ Strands TypeScript backend example, so a TypeScript project has nothing to follo
31
46
  Connect the Copilot Runtime with `HttpAgent` from `@ag-ui/client`.
32
47
 
33
48
  Record the selected framework, vendor, model, required credential variable names, these
34
- URLs, and the context documentation gap.
49
+ URLs, and how the agent reads `context`.
35
50
 
36
51
  If the pages support the selection, run
37
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read frontend/plan`.
52
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read frontend/plan`.
38
53
 
39
54
  If the documentation does not support the selection, run
40
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read unsupported/no-validated-path`.
55
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read unsupported/no-validated-path`.
@@ -6,13 +6,13 @@ This step asks the developer nothing. If the run must wait for the developer any
6
6
  the pause first:
7
7
 
8
8
  ```text
9
- npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
9
+ npx --prefer-offline --yes copilotkit@4.27.0 onboard checkpoint --phase awaiting-developer
10
10
  ```
11
11
 
12
12
  Use the starter shortcut only if all these facts are true: the target directory holds no
13
13
  project, its name is a valid `init` project name, and the selected framework is ADK.
14
14
  If all three facts are true, record Angular as the selected frontend. Then run
15
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read starter/clone` before you fetch documentation.
15
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read starter/clone` before you fetch documentation.
16
16
 
17
17
  ## Documentation
18
18
 
@@ -59,7 +59,7 @@ you create or build an Angular project. If the installed version is lower, selec
59
59
  supported version first and use it for every later command in this project.
60
60
 
61
61
  If the pages support the selection, record Angular and these URLs. Then run
62
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read credentials/finalize-plan`.
62
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read credentials/finalize-plan`.
63
63
 
64
64
  If the documentation does not support the selection, or the two version lines do not fit
65
- together, run `npx --prefer-offline --yes copilotkit@4.26.0 onboard read unsupported/no-validated-path`.
65
+ together, run `npx --prefer-offline --yes copilotkit@4.27.0 onboard read unsupported/no-validated-path`.
@@ -6,7 +6,7 @@ This step asks the developer nothing. If the run must wait for the developer any
6
6
  the pause first:
7
7
 
8
8
  ```text
9
- npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
9
+ npx --prefer-offline --yes copilotkit@4.27.0 onboard checkpoint --phase awaiting-developer
10
10
  ```
11
11
 
12
12
  Use the starter shortcut only if the target directory holds no project and its name is
@@ -22,7 +22,7 @@ These TypeScript options have starters: Claude Agent SDK TypeScript, LangGraph T
22
22
  Mastra, and Strands Agents TypeScript. The .NET option is Microsoft Agent Framework .NET.
23
23
 
24
24
  If all shortcut conditions are true, record Next.js as the selected frontend. Then run
25
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read starter/clone` before you fetch documentation.
25
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read starter/clone` before you fetch documentation.
26
26
 
27
27
  ## Documentation
28
28
 
@@ -73,7 +73,7 @@ also sets `outputFileTracingRoot`. Do not set `outputFileTracingRoot` to a
73
73
  different folder. For an existing frontend, name this change in the report.
74
74
 
75
75
  If the page supports the selection, record Next.js and this URL. Then run
76
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read credentials/finalize-plan`.
76
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read credentials/finalize-plan`.
77
77
 
78
78
  If the documentation does not support the selection, run
79
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read unsupported/no-validated-path`.
79
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read unsupported/no-validated-path`.
@@ -8,37 +8,45 @@ If the copied prompt came from a Slack or Teams docs page, use that page as the
8
8
  Either one is final here. Do not ask the frontend question on that run. Do not let an
9
9
  existing frontend take a web route instead: the project keeps the frontend it has, and the
10
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.
11
+ provider to it. A Slack page names Slack. A Teams page names Teams. Tell the developer in
12
+ one sentence that the CopilotKit runtime runs in a long-running Channel host.
12
13
 
13
14
  Every rule below is for a run that named neither.
14
15
 
15
16
  ## Use the recorded frontend
16
17
 
17
- Use the frontend that `setup/questions` recorded. If the project has a frontend, preserve it
18
- and use the matching route below. Do not change application code in this phase. If neither
19
- settles it, ask one question that lists the recommendation and the valid choices: React
20
- SPA, Next.js, Angular, Vue 3, React Native, Slack, and Microsoft Teams.
18
+ Run `npx --prefer-offline --yes copilotkit@4.27.0 onboard setup-answers` and use its `frontend`. It holds
19
+ the answer that `setup/questions` recorded, even after this conversation lost it. If the
20
+ project has a frontend, preserve it and use the matching route below. Do not change
21
+ application code in this phase. If neither settles it, ask one line as the setup message
22
+ does: the recommendation first, in bold, and the alternatives on one `Other:` line, from
23
+ React SPA, Next.js, Angular, Vue 3, React Native, Slack, and Microsoft Teams. Record the answer with
24
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard setup-answers --frontend <name>`.
21
25
 
22
26
  Before you end your turn to wait for the developer, report the pause:
23
27
 
24
28
  ```text
25
- npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
29
+ npx --prefer-offline --yes copilotkit@4.27.0 onboard checkpoint --phase awaiting-developer
26
30
  ```
27
31
 
32
+ When the recorded frontend is not Next.js, tell the developer in one sentence where it runs
33
+ the CopilotKit runtime. Angular runs it in its SSR server. React SPA, Vue 3 and React
34
+ Native run it in a separate process. Next.js runs it in a route handler, so say nothing for it.
35
+
28
36
  Route names are this graph's own bookkeeping. Say what the run is doing in the developer's
29
37
  words instead.
30
38
 
31
39
  Use exactly one matching internal route:
32
40
 
33
- 1. React SPA: `npx --prefer-offline --yes copilotkit@4.26.0 onboard read frontend/react-spa`
34
- 2. Next.js: `npx --prefer-offline --yes copilotkit@4.26.0 onboard read frontend/nextjs`
35
- 3. Angular: `npx --prefer-offline --yes copilotkit@4.26.0 onboard read frontend/angular`
36
- 4. Vue 3: `npx --prefer-offline --yes copilotkit@4.26.0 onboard read frontend/vue`
37
- 5. React Native: `npx --prefer-offline --yes copilotkit@4.26.0 onboard read frontend/react-native`
38
- 6. Slack or Microsoft Teams: `npx --prefer-offline --yes copilotkit@4.26.0 onboard read feature/channels/start`
41
+ 1. React SPA: `npx --prefer-offline --yes copilotkit@4.27.0 onboard read frontend/react-spa`
42
+ 2. Next.js: `npx --prefer-offline --yes copilotkit@4.27.0 onboard read frontend/nextjs`
43
+ 3. Angular: `npx --prefer-offline --yes copilotkit@4.27.0 onboard read frontend/angular`
44
+ 4. Vue 3: `npx --prefer-offline --yes copilotkit@4.27.0 onboard read frontend/vue`
45
+ 5. React Native: `npx --prefer-offline --yes copilotkit@4.27.0 onboard read frontend/react-native`
46
+ 6. Slack or Microsoft Teams: `npx --prefer-offline --yes copilotkit@4.27.0 onboard read feature/channels/start`
39
47
 
40
48
  If they chose Slack or Microsoft Teams, tell that node which one they chose so it
41
49
  does not ask again.
42
50
 
43
51
  If no listed frontend fits, run
44
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read unsupported/no-validated-path`.
52
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read unsupported/no-validated-path`.
@@ -6,7 +6,7 @@ This step asks the developer nothing. If the run must wait for the developer any
6
6
  the pause first:
7
7
 
8
8
  ```text
9
- npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
9
+ npx --prefer-offline --yes copilotkit@4.27.0 onboard checkpoint --phase awaiting-developer
10
10
  ```
11
11
 
12
12
  React Native has no starter. For a target directory that holds no project, build the new
@@ -25,7 +25,7 @@ documents `useRenderTool`, which is React Native's own hook for drawing a tool t
25
25
  already has. That is a different job and needs a tool in the agent.
26
26
 
27
27
  If the pages support the selection, record React Native and these URLs. Then run
28
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read credentials/finalize-plan`.
28
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read credentials/finalize-plan`.
29
29
 
30
30
  If the documentation does not support the selection, run
31
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read unsupported/no-validated-path`.
31
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read unsupported/no-validated-path`.
@@ -6,7 +6,7 @@ This step asks the developer nothing. If the run must wait for the developer any
6
6
  the pause first:
7
7
 
8
8
  ```text
9
- npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
9
+ npx --prefer-offline --yes copilotkit@4.27.0 onboard checkpoint --phase awaiting-developer
10
10
  ```
11
11
 
12
12
  React SPA has no starter. For a target directory that holds no project, build the new
@@ -26,7 +26,7 @@ that import when Vite leaves the package external.
26
26
  - https://docs.copilotkit.ai/react-spa.md
27
27
 
28
28
  If the page supports the selection, record React SPA and this URL. Then run
29
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read credentials/finalize-plan`.
29
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read credentials/finalize-plan`.
30
30
 
31
31
  If the documentation does not support the selection, run
32
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read unsupported/no-validated-path`.
32
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read unsupported/no-validated-path`.
@@ -6,7 +6,7 @@ This step asks the developer nothing. If the run must wait for the developer any
6
6
  the pause first:
7
7
 
8
8
  ```text
9
- npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
9
+ npx --prefer-offline --yes copilotkit@4.27.0 onboard checkpoint --phase awaiting-developer
10
10
  ```
11
11
 
12
12
  Vue 3 has no starter. For a target directory that holds no project, build the new
@@ -26,7 +26,7 @@ page above. Vue has its own `useComponent`, which is not the React package. Take
26
26
  that reference page rather than from a Vue generative-UI guide, which is not published.
27
27
 
28
28
  If the pages support the selection, record Vue 3 and these URLs. Then run
29
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read credentials/finalize-plan`.
29
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read credentials/finalize-plan`.
30
30
 
31
31
  If the documentation does not support the selection, run
32
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read unsupported/no-validated-path`.
32
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read unsupported/no-validated-path`.
@@ -7,13 +7,13 @@ Do not implement the plan yourself. Use the step order in the approved plan.
7
7
  Two rules below stop onboarding. A Learning Container create that fails for a reason other
8
8
  than the container already existing stops it. An implementation subagent that still reports
9
9
  a missing Learning Container after the one restart stops it too. Each ends a run the
10
- developer has already approved a plan for. Name the exact
10
+ developer has already seen a plan for. Name the exact
11
11
  command, id, and error code that stopped you: a report that names only the step cannot be
12
12
  acted on. Send one short report before you stop. The friction command follows the telemetry
13
13
  setting the developer already chose, so it needs no separate question.
14
14
 
15
15
  ```text
16
- npx --prefer-offline --yes copilotkit@4.26.0 onboard friction --phase stop --category <slug> --message "<sentences>"
16
+ npx --prefer-offline --yes copilotkit@4.27.0 onboard friction --phase stop --category <slug> --message "<sentences>"
17
17
  ```
18
18
 
19
19
  `--message` takes one or two sentences: the step you stopped at and what stopped it.
@@ -26,11 +26,15 @@ carries any of those, prints the reason, and exits zero. A refused report is not
26
26
  step. Send the report, then stop. Reporting is not a route change and does not resume the
27
27
  run.
28
28
 
29
+ If the developer replies **stop** while this phase runs, follow the section with that
30
+ name in the plan prompt, `credentials/write-plan`.
31
+
29
32
  ## Departing from the approved plan
30
33
 
31
- The developer approved a written plan and was told that approval was the last question this
32
- run asked them. A step that cannot be built as written is therefore a change to the
33
- only thing they agreed to.
34
+ The developer saw a written plan and answered any risky change in it. The approved plan is
35
+ that plan, with their answer. They were told that no question comes after it unless a step
36
+ cannot be built as written. Such a step is therefore a change to the only thing they agreed
37
+ to.
34
38
 
35
39
  Where you depart from a path, a version, or a step the plan named, record it: what the
36
40
  plan said, what you did instead, and why. Carry that record into the closing summary,
@@ -53,7 +57,7 @@ This prompt pauses for the developer in several places. Before you end your turn
53
57
  for the developer, report the pause:
54
58
 
55
59
  ```text
56
- npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
60
+ npx --prefer-offline --yes copilotkit@4.27.0 onboard checkpoint --phase awaiting-developer
57
61
  ```
58
62
 
59
63
  The existing agent's behavior is never a departure to record and carry on from. It is four
@@ -70,14 +74,15 @@ declines, use the route-out rules below.
70
74
  Before you end your turn to wait for the developer, report the pause:
71
75
 
72
76
  ```text
73
- npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
77
+ npx --prefer-offline --yes copilotkit@4.27.0 onboard checkpoint --phase awaiting-developer
74
78
  ```
75
79
 
76
80
  ## The developer's uncommitted files
77
81
 
78
82
  `onboard start` backed up the developer's work, so nothing is recorded before an edit. The
79
- approved plan lists the files that had uncommitted changes under `Uncommitted files`, and
80
- approving the plan is the developer agreeing to those edits. Any other such file is a file
83
+ approved plan lists the files that had uncommitted changes under `Uncommitted files`. Each
84
+ one is a risky change, so the developer's answer to the plan is their agreement to those
85
+ edits. Any other such file is a file
81
86
  the plan does not name: ask the developer, as above.
82
87
 
83
88
  Never repair, reset, or revert a file the developer changed outside this run. Do not delete,
@@ -92,12 +97,12 @@ or from an environment variable.
92
97
  If the CLI prints `## Stop: this run deleted or moved the developer's work` instead of a
93
98
  step, show the developer the list it printed, and run what they choose:
94
99
  the `onboard restore` command the tripwire stop prints, which names each deleted file, or
95
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard tripwire --continue`. Then read the step again. If
100
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard tripwire --continue`. Then read the step again. If
96
101
  you cannot ask, use the route-out rules below. Before you end your turn to wait for the
97
102
  developer, report the pause:
98
103
 
99
104
  ```text
100
- npx --prefer-offline --yes copilotkit@4.26.0 onboard checkpoint --phase awaiting-developer
105
+ npx --prefer-offline --yes copilotkit@4.27.0 onboard checkpoint --phase awaiting-developer
101
106
  ```
102
107
 
103
108
  ## Implement the plan
@@ -107,11 +112,11 @@ subagent, because the subagent writes a selector that names it. A selector that
107
112
  container the platform does not hold fails thread initialization on every agent run. Where
108
113
  the plan names no container, skip this step.
109
114
 
110
- Run this from the target app directory. The developer approved the id with the plan, so this
111
- is the first point at which it can be created:
115
+ Run this from the target app directory. The developer saw the id in the plan, so this is
116
+ the first point at which it can be created:
112
117
 
113
118
  ```text
114
- npx --prefer-offline --yes copilotkit@4.26.0 learning containers create --id <id> --name <name> --json
119
+ npx --prefer-offline --yes copilotkit@4.27.0 learning containers create --id <id> --name <name> --json
115
120
  ```
116
121
 
117
122
  Pass the id the plan names. Take the name from the selected project's own display name, so
@@ -125,7 +130,7 @@ failure to repair and not a reason to pick a new id. Any other error code: repor
125
130
  stop onboarding, so no run wires a selector to an id the platform does not hold.
126
131
 
127
132
  Spawn one implementation subagent. Tell it to run
128
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read subagent/implement-and-validate` first and
133
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read subagent/implement-and-validate` first and
129
134
  follow the prompt it returns. Tell it to return at once, and say so, if that read is refused
130
135
  or fails, and not to wait for an approval. If it returns that way, stop that subagent. Run
131
136
  the same command yourself, then spawn a fresh subagent with the returned prompt and the same
@@ -133,8 +138,8 @@ handoff. Give it the plan, selected framework, frontend, model, exact target app
133
138
  selected documentation URLs, and the
134
139
  documentation policy recorded during framework selection or conversion planning. On a
135
140
  conversion, also give it the frozen criterion. Give it the paths that had uncommitted
136
- changes when the run started. Give it the developer's answer on the Skills install, so that it runs an
137
- approved install and skips a declined one. Require it to implement every step in plan order
141
+ changes when the run started. Give it the developer's answer on the Skills install, so that it skips a
142
+ declined install. Require it to implement every step in plan order
138
143
  and run the full validation list. Wait for it.
139
144
 
140
145
  One subagent implements the whole plan. Do not divide the work across concurrent subagents,
@@ -160,7 +165,7 @@ Report it and take the failure ending.
160
165
  If the implementation result does not start with `Status: passed`, do not continue to proof.
161
166
 
162
167
  Then run
163
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read proof/round-trip`.
168
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read proof/round-trip`.
164
169
 
165
170
  ## Repair rules
166
171
 
@@ -188,9 +193,9 @@ developer
188
193
  declined a file the plan does not name, or the run cannot ask them about it. A defect in a
189
194
  package this run installed is not a stack CopilotKit does not serve, and a command this run
190
195
  cannot get to pass is not one either. In those cases run
191
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read stopped/run-failed`.
196
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read stopped/run-failed`.
192
197
 
193
198
  A plan with no path to follow takes the unsupported ending: the fix requires changing the
194
199
  developer's existing agent or frontend, or the documentation does not support the plan. In
195
200
  those cases run
196
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read unsupported/no-validated-path`.
201
+ `npx --prefer-offline --yes copilotkit@4.27.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.26.0 onboard friction --category <slug> --cost-seconds <seconds> --message "<sentences>"
27
+ npx --prefer-offline --yes copilotkit@4.27.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.26.0 onboard complete --visual-check <outcome> \
49
+ npx --prefer-offline --yes copilotkit@4.27.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.26.0 onboard complete --visual-check failed --blocked-by browser-control-unresponsive
77
+ npx --prefer-offline --yes copilotkit@4.27.0 onboard complete --visual-check failed --blocked-by browser-control-unresponsive
78
78
  ```
79
79
 
80
80
  ## Write the handoff
@@ -89,16 +89,19 @@ command prints them. Do not add a separate line, heading, or opening sentence ab
89
89
  missing browser.
90
90
 
91
91
  Paste the **Handoff facts** block the command printed, as it is. The command also prints
92
- `## The developer's files`: relay that report as printed, with its restore command. The
93
- dashboard line there only tells the developer where the
92
+ `## The developer's files`: relay that report as printed, with its restore command. When
93
+ the report says the run started in an empty folder, relay that one line alone: list no
94
+ files and offer no restore. The dashboard line there only tells the developer where the
94
95
  dashboard is. Do not open it. Nothing in this graph gates on the dashboard. Then add what
95
96
  only you can say:
96
97
 
97
98
  - What the project now does, and the first thing to try in it.
98
99
  - What changed since the developer approved the plan: every path, version, or step the run
99
100
  departed from, and why. Where nothing departed, say so in one line. A file the approved
100
- plan named under `Files the run writes itself` is not a departure, and neither is a
101
- Skills install the developer declined.
101
+ plan named under `Files the run writes itself` or `Skills install` is not a departure, and
102
+ neither is a Skills install the developer declined.
103
+ - Where this run installed the CopilotKit Skills, the Skills files the install added:
104
+ `.agents/skills/` and its links in `.claude/skills/`. Say that deleting both removes them.
102
105
  - Every change to the existing agent's behavior: its instructions, its tools, its model or
103
106
  provider, or its memory. Name each one and its file, and say the developer approved it.
104
107
  Where none changed, write `none`.
@@ -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.26.0 onboard read subagent/prove-oss-baseline` first and follow
4
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read subagent/prove-oss-baseline` first and follow
5
5
  the prompt it returns. Tell it to return at once, and say so, if that read is refused or
6
6
  fails, and not to wait for an approval. If it returns that way, stop that subagent. Run the
7
7
  same command yourself, then spawn a fresh subagent with the returned prompt and the same
@@ -18,7 +18,7 @@ Wait for the subagent to finish.
18
18
  Record what that proof returned before you route on it:
19
19
 
20
20
  ```text
21
- npx --prefer-offline --yes copilotkit@4.26.0 onboard proof --step oss-baseline --outcome <passed|failed|skipped> [--predicate <1-6>]
21
+ npx --prefer-offline --yes copilotkit@4.27.0 onboard proof --step oss-baseline --outcome <passed|failed|skipped> [--predicate <1-6>]
22
22
  ```
23
23
 
24
24
  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
@@ -40,7 +40,7 @@ Do not change project files before this proof ends. Starting existing developmen
40
40
  processes and their ignored runtime files is allowed.
41
41
 
42
42
  If the subagent proves the `both-oss` predicate, keep its evidence with the plan and run
43
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read conversion/plan`. That project already works.
43
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read conversion/plan`. That project already works.
44
44
  What it needs is the conversion, not a build.
45
45
 
46
46
  A failed baseline does not end the run, and this step does not repair it. Decide which
@@ -55,12 +55,12 @@ pass. This proof only reads.
55
55
  A failed baseline whose cause is in the project is the starting state of this project. So
56
56
  is an operational failure still there after the third attempt. Record the starting state
57
57
  `both-copilotkit-unproved` and run
58
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read credentials/plan`. This prompt is served
58
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read credentials/plan`. This prompt is served
59
59
  whenever a project looks like an OSS integration, so a baseline that did not prove is an
60
60
  ordinary starting state rather than a failure. The build that follows fixes the
61
61
  integration, and `proof/round-trip` proves the result, with its own bounded repair cycle.
62
62
  Keep the failing predicate and the check the subagent named with the plan, and tell the
63
- developer that the existing integration did not prove before you ask for plan approval.
63
+ developer that the existing integration did not prove when you show the plan.
64
64
 
65
65
  Do not record a state that says the CopilotKit integration is absent. This prompt is
66
66
  reached only when the merged findings prove that the integration is there, so `both` is
@@ -75,5 +75,5 @@ operational. Run the proof again, three times in total, then record the starting
75
75
  above and go on. Both causes lead to the same plan.
76
76
 
77
77
  If the proof cannot identify the running process safely, or it exposes a secret, run
78
- `npx --prefer-offline --yes copilotkit@4.26.0 onboard read stopped/run-failed`. Neither means the
78
+ `npx --prefer-offline --yes copilotkit@4.27.0 onboard read stopped/run-failed`. Neither means the
79
79
  project is unsupported: each means this run did not establish what it needed to.