opencode-orchestrator 1.2.17 → 1.2.23

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 (275) hide show
  1. package/README.md +41 -91
  2. package/dist/core/agents/adaptive-concurrency.d.ts +57 -0
  3. package/dist/core/agents/index.d.ts +3 -2
  4. package/dist/core/agents/interfaces/session-pool.interface.d.ts +7 -0
  5. package/dist/core/agents/manager.d.ts +9 -41
  6. package/dist/core/agents/session-pool.d.ts +10 -0
  7. package/dist/core/agents/unified-task-executor.d.ts +27 -0
  8. package/dist/core/mission/mission-controller.d.ts +53 -0
  9. package/dist/core/resource/resource-tracker.d.ts +61 -0
  10. package/dist/index.d.ts +0 -8
  11. package/dist/index.js +6560 -27898
  12. package/dist/scripts/postinstall.js +125 -29
  13. package/dist/shared/constants/system-messages.d.ts +3 -3
  14. package/dist/shared/core/constants/index.d.ts +4 -0
  15. package/dist/shared/core/constants/labels.d.ts +12 -0
  16. package/dist/shared/core/constants/mission.d.ts +8 -0
  17. package/dist/shared/{os/constants/platform.d.ts → core/constants/os.d.ts} +4 -3
  18. package/dist/shared/core/constants/signals.d.ts +22 -0
  19. package/dist/shared/index.d.ts +6 -8
  20. package/dist/shared/prompt/constants/prompts.d.ts +7 -0
  21. package/dist/shared/prompt/constants/tags.d.ts +4 -0
  22. package/dist/shared/prompt/index.d.ts +1 -0
  23. package/dist/shared/session/constants/events/hook-events.d.ts +9 -0
  24. package/dist/shared/session/constants/events/index.d.ts +5 -0
  25. package/dist/shared/session/constants/index.d.ts +2 -0
  26. package/dist/shared/session/constants/message.d.ts +15 -0
  27. package/dist/shared/session/constants/status.d.ts +9 -0
  28. package/dist/shared/session/index.d.ts +1 -0
  29. package/dist/shared/task/constants/parallel-task.d.ts +4 -3
  30. package/dist/tools/parallel/list-agents.d.ts +1 -1
  31. package/dist/utils/common.d.ts +3 -5
  32. package/package.json +3 -3
  33. package/dist/core/agents/agent-registry.d.ts +0 -28
  34. package/dist/core/agents/concurrency.d.ts +0 -38
  35. package/dist/core/agents/config.d.ts +0 -10
  36. package/dist/core/agents/consts/index.d.ts +0 -4
  37. package/dist/core/agents/manager/event-handler.d.ts +0 -35
  38. package/dist/core/agents/manager/index.d.ts +0 -10
  39. package/dist/core/agents/manager/task-cleaner.d.ts +0 -29
  40. package/dist/core/agents/manager/task-launcher.d.ts +0 -35
  41. package/dist/core/agents/manager/task-poller.d.ts +0 -30
  42. package/dist/core/agents/manager/task-resumer.d.ts +0 -18
  43. package/dist/core/agents/persistence/task-wal.d.ts +0 -26
  44. package/dist/core/agents/task-store.d.ts +0 -54
  45. package/dist/core/cleanup/cleanup-scheduler.d.ts +0 -11
  46. package/dist/core/context/context-window-monitor.d.ts +0 -66
  47. package/dist/core/context/index.d.ts +0 -6
  48. package/dist/core/loop/continuation-lock.d.ts +0 -57
  49. package/dist/core/loop/formatters.d.ts +0 -17
  50. package/dist/core/loop/interfaces/index.d.ts +0 -5
  51. package/dist/core/loop/interfaces/todo-stats.d.ts +0 -11
  52. package/dist/core/loop/interfaces/todo.d.ts +0 -13
  53. package/dist/core/loop/interfaces.d.ts +0 -7
  54. package/dist/core/loop/mission-loop-handler.d.ts +0 -25
  55. package/dist/core/loop/mission-loop.d.ts +0 -48
  56. package/dist/core/loop/parser.d.ts +0 -8
  57. package/dist/core/loop/stats.d.ts +0 -24
  58. package/dist/core/loop/todo-continuation.d.ts +0 -39
  59. package/dist/core/loop/todo-enforcer.d.ts +0 -9
  60. package/dist/core/loop/todo-manager.d.ts +0 -22
  61. package/dist/core/loop/types/index.d.ts +0 -5
  62. package/dist/core/loop/types/todo-priority.d.ts +0 -4
  63. package/dist/core/loop/types/todo-status.d.ts +0 -4
  64. package/dist/core/loop/verification.d.ts +0 -27
  65. package/dist/core/memory/interfaces.d.ts +0 -33
  66. package/dist/core/memory/memory-manager.d.ts +0 -40
  67. package/dist/core/metrics/collector.d.ts +0 -27
  68. package/dist/core/notification/os-notify/index.d.ts +0 -7
  69. package/dist/core/notification/os-notify/notifier.d.ts +0 -7
  70. package/dist/core/notification/os-notify/platform-resolver.d.ts +0 -7
  71. package/dist/core/notification/os-notify/platform.d.ts +0 -7
  72. package/dist/core/notification/os-notify/sound-player.d.ts +0 -7
  73. package/dist/core/notification/os-notify/todo-checker.d.ts +0 -5
  74. package/dist/core/notification/task-toast-manager.d.ts +0 -127
  75. package/dist/core/notification/toast-core.d.ts +0 -36
  76. package/dist/core/notification/toast.d.ts +0 -9
  77. package/dist/core/orchestrator/index.d.ts +0 -6
  78. package/dist/core/orchestrator/interfaces/index.d.ts +0 -4
  79. package/dist/core/orchestrator/interfaces/session-state.d.ts +0 -11
  80. package/dist/core/orchestrator/session-manager.d.ts +0 -31
  81. package/dist/core/orchestrator/state.d.ts +0 -10
  82. package/dist/core/orchestrator/types/index.d.ts +0 -4
  83. package/dist/core/orchestrator/types/task-status.d.ts +0 -5
  84. package/dist/core/plugins/interfaces.d.ts +0 -30
  85. package/dist/core/plugins/plugin-manager.d.ts +0 -21
  86. package/dist/core/progress/calculator.d.ts +0 -11
  87. package/dist/core/progress/formatters.d.ts +0 -20
  88. package/dist/core/progress/interfaces/index.d.ts +0 -8
  89. package/dist/core/progress/interfaces/progress-snapshot.d.ts +0 -15
  90. package/dist/core/progress/interfaces/snapshot-input.d.ts +0 -13
  91. package/dist/core/progress/interfaces/step-progress.d.ts +0 -7
  92. package/dist/core/progress/interfaces/task-progress.d.ts +0 -10
  93. package/dist/core/progress/interfaces/todo-progress.d.ts +0 -9
  94. package/dist/core/progress/interfaces.d.ts +0 -6
  95. package/dist/core/progress/progress-notifier.d.ts +0 -14
  96. package/dist/core/progress/state-broadcaster.d.ts +0 -29
  97. package/dist/core/progress/store.d.ts +0 -28
  98. package/dist/core/progress/tracker.d.ts +0 -11
  99. package/dist/core/queue/async-queue.d.ts +0 -46
  100. package/dist/core/queue/async-utils.d.ts +0 -20
  101. package/dist/core/queue/index.d.ts +0 -8
  102. package/dist/core/queue/work-pool.d.ts +0 -19
  103. package/dist/core/recovery/auto-recovery.d.ts +0 -9
  104. package/dist/core/recovery/constants.d.ts +0 -9
  105. package/dist/core/recovery/handler.d.ts +0 -27
  106. package/dist/core/recovery/interfaces/error-context.d.ts +0 -11
  107. package/dist/core/recovery/interfaces/error-pattern.d.ts +0 -10
  108. package/dist/core/recovery/interfaces/index.d.ts +0 -8
  109. package/dist/core/recovery/interfaces/recovery-action.d.ts +0 -25
  110. package/dist/core/recovery/interfaces/recovery-record.d.ts +0 -10
  111. package/dist/core/recovery/interfaces/recovery-stats.d.ts +0 -9
  112. package/dist/core/recovery/interfaces.d.ts +0 -6
  113. package/dist/core/recovery/patterns.d.ts +0 -8
  114. package/dist/core/recovery/retry.d.ts +0 -59
  115. package/dist/core/recovery/session-recovery.d.ts +0 -30
  116. package/dist/core/session/interfaces/context-stats.d.ts +0 -9
  117. package/dist/core/session/interfaces/index.d.ts +0 -8
  118. package/dist/core/session/interfaces/shared-context.d.ts +0 -15
  119. package/dist/core/session/interfaces/shared-decision.d.ts +0 -10
  120. package/dist/core/session/interfaces/shared-document.d.ts +0 -9
  121. package/dist/core/session/interfaces/shared-finding.d.ts +0 -10
  122. package/dist/core/session/interfaces.d.ts +0 -6
  123. package/dist/core/session/session-health.d.ts +0 -93
  124. package/dist/core/session/shared-context.d.ts +0 -8
  125. package/dist/core/session/store.d.ts +0 -44
  126. package/dist/core/session/summary.d.ts +0 -7
  127. package/dist/core/sync/todo-parser.d.ts +0 -5
  128. package/dist/core/sync/todo-sync-service.d.ts +0 -35
  129. package/dist/core/task/interfaces/index.d.ts +0 -8
  130. package/dist/core/task/interfaces/task-hierarchy.d.ts +0 -9
  131. package/dist/core/task/interfaces/task-input.d.ts +0 -11
  132. package/dist/core/task/interfaces/task-node.d.ts +0 -20
  133. package/dist/core/task/interfaces/task-progress.d.ts +0 -11
  134. package/dist/core/task/interfaces.d.ts +0 -6
  135. package/dist/core/task/parser.d.ts +0 -8
  136. package/dist/core/task/scheduler.d.ts +0 -12
  137. package/dist/core/task/store.d.ts +0 -32
  138. package/dist/core/task/summary.d.ts +0 -7
  139. package/dist/core/task/task-decomposer.d.ts +0 -10
  140. package/dist/core/todo/todo-manager.d.ts +0 -36
  141. package/dist/hooks/compatibility/external-plugin.d.ts +0 -10
  142. package/dist/hooks/constants.d.ts +0 -27
  143. package/dist/hooks/custom/agent-ui.d.ts +0 -20
  144. package/dist/hooks/custom/memory-gate.d.ts +0 -21
  145. package/dist/hooks/custom/metrics.d.ts +0 -14
  146. package/dist/hooks/custom/resource-control.d.ts +0 -13
  147. package/dist/hooks/custom/secret-scanner.d.ts +0 -19
  148. package/dist/hooks/custom/strict-role-guard.d.ts +0 -21
  149. package/dist/hooks/custom/user-activity.d.ts +0 -11
  150. package/dist/hooks/features/mission-loop.d.ts +0 -18
  151. package/dist/hooks/features/sanity-check.d.ts +0 -15
  152. package/dist/hooks/index.d.ts +0 -5
  153. package/dist/hooks/registry.d.ts +0 -37
  154. package/dist/hooks/types.d.ts +0 -72
  155. package/dist/plugin-handlers/assistant-done-handler.d.ts +0 -12
  156. package/dist/plugin-handlers/chat-message-handler.d.ts +0 -30
  157. package/dist/plugin-handlers/config-handler.d.ts +0 -9
  158. package/dist/plugin-handlers/event-handler.d.ts +0 -18
  159. package/dist/plugin-handlers/index.d.ts +0 -9
  160. package/dist/plugin-handlers/interfaces/assistant-done-context.d.ts +0 -12
  161. package/dist/plugin-handlers/interfaces/chat-message-context.d.ts +0 -12
  162. package/dist/plugin-handlers/interfaces/event-handler-context.d.ts +0 -14
  163. package/dist/plugin-handlers/interfaces/index.d.ts +0 -12
  164. package/dist/plugin-handlers/interfaces/orchestrator-state.d.ts +0 -14
  165. package/dist/plugin-handlers/interfaces/session-compacting.d.ts +0 -19
  166. package/dist/plugin-handlers/interfaces/session-state.d.ts +0 -15
  167. package/dist/plugin-handlers/interfaces/system-transform.d.ts +0 -17
  168. package/dist/plugin-handlers/interfaces/tool-execute-context.d.ts +0 -8
  169. package/dist/plugin-handlers/interfaces/tool-hook.d.ts +0 -14
  170. package/dist/plugin-handlers/session-compacting-handler.d.ts +0 -14
  171. package/dist/plugin-handlers/system-transform-handler.d.ts +0 -14
  172. package/dist/plugin-handlers/tool-execute-handler.d.ts +0 -14
  173. package/dist/plugin-handlers/tool-execute-pre-handler.d.ts +0 -8
  174. package/dist/shared/errors/constants/error-patterns.d.ts +0 -13
  175. package/dist/shared/errors/constants/error-type.d.ts +0 -13
  176. package/dist/shared/errors/constants/index.d.ts +0 -5
  177. package/dist/shared/errors/detection.d.ts +0 -5
  178. package/dist/shared/errors/index.d.ts +0 -7
  179. package/dist/shared/errors/retry.d.ts +0 -7
  180. package/dist/shared/errors/types/error-pattern-type.d.ts +0 -5
  181. package/dist/shared/errors/types/index.d.ts +0 -4
  182. package/dist/shared/loop/constants/index.d.ts +0 -7
  183. package/dist/shared/loop/constants/labels.d.ts +0 -33
  184. package/dist/shared/loop/constants/loop.d.ts +0 -17
  185. package/dist/shared/loop/constants/mission-control.d.ts +0 -20
  186. package/dist/shared/loop/constants/todo-status.d.ts +0 -9
  187. package/dist/shared/loop/index.d.ts +0 -6
  188. package/dist/shared/loop/interfaces/index.d.ts +0 -6
  189. package/dist/shared/loop/interfaces/mission-loop.d.ts +0 -29
  190. package/dist/shared/loop/interfaces/todo-stats.d.ts +0 -11
  191. package/dist/shared/loop/interfaces/todo.d.ts +0 -13
  192. package/dist/shared/loop/types/index.d.ts +0 -5
  193. package/dist/shared/loop/types/todo-priority.d.ts +0 -4
  194. package/dist/shared/loop/types/todo-status.d.ts +0 -4
  195. package/dist/shared/message/constants/index.d.ts +0 -8
  196. package/dist/shared/message/constants/message-roles.d.ts +0 -23
  197. package/dist/shared/message/constants/part-types.d.ts +0 -13
  198. package/dist/shared/message/constants/plugin-hooks.d.ts +0 -15
  199. package/dist/shared/message/constants/prompts.d.ts +0 -8
  200. package/dist/shared/message/constants/slash-commands.d.ts +0 -21
  201. package/dist/shared/message/index.d.ts +0 -4
  202. package/dist/shared/notification/constants/index.d.ts +0 -3
  203. package/dist/shared/notification/constants/toast-duration.d.ts +0 -19
  204. package/dist/shared/notification/constants/toast-variants.d.ts +0 -10
  205. package/dist/shared/notification/constants/tui.const.d.ts +0 -24
  206. package/dist/shared/notification/index.d.ts +0 -7
  207. package/dist/shared/notification/interfaces/index.d.ts +0 -6
  208. package/dist/shared/notification/interfaces/task-toast.interface.d.ts +0 -18
  209. package/dist/shared/notification/interfaces/toast-message.d.ts +0 -13
  210. package/dist/shared/notification/interfaces/toast-options.d.ts +0 -10
  211. package/dist/shared/notification/os-notify/constants/index.d.ts +0 -6
  212. package/dist/shared/notification/os-notify/constants/notification-command-keys.d.ts +0 -11
  213. package/dist/shared/notification/os-notify/constants/notification-commands.d.ts +0 -11
  214. package/dist/shared/notification/os-notify/constants/notification-defaults.d.ts +0 -5
  215. package/dist/shared/notification/os-notify/index.d.ts +0 -6
  216. package/dist/shared/notification/os-notify/interfaces/index.d.ts +0 -5
  217. package/dist/shared/notification/os-notify/interfaces/notification-config.d.ts +0 -15
  218. package/dist/shared/notification/os-notify/interfaces/notification-state.d.ts +0 -13
  219. package/dist/shared/notification/os-notify/types/index.d.ts +0 -4
  220. package/dist/shared/notification/os-notify/types/notification-commands.d.ts +0 -5
  221. package/dist/shared/notification/presets/index.d.ts +0 -9
  222. package/dist/shared/notification/presets/mission.d.ts +0 -5
  223. package/dist/shared/notification/presets/parallel.d.ts +0 -6
  224. package/dist/shared/notification/presets/session.d.ts +0 -6
  225. package/dist/shared/notification/presets/task-lifecycle.d.ts +0 -7
  226. package/dist/shared/notification/presets/tools.d.ts +0 -6
  227. package/dist/shared/notification/presets/warnings.d.ts +0 -7
  228. package/dist/shared/notification/types/index.d.ts +0 -4
  229. package/dist/shared/notification/types/toast-variant.d.ts +0 -4
  230. package/dist/shared/os/constants/index.d.ts +0 -4
  231. package/dist/shared/os/index.d.ts +0 -5
  232. package/dist/shared/os/types/index.d.ts +0 -4
  233. package/dist/shared/os/types/platform.d.ts +0 -5
  234. package/dist/shared/recovery/constants/history.d.ts +0 -11
  235. package/dist/shared/recovery/constants/index.d.ts +0 -6
  236. package/dist/shared/recovery/constants/recovery-level.d.ts +0 -15
  237. package/dist/shared/recovery/constants/recovery.d.ts +0 -13
  238. package/dist/shared/recovery/index.d.ts +0 -6
  239. package/dist/shared/recovery/interfaces/error-context.d.ts +0 -11
  240. package/dist/shared/recovery/interfaces/index.d.ts +0 -5
  241. package/dist/shared/recovery/interfaces/recovery-record.d.ts +0 -10
  242. package/dist/shared/recovery/types/index.d.ts +0 -4
  243. package/dist/shared/recovery/types/recovery-action.d.ts +0 -4
  244. package/dist/shared/verification/constants/categories.d.ts +0 -95
  245. package/dist/shared/verification/constants/checklist.d.ts +0 -16
  246. package/dist/shared/verification/constants/index.d.ts +0 -7
  247. package/dist/shared/verification/constants/patterns.d.ts +0 -19
  248. package/dist/shared/verification/constants/signals.d.ts +0 -10
  249. package/dist/shared/verification/index.d.ts +0 -8
  250. package/dist/shared/verification/interfaces/checklist-item.d.ts +0 -21
  251. package/dist/shared/verification/interfaces/checklist-verification-result.d.ts +0 -24
  252. package/dist/shared/verification/interfaces/index.d.ts +0 -7
  253. package/dist/shared/verification/interfaces/verification-checklist.d.ts +0 -19
  254. package/dist/shared/verification/interfaces/verification-result.d.ts +0 -29
  255. package/dist/shared/verification/types/checklist-category.d.ts +0 -18
  256. package/dist/shared/verification/types/index.d.ts +0 -4
  257. package/dist/tools/parallel/show-metrics.d.ts +0 -10
  258. package/dist/tools/parallel/update-todo.d.ts +0 -7
  259. package/dist/utils/compatibility/claude.d.ts +0 -9
  260. package/dist/utils/formatting/elapsed-time.d.ts +0 -4
  261. package/dist/utils/formatting/index.d.ts +0 -5
  262. package/dist/utils/formatting/timestamp.d.ts +0 -4
  263. package/dist/utils/parsing/index.d.ts +0 -4
  264. package/dist/utils/parsing/slash-command.d.ts +0 -7
  265. package/dist/utils/sanity/checker.d.ts +0 -8
  266. package/dist/utils/sanity/constants/escalation-prompt.d.ts +0 -4
  267. package/dist/utils/sanity/constants/index.d.ts +0 -6
  268. package/dist/utils/sanity/constants/recovery-prompt.d.ts +0 -4
  269. package/dist/utils/sanity/constants/severity.d.ts +0 -8
  270. package/dist/utils/sanity/index.d.ts +0 -7
  271. package/dist/utils/sanity/interfaces/index.d.ts +0 -4
  272. package/dist/utils/sanity/interfaces/sanity-result.d.ts +0 -9
  273. package/dist/utils/sanity/types/index.d.ts +0 -4
  274. package/dist/utils/sanity/types/severity.d.ts +0 -5
  275. /package/dist/{core/agents/consts/task-status.const.d.ts → shared/task/constants/task-status.d.ts} +0 -0
