copilotkit 4.9.24 → 4.9.37

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 (46) hide show
  1. package/README.md +147 -54
  2. package/cli-build-info.json +8 -8
  3. package/index.js +5170 -3291
  4. package/onboarding/index.json +1 -1
  5. package/onboarding/prompts/authenticate/start.md +36 -8
  6. package/onboarding/prompts/conversion/plan.md +15 -6
  7. package/onboarding/prompts/credentials/finalize-plan.md +39 -26
  8. package/onboarding/prompts/credentials/plan.md +20 -20
  9. package/onboarding/prompts/fallback/best-effort.md +15 -7
  10. package/onboarding/prompts/framework/ag2.md +2 -2
  11. package/onboarding/prompts/framework/agno.md +2 -2
  12. package/onboarding/prompts/framework/built-in.md +2 -2
  13. package/onboarding/prompts/framework/claude-sdk-python.md +2 -2
  14. package/onboarding/prompts/framework/claude-sdk-typescript.md +2 -2
  15. package/onboarding/prompts/framework/crewai-flows.md +2 -2
  16. package/onboarding/prompts/framework/deep-agents.md +2 -2
  17. package/onboarding/prompts/framework/google-adk.md +2 -2
  18. package/onboarding/prompts/framework/langgraph-fastapi.md +2 -2
  19. package/onboarding/prompts/framework/langgraph-python.md +2 -2
  20. package/onboarding/prompts/framework/langgraph-typescript.md +2 -2
  21. package/onboarding/prompts/framework/llamaindex.md +2 -2
  22. package/onboarding/prompts/framework/mastra.md +2 -2
  23. package/onboarding/prompts/framework/ms-agent-dotnet.md +2 -2
  24. package/onboarding/prompts/framework/ms-agent-harness-dotnet.md +2 -2
  25. package/onboarding/prompts/framework/ms-agent-python.md +2 -2
  26. package/onboarding/prompts/framework/pydantic-ai.md +2 -2
  27. package/onboarding/prompts/framework/strands-python.md +2 -2
  28. package/onboarding/prompts/framework/strands-typescript.md +2 -2
  29. package/onboarding/prompts/frontend/angular.md +32 -4
  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 +2 -2
  33. package/onboarding/prompts/frontend/react-spa.md +2 -2
  34. package/onboarding/prompts/frontend/vue.md +2 -2
  35. package/onboarding/prompts/implementation/build-and-validate.md +45 -11
  36. package/onboarding/prompts/proof/complete.md +22 -6
  37. package/onboarding/prompts/proof/oss-baseline.md +30 -6
  38. package/onboarding/prompts/proof/round-trip.md +40 -9
  39. package/onboarding/prompts/starter/clone.md +11 -5
  40. package/onboarding/prompts/subagent/create-plan.md +23 -1
  41. package/onboarding/prompts/subagent/implement-and-validate.md +30 -1
  42. package/onboarding/prompts/subagent/prove-oss-baseline.md +21 -9
  43. package/onboarding/prompts/subagent/prove-round-trip.md +32 -16
  44. package/onboarding/prompts/unsupported/no-validated-path.md +6 -2
  45. package/package.json +1 -1
  46. package/release/release-tool.js +15 -1
@@ -120,15 +120,25 @@ IPv6 only, so an IPv4 literal fails against the correct port.
120
120
  ## Step 4 -- Check the wiring
121
121
 
122
122
  With both running, check the wiring in one command before you open a browser:
123
- `npx --yes copilotkit@4.9.24 verify --json`. Add `--runtime-url` when the runtime is not at
124
- `http://localhost:3000/api/copilotkit`. Read the individual checks rather than the summary
125
- alone: a check reported `undetermined` did not run, and that is not a pass. Repair a failed
126
- check only within the limits above. Otherwise, return the check and its evidence before the
127
- browser.
123
+ `npx --yes copilotkit@4.9.37 verify --json`. It reads the port from this project, so a
124
+ non-default port needs no flag. The payload reports `runtimeUrl` and `runtimeUrlSource`. A
125
+ `runtimeUrlSource` of `default` means nothing in the project named a port, so pass
126
+ `--runtime-url` with the URL from step 1 in that case. Read the individual checks rather than
127
+ the summary alone: a check reported `undetermined` did not run, and that is not a pass.
128
+ Repair a failed check only within the limits above. Otherwise, return the check and its
129
+ evidence before the browser.
128
130
 
