copilotkit 4.29.0 → 4.30.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 (97) hide show
  1. package/README.md +311 -33
  2. package/cli-build-info.json +7 -7
  3. package/exporters/claude-sdk/README.md +93 -0
  4. package/exporters/claude-sdk/export_session_store.py +39 -0
  5. package/exporters/claude-sdk/store-export.ts +61 -0
  6. package/index.js +212561 -109267
  7. package/onboarding/index.json +51 -5
  8. package/onboarding/prompts/authenticate/start.md +51 -49
  9. package/onboarding/prompts/conversion/plan.md +3 -3
  10. package/onboarding/prompts/credentials/finalize-plan.md +15 -15
  11. package/onboarding/prompts/credentials/plan.md +25 -29
  12. package/onboarding/prompts/credentials/settle-credentials.md +13 -8
  13. package/onboarding/prompts/credentials/write-plan.md +18 -16
  14. package/onboarding/prompts/deployment/choose-local.md +13 -12
  15. package/onboarding/prompts/deployment/local-evaluation.md +11 -11
  16. package/onboarding/prompts/fallback/best-effort.md +10 -11
  17. package/onboarding/prompts/feature/a2ui/implement.md +7 -5
  18. package/onboarding/prompts/feature/a2ui/plan.md +7 -3
  19. package/onboarding/prompts/feature/a2ui/proof.md +8 -6
  20. package/onboarding/prompts/feature/a2ui/start.md +10 -10
  21. package/onboarding/prompts/feature/channels/implement.md +10 -8
  22. package/onboarding/prompts/feature/channels/plan.md +9 -5
  23. package/onboarding/prompts/feature/channels/proof.md +8 -6
  24. package/onboarding/prompts/feature/channels/start.md +17 -13
  25. package/onboarding/prompts/feature/chat-suggestions/implement.md +7 -5
  26. package/onboarding/prompts/feature/chat-suggestions/plan.md +7 -3
  27. package/onboarding/prompts/feature/chat-suggestions/proof.md +8 -6
  28. package/onboarding/prompts/feature/chat-suggestions/start.md +10 -10
  29. package/onboarding/prompts/feature/complete.md +3 -3
  30. package/onboarding/prompts/feature/learning/implement.md +15 -13
  31. package/onboarding/prompts/feature/learning/plan.md +8 -4
  32. package/onboarding/prompts/feature/learning/proof.md +16 -14
  33. package/onboarding/prompts/feature/learning/start.md +10 -10
  34. package/onboarding/prompts/feature/open-generative-ui/implement.md +7 -5
  35. package/onboarding/prompts/feature/open-generative-ui/plan.md +7 -3
  36. package/onboarding/prompts/feature/open-generative-ui/proof.md +8 -6
  37. package/onboarding/prompts/feature/open-generative-ui/start.md +10 -10
  38. package/onboarding/prompts/feature/realtime-sync/implement.md +8 -6
  39. package/onboarding/prompts/feature/realtime-sync/plan.md +7 -3
  40. package/onboarding/prompts/feature/realtime-sync/proof.md +8 -6
  41. package/onboarding/prompts/feature/realtime-sync/start.md +9 -9
  42. package/onboarding/prompts/feature/rich-threads/implement.md +9 -7
  43. package/onboarding/prompts/feature/rich-threads/plan.md +7 -3
  44. package/onboarding/prompts/feature/rich-threads/proof.md +8 -6
  45. package/onboarding/prompts/feature/rich-threads/start.md +9 -9
  46. package/onboarding/prompts/feature/stop.md +4 -4
  47. package/onboarding/prompts/feature/voice/implement.md +7 -5
  48. package/onboarding/prompts/feature/voice/plan.md +8 -4
  49. package/onboarding/prompts/feature/voice/proof.md +8 -6
  50. package/onboarding/prompts/feature/voice/start.md +10 -10
  51. package/onboarding/prompts/framework/ag2.md +4 -11
  52. package/onboarding/prompts/framework/agno.md +4 -11
  53. package/onboarding/prompts/framework/built-in.md +3 -3
  54. package/onboarding/prompts/framework/claude-sdk-python.md +3 -3
  55. package/onboarding/prompts/framework/claude-sdk-typescript.md +3 -3
  56. package/onboarding/prompts/framework/crewai-flows.md +6 -12
  57. package/onboarding/prompts/framework/custom-ag-ui.md +5 -11
  58. package/onboarding/prompts/framework/deep-agents.md +5 -11
  59. package/onboarding/prompts/framework/google-adk.md +4 -8
  60. package/onboarding/prompts/framework/langgraph-fastapi.md +4 -10
  61. package/onboarding/prompts/framework/langgraph-python.md +4 -10
  62. package/onboarding/prompts/framework/langgraph-typescript.md +5 -11
  63. package/onboarding/prompts/framework/llamaindex.md +4 -10
  64. package/onboarding/prompts/framework/mastra.md +4 -10
  65. package/onboarding/prompts/framework/ms-agent-dotnet.md +6 -13
  66. package/onboarding/prompts/framework/ms-agent-harness-dotnet.md +7 -13
  67. package/onboarding/prompts/framework/ms-agent-python.md +5 -11
  68. package/onboarding/prompts/framework/pydantic-ai.md +4 -10
  69. package/onboarding/prompts/framework/strands-python.md +4 -10
  70. package/onboarding/prompts/framework/strands-typescript.md +4 -10
  71. package/onboarding/prompts/frontend/angular.md +4 -4
  72. package/onboarding/prompts/frontend/nextjs.md +4 -4
  73. package/onboarding/prompts/frontend/plan.md +10 -10
  74. package/onboarding/prompts/frontend/react-native.md +3 -3
  75. package/onboarding/prompts/frontend/react-spa.md +3 -3
  76. package/onboarding/prompts/frontend/vue.md +3 -3
  77. package/onboarding/prompts/implementation/build-and-validate.md +33 -16
  78. package/onboarding/prompts/proof/complete.md +22 -19
  79. package/onboarding/prompts/proof/oss-baseline.md +6 -6
  80. package/onboarding/prompts/proof/round-trip.md +34 -14
  81. package/onboarding/prompts/research/gather.md +15 -15
  82. package/onboarding/prompts/research/merge.md +6 -5
  83. package/onboarding/prompts/research/preflight.md +2 -2
  84. package/onboarding/prompts/research/route.md +4 -4
  85. package/onboarding/prompts/setup/questions.md +10 -8
  86. package/onboarding/prompts/starter/clone.md +77 -75
  87. package/onboarding/prompts/starter/setup.md +111 -0
  88. package/onboarding/prompts/stopped/declined.md +44 -0
  89. package/onboarding/prompts/stopped/run-failed.md +6 -6
  90. package/onboarding/prompts/subagent/create-plan.md +5 -5
  91. package/onboarding/prompts/subagent/implement-and-validate.md +4 -4
  92. package/onboarding/prompts/subagent/inspect-repository.md +1 -1
  93. package/onboarding/prompts/subagent/prove-oss-baseline.md +2 -2
  94. package/onboarding/prompts/subagent/prove-round-trip.md +21 -8
  95. package/onboarding/prompts/unsupported/no-validated-path.md +6 -6
  96. package/package.json +4 -1
  97. package/release/release-tool.js +383 -112
