copilotkit 4.9.4 → 4.9.17

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 (47) hide show
  1. package/README.md +13 -12
  2. package/cli-build-info.json +8 -8
  3. package/index.js +1752 -672
  4. package/onboarding/index.json +15 -1
  5. package/onboarding/prompts/authenticate/start.md +129 -65
  6. package/onboarding/prompts/conversion/plan.md +103 -0
  7. package/onboarding/prompts/credentials/finalize-plan.md +97 -122
  8. package/onboarding/prompts/credentials/plan.md +26 -21
  9. package/onboarding/prompts/fallback/best-effort.md +99 -19
  10. package/onboarding/prompts/framework/ag2.md +7 -7
  11. package/onboarding/prompts/framework/agno.md +11 -8
  12. package/onboarding/prompts/framework/built-in.md +2 -2
  13. package/onboarding/prompts/framework/claude-sdk-python.md +7 -7
  14. package/onboarding/prompts/framework/claude-sdk-typescript.md +9 -9
  15. package/onboarding/prompts/framework/crewai-flows.md +27 -11
  16. package/onboarding/prompts/framework/deep-agents.md +8 -7
  17. package/onboarding/prompts/framework/google-adk.md +3 -3
  18. package/onboarding/prompts/framework/langgraph-fastapi.md +3 -3
  19. package/onboarding/prompts/framework/langgraph-python.md +3 -3
  20. package/onboarding/prompts/framework/langgraph-typescript.md +3 -3
  21. package/onboarding/prompts/framework/llamaindex.md +6 -6
  22. package/onboarding/prompts/framework/mastra.md +3 -3
  23. package/onboarding/prompts/framework/ms-agent-dotnet.md +3 -3
  24. package/onboarding/prompts/framework/ms-agent-harness-dotnet.md +7 -9
  25. package/onboarding/prompts/framework/ms-agent-python.md +3 -3
  26. package/onboarding/prompts/framework/pydantic-ai.md +26 -15
  27. package/onboarding/prompts/framework/strands-python.md +7 -6
  28. package/onboarding/prompts/framework/strands-typescript.md +9 -7
  29. package/onboarding/prompts/frontend/angular.md +16 -3
  30. package/onboarding/prompts/frontend/nextjs.md +3 -3
  31. package/onboarding/prompts/frontend/plan.md +6 -6
  32. package/onboarding/prompts/frontend/react-native.md +7 -2
  33. package/onboarding/prompts/frontend/react-spa.md +2 -2
  34. package/onboarding/prompts/frontend/vue.md +7 -2
  35. package/onboarding/prompts/implementation/build-and-validate.md +45 -79
  36. package/onboarding/prompts/proof/complete.md +8 -6
  37. package/onboarding/prompts/proof/oss-baseline.md +15 -50
  38. package/onboarding/prompts/proof/round-trip.md +83 -263
  39. package/onboarding/prompts/starter/clone.md +4 -4
  40. package/onboarding/prompts/subagent/create-plan.md +45 -0
  41. package/onboarding/prompts/subagent/implement-and-validate.md +70 -44
  42. package/onboarding/prompts/subagent/inspect-repository.md +25 -3
  43. package/onboarding/prompts/subagent/prove-oss-baseline.md +2 -1
  44. package/onboarding/prompts/subagent/prove-round-trip.md +143 -34
  45. package/onboarding/prompts/unsupported/no-validated-path.md +10 -2
  46. package/package.json +1 -1
  47. package/release/release-tool.js +1 -1
@@ -1,7 +1,9 @@
1
1
  # Select the Intelligence project and create the plan
2
2
 
3
3
  Use the selected framework, frontend, model vendor, model, documentation URLs, and
4
- repository findings. Ask the developer only for choices that the repository does not
4
+ repository findings. On a conversion these were read from the baseline rather than
5
+ selected, and the conversion prompt recorded them: use those values and ask no framework
6
+ or frontend question here. Ask the developer only for choices that the repository does not
5
7
  show. Do not change application code in this phase. Do not read, show, store, or request
6
8
  a secret value.
7
9
 
@@ -10,6 +12,25 @@ one question. Put the recommendation first, give its evidence in one sentence, a
10
12
  the alternatives short. When project selection is unknown, ask only which Intelligence
11
13
  project to use. Keep final plan approval as its own later question.
12
14
 
15
+ ## If you stop in this phase
16
+
17
+ Several rules below stop onboarding: a refused classification value, an output path that
18
+ overlaps a protected path, a project selection that reports a false field, a failed
19
+ credential check, a model credential nobody can place. Each one ends a run that reached
20
+ project selection and never got a plan, and more runs stop here than anywhere else. Send
21
+ one short report before you stop. Run the feedback command without another developer
22
+ question. The CLI telemetry gate decides whether the report is sent.
23
+
24
+ ```text
25
+ npx --yes copilotkit@4.9.17 onboard feedback
26
+ ```
27
+
28
+ Write at most four lines to standard input: the step you stopped at and what stopped it.
29
+ Send no secrets, source code, logs, or command output. The command refuses a report that
30
+ carries any of those, prints the reason, and exits zero. A refused report is not a failed
31
+ step. Send the report, then stop the way the rule that stopped you says to. Reporting is
32
+ not a route change and does not resume the run.
33
+
13
34
  ## Record the audit cell