129
131
  Treat `intelligence_consumed` as the check that matters most here. It proves that the runtime
130
132
  used the Intelligence credential. `api_key_authenticates` proves only that the key is valid.
131
133
 
134
+ `api_key_loadable_by_app` fails when the key is in a file the application's own process
135
+ will not read. `verify` searches upward for the credential and a framework's env loader
136
+ does not, so a key at the repository root is invisible to an app in a subdirectory. The
137
+ check names the file to write instead. Write the key there, or run
138
+ `npx --yes copilotkit@4.9.37 project select` from the app directory. Do not link,
139
+ copy, or symlink the file to work around it, and do not treat the credential as missing:
140
+ the check above already reported that it exists.
141
+
132
142
  `intelligence_thread_routes` fails when a licensed runtime serves no thread routes. A handler
133
143
  mounted `mode: "single-route"` is the usual cause. Return it for implementation to remove the
134
144
  option and use a catch-all route. Do not edit it. If the check is `undetermined` because no
@@ -136,7 +146,7 @@ thread-endpoint state exists, the runtime predates the field. Record that and co
136
146
 
137
147
  ## Step 5 -- Prove that the agent runs
138
148
 
139
- Run `npx --yes copilotkit@4.9.24 verify --round-trip --json`. It sends one request through
149
+ Run `npx --yes copilotkit@4.9.37 verify --round-trip --json`. It sends one request through
140
150
  the runtime and reads the answer back from the thread, so it separates an agent that is
141
151
  configured from an agent that works. Use `--agent <id>` when the runtime declares more
142
152
  than one. If it reports `user-not-identified`, this project's `identifyUser` reads a
@@ -213,7 +223,7 @@ For a recorded `both-oss` starting state, this step has no component to render.
213
223
  same request the baseline recorded, require the same kind of user-visible result the
214
224
  baseline produced, and require that the thread for that request is listed in the drawer.
215
225
  Where this journey's frontend framework ships no threads drawer -- React Native --, prove
216
- that thread with `npx --yes copilotkit@4.9.24 verify --round-trip`, which reads the
226
+ that thread with `npx --yes copilotkit@4.9.37 verify --round-trip`, which reads the
217
227
  answer back off the thread and needs no browser. Record which of the two you proved.
218
228
 
219
229
  Use the surface control the main coding agent recorded for your environment. It either had
@@ -318,15 +328,21 @@ Return the cause and its evidence. Do not edit it during proof.
318
328
  Run this step only for a recorded `both-oss` starting state. Compare the final round trip
319
329
  with the recorded OSS baseline against the criterion the conversion prompt froze. The same
320
330
  frontend request must still reach the same agent and produce the same kind of user-visible
321
- result. The runtime must now report `licenseStatus`, and the authenticated Intelligence
322
- checks must pass. A thread for that request must be persisted and visible. Record both
323
- before and after evidence, and record that the criterion was `conversion-v1`.
324
-
325
- `licenseStatus` reports `unknown` while the runtime entitlement lookup for this project
326
- has not resolved yet. That value is transient rather than a failure, and the drawer
327
- renders its locked view for as long as it stands. Re-read `/info` and re-open the drawer
328
- before you judge either one. Criterion 4 requires `licenseStatus` to be present, and a
329
- present `unknown` meets it.
331
+ result. The runtime must now report `runtimeEntitlements`, and the authenticated
332
+ Intelligence checks must pass. A thread for that request must be persisted and
333
+ visible. Record both before and after evidence, and record that the criterion was
334
+ `conversion-v1`.
335
+
336
+ `runtimeEntitlements` reports a `status` other than `ready` with a retryable error while
337
+ the entitlement lookup for this project has not resolved yet. That state is transient
338
+ rather than a failure, and the drawer renders its locked view for as long as it stands.
339
+ Re-read `/info` and re-open the drawer before you judge either one. Criterion 4 requires
340
+ `runtimeEntitlements` to be present, and a present unresolved lookup meets it.
341
+
342
+ A runtime that reports `licenseStatus` and no `runtimeEntitlements` is below
343
+ `@copilotkit/runtime` 1.70.0, which is this conversion's dependency floor. Criterion 4 is
344
+ not met by the older field. Record the floor as unmet and say which dependency is below
345
+ it, rather than reading the compatibility field as a pass.
330
346
 