@@ -10,11 +10,11 @@ run is doing in the developer's words instead.
10
10
  Run this before anything else in this prompt:
11
11
 
12
12
  ```text
13
- npx --prefer-offline --yes copilotkit@4.29.0 onboard identify --coding-agent <coding-agent-slug> --model <model-id> --model-family <model-family>
13
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard identify --coding-agent <coding-agent-slug> --model <model-id> --model-family <model-family>
14
14
  ```
15
15
 
16
16
  Report your product slug, such as `codex` or `claude-code`. The command needs no sign-in,
17
- browser, or project. If this run already ran `onboard identify`, skip this step.
17
+ browser, or project. If this run already ran `onboard identify` or `onboard begin`, skip this step.
18
18
 
19
19
  - `--model`: copy the model id exactly as your instructions write it. Without an exact
20
20
  model id, leave out `--model` rather than guess.
@@ -39,17 +39,17 @@ carry on. Keep a read-only assignment read-only. If no subagent works at all, re
39
39
  once:
40
40
 
41
41
  ```text
42
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase delegation-unavailable
42
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase delegation-unavailable
43
43
  ```
44
44
 
45
45
  Before you end your turn to wait for the developer, report the pause:
46
46
 
47
47
  ```text
48
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about <question>
48
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-developer --about <question>
49
49
  ```
50
50
 
51
51
  Name the question with `--about`. Use the one the prompt that asks it names, or else the
52
- closest of: `harness-permission`, `sign-in`, `setup-answers`, `stack-choice`,
52
+ closest of: `welcome`, `harness-permission`, `sign-in`, `setup-answers`, `stack-choice`,
53
53
  `project-name`, `which-project`, `env-file-tracked`, `local-connection`, `local-terms`,
54
54
  `existing-folder`,
55
55
  `environment-fix`, `uncommitted-file`, `agent-change`, `restore-files`, `thread-id`,
@@ -64,7 +64,7 @@ If you stop this run, send one short report before you stop. The friction comman
64
64
  the telemetry setting the developer already chose, so it needs no separate question.
65
65
 
66
66
  ```text
67
- npx --prefer-offline --yes copilotkit@4.29.0 onboard friction --phase stop --category <slug> --message "<sentences>"
67
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard friction --phase stop --category <slug> --message "<sentences>"
68
68
  ```
69
69
 
70
70
  `--message` takes one or two sentences: the step you stopped at and what stopped it.
@@ -86,7 +86,7 @@ development/test commands. It must return paths and secret-safe presence checks
86
86
 
87
87
  Require an existing frontend, agent, and CopilotKit round trip. Start only project-owned
88
88
  processes when needed, inspect `/info`, and run
89
- `npx --prefer-offline --yes copilotkit@4.29.0 verify --expect-runtime oss --round-trip --agent <agent-id> --json`.
89
+ `npx --prefer-offline --yes copilotkit@4.30.0 verify --expect-runtime oss --round-trip --agent <agent-id> --json`.
90
90
  Also drive one existing request through the frontend when browser control is available.