14
35
 
15
36
  Use the repository findings and selected choices to record the path before project work
@@ -24,7 +45,7 @@ starts. Choose one starting state: empty, agent-only, frontend-only, both, both-
24
45
  Run this command with the exact selected slugs:
25
46
 
26
47
  ```text
27
- npx --yes copilotkit@4.9.4 onboard classify --starting-state <starting-state> --agent-framework <agent-framework> --frontend <frontend>
48
+ npx --yes copilotkit@4.9.17 onboard classify --starting-state <starting-state> --agent-framework <agent-framework> --frontend <frontend>
28
49
  ```
29
50
 
30
51
  Do not continue if a value is refused. Fix the value from the choices that the earlier
@@ -34,11 +55,14 @@ prompts gave, then run the command again.
34
55
 
35
56
  Use the target app or runtime directory from the repository findings. If a nested app owns
36
57
  the runtime `.env` file, do not default to the repository root.
58
+ Set the environment path to `<target>/.env`.
37
59
 
38
- If valid project fields and a non-empty `INTELLIGENCE_API_KEY` already exist, use this
60
+ If valid project fields and a non-empty `CPK_INTELLIGENCE_API_KEY` already exist, use this
39
61
  rule: Reuse that project without another question. Do not mint another key. The round-trip
40
62
  proof later runs the authenticated Intelligence checks. Record the reused project
41
63
  credentials as unverified in the plan until those checks pass.
64
+ If you reuse a project, set the project-record path to the exact evidence path from the
65
+ project research subagent.
42
66
 
43
67
  If the developer needs a project or another project, do the selection yourself from the
44
68
  target directory. Do not send the developer to another terminal.
@@ -46,7 +70,7 @@ target directory. Do not send the developer to another terminal.
46
70
  Read the choices first:
47
71
 
48
72
  ```text
49
- npx --yes copilotkit@4.9.4 project list --json
73
+ npx --yes copilotkit@4.9.17 project list --json
50
74
  ```
51
75
 
52
76
  With `--json` the payload is the only thing on standard output, so it is safe to parse.
@@ -57,38 +81,53 @@ developer asks.
57
81
  If the developer searches, run:
58
82
 
59
83
  ```text
60
- npx --yes copilotkit@4.9.4 project list --search <query> --json
84
+ npx --yes copilotkit@4.9.17 project list --search <query> --json
61
85
  ```
62
86
 
63
87
  If the developer asks for all projects, show the result of the first list command. Ask
64
88
  which project to use, or ask for a new project name. Do not combine this question with a
65
89
  frontend, framework, model, credential, or plan-approval question.
66
90
 
91
+ Project selection writes the environment path. It updates the nearest project record from
92
+ the target through the repository root. If no project record exists there, it writes one at
93
+ the repository root. If no repository exists, use the target. If the repository root is the
94
+ home directory, use the target.
95
+
96
+ Before project selection, derive the expected project-record path from the repository
97
+ findings. Compare that path and the environment path with the initial protected paths. Use
98
+ the path-segment overlap rule. If either output path overlaps an initial protected path, do
99
+ not run project selection. Report the conflicting path and stop onboarding.
100
+
67
101
  Then record their answer, from the target directory:
68
102
 
69
103
  ```text
70
- npx --yes copilotkit@4.9.4 project select --project <slug-or-id> --json
104
+ npx --yes copilotkit@4.9.17 project select --project <slug-or-id> --json
71
105
  ```
72
106
 
73
107
  Use `--create <name> --json` instead when they want a new project. The two flags cannot be
74
108
  combined. A slug that does not exist fails and lists the real ones, so a typo cannot record
75
109
  a selection that points at nothing.
76
110
 
77
- Read the JSON result. It reports `selected_project_slug`, `api_key_provisioned`,
78
- `project_file_written`, and `environment_file_written` at the top level. The result does
79
- not contain a secret. Report `selected_project_slug` as the project slug that the server
80
- selected or created. Require `api_key_provisioned`, `project_file_written`, and
81
- `environment_file_written` to be true. If one is false, report the error and stop
82
- onboarding. Key provisioning is non-fatal, so the command can persist a selection and
83
- still exit zero with no key. A scaffold with no key looks finished and is not.
111
+ Read the JSON result. It reports `selected_project_slug`, `config_path`,
112
+ `api_key_provisioned`, `project_file_written`, and `environment_file_written` at the top
113
+ level. The result does not contain a secret. Report `selected_project_slug` as the project
114
+ slug that the server selected or created. Require `api_key_provisioned`,
115
+ `project_file_written`, and `environment_file_written` to be true. If one is false, report
116
+ the error and stop onboarding. Key provisioning is non-fatal, so the command can persist a
117
+ selection and still exit zero with no key. A scaffold with no key looks finished and is not.
118
+
119
+ After project selection, set the project-record path to the absolute `config_path` from the
120
+ JSON result. If it differs from the expected project-record path, report both paths and stop
121
+ onboarding.
84
122
 
85
123
  Never print the payload or any secret value.
86
124
 
87
- After a warning-free result, send the research subagent a follow-up check. Require it to
88
- confirm these facts without showing values:
125
+ After project reuse or a warning-free selection result, send the environment
126
+ research subagent a focused follow-up check. Give it the exact target app directory and both
127
+ credential paths. Require it to report these facts without values:
89
128
 
