@tt-a1i/hive 0.6.0-alpha.2 → 0.6.0-alpha.3

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 (118) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +16 -9
  3. package/README.zh-CN.md +9 -12
  4. package/SECURITY.md +15 -3
  5. package/dist/src/cli/hive.d.ts +2 -0
  6. package/dist/src/cli/hive.js +49 -13
  7. package/dist/src/cli/hive.js.map +1 -1
  8. package/dist/src/cli/team.js +72 -9
  9. package/dist/src/cli/team.js.map +1 -1
  10. package/dist/src/server/agent-launch-cache.js +2 -0
  11. package/dist/src/server/agent-launch-cache.js.map +1 -1
  12. package/dist/src/server/agent-manager-support.js +88 -9
  13. package/dist/src/server/agent-manager-support.js.map +1 -1
  14. package/dist/src/server/agent-manager.js +0 -2
  15. package/dist/src/server/agent-manager.js.map +1 -1
  16. package/dist/src/server/agent-run-bootstrap.js +2 -0
  17. package/dist/src/server/agent-run-bootstrap.js.map +1 -1
  18. package/dist/src/server/agent-run-starter.js +2 -2
  19. package/dist/src/server/agent-run-starter.js.map +1 -1
  20. package/dist/src/server/agent-run-store.d.ts +5 -0
  21. package/dist/src/server/agent-run-store.js +18 -3
  22. package/dist/src/server/agent-run-store.js.map +1 -1
  23. package/dist/src/server/agent-runtime-close.js +3 -5
  24. package/dist/src/server/agent-runtime-close.js.map +1 -1
  25. package/dist/src/server/agent-runtime-contract.d.ts +4 -1
  26. package/dist/src/server/agent-runtime-ports.d.ts +1 -0
  27. package/dist/src/server/agent-runtime.js +22 -3
  28. package/dist/src/server/agent-runtime.js.map +1 -1
  29. package/dist/src/server/agent-startup-instructions.js +2 -2
  30. package/dist/src/server/agent-startup-instructions.js.map +1 -1
  31. package/dist/src/server/agent-stdin-dispatcher.d.ts +4 -1
  32. package/dist/src/server/agent-stdin-dispatcher.js +12 -3
  33. package/dist/src/server/agent-stdin-dispatcher.js.map +1 -1
  34. package/dist/src/server/app.js +2 -0
  35. package/dist/src/server/app.js.map +1 -1
  36. package/dist/src/server/command-preset-defaults.js +1 -1
  37. package/dist/src/server/command-preset-defaults.js.map +1 -1
  38. package/dist/src/server/dispatch-ledger-store.d.ts +7 -1
  39. package/dist/src/server/dispatch-ledger-store.js +39 -6
  40. package/dist/src/server/dispatch-ledger-store.js.map +1 -1
  41. package/dist/src/server/hive-team-guidance.js +3 -2
  42. package/dist/src/server/hive-team-guidance.js.map +1 -1
  43. package/dist/src/server/http-errors.d.ts +6 -0
  44. package/dist/src/server/http-errors.js +12 -0
  45. package/dist/src/server/http-errors.js.map +1 -1
  46. package/dist/src/server/local-request-guard.d.ts +3 -0
  47. package/dist/src/server/local-request-guard.js +42 -0
  48. package/dist/src/server/local-request-guard.js.map +1 -0
  49. package/dist/src/server/message-log-store.d.ts +7 -2
  50. package/dist/src/server/message-log-store.js +10 -6
  51. package/dist/src/server/message-log-store.js.map +1 -1
  52. package/dist/src/server/orchestrator-launch.d.ts +7 -5
  53. package/dist/src/server/orchestrator-launch.js +28 -6
  54. package/dist/src/server/orchestrator-launch.js.map +1 -1
  55. package/dist/src/server/post-start-input-writer.d.ts +1 -1
  56. package/dist/src/server/post-start-input-writer.js +15 -4
  57. package/dist/src/server/post-start-input-writer.js.map +1 -1
  58. package/dist/src/server/recovery-summary.js +4 -2
  59. package/dist/src/server/recovery-summary.js.map +1 -1
  60. package/dist/src/server/route-helpers.d.ts +3 -1
  61. package/dist/src/server/route-helpers.js +16 -2
  62. package/dist/src/server/route-helpers.js.map +1 -1
  63. package/dist/src/server/route-types.d.ts +3 -0
  64. package/dist/src/server/routes-settings.js +25 -11
  65. package/dist/src/server/routes-settings.js.map +1 -1
  66. package/dist/src/server/routes-team.js +64 -12
  67. package/dist/src/server/routes-team.js.map +1 -1
  68. package/dist/src/server/routes-workspaces.js +9 -3
  69. package/dist/src/server/routes-workspaces.js.map +1 -1
  70. package/dist/src/server/runtime-message-builders.d.ts +1 -0
  71. package/dist/src/server/runtime-message-builders.js +9 -0
  72. package/dist/src/server/runtime-message-builders.js.map +1 -1
  73. package/dist/src/server/runtime-store-helpers.js +2 -1
  74. package/dist/src/server/runtime-store-helpers.js.map +1 -1
  75. package/dist/src/server/runtime-store.d.ts +3 -2
  76. package/dist/src/server/runtime-store.js +1 -0
  77. package/dist/src/server/runtime-store.js.map +1 -1
  78. package/dist/src/server/sqlite-schema-v15.d.ts +2 -0
  79. package/dist/src/server/sqlite-schema-v15.js +74 -0
  80. package/dist/src/server/sqlite-schema-v15.js.map +1 -0
  81. package/dist/src/server/sqlite-schema-v16.d.ts +2 -0
  82. package/dist/src/server/sqlite-schema-v16.js +7 -0
  83. package/dist/src/server/sqlite-schema-v16.js.map +1 -0
  84. package/dist/src/server/sqlite-schema-v17.d.ts +2 -0
  85. package/dist/src/server/sqlite-schema-v17.js +16 -0
  86. package/dist/src/server/sqlite-schema-v17.js.map +1 -0
  87. package/dist/src/server/sqlite-schema-v18.d.ts +2 -0
  88. package/dist/src/server/sqlite-schema-v18.js +7 -0
  89. package/dist/src/server/sqlite-schema-v18.js.map +1 -0
  90. package/dist/src/server/sqlite-schema.d.ts +1 -1
  91. package/dist/src/server/sqlite-schema.js +23 -1
  92. package/dist/src/server/sqlite-schema.js.map +1 -1
  93. package/dist/src/server/startup-command-parser.d.ts +5 -0
  94. package/dist/src/server/startup-command-parser.js +38 -0
  95. package/dist/src/server/startup-command-parser.js.map +1 -0
  96. package/dist/src/server/tasks-websocket-server.js +5 -0
  97. package/dist/src/server/tasks-websocket-server.js.map +1 -1
  98. package/dist/src/server/team-authz.d.ts +1 -1
  99. package/dist/src/server/team-authz.js +2 -2
  100. package/dist/src/server/team-authz.js.map +1 -1
  101. package/dist/src/server/team-operations.d.ts +23 -2
  102. package/dist/src/server/team-operations.js +50 -9
  103. package/dist/src/server/team-operations.js.map +1 -1
  104. package/dist/src/server/terminal-ws-server.js +5 -0
  105. package/dist/src/server/terminal-ws-server.js.map +1 -1
  106. package/dist/src/server/workspace-path-validation.d.ts +1 -0
  107. package/dist/src/server/workspace-path-validation.js +27 -0
  108. package/dist/src/server/workspace-path-validation.js.map +1 -0
  109. package/dist/src/server/workspace-store-support.js +1 -1
  110. package/dist/src/server/workspace-store-support.js.map +1 -1
  111. package/dist/src/server/workspace-store.js +13 -8
  112. package/dist/src/server/workspace-store.js.map +1 -1
  113. package/package.json +2 -1
  114. package/web/dist/assets/index-CIlOwuEZ.js +70 -0
  115. package/web/dist/assets/index-eyw1Uar8.css +1 -0
  116. package/web/dist/index.html +4 -4
  117. package/web/dist/assets/index-BGhNuRRP.css +0 -1
  118. package/web/dist/assets/index-D8sy4JED.js +0 -75