91
91
  The `verify` report names the runtime URL it probed. If the dev server serves the
92
92
  runtime at another URL, add `--runtime-url <url>`.
@@ -94,20 +94,20 @@ runtime at another URL, add `--runtime-url <url>`.
94
94
  Wait for the inspection subagent to finish. Then report that the inspection came back:
95
95
 
96
96
  ```text
97
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase research-returned
97
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase research-returned
98
98
  ```
99
99
 
100
100
  If the inspection did not prove the baseline this intent extends, stop here without
101
101
  changing files:
102
102
 
103
103
  ```text
104
- npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/stop
104
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/stop
105
105
  ```
106
106
 
107
107
  When the inspection proved what this intent needs, read the next prompt now, in this turn:
108
108
 
109
109
  ```text
110
- npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/a2ui/plan
110
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/a2ui/plan
111
111
  ```
112
112
 
113
113
  That prompt holds the plan, the developer's approval, and the paths the plan changes.
@@ -19,14 +19,14 @@ On Teams, skip Slack-only tools and the Slack e2e harness. Do not add a CopilotK
19
19
  web app to make this run look complete. Do not replace the existing agent.
20
20
 
21
21
  If repository evidence does not prove an existing valid Intelligence selection, sign in
22
- yourself with `npx --prefer-offline --yes copilotkit@4.29.0 login --json`: the same single streaming
22
+ yourself with `npx --prefer-offline --yes copilotkit@4.30.0 login --json`: the same single streaming
23
23
  session generic onboarding uses. Read its JSON Lines while the process runs. The CLI opens
24
24
  the page itself when it can: with `"browser_opened": false` in `action_required`, show the
25
25
  developer the clickable URL and ask them to finish sign-in there. If the record carries
26
26
  `user_code`, show the developer the code to check against the page. Never ask the developer
27
27
  to run a login command. Keep reading the same process. Continue only after that same process emits
28
28
  `type: completed`. Only when it emits `type: failed`, report the error and take the
29
- feature stop route below. Then run `npx --prefer-offline --yes copilotkit@4.29.0 onboard setup-answers`.
29
+ feature stop route below. Then run `npx --prefer-offline --yes copilotkit@4.30.0 onboard setup-answers`.
30
30
  When it holds a `project` answer from the setup message, create or select that project
31
31
  without asking again. Otherwise list projects and select or create one only after they
32
32
  choose. Require the secret-safe project/key provisioning summary before wiring the
@@ -84,22 +84,24 @@ That result is a question for the developer. Name the file and why the work need
84
84
  Before you end your turn to wait for the developer, report the pause:
85
85
 
86
86
  ```text
87
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about uncommitted-file
87
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-developer --about uncommitted-file
88
88
  ```
89
89
 
90
90
  Then end your turn and wait for the developer's answer. If they allow it, spawn a fresh
91
91
  implementation subagent with the same handoff and the file added to the plan. If you
92
- cannot ask, or the developer declines, take the feature stop route below.
92
+ cannot ask, take the feature stop route below. If the developer declines, such as **no** or **not now**,
93
+ the run did not break. Run
94
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard read stopped/declined --message "<their reason>"`.
93
95
 
94
96
  If the CLI prints `## Stop: this run deleted or moved the developer's work` instead of
95
97
  a step, show the developer the list it printed, and run what they choose:
96
98
  the `onboard restore` command the tripwire stop prints, which names each deleted file, or
97
- `npx --prefer-offline --yes copilotkit@4.29.0 onboard tripwire --continue`. Then read the step again.
99
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard tripwire --continue`. Then read the step again.
98
100
 
99
101
  To route out and stop:
100
102
 
101
103
  ```text
102
- npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/stop
104
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/stop
103
105
  ```
104
106
 
105
107
  ## Values this run writes, and the one credential the developer supplies
@@ -132,7 +134,7 @@ nothing. Ask the developer which Channel this project serves and wait for their
132
134
  Before you end your turn to wait for the developer, report the pause:
133
135
 
134
136
  ```text
135
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about feature-binding
137
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-developer --about feature-binding
136
138
  ```
137
139
 
138
140
  The only credential the developer supplies is their model provider key, such as
@@ -146,4 +148,4 @@ If validation cannot pass, or this run needs a prerequisite the app does not hav
146
148
  the feature stop route above without further changes.
147
149
 
148
150
  Otherwise run
149
- `npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/channels/proof`.
151
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/channels/proof`.
@@ -12,13 +12,17 @@ The approval is a wait for the developer. Before you end your turn to wait, repo
12
12
  pause:
13
13
 
14
14
  ```text
15
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-plan-approval
15
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-plan-approval
16
16
  ```
17
17
 
18
18
  A turn that ends while the run waits is a pause, not a stop, even when your harness ends it.
19
19
  When the answer arrives, continue from the step that paused. If the developer asks for a
20
20
  change, show the changed plan and ask again.
21
21
 