90
- - `.copilotkit/project.json` has non-empty `projectId`, `projectSlug`, and `clerkOrgId` fields.
91
- - `.env` has a non-empty `INTELLIGENCE_API_KEY` entry.
129
+ - The project-record path has non-empty `projectId`, `projectSlug`, and `clerkOrgId` fields.
130
+ - The environment path has a non-empty `CPK_INTELLIGENCE_API_KEY` entry.
92
131
  - If project selection ran, its selected slug matches `projectSlug`.
93
132
  - If project selection ran, the `.env` file was created or its modification time advanced.
94
133
 
@@ -96,6 +135,10 @@ Do not print either file or any secret value. If a check fails, stop onboarding.
96
135
  selection success message alone does not prove key readiness. The CLI cannot prove key scope
97
136
  before an authenticated Intelligence call succeeds.
98
137
 
138
+ Continue only if the environment follow-up result starts with `Status: passed`. Retain the
139
+ project-record path and environment path as the credential setup path list. Do not add them
140
+ to the baseline yet.
141
+
99
142
  ## Where a model credential comes from
100
143
 
101
144
  The plan names the model credential variables. Finding their values is not its job.
@@ -114,6 +157,28 @@ If no answer comes, stop. Do not write a placeholder or an empty value. A scaffo
114
157
  carrying a dummy key looks finished and fails at the first model call, which is worse
115
158
  than stopping here.
116
159
 
160
+ After model credential placement is complete, add each credential setup path to the
161
+ protected path list. Also add each project file that the developer changed for model
162
+ credentials. Record them in the baseline from the target app directory:
163
+
164
+ ```text
165
+ npx --yes copilotkit@4.9.17 onboard protect --path <path>
166
+ ```
167
+
168
+ Pass one `--path` for each. The command captures a digest for each path and never re-reads
169
+ a path the baseline already holds.
170
+
171
+ Then re-capture the files this graph wrote itself. For each path the first capture printed
172
+ as `deferred` that this run has now written, run:
173
+
174
+ ```text
175
+ npx --yes copilotkit@4.9.17 onboard protect --rebaseline --path <path>
176
+ ```
177
+
178
+ From that point they are protected like any other path, so a later step that rewrites
179
+ `.env` and drops its key fails the audit rather than passing it. Continue only if every
180
+ result starts with `Status: passed`.
181
+
117
182
  ## Wire the runtime to Intelligence
118
183
 
119
184
  The key in `.env` does nothing on its own. The runtime reads no environment variable for
@@ -130,10 +195,19 @@ proof subagents:
130
195
 
131
196
  Fetch them together with the pages already selected rather than on their own.
132
197
 
133
- Spawn one planning subagent. Give it the full text of the planning brief at the end of this
134
- prompt, the repository findings, selected framework, frontend, model, credential variable
135
- names, selected documentation URLs, and documentation policy. Wait for the subagent to
136
- finish.
198
+ Spawn one planning subagent. Tell it to run
199
+ `npx --yes copilotkit@4.9.17 onboard read subagent/create-plan` first and follow the prompt
200
+ it returns. If that read fails because the subagent cannot use the shell, stop that subagent.
201
+ Run the same command yourself, then spawn a fresh subagent with the returned prompt and the
202
+ same handoff. Give it the repository findings, selected framework, frontend, model, credential
203
+ variable names, selected documentation URLs, and documentation policy. On a conversion, also
204
+ give it the frozen criterion. Give the planning subagent the updated protected path list.
205
+ Wait for the subagent to finish.
206
+
207
+ Continue only if the planning result starts with `Status: passed`. For `Status: failed`,
208
+ send the result back to the planning subagent for repair, up to three attempts. For
209
+ `Status: blocked`, or a third failed result, use the unsupported route below. Do not show or
210
+ ask for approval of a non-pass plan.
137
211
 
138
212
  Make sure that the plan preserves each part that already exists. The plan must name the
139
213
  credential variables, the Intelligence runtime wiring, the application the project asks
@@ -148,106 +222,7 @@ approve rather than in the implementation that follows. Do not upgrade a depende
148
222
  developer did not approve.
149
223
 
150
224
  If the developer approves the plan, run
151
- `npx --yes copilotkit@4.9.4 onboard read implementation/build-and-validate`.
225
+ `npx --yes copilotkit@4.9.17 onboard read implementation/build-and-validate`.
152
226
 
153
227
  If no exact supported path or documentation URL exists, run
