@jingyi0605/codingns 0.3.5 → 0.4.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 (255) hide show
  1. package/README.md +16 -0
  2. package/bin/codingns.mjs +1369 -10
  3. package/dist/public/assets/{TerminalPage-CgrfstRm.js → TerminalPage-6jHZV9Mh.js} +17 -17
  4. package/dist/public/assets/index-CSVhg7I8.js +123 -0
  5. package/dist/public/assets/index-Ce1VX19m.css +1 -0
  6. package/dist/public/index.html +2 -2
  7. package/dist/server/config/opencode-base-url-resolver.d.ts +7 -0
  8. package/dist/server/config/opencode-base-url-resolver.js +48 -11
  9. package/dist/server/config/opencode-base-url-resolver.js.map +1 -1
  10. package/dist/server/config/opencode-system-probe-helper-client.d.ts +4 -0
  11. package/dist/server/config/opencode-system-probe-helper-client.js +29 -0
  12. package/dist/server/config/opencode-system-probe-helper-client.js.map +1 -1
  13. package/dist/server/config/opencode-system-probe-helper-process.d.ts +12 -0
  14. package/dist/server/config/opencode-system-probe-helper-process.js +34 -7
  15. package/dist/server/config/opencode-system-probe-helper-process.js.map +1 -1
  16. package/dist/server/modules/assistant-capability/assistant-capability-controller.d.ts +317 -0
  17. package/dist/server/modules/assistant-capability/assistant-capability-controller.js +549 -1
  18. package/dist/server/modules/assistant-capability/assistant-capability-controller.js.map +1 -1
  19. package/dist/server/modules/assistant-capability/assistant-capability-service.d.ts +330 -2
  20. package/dist/server/modules/assistant-capability/assistant-capability-service.js +958 -3
  21. package/dist/server/modules/assistant-capability/assistant-capability-service.js.map +1 -1
  22. package/dist/server/modules/butler/assistant-automation-service.d.ts +110 -0
  23. package/dist/server/modules/butler/assistant-automation-service.js +786 -0
  24. package/dist/server/modules/butler/assistant-automation-service.js.map +1 -0
  25. package/dist/server/modules/butler/assistant-automation-trigger.d.ts +94 -0
  26. package/dist/server/modules/butler/assistant-automation-trigger.js +400 -0
  27. package/dist/server/modules/butler/assistant-automation-trigger.js.map +1 -0
  28. package/dist/server/modules/butler/assistant-sandbox-service.d.ts +55 -0
  29. package/dist/server/modules/butler/assistant-sandbox-service.js +266 -0
  30. package/dist/server/modules/butler/assistant-sandbox-service.js.map +1 -0
  31. package/dist/server/modules/butler/butler-action-context-service.d.ts +4 -1
  32. package/dist/server/modules/butler/butler-action-context-service.js +8 -2
  33. package/dist/server/modules/butler/butler-action-context-service.js.map +1 -1
  34. package/dist/server/modules/butler/butler-control-session-service.d.ts +8 -1
  35. package/dist/server/modules/butler/butler-control-session-service.js +154 -40
  36. package/dist/server/modules/butler/butler-control-session-service.js.map +1 -1
  37. package/dist/server/modules/butler/butler-control-timer-scheduler.d.ts +32 -0
  38. package/dist/server/modules/butler/butler-control-timer-scheduler.js +93 -0
  39. package/dist/server/modules/butler/butler-control-timer-scheduler.js.map +1 -0
  40. package/dist/server/modules/butler/butler-control-timer-service.d.ts +42 -0
  41. package/dist/server/modules/butler/butler-control-timer-service.js +132 -0
  42. package/dist/server/modules/butler/butler-control-timer-service.js.map +1 -0
  43. package/dist/server/modules/butler/butler-controller.d.ts +42 -2
  44. package/dist/server/modules/butler/butler-controller.js +79 -12
  45. package/dist/server/modules/butler/butler-controller.js.map +1 -1
  46. package/dist/server/modules/butler/butler-follow-up-service.d.ts +9 -1
  47. package/dist/server/modules/butler/butler-follow-up-service.js +273 -181
  48. package/dist/server/modules/butler/butler-follow-up-service.js.map +1 -1
  49. package/dist/server/modules/butler/butler-inbox-analysis-service.d.ts +4 -1
  50. package/dist/server/modules/butler/butler-inbox-analysis-service.js +18 -4
  51. package/dist/server/modules/butler/butler-inbox-analysis-service.js.map +1 -1
  52. package/dist/server/modules/butler/butler-inbox-instruction-adapter.js +7 -6
  53. package/dist/server/modules/butler/butler-inbox-instruction-adapter.js.map +1 -1
  54. package/dist/server/modules/butler/butler-profile-service.js +2 -5
  55. package/dist/server/modules/butler/butler-profile-service.js.map +1 -1
  56. package/dist/server/modules/butler/butler-project-service.d.ts +3 -1
  57. package/dist/server/modules/butler/butler-project-service.js +7 -1
  58. package/dist/server/modules/butler/butler-project-service.js.map +1 -1
  59. package/dist/server/modules/butler/butler-session-service.d.ts +3 -1
  60. package/dist/server/modules/butler/butler-session-service.js +12 -1
  61. package/dist/server/modules/butler/butler-session-service.js.map +1 -1
  62. package/dist/server/modules/butler/butler-session-summary-service.js +2 -1
  63. package/dist/server/modules/butler/butler-session-summary-service.js.map +1 -1
  64. package/dist/server/modules/butler/butler-workspace-context.d.ts +3 -0
  65. package/dist/server/modules/butler/butler-workspace-context.js +182 -51
  66. package/dist/server/modules/butler/butler-workspace-context.js.map +1 -1
  67. package/dist/server/modules/butler/patrol-execution-service.js +2 -1
  68. package/dist/server/modules/butler/patrol-execution-service.js.map +1 -1
  69. package/dist/server/modules/butler/provider-adapter-registry.d.ts +3 -0
  70. package/dist/server/modules/butler/provider-adapter-registry.js +18 -1
  71. package/dist/server/modules/butler/provider-adapter-registry.js.map +1 -1
  72. package/dist/server/modules/butler/verification-run-service.d.ts +9 -2
  73. package/dist/server/modules/butler/verification-run-service.js +188 -34
  74. package/dist/server/modules/butler/verification-run-service.js.map +1 -1
  75. package/dist/server/modules/debug-target/debug-target-controller.d.ts +13 -0
  76. package/dist/server/modules/debug-target/debug-target-controller.js +77 -2
  77. package/dist/server/modules/debug-target/debug-target-controller.js.map +1 -1
  78. package/dist/server/modules/debug-target/debug-target-service.d.ts +17 -3
  79. package/dist/server/modules/debug-target/debug-target-service.js +696 -98
  80. package/dist/server/modules/debug-target/debug-target-service.js.map +1 -1
  81. package/dist/server/modules/git/git-command-helper-client.d.ts +3 -0
  82. package/dist/server/modules/git/git-command-helper-client.js +71 -29
  83. package/dist/server/modules/git/git-command-helper-client.js.map +1 -1
  84. package/dist/server/modules/git/git-command-helper-process.js +62 -9
  85. package/dist/server/modules/git/git-command-helper-process.js.map +1 -1
  86. package/dist/server/modules/git/git-command-runner.d.ts +1 -0
  87. package/dist/server/modules/git/git-command-runner.js +44 -1
  88. package/dist/server/modules/git/git-command-runner.js.map +1 -1
  89. package/dist/server/modules/git/git-controller.js +8 -7
  90. package/dist/server/modules/git/git-controller.js.map +1 -1
  91. package/dist/server/modules/git/git-read-service.d.ts +7 -7
  92. package/dist/server/modules/git/git-read-service.js +41 -24
  93. package/dist/server/modules/git/git-read-service.js.map +1 -1
  94. package/dist/server/modules/model-switch/cc-switch-adapter.js +6 -2
  95. package/dist/server/modules/model-switch/cc-switch-adapter.js.map +1 -1
  96. package/dist/server/modules/preferences/profile-service.d.ts +3 -1
  97. package/dist/server/modules/preferences/profile-service.js +74 -3
  98. package/dist/server/modules/preferences/profile-service.js.map +1 -1
  99. package/dist/server/modules/provider/codex-model-options.js +2 -3
  100. package/dist/server/modules/provider/codex-model-options.js.map +1 -1
  101. package/dist/server/modules/provider/opencode-model-options.js +2 -3
  102. package/dist/server/modules/provider/opencode-model-options.js.map +1 -1
  103. package/dist/server/modules/provider/provider-discovery-helper-client.d.ts +14 -7
  104. package/dist/server/modules/provider/provider-discovery-helper-client.js +208 -46
  105. package/dist/server/modules/provider/provider-discovery-helper-client.js.map +1 -1
  106. package/dist/server/modules/provider/provider-discovery-helper-process.js +96 -47
  107. package/dist/server/modules/provider/provider-discovery-helper-process.js.map +1 -1
  108. package/dist/server/modules/provider/provider-discovery-runtime.d.ts +4 -0
  109. package/dist/server/modules/provider/provider-discovery-runtime.js +145 -0
  110. package/dist/server/modules/provider/provider-discovery-runtime.js.map +1 -0
  111. package/dist/server/modules/sessions/claude-runtime-helper-client.js +23 -1
  112. package/dist/server/modules/sessions/claude-runtime-helper-client.js.map +1 -1
  113. package/dist/server/modules/sessions/session-history-service.d.ts +12 -3
  114. package/dist/server/modules/sessions/session-history-service.js +465 -67
  115. package/dist/server/modules/sessions/session-history-service.js.map +1 -1
  116. package/dist/server/modules/sessions/session-live-runtime-service.d.ts +8 -0
  117. package/dist/server/modules/sessions/session-live-runtime-service.js +164 -34
  118. package/dist/server/modules/sessions/session-live-runtime-service.js.map +1 -1
  119. package/dist/server/modules/sessions/session-message-origin-utils.d.ts +12 -0
  120. package/dist/server/modules/sessions/session-message-origin-utils.js +45 -0
  121. package/dist/server/modules/sessions/session-message-origin-utils.js.map +1 -0
  122. package/dist/server/modules/sessions/session-permission-request-service.js +167 -0
  123. package/dist/server/modules/sessions/session-permission-request-service.js.map +1 -1
  124. package/dist/server/modules/skills/builtin-skill-service.d.ts +12 -0
  125. package/dist/server/modules/skills/builtin-skill-service.js +49 -0
  126. package/dist/server/modules/skills/builtin-skill-service.js.map +1 -0
  127. package/dist/server/modules/skills/builtin-skills/codingns-assistant/SKILL.md +82 -0
  128. package/dist/server/modules/skills/builtin-skills/codingns-assistant/agents/openai.yaml +4 -0
  129. package/dist/server/modules/skills/builtin-skills/codingns-assistant/references/cli-workflow.md +136 -0
  130. package/dist/server/modules/skills/skill-manager-service.d.ts +7 -0
  131. package/dist/server/modules/skills/skill-manager-service.js +98 -0
  132. package/dist/server/modules/skills/skill-manager-service.js.map +1 -1
  133. package/dist/server/modules/tailscale/tailscale-helper-client.d.ts +1 -0
  134. package/dist/server/modules/tailscale/tailscale-helper-client.js +12 -0
  135. package/dist/server/modules/tailscale/tailscale-helper-client.js.map +1 -1
  136. package/dist/server/modules/tasks/task-helper-client.d.ts +10 -2
  137. package/dist/server/modules/tasks/task-helper-client.js +152 -27
  138. package/dist/server/modules/tasks/task-helper-client.js.map +1 -1
  139. package/dist/server/modules/tasks/task-helper-process-handlers.d.ts +10 -3
  140. package/dist/server/modules/tasks/task-helper-process-handlers.js +7 -5
  141. package/dist/server/modules/tasks/task-helper-process-handlers.js.map +1 -1
  142. package/dist/server/modules/tasks/task-helper-process.js +104 -3
  143. package/dist/server/modules/tasks/task-helper-process.js.map +1 -1
  144. package/dist/server/modules/tasks/task-lane-executors.js +2 -2
  145. package/dist/server/modules/tasks/task-lane-executors.js.map +1 -1
  146. package/dist/server/modules/tasks/task-types.d.ts +4 -0
  147. package/dist/server/modules/tasks/task-types.js +5 -1
  148. package/dist/server/modules/tasks/task-types.js.map +1 -1
  149. package/dist/server/modules/terminal/command-template-service.d.ts +11 -2
  150. package/dist/server/modules/terminal/command-template-service.js +91 -9
  151. package/dist/server/modules/terminal/command-template-service.js.map +1 -1
  152. package/dist/server/modules/terminal/runtime/terminal-log-writer-client.js +1 -1
  153. package/dist/server/modules/terminal/runtime/terminal-log-writer-client.js.map +1 -1
  154. package/dist/server/modules/terminal/runtime/terminal-log-writer-process.js +160 -11
  155. package/dist/server/modules/terminal/runtime/terminal-log-writer-process.js.map +1 -1
  156. package/dist/server/modules/terminal/template-port-runtime.d.ts +1 -1
  157. package/dist/server/modules/terminal/template-port-runtime.js +87 -37
  158. package/dist/server/modules/terminal/template-port-runtime.js.map +1 -1
  159. package/dist/server/modules/terminal/terminal-controller.d.ts +3 -0
  160. package/dist/server/modules/terminal/terminal-controller.js +41 -0
  161. package/dist/server/modules/terminal/terminal-controller.js.map +1 -1
  162. package/dist/server/modules/terminal/terminal-service.d.ts +4 -0
  163. package/dist/server/modules/terminal/terminal-service.js +35 -1
  164. package/dist/server/modules/terminal/terminal-service.js.map +1 -1
  165. package/dist/server/modules/workbench/workbench-service.d.ts +3 -0
  166. package/dist/server/modules/workbench/workbench-service.js +7 -6
  167. package/dist/server/modules/workbench/workbench-service.js.map +1 -1
  168. package/dist/server/modules/workbench/workspace-file-watcher.d.ts +14 -6
  169. package/dist/server/modules/workbench/workspace-file-watcher.js +267 -57
  170. package/dist/server/modules/workbench/workspace-file-watcher.js.map +1 -1
  171. package/dist/server/modules/workbench/workspace-panel-snapshot-service.d.ts +3 -0
  172. package/dist/server/modules/workbench/workspace-panel-snapshot-service.js +149 -41
  173. package/dist/server/modules/workbench/workspace-panel-snapshot-service.js.map +1 -1
  174. package/dist/server/modules/workspace/workspace-code-composition.d.ts +1 -0
  175. package/dist/server/modules/workspace/workspace-code-composition.js +183 -1
  176. package/dist/server/modules/workspace/workspace-code-composition.js.map +1 -1
  177. package/dist/server/modules/workspace/workspace-service.js +54 -17
  178. package/dist/server/modules/workspace/workspace-service.js.map +1 -1
  179. package/dist/server/modules/worktree/worktree-cleanup-service.d.ts +1 -1
  180. package/dist/server/modules/worktree/worktree-cleanup-service.js +22 -17
  181. package/dist/server/modules/worktree/worktree-cleanup-service.js.map +1 -1
  182. package/dist/server/modules/worktree/worktree-controller.js +6 -5
  183. package/dist/server/modules/worktree/worktree-controller.js.map +1 -1
  184. package/dist/server/modules/worktree/worktree-manager.d.ts +10 -2
  185. package/dist/server/modules/worktree/worktree-manager.js +35 -20
  186. package/dist/server/modules/worktree/worktree-manager.js.map +1 -1
  187. package/dist/server/modules/worktree/worktree-merge-service.d.ts +2 -2
  188. package/dist/server/modules/worktree/worktree-merge-service.js +34 -27
  189. package/dist/server/modules/worktree/worktree-merge-service.js.map +1 -1
  190. package/dist/server/modules/worktree/worktree-sync-service.d.ts +1 -1
  191. package/dist/server/modules/worktree/worktree-sync-service.js +5 -3
  192. package/dist/server/modules/worktree/worktree-sync-service.js.map +1 -1
  193. package/dist/server/routes/assistant.js +43 -0
  194. package/dist/server/routes/assistant.js.map +1 -1
  195. package/dist/server/routes/butler.js +5 -0
  196. package/dist/server/routes/butler.js.map +1 -1
  197. package/dist/server/server/create-server.d.ts +8 -0
  198. package/dist/server/server/create-server.js +51 -13
  199. package/dist/server/server/create-server.js.map +1 -1
  200. package/dist/server/shared/http/request-abort.d.ts +2 -0
  201. package/dist/server/shared/http/request-abort.js +38 -0
  202. package/dist/server/shared/http/request-abort.js.map +1 -0
  203. package/dist/server/storage/repositories/assistant-automation-run-repository.d.ts +12 -0
  204. package/dist/server/storage/repositories/assistant-automation-run-repository.js +139 -0
  205. package/dist/server/storage/repositories/assistant-automation-run-repository.js.map +1 -0
  206. package/dist/server/storage/repositories/assistant-automation-task-repository.d.ts +15 -0
  207. package/dist/server/storage/repositories/assistant-automation-task-repository.js +173 -0
  208. package/dist/server/storage/repositories/assistant-automation-task-repository.js.map +1 -0
  209. package/dist/server/storage/repositories/assistant-sandbox-workspace-repository.d.ts +17 -0
  210. package/dist/server/storage/repositories/assistant-sandbox-workspace-repository.js +164 -0
  211. package/dist/server/storage/repositories/assistant-sandbox-workspace-repository.js.map +1 -0
  212. package/dist/server/storage/repositories/butler-control-session-repository.js +27 -3
  213. package/dist/server/storage/repositories/butler-control-session-repository.js.map +1 -1
  214. package/dist/server/storage/repositories/butler-control-timer-repository.d.ts +15 -0
  215. package/dist/server/storage/repositories/butler-control-timer-repository.js +157 -0
  216. package/dist/server/storage/repositories/butler-control-timer-repository.js.map +1 -0
  217. package/dist/server/storage/repositories/user-preference-profile-repository.js +6 -3
  218. package/dist/server/storage/repositories/user-preference-profile-repository.js.map +1 -1
  219. package/dist/server/storage/sqlite/client.js +239 -2
  220. package/dist/server/storage/sqlite/client.js.map +1 -1
  221. package/dist/server/storage/sqlite/schema.sql +107 -1
  222. package/dist/server/types/domain.d.ts +89 -2
  223. package/dist/server/ws/workbench-ws-hub.d.ts +14 -7
  224. package/dist/server/ws/workbench-ws-hub.js +316 -158
  225. package/dist/server/ws/workbench-ws-hub.js.map +1 -1
  226. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.d.ts +4 -1
  227. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js +111 -3
  228. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js.map +1 -1
  229. package/node_modules/@codingns/session-sync-core/dist/providers/codex.d.ts +6 -1
  230. package/node_modules/@codingns/session-sync-core/dist/providers/codex.js +306 -31
  231. package/node_modules/@codingns/session-sync-core/dist/providers/codex.js.map +1 -1
  232. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.d.ts +5 -1
  233. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js +187 -26
  234. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js.map +1 -1
  235. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.d.ts +4 -1
  236. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js +98 -1
  237. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js.map +1 -1
  238. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.d.ts +2 -0
  239. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js +71 -8
  240. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js.map +1 -1
  241. package/node_modules/@codingns/session-sync-core/dist/providers/utils.d.ts +1 -0
  242. package/node_modules/@codingns/session-sync-core/dist/providers/utils.js +4 -1
  243. package/node_modules/@codingns/session-sync-core/dist/providers/utils.js.map +1 -1
  244. package/node_modules/@codingns/session-sync-core/dist/runtime/claude-runtime.js +44 -0
  245. package/node_modules/@codingns/session-sync-core/dist/runtime/claude-runtime.js.map +1 -1
  246. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js +9 -3
  247. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js.map +1 -1
  248. package/node_modules/@codingns/session-sync-core/dist/runtime/types.d.ts +1 -0
  249. package/node_modules/@codingns/session-sync-core/dist/services.js +17 -8
  250. package/node_modules/@codingns/session-sync-core/dist/services.js.map +1 -1
  251. package/node_modules/@codingns/session-sync-core/dist/types.d.ts +4 -0
  252. package/package.json +1 -1
  253. package/scripts/postinstall.mjs +33 -0
  254. package/dist/public/assets/index-Cek6u0b9.css +0 -1
  255. package/dist/public/assets/index-THHY79si.js +0 -122
