kiokuko-dsh 0.1.98 → 0.2.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 (256) hide show
  1. package/PERMISSIONS.md +52 -19
  2. package/README.ja.md +6 -12
  3. package/README.ko.md +12 -18
  4. package/README.md +7 -12
  5. package/README.zh-CN.md +12 -17
  6. package/THIRD_PARTY_NOTICES.md +5 -5
  7. package/dist/client.cjs +57 -4
  8. package/dist/client.d.ts +23 -0
  9. package/dist/client.d.ts.map +1 -1
  10. package/dist/dsh/agenticreplay-command-surface.d.ts +5 -0
  11. package/dist/dsh/agenticreplay-command-surface.d.ts.map +1 -0
  12. package/dist/dsh/{orca-command-surface.js → agenticreplay-command-surface.js} +15 -15
  13. package/dist/dsh/agenticreplay-command-surface.js.map +1 -0
  14. package/dist/dsh/{orca-event-mapper.d.ts → agenticreplay-event-mapper.d.ts} +7 -7
  15. package/dist/dsh/agenticreplay-event-mapper.d.ts.map +1 -0
  16. package/dist/dsh/{orca-event-mapper.js → agenticreplay-event-mapper.js} +9 -9
  17. package/dist/dsh/agenticreplay-event-mapper.js.map +1 -0
  18. package/dist/dsh/agenticreplay-files.d.ts +21 -0
  19. package/dist/dsh/agenticreplay-files.d.ts.map +1 -0
  20. package/dist/dsh/{orca-files.js → agenticreplay-files.js} +32 -31
  21. package/dist/dsh/agenticreplay-files.js.map +1 -0
  22. package/dist/dsh/agenticreplay-hooks.d.ts +5 -0
  23. package/dist/dsh/agenticreplay-hooks.d.ts.map +1 -0
  24. package/dist/dsh/{orca-hooks.js → agenticreplay-hooks.js} +2 -2
  25. package/dist/dsh/agenticreplay-hooks.js.map +1 -0
  26. package/dist/dsh/{orca-host.d.ts → agenticreplay-host.d.ts} +5 -5
  27. package/dist/dsh/agenticreplay-host.d.ts.map +1 -0
  28. package/dist/dsh/{orca-host.js → agenticreplay-host.js} +15 -15
  29. package/dist/dsh/agenticreplay-host.js.map +1 -0
  30. package/dist/dsh/agenticreplay-libraries.d.ts +85 -0
  31. package/dist/dsh/agenticreplay-libraries.d.ts.map +1 -0
  32. package/dist/dsh/agenticreplay-libraries.js +23 -0
  33. package/dist/dsh/agenticreplay-libraries.js.map +1 -0
  34. package/dist/dsh/agenticreplay-read-service.d.ts +21 -0
  35. package/dist/dsh/agenticreplay-read-service.d.ts.map +1 -0
  36. package/dist/dsh/{orca-read-service.js → agenticreplay-read-service.js} +27 -26
  37. package/dist/dsh/agenticreplay-read-service.js.map +1 -0
  38. package/dist/dsh/{orca-recorder.d.ts → agenticreplay-recorder.d.ts} +21 -21
  39. package/dist/dsh/agenticreplay-recorder.d.ts.map +1 -0
  40. package/dist/dsh/{orca-recorder.js → agenticreplay-recorder.js} +38 -48
  41. package/dist/dsh/agenticreplay-recorder.js.map +1 -0
  42. package/dist/dsh/{orca-security.d.ts → agenticreplay-security.d.ts} +5 -5
  43. package/dist/dsh/agenticreplay-security.d.ts.map +1 -0
  44. package/dist/dsh/{orca-security.js → agenticreplay-security.js} +29 -28
  45. package/dist/dsh/agenticreplay-security.js.map +1 -0
  46. package/dist/dsh/agenticreplay-session-choice.d.ts +24 -0
  47. package/dist/dsh/agenticreplay-session-choice.d.ts.map +1 -0
  48. package/dist/dsh/{orca-session-choice.js → agenticreplay-session-choice.js} +10 -10
  49. package/dist/dsh/agenticreplay-session-choice.js.map +1 -0
  50. package/dist/dsh/agenticreplay-status-presentation.d.ts +6 -0
  51. package/dist/dsh/agenticreplay-status-presentation.d.ts.map +1 -0
  52. package/dist/dsh/{orca-status-presentation.js → agenticreplay-status-presentation.js} +14 -14
  53. package/dist/dsh/agenticreplay-status-presentation.js.map +1 -0
  54. package/dist/dsh/agenticreplay-store.d.ts +16 -0
  55. package/dist/dsh/agenticreplay-store.d.ts.map +1 -0
  56. package/dist/dsh/agenticreplay-store.js +42 -0
  57. package/dist/dsh/agenticreplay-store.js.map +1 -0
  58. package/dist/dsh/agenticreplay-types.d.ts +64 -0
  59. package/dist/dsh/agenticreplay-types.d.ts.map +1 -0
  60. package/dist/dsh/{orca-types.js → agenticreplay-types.js} +5 -5
  61. package/dist/dsh/agenticreplay-types.js.map +1 -0
  62. package/dist/dsh/composition.d.ts +1 -1
  63. package/dist/dsh/composition.d.ts.map +1 -1
  64. package/dist/dsh/composition.js +4 -1
  65. package/dist/dsh/composition.js.map +1 -1
  66. package/dist/dsh/config.d.ts +8 -3
  67. package/dist/dsh/config.d.ts.map +1 -1
  68. package/dist/dsh/config.js +4 -2
  69. package/dist/dsh/config.js.map +1 -1
  70. package/dist/dsh/core/host.d.ts.map +1 -1
  71. package/dist/dsh/core/host.js +6 -25
  72. package/dist/dsh/core/host.js.map +1 -1
  73. package/dist/dsh/core/index.d.ts +256 -1
  74. package/dist/dsh/core/index.d.ts.map +1 -1
  75. package/dist/dsh/core/index.js +5 -2
  76. package/dist/dsh/core/index.js.map +1 -1
  77. package/dist/dsh/decisions/akinator-classification.d.ts +3 -3
  78. package/dist/dsh/decisions/akinator-classification.d.ts.map +1 -1
  79. package/dist/dsh/decisions/akinator-classification.js +17 -56
  80. package/dist/dsh/decisions/akinator-classification.js.map +1 -1
  81. package/dist/dsh/execution-support.d.ts +10 -0
  82. package/dist/dsh/execution-support.d.ts.map +1 -1
  83. package/dist/dsh/execution-support.js +25 -9
  84. package/dist/dsh/execution-support.js.map +1 -1
  85. package/dist/dsh/host-adapter/memory-application-host.d.ts +2 -0
  86. package/dist/dsh/host-adapter/memory-application-host.d.ts.map +1 -1
  87. package/dist/dsh/host-adapter/memory-application-host.js +1 -0
  88. package/dist/dsh/host-adapter/memory-application-host.js.map +1 -1
  89. package/dist/dsh/host-adapter/routing.d.ts.map +1 -1
  90. package/dist/dsh/host-adapter/routing.js +1 -22
  91. package/dist/dsh/host-adapter/routing.js.map +1 -1
  92. package/dist/dsh/host-adapter.d.ts +2 -2
  93. package/dist/dsh/host-adapter.d.ts.map +1 -1
  94. package/dist/dsh/host-adapter.js +16 -10
  95. package/dist/dsh/host-adapter.js.map +1 -1
  96. package/dist/dsh/index.d.ts +486 -4
  97. package/dist/dsh/index.d.ts.map +1 -1
  98. package/dist/dsh/index.js +18 -15
  99. package/dist/dsh/index.js.map +1 -1
  100. package/dist/dsh/intake-clarification.js +2 -2
  101. package/dist/dsh/intake-clarification.js.map +1 -1
  102. package/dist/dsh/legacy-session-codecs.js +627 -7
  103. package/dist/dsh/legacy-session-codecs.js.map +3 -3
  104. package/dist/dsh/lisp/approval-settings.d.ts +6 -0
  105. package/dist/dsh/lisp/approval-settings.d.ts.map +1 -0
  106. package/dist/dsh/lisp/approval-settings.js +39 -0
  107. package/dist/dsh/lisp/approval-settings.js.map +1 -0
  108. package/dist/dsh/lisp/approval.d.ts +16 -2
  109. package/dist/dsh/lisp/approval.d.ts.map +1 -1
  110. package/dist/dsh/lisp/approval.js +32 -8
  111. package/dist/dsh/lisp/approval.js.map +1 -1
  112. package/dist/dsh/lisp/ci.js +3 -3
  113. package/dist/dsh/lisp/ci.js.map +1 -1
  114. package/dist/dsh/lisp/contracts.d.ts +4 -0
  115. package/dist/dsh/lisp/contracts.d.ts.map +1 -1
  116. package/dist/dsh/lisp/contracts.js +1 -0
  117. package/dist/dsh/lisp/contracts.js.map +1 -1
  118. package/dist/dsh/lisp/hot-store.d.ts +2 -0
  119. package/dist/dsh/lisp/hot-store.d.ts.map +1 -1
  120. package/dist/dsh/lisp/hot-store.js +2 -2
  121. package/dist/dsh/lisp/hot-store.js.map +1 -1
  122. package/dist/dsh/lisp/hot-tools.d.ts.map +1 -1
  123. package/dist/dsh/lisp/hot-tools.js +4 -2
  124. package/dist/dsh/lisp/hot-tools.js.map +1 -1
  125. package/dist/dsh/lisp/manager.d.ts +2 -0
  126. package/dist/dsh/lisp/manager.d.ts.map +1 -1
  127. package/dist/dsh/lisp/manager.js +24 -7
  128. package/dist/dsh/lisp/manager.js.map +1 -1
  129. package/dist/dsh/lisp/package-manager.d.ts +9 -0
  130. package/dist/dsh/lisp/package-manager.d.ts.map +1 -0
  131. package/dist/dsh/lisp/package-manager.js +62 -0
  132. package/dist/dsh/lisp/package-manager.js.map +1 -0
  133. package/dist/dsh/lisp/packages.d.ts +28 -0
  134. package/dist/dsh/lisp/packages.d.ts.map +1 -0
  135. package/dist/dsh/lisp/packages.js +260 -0
  136. package/dist/dsh/lisp/packages.js.map +1 -0
  137. package/dist/dsh/lisp/proposal-batch.d.ts +1 -0
  138. package/dist/dsh/lisp/proposal-batch.d.ts.map +1 -1
  139. package/dist/dsh/lisp/proposal-batch.js +5 -3
  140. package/dist/dsh/lisp/proposal-batch.js.map +1 -1
  141. package/dist/dsh/lisp/surface.d.ts.map +1 -1
  142. package/dist/dsh/lisp/surface.js +98 -33
  143. package/dist/dsh/lisp/surface.js.map +1 -1
  144. package/dist/dsh/lisp/worker.js +2 -2
  145. package/dist/dsh/lisp/worker.js.map +1 -1
  146. package/dist/dsh/live-approval-config.d.ts +23 -0
  147. package/dist/dsh/live-approval-config.d.ts.map +1 -0
  148. package/dist/dsh/live-approval-config.js +25 -0
  149. package/dist/dsh/live-approval-config.js.map +1 -0
  150. package/dist/dsh/memory-application.d.ts +3 -1
  151. package/dist/dsh/memory-application.d.ts.map +1 -1
  152. package/dist/dsh/memory-application.js +2 -2
  153. package/dist/dsh/memory-application.js.map +1 -1
  154. package/dist/dsh/modules/enno.js +1 -1
  155. package/dist/dsh/modules/enno.js.map +1 -1
  156. package/dist/dsh/native-search.d.ts +3 -0
  157. package/dist/dsh/native-search.d.ts.map +1 -0
  158. package/dist/dsh/native-search.js +31 -0
  159. package/dist/dsh/native-search.js.map +1 -0
  160. package/dist/dsh/on-demand-intake.d.ts +7 -2
  161. package/dist/dsh/on-demand-intake.d.ts.map +1 -1
  162. package/dist/dsh/on-demand-intake.js +45 -10
  163. package/dist/dsh/on-demand-intake.js.map +1 -1
  164. package/dist/dsh/orchestration/managed-agent-executor.d.ts +20 -14
  165. package/dist/dsh/orchestration/managed-agent-executor.d.ts.map +1 -1
  166. package/dist/dsh/orchestration/managed-agent-executor.js +18 -6
  167. package/dist/dsh/orchestration/managed-agent-executor.js.map +1 -1
  168. package/dist/dsh/paths.d.ts +1 -1
  169. package/dist/dsh/paths.d.ts.map +1 -1
  170. package/dist/dsh/paths.js +2 -2
  171. package/dist/dsh/paths.js.map +1 -1
  172. package/dist/dsh/setup.d.ts +1 -1
  173. package/dist/dsh/setup.d.ts.map +1 -1
  174. package/dist/dsh/setup.js +2 -0
  175. package/dist/dsh/setup.js.map +1 -1
  176. package/dist/dsh/skill-prompts.json +1 -1
  177. package/dist/index.js +2 -2
  178. package/dist/locale/en.json +1 -1
  179. package/dist/locale/ja.json +1 -1
  180. package/dist/locale/ko.json +1 -1
  181. package/dist/locale/zh-CN.json +1 -1
  182. package/dist/memory/application.d.ts +4 -1
  183. package/dist/memory/application.d.ts.map +1 -1
  184. package/dist/memory/application.js +4 -3
  185. package/dist/memory/application.js.map +1 -1
  186. package/docs/{orca-recording.md → agenticreplay-recording.md} +56 -38
  187. package/docs/agenticreplay-verification.md +54 -0
  188. package/docs/core-modules.md +2 -2
  189. package/docs/deep-planning.md +4 -4
  190. package/docs/dependency-security.md +20 -1
  191. package/docs/dsh-plugin.md +21 -24
  192. package/docs/execution-support.md +2 -2
  193. package/docs/getting-started.ja.md +1 -1
  194. package/docs/getting-started.md +1 -1
  195. package/docs/harness-map.md +1 -1
  196. package/docs/keyboard-shortcuts.md +1 -2
  197. package/docs/lisp-verification.md +1 -1
  198. package/docs/lisp.md +44 -2
  199. package/docs/memory-application.md +1 -1
  200. package/docs/memory-lifecycle-verification.md +1 -1
  201. package/docs/model-selection.ja.md +1 -1
  202. package/docs/model-selection.md +1 -1
  203. package/docs/on-demand-intake.md +6 -6
  204. package/docs/pr72-ci-verification.md +3 -4
  205. package/docs/session-history-repair.md +1 -1
  206. package/docs/token-efficiency.md +2 -2
  207. package/docs/tool-exposure.md +4 -4
  208. package/docs/typed-decisions.md +13 -8
  209. package/dsh/cordis.patch.yml +1 -1
  210. package/lisp/supervisor.mjs +10 -4
  211. package/lisp/tools.lisp +20 -3
  212. package/migrations/034_agenticreplay.sql +42 -0
  213. package/package.json +45 -24
  214. package/scripts/repair-continuation-source.mjs +21 -13
  215. package/scripts/verify-lisp-vendor.mjs +4 -2
  216. package/skills/kiokuko-lisp/SKILL.md +155 -145
  217. package/skills/kiokuko-soul/SKILL.md +3 -3
  218. package/dist/dsh/memory-review-presentation.d.ts +0 -10
  219. package/dist/dsh/memory-review-presentation.d.ts.map +0 -1
  220. package/dist/dsh/memory-review-presentation.js +0 -29
  221. package/dist/dsh/memory-review-presentation.js.map +0 -1
  222. package/dist/dsh/orca-command-surface.d.ts +0 -5
  223. package/dist/dsh/orca-command-surface.d.ts.map +0 -1
  224. package/dist/dsh/orca-command-surface.js.map +0 -1
  225. package/dist/dsh/orca-event-mapper.d.ts.map +0 -1
  226. package/dist/dsh/orca-event-mapper.js.map +0 -1
  227. package/dist/dsh/orca-files.d.ts +0 -21
  228. package/dist/dsh/orca-files.d.ts.map +0 -1
  229. package/dist/dsh/orca-files.js.map +0 -1
  230. package/dist/dsh/orca-hooks.d.ts +0 -5
  231. package/dist/dsh/orca-hooks.d.ts.map +0 -1
  232. package/dist/dsh/orca-hooks.js.map +0 -1
  233. package/dist/dsh/orca-host.d.ts.map +0 -1
  234. package/dist/dsh/orca-host.js.map +0 -1
  235. package/dist/dsh/orca-read-service.d.ts +0 -20
  236. package/dist/dsh/orca-read-service.d.ts.map +0 -1
  237. package/dist/dsh/orca-read-service.js.map +0 -1
  238. package/dist/dsh/orca-recorder.d.ts.map +0 -1
  239. package/dist/dsh/orca-recorder.js.map +0 -1
  240. package/dist/dsh/orca-security.d.ts.map +0 -1
  241. package/dist/dsh/orca-security.js.map +0 -1
  242. package/dist/dsh/orca-session-choice.d.ts +0 -24
  243. package/dist/dsh/orca-session-choice.d.ts.map +0 -1
  244. package/dist/dsh/orca-session-choice.js.map +0 -1
  245. package/dist/dsh/orca-status-presentation.d.ts +0 -6
  246. package/dist/dsh/orca-status-presentation.d.ts.map +0 -1
  247. package/dist/dsh/orca-status-presentation.js.map +0 -1
  248. package/dist/dsh/orca-store.d.ts +0 -16
  249. package/dist/dsh/orca-store.d.ts.map +0 -1
  250. package/dist/dsh/orca-store.js +0 -42
  251. package/dist/dsh/orca-store.js.map +0 -1
  252. package/dist/dsh/orca-types.d.ts +0 -64
  253. package/dist/dsh/orca-types.d.ts.map +0 -1
  254. package/dist/dsh/orca-types.js.map +0 -1
  255. package/docs/orca-verification.md +0 -61
  256. /package/docs/{ORCAREPLAY-LICENSE.txt → AGENTICREPLAY-LICENSE.txt} +0 -0