154
- `npx --yes copilotkit@4.9.4 onboard read unsupported/no-validated-path`.
155
-
156
- ## Planning subagent brief
157
-
158
- Everything below the rule is the subagent's prompt. Give it verbatim.
159
-
160
- ---
161
-
162
- # Create the onboarding plan
163
-
164
- Use the selected framework, frontend, model, repository findings, and documentation URLs
165
- from the main coding agent. Follow the documentation policy it gives you.
166
-
167
- Name the application the project asks for, and plan that application. Each documentation
168
- page teaches through one worked example, and that example carries a domain of its own.
169
- The domain belongs to the page. Use the purpose from the repository findings, or the
170
- developer outcome if the repository purpose was unproved. Do not ask for it again. Where
171
- the documentation example differs from that purpose, the project wins.
172
-
173
- Read only inside the project directory. Answer an API question from the documentation
174
- URLs you were given, not from another checkout on this machine.
175
-
176
- List the required credential variable names. Do not read or return credential values.
177
- Preserve each agent or frontend that already exists.
178
-
179
- Plan the runtime to consume the Intelligence credential. The runtime takes an
180
- `intelligence` option holding a client built from the project key. A runtime given a
181
- `runner` option instead is the OSS runtime. It never reads the Intelligence key, and the
182
- Inspector reads the project as locked. The default in-memory OSS runner is ephemeral.
183
- SQLite, custom, or framework persistence can be durable. The two options cannot be
184
- combined. Take the constructor from the connect-your-runtime page. Where a framework
185
- quickstart shows a `runner` option instead, the connect-your-runtime page wins.
186
-
187
- When the starting state is `both-oss`, use its recorded live baseline evidence. Preserve
188
- the working agent, frontend, CopilotKit integration, and OSS behavior. Plan the project
189
- selection, the CopilotKit dependency upgrade below, the Intelligence runtime
190
- configuration, and the authenticated proof needed for the conversion. Preserve the
191
- existing persistence and user-visible request. Do not rebuild a path that already works.
192
-
193
- Preserving the OSS baseline preserves the application, not its CopilotKit dependency
194
- versions. An install that predates the managed platform defaults carries a bundled
195
- reference naming hosts that route nothing, and it requires the platform URLs the same
196
- documentation calls optional. A run that reads that reference configures the runtime
197
- against a dead host, and the failure arrives as an empty-body 404 with no cause named.
198
-
199
- If any `@copilotkit/*` dependency is below 1.64.0, plan to upgrade every `@copilotkit/*`
200
- dependency to its latest published version. Packages that share a version line must end
201
- on the same version. Never force a package onto a version line it does not publish on.
202
- Resolve each latest version at run time rather than from a remembered version number.
203
- Where every `@copilotkit/*` dependency already meets that floor, plan no dependency
204
- change.
205
-
206
- Plan the upgrade as its own step before the Intelligence runtime wiring, and plan to
207
- re-run the recorded baseline checks immediately after it. Name the revert: restore the
208
- manifest and lockfile to their recorded state and stop, rather than wiring Intelligence
209
- onto a baseline the upgrade broke.
210
-
211
- Where the SDK requires an application-level value that the repository cannot supply, such
212
- as an end-user identity for threads, use one clearly marked local placeholder and name what
213
- production requires instead. Do not stop onboarding to ask the developer for it.
214
-
215
- Check whether the existing agent performs unattended side effects, such as paging, sending
216
- notifications, writing to an external system, or creating tickets. If it does, the new
217
- conversational surface must not trigger them. Wrap only the reasoning steps, or require an
218
- explicit developer confirmation before the side effect can run. Name each side effect you
219
- found and state how the plan avoids it.
220
-
221
- If the value of the journey depends on data the project already holds, name that data,
222
- name where it lives, and name how it reaches the agent. Rendering a list in the DOM does
223
- not give the agent access to it. An agent wired without the page's data answers from
224
- entities it invents, and the answer looks correct. Take the frontend-context step from
225
- the selected documentation. Where no selected page documents it for this framework or
226
- frontend, record that as a documentation gap rather than guessing the API.
227
-
228
- Where that data exists, name the entities the proof compares against: the ids, names, or
229
- records the project holds and the answer has to reference. Where the outcome references
230
- no project data, say so in the plan, so that the proof asks for evidence this journey can
231
- produce.
232
-
233
- Create one plan for implementation, validation, and proof. Name each file or area that can
234
- change. Name the commands that can validate the result.
235
- Name the commands or user path that prove a real generative-UI round trip.
236
-
237
- Keep a production build out of the validation commands. A type check plus the real round
238
- trip is the proof, and the round trip runs in development mode. Name the production build
239
- as a follow-up for the developer instead. Never raise a bundle budget or relax a lint rule
240
- to make a build pass during onboarding.
241
-
242
- The type check runs against the project's own configuration. If the project has no
243
- type-check command, add one that uses the configuration the project already has.
244
- Do not add compiler strictness the project did not have. Nothing later in the run is
245
- allowed to weaken type safety, so a stricter gate named here is one the run cannot get
246
- back out of.
247
-
248
- Gather what you need in as few commands as possible. Combine independent reads into one
249
- command rather than running them one at a time. Split a command only when its result decides
250
- what you run next.
251
-
252
- Return the plan, the URLs that you read, and each documentation gap. Stop after you return
253
- the findings to the main coding agent.
228
+ `npx --yes copilotkit@4.9.17 onboard read unsupported/no-validated-path`.
@@ -4,7 +4,7 @@ Use the repository findings to select the agent framework. Ask the developer onl
4
4
  choices that the repository does not show. Do not change application code in this phase.
5
5
  Do not read, show, store, or request a secret value.
6
6
 
7
- Keep `INTELLIGENCE_API_KEY` separate from every model-vendor credential. Do not read,
7
+ Keep `CPK_INTELLIGENCE_API_KEY` separate from every model-vendor credential. Do not read,
8
8
  show, store, or copy either credential.
9
9
 
10
10
  This documentation policy applies to every framework and frontend route below. Deduplicate
@@ -46,6 +46,11 @@ These are the agent frameworks and their default vendors:
46
46
  | Strands Agents (Python) | OpenAI |