22
+ If the developer declines the plan, such as **no**, **not now** or **do not add it**, change
23
+ no files. Run
24
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard read stopped/declined --message "<their reason>"`.
25
+
22
26
  ## What this prompt takes from the start
23
27
 
24
28
  Keep these from `feature/channels/start`, and give them to every subagent:
@@ -49,11 +53,11 @@ Retry it a second way if needed.
49
53
  For an empty folder, OpenTag runs its own agent on `OPENAI_API_KEY`. State that before the
50
54
  plan. Check the target `.env` and the environment for that name. Report presence only, and
51
55
  never read, print, or store the value. If it is absent, run
52
- `npx --prefer-offline --yes copilotkit@4.29.0 onboard setup-answers` for the key answer the setup message
56
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard setup-answers` for the key answer the setup message
53
57
  recorded, and do not ask for the key again when it holds one:
54
58
 
55
59
  - `key.file`: the plan copies the key from that file after approval, with
56
- `npx --prefer-offline --yes copilotkit@4.29.0 onboard credentials --model-key OPENAI_API_KEY --env-path <key.file> --copy-to .env --json`.
60
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard credentials --model-key OPENAI_API_KEY --env-path <key.file> --copy-to .env --json`.
57
61
  - `key.later`: the plan says the developer adds it to the project `.env` before the backend
58
62
  starts.
59
63
 
@@ -70,7 +74,7 @@ tests and a real mention proof on the chosen provider. Ask for approval as its o
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.29.0 onboard checkpoint --phase awaiting-plan-approval
77
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-plan-approval
74
78
  ```
75
79
 
76
80
  Ask the developer before you edit a file that has uncommitted changes. List those files in
@@ -78,4 +82,4 @@ the plan under `Uncommitted files`, each with one sentence explaining why, or wr
78
82
  `git status` names them. The CLI records no consent: the approved plan is the record. The
79
83
  plan must not delete, move, or rename one of those files.
80
84
 
81
- Then run `npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/channels/implement`.
85
+ Then run `npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/channels/implement`.
@@ -29,23 +29,25 @@ That result is a question for the developer. Name the file and why the fix needs
29
29
  Before you end your turn to wait for the developer, report the pause:
30
30
 
31
31
  ```text
32
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about uncommitted-file
32
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-developer --about uncommitted-file
33
33
  ```
34
34
 
35
35
  Then end your turn and wait for the developer's answer. If they allow it, spawn a fresh
36
36
  proof subagent with the same handoff and the file added to the plan. If you cannot ask,
37
- or the developer declines, take the feature stop route below.
37
+ take the feature stop route below. If the developer declines, such as **no** or **not now**,
38
+ the run did not break. Run
39
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard read stopped/declined --message "<their reason>"`.
38
40
 
39
41
  If the CLI prints `## Stop: this run deleted or moved the developer's work` instead of
40
42
  a step, show the developer the list it printed, and run what they choose:
41
43
  the `onboard restore` command the tripwire stop prints, which names each deleted file, or
42
- `npx --prefer-offline --yes copilotkit@4.29.0 onboard tripwire --continue`. Then read the step again.
44
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard tripwire --continue`. Then read the step again.
43
45
 
44
46
  Report the outcome of each attempt as it ends, before any repair. The command counts the
45
47
  attempts and the repairs:
46
48
 
47
49
  ```text
48
- npx --prefer-offline --yes copilotkit@4.29.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
50
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
49
51
  ```
50
52
 
51
53
  Use `passed` only for a proved mention reply, `failed` for an attempted proof that
@@ -54,11 +56,11 @@ failed, and `skipped` when the proof did not run.
54
56
  To route out and stop:
55
57
 
56
58
  ```text
57
- npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/stop
59
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/stop
58
60
  ```
59
61
 
60
62
  When the round trip you reported above was `passed`, run
61
- `npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/complete`, and pass
63
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/complete`, and pass
62
64
  `onboard complete` the flag `--visual-check channels-proof-passed`. The recorded mention and
63
65
  reply are this run's proof, so no web app check is missing. Use `--visual-check performed`
64
66
  only when a
@@ -10,11 +10,11 @@ restricted to the target project.
10
10
  Run this before anything else in this prompt:
11
11
 
12
12
  ```text
13
- npx --prefer-offline --yes copilotkit@4.29.0 onboard identify --coding-agent <coding-agent-slug> --model <model-id> --model-family <model-family>
13
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard identify --coding-agent <coding-agent-slug> --model <model-id> --model-family <model-family>
14
14
  ```
15
15
 
16
16
  Report your product slug, such as `codex` or `claude-code`. The command needs no sign-in,
17
- browser, or project. If this run already ran `onboard identify`, skip this step.
17
+ browser, or project. If this run already ran `onboard identify` or `onboard begin`, skip this step.
18
18
 
19
19
  - `--model`: copy the model id exactly as your instructions write it. Without an exact
20
20
  model id, leave out `--model` rather than guess.
@@ -39,17 +39,17 @@ carry on. Keep a read-only assignment read-only. If no subagent works at all, re
39
39
  once:
40
40
 
