copilotkit 4.9.31 → 4.9.47

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 (45) hide show
  1. package/README.md +59 -6
  2. package/cli-build-info.json +8 -8
  3. package/index.js +3460 -2584
  4. package/onboarding/index.json +1 -1
  5. package/onboarding/prompts/authenticate/start.md +41 -15
  6. package/onboarding/prompts/conversion/plan.md +12 -4
  7. package/onboarding/prompts/credentials/finalize-plan.md +13 -13
  8. package/onboarding/prompts/credentials/plan.md +20 -20
  9. package/onboarding/prompts/fallback/best-effort.md +6 -6
  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 +3 -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 +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 +18 -6
  36. package/onboarding/prompts/proof/complete.md +31 -6
  37. package/onboarding/prompts/proof/oss-baseline.md +21 -4
  38. package/onboarding/prompts/proof/round-trip.md +30 -7
  39. package/onboarding/prompts/starter/clone.md +11 -5
  40. package/onboarding/prompts/subagent/create-plan.md +1 -1
  41. package/onboarding/prompts/subagent/prove-oss-baseline.md +6 -3
  42. package/onboarding/prompts/subagent/prove-round-trip.md +44 -20
  43. package/onboarding/prompts/unsupported/no-validated-path.md +2 -2
  44. package/package.json +1 -1
  45. package/release/release-tool.js +1 -1
package/README.md CHANGED
@@ -175,9 +175,18 @@ For a coding agent that needs an agent-readable sign-in flow, use:
175
175
  copilotkit login --json
176
176
  ```
177
177
 
178
- The command prints JSON lines for the sign-in URL, the action to take, and the
179
- final result. It does not open a browser. A failed sign-in prints one final
180
- failure object and exits nonzero.
178
+ The command prints JSON lines for the sign-in URL, an instruction for the
179
+ machine reader, and the final result. It does not open a browser. Every JSON
180
+ login URL carries the `agent_onboarding` display hint because JSON mode is the
181
+ machine-readable login contract. A machine reader should open the first
182
+ `authentication_url` once with the operating system's default browser, then
183
+ keep reading the same process until its terminal event. If the opener fails,
184
+ show the URL for manual sign-in instead of retrying it. A failed sign-in prints
185
+ one final failure object and exits nonzero.
186
+
187
+ The bundled onboarding prompt gives one short explanation before it opens the
188
+ page: sign-in lets the coding agent create a project and API key, and the user
189
+ can remove the key later to disconnect the workspace.
181
190
 
182
191
  The onboarding commands are:
183
192
 
@@ -550,6 +559,7 @@ anything else:
550
559
  copilotkit verify
551
560
  copilotkit verify --json # machine-readable output
552
561
  copilotkit verify --runtime-url http://localhost:8080/copilotkit
562
+ copilotkit verify --frontend-url http://127.0.0.1:3000 # check that host's assets
553
563
  copilotkit verify --round-trip # also run the agent
554
564
  copilotkit verify --expect-runtime oss --round-trip --agent incident_triage
555
565
  ```
@@ -566,8 +576,13 @@ The selected project is read from the nearest `.copilotkit/project.json` at or
566
576
  above the current directory, stopping at the repository root, so running from
567
577
  one half of a repository finds the project the repository is bound to. `verify`
568
578
  names the directory it read the project from, and names where it searched when
569
- it found none. The API key is searched for the same way: `.env` and `.env.local`
570
- from the current directory up to the repository root.
579
+ it found none. The API key is searched for the same way, plus one directory
580
+ down: `.env` and `.env.local` from the current directory up to the repository
581
+ root, and in the one package below it that depends on CopilotKit. That last part
582
+ is what lets a run from the repository root of a two-half repository find a key
583
+ in `web/.env.local`, which is the file the app loads. Two such packages below, or
584
+ none, adds nothing to the search, because a credential resolved from the wrong
585
+ half is worse than one reported as absent.
571
586
 
572
587
  Being found is not the same as being loadable. A framework's env loader does not
573
588
  walk up — Next.js, Vite, Nuxt and Astro all read env files from the application's
@@ -597,7 +612,7 @@ piping is safe.
597
612
  Use `--expect-runtime oss` to prove an open-source runtime instead. In this
598
613
  mode, hosted project, key, and thread-route checks do not apply. The command
599
614
  exits zero only when `/info` is valid, declares the agent named by `--agent`,
600
- omits `licenseStatus`, and `--round-trip` passes. Both `--round-trip` and
615
+ reports no Intelligence entitlement, and `--round-trip` passes. Both `--round-trip` and
601
616
  `--agent` are required for an OSS pass.
602
617
 
603
618
  ### Which runtime URL gets probed