package/PERMISSIONS.md CHANGED
@@ -7,7 +7,7 @@ Kiokuko operation.
7
7
  This document describes the full compatibility package. The
8
8
  [configured core](docs/core-modules.md) synchronizes only its selected managed
9
9
  Skills and uses the shared database, intake, ledger and scoped memory. It mounts
10
- source-backed index reasoning by default. Orca, Deep, other advanced-memory workers,
10
+ source-backed index reasoning by default. AgenticReplay, Deep, other advanced-memory workers,
11
11
  session-history repair and the full browser client are optional. Enno retains the existing compatibility host adapter;
12
12
  Lisp adds protected execution and its existing explicit approval boundaries.
13
13
  Omitted managed Skills are preserved on disk. Configured startup rejects unsafe
@@ -147,7 +147,7 @@ Source excerpts and the problem are sent to those configured model providers.
147
147
  It offers no shell, mutation, arbitrary MCP or further child-spawn capability.
148
148
  Deep memory extraction shares the request budget. Unknown Deep calls and memory
149
149
  extractions are not automatically resent after a crash. Deep children inherit
150
- only their exact parent's existing Orca recording choice. See
150
+ only their exact parent's existing AgenticReplay recording choice. See
151
151
  [Deep planning](docs/deep-planning.md) for limits and recovery behavior.