41
41
  ```text
42
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase delegation-unavailable
42
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase delegation-unavailable
43
43
  ```
44
44
 
45
45
  Before you end your turn to wait for the developer, report the pause:
46
46
 
47
47
  ```text
48
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about <question>
48
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-developer --about <question>
49
49
  ```
50
50
 
51
51
  Name the question with `--about`. Use the one the prompt that asks it names, or else the
52
- closest of: `harness-permission`, `sign-in`, `setup-answers`, `stack-choice`,
52
+ closest of: `welcome`, `harness-permission`, `sign-in`, `setup-answers`, `stack-choice`,
53
53
  `project-name`, `which-project`, `env-file-tracked`, `local-connection`, `local-terms`,
54
54
  `existing-folder`,
55
55
  `environment-fix`, `uncommitted-file`, `agent-change`, `restore-files`, `thread-id`,
@@ -64,7 +64,7 @@ If you stop this run, send one short report before you stop. The friction comman
64
64
  the telemetry setting the developer already chose, so it needs no separate question.
65
65
 
66
66
  ```text
67
- npx --prefer-offline --yes copilotkit@4.29.0 onboard friction --phase stop --category <slug> --message "<sentences>"
67
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard friction --phase stop --category <slug> --message "<sentences>"
68
68
  ```
69
69
 
70
70
  `--message` takes one or two sentences: the step you stopped at and what stopped it.
@@ -81,7 +81,7 @@ before a subagent or a project process runs.
81
81
  Before changing files, send a short welcome. Say you will inspect the project, show a
82
82
  Channel plan, implement only after approval, and prove a real mention reply.
83
83
 
84
- Run `npx --prefer-offline --yes copilotkit@4.29.0 onboard setup-answers`. When it holds a recorded
84
+ Run `npx --prefer-offline --yes copilotkit@4.30.0 onboard setup-answers`. When it holds a recorded
85
85
  `frontend` of Slack or Microsoft Teams, use that one. Ask Slack or Teams as its own question
86
86
  only when neither the record, the copied prompt, nor the developer already named one. If either named Slack, use Slack. If either named Teams or
87
87
  Microsoft Teams, use Teams. Do not ask again.
@@ -102,7 +102,7 @@ This one does not.
102
102
  Wait for the inspection subagent to finish. Then report that the inspection came back:
103
103
 
104
104
  ```text
105
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase research-returned
105
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase research-returned
106
106
  ```
107
107
 
108
108
  If the folder is empty, check Node 22, `uv`, and Python before cloning. Python 3.12 or
@@ -112,23 +112,27 @@ to install one with `uv python install 3.12`, and continue after the developer a
112
112
  Before you end your turn to wait for the developer, report the pause:
113
113
 
114
114
  ```text
115
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about environment-fix
115
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-developer --about environment-fix
116
116
  ```
117
117
 
118
- Stop here without cloning only when Node 22 is missing, `uv` is missing, or the developer
119
- declines that install. Do not switch to a custom build in silence. Name the missing tool
118
+ If the developer declines that install, such as **no** or **not now**, the run did not
119
+ break. Clone nothing, and run
120
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard read stopped/declined --message "<their reason>"`.
121
+
122
+ Stop here without cloning only when Node 22 is missing or `uv` is missing. Do not switch
123
+ to a custom build in silence. Name the missing tool
120
124
  and its install command in the message the developer sees: `nvm install 22` for Node 22,
121
125
  `curl -LsSf https://astral.sh/uv/install.sh | sh` for `uv`, and `uv python install 3.12`
122
126
  for Python. Offer a custom headless build as a later path. Then route out:
123
127
 
124
128
  ```text
125
- npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/stop
129
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/stop
126
130
  ```
127
131
 
128
132
  When the tools this run needs are present, read the next prompt now, in this turn:
129
133
 
130
134
  ```text
131
- npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/channels/plan
135
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/channels/plan
132
136
  ```
133
137
 
134
138
  That prompt holds the plan, the developer's approval, and the paths the plan changes.
@@ -21,26 +21,28 @@ That result is a question for the developer. Name the file and why the work need
21
21
  Before you end your turn to wait for the developer, report the pause:
22
22
 
23
23
  ```text
24
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about uncommitted-file
24
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-developer --about uncommitted-file
25
25
  ```
26
26
 
27
27
  Then end your turn and wait for the developer's answer. If they allow it, spawn a fresh
28
28
  implementation subagent with the same handoff and the file added to the plan. If you
29
- cannot ask, or the developer declines, take the feature stop route below.
29
+ cannot ask, take the feature stop route below. If the developer declines, such as **no** or **not now**,
30
+ the run did not break. Run
31
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard read stopped/declined --message "<their reason>"`.
30
32
 
31
33
  If the CLI prints `## Stop: this run deleted or moved the developer's work` instead of
32
34
  a step, show the developer the list it printed, and run what they choose:
33
35
  the `onboard restore` command the tripwire stop prints, which names each deleted file, or
34
- `npx --prefer-offline --yes copilotkit@4.29.0 onboard tripwire --continue`. Then read the step again.
36
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard tripwire --continue`. Then read the step again.
35
37
 
36
38
  To route out and stop:
37
39
 
38
40
  ```text