47
47
  | Strands Agents (TypeScript) | OpenAI |
48
48
 
49
+ "Project-defined" is not a missing default. It means that framework's own route settles
50
+ the vendor with the developer: it keeps the one the repository already uses, and asks a
51
+ single question when the repository shows none. Do not read it as a framework this release
52
+ cannot onboard.
53
+
49
54
  If the project already has an agent in a listed framework, preserve that framework and
50
55
  its model setup. Ask only about choices that remain unknown.
51
56
 
@@ -63,26 +68,26 @@ another framework. Do not show the internal route.
63
68
 
64
69
  Use exactly one matching internal route:
65
70
 
66
- 1. AG2: `npx --yes copilotkit@4.9.4 onboard read framework/ag2`
67
- 2. Agno: `npx --yes copilotkit@4.9.4 onboard read framework/agno`
68
- 3. Built-in CopilotKit agent: `npx --yes copilotkit@4.9.4 onboard read framework/built-in`
69
- 4. Claude Agent SDK Python: `npx --yes copilotkit@4.9.4 onboard read framework/claude-sdk-python`
70
- 5. Claude Agent SDK TypeScript: `npx --yes copilotkit@4.9.4 onboard read framework/claude-sdk-typescript`
71
- 6. CrewAI Flows: `npx --yes copilotkit@4.9.4 onboard read framework/crewai-flows`
72
- 7. Deep Agents: `npx --yes copilotkit@4.9.4 onboard read framework/deep-agents`
73
- 8. LangGraph Python: `npx --yes copilotkit@4.9.4 onboard read framework/langgraph-python`
74
- 9. LangGraph FastAPI: `npx --yes copilotkit@4.9.4 onboard read framework/langgraph-fastapi`
75
- 10. LangGraph TypeScript: `npx --yes copilotkit@4.9.4 onboard read framework/langgraph-typescript`
76
- 11. LlamaIndex: `npx --yes copilotkit@4.9.4 onboard read framework/llamaindex`
77
- 12. ADK: `npx --yes copilotkit@4.9.4 onboard read framework/google-adk`
78
- 13. Microsoft Agent Framework Python: `npx --yes copilotkit@4.9.4 onboard read framework/ms-agent-python`
79
- 14. Microsoft Agent Framework .NET: `npx --yes copilotkit@4.9.4 onboard read framework/ms-agent-dotnet`
80
- 15. Mastra: `npx --yes copilotkit@4.9.4 onboard read framework/mastra`
81
- 16. MS Agent Harness .NET: `npx --yes copilotkit@4.9.4 onboard read framework/ms-agent-harness-dotnet`
82
- 17. Pydantic AI: `npx --yes copilotkit@4.9.4 onboard read framework/pydantic-ai`
83
- 18. Strands Agents Python: `npx --yes copilotkit@4.9.4 onboard read framework/strands-python`
84
- 19. Strands Agents TypeScript: `npx --yes copilotkit@4.9.4 onboard read framework/strands-typescript`
71
+ 1. AG2: `npx --yes copilotkit@4.9.17 onboard read framework/ag2`
72
+ 2. Agno: `npx --yes copilotkit@4.9.17 onboard read framework/agno`
73
+ 3. Built-in CopilotKit agent: `npx --yes copilotkit@4.9.17 onboard read framework/built-in`
74
+ 4. Claude Agent SDK Python: `npx --yes copilotkit@4.9.17 onboard read framework/claude-sdk-python`
75
+ 5. Claude Agent SDK TypeScript: `npx --yes copilotkit@4.9.17 onboard read framework/claude-sdk-typescript`
76
+ 6. CrewAI Flows: `npx --yes copilotkit@4.9.17 onboard read framework/crewai-flows`
77
+ 7. Deep Agents: `npx --yes copilotkit@4.9.17 onboard read framework/deep-agents`
78
+ 8. LangGraph Python: `npx --yes copilotkit@4.9.17 onboard read framework/langgraph-python`
79
+ 9. LangGraph FastAPI: `npx --yes copilotkit@4.9.17 onboard read framework/langgraph-fastapi`
80
+ 10. LangGraph TypeScript: `npx --yes copilotkit@4.9.17 onboard read framework/langgraph-typescript`
81
+ 11. LlamaIndex: `npx --yes copilotkit@4.9.17 onboard read framework/llamaindex`
82
+ 12. ADK: `npx --yes copilotkit@4.9.17 onboard read framework/google-adk`
83
+ 13. Microsoft Agent Framework Python: `npx --yes copilotkit@4.9.17 onboard read framework/ms-agent-python`
84
+ 14. Microsoft Agent Framework .NET: `npx --yes copilotkit@4.9.17 onboard read framework/ms-agent-dotnet`
85
+ 15. Mastra: `npx --yes copilotkit@4.9.17 onboard read framework/mastra`
86
+ 16. MS Agent Harness .NET: `npx --yes copilotkit@4.9.17 onboard read framework/ms-agent-harness-dotnet`
87
+ 17. Pydantic AI: `npx --yes copilotkit@4.9.17 onboard read framework/pydantic-ai`
88
+ 18. Strands Agents Python: `npx --yes copilotkit@4.9.17 onboard read framework/strands-python`
89
+ 19. Strands Agents TypeScript: `npx --yes copilotkit@4.9.17 onboard read framework/strands-typescript`
85
90
 