@@ -1,6 +1,6 @@
1
1
  import { CLAUDE_DEFAULT_YOLO_ARGS } from './claude-command-defaults.js';
2
2
  const CODEX_DEFAULT_YOLO_ARGS = ['--dangerously-bypass-approvals-and-sandbox'];
3
- const OPENCODE_DEFAULT_YOLO_ARGS = ['--dangerously-skip-permissions'];
3
+ const OPENCODE_DEFAULT_YOLO_ARGS = [];
4
4
  const GEMINI_DEFAULT_YOLO_ARGS = ['--yolo'];
5
5
  export const BUILTIN_COMMAND_PRESETS = [
6
6
  {
@@ -1 +1 @@
1
- {"version":3,"file":"command-preset-defaults.js","sourceRoot":"","sources":["../../../src/server/command-preset-defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAYvE,MAAM,uBAAuB,GAAG,CAAC,4CAA4C,CAAC,CAAA;AAC9E,MAAM,0BAA0B,GAAG,CAAC,gCAAgC,CAAC,CAAA;AACrE,MAAM,wBAAwB,GAAG,CAAC,QAAQ,CAAC,CAAA;AAE3C,MAAM,CAAC,MAAM,uBAAuB,GAAmC;IACrE;QACE,OAAO,EAAE,QAAQ;QACjB,WAAW,EAAE,kBAAkB;QAC/B,EAAE,EAAE,QAAQ;QACZ,kBAAkB,EAAE,uBAAuB;QAC3C,gBAAgB,EAAE;YAChB,OAAO,EAAE,0CAA0C;YACnD,MAAM,EAAE,0BAA0B;SACnC;QACD,gBAAgB,EAAE,wBAAwB;KAC3C;IACD;QACE,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,OAAO;QACpB,EAAE,EAAE,OAAO;QACX,kBAAkB,EAAE,qBAAqB;QACzC,gBAAgB,EAAE;YAChB,OAAO,EAAE,8BAA8B;YACvC,MAAM,EAAE,yBAAyB;SAClC;QACD,gBAAgB,EAAE,uBAAuB;KAC1C;IACD;QACE,OAAO,EAAE,UAAU;QACnB,WAAW,EAAE,UAAU;QACvB,EAAE,EAAE,UAAU;QACd,kBAAkB,EAAE,wBAAwB;QAC5C,gBAAgB,EAAE;YAChB,OAAO,EAAE,qCAAqC;YAC9C,MAAM,EAAE,qBAAqB;SAC9B;QACD,gBAAgB,EAAE,0BAA0B;KAC7C;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,WAAW,EAAE,QAAQ;QACrB,EAAE,EAAE,QAAQ;QACZ,kBAAkB,EAAE,uBAAuB;QAC3C,gBAAgB,EAAE;YAChB,OAAO,EAAE,8BAA8B;YACvC,MAAM,EAAE,yBAAyB;SAClC;QACD,gBAAgB,EAAE,wBAAwB;KAC3C;CACF,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EAAU,EAAE,EAAE,CACpD,uBAAuB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA"}
1
+ {"version":3,"file":"command-preset-defaults.js","sourceRoot":"","sources":["../../../src/server/command-preset-defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAYvE,MAAM,uBAAuB,GAAG,CAAC,4CAA4C,CAAC,CAAA;AAC9E,MAAM,0BAA0B,GAAa,EAAE,CAAA;AAC/C,MAAM,wBAAwB,GAAG,CAAC,QAAQ,CAAC,CAAA;AAE3C,MAAM,CAAC,MAAM,uBAAuB,GAAmC;IACrE;QACE,OAAO,EAAE,QAAQ;QACjB,WAAW,EAAE,kBAAkB;QAC/B,EAAE,EAAE,QAAQ;QACZ,kBAAkB,EAAE,uBAAuB;QAC3C,gBAAgB,EAAE;YAChB,OAAO,EAAE,0CAA0C;YACnD,MAAM,EAAE,0BAA0B;SACnC;QACD,gBAAgB,EAAE,wBAAwB;KAC3C;IACD;QACE,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,OAAO;QACpB,EAAE,EAAE,OAAO;QACX,kBAAkB,EAAE,qBAAqB;QACzC,gBAAgB,EAAE;YAChB,OAAO,EAAE,8BAA8B;YACvC,MAAM,EAAE,yBAAyB;SAClC;QACD,gBAAgB,EAAE,uBAAuB;KAC1C;IACD;QACE,OAAO,EAAE,UAAU;QACnB,WAAW,EAAE,UAAU;QACvB,EAAE,EAAE,UAAU;QACd,kBAAkB,EAAE,wBAAwB;QAC5C,gBAAgB,EAAE;YAChB,OAAO,EAAE,qCAAqC;YAC9C,MAAM,EAAE,qBAAqB;SAC9B;QACD,gBAAgB,EAAE,0BAA0B;KAC7C;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,WAAW,EAAE,QAAQ;QACrB,EAAE,EAAE,QAAQ;QACZ,kBAAkB,EAAE,uBAAuB;QAC3C,gBAAgB,EAAE;YAChB,OAAO,EAAE,8BAA8B;YACvC,MAAM,EAAE,yBAAyB;SAClC;QACD,gBAAgB,EAAE,wBAAwB;KAC3C;CACF,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EAAU,EAAE,EAAE,CACpD,uBAAuB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA"}
@@ -23,6 +23,7 @@ interface CreateDispatchInput {
23
23
  }
24
24
  interface ReportDispatchInput {
25
25
  artifacts: string[];
26
+ dispatchId?: string;
26
27
  reportText: string;
27
28
  toAgentId: string;
28
29
  workspaceId: string;
@@ -37,7 +38,12 @@ export declare const createDispatchLedgerStore: (db: Database | undefined) => {
37
38
  deleteDispatch: (dispatchId: string) => void;
38
39
  deleteWorkerDispatches: (workspaceId: string, workerId: string) => void;
39
40
  deleteWorkspaceDispatches: (workspaceId: string) => void;
40
- findOpenDispatch: (workspaceId: string, toAgentId: string) => DispatchRecord | undefined;
41
+ findOpenDispatch: (workspaceId: string, toAgentId: string, dispatchId?: string) => DispatchRecord | undefined;
42
+ listOpenDispatchKinds: () => {
43
+ type: "send";
44
+ worker_id: string;
45
+ workspace_id: string;
46
+ }[];
41
47
  listWorkspaceDispatches: (workspaceId: string, options?: ListDispatchesOptions) => DispatchRecord[];
42
48
  markReportedByWorker: (input: ReportDispatchInput) => DispatchRecord | undefined;
43
49
  markSubmitted: (dispatchId: string) => void;
@@ -87,13 +87,27 @@ export const createDispatchLedgerStore = (db) => {
87
87
  SET status = ?, submitted_at = ?
88
88
  WHERE id = ?`).run('submitted', submittedAt, dispatchId);
89
89
  };
90
- const findOpenDispatch = (workspaceId, toAgentId) => {
90
+ const findOpenDispatch = (workspaceId, toAgentId, dispatchId) => {
91
91
  if (!db) {
92
- return Array.from(memoryDispatches.values())
93
- .filter((record) => record.workspaceId === workspaceId &&
92
+ const openDispatches = Array.from(memoryDispatches.values()).filter((record) => record.workspaceId === workspaceId &&
94
93
  record.toAgentId === toAgentId &&
95
- record.status !== 'reported')
96
- .sort((a, b) => (a.sequence ?? a.createdAt) - (b.sequence ?? b.createdAt))[0];
94
+ record.status !== 'reported');
95
+ if (dispatchId) {
96
+ return openDispatches.find((record) => record.id === dispatchId);
97
+ }
98
+ return openDispatches.sort((a, b) => (a.sequence ?? a.createdAt) - (b.sequence ?? b.createdAt))[0];
99
+ }
100
+ if (dispatchId) {
101
+ const row = db
102
+ .prepare(`SELECT *
103
+ FROM dispatches
104
+ WHERE id = ?
105
+ AND workspace_id = ?
106
+ AND to_agent_id = ?
107
+ AND status != 'reported'
108
+ LIMIT 1`)
109
+ .get(dispatchId, workspaceId, toAgentId);
110
+ return row ? toRecord(row) : undefined;
97
111
  }
98
112
  const row = db
99
113
  .prepare(`SELECT *
@@ -107,7 +121,7 @@ export const createDispatchLedgerStore = (db) => {
107
121
  return row ? toRecord(row) : undefined;
108
122
  };
109
123
  const markReportedByWorker = (input) => {
110
- const dispatch = findOpenDispatch(input.workspaceId, input.toAgentId);
124
+ const dispatch = findOpenDispatch(input.workspaceId, input.toAgentId, input.dispatchId);
111
125
  if (!dispatch) {
112
126
  return undefined;
113
127
  }
@@ -161,6 +175,24 @@ export const createDispatchLedgerStore = (db) => {
161
175
  LIMIT ? OFFSET ?`)
162
176
  .all(workspaceId, limit, offset).map(toRecord);
163
177
  };
178
+ const listOpenDispatchKinds = () => {
179
+ if (!db) {
180
+ return Array.from(memoryDispatches.values())
181
+ .filter((record) => record.status !== 'reported')
182
+ .sort((a, b) => (a.sequence ?? a.createdAt) - (b.sequence ?? b.createdAt))
183
+ .map((record) => ({
184
+ type: 'send',
185
+ worker_id: record.toAgentId,
186
+ workspace_id: record.workspaceId,
187
+ }));
188
+ }
189
+ return db
190
+ .prepare(`SELECT workspace_id, to_agent_id AS worker_id, 'send' AS type
191
+ FROM dispatches
192
+ WHERE status != 'reported'
193
+ ORDER BY sequence ASC`)
194
+ .all();
195
+ };
164
196
  const deleteWorkspaceDispatches = (workspaceId) => {
165
197
  if (!db) {
166
198
  for (const [id, record] of memoryDispatches) {
@@ -188,6 +220,7 @@ export const createDispatchLedgerStore = (db) => {
188
220
  deleteWorkerDispatches,
189
221
  deleteWorkspaceDispatches,
190
222
  findOpenDispatch,
223
+ listOpenDispatchKinds,
191
224
  listWorkspaceDispatches,
192
225
  markReportedByWorker,
193
226
  markSubmitted,
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch-ledger-store.js","sourceRoot":"","sources":["../../../src/server/dispatch-ledger-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch-ledger-store.js","sourceRoot":"","sources":["../../../src/server/dispatch-ledger-store.ts"],"names":[],"mappings":"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"}
@@ -3,12 +3,13 @@ const ORCHESTRATOR_RULES = [
3
3
  '当 user 要你“让 worker ... / 给 worker 找活 / 让成员处理”时,先执行 `team list` 确认真实 Hive worker。',
4
4
  '如果只有一个可用 worker,直接用 `team send <worker-name> "<task>"` 派给它;不要把选择题丢回给 user。',
5
5
  '当 user 要你“让 worker ...”时,必须用 `team send <worker-name> "<task>"` 派给 Hive worker。',
6
- '不要使用 Claude Code 内置的 Task / Explore / subagent 来代替 Hive worker;它们不会出现在 Hive UI,也不会触发 pending_task_count / team report。',
6
+ '不要使用 Claude Code 内置的 Task / Explore / subagent 来代替 Hive worker;它们不会出现在 Hive UI,也不会更新 Hive 调度状态。',
7
7
  ];
8
8
  const WORKER_RULES = [
9
9
  '你是 Hive 右侧卡片里的真实 CLI worker,不是 Claude Code 内置 subagent。',
10
10
  '不要调用 team send,也不要再启动 Claude Code 内置的 Task / Explore / subagent 来替你完成派单。',
11
- '完成或阻塞时必须用 `team report` 汇报给 Orchestrator。',
11
+ '完成或阻塞已派发任务时必须用 `team report` 汇报给 Orchestrator。',
12
+ '如果当前没有明确派发任务,只是汇报待命、环境或状态,使用 `team status "<当前状态>"`。',
12
13
  ];
13
14
  export const getHiveTeamRules = (agent) => agent.role === 'orchestrator' ? ORCHESTRATOR_RULES : WORKER_RULES;
14
15
  //# sourceMappingURL=hive-team-guidance.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hive-team-guidance.js","sourceRoot":"","sources":["../../../src/server/hive-team-guidance.ts"],"names":[],"mappings":"AAEA,MAAM,kBAAkB,GAAG;IACzB,+EAA+E;IAC/E,kFAAkF;IAClF,4EAA4E;IAC5E,iFAAiF;IACjF,wHAAwH;CACzH,CAAA;AAED,MAAM,YAAY,GAAG;IACnB,yDAAyD;IACzD,0EAA0E;IAC1E,2CAA2C;CAC5C,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAiC,EAAE,EAAE,CACpE,KAAK,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,YAAY,CAAA"}
1
+ {"version":3,"file":"hive-team-guidance.js","sourceRoot":"","sources":["../../../src/server/hive-team-guidance.ts"],"names":[],"mappings":"AAEA,MAAM,kBAAkB,GAAG;IACzB,+EAA+E;IAC/E,kFAAkF;IAClF,4EAA4E;IAC5E,iFAAiF;IACjF,iGAAiG;CAClG,CAAA;AAED,MAAM,YAAY,GAAG;IACnB,yDAAyD;IACzD,0EAA0E;IAC1E,gDAAgD;IAChD,sDAAsD;CACvD,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAiC,EAAE,EAAE,CACpE,KAAK,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,YAAY,CAAA"}
@@ -11,6 +11,12 @@ export declare class UnauthorizedError extends HttpError {
11
11
  export declare class ForbiddenError extends HttpError {
12
12
  constructor(message: string);
13
13
  }
14
+ export declare class BadRequestError extends HttpError {
15
+ constructor(message: string);
16
+ }
17
+ export declare class PayloadTooLargeError extends HttpError {
18
+ constructor(message: string);
19
+ }
14
20
  export declare class ConflictError extends HttpError {
15
21
  constructor(message: string);
16
22
  }
@@ -24,6 +24,18 @@ export class ForbiddenError extends HttpError {
24
24
  this.name = 'ForbiddenError';
25
25
  }
26
26
  }
27
+ export class BadRequestError extends HttpError {
28
+ constructor(message) {
29
+ super(400, message);
30
+ this.name = 'BadRequestError';
31
+ }
32
+ }
33
+ export class PayloadTooLargeError extends HttpError {
34
+ constructor(message) {
35
+ super(413, message);
36
+ this.name = 'PayloadTooLargeError';
37
+ }
38
+ }
27
39
  export class ConflictError extends HttpError {
28
40
  constructor(message) {
29
41
  super(409, message);
@@ -1 +1 @@
1
- {"version":3,"file":"http-errors.js","sourceRoot":"","sources":["../../../src/server/http-errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,SAAU,SAAQ,KAAK;IACzB,UAAU,CAAQ;IAE3B,YAAY,UAAkB,EAAE,OAAe;QAC7C,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,WAAW,CAAA;QACvB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAC9B,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAC7C,YAAY,OAAe;QACzB,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAA;IAChC,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,SAAS;IAC9C,YAAY,OAAe;QACzB,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAA;IACjC,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,SAAS;IAC3C,YAAY,OAAe;QACzB,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAA;IAC9B,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,SAAS;IAC1C,YAAY,OAAe;QACzB,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,eAAe,CAAA;IAC7B,CAAC;CACF"}
1
+ {"version":3,"file":"http-errors.js","sourceRoot":"","sources":["../../../src/server/http-errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,SAAU,SAAQ,KAAK;IACzB,UAAU,CAAQ;IAE3B,YAAY,UAAkB,EAAE,OAAe;QAC7C,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,WAAW,CAAA;QACvB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAC9B,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAC7C,YAAY,OAAe;QACzB,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAA;IAChC,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,SAAS;IAC9C,YAAY,OAAe;QACzB,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAA;IACjC,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,SAAS;IAC3C,YAAY,OAAe;QACzB,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAA;IAC9B,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,SAAS;IAC5C,YAAY,OAAe;QACzB,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAA;IAC/B,CAAC;CACF;AAED,MAAM,OAAO,oBAAqB,SAAQ,SAAS;IACjD,YAAY,OAAe;QACzB,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAA;IACpC,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,SAAS;IAC1C,YAAY,OAAe;QACzB,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,eAAe,CAAA;IAC7B,CAAC;CACF"}
@@ -0,0 +1,3 @@
1
+ import type { IncomingMessage } from 'node:http';
2
+ export declare const getLocalRequestRejection: (request: IncomingMessage) => string | null;
3
+ export declare const assertLocalRequest: (request: IncomingMessage) => void;
@@ -0,0 +1,42 @@
1
+ import { ForbiddenError } from './http-errors.js';
2
+ const LOCAL_HOSTNAMES = new Set(['localhost', '127.0.0.1', '::1']);
3
+ const LOCAL_REMOTE_ADDRESSES = new Set(['127.0.0.1', '::1']);
4
+ const firstHeader = (value) => Array.isArray(value) ? value[0] : value;
5
+ const normalizeHostname = (hostname) => hostname.replace(/^\[|\]$/g, '').toLowerCase();
6
+ const isLocalHostname = (hostname) => LOCAL_HOSTNAMES.has(normalizeHostname(hostname));
7
+ const normalizeRemoteAddress = (address) => normalizeHostname(address).replace(/^::ffff:/, '');
8
+ const isLocalRemoteAddress = (address) => LOCAL_REMOTE_ADDRESSES.has(normalizeRemoteAddress(address));
9
+ const isLocalAuthority = (authority) => {
10
+ try {
11
+ return isLocalHostname(new URL(`http://${authority}`).hostname);
12
+ }
13
+ catch {
14
+ return false;
15
+ }
16
+ };
17
+ const isLocalOrigin = (origin) => {
18
+ try {
19
+ return isLocalHostname(new URL(origin).hostname);
20
+ }
21
+ catch {
22
+ return false;
23
+ }
24
+ };
25
+ export const getLocalRequestRejection = (request) => {
26
+ const remoteAddress = request.socket.remoteAddress;
27
+ if (remoteAddress && !isLocalRemoteAddress(remoteAddress))
28
+ return 'non-local remote address';
29
+ const host = firstHeader(request.headers.host);
30
+ if (host && !isLocalAuthority(host))
31
+ return 'non-local Host header';
32
+ const origin = firstHeader(request.headers.origin);
33
+ if (origin && !isLocalOrigin(origin))
34
+ return 'non-local Origin header';
35
+ return null;
36
+ };
37
+ export const assertLocalRequest = (request) => {
38
+ const reason = getLocalRequestRejection(request);
39
+ if (reason)
40
+ throw new ForbiddenError(`Local runtime rejected ${reason}`);
41
+ };
42
+ //# sourceMappingURL=local-request-guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-request-guard.js","sourceRoot":"","sources":["../../../src/server/local-request-guard.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,CAAA;AAClE,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAA;AAE5D,MAAM,WAAW,GAAG,CAAC,KAAoC,EAAE,EAAE,CAC3D,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;AAEzC,MAAM,iBAAiB,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;AAE9F,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAA;AAE9F,MAAM,sBAAsB,GAAG,CAAC,OAAe,EAAE,EAAE,CACjD,iBAAiB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;AAEpD,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAAE,EAAE,CAC/C,sBAAsB,CAAC,GAAG,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAA;AAE7D,MAAM,gBAAgB,GAAG,CAAC,SAAiB,EAAE,EAAE;IAC7C,IAAI,CAAC;QACH,OAAO,eAAe,CAAC,IAAI,GAAG,CAAC,UAAU,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAA;IACjE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,EAAE;IACvC,IAAI,CAAC;QACH,OAAO,eAAe,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAA;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,OAAwB,EAAiB,EAAE;IAClF,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,CAAA;IAClD,IAAI,aAAa,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC;QAAE,OAAO,0BAA0B,CAAA;IAE5F,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9C,IAAI,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;QAAE,OAAO,uBAAuB,CAAA;IAEnE,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IAClD,IAAI,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;QAAE,OAAO,yBAAyB,CAAA;IAEtE,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAwB,EAAE,EAAE;IAC7D,MAAM,MAAM,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAA;IAChD,IAAI,MAAM;QAAE,MAAM,IAAI,cAAc,CAAC,0BAA0B,MAAM,EAAE,CAAC,CAAA;AAC1E,CAAC,CAAA"}
@@ -6,7 +6,7 @@ export interface MessageLogRecord {
6
6
  status?: string;
7
7
  text: string;
8
8
  toAgentId?: string;
9
- type: 'user_input' | 'send' | 'report' | 'system_env_sync' | 'system_recovery_summary';
9
+ type: 'user_input' | 'send' | 'report' | 'status' | 'system_env_sync' | 'system_recovery_summary';
10
10
  workerId: string;
11
11
  workspaceId: string;
12
12
  }
@@ -32,7 +32,12 @@ interface ReportRecoveryMessage extends RecoveryMessageBase {
32
32
  status?: string;
33
33
  type: 'report';
34
34
  }
35
- export type RecoveryMessage = UserInputRecoveryMessage | SendRecoveryMessage | ReportRecoveryMessage;
35
+ interface StatusRecoveryMessage extends RecoveryMessageBase {
36
+ artifacts: string[];
37
+ from: string;
38
+ type: 'status';
39
+ }
40
+ export type RecoveryMessage = UserInputRecoveryMessage | SendRecoveryMessage | ReportRecoveryMessage | StatusRecoveryMessage;
36
41
  interface MessageKindRow {
37
42
  type: 'send' | 'report';
38
43
  worker_id: string;
@@ -74,7 +74,7 @@ export const createMessageLogStore = (db) => {
74
74
  }
75
75
  return recoveryMessage;
76
76
  }
77
- if (message.type !== 'report') {
77
+ if (message.type !== 'report' && message.type !== 'status') {
78
78
  return null;
79
79
  }
80
80
  const recoveryMessage = {
@@ -82,10 +82,12 @@ export const createMessageLogStore = (db) => {
82
82
  createdAt: message.createdAt,
83
83
  from: message.fromAgentId ?? message.workerId,
84
84
  text: message.text,
85
- type: 'report',
85
+ type: message.type,
86
86
  };
87
- if (message.status)
87
+ if (message.type === 'report' && message.status) {
88
+ ;
88
89
  recoveryMessage.status = message.status;
90
+ }
89
91
  return recoveryMessage;
90
92
  })
91
93
  .filter((message) => message !== null);
@@ -117,7 +119,7 @@ export const createMessageLogStore = (db) => {
117
119
  }
118
120
  return message;
119
121
  }
120
- if (typedRow.type !== 'report') {
122
+ if (typedRow.type !== 'report' && typedRow.type !== 'status') {
121
123
  return null;
122
124
  }
123
125
  const recoveryMessage = {
@@ -125,10 +127,12 @@ export const createMessageLogStore = (db) => {
125
127
  createdAt: typedRow.created_at,
126
128
  from: typedRow.from_agent_id ?? typedRow.worker_id,
127
129
  text: typedRow.text ?? '',
128
- type: 'report',
130
+ type: typedRow.type,
129
131
  };
130
- if (typedRow.status)
132
+ if (typedRow.type === 'report' && typedRow.status) {
133
+ ;
131
134
  recoveryMessage.status = typedRow.status;
135
+ }
132
136
  return recoveryMessage;
133
137
  })
134
138
  .filter((message) => message !== null);
@@ -1 +1 @@
1
- {"version":3,"file":"message-log-store.js","sourceRoot":"","sources":["../../../src/server/message-log-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message-log-store.js","sourceRoot":"","sources":["../../../src/server/message-log-store.ts"],"names":[],"mappings":"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"}
@@ -6,17 +6,19 @@ interface ConfigurePort {
6
6
  }
7
7
  /**
8
8
  * Resolve the orchestrator's launch config in priority order:
9
- * 1. Explicit workspace-create command preset chosen by the user.
10
- * 2. `HIVE_ORCHESTRATOR_COMMAND` env var (with optional `HIVE_ORCHESTRATOR_ARGS_JSON`).
9
+ * 1. Explicit startup command pasted by the user. It runs through their shell
10
+ * so aliases/functions like `ccs --resume ...` can expand.
11
+ * 2. Explicit workspace-create command preset chosen by the user.
12
+ * 3. `HIVE_ORCHESTRATOR_COMMAND` env var (with optional `HIVE_ORCHESTRATOR_ARGS_JSON`).
11
13
  * Tests use this to inject a dummy CLI like `bash -c 'echo queen up; sleep 60'`
12
14
  * so autostart can run end-to-end without depending on a real `claude` binary.
13
- * 3. The seeded `orchestrator` role template (defaults to `claude`).
15
+ * 4. The seeded `orchestrator` role template (defaults to `claude`).
14
16
  * Returns `undefined` when neither source has a usable command.
15
17
  */
16
- export declare const resolveOrchestratorLaunchConfig: (settings: SettingsStore, commandPresetId?: string | null) => AgentLaunchConfigInput | undefined;
18
+ export declare const resolveOrchestratorLaunchConfig: (settings: SettingsStore, commandPresetId?: string | null, startupCommand?: string | null) => AgentLaunchConfigInput | undefined;
17
19
  /**
18
20
  * Idempotent: only seeds when no existing launch config is present for the
19
21
  * orchestrator (prevents stomping on user-customized configs across restarts).
20
22
  */
21
- export declare const seedOrchestratorLaunchConfig: (port: ConfigurePort, settings: SettingsStore, workspaceId: string, commandPresetId?: string | null) => void;
23
+ export declare const seedOrchestratorLaunchConfig: (port: ConfigurePort, settings: SettingsStore, workspaceId: string, commandPresetId?: string | null, startupCommand?: string | null) => void;
22
24
  export {};
@@ -1,3 +1,4 @@
1
+ import { createStartupCommandLaunch, getStartupCommandExecutable, } from './startup-command-parser.js';
1
2
  import { getOrchestratorId } from './workspace-store-support.js';
2
3
  const parseArgsEnv = (raw) => {
3
4
  if (raw === undefined)
@@ -25,16 +26,37 @@ const resolveCommandPresetLaunchConfig = (settings, commandPresetId) => {
25
26
  commandPresetId: preset.id,
26
27
  };
27
28
  };
29
+ const findPresetForStartupCommand = (settings, startupCommand, commandPresetId) => {
30
+ if (commandPresetId)
31
+ return settings.getCommandPreset(commandPresetId);
32
+ const executable = getStartupCommandExecutable(startupCommand);
33
+ return executable ? settings.getCommandPreset(executable) : undefined;
34
+ };
28
35
  /**
29
36
  * Resolve the orchestrator's launch config in priority order:
30
- * 1. Explicit workspace-create command preset chosen by the user.
31
- * 2. `HIVE_ORCHESTRATOR_COMMAND` env var (with optional `HIVE_ORCHESTRATOR_ARGS_JSON`).
37
+ * 1. Explicit startup command pasted by the user. It runs through their shell
38
+ * so aliases/functions like `ccs --resume ...` can expand.
39
+ * 2. Explicit workspace-create command preset chosen by the user.
40
+ * 3. `HIVE_ORCHESTRATOR_COMMAND` env var (with optional `HIVE_ORCHESTRATOR_ARGS_JSON`).
32
41
  * Tests use this to inject a dummy CLI like `bash -c 'echo queen up; sleep 60'`
33
42
  * so autostart can run end-to-end without depending on a real `claude` binary.
34
- * 3. The seeded `orchestrator` role template (defaults to `claude`).
43
+ * 4. The seeded `orchestrator` role template (defaults to `claude`).
35
44
  * Returns `undefined` when neither source has a usable command.
36
45
  */
37
- export const resolveOrchestratorLaunchConfig = (settings, commandPresetId = null) => {
46
+ export const resolveOrchestratorLaunchConfig = (settings, commandPresetId = null, startupCommand = null) => {
47
+ const trimmedStartupCommand = startupCommand?.trim();
48
+ if (trimmedStartupCommand) {
49
+ const parsed = createStartupCommandLaunch(trimmedStartupCommand);
50
+ const preset = findPresetForStartupCommand(settings, trimmedStartupCommand, commandPresetId);
51
+ return {
52
+ command: parsed.command,
53
+ args: parsed.args,
54
+ commandPresetId: null,
55
+ interactiveCommand: preset?.command ?? getStartupCommandExecutable(trimmedStartupCommand),
56
+ presetAugmentationDisabled: true,
57
+ sessionIdCapture: preset?.sessionIdCapture ?? null,
58
+ };
59
+ }
38
60
  if (commandPresetId) {
39
61
  return resolveCommandPresetLaunchConfig(settings, commandPresetId);
40
62
  }
@@ -63,11 +85,11 @@ export const resolveOrchestratorLaunchConfig = (settings, commandPresetId = null
63
85
  * Idempotent: only seeds when no existing launch config is present for the
64
86
  * orchestrator (prevents stomping on user-customized configs across restarts).
65
87
  */
66
- export const seedOrchestratorLaunchConfig = (port, settings, workspaceId, commandPresetId = null) => {
88
+ export const seedOrchestratorLaunchConfig = (port, settings, workspaceId, commandPresetId = null, startupCommand = null) => {
67
89
  const orchestratorId = getOrchestratorId(workspaceId);
68
90
  if (port.peekAgentLaunchConfig(workspaceId, orchestratorId))
69
91
  return;
70
- const config = resolveOrchestratorLaunchConfig(settings, commandPresetId);
92
+ const config = resolveOrchestratorLaunchConfig(settings, commandPresetId, startupCommand);
71
93
  if (!config)
72
94
  return;
73
95
  port.configureAgentLaunch(workspaceId, orchestratorId, config);
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator-launch.js","sourceRoot":"","sources":["../../../src/server/orchestrator-launch.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAchE,MAAM,YAAY,GAAG,CAAC,GAAuB,EAAwB,EAAE;IACrE,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IACvC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;IAC1B,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAA;IACvB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAY,CAAA;QAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC;YAAE,OAAO,MAAM,CAAA;IAC9F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IAC7B,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,MAAM,gCAAgC,GAAG,CACvC,QAAuB,EACvB,eAAuB,EACa,EAAE;IACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAA;IACzD,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAA;IAC7B,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,eAAe,EAAE,MAAM,CAAC,EAAE;KAC3B,CAAA;AACH,CAAC,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAC7C,QAAuB,EACvB,kBAAiC,IAAI,EACD,EAAE;IACtC,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,gCAAgC,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAA;IACpE,CAAC;IACD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAA;IACxD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,UAAU;YACnB,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,IAAI,EAAE;YACjE,eAAe,EAAE,IAAI;SACtB,CAAA;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,iBAAiB,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,cAAc,CAAC,CAAA;IAChG,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAA;IAC/B,4EAA4E;IAC5E,2EAA2E;IAC3E,2EAA2E;IAC3E,sEAAsE;IACtE,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,cAAc;QAChC,IAAI,EAAE,QAAQ,CAAC,WAAW;QAC1B,eAAe,EAAE,IAAI;KACtB,CAAA;AACH,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC1C,IAAmB,EACnB,QAAuB,EACvB,WAAmB,EACnB,kBAAiC,IAAI,EAC/B,EAAE;IACR,MAAM,cAAc,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAA;IACrD,IAAI,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,cAAc,CAAC;QAAE,OAAM;IACnE,MAAM,MAAM,GAAG,+BAA+B,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAA;IACzE,IAAI,CAAC,MAAM;QAAE,OAAM;IACnB,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,CAAA;AAChE,CAAC,CAAA"}
1
+ {"version":3,"file":"orchestrator-launch.js","sourceRoot":"","sources":["../../../src/server/orchestrator-launch.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { AgentManager } from './agent-manager.js';
2
2
  export declare const toBracketedPasteSubmission: (text: string) => string;
3
3
  export declare const isInteractiveAgentCommand: (command: string) => boolean;
4
- export declare const hasInteractivePromptReady: (output: string) => boolean;
4
+ export declare const hasInteractivePromptReady: (output: string, command?: string) => boolean;
5
5
  export declare const hasBracketedPasteAcknowledgement: (output: string, baselineLength: number) => boolean;
6
6
  export declare const createPostStartInputWriter: (agentManager: AgentManager, command: string) => ((runId: string, text: string) => void);
@@ -8,12 +8,21 @@ const PASTE_CHARS_PER_DELAY_MS = 4;
8
8
  const PASTE_ACK_CHECK_INTERVAL_MS = 50;
9
9
  const PASTE_ACK_SETTLE_DELAY_MS = 100;
10
10
  const PASTE_ACK_TIMEOUT_MS = 3000;
11
+ const COMMANDS_WITH_BRACKETED_PASTE = new Set(['claude', 'codex', 'opencode']);
11
12
  export const toBracketedPasteSubmission = (text) => `\u001b[200~${text}\u001b[201~`;
12
13
  const getSubmitAfterPasteDelayMs = (text) => Math.min(MAX_SUBMIT_AFTER_PASTE_DELAY_MS, Math.max(MIN_SUBMIT_AFTER_PASTE_DELAY_MS, Math.ceil(text.length / PASTE_CHARS_PER_DELAY_MS)));
13
14
  export const isInteractiveAgentCommand = (command) => INTERACTIVE_COMMANDS.has(basename(command).toLowerCase());
14
- export const hasInteractivePromptReady = (output) => /(?:^|[\r\n])\s*[❯›]\s*/u.test(output);
15
+ const getCommandName = (command) => basename(command).toLowerCase();
16
+ const hasGeminiPromptReady = (output) => /\bType your message\b/u.test(output);
17
+ export const hasInteractivePromptReady = (output, command = '') => {
18
+ const commandName = getCommandName(command);
19
+ return (/(?:^|[\r\n])\s*[❯›]\s*/u.test(output) ||
20
+ (commandName === 'gemini' && hasGeminiPromptReady(output)));
21
+ };
15
22
  export const hasBracketedPasteAcknowledgement = (output, baselineLength) => /\[Pasted text #\d+/u.test(output.slice(baselineLength));
16
- const isClaudeCommand = (command) => basename(command).toLowerCase() === 'claude';
23
+ const isClaudeCommand = (command) => getCommandName(command) === 'claude';
24
+ const usesBracketedPaste = (command) => COMMANDS_WITH_BRACKETED_PASTE.has(getCommandName(command));
25
+ const canTimeoutBeforePromptReady = (command) => getCommandName(command) !== 'gemini';
17
26
  const isWritableRunStatus = (status) => status === undefined || status === 'starting' || status === 'running';
18
27
  const writeIfRunWritable = (agentManager, runId, text) => {
19
28
  let run;
@@ -91,10 +100,12 @@ export const createPostStartInputWriter = (agentManager, command) => {
91
100
  }
92
101
  if (output === null)
93
102
  return;
94
- if (hasInteractivePromptReady(output) || Date.now() - startedAt >= READY_TIMEOUT_MS) {
103
+ if (hasInteractivePromptReady(output, command) ||
104
+ (canTimeoutBeforePromptReady(command) && Date.now() - startedAt >= READY_TIMEOUT_MS)) {
95
105
  const baselineLength = output.length;
106
+ const input = usesBracketedPaste(command) ? toBracketedPasteSubmission(text) : text;
96
107
  try {
97
- if (!writeIfRunWritable(agentManager, runId, toBracketedPasteSubmission(text)))
108
+ if (!writeIfRunWritable(agentManager, runId, input))
98
109
  return;
99
110
  }
100
111
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"post-start-input-writer.js","sourceRoot":"","sources":["../../../src/server/post-start-input-writer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"post-start-input-writer.js","sourceRoot":"","sources":["../../../src/server/post-start-input-writer.ts"],"names":[],"mappings":"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"}
@@ -13,16 +13,18 @@ const formatTaskEvents = (messages, agent) => {
13
13
  if (agent.role === 'orchestrator') {
14
14
  if (message.type === 'send')
15
15
  return message.from === agent.id;
16
- return message.type === 'report';
16
+ return message.type === 'report' || message.type === 'status';
17
17
  }
18
18
  if (message.type === 'send')
19
19
  return message.to === agent.id || message.from === agent.id;
20
- return message.type === 'report' && message.from === agent.id;
20
+ return (message.type === 'report' || message.type === 'status') && message.from === agent.id;
21
21
  });
22
22
  return taskEvents.length > 0
23
23
  ? taskEvents.slice(-8).map((message) => {
24
24
  if (message.type === 'send')
25
25
  return `- send -> ${message.to}: ${message.text}`;
26
+ if (message.type === 'status')
27
+ return `- status <- ${message.from}: ${message.text}`;
26
28
  const status = message.status ? ` [${message.status}]` : '';
27
29
  return `- report <- ${message.from}${status}: ${message.text}`;
28
30
  })
@@ -1 +1 @@
1
- {"version":3,"file":"recovery-summary.js","sourceRoot":"","sources":["../../../src/server/recovery-summary.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recovery-summary.js","sourceRoot":"","sources":["../../../src/server/recovery-summary.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  import type { IncomingMessage, ServerResponse } from 'node:http';
2
2
  import type { RouteDefinition } from './route-types.js';
3
3
  export declare const sendJson: (response: ServerResponse, statusCode: number, body: unknown) => void;
4
- export declare const readJsonBody: <T>(request: IncomingMessage) => Promise<T>;
4
+ export declare const readJsonBody: <T>(request: IncomingMessage, options?: {
5
+ limitBytes?: number;
6
+ }) => Promise<T>;
5
7
  export declare const getRequiredParam: (response: ServerResponse, params: Record<string, string>, key: string, error: string) => string | null;
6
8
  export declare const route: (method: string, path: string, handler: RouteDefinition["handler"]) => RouteDefinition;
7
9
  export declare const matchPath: (pattern: string, pathname: string) => Record<string, string> | null;