@@ -1,8 +1,19 @@
1
+ import type { AssistantAutomationService } from "../butler/assistant-automation-service.js";
2
+ import type { AssistantSandboxService } from "../butler/assistant-sandbox-service.js";
3
+ import type { ButlerControlSessionService } from "../butler/butler-control-session-service.js";
4
+ import type { ButlerControlTimerService } from "../butler/butler-control-timer-service.js";
1
5
  import type { ButlerProjectService } from "../butler/butler-project-service.js";
2
6
  import type { ButlerSessionService } from "../butler/butler-session-service.js";
7
+ import type { DebugTargetPortRequest, DebugTargetService } from "../debug-target/debug-target-service.js";
3
8
  import type { SessionHistoryService } from "../sessions/session-history-service.js";
4
9
  import type { SessionLiveRuntimeService } from "../sessions/session-live-runtime-service.js";
10
+ import type { SessionMessageOriginRepository } from "../../storage/repositories/session-message-origin-repository.js";
5
11
  import type { TerminalService } from "../terminal/terminal-service.js";
12
+ import type { CloneWorkspaceInput, WorkspaceService } from "../workspace/workspace-service.js";
13
+ import type { WorktreeManager } from "../worktree/worktree-manager.js";
14
+ import type { WorktreeCleanupOptions, WorktreeCleanupService } from "../worktree/worktree-cleanup-service.js";
15
+ import type { WorktreeMergeService } from "../worktree/worktree-merge-service.js";
16
+ import type { WorktreeSyncService } from "../worktree/worktree-sync-service.js";
6
17
  type AssistantCapabilityMode = "read" | "proxy_execute";