331
347
  For every other starting state, record Step 8 as not applicable.
332
348
 
@@ -6,6 +6,10 @@ Explain the exact step that failed. State whether authentication, project select
6
6
  credentials, the journey, a documentation URL, implementation, validation, or the round
7
7
  trip caused the route change. Do not say a path works when this release does not support it.
8
8
 
9
+ If a protected path stopped this run, name that path and how it changed, in the words the
10
+ audit printed. A report that says only that protected files changed cannot be acted on:
11
+ nobody reading it can tell which file moved, or whether this run or the developer moved it.
12
+
9
13
  Stop onboarding without making more repository changes by default.
10
14
 
11
15
  The documentation-gap exception applies only before implementation starts. If implementation,
@@ -26,13 +30,13 @@ Before you show the best-effort plan, require this complete packet:
26
30
  - Give the ordered proof rules.
27
31
 
28
32
  After the developer approves the best-effort plan, run
29
- `npx --yes copilotkit@4.9.24 onboard read fallback/best-effort`.
33
+ `npx --yes copilotkit@4.9.37 onboard read fallback/best-effort`.
30
34
 
31
35
  Send one short report. Run the feedback command without another developer question. The
32
36
  CLI telemetry gate decides whether the report is sent.
33
37
 
34
38
  ```text
35
- npx --yes copilotkit@4.9.24 onboard feedback
39
+ npx --yes copilotkit@4.9.37 onboard feedback
36
40
  ```
37
41
 
38
42
  Write the feedback message to the command's standard input, in at most four lines.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "copilotkit",
3
- "version": "4.9.24",
3
+ "version": "4.9.37",
4
4
  "type": "module",
5
5
  "repository": {
6
6
  "type": "git",
@@ -14698,7 +14698,7 @@ import * as path4 from "node:path";
14698
14698
 
14699
14699
  // apps/cli/src/config.ts
14700
14700
  function getTemplateRef() {
14701
- return true ? "2d44d3ff00910e9f3494d5e57aaa7bdd69a82e04" : "main";
14701
+ return true ? "aec312634129f97f90154bb416a07e8cc0c13a2a" : "main";
14702
14702
  }
14703
14703
 
14704
14704
  // apps/cli/src/services/agentcore-config.ts
@@ -14881,6 +14881,20 @@ var TELEMETRY_ERROR_CODES = {
14881
14881
  * tell "the caller guessed a slug" from a malformed request.
14882
14882
  */
14883
14883
  PROJECT_NOT_FOUND: "PROJECT_NOT_FOUND",
14884
+ /**
14885
+ * `project select` persisted the record and the key-provisioning call did
14886
+ * not succeed. Buckets as `network` because that is what it almost always
14887
+ * is, and because the funnel needs half-applied selections visible next to
14888
+ * the upstream failures that cause them (OSS-1089).
14889
+ */
14890
+ KEY_PROVISION_FAILED: "KEY_PROVISION_FAILED",
14891
+ /**
14892
+ * `project select` persisted the record and declined to write the key
14893
+ * because git tracks the env file. Distinct from
14894
+ * {@link TELEMETRY_ERROR_CODES.KEY_PROVISION_FAILED}: nothing upstream
14895
+ * failed, and a retry alone will not clear it.
14896
+ */
14897
+ KEY_PROVISION_REFUSED: "KEY_PROVISION_REFUSED",
14884
14898
  CLI_PRODUCT_BINARY_TOO_LARGE: "CLI_PRODUCT_BINARY_TOO_LARGE",
14885
14899
  LEARNING_CONTAINER_ID_INVALID: "LEARNING_CONTAINER_ID_INVALID",
14886
14900
  LEARNING_PROJECT_ID_INVALID: "LEARNING_PROJECT_ID_INVALID",