39
- npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/stop
41
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/stop
40
42
  ```
41
43
 
42
44
  If validation cannot pass, or this intent needs a prerequisite the app does not have, use
43
45
  the feature stop route above without further changes.
44
46
 
45
47
  Otherwise run
46
- `npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/chat-suggestions/proof`.
48
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/chat-suggestions/proof`.
@@ -12,13 +12,17 @@ The approval is a wait for the developer. Before you end your turn to wait, repo
12
12
  pause:
13
13
 
14
14
  ```text
15
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-plan-approval
15
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-plan-approval
16
16
  ```
17
17
 
18
18
  A turn that ends while the run waits is a pause, not a stop, even when your harness ends it.
19
19
  When the answer arrives, continue from the step that paused. If the developer asks for a
20
20
  change, show the changed plan and ask again.
21
21
 
22
+ If the developer declines the plan, such as **no**, **not now** or **do not add it**, change
23
+ no files. Run
24
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard read stopped/declined --message "<their reason>"`.
25
+
22
26
  ## What this prompt takes from the start
23
27
 
24
28
  Keep these from `feature/chat-suggestions/start`, and give them to every subagent:
@@ -48,7 +52,7 @@ question.
48
52
  Before you end your turn to wait for the developer, report the pause:
49
53
 
50
54
  ```text
51
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-plan-approval
55
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-plan-approval
52
56
  ```
53
57
 
54
58
  Ask the developer before you edit a file that has uncommitted changes. List those files in
@@ -56,4 +60,4 @@ the plan under `Uncommitted files`, each with one sentence explaining why, or wr
56
60
  `git status` names them. The CLI records no consent: the approved plan is the record. The
57
61
  plan must not delete, move, or rename one of those files.
58
62
 
59
- Then run `npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/chat-suggestions/implement`.
63
+ Then run `npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/chat-suggestions/implement`.
@@ -18,23 +18,25 @@ That result is a question for the developer. Name the file and why the fix needs
18
18
  Before you end your turn to wait for the developer, report the pause:
19
19
 
20
20
  ```text
21
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about uncommitted-file
21
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-developer --about uncommitted-file
22
22
  ```
23
23
 
24
24
  Then end your turn and wait for the developer's answer. If they allow it, spawn a fresh
25
25
  proof subagent with the same handoff and the file added to the plan. If you cannot ask,
26
- or the developer declines, take the feature stop route below.
26
+ take the feature stop route below. If the developer declines, such as **no** or **not now**,
27
+ the run did not break. Run
28
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard read stopped/declined --message "<their reason>"`.
27
29
 
28
30
  If the CLI prints `## Stop: this run deleted or moved the developer's work` instead of
29
31
  a step, show the developer the list it printed, and run what they choose:
30
32
  the `onboard restore` command the tripwire stop prints, which names each deleted file, or
31
- `npx --prefer-offline --yes copilotkit@4.29.0 onboard tripwire --continue`. Then read the step again.
33
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard tripwire --continue`. Then read the step again.
32
34
 
33
35
  Report the outcome of each attempt as it ends, before any repair. The command counts the
34
36
  attempts and the repairs:
35
37
 
36
38
  ```text
37
- npx --prefer-offline --yes copilotkit@4.29.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
39
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard proof --step round-trip --outcome <passed|failed|skipped>
38
40
  ```
39
41
 
40
42
  Use `passed` only for a proved sent suggestion, `failed` for an attempted proof that failed,
@@ -43,9 +45,9 @@ and `skipped` when the proof could not run.
43
45
  To route out and stop:
44
46
 
45
47
  ```text
46
- npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/stop
48
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/stop
47
49
  ```
48
50
 
49
51
  When the proof is recorded, run
50
- `npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/complete` with the real browser-proof
52
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/complete` with the real browser-proof
51
53
  outcome.
@@ -8,11 +8,11 @@ implementation, and proof to separate subagents and keep all work inside the tar
8
8
  Run this before anything else in this prompt:
9
9
 
10
10
  ```text
11
- npx --prefer-offline --yes copilotkit@4.29.0 onboard identify --coding-agent <coding-agent-slug> --model <model-id> --model-family <model-family>
11
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard identify --coding-agent <coding-agent-slug> --model <model-id> --model-family <model-family>
12
12
  ```
13
13
 
14
14
  Report your product slug, such as `codex` or `claude-code`. The command needs no sign-in,
15
- browser, or project. If this run already ran `onboard identify`, skip this step.
15
+ browser, or project. If this run already ran `onboard identify` or `onboard begin`, skip this step.
16
16
 
17
17
  - `--model`: copy the model id exactly as your instructions write it. Without an exact
18
18
  model id, leave out `--model` rather than guess.
@@ -37,17 +37,17 @@ carry on. Keep a read-only assignment read-only. If no subagent works at all, re
37
37
  once:
38
38
 
39
39
  ```text
40
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase delegation-unavailable
40
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase delegation-unavailable
41
41
  ```
42
42
 