152
152
 
153
153
  Missing optional dependencies, unavailable external services, stale or
@@ -156,31 +156,31 @@ conflicts are reported as failures or unavailable states. They are never
156
156
  converted into normal success or silently redirected to another repository or
157
157
  run.
158
158
 
159
- ## Orca recordings
159
+ ## AgenticReplay recordings
160
160
 
161
- `orca.enabled` defaults to `true`, including in the installed bundle configuration.
161
+ `agenticReplay.enabled` defaults to `true`, including in the installed bundle configuration.
162
162
  This enables the feature, and configuration also approves it: each interactive
163
163
  session is recorded without a question, and delegated or managed child sessions
164
- follow the same default without ever being asked. `orca.askOnStart: true`
164
+ follow the same default without ever being asked. `agenticReplay.askOnStart: true`
165
165
  restores the per-session question instead, and child sessions then need an
166
- explicit `/kioku-orca start`. Default recording, an affirmative answer or
167
- `/kioku-orca start` authorize capture. Choices are
166
+ explicit `/kioku-agenticreplay start`. Default recording, an affirmative answer or
167
+ `/kioku-agenticreplay start` authorize capture. Choices are
168
168
  saved in SQLite and outrank the default, so a saved refusal keeps that session
169
169
  unrecorded; with `askOnStart: true`, skip/cancel or unavailable UI continues
170
170
  without recording.
171
- Set it to `false` and reload to disable the feature. The runtime dependencies
172
- `@orcareplay/core`, `@orcareplay/schema`, and `@orcareplay/viewer` with range `>=0.2.1`
173
- are installed automatically by npm/pnpm with this package. No extra installer,
171
+ Set it to `false` and reload to disable the feature. The runtime dependency
172
+ `agenticreplay` uses `>=0.1.0 <1.0.0` and installs automatically through npm.
173
+ Kiokuko resolves its bundled core, schema and viewer libraries from that package. No extra installer,
174
174
  startup subprocess, automatic package repair, or network transmission is added.
175
- The dependencies are Apache-2.0; the [upstream license](docs/ORCAREPLAY-LICENSE.txt)
176
- and viewer credit are retained. Disabled recording never initializes Orca or creates trace files.
175
+ The dependencies are Apache-2.0; the [upstream license](docs/AGENTICREPLAY-LICENSE.txt)
176
+ and viewer credit are retained. Disabled recording never initializes AgenticReplay or creates trace files.
177
177
 
178
178
  After an affirmative session choice or start command, projected model content and tool final results are
179
- written to `<verified workspace>/.orca/runs`, or under
180
- `<Kiokuko data directory>/traces/projects/<workspace hash>/.orca/runs`.
181
- For Orca, the main database holds the session/run index and recording choices, not log bodies. `show` and `export` require
182
- the exact native command agent/session; no Orca HTTP API or model tool exists.
183
- Offline HTML is written only to `.orca/exports/<run ID>.html`.
179
+ written to `<verified workspace>/.agenticreplay/runs`, or under
180
+ `<Kiokuko data directory>/traces/projects/<workspace hash>/.agenticreplay/runs`.
181
+ For AgenticReplay, the main database holds the session/run index and recording choices, not log bodies. `show` and `export` require
182
+ the exact native command agent/session; no AgenticReplay HTTP API or model tool exists.
183
+ Offline HTML is written only to `.agenticreplay/exports/<run ID>.html`.
184
184
 
185
185
  Traces and HTML can contain sensitive source and conversations. Known secret
186
186
  patterns and credential-shaped fields are removed before writing, but arbitrary
@@ -188,9 +188,9 @@ secrets cannot all be recognized. Use `capture.content: metadata` to omit bodies
188
188
  arguments and result content. Reasoning is excluded unless separately enabled;
189
189
  environment variables, replayState, image bytes and attachments are excluded.
190
190
  New directories/files use 0700/0600 and unsafe existing modes/symlinks are refused.
191
- `.orca/.gitignore` excludes new stores from Git. Exports are never published or
191
+ `.agenticreplay/.gitignore` excludes new stores from Git. Exports are never published or
192
192
  uploaded automatically. Deletion and disabling instructions are in
193
- [Orca recording](docs/orca-recording.md).
193
+ [AgenticReplay recording](docs/agenticreplay-recording.md).
194
194
  # Optional Common Lisp mode