@@ -1,40 +0,0 @@
1
- /**
2
- * MemoryManager - Core component of the Hierarchical Memory System
3
- */
4
- import { MemoryLevel, MemorySnapshot } from "./interfaces.js";
5
- export declare class MemoryManager {
6
- private static instance;
7
- private memories;
8
- private storage;
9
- private config;
10
- private constructor();
11
- static getInstance(): MemoryManager;
12
- /**
13
- * Add a memory entry
14
- */
15
- add(level: MemoryLevel, content: string, importance?: number, metadata?: Record<string, any>): string;
16
- /**
17
- * Retrieve memory for prompt construction
18
- */
19
- getContext(query?: string): string;
20
- /**
21
- * Simple keyword-based relevance check
22
- */
23
- private isRelevant;
24
- /**
25
- * Prune memory based on token budget (simplified)
26
- */
27
- prune(level: MemoryLevel): void;
28
- /**
29
- * Clear task memory (Short-term)
30
- */
31
- clearTaskMemory(): void;
32
- /**
33
- * Export full memory state (for persistence)
34
- */
35
- export(): MemorySnapshot;
36
- /**
37
- * Import memory state
38
- */
39
- import(snapshot: MemorySnapshot): void;
40
- }
@@ -1,27 +0,0 @@
1
- /**
2
- * MetricsCollector - Tracks system performance and token usage
3
- */
4
- export interface PerformanceStats {
5
- avgAgentLatency: Record<string, number>;
6
- avgToolLatency: Record<string, number>;
7
- tokenUsage: number;
8
- efficiency: number;
9
- totalTasks: number;
10
- successRate: number;
11
- }
12
- export declare class MetricsCollector {
13
- private static instance;
14
- private agentLatencies;
15
- private toolLatencies;
16
- private tokenUsage;
17
- private lineCount;
18
- private tasks;
19
- private constructor();
20
- static getInstance(): MetricsCollector;
21
- recordAgentExecution(agent: string, duration: number): void;
22
- recordToolExecution(tool: string, duration: number): void;
23
- recordTokenUsage(tokens: number): void;
24
- recordTaskResult(id: string, success: boolean): void;
25
- recordLinesProduced(lines: number): void;
26
- getStats(): PerformanceStats;
27
- }
@@ -1,7 +0,0 @@
1
- /**
2
- * OS Native Notification Module
3
- */
4
- export * from "../../../shared/notification/os-notify/index.js";
5
- export { sendNotification } from "./notifier.js";
6
- export { playSound } from "./sound-player.js";
7
- export { detectPlatform, getDefaultSoundPath } from "./platform.js";
@@ -1,7 +0,0 @@
1
- /**
2
- * OS Notification Sender
3
- *
4
- * Low-level logic for sending native notifications.
5
- */
6
- import { type Platform } from "../../../shared/os/index.js";
7
- export declare function sendNotification(platform: Platform, title: string, message: string): Promise<void>;
@@ -1,7 +0,0 @@
1
- /**
2
- * Platform Command Resolver
3
- *
4
- * Logic for discovering native command paths on the system.
5
- */
6
- import { type NotificationCommandKey } from "../../../shared/notification/os-notify/index.js";
7
- export declare function resolveCommandPath(key: NotificationCommandKey, commandName: string): Promise<string | null>;
@@ -1,7 +0,0 @@
1
- /**
2
- * OS Platform Utils
3
- */
4
- import { type Platform } from "../../../shared/os/index.js";
5
- export declare function detectPlatform(): Platform;
6
- export declare function getDefaultSoundPath(p: Platform): string;
7
- export declare function preloadPlatformCommands(platform: Platform): void;
@@ -1,7 +0,0 @@
1
- /**
2
- * OS Sound Player
3
- *
4
- * Low-level logic for playing sounds on different platforms.
5
- */
6
- import { type Platform } from "../../../shared/os/index.js";
7
- export declare function playSound(platform: Platform, soundPath: string): Promise<void>;
@@ -1,5 +0,0 @@
1
- /**
2
- * Todo Status Checker
3
- */
4
- import type { PluginInput } from "@opencode-ai/plugin";
5
- export declare function hasIncompleteTodos(client: PluginInput["client"], sessionID: string): Promise<boolean>;
@@ -1,127 +0,0 @@
1
- /**
2
- * Task Toast Manager
3
- *
4
- * Manages toast notifications for parallel/background tasks.
5
- * Provides consolidated view of running and queued tasks.
6
- *
7
- * Features:
8
- * - Real-time task status display
9
- * - Concurrency info (e.g., "2/5 slots")
10
- * - New task highlighting
11
- * - Completion summaries
12
- */
13
- import type { PluginInput } from "@opencode-ai/plugin";
14
- import type { ConcurrencyController } from "../agents/concurrency.js";
15
- import { type TaskStatus, type TrackedTask, type TaskCompletionInfo } from "../../shared/index.js";
16
- import type { TodoSyncService } from "../sync/todo-sync-service.js";
17
- export type { TaskStatus, TrackedTask, TaskCompletionInfo } from "../../shared/index.js";
18
- type OpencodeClient = PluginInput["client"];
19
- export declare class TaskToastManager {
20
- private tasks;
21
- private client;
22
- private concurrency;
23
- private todoSync;
24
- /**
25
- * Initialize the manager with OpenCode client
26
- */
27
- init(client: OpencodeClient, concurrency?: ConcurrencyController): void;
28
- /**
29
- * Set concurrency controller (can be set after init)
30
- */
31
- setConcurrencyController(concurrency: ConcurrencyController): void;
32
- /**
33
- * Set TodoSyncService for TUI status synchronization
34
- */
35
- setTodoSync(service: TodoSyncService): void;
36
- /**
37
- * Add a new task and show consolidated toast
38
- */
39
- addTask(task: {
40
- id: string;
41
- description: string;
42
- agent: string;
43
- isBackground: boolean;
44
- parentSessionID?: string;
45
- sessionID?: string;
46
- status?: TaskStatus;
47
- }): void;
48
- /**
49
- * Update task status
50
- */
51
- updateTask(id: string, status: TaskStatus): void;
52
- /**
53
- * Remove a task
54
- */
55
- removeTask(id: string): void;
56
- /**
57
- * Get all running tasks (newest first)
58
- */
59
- getRunningTasks(): TrackedTask[];
60
- /**
61
- * Get all queued tasks (oldest first - FIFO)
62
- */
63
- getQueuedTasks(): TrackedTask[];
64
- /**
65
- * Get tasks by parent session
66
- */
67
- getTasksByParent(parentSessionID: string): TrackedTask[];
68
- /**
69
- * Format duration since task started
70
- */
71
- private formatDuration;
72
- /**
73
- * Get concurrency info string (e.g., " [2/5]")
74
- */
75
- /**
76
- * Get concurrency info string (e.g., " [2/5]")
77
- */
78
- private getConcurrencyInfo;
79
- /**
80
- * Build consolidated task list message
81
- */
82
- private buildTaskListMessage;
83
- /**
84
- * Show consolidated toast with all running/queued tasks
85
- */
86
- private showTaskListToast;
87
- /**
88
- * Show task completion toast
89
- */
90
- showCompletionToast(info: TaskCompletionInfo): void;
91
- /**
92
- * Show all-tasks-complete summary toast
93
- */
94
- showAllCompleteToast(parentSessionID: string, completedTasks: TaskCompletionInfo[]): void;
95
- /**
96
- * Show Mission Complete toast (Grand Finale)
97
- */
98
- showMissionCompleteToast(title?: string, message?: string): void;
99
- /**
100
- * Show progress toast (for long-running tasks)
101
- */
102
- showProgressToast(taskId: string, progress: {
103
- current: number;
104
- total: number;
105
- message?: string;
106
- }): void;
107
- /**
108
- * Clear all tracked tasks
109
- */
110
- clear(): void;
111
- /**
112
- * Get task count stats
113
- */
114
- getStats(): {
115
- running: number;
116
- queued: number;
117
- total: number;
118
- };
119
- }
120
- /**
121
- * Get the global TaskToastManager instance
122
- */
123
- export declare function getTaskToastManager(): TaskToastManager | null;
124
- /**
125
- * Initialize the global TaskToastManager
126
- */
127
- export declare function initTaskToastManager(client: OpencodeClient, concurrency?: ConcurrencyController): TaskToastManager;
@@ -1,36 +0,0 @@
1
- /**
2
- * Toast Core - Core notification functions
3
- * Uses OpenCode TUI's showToast API for actual UI display
4
- */
5
- import type { ToastMessage, ToastOptions } from "../../shared/index.js";
6
- import type { PluginInput } from "@opencode-ai/plugin";
7
- type OpencodeClient = PluginInput["client"];
8
- /**
9
- * Initialize the toast system with the OpenCode client
10
- */
11
- export declare function initToastClient(client: OpencodeClient): void;
12
- /**
13
- * Register a notification handler
14
- */
15
- export declare function onToast(handler: (toast: ToastMessage) => void): () => void;
16
- /**
17
- * Show a toast notification (both in TUI and internal storage)
18
- */
19
- export declare function show(options: ToastOptions): ToastMessage;
20
- /**
21
- * Dismiss a toast
22
- */
23
- export declare function dismiss(toastId: string): void;
24
- /**
25
- * Get active (non-dismissed) toasts
26
- */
27
- export declare function getActive(): ToastMessage[];
28
- /**
29
- * Get toast history
30
- */
31
- export declare function getHistory(limit?: number): ToastMessage[];
32
- /**
33
- * Clear all toasts
34
- */
35
- export declare function clear(): void;
36
- export {};
@@ -1,9 +0,0 @@
1
- /**
2
- * Toast Notification System
3
- *
4
- * Provides notifications for task events, completions, errors
5
- */
6
- export type { ToastVariant, ToastMessage, ToastOptions } from "../../shared/index.js";
7
- export { show, dismiss, getActive, getHistory, clear, onToast, initToastClient } from "./toast-core.js";
8
- export { presets } from "../../shared/index.js";
9
- export { TaskToastManager, getTaskToastManager, initTaskToastManager, type TrackedTask, type TaskStatus, type TaskCompletionInfo, } from "./task-toast-manager.js";
@@ -1,6 +0,0 @@
1
- /**
2
- * Session Module - State management
3
- */
4
- export * from "./types/index.js";
5
- export * from "./interfaces/index.js";
6
- export { state } from "./state.js";
@@ -1,4 +0,0 @@
1
- /**
2
- * Session Interfaces Index
3
- */
4
- export { SessionState } from "./session-state.js";
@@ -1,11 +0,0 @@
1
- /**
2
- * SessionState - State for a single orchestration session
3
- */
4
- export interface SessionState {
5
- enabled: boolean;
6
- iterations: number;
7
- taskRetries: Map<string, number>;
8
- currentTask: string;
9
- anomalyCount: number;
10
- lastHealthyOutput?: string;
11
- }
@@ -1,31 +0,0 @@
1
- /**
2
- * Ensures a local session object exists in the plugin context map.
3
- * Now WITH disk-based rehydration for robustness.
4
- */
5
- export declare function ensureSessionInitialized(sessions: Map<string, any>, sessionID: string, directory?: string): any;
6
- /**
7
- * Activates the global mission state for a specific session.
8
- */
9
- export declare function activateMissionState(sessionID: string): void;
10
- /**
11
- * Checks if the mission is globally active and the session is enabled.
12
- * CROSS-CHECK: Will return true if disk state confirms mission, even if in-memory 'missionActive' flag reset.
13
- */
14
- export declare function isMissionActive(sessionID: string, directory?: string): boolean;
15
- /**
16
- * Deactivates mission state (e.g., on cancellation or error).
17
- */
18
- export declare function deactivateMissionState(sessionID: string): void;
19
- /**
20
- * Updates token usage and estimated cost for a session.
21
- */
22
- export declare function updateSessionTokens(sessions: Map<string, any>, sessionID: string, inputLen: number, outputLen: number): void;
23
- /**
24
- * Anomaly Management
25
- */
26
- export declare function recordAnomaly(sessionID: string): number;
27
- export declare function resetAnomaly(sessionID: string): void;
28
- /**
29
- * Task Tracking
30
- */
31
- export declare function updateCurrentTask(sessionID: string, taskID: string): void;
@@ -1,10 +0,0 @@
1
- /**
2
- * Global State - Orchestration state manager
3
- */
4
- import { SessionState } from "./interfaces/session-state.js";
5
- export declare const state: {
6
- missionActive: boolean;
7
- maxIterations: 10000;
8
- maxRetries: 3;
9
- sessions: Map<string, SessionState>;
10
- };
@@ -1,4 +0,0 @@
1
- /**
2
- * Orchestrator Types Index
3
- */
4
- export { TaskStatus } from "./task-status.js";
@@ -1,5 +0,0 @@
1
- /**
2
- * Task Status - Re-export from central location
3
- */
4
- export { TASK_STATUS } from "../../../shared/index.js";
5
- export type { ParallelTaskStatus as TaskStatus } from "../../../shared/task/types/index.js";
@@ -1,30 +0,0 @@
1
- /**
2
- * Plugin System Interfaces
3
- */
4
- import type { ToolDefinition } from "@opencode-ai/plugin";
5
- import type { PreToolUseHook, PostToolUseHook, ChatMessageHook, AssistantDoneHook } from "../../hooks/types.js";
6
- export interface CustomPlugin {
7
- name: string;
8
- version: string;
9
- description?: string;
10
- /**
11
- * Tools to register
12
- */
13
- tools?: Record<string, ToolDefinition>;
14
- /**
15
- * Hooks to register
16
- */
17
- hooks?: {
18
- preTool?: PreToolUseHook;
19
- postTool?: PostToolUseHook;
20
- chat?: ChatMessageHook;
21
- done?: AssistantDoneHook;
22
- };
23
- /**
24
- * Initialization logic
25
- */
26
- init?: (context: PluginContext) => Promise<void>;
27
- }
28
- export interface PluginContext {
29
- directory: string;
30
- }
@@ -1,21 +0,0 @@
1
- /**
2
- * PluginManager - Manages dynamic loading of orchestrator plugins
3
- */
4
- export declare class PluginManager {
5
- private static instance;
6
- private plugins;
7
- private directory;
8
- private dynamicTools;
9
- private constructor();
10
- static getInstance(): PluginManager;
11
- initialize(directory: string): Promise<void>;
12
- /**
13
- * Load plugins from .opencode/plugins/*.js
14
- */
15
- private loadPlugins;
16
- private loadPlugin;
17
- /**
18
- * Get all dynamically registered tools
19
- */
20
- getDynamicTools(): Record<string, any>;
21
- }
@@ -1,11 +0,0 @@
1
- /**
2
- * Progress Calculator - Rate and estimation calculations
3
- */
4
- /**
5
- * Calculate rate (items per minute)
6
- */
7
- export declare function calculateRate(sessionId: string): number;
8
- /**
9
- * Estimate remaining time in ms
10
- */
11
- export declare function estimateRemaining(sessionId: string): number | undefined;
@@ -1,20 +0,0 @@
1
- /**
2
- * Progress Formatting Utilities
3
- */
4
- import type { ProgressSnapshot } from "./interfaces.js";
5
- /**
6
- * Format elapsed time
7
- */
8
- export declare function formatElapsed(ms: number): string;
9
- /**
10
- * Format progress bar
11
- */
12
- export declare function formatProgressBar(percentage: number, width?: number): string;
13
- /**
14
- * Get formatted progress string
15
- */
16
- export declare function formatSnapshot(snapshot: ProgressSnapshot): string;
17
- /**
18
- * Get compact progress string (for inline display)
19
- */
20
- export declare function formatCompact(snapshot: ProgressSnapshot): string;
@@ -1,8 +0,0 @@
1
- /**
2
- * Progress Interfaces - Index
3
- */
4
- export type { TodoProgress } from "./todo-progress.js";
5
- export type { TaskProgress } from "./task-progress.js";
6
- export type { StepProgress } from "./step-progress.js";
7
- export type { ProgressSnapshot } from "./progress-snapshot.js";
8
- export type { SnapshotInput } from "./snapshot-input.js";
@@ -1,15 +0,0 @@
1
- /**
2
- * Progress Snapshot Interface
3
- */
4
- import type { TodoProgress } from "./todo-progress.js";
5
- import type { TaskProgress } from "./task-progress.js";
6
- import type { StepProgress } from "./step-progress.js";
7
- export interface ProgressSnapshot {
8
- sessionId: string;
9
- timestamp: Date;
10
- todos: TodoProgress;
11
- tasks: TaskProgress;
12
- steps: StepProgress;
13
- startedAt: Date;
14
- elapsedMs: number;
15
- }
@@ -1,13 +0,0 @@
1
- /**
2
- * Snapshot Input Interface
3
- */
4
- export interface SnapshotInput {
5
- todoTotal?: number;
6
- todoCompleted?: number;
7
- taskTotal?: number;
8
- taskRunning?: number;
9
- taskCompleted?: number;
10
- taskFailed?: number;
11
- currentStep?: number;
12
- maxSteps?: number;
13
- }
@@ -1,7 +0,0 @@
1
- /**
2
- * Step Progress Interface
3
- */
4
- export interface StepProgress {
5
- current: number;
6
- max: number;
7
- }
@@ -1,10 +0,0 @@
1
- /**
2
- * Task Progress Interface
3
- */
4
- export interface TaskProgress {
5
- total: number;
6
- running: number;
7
- completed: number;
8
- failed: number;
9
- percentage: number;
10
- }
@@ -1,9 +0,0 @@
1
- /**
2
- * Todo Progress Interface
3
- */
4
- export interface TodoProgress {
5
- total: number;
6
- completed: number;
7
- pending: number;
8
- percentage: number;
9
- }
@@ -1,6 +0,0 @@
1
- /**
2
- * Progress Tracker Interfaces
3
- *
4
- * Re-exports for backward compatibility.
5
- */
6
- export * from "./interfaces/index.js";
@@ -1,14 +0,0 @@
1
- import { ParallelAgentManager } from "../agents/manager.js";
2
- export declare class ProgressNotifier {
3
- private static _instance;
4
- private manager;
5
- private constructor();
6
- static getInstance(): ProgressNotifier;
7
- setManager(manager: ParallelAgentManager): void;
8
- /**
9
- * Poll current status from ParallelAgentManager and broadcast it
10
- */
11
- update(): void;
12
- private handleStateChange;
13
- }
14
- export declare const progressNotifier: ProgressNotifier;
@@ -1,29 +0,0 @@
1
- import { Todo } from "../loop/todo-enforcer.js";
2
- export interface MissionState {
3
- missionId: string;
4
- status: 'planning' | 'executing' | 'reviewing' | 'completed' | 'failed';
5
- progress: {
6
- totalTasks: number;
7
- completedTasks: number;
8
- percentage: number;
9
- };
10
- activeAgents: {
11
- id: string;
12
- type: string;
13
- status: string;
14
- currentTask?: string;
15
- }[];
16
- todo: Todo[];
17
- lastUpdated: Date;
18
- }
19
- export declare class StateBroadcaster {
20
- private static _instance;
21
- private listeners;
22
- private currentState;
23
- private constructor();
24
- static getInstance(): StateBroadcaster;
25
- subscribe(listener: (state: MissionState) => void): () => boolean;
26
- broadcast(state: MissionState): void;
27
- getCurrentState(): MissionState | null;
28
- }
29
- export declare const stateBroadcaster: StateBroadcaster;
@@ -1,28 +0,0 @@
1
- /**
2
- * Progress Store - Session data management
3
- */
4
- import type { ProgressSnapshot, SnapshotInput } from "./interfaces.js";
5
- /**
6
- * Start tracking a session
7
- */
8
- export declare function startSession(sessionId: string): void;
9
- /**
10
- * Get session start time
11
- */
12
- export declare function getSessionStart(sessionId: string): Date | undefined;
13
- /**
14
- * Record a progress snapshot
15
- */
16
- export declare function recordSnapshot(sessionId: string, data: SnapshotInput): ProgressSnapshot;
17
- /**
18
- * Get latest snapshot
19
- */
20
- export declare function getLatest(sessionId: string): ProgressSnapshot | undefined;
21
- /**
22
- * Get progress history
23
- */
24
- export declare function getHistory(sessionId: string, limit?: number): ProgressSnapshot[];
25
- /**
26
- * Clear session data
27
- */
28
- export declare function clearSession(sessionId: string): void;
@@ -1,11 +0,0 @@
1
- /**
2
- * Progress Tracker Module
3
- *
4
- * Tracks progress of sessions, tasks, and todos
5
- */
6
- export type { TodoProgress, TaskProgress, StepProgress, ProgressSnapshot, SnapshotInput, } from "./interfaces.js";
7
- export { startSession, getSessionStart, recordSnapshot, getLatest, getHistory, clearSession, } from "./store.js";
8
- export { formatElapsed, formatProgressBar, formatSnapshot, } from "./formatters.js";
9
- export { calculateRate, estimateRemaining, } from "./calculator.js";
10
- export declare function format(sessionId: string): string;
11
- export declare function formatCompact(sessionId: string): string;