@@ -627,11 +642,49 @@ with the two ways to tell the command where to look — a working application on
627
642
  another port is not a wiring failure, and reporting it as one is how a developer
628
643
  ends up undoing correct work.
629
644
 
645
+ An answer at the assumed default is read the same way. The runtime check passes,
646
+ because a runtime did reply, but the line says which project answered is
647
+ unverified. So do the declared agent names and `--round-trip`. Another checkout
648
+ serving that port answers exactly the same, and the runtime version, the agent
649
+ names, and the round trip are all read off whatever replied. Pass
650
+ `--runtime-url`, or record `"runtimeUrl"`, to make the report name your project.
651
+
630
652
  The mount path is not discovered: every first-party starter serves the runtime
631
653
  at `/api/copilotkit`, and reading a framework's routing conventions to find out
632
654
  otherwise is the kind of check that drifts and starts reporting confident
633
655
  nonsense. Where yours is elsewhere, use option 1 or 2.
634
656
 
657
+ ### Which frontend URL you should open
658
+
659
+ `verify` also reports `frontendUrl`: the origin to open in a browser, resolved
660
+ from the same web dev server port as option 4 above and always written with
661
+ `localhost`. It is reported so a caller has a URL handed to it rather than one it
662
+ builds from a dev server's startup banner. `--frontend-url` overrides it, and the
663
+ field is absent — never guessed — when the project named no port.
664
+
665
+ It is a separate field from `runtimeUrl` and is not derived from it. The two are
666
+ the same origin only when one dev server serves the page and mounts the runtime
667
+ on it. A project whose runtime runs as a process of its own puts that runtime on
668
+ port 8200, where no page is served.
669
+
670
+ Pass `--frontend-url <the url you opened>` to add one more check,
671
+ `frontend_assets_served`. It asks that origin for its page and then for one of
672
+ the page's own scripts or stylesheets, read off the returned HTML, and compares
673
+ the two answers:
674
+
675
+ - Both served: `PASS`. That host is one the dev server serves assets on.
676
+ - Page served, asset refused with `401` or `403`: `FAIL`. The dev server refuses
677
+ its own static assets on that host. A page that renders without its own chunks
678
+ leaves the CopilotKit control dead, which reads as a broken integration rather
679
+ than as the host name you used. On an IP literal the check names the
680
+ `localhost` URL to open instead.
681
+ - Anything else: `UNKNOWN`, including a dev server that is not running.
682
+
683
+ Without the flag the check is absent rather than `UNKNOWN`. A frontend dev
684
+ server is not a surface `verify` requires to be running, so reporting "could not
685
+ prove it" would sink the verdict of a correctly wired project whose browser is
686
+ closed.
687
+
635
688
  A runtime mounted `mode: "single-route"` refuses `GET /info`, so `verify` asks
636
689
  the same question again through the POST envelope that mount does answer.
637
690
  Reaching it that way counts as reachable, and the report says which shape
@@ -2,20 +2,20 @@
2
2
  "schemaVersion": 1,
3
3
  "package": {
4
4
  "name": "copilotkit",
5
- "version": "4.9.31"
5
+ "version": "4.9.47"
6
6
  },
7
7
  "intelligence": {
8
- "commit": "5f88d6f4e26b643eb1223b12cc05dad94055b5ef"
8
+ "commit": "85f6b2eb2b4c8fef747bbfb0e3f5991b196ecc43"
9
9
  },
10
10
  "copilotKit": {
11
- "submittedInput": "c2038cf52ced16dc814e2ff0bd60894f2a53f5c1",
12
- "commit": "c2038cf52ced16dc814e2ff0bd60894f2a53f5c1"
11
+ "submittedInput": "380ad1220a7bc78104baedc469c4d086c8910494",
12
+ "commit": "380ad1220a7bc78104baedc469c4d086c8910494"
13
13
  },
14
14
  "channel": "production",
15
- "triggeringActor": "BenTaylorDev",
15
+ "triggeringActor": "MikeRyanDev",
16
16
  "workflow": {
17
- "runId": "33679806270",
18
- "runUrl": "https://github.com/CopilotKit/Intelligence/actions/runs/33679806270"
17
+ "runId": "34279600219",
18
+ "runUrl": "https://github.com/CopilotKit/Intelligence/actions/runs/34279600219"
19
19
  },
20
20
  "validationResult": "passed",
21
21
  "ag2": {
@@ -24,5 +24,5 @@
24
24
  "revision": "main",
25
25
  "pinned": false
26
26
  },
27
- "builtAt": "2026-09-02T20:33:23Z"
27
+ "builtAt": "2026-09-08T21:17:26Z"
28
28
  }