195
195
 
196
196
  With `lisp.enabled: true`, `/kioku-lisp enable` starts an OS-protected SBCL for the
@@ -266,3 +266,36 @@ selection flow or shows setup instructions; it does not install or replace files
266
266
  No credential value is stored in this selection. Existing request
267
267
  bindings remain immutable; the command does not edit DSH profile files or restart
268
268
  DSH or the worker. `use default` restores the plugin configuration.
269
+
270
+ <!-- kiokuko:runtime approval-policy -->
271
+ ## Profile-wide Lisp approval policy
272
+
273
+ `lisp.approvalMode` defaults to `ask`; auto-approval is never inferred from an
274
+ unknown request or from selecting Lisp. Ordinary questions keep normal execution
275
+ without a Lisp choice or an approval selector in the chat composer. Once a task
276
+ is identified as coding implementation or debugging, the existing coding choice
277
+ can offer protected Lisp or normal execution; coding plans do not require Lisp.
278
+ Auto-approval is an explicit opt-in through General settings,
279
+ `/kioku-lisp approval auto`, or “Auto-approve all Lisp actions for this profile and
280
+ continue” in a Lisp approval dialog. Use `/kioku-lisp approval ask` to return to
281
+ manual consent. Explicit configuration and saved profile settings persist across
282
+ chats and restarts and override the default; changing the default does not revoke
283
+ a previously saved choice.
284
+ All Lisp permission categories are covered, including file restoration, host
285
+ verification, public npm package operations, and shared-function changes.
286
+
287
+ Follow the current host-reported mode. In auto mode execute authorized work
288
+ without asking whether to submit, resubmit, run tests, or apply changes. Ask only
289
+ for missing intent that materially changes the work. In ask mode submit the
290
+ operation directly to the host approval dialog without an extra conversational
291
+ permission question. Earlier references to human approval describe ask mode.
292
+ Explicit refusal, cancellation, stale inputs and unknown outcomes still stop
293
+ execution; changing mode does not replay completed or refused operations.
294
+ Identity checks, protected paths, backups and journal recovery remain enforced.
295
+ <!-- /kiokuko:runtime -->
296
+
297
+ Pinned DSH stores this setting in the native `kiokuko-lisp` namespace, keyed by
298
+ the host-owned profile identity. Current DSH exposes `lisp.approvalMode` through
299
+ the native `kiokuko-dsh` configuration form and saves its profile patch. This
300
+ compatibility difference does not change the controls or scope. No separate
301
+ preference file or database migration is used.
package/README.ja.md CHANGED
@@ -17,7 +17,7 @@
17
17
  - **Continuity** — 既定では無効です。`continuity.mode: active` にすると、最近の実行記録を短くまとめてモデルへ渡します。[設定方法](docs/continuity.ja.md)
18
18
  - **事前推論索引** — 出典付きatomic・bridge候補を事前生成し、検索時に本文を渡します。既定で有効、workspaceごとUTC日次8呼び出しまで。[設定・費用・停止・評価](docs/index-reasoning.md)
19
19
  - **記憶学習** — 完了した作業から再利用できる episode・教訓候補を作ります。[設定](docs/memory-evolution.md)
20
- - **OrcaReplay** — モデル・ツールの動作を記録し、HTML に出力できます。[設定とコマンド](docs/orca-recording.md)
20
+ - **AgenticReplay** — モデル・ツールの動作を記録し、HTML に出力できます。[設定とコマンド](docs/agenticreplay-recording.md)
21
21
  - **Diff レビュー** — DSH の右ペインで、選択した差分と Kiokuko の文脈を根拠付きで確認できます。分析は明示操作です。[使い方と制限](docs/diff-review.ja.md)
22
22
  - **日本語出力** — 対応モデルへ自然な日本語を書く同梱 Skill を渡します。[詳細](docs/japanese-output.md)
23
23
 
@@ -68,17 +68,11 @@ pnpm dsh plugin --profile web update kiokuko-dsh --latest
68
68
 