7
18
  export interface AssistantCapabilityDescriptor {
8
19
  name: string;
@@ -16,7 +27,7 @@ export interface AssistantCapabilityReceipt<TPayload> {
16
27
  auditId: string;
17
28
  timestamp: string;
18
29
  targetRef: {
19
- kind: "project" | "session" | "terminal" | "none";
30
+ kind: "project" | "session" | "terminal" | "workspace" | "worktree" | "debug_target" | "debug_runtime" | "automation" | "sandbox" | "timer" | "none";
20
31
  id: string | null;
21
32
  };
22
33
  payload: TPayload;
@@ -35,6 +46,34 @@ interface SendAssistantSessionMessageInput {
35
46
  reasoningLevel?: string | null;
36
47
  permissionMode?: string | null;
37
48
  }
49
+ interface StartAssistantProjectSessionInput {
50
+ projectId: string;
51
+ userId: string;
52
+ content: string;
53
+ providerId?: "codex" | "claude-code" | null;
54
+ model?: string | null;
55
+ reasoningLevel?: string | null;
56
+ permissionMode?: string | null;
57
+ }
58
+ type AssistantSessionTarget = {
59
+ kind: "project";
60
+ projectId: string;
61
+ } | {
62
+ kind: "workspace";
63
+ workspaceId: string;
64
+ } | {
65
+ kind: "sandbox";
66
+ sandboxId: string;
67
+ };
68
+ interface StartAssistantSessionInput {
69
+ target?: AssistantSessionTarget | null;
70
+ userId: string;
71
+ content: string;
72
+ providerId?: "codex" | "claude-code" | null;
73
+ model?: string | null;
74
+ reasoningLevel?: string | null;
75
+ permissionMode?: string | null;
76
+ }
38
77
  interface ForkAssistantSessionInput {
39
78
  sessionId: string;
40
79
  userId: string;
@@ -57,13 +96,161 @@ interface SendAssistantTerminalInput {
57
96
  terminalId: string;
58
97
  content: string;
59
98
  }
99
+ interface CreateAssistantTimerInput {
100
+ userId: string;
101
+ controlSessionId?: string | null;
102
+ projectId?: string | null;
103
+ targetSessionId?: string | null;
104
+ title?: string | null;
105
+ content: string;
106
+ dueAt?: string | null;
107
+ afterSeconds?: number | null;
108
+ }
109
+ interface ListAssistantTimersInput {
110
+ userId: string;
111
+ status?: "active" | "completed" | "cancelled" | "failed";
112
+ controlSessionId?: string | null;
113
+ limit?: number | null;
114
+ }
115
+ interface ListAssistantAutomationsInput {
116
+ userId: string;
117
+ status?: "active" | "completed" | "cancelled" | "failed";
118
+ controlSessionId?: string | null;
119
+ limit?: number | null;
120
+ }
121
+ interface CreateAssistantAutomationInput {
122
+ userId: string;
123
+ controlSessionId?: string | null;
124
+ projectId?: string | null;
125
+ title?: string | null;
126
+ content: string;
127
+ triggerType?: "once" | "interval" | "cron" | "condition";
128
+ dueAt?: string | null;
129
+ afterSeconds?: number | null;
130
+ everySeconds?: number | null;
131
+ everyMinutes?: number | null;
132
+ everyHours?: number | null;
133
+ stopAt?: string | null;
134
+ cronMinute?: number | null;
135
+ cronHour?: number | null;
136
+ cronDaysOfWeek?: number[] | null;
137
+ conditionKind?: "git.remote_tag_changed" | "session.runtime_idle" | null;
138
+ repositoryUrl?: string | null;
139
+ pollIntervalSeconds?: number | null;
140
+ expiresAt?: string | null;
141
+ maxChecks?: number | null;
142
+ conditionSessionId?: string | null;
143
+ includeTriggerContext?: boolean;
144
+ targetSessionId?: string | null;
145
+ }
146
+ interface UpdateAssistantAutomationInput {
147
+ userId: string;
148
+ automationId: string;
149
+ title?: string | null;
150
+ content?: string;
151
+ includeTriggerContext?: boolean;
152
+ dueAt?: string | null;
153
+ everySeconds?: number | null;
154
+ everyMinutes?: number | null;
155
+ everyHours?: number | null;
156
+ stopAt?: string | null;
157
+ cronMinute?: number | null;
158
+ cronHour?: number | null;
159
+ cronDaysOfWeek?: number[] | null;
160
+ pollIntervalSeconds?: number | null;
161
+ expiresAt?: string | null;
162
+ maxChecks?: number | null;
163
+ }
164
+ interface ListAssistantAutomationRunsInput {
165
+ userId: string;
166
+ controlSessionId?: string | null;
167
+ limit?: number | null;
168
+ }
169
+ interface ListAssistantSandboxesInput {
170
+ userId: string;
171
+ status?: "active" | "archived" | "expired" | "deleted";
172
+ controlSessionId?: string | null;
173
+ }
174
+ interface CreateAssistantSandboxInput {
175
+ userId: string;
176
+ title?: string | null;
177
+ description?: string | null;
178
+ purpose?: string | null;
179
+ expiresAt?: string | null;
180
+ sourceKind: "blank" | "clone";
181
+ repositoryUrl?: string | null;
182
+ directoryName?: string | null;
183
+ auth?: CloneWorkspaceInput["auth"];
184
+ }
185
+ interface PromoteAssistantSandboxInput {
186
+ sandboxId: string;
187
+ userId: string;
188
+ mode?: "pin" | "project";
189
+ projectName?: string | null;
190
+ defaultProvider?: "codex" | "claude-code" | null;
191
+ }
192
+ interface AnalyzeAssistantDebugTargetInput {
193
+ workspaceId: string;
194
+ rootPath: string;
195
+ commandHints?: string[];
196
+ }
197
+ interface CreateAssistantDebugLaunchPlanInput {
198
+ targetId: string;
199
+ userId: string;
200
+ portRequests: DebugTargetPortRequest[];
201
+ }
202
+ interface RunAssistantDebugTargetInput {
203
+ targetId: string;
204
+ userId: string;
205
+ shell?: string | null;
206
+ runtimeType?: Parameters<DebugTargetService["run"]>[0]["runtimeType"];
207
+ portRequests: DebugTargetPortRequest[];
208
+ }
209
+ interface CreateAssistantWorkspaceDirectoryInput {
210
+ parentPath: string;
211
+ directoryName: string;
212
+ }
213
+ interface ImportAssistantWorkspaceInput {
214
+ path: string;
215
+ name?: string | null;
216
+ }
217
+ interface CloneAssistantWorkspaceInput {
218
+ repositoryUrl: string;
219
+ parentPath: string;
220
+ directoryName?: string | null;
221
+ name?: string | null;
222
+ auth?: CloneWorkspaceInput["auth"];
223
+ }
224
+ interface UpdateAssistantWorkspaceNavigationStateInput {
225
+ workspaceId: string;
226
+ userId: string;
227
+ collapsed?: boolean;
228
+ backgroundColor?: string | null;
229
+ }
230
+ interface CreateAssistantWorktreeInput {
231
+ sourceWorkspaceId: string;
232
+ branchName: string;
233
+ displayName?: string | null;
234
+ baseRef?: string | null;
235
+ }
60
236
  export declare class AssistantCapabilityService {
61
237
  private readonly butlerProjectService;
62
238
  private readonly butlerSessionService;
239
+ private readonly butlerControlSessionService;
240
+ private readonly assistantAutomationService;
241
+ private readonly assistantSandboxService;
242
+ private readonly butlerControlTimerService;
63
243
  private readonly sessionHistoryService;
64
244
  private readonly sessionLiveRuntimeService;
65
245
  private readonly terminalService;
66
- constructor(butlerProjectService: Pick<ButlerProjectService, "list" | "getById" | "getOverview">, butlerSessionService: Pick<ButlerSessionService, "listByProject" | "ensureProjectSessionsSynced">, sessionHistoryService: Pick<SessionHistoryService, "getSession" | "readSessionHistory" | "forkSession">, sessionLiveRuntimeService: Pick<SessionLiveRuntimeService, "getSessionRuntime" | "sendLiveMessage">, terminalService: Pick<TerminalService, "listTerminals" | "readTerminalHistory" | "writeInput">);
246
+ private readonly debugTargetService;
247
+ private readonly workspaceService;
248
+ private readonly worktreeManager;
249
+ private readonly worktreeSyncService;
250
+ private readonly worktreeMergeService;
251
+ private readonly worktreeCleanupService;
252
+ private readonly sessionMessageOriginRepository;
253
+ constructor(butlerProjectService: Pick<ButlerProjectService, "list" | "getById" | "getOverview">, butlerSessionService: Pick<ButlerSessionService, "listByProject" | "ensureProjectSessionsSynced" | "startSession">, butlerControlSessionService: Pick<ButlerControlSessionService, "getCurrentSession">, assistantAutomationService: Pick<AssistantAutomationService, "listTasks" | "getTask" | "createTask" | "updateTask" | "cancelTask" | "skipCurrentWait" | "listRuns" | "listRecentRuns">, assistantSandboxService: Pick<AssistantSandboxService, "listSandboxes" | "getSandbox" | "createSandbox" | "promoteSandbox" | "expireSandbox" | "removeSandbox" | "resolveWorkspaceId" | "markSandboxUsedByControlSession">, butlerControlTimerService: Pick<ButlerControlTimerService, "listTimers" | "getTimer" | "createTimer" | "cancelTimer">, sessionHistoryService: Pick<SessionHistoryService, "getSession" | "readSessionHistory" | "forkSession">, sessionLiveRuntimeService: Pick<SessionLiveRuntimeService, "getSessionRuntime" | "sendLiveMessage" | "startLiveSession">, terminalService: Pick<TerminalService, "listTerminals" | "readTerminalHistory" | "writeInput" | "closeTerminal">, debugTargetService: Pick<DebugTargetService, "analyze" | "getFrameworkAnalysis" | "refreshFrameworkAnalysis" | "createLaunchPlan" | "run" | "getLatestRuntimeDetail" | "getRecentRuntimeDetails" | "getRuntimeDetail" | "getCompatibilityMatrix">, workspaceService: Pick<WorkspaceService, "list" | "browseDirectories" | "createDirectory" | "importWorkspace" | "cloneWorkspace" | "reorderWorkspaces" | "getManagementSummary" | "removeWorkspace" | "updateNavigationState">, worktreeManager: Pick<WorktreeManager, "getTree" | "create">, worktreeSyncService: Pick<WorktreeSyncService, "syncRoot">, worktreeMergeService: Pick<WorktreeMergeService, "preview" | "apply">, worktreeCleanupService: Pick<WorktreeCleanupService, "cleanup">, sessionMessageOriginRepository?: Pick<SessionMessageOriginRepository, "upsert"> | null);
67
254
  listCapabilities(): AssistantCapabilityReceipt<{
68
255
  version: string;
69
256
  items: AssistantCapabilityDescriptor[];
@@ -79,6 +266,17 @@ export declare class AssistantCapabilityService {
79
266
  listProjectSessions(projectId: string, userId: string): Promise<AssistantCapabilityReceipt<{
80
267
  items: ReturnType<ButlerSessionService["listByProject"]>;
81
268
  }>>;
269
+ startProjectSession(input: StartAssistantProjectSessionInput): Promise<AssistantCapabilityReceipt<{
270
+ session: Awaited<ReturnType<ButlerSessionService["startSession"]>>;
271
+ }>>;
272
+ startSession(input: StartAssistantSessionInput): Promise<AssistantCapabilityReceipt<{
273
+ session: Awaited<ReturnType<ButlerSessionService["startSession"]>> | Awaited<ReturnType<SessionLiveRuntimeService["startLiveSession"]>>;
274
+ target: {
275
+ kind: AssistantSessionTarget["kind"];
276
+ id: string;
277
+ workspaceId: string;
278
+ };
279
+ }>>;
82
280
  getSession(sessionId: string, userId: string): AssistantCapabilityReceipt<{
83
281
  session: ReturnType<SessionHistoryService["getSession"]>;
84
282
  }>;
@@ -100,6 +298,57 @@ export declare class AssistantCapabilityService {
100
298
  forkSession(input: ForkAssistantSessionInput): Promise<AssistantCapabilityReceipt<{
101
299
  session: Awaited<ReturnType<SessionHistoryService["forkSession"]>>;
102
300
  }>>;
301
+ listTimers(input: ListAssistantTimersInput): AssistantCapabilityReceipt<{
302
+ items: ReturnType<ButlerControlTimerService["listTimers"]>;
303
+ }>;
304
+ listAutomations(input: ListAssistantAutomationsInput): AssistantCapabilityReceipt<{
305
+ items: ReturnType<AssistantAutomationService["listTasks"]>;
306
+ }>;
307
+ getAutomation(automationId: string, userId: string): AssistantCapabilityReceipt<{
308
+ automation: ReturnType<AssistantAutomationService["getTask"]>;
309
+ }>;
310
+ createAutomation(input: CreateAssistantAutomationInput): AssistantCapabilityReceipt<{
311
+ automation: ReturnType<AssistantAutomationService["createTask"]>;
312
+ }>;
313
+ updateAutomation(input: UpdateAssistantAutomationInput): AssistantCapabilityReceipt<{
314
+ automation: ReturnType<AssistantAutomationService["updateTask"]>;
315
+ }>;
316
+ cancelAutomation(automationId: string, userId: string): AssistantCapabilityReceipt<{
317
+ automation: ReturnType<AssistantAutomationService["cancelTask"]>;
318
+ }>;
319
+ skipAutomationWait(automationId: string, userId: string): AssistantCapabilityReceipt<{
320
+ automation: ReturnType<AssistantAutomationService["skipCurrentWait"]>;
321
+ }>;
322
+ listAutomationRuns(automationId: string, userId: string): AssistantCapabilityReceipt<{
323
+ items: ReturnType<AssistantAutomationService["listRuns"]>;
324
+ }>;
325
+ listRecentAutomationRuns(input: ListAssistantAutomationRunsInput): AssistantCapabilityReceipt<{
326
+ items: ReturnType<AssistantAutomationService["listRecentRuns"]>;
327
+ }>;
328
+ listSandboxes(input: ListAssistantSandboxesInput): AssistantCapabilityReceipt<{
329
+ items: ReturnType<AssistantSandboxService["listSandboxes"]>;
330
+ }>;
331
+ createSandbox(input: CreateAssistantSandboxInput): Promise<AssistantCapabilityReceipt<{
332
+ sandbox: Awaited<ReturnType<AssistantSandboxService["createSandbox"]>>;
333
+ }>>;
334
+ promoteSandbox(input: PromoteAssistantSandboxInput): AssistantCapabilityReceipt<{
335
+ sandbox: ReturnType<AssistantSandboxService["promoteSandbox"]>;
336
+ }>;
337
+ expireSandbox(sandboxId: string, userId: string): AssistantCapabilityReceipt<{
338
+ sandbox: ReturnType<AssistantSandboxService["expireSandbox"]>;
339
+ }>;
340
+ removeSandbox(sandboxId: string, userId: string): AssistantCapabilityReceipt<{
341
+ sandbox: ReturnType<AssistantSandboxService["removeSandbox"]>;
342
+ }>;
343
+ getTimer(timerId: string, userId: string): AssistantCapabilityReceipt<{
344
+ timer: ReturnType<ButlerControlTimerService["getTimer"]>;
345
+ }>;
346
+ createTimer(input: CreateAssistantTimerInput): AssistantCapabilityReceipt<{
347
+ timer: ReturnType<ButlerControlTimerService["createTimer"]>;
348
+ }>;
349
+ cancelTimer(timerId: string, userId: string): AssistantCapabilityReceipt<{
350
+ timer: ReturnType<ButlerControlTimerService["cancelTimer"]>;
351
+ }>;
103
352
  listTerminals(input: ListAssistantTerminalsInput): Promise<AssistantCapabilityReceipt<{
104
353
  workspaceId: string;
105
354
  items: Awaited<ReturnType<TerminalService["listTerminals"]>>;
@@ -110,6 +359,85 @@ export declare class AssistantCapabilityService {
110
359
  sendTerminalInput(input: SendAssistantTerminalInput): Promise<AssistantCapabilityReceipt<{
111
360
  result: Awaited<ReturnType<TerminalService["writeInput"]>>;
112
361
  }>>;
362
+ closeTerminal(terminalId: string): Promise<AssistantCapabilityReceipt<{
363
+ result: Awaited<ReturnType<TerminalService["closeTerminal"]>>;
364
+ }>>;
365
+ getDebugCompatibilityMatrix(): AssistantCapabilityReceipt<{
366
+ matrix: ReturnType<DebugTargetService["getCompatibilityMatrix"]>;
367
+ }>;
368
+ analyzeDebugTarget(input: AnalyzeAssistantDebugTargetInput): AssistantCapabilityReceipt<{
369
+ result: ReturnType<DebugTargetService["analyze"]>;
370
+ }>;
371
+ getDebugFrameworkAnalysis(targetId: string): AssistantCapabilityReceipt<{
372
+ result: ReturnType<DebugTargetService["getFrameworkAnalysis"]>;
373
+ }>;
374
+ refreshDebugFrameworkAnalysis(targetId: string): AssistantCapabilityReceipt<{
375
+ result: ReturnType<DebugTargetService["refreshFrameworkAnalysis"]>;
376
+ }>;
377
+ createDebugLaunchPlan(input: CreateAssistantDebugLaunchPlanInput): Promise<AssistantCapabilityReceipt<{
378
+ plan: Awaited<ReturnType<DebugTargetService["createLaunchPlan"]>>;
379
+ }>>;
380
+ runDebugTarget(input: RunAssistantDebugTargetInput): Promise<AssistantCapabilityReceipt<{
381
+ result: Awaited<ReturnType<DebugTargetService["run"]>>;
382
+ }>>;
383
+ getLatestDebugRuntime(targetId: string): Promise<AssistantCapabilityReceipt<{
384
+ runtime: Awaited<ReturnType<DebugTargetService["getLatestRuntimeDetail"]>>;
385
+ }>>;
386
+ listDebugRuntimes(input: {
387
+ targetId: string;
388
+ limit: number;
389
+ }): Promise<AssistantCapabilityReceipt<{
390
+ history: Awaited<ReturnType<DebugTargetService["getRecentRuntimeDetails"]>>;
391
+ }>>;
392
+ getDebugRuntime(runtimeId: string): Promise<AssistantCapabilityReceipt<{
393
+ runtime: Awaited<ReturnType<DebugTargetService["getRuntimeDetail"]>>;
394
+ }>>;
395
+ listWorkspaces(): AssistantCapabilityReceipt<{
396
+ items: ReturnType<WorkspaceService["list"]>;
397
+ }>;
398
+ browseWorkspaces(requestedPath?: string | null): AssistantCapabilityReceipt<{
399
+ result: ReturnType<WorkspaceService["browseDirectories"]>;
400
+ }>;
401
+ createWorkspaceDirectory(input: CreateAssistantWorkspaceDirectoryInput): AssistantCapabilityReceipt<{
402
+ result: ReturnType<WorkspaceService["createDirectory"]>;
403
+ }>;
404
+ importWorkspace(input: ImportAssistantWorkspaceInput): AssistantCapabilityReceipt<{
405
+ workspace: ReturnType<WorkspaceService["importWorkspace"]>;
406
+ }>;
407
+ cloneWorkspace(input: CloneAssistantWorkspaceInput): Promise<AssistantCapabilityReceipt<{
408
+ workspace: Awaited<ReturnType<WorkspaceService["cloneWorkspace"]>>;
409
+ }>>;
410
+ reorderWorkspaces(workspaceIds: string[]): AssistantCapabilityReceipt<{
411
+ items: ReturnType<WorkspaceService["reorderWorkspaces"]>;
412
+ }>;
413
+ getWorkspaceManagementSummary(workspaceId: string): Promise<AssistantCapabilityReceipt<{
414
+ summary: Awaited<ReturnType<WorkspaceService["getManagementSummary"]>>;
415
+ }>>;
416
+ updateWorkspaceNavigationState(input: UpdateAssistantWorkspaceNavigationStateInput): AssistantCapabilityReceipt<{
417
+ state: ReturnType<WorkspaceService["updateNavigationState"]>;
418
+ }>;
419
+ removeWorkspace(workspaceId: string): AssistantCapabilityReceipt<{
420
+ workspace: ReturnType<WorkspaceService["removeWorkspace"]>;
421
+ }>;
422
+ getWorktreeTree(rootWorkspaceId: string): Promise<AssistantCapabilityReceipt<{
423
+ rootWorkspaceId: string;
424
+ items: ReturnType<WorktreeManager["getTree"]>;
425
+ }>>;
426
+ createWorktree(input: CreateAssistantWorktreeInput): Promise<AssistantCapabilityReceipt<{
427
+ result: Awaited<ReturnType<WorktreeManager["create"]>>;
428
+ }>>;
429
+ getWorktreeMergePreview(workspaceId: string): Promise<AssistantCapabilityReceipt<{
430
+ preview: Awaited<ReturnType<WorktreeMergeService["preview"]>>;
431
+ }>>;
432
+ mergeWorktreeIntoParent(workspaceId: string): Promise<AssistantCapabilityReceipt<{
433
+ result: Awaited<ReturnType<WorktreeMergeService["apply"]>>;
434
+ }>>;
435
+ cleanupWorktree(workspaceId: string, userId: string, options: WorktreeCleanupOptions): Promise<AssistantCapabilityReceipt<{
436
+ result: Awaited<ReturnType<WorktreeCleanupService["cleanup"]>>;
437
+ }>>;
113
438
  private createReceipt;
439
+ private resolveSessionLaunchConfig;
440
+ private resolveAssistantSessionTarget;
441
+ private createAutomaticSandboxTarget;
114
442
  }
115
443
  export {};