86
91
  If the project has an agent in another framework, or no listed framework fits, keep the
87
92
  developer's current agent and run
88
- `npx --yes copilotkit@4.9.4 onboard read unsupported/no-validated-path`.
93
+ `npx --yes copilotkit@4.9.17 onboard read unsupported/no-validated-path`.
@@ -3,37 +3,117 @@
3
3
  Work only in the target project directory. Do not read, show, store, or request a secret
4
4
  value.
5
5
 
6
- Spawn one implementation subagent. Tell it which plan steps lack direct documentation.
7
- Give it the approved plan, repository findings, target project directory, and all official
8
- documentation that you fetched for the plan.
6
+ This fallback contains unproved steps. Use the approved plan in step order.
9
7
 
10
- Tell the subagent to preserve the existing project. It must not invent a CopilotKit API.
11
- It can combine compatible APIs from different official pages when one page omits the
12
- selected framework and frontend combination.
8
+ ## If you stop in this fallback
13
9
 
14
- Tell the implementation subagent to run the approved implementation and validation steps.
15
- Send a failure in new work back to it at most three times. Stop if a fix requires changes
16
- to the developer's existing agent or frontend.
10
+ Several rules below stop onboarding: a blocked or third failed implementation result, a
11
+ changed protected path, a blocked or third failed proof, a fix that needs changes to the
12
+ existing agent or frontend. Send one short report before you stop. Run the feedback
13
+ command without another developer question. The CLI telemetry gate decides whether the
14
+ report is sent.
17
15
 
18
- After validation passes, use this rule: Spawn one proof subagent. Give it the approved
19
- plan, validation evidence, target project directory, all official documentation that you
20
- fetched for the plan, and recorded browser or device control. Tell it to prove the runtime,
21
- agent round trip, and real frontend path with the same proof rules from the approved plan.
22
- Keep the development servers running after proof.
16
+ ```text
17
+ npx --yes copilotkit@4.9.17 onboard feedback
18
+ ```
19
+
20
+ Write at most four lines to standard input: the step you stopped at and what stopped it.
21
+ Send no secrets, source code, logs, or command output. The command refuses a report that
22
+ carries any of those, prints the reason, and exits zero. A refused report is not a failed
23
+ step. Send the report, then stop the way the rule that stopped you says to. This fallback
24
+ runs because the documentation already fell short once, so a stop inside it is the second
25
+ gap in the same run and neither is recorded anywhere else.
26
+
27
+ Spawn one implementation subagent. Give it the approved plan, repository findings, and
28
+ target project directory. Tell it which steps lack direct documentation. Give it all
29
+ official documentation that you fetched for the plan. Give it the protected path list.
30
+ Give it these rules:
31
+
32
+ - Preserve the existing project.
33
+ - Change only the paths the approved plan names.
34
+ - Do not change a protected path or an overlapping path.
35
+ - Do not invent a CopilotKit API.
36
+ - Do not read, show, store, or return secret values.
37
+
38
+ When one page omits the selected framework and frontend combination, combine compatible APIs
39
+ from different official pages. Tell it to run every implementation and validation step in
40
+ plan order, and to run the full validation list.
41
+
42
+ Give it this result format: Start with `Status: passed`, `Status: failed`, or
43
+ `Status: blocked`.
44
+
45
+ Wait for the implementation subagent to finish.
46
+
47
+ Use these rules for the implementation result:
48
+
49
+ 1. For `Status: passed`, keep the result.
50
+ 2. For `Status: failed`, retry the same subagent with its evidence. Make at most three attempts.
51
+ 3. For `Status: blocked`, stop onboarding. Report the blocker.
52
+
53
+ After a third failed result, stop. When a fix needs changes to the existing agent or frontend,
54
+ stop.
55
+
56
+ Use these rules for every protected-path check in this fallback:
57
+
58
+ - Run `npx --yes copilotkit@4.9.17 onboard audit` from the target app directory.
59
+ - If a result starts with `Status: blocked`, stop onboarding and report the printed reason.
60
+ It proved nothing changed, so do not report a preservation failure.
61
+ - If a result reports a changed protected path, stop onboarding.
62
+ - Never repair, reset, or revert a protected path.
63
+
64
+ Run the protected-path check now. Apply the protected-path rules. Continue only when the
65
+ audit starts with `Status: passed`.
66
+
67
+ After validation passes, use this rule: Spawn one proof subagent. Give it the complete ordered
68
+ proof rules from the approved plan, validation evidence, project directory, all official
69
+ documentation that you fetched for the plan, and recorded browser or device control. Require
70
+ the runtime, agent round trip, and real frontend proof. Keep the development servers running.
71
+ Give the proof subagent the protected path list.
72
+ Tell the proof subagent not to write a path that overlaps a protected path.
73
+ Tell it not to read, show, store, or return secret values. During proof, do not edit source
74
+ files, configuration files, dependencies, or tracked files. Allow only operational repairs
75
+ to project-owned processes, ports, and request options.
76
+ Require this result format: Start with `Status: passed`, `Status: failed`, or `Status: blocked`.
77
+ Tell it to use `Status: passed` only when the proof attempt completed with `performed`,
78
+ `skipped-no-browser-tool`, or `skipped-no-device`. Use `Status: failed` for any failed proof
79
+ step. Use `Status: blocked` when a safety or access limit stops the attempt before a surface
80
+ outcome.
81
+ Wait for the proof subagent to finish. For `Status: blocked`, stop onboarding and report the
82
+ blocker. For `Status: failed`, classify the cause before retrying.
83
+
84
+ Retry the proof worker only for a project-owned process, port, or request-option failure.
85
+ Give it the failure evidence and wait after each attempt. Stop after three failed attempts.
86
+
87
+ For a source, configuration, dependency, or tracked-file defect, send the evidence to the
88
+ implementation subagent. Require the repair and full validation. Wait for the repair to
89
+ finish. Continue only if its result starts with `Status: passed`. For a failed repair,
90
+ retry that worker with its evidence, up to three attempts. For a blocked or third failed
91
+ repair, stop onboarding and report the blocker. Run the protected-path check after the repair
92
+ passes. Apply the protected-path rules before you continue. After repair, full validation,
93
+ and the protected-path check pass, spawn a fresh proof subagent. Give it the full original
94
+ proof handoff, failed proof evidence, and new validation evidence. The handoff includes the
95
+ protected path list. Wait for the fresh proof subagent and apply the same proof-result rules.
96
+ Continue only if the proof result starts with `Status: passed`.
97
+
98
+ Run the protected-path check again after the final proof result passes. Apply the
99
+ protected-path rules. Continue only if the audit starts with `Status: passed`.
23
100
 