69
69
  起動時には、起動ディレクトリの `AGENTS.md` にある既存の Kiokuko 管理ブロックも更新し、その外側の指示は保持します。パッケージ更新後は DSH を再起動してください。別の作業ディレクトリや配備コピーの確認・修復は[セットアップ手順](docs/dsh-plugin.md#what-setup-updates-and-when)を参照してください。`kiokuko use` は DSH のセットアップコマンドではありません。
70
70
 
71
- Orca の 0.3.0 などが公開された後、Orca 関連の依存を更新する場合:
72
-
73
- ```bash
74
- pnpm dsh plugin --profile web update --depth Infinity '@orcareplay/*'
75
- pnpm dsh plugin --profile web why @orcareplay/core
76
- pnpm dsh web
77
- ```
78
-
79
- 導入済みの Kiokuko に `>=0.2.1` の依存指定が含まれていることが前提です。
80
- 正式版 0.3.0 以降も許可する指定ですが、既存環境が自動更新されるわけではありません。
81
- 更新後は記録・HTML 出力を確認してください。[更新の詳細](docs/dsh-plugin.md#update)
71
+ `agenticreplay` パッケージは `>=0.1.0 <1.0.0` を指定しています。今後のパッチ版・マイナー版は
72
+ 依存範囲を変えずに更新できます。ロックファイルは明示的に更新するまで検証済みの版を保持します。
73
+ 更新後は DSH を再起動してください。OrcaReplay から更新する際は、明示的な `orca` 設定を
74
+ `agenticReplay` に変更します。保存済みの記録設定は引き継ぎ、旧ログは保持しますが取り込みません。
75
+ [更新の詳細](docs/dsh-plugin.md#update) · [記録機能の移行](docs/agenticreplay-recording.md#upgrade-from-orcareplay)
82
76
 
83
77
  既存チャットが `unknown ... not marked ignorable` で開けない場合は、[履歴の修復手順](docs/session-history-repair.md)を参照してください。
84
78
 
package/README.ko.md CHANGED
@@ -3,7 +3,7 @@
3
3
  [English](README.md) | [日本語](README.ja.md) | [简体中文](README.zh-CN.md) | 한국어
4
4
 
5
5
  [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness)에 프로젝트 기억, 작업 계획, 검증 지원을 추가합니다.
6
- OrcaReplay로 모델과 도구의 동작을 기록하고, 기록을 확인하거나 HTML로 내보낼 수 있습니다.
6
+ AgenticReplay로 모델과 도구의 동작을 기록하고, 기록을 확인하거나 HTML로 내보낼 수 있습니다.
7
7
  DSH 표준 agent preset은 `subagent`와 `subagent_fork`를 제공합니다. 일반 하위 agent에서는 Kiokuko 실행 방식을 다시 묻지 않습니다. [설정](docs/dsh-plugin.md#subagents).
8
8
 
9
9
 
@@ -29,14 +29,14 @@ pnpm dsh web
29
29
  시작 후 평소처럼 작업을 입력하면 됩니다. Kiokuko 전용 setup 작업은 필요하지 않습니다.
30
30
  GitHub 및 로컬 설치 방법은 [플러그인 안내](docs/dsh-plugin.md)를 참고하세요.
31
31
 
32
- OrcaReplay 기능은 자동으로 설정되며 **수동 설정이 필요 없습니다**. 각 채팅은 확인 없이 상세 로그를 기록합니다.
33
- 기록하면 이후 모델 응답과 도구 실행 결과가 세션 작업 공간의 `.orca/runs/`에 저장됩니다. 결정은 세션별로 유지되므로 `/kioku-orca stop`한 채팅은 기록하지 않은 상태로 남습니다. 채팅 시작 시 확인하려면 `orca.askOnStart: true`를 설정하세요.
32
+ AgenticReplay 기능은 자동으로 설정되며 **수동 설정이 필요 없습니다**. 각 채팅은 확인 없이 상세 로그를 기록합니다.
33
+ 기록하면 이후 모델 응답과 도구 실행 결과가 세션 작업 공간의 `.agenticreplay/runs/`에 저장됩니다. 결정은 세션별로 유지되므로 `/kioku-agenticreplay stop`한 채팅은 기록하지 않은 상태로 남습니다. 채팅 시작 시 확인하려면 `agenticReplay.askOnStart: true`를 설정하세요.
34
34
 
35
- - `/kioku-orca start`: 기록을 수동으로 시작하거나 중지 후 다시 시작합니다. 해당 채팅을 중지하지 않았다면 실행할 필요가 없습니다. 과거 동작은 기록되지 않습니다.
36
- - `/kioku-orca status`: 기록 상태, 저장 위치와 다음 동작을 간단히 표시합니다. 진단용 상세 정보는 `/kioku-orca status --json`으로 확인할 수 있습니다.
35
+ - `/kioku-agenticreplay start`: 기록을 수동으로 시작하거나 중지 후 다시 시작합니다. 해당 채팅을 중지하지 않았다면 실행할 필요가 없습니다. 과거 동작은 기록되지 않습니다.
36
+ - `/kioku-agenticreplay status`: 기록 상태, 저장 위치와 다음 동작을 간단히 표시합니다. 진단용 상세 정보는 `/kioku-agenticreplay status --json`으로 확인할 수 있습니다.
37
37
 
38
- `/kioku-orca stop`으로 로그를 확정한 뒤 `list`로 run ID를 확인하고, `show <run ID>`로 내용을 보거나 `export <run ID>`로 HTML을 내보낼 수 있습니다(모두 `/kioku-orca` 뒤에 입력).
39
- 기록을 끄려면 `orca.enabled: false`를 설정하고 다시 로드하세요. 자세한 내용은 [기록 설정과 명령](docs/orca-recording.md)을 참고하세요.
38
+ `/kioku-agenticreplay stop`으로 로그를 확정한 뒤 `list`로 run ID를 확인하고, `show <run ID>`로 내용을 보거나 `export <run ID>`로 HTML을 내보낼 수 있습니다(모두 `/kioku-agenticreplay` 뒤에 입력).
39
+ 기록을 끄려면 `agenticReplay.enabled: false`를 설정하고 다시 로드하세요. 자세한 내용은 [기록 설정과 명령](docs/agenticreplay-recording.md)을 참고하세요.
40
40
 
41
41
  ## 업데이트
42
42
 
@@ -67,17 +67,11 @@ pnpm dsh plugin --profile web update kiokuko-dsh --latest
67
67
 
68
68
  시작 시 시작 디렉터리의 `AGENTS.md`에 있는 기존 Kiokuko 관리 블록도 갱신하며, 블록 밖의 지침은 보존합니다. 패키지 업데이트 후 DSH를 다시 시작하세요. 다른 작업 디렉터리나 오래된 복사본의 확인 및 복구는 [설정 절차](docs/dsh-plugin.md#what-setup-updates-and-when)를 참고하세요. `kiokuko use`는 DSH 설정 명령이 아닙니다.
69
69
 
70
- Orca 0.3.0 등 새 버전이 공개된 후 Orca 관련 의존 패키지를 업데이트하려면:
71
-
72
- ```bash
73
- pnpm dsh plugin --profile web update --depth Infinity '@orcareplay/*'
74
- pnpm dsh plugin --profile web why @orcareplay/core
75
- pnpm dsh web
76
- ```
77
-
78
- 설치된 Kiokuko에 `>=0.2.1` 의존 범위가 포함되어 있어야 합니다. 이 범위는 정식 0.3.0 이후 버전을
79
- 허용하지만 기존 설치를 자동으로 업데이트하지는 않습니다. 업데이트 후 기록과 HTML 내보내기를 확인하세요.
80
- [업데이트 상세 안내](docs/dsh-plugin.md#update)
70
+ `agenticreplay` 패키지의 범위는 `>=0.1.0 <1.0.0`입니다. 이후 패치 및 마이너 버전은
71
+ 범위를 변경하지 않고 업데이트할 수 있습니다. 명시적으로 업데이트할 때까지 잠금 파일은 검증된 버전을 유지합니다.
72
+ 업데이트 후 DSH를 다시 시작하세요. OrcaReplay에서 업데이트할 때는 명시적인 `orca` 설정을
73
+ `agenticReplay`로 변경하세요. 저장된 기록 선택과 기존 로그는 유지되지만 이전 로그는 가져오지 않습니다.
74
+ [업데이트 안내](docs/dsh-plugin.md#update) · [기록 기능 이전](docs/agenticreplay-recording.md#upgrade-from-orcareplay)
81
75
 
82
76
  DSH 업데이트 후 Kiokuko를 불러오지 못하면 [시작 오류 복구 절차](docs/dsh-plugin.md#startup-failure-after-a-dsh-update)에서 해당 프로필의 업데이트 및 재설치 명령을 확인하세요. 세션 로그와 Kiokuko 데이터베이스는 삭제하지 마세요. API 호환성 문제는 재설치만으로 해결되지 않을 수 있습니다.
83
77
 
package/README.md CHANGED
@@ -17,7 +17,7 @@ Inspect sources and corrections with `/kioku-memory explain ENTRY_ID`; explicitl
17
17
  - **Continuity** — Disabled by default. Set `continuity.mode: active` to summarize recent execution evidence for the model. [Setup](docs/continuity.md)
18
18
  - **Memory evolution** — Turn completed work into reusable episode and lesson candidates. [Settings](docs/memory-evolution.md)
19
19
  - **Verified automatic Global memory** — Three independent, host-observed successful applications can create a scoped `source_verified` Global memory. [Conditions and opt-out](docs/auto-globalization.md)
20
- - **OrcaReplay** — Record model/tool activity and export it as HTML. [Settings and commands](docs/orca-recording.md)
20
+ - **AgenticReplay** — Record model/tool activity and export it as HTML. [Settings and commands](docs/agenticreplay-recording.md)
21
21
  - **Japanese output** — Give supported models a bundled Skill for natural Japanese. [Details](docs/japanese-output.md)
22
22
 
23
23
  Tool exposure defaults to `auto`: task type and current phase determine the Kiokuko model tools shown. Native tools stay available; `full` is an explicit compatibility override. See [tool exposure](docs/tool-exposure.md).
@@ -67,17 +67,12 @@ These are the full-package defaults. The [configured core and optional modules](
67
67
 
68
68
  Startup also refreshes an existing Kiokuko managed block in the startup directory’s `AGENTS.md`, preserving your other instructions. Restart DSH after updating the package. See [setup and verification](docs/dsh-plugin.md#what-setup-updates-and-when) for another workspace or stale copies; `kiokuko use` is not the DSH setup command.
69
69
 
70
- To update Orca dependencies after a release such as 0.3.0:
71
-
72
- ```bash
73
- pnpm dsh plugin --profile web update --depth Infinity '@orcareplay/*'
74
- pnpm dsh plugin --profile web why @orcareplay/core
75
- pnpm dsh web
76
- ```
77
-
78
- The installed Kiokuko must include the `>=0.2.1` dependency range. It permits
79
- stable 0.3.0 and later releases; it does not automatically update existing installs.
80
- Verify recording and export after updating. See [update details](docs/dsh-plugin.md#update).
70
+ The `agenticreplay` distribution uses `>=0.1.0 <1.0.0`, so future patch and minor releases
71
+ can be installed by an explicit dependency update without changing the range.
72
+ Lockfiles retain the tested versions until updated. Restart DSH afterward.
73
+ When upgrading from OrcaReplay, rename explicit `orca` settings to `agenticReplay`;
74
+ saved session choices survive and legacy traces are retained but not imported.
75
+ [Update details](docs/dsh-plugin.md#update) · [Recording upgrade](docs/agenticreplay-recording.md#upgrade-from-orcareplay)
81
76
 
82
77
  If existing chats fail with an unknown `kiokuko/` event, see [history repair](docs/session-history-repair.md).
83
78
 
package/README.zh-CN.md CHANGED
@@ -3,7 +3,7 @@
3
3
  [English](README.md) | [日本語](README.ja.md) | 简体中文 | [한국어](README.ko.md)
4
4
 
5
5
  为 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) 添加项目记忆、任务规划和验证支持。
6
- OrcaReplay 可记录模型和工具活动,查看记录并导出 HTML。
6
+ AgenticReplay 可记录模型和工具活动,查看记录并导出 HTML。
7
7
  标准 DSH agent preset 提供 `subagent` 和 `subagent_fork`。普通子 agent 不会再次询问 Kiokuko 的执行模式。[配置说明](docs/dsh-plugin.md#subagents)。
8
8
 
9
9
 
@@ -29,14 +29,14 @@ pnpm dsh web
29
29
  启动后直接输入任务,无需额外的 Kiokuko setup 操作。
30
30
  GitHub 和本地安装方式见[插件指南](docs/dsh-plugin.md)。
31
31
 
32
- OrcaReplay 的功能配置会自动安装,**无需手动设置**。每次聊天都会在无需确认的情况下记录详细日志。
33
- 记录后,后续模型回复和工具执行结果将保存到会话工作目录的 `.orca/runs/`。决定按会话保存,因此执行过 `/kioku-orca stop` 的聊天保持不记录。若想在聊天开始时确认,请设置 `orca.askOnStart: true`。
32
+ AgenticReplay 的功能配置会自动安装,**无需手动设置**。每次聊天都会在无需确认的情况下记录详细日志。
33
+ 记录后,后续模型回复和工具执行结果将保存到会话工作目录的 `.agenticreplay/runs/`。决定按会话保存,因此执行过 `/kioku-agenticreplay stop` 的聊天保持不记录。若想在聊天开始时确认,请设置 `agenticReplay.askOnStart: true`。
34
34
 
35
- - `/kioku-orca start`:手动开始记录,或在停止后重新开始。若该聊天未被停止,则无需执行。不会补录过去的活动。
36
- - `/kioku-orca status`:简要显示记录状态、保存位置和下一步操作。诊断详情可用 `/kioku-orca status --json` 查看。
35
+ - `/kioku-agenticreplay start`:手动开始记录,或在停止后重新开始。若该聊天未被停止,则无需执行。不会补录过去的活动。
36
+ - `/kioku-agenticreplay status`:简要显示记录状态、保存位置和下一步操作。诊断详情可用 `/kioku-agenticreplay status --json` 查看。
37
37
 
38
- 用 `/kioku-orca stop` 完成日志记录后,用 `list` 查看 run ID、`show <run ID>` 查看内容、`export <run ID>` 导出 HTML(均在 `/kioku-orca` 后输入)。
39
- 要禁用记录,请设置 `orca.enabled: false` 并重新加载。详见[记录设置与命令](docs/orca-recording.md)。
38
+ 用 `/kioku-agenticreplay stop` 完成日志记录后,用 `list` 查看 run ID、`show <run ID>` 查看内容、`export <run ID>` 导出 HTML(均在 `/kioku-agenticreplay` 后输入)。
39
+ 要禁用记录,请设置 `agenticReplay.enabled: false` 并重新加载。详见[记录设置与命令](docs/agenticreplay-recording.md)。
40
40
 
41
41
  ## 更新
42
42
 
@@ -66,16 +66,11 @@ pnpm dsh plugin --profile web update kiokuko-dsh --latest
66
66
 
67
67
  启动时也会更新启动目录中 `AGENTS.md` 的现有 Kiokuko 管理块,保留块外的指令。更新包后请重启 DSH。其他工作目录或旧副本的检查与修复请参阅[设置步骤](docs/dsh-plugin.md#what-setup-updates-and-when)。`kiokuko use` 不是 DSH 的设置命令。
68
68
 
69
- Orca 发布 0.3.0 等新版本后,更新 Orca 相关依赖:
70
-
71
- ```bash
72
- pnpm dsh plugin --profile web update --depth Infinity '@orcareplay/*'
73
- pnpm dsh plugin --profile web why @orcareplay/core
74
- pnpm dsh web
75
- ```
76
-
77
- 已安装的 Kiokuko 必须包含 `>=0.2.1` 依赖范围。该范围允许正式版 0.3.0 及后续版本,
78
- 但不会自动更新现有安装。更新后请检查记录和 HTML 导出。[更新详情](docs/dsh-plugin.md#update)
69
+ `agenticreplay` 包的版本范围为 `>=0.1.0 <1.0.0`,后续补丁和次版本可在不修改范围的情况下更新。
70
+ 锁文件会保留已验证的版本,直到明确更新依赖。更新后请重启 DSH。
71
+ 从 OrcaReplay 升级时,请将显式 `orca` 配置改为 `agenticReplay`;
72
+ 已保存的记录选择和旧日志会保留,但旧日志不会导入。
73
+ [更新详情](docs/dsh-plugin.md#update) · [记录功能迁移](docs/agenticreplay-recording.md#upgrade-from-orcareplay)
79
74
 
80
75
  DSH 更新后若无法加载 Kiokuko,请参阅[启动恢复步骤](docs/dsh-plugin.md#startup-failure-after-a-dsh-update),按对应 profile 更新或重新安装。请保留会话日志和 Kiokuko 数据库;重新安装不一定能解决 API 兼容性问题。
81
76
 
@@ -2,11 +2,11 @@
2
2
 
3
3
  The private legacy-history codec bundle includes code from the following MIT-licensed DeepSeek packages. These packages are not installed as runtime dependencies.
4
4
 
5
- - `@deepseek-ai/dsh-util-values@0.1.5-rc.2`
6
- - `@deepseek-ai/dsh-session-format@0.1.5-rc.1`
7
- - `@deepseek-ai/dsh-session-format-v0-to-v1@0.1.5-rc.1`
8
- - `@deepseek-ai/dsh-session-format-v1-to-v2@0.1.5-rc.1`
9
- - `@deepseek-ai/dsh-llm@0.1.5-rc.2`
5
+ - `@deepseek-ai/dsh-util-values@0.2.1-alpha.2`
6
+ - `@deepseek-ai/dsh-session-format@0.2.1-alpha.2`
7
+ - `@deepseek-ai/dsh-session-format-v0-to-v1@0.2.1-alpha.2`
8
+ - `@deepseek-ai/dsh-session-format-v1-to-v2@0.2.1-alpha.2`
9
+ - `@deepseek-ai/dsh-llm@0.2.1-alpha.2`
10
10
 
11
11
  MIT License
12
12
 
package/dist/client.cjs CHANGED
@@ -7,6 +7,44 @@ window.__ModuleLoader__.load({
7
7
  const { jsx, jsxs, Fragment } = require("react/jsx-runtime");
8
8
  const { useState, useRef, useEffect } = require("react");
9
9
  const { Modal, Button, IconDownloadOutline16, MarkdownText } = require("@deepseek-ai/dsh-client-ui-primitives");
10
+ function LispApprovalControl(props) {
11
+ const scope = props.approvalScope;
12
+ const [state, setState] = useState(() => scope.getSnapshot());
13
+ const [busy, setBusy] = useState(false);
14
+ const [error, setError] = useState('');
15
+ useEffect(() => scope.subscribe(() => setState(scope.getSnapshot())), [scope]);
16
+ const modern = props.modern === true;
17
+ const field = modern ? 'lisp' : Object.keys(state.base ?? {}).find(key => key === 'approvalMode' || key.startsWith('approvalMode-'));
18
+ const mode = modern ? state.value?.lisp?.approvalMode : field ? state.value?.[field] : undefined;
19
+ const update = async (mode) => {
20
+ if (busy || !field)
21
+ return;
22
+ setBusy(true);
23
+ setError('');
24
+ try {
25
+ const saved = modern ? await scope.mutate([{ op: 'set', path: ['lisp', 'approvalMode'], value: mode }]) : await scope.set(field, mode);
26
+ if (saved === false)
27
+ throw new Error('The host did not save the approval setting. Reload the current value and try again.');
28
+ }
29
+ catch (error) {
30
+ setError(messageOf(error));
31
+ }
32
+ finally {
33
+ setBusy(false);
34
+ }
35
+ };
36
+ return jsxs('div', { children: [
37
+ jsx('label', { children: jsxs(Fragment, { children: [
38
+ 'Lisp approvals · Entire profile ',
39
+ jsxs('select', { 'aria-label': 'Lisp approvals', value: mode ?? 'ask', disabled: busy || !field || state.status !== 'ready' || !state.writable,
40
+ onChange: (event) => void update(event.target.value),
41
+ children: [jsx('option', { value: 'ask', children: 'Ask' }), jsx('option', { value: 'auto', children: 'Auto-approve all' })] }),
42
+ ] }) }),
43
+ ...(state.status === 'ready' && state.writable ? [] : [jsx('span', { children: ' Profile settings are unavailable or read-only.' })]),
44
+ ...(error ? [jsx('span', { role: 'alert', children: error })] : []),
45
+ ...(busy ? [jsx('span', { role: 'status', children: 'Saving…' })] : []),
46
+ ] });
47
+ }
10
48
  const SESSION_EXPORT_PATH = '/api/session.export';
11
49
  const LOCALE_NAMESPACE = 'kiokuko-session-log-download';
12
50
  const INITIAL_DOWNLOAD_STATE = { bySession: {} };
@@ -555,6 +593,12 @@ window.__ModuleLoader__.load({
555
593
  return 'value';
556
594
  return 'choice';
557
595
  }
596
+ function isPlanReview(p) {
597
+ const q = p.questions[0];
598
+ return p.questions.length === 1 && !!q && !q.multiSelect && q.intent?.kind === 'plan-review'
599
+ && typeof q.detail === 'string' && (q.options?.length ?? 0) <= 3
600
+ && q.options?.some(o => o.label === q.intent.approve) === true;
601
+ }
558
602
  function intakePending(props) {
559
603
  const p = props.pendingInteraction;
560
604
  if (!p || !Array.isArray(p.questions) || !p.questions.length || typeof p.answer !== 'function'
@@ -569,19 +613,19 @@ window.__ModuleLoader__.load({
569
613
  return p;
570
614
  const q = p.questions[0];
571
615
  return p.kind === 'plan-review' && p.questions.length === 1 && !q.multiSelect && q.intent?.kind === 'plan-review'
572
- && typeof q.detail === 'string' && (q.options?.length ?? 0) <= 2 && q.options?.some((o) => o.label === q.intent.approve) ? p : null;
616
+ && typeof q.detail === 'string' && (q.options?.length ?? 0) <= 3 && q.options?.some((o) => o.label === q.intent.approve) ? p : null;
573
617
  }
574
618
  function IntakeQuestion(props) {
575
619
  const pending = props.matched, t = props.t;
576
620
  return jsx(IntakeQuestionCard, { key: `${pending.sessionId ?? ''}:${pending.key}`, pending,
577
- ...(pending.kind === 'plan-review' ? { reviewCopy: { discuss: t('review.discuss'),
621
+ ...(isPlanReview(pending) ? { reviewCopy: { discuss: t('review.discuss'),
578
622
  labels: { code: { copyLabel: t('review.copy'), copiedLabel: t('review.copied') }, footnotes: t('review.footnotes') } } } : {}),
579
623
  });
580
624
  }
581
625
  function IntakeQuestionCard(props) {
582
626
  const pending = props.pending;
583
627
  const reviewCopy = props.reviewCopy;
584
- const reviewing = pending.kind === 'plan-review';
628
+ const reviewing = isPlanReview(pending);
585
629
  const [batch, setBatch] = useState(() => readIntakeDraft(pending));
586
630
  const [snapshot, setSnapshot] = useState(() => pendingState(pending));
587
631
  const [busy, setBusy] = useState(false), [error, setError] = useState('');
@@ -591,8 +635,10 @@ window.__ModuleLoader__.load({
591
635
  const card = useRef(null), optionElements = useRef([]);
592
636
  const original = pending.questions[batch.page];
593
637
  const options = original.options ?? [];
638
+ const alternatives = options.filter(option => option.label !== original.intent?.approve);
594
639
  const question = { ...original, options: reviewing ? [{ label: reviewCopy.discuss },
595
- ...options.filter(o => o.label !== original.intent.approve), ...options.filter(o => o.label === original.intent.approve)] : options };
640
+ ...alternatives.slice(0, 1), ...options.filter(option => option.label === original.intent?.approve),
641
+ ...alternatives.slice(1)] : options };
596
642
  const draft = batch.drafts[batch.page], multi = question.multiSelect === true, inputKind = questionInputKind(question);
597
643
  const editable = () => !pending.review && !pendingState(pending).closed && pendingState(pending).channel !== 'none';
598
644
  useEffect(() => {
@@ -1396,6 +1442,13 @@ window.__ModuleLoader__.load({
1396
1442
  }
1397
1443
  /** Register Kiokuko's streaming Session-export browser surface. */
1398
1444
  function apply(ctx) {
1445
+ const installApprovals = (scope, approvalScope, modern) => {
1446
+ scope.slots.inject('settings.general.item', () => scope.slots.register({ name: 'settings.general.item', id: 'kiokuko-lisp-approval', locale: LOCALE_NAMESPACE,
1447
+ inject: () => ({ approvalScope, modern }),
1448
+ }, LispApprovalControl));
1449
+ };
1450
+ ctx.inject?.(['settingsScope'], scope => installApprovals(scope, scope.settingsScope.bind({ namespace: 'kiokuko-lisp' }), false));
1451
+ ctx.inject?.(['configForms'], scope => installApprovals(scope, scope.configForms.get('kiokuko-dsh'), true));
1399
1452
  const reviewController = new DiffReviewClientController();
1400
1453
  let rightSidebar;
1401
1454
  ctx.effect(() => async () => reviewController.dispose(), 'kiokuko-dsh: diff review browser lifecycle');
package/dist/client.d.ts CHANGED
@@ -14,6 +14,14 @@ export interface DshSessionDownloadOptions {
14
14
  readonly window?: DshSessionDownloadWindow;
15
15
  }
16
16
  interface DshClientContext {
17
+ readonly configForms?: {
18
+ get(namespace: string): LispApprovalScope;
19
+ };
20
+ readonly settingsScope?: {
21
+ bind(spec: {
22
+ namespace: string;
23
+ }): LispApprovalScope;
24
+ };
17
25
  readonly uiConversation: {
18
26
  readonly events: {
19
27
  register(definition: unknown): unknown;
@@ -48,6 +56,21 @@ interface DshClientContext {
48
56
  readonly kind: string;
49
57
  }) => void): unknown;
50
58
  }
59
+ interface LispApprovalScope {
60
+ getSnapshot(): {
61
+ status: string;
62
+ writable: boolean;
63
+ base?: Record<string, unknown>;
64
+ value?: Record<string, unknown>;
65
+ };
66
+ subscribe(listener: () => void): () => void;
67
+ set(field: string, value: unknown): Promise<unknown>;
68
+ mutate?(ops: {
69
+ op: 'set';
70
+ path: string[];
71
+ value: unknown;
72
+ }[]): Promise<boolean>;
73
+ }
51
74
  /** Browser helper that never builds a whole-log Blob in application memory. */
52
75
  export declare function downloadDshSessionLog(options: DshSessionDownloadOptions): Promise<'streamed' | 'navigated'>;
53
76
  export declare const inject: readonly ["slots", "locale", "uiConversation"];
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { DshPonytailCommandContext } from './commands.js';
2
+ import { type DshAgenticReplayHostServices } from './agenticreplay-types.js';
3
+ /** Human-only native command. No HTTP route or model tool is registered. */
4
+ export declare function mountDshAgenticReplayCommand(ctx: DshPonytailCommandContext, enabled: boolean, services?: DshAgenticReplayHostServices): () => void;
5
+ //# sourceMappingURL=agenticreplay-command-surface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agenticreplay-command-surface.d.ts","sourceRoot":"","sources":["../../src/dsh/agenticreplay-command-surface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAA;AAE9D,OAAO,EAAsB,KAAK,4BAA4B,EAAE,MAAM,0BAA0B,CAAA;AAGhG,4EAA4E;AAC5E,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,yBAAyB,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,4BAA4B,GAAG,MAAM,IAAI,CAuClJ"}
@@ -1,40 +1,40 @@
1
- import { DshOrcaReadService } from './orca-read-service.js';
2
- import { OrcaError } from './orca-types.js';
3
- import { formatDshOrcaStatus } from './orca-status-presentation.js';
1
+ import { DshAgenticReplayReadService } from './agenticreplay-read-service.js';
2
+ import { AgenticReplayError } from './agenticreplay-types.js';
3
+ import { formatDshAgenticReplayStatus } from './agenticreplay-status-presentation.js';
4
4
  /** Human-only native command. No HTTP route or model tool is registered. */
5
- export function mountDshOrcaCommand(ctx, enabled, services) {
6
- const reader = services ? new DshOrcaReadService(services.config, services.withIndex) : undefined;
7
- return ctx.commands.register({ name: 'kioku-orca', description: 'Session recording: status [--json] | list | start | stop | show <run> [cursor] | export <run>',
5
+ export function mountDshAgenticReplayCommand(ctx, enabled, services) {
6
+ const reader = services ? new DshAgenticReplayReadService(services.config, services.withIndex) : undefined;
7
+ return ctx.commands.register({ name: 'kioku-agenticreplay', description: 'Session recording: status [--json] | list | start | stop | show <run> [cursor] | export <run>',
8
8
  input: { hint: 'status [--json] | list | start | stop | show <run> [cursor] | export <run>' }, recordInput: false,
9
9
  handler: async (invocation) => {
10
10
  try {
11
11
  const agent = invocation.agent, session = agent?.session;
12
12
  if (!agent || !session || (agent.sessionId !== undefined && agent.sessionId !== session.id))
13
- throw new OrcaError('session_required');
13
+ throw new AgenticReplayError('session_required');
14
14
  const args = invocation.rawInput.trim().split(/\s+/u);
15
15
  const [action, runId, cursor] = args;
16
16
  if (!['status', 'list', 'start', 'stop', 'show', 'export'].includes(action ?? '')
17
17
  || args.length > (action === 'show' ? 3 : action === 'export' || action === 'status' ? 2 : 1)
18
18
  || (action === 'status' && runId !== undefined && runId !== '--json')
19
19
  || ((action === 'show' || action === 'export') && !runId))
20
- throw new OrcaError('invalid_command');
20
+ throw new AgenticReplayError('invalid_command');
21
21
  if (!enabled)
22
22
  return { kind: 'success', text: action === 'status'
23
23
  ? runId === '--json' ? JSON.stringify({ capability: 'disabled' }, null, 2)
24
- : 'OrcaReplay: 機能が無効です\n設定で orca.enabled を true にして DSH を再読み込みしてください。'
25
- : 'Orca recording: disabled. Enable orca.enabled in plugin configuration and reload.' };
24
+ : 'AgenticReplay: 機能が無効です\n設定で agenticReplay.enabled を true にして DSH を再読み込みしてください。'
25
+ : 'AgenticReplay recording: disabled. Enable agenticReplay.enabled in plugin configuration and reload.' };
26
26
  if (!services || !reader)
27
- return { kind: 'error', text: 'Orca recording: unavailable (native session/index/shutdown services required).' };
27
+ return { kind: 'error', text: 'AgenticReplay recording: unavailable (native session/index/shutdown services required).' };
28
28
  const binding = services.resolveSessionBinding(agent, session);
29
29
  if (!binding || binding.sessionId !== session.id)
30
- throw new OrcaError('session_required');
30
+ throw new AgenticReplayError('session_required');
31
31
  const status = async () => ({ ...services.recorder.status(binding.sessionId), ...await services.sessionRecordingStatus(binding) });
32
32
  let result;
33
33
  switch (action) {
34
34
  case 'status': {
35
35
  const snapshot = await status();
36
36
  return { kind: 'success', text: runId === '--json' ? JSON.stringify(snapshot, null, 2)
37
- : formatDshOrcaStatus(snapshot, binding.storeRoot) };
37
+ : formatDshAgenticReplayStatus(snapshot, binding.storeRoot) };
38
38
  }
39
39
  case 'list':
40
40
  result = await reader.list(binding);
@@ -57,9 +57,9 @@ export function mountDshOrcaCommand(ctx, enabled, services) {
57
57
  return { kind: 'success', text: JSON.stringify(result, null, 2) };
58
58
  }
59
59
  catch (error) {
60
- return { kind: 'error', text: error instanceof OrcaError ? error.code : 'orca_operation_failed' };
60
+ return { kind: 'error', text: error instanceof AgenticReplayError ? error.code : 'agenticreplay_operation_failed' };
61
61
  }
62
62
  },
63
63
  });
64
64
  }
65
- //# sourceMappingURL=orca-command-surface.js.map
65
+ //# sourceMappingURL=agenticreplay-command-surface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agenticreplay-command-surface.js","sourceRoot":"","sources":["../../src/dsh/agenticreplay-command-surface.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import type { EventInit } from '@orcareplay/core';
2
- import type { OrcaConfig } from './config.js';
3
- export declare const ORCA_CAPTURE: Readonly<{
1
+ import type { EventInit } from './agenticreplay-libraries.js';
2
+ import type { AgenticReplayConfig } from './config.js';
3
+ export declare const AGENTICREPLAY_CAPTURE: Readonly<{
4
4
  format: "dsh.observation.v1";
5
5
  httpCapture: false;
6
6
  filesystemSnapshot: false;
@@ -13,9 +13,9 @@ export declare const ORCA_CAPTURE: Readonly<{
13
13
  }>;
14
14
  export declare const record: (value: unknown) => Record<string, any>;
15
15
  export declare function label(value: unknown): string;
16
- export declare function projectBlocks(value: unknown, config: OrcaConfig): unknown[];
16
+ export declare function projectBlocks(value: unknown, config: AgenticReplayConfig): unknown[];
17
17
  /** Hash only host-attributed sections still present at the final request seam. */
18
- export declare function requestSourceManifest(messages: unknown, config: OrcaConfig): {
18
+ export declare function requestSourceManifest(messages: unknown, config: AgenticReplayConfig): {
19
19
  coverage: 'observed' | 'partial' | 'unknown';
20
20
  omittedCount: number;
21
21
  items: {
@@ -25,7 +25,7 @@ export declare function requestSourceManifest(messages: unknown, config: OrcaCon
25
25
  bytes: number;
26
26
  }[];
27
27
  };
28
- export declare function modelRequest(options: Record<string, any>, id: string, config: OrcaConfig): EventInit;
28
+ export declare function modelRequest(options: Record<string, any>, id: string, config: AgenticReplayConfig): EventInit;
29
29
  /** DSH uses a replacement usage snapshot, with disjoint cache counters. */
30
30
  export declare function usageAttrs(value: unknown): Record<string, unknown>;
31
- //# sourceMappingURL=orca-event-mapper.d.ts.map
31
+ //# sourceMappingURL=agenticreplay-event-mapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agenticreplay-event-mapper.d.ts","sourceRoot":"","sources":["../../src/dsh/agenticreplay-event-mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAMtD,eAAO,MAAM,qBAAqB;;;;;;;;;;EACsE,CAAA;AACxG,eAAO,MAAM,MAAM,GAAI,OAAO,OAAO,KAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAoF,CAAA;AAC9I,wBAAgB,KAAK,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAI5C;AACD,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,EAAE,CAcpF;AAED,kFAAkF;AAClF,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,GAAG;IACrF,QAAQ,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IACnE,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CACrE,CA4BA;AACD,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,SAAS,CAa7G;AACD,2EAA2E;AAC3E,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAQlE"}