43
43
  Before you end your turn to wait for the developer, report the pause:
44
44
 
45
45
  ```text
46
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about <question>
46
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-developer --about <question>
47
47
  ```
48
48
 
49
49
  Name the question with `--about`. Use the one the prompt that asks it names, or else the
50
- closest of: `harness-permission`, `sign-in`, `setup-answers`, `stack-choice`,
50
+ closest of: `welcome`, `harness-permission`, `sign-in`, `setup-answers`, `stack-choice`,
51
51
  `project-name`, `which-project`, `env-file-tracked`, `local-connection`, `local-terms`,
52
52
  `existing-folder`,
53
53
  `environment-fix`, `uncommitted-file`, `agent-change`, `restore-files`, `thread-id`,
@@ -62,7 +62,7 @@ If you stop this run, send one short report before you stop. The friction comman
62
62
  the telemetry setting the developer already chose, so it needs no separate question.
63
63
 
64
64
  ```text
65
- npx --prefer-offline --yes copilotkit@4.29.0 onboard friction --phase stop --category <slug> --message "<sentences>"
65
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard friction --phase stop --category <slug> --message "<sentences>"
66
66
  ```
67
67
 
68
68
  `--message` takes one or two sentences: the step you stopped at and what stopped it.
@@ -78,7 +78,7 @@ before a subagent or a project process runs.
78
78
 
79
79
  Before edits, identify the current CopilotKit provider, chat component, message lifecycle,
80
80
  agent id, package version, and test/dev commands. Prove the existing OSS round trip with
81
- `/info`, `npx --prefer-offline --yes copilotkit@4.29.0 verify --expect-runtime oss --round-trip --agent <agent-id> --json`,
81
+ `/info`, `npx --prefer-offline --yes copilotkit@4.30.0 verify --expect-runtime oss --round-trip --agent <agent-id> --json`,
82
82
  and one real frontend request when browser control is available.
83
83
  The `verify` report names the runtime URL it probed. If the dev server serves the
84
84
  runtime at another URL, add `--runtime-url <url>`.
@@ -86,20 +86,20 @@ runtime at another URL, add `--runtime-url <url>`.
86
86
  Wait for the inspection subagent to finish. Then report that the inspection came back:
87
87
 
88
88
  ```text
89
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase research-returned
89
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase research-returned
90
90
  ```
91
91
 
92
92
  If the inspection did not prove the baseline this intent extends, stop here without
93
93
  changing files:
94
94
 
95
95
  ```text
96
- npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/stop
96
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/stop
97
97
  ```
98
98
 
99
99
  When the inspection proved what this intent needs, read the next prompt now, in this turn:
100
100
 
101
101
  ```text
102
- npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/chat-suggestions/plan
102
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/chat-suggestions/plan
103
103
  ```
104
104
 
105
105
  That prompt holds the plan, the developer's approval, and the paths the plan changes.
@@ -3,7 +3,7 @@
3
3
  Use the outcome the proof step observed. Run:
4
4
 
5
5
  ```text
6
- npx --prefer-offline --yes copilotkit@4.29.0 onboard complete --visual-check <performed|skipped-no-browser-tool|channels-proof-passed|failed>
6
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard complete --visual-check <performed|skipped-no-browser-tool|channels-proof-passed|failed>
7
7
  ```
8
8
 
9
9
  Use `channels-proof-passed` for a Slack or Teams run that recorded a passed round-trip proof
@@ -14,7 +14,7 @@ Use `performed` only when browser control drove the real user-visible surface. U
14
14
  `skipped-no-browser-tool` only when no browser tool was available. Use `failed` when the
15
15
  browser proof ran but did not prove the feature.
16
16
 
17
- Paste the **Handoff facts** block the command prints into your summary, as it is.
17
+ Write the message the command prints into your summary, word for word.
18
18
 
19
19
  ## Report friction before completing
20
20
 
@@ -22,7 +22,7 @@ Before `onboard complete`, send the friction this run mentioned to the developer
22
22
  report each, at most four, costliest first:
23
23
 
24
24
  ```text
25
- npx --prefer-offline --yes copilotkit@4.29.0 onboard friction --category <slug> --cost-seconds <seconds> --message "<sentences>"
25
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard friction --category <slug> --cost-seconds <seconds> --message "<sentences>"
26
26
  ```
27
27
 
28
28
  Put one or two sentences in `--message`, with no secrets, source, or logs. Pick the
@@ -16,7 +16,7 @@ follows the telemetry setting the developer already chose, so it needs no separa
16
16
  question.
17
17
 
18
18
  ```text
19
- npx --prefer-offline --yes copilotkit@4.29.0 onboard friction --phase stop --category <slug> --message "<sentences>"
19
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard friction --phase stop --category <slug> --message "<sentences>"
20
20
  ```
21
21
 
22
22
  `--message` takes one or two sentences: the step you stopped at and what stopped it.
@@ -48,7 +48,7 @@ settled refusal rather than a missing baseline, so stop here, before any file ch
48
48
  take its own ending:
49
49
 
50
50
  ```text
51
- npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/blocked-by-plan
51
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/blocked-by-plan
52
52
  ```