24
- Do not block core proof on CopilotKit Skills or MCP configuration. Try these tools after
25
- the application passes proof. Report each tool result separately.
101
+ Do not block core proof on CopilotKit Skills or MCP configuration. Tell the developer that
102
+ the skills install writes a `.agents/skills` directory and `.claude/skills` links into the
103
+ working tree before you run it, because both show up in `git status` and this run cannot
104
+ know whether the project keeps them in version control. Try these tools after the
105
+ application passes proof. Report each tool result separately from the proof result.
26
106
 
27
107
  Report the documentation gap and each assumption with the proof evidence. Do not claim
28
108
  that the selected documentation proved an inferred step.
29
109
 
30
- When the proof is complete, run `npx --yes copilotkit@4.9.4 onboard complete`, carrying the
110
+ When the proof is complete, run `npx --yes copilotkit@4.9.17 onboard complete`, carrying the
31
111
  surface-check result the proof subagent returned. Pass exactly one flag, matching this
32
112
  journey's surface:
33
113
 
34
114
  ```text
35
- npx --yes copilotkit@4.9.4 onboard complete --visual-check <outcome>
36
- npx --yes copilotkit@4.9.4 onboard complete --device-check <outcome>
115
+ npx --yes copilotkit@4.9.17 onboard complete --visual-check <outcome>
116
+ npx --yes copilotkit@4.9.17 onboard complete --device-check <outcome>
37
117
  ```
38
118
 
39
119
  `--visual-check` is for a web frontend and takes `performed`, `skipped-no-browser-tool`, or
@@ -10,7 +10,7 @@ Name the default model credential `OPENAI_API_KEY`.
10
10
 
11
11
  - https://docs.copilotkit.ai/ag2/quickstart.md
12
12
  - https://docs.copilotkit.ai/ag2/inspector.md
13
- - https://docs.copilotkit.ai/ag2/generative-ui/a2ui/fixed-schema.md
13
+ - https://docs.copilotkit.ai/ag2/generative-ui/tool-based.md
14
14
  - https://docs.copilotkit.ai/ag2/readables.md
15
15
 
16
16
  The documentation scope is `ag2`. Use only the Python examples from these pages.
@@ -19,19 +19,19 @@ repository with `uv sync`. It does not name a dependency list for an existing pr
19
19
  Do not replace the project's dependency manifest with a guessed list, and do not change
20
20
  an existing endpoint to the quickstart's `/weather` sample route.
21
21
 
22
- The fixed-schema page has no AG2 backend schema-loading, render-operations, or runtime
23
- setup snippet. Do not invent a fixed-schema A2UI backend setup. If the requested work
24
- needs that missing setup, run the unsupported route below.
22
+ A2UI is not on this path. If the developer asks for it, say first that its page has no AG2
23
+ backend schema-loading, render-operations, or runtime setup snippet, so there is nothing to
24
+ follow for the backend half.
25
25
 
26
26
  The Readables page includes the AG2 backend context path. Use its `ContextVariables` and
27
27
  `AGUIStream` examples when the project needs frontend context. Do not substitute another
28
28
  framework's context setup.
29
29
 
30
30
  Record the selected framework, vendor, model, required credential variable names, these
31
- URLs, and the fixed-schema documentation gap.
31
+ URLs, and the A2UI documentation gap.
32
32
 
33
33
  If the pages support the selection, run
34
- `npx --yes copilotkit@4.9.4 onboard read frontend/plan`.
34
+ `npx --yes copilotkit@4.9.17 onboard read frontend/plan`.
35
35
 
36
36
  If the documentation does not support the selection, run
37
- `npx --yes copilotkit@4.9.4 onboard read unsupported/no-validated-path`.
37
+ `npx --yes copilotkit@4.9.17 onboard read unsupported/no-validated-path`.
@@ -10,7 +10,7 @@ Name the default model credential `OPENAI_API_KEY`.
10
10
 
11
11
  - https://docs.copilotkit.ai/agno/quickstart.md
12
12
  - https://docs.copilotkit.ai/agno/inspector.md
13
- - https://docs.copilotkit.ai/agno/generative-ui/a2ui/fixed-schema.md
13
+ - https://docs.copilotkit.ai/agno/generative-ui/tool-based.md
14
14
  - https://docs.copilotkit.ai/agno/shared-state/agent-readonly.md
15
15
 
16
16
  The documentation scope is `agno`. Use only the Python agent examples from these pages.
@@ -22,16 +22,19 @@ new agent. For a new agent, install the documented Python dependencies
22
22
  `@ag-ui/agno` targets `/agui`. Do not replace that adapter with a generic agent or change
23
23
  the endpoint without repository evidence.
24
24
 
25
- The fixed-schema page has no Agno backend schema-loading, render-operations, or runtime
26
- setup snippet. The agent-readonly page does not bundle its Agno backend context setup.
27
- Do not invent either missing backend setup. If the requested work needs one of those
28
- setups and the project does not already have it, run the unsupported route below.
25
+ The agent-readonly page does not bundle its Agno backend context setup. Do not invent it.
26
+ If the requested work needs that setup and the project does not already have it, run the
27
+ unsupported route below.
28
+
29
+ A2UI is not on this path. If the developer asks for it, say first that its page has no Agno
30
+ backend schema-loading, render-operations, or runtime setup snippet, so there is nothing to
31
+ follow for the backend half.
29
32
 
30
33
  Record the selected framework, vendor, model, required credential variable names, these
31
- URLs, the documented dependencies and adapter, and both documentation gaps.
34
+ URLs, the documented dependencies and adapter, and the context documentation gap.
32
35
 
33
36
  If the pages support the selection, run
34
- `npx --yes copilotkit@4.9.4 onboard read frontend/plan`.
37
+ `npx --yes copilotkit@4.9.17 onboard read frontend/plan`.
35
38
 
36
39
  If the documentation does not support the selection, run
37
- `npx --yes copilotkit@4.9.4 onboard read unsupported/no-validated-path`.
40
+ `npx --yes copilotkit@4.9.17 onboard read unsupported/no-validated-path`.
@@ -27,7 +27,7 @@ Record the selected framework, vendor, model, required credential variable names
27
27
  these URLs.
28
28
 
29
29
  If the pages support the selection, run
30
- `npx --yes copilotkit@4.9.4 onboard read frontend/plan`.
30
+ `npx --yes copilotkit@4.9.17 onboard read frontend/plan`.
31
31
 
32
32
  If the documentation does not support the selection, run
33
- `npx --yes copilotkit@4.9.4 onboard read unsupported/no-validated-path`.
33
+ `npx --yes copilotkit@4.9.17 onboard read unsupported/no-validated-path`.
@@ -11,7 +11,7 @@ Name the model credential `ANTHROPIC_API_KEY`. The documented model variable is
11
11
 
12
12
  - https://docs.copilotkit.ai/claude-sdk-python/quickstart.md
13
13
  - https://docs.copilotkit.ai/claude-sdk-python/inspector.md
14
- - https://docs.copilotkit.ai/claude-sdk-python/generative-ui/a2ui/fixed-schema.md
14
+ - https://docs.copilotkit.ai/claude-sdk-python/generative-ui/tool-based.md
15
15
  - https://docs.copilotkit.ai/reference/v2/hooks/useAgentContext.md
16
16
 
17
17
  The documentation scope is `claude-sdk-python`. For an existing agent, install the exact
@@ -21,19 +21,19 @@ Expose the agent through FastAPI and use `ClaudeAgentAdapter` from `ag_ui_claude
21
21
  Keep one long-lived adapter at module scope. Register the remote endpoint in Copilot Runtime
22
22
  with `HttpAgent`. Do not replace this transport with a different Claude or AG-UI adapter.
23
23
 
24
- For fixed-schema A2UI, keep the tool in the agent. Set `injectA2UITool` to `false` in the
25
- runtime. The documented Python setup does not support `action_handlers` on
26
- `a2ui.render`. Do not add them or claim that the fixed-schema button callback works.
24
+ A2UI is not on this path. If the developer asks for it, say first that the documented
25
+ Python setup does not support `action_handlers` on `a2ui.render`, so its button callback
26
+ cannot return a decision to the agent.
27
27
 
28
28
  No Claude Agent SDK Python agent-app-context Markdown page is available. The reference
29
29
  page above documents the frontend hook only. Do not invent the missing agent-side context
30
30
  setup. If the requested work needs that setup, run the unsupported route below.
31
31
 
32
32
  Record the selected framework, vendor, model, required credential variable names, these
33
- URLs, and the context and A2UI limits.
33
+ URLs, and the context limit.
34
34
 
35
35
  If the pages support the selection, run
36
- `npx --yes copilotkit@4.9.4 onboard read frontend/plan`.
36
+ `npx --yes copilotkit@4.9.17 onboard read frontend/plan`.
37
37
 
38
38
  If the documentation does not support the selection, run
39
- `npx --yes copilotkit@4.9.4 onboard read unsupported/no-validated-path`.
39
+ `npx --yes copilotkit@4.9.17 onboard read unsupported/no-validated-path`.