53
53
 
54
54
  `LEARNING_AVAILABILITY_UNAVAILABLE` means the platform did not resolve the answer. It is
@@ -62,7 +62,7 @@ then, so the read below is where its refusal surfaces.
62
62
  When the plan or the repository already names an id, ask about that one id and nothing else:
63
63
 
64
64
  ```text
65
- npx --prefer-offline --yes copilotkit@4.29.0 learning containers get <id> --json
65
+ npx --prefer-offline --yes copilotkit@4.30.0 learning containers get <id> --json
66
66
  ```
67
67
 
68
68
  One call answers it, and no list is needed.
@@ -70,7 +70,7 @@ One call answers it, and no list is needed.
70
70
  When no id is in hand, survey what the project holds:
71
71
 
72
72
  ```text
73
- npx --prefer-offline --yes copilotkit@4.29.0 learning containers list --json
73
+ npx --prefer-offline --yes copilotkit@4.30.0 learning containers list --json
74
74
  ```
75
75
 
76
76
  One call returns at most 500 containers. When `nextCursor` in the result is not null, read
@@ -84,7 +84,7 @@ the developer which one when more than one could. Otherwise create one.
84
84
  Before you end your turn to wait for the developer, report the pause:
85
85
 
86
86
  ```text
87
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about feature-binding
87
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-developer --about feature-binding
88
88
  ```
89
89
 
90
90
  Default to one container for this project, and name it after the project. Learning needs
@@ -99,7 +99,7 @@ user, so the callback can return a different id per tier or per customer.
99
99
  Ask the CLI for the id rather than spelling one yourself:
100
100
 
101
101
  ```text
102
- npx --prefer-offline --yes copilotkit@4.29.0 learning containers default-id --json
102
+ npx --prefer-offline --yes copilotkit@4.30.0 learning containers default-id --json
103
103
  ```
104
104
 
105
105
  It derives the project-scoped id from the selected project's slug, reads the local project
@@ -116,7 +116,7 @@ run that spells the id differently gives one project two containers, each below
116
116
  above on its own. One command is what keeps the two spellings identical.
117
117
 
118
118
  ```text
119
- npx --prefer-offline --yes copilotkit@4.29.0 learning containers create --id <id> --name <name> --json
119
+ npx --prefer-offline --yes copilotkit@4.30.0 learning containers create --id <id> --name <name> --json
120
120
  ```
121
121
 
122
122
  An id already in use answers `LEARNING_CONTAINER_ALREADY_EXISTS`. That is a container to
@@ -143,7 +143,7 @@ such an app on a thread the app created, with `--thread <id>`, which needs no se
143
143
  record UNKNOWN as the expected result here.
144
144
 
145
145
  Run focused tests and
146
- `npx --prefer-offline --yes copilotkit@4.29.0 verify --expect-runtime intelligence --round-trip --agent <agent-id> --json`.
146
+ `npx --prefer-offline --yes copilotkit@4.30.0 verify --expect-runtime intelligence --round-trip --agent <agent-id> --json`.
147
147
  The `verify` report names the runtime URL it probed. If the dev server serves the
148
148
  runtime at another URL, add `--runtime-url <url>`.
149
149
  Repair changed-file failures and record secret-safe evidence.
@@ -157,26 +157,28 @@ That result is a question for the developer. Name the file and why the work need
157
157
  Before you end your turn to wait for the developer, report the pause:
158
158
 
159
159
  ```text
160
- npx --prefer-offline --yes copilotkit@4.29.0 onboard checkpoint --phase awaiting-developer --about uncommitted-file
160
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard checkpoint --phase awaiting-developer --about uncommitted-file
161
161
  ```
162
162
 
163
163
  Then end your turn and wait for the developer's answer. If they allow it, spawn a fresh
164
164
  implementation subagent with the same handoff and the file added to the plan. If you
165
- cannot ask, or the developer declines, take the feature stop route below.
165
+ cannot ask, take the feature stop route below. If the developer declines, such as **no** or **not now**,
166
+ the run did not break. Run
167
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard read stopped/declined --message "<their reason>"`.
166
168
 
167
169
  If the CLI prints `## Stop: this run deleted or moved the developer's work` instead of
168
170
  a step, show the developer the list it printed, and run what they choose:
169
171
  the `onboard restore` command the tripwire stop prints, which names each deleted file, or
170
- `npx --prefer-offline --yes copilotkit@4.29.0 onboard tripwire --continue`. Then read the step again.
172
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard tripwire --continue`. Then read the step again.
171
173
 
172
174
  To route out and stop:
173
175
 
174
176
  ```text
175
- npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/stop
177
+ npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/stop
176
178
  ```
177
179
 
178
180
  If validation cannot pass, or this intent needs a prerequisite the app does not have, use
179
181
  the feature stop route above without further changes.
180
182
 
181
183
  Otherwise run
182
- `npx --prefer-offline --yes copilotkit@4.29.0 onboard read feature/learning/proof`.
184
+ `npx --prefer-offline --yes copilotkit@4.30.0 onboard read feature/learning/proof`.