orquesta-agent 0.2.241 → 0.2.245

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.
@@ -1 +1 @@
1
- {"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,OAAO,KAAK,EAIV,UAAU,EACX,MAAM,uBAAuB,CAAA;AAY9B;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,UAAU,CAOzE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAwC/C;AAicD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAU1F;AAID,wBAAsB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiDtF"}
1
+ {"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,OAAO,KAAK,EAIV,UAAU,EACX,MAAM,uBAAuB,CAAA;AAY9B;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,UAAU,CAOzE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAwC/C;AAocD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAU1F;AAID,wBAAsB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiDtF"}
package/dist/hook.js CHANGED
@@ -8,6 +8,7 @@
8
8
  * Always exits 0 to never block Claude.
9
9
  */
10
10
  import * as fs from 'fs';
11
+ import { redactDeep } from './redact.js';
11
12
  import * as path from 'path';
12
13
  import * as os from 'os';
13
14
  // --- Client normalization ---
@@ -173,7 +174,10 @@ async function apiCall(url, method, token, body) {
173
174
  const res = await fetch(url, {
174
175
  method,
175
176
  headers,
176
- body: body ? JSON.stringify(body) : undefined,
177
+ // The hook mirrors tool calls with their parameters — a curl carrying an
178
+ // Authorization header, a CLI invoked with --token — and those were stored
179
+ // verbatim. Redact at the one place every hook payload passes through.
180
+ body: body ? JSON.stringify(redactDeep(body)) : undefined,
177
181
  });
178
182
  let data = null;
179
183
  try {
package/dist/hook.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hook.js","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook.js","sourceRoot":"","sources":["../src/hook.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -142,6 +142,104 @@ async function refreshInjectedCredentials() {
142
142
  // Non-fatal: keep the previously injected credentials.
143
143
  }
144
144
  }
145
+ /**
146
+ * Commit assisted work and hand the server the raw facts: commit sha, branch,
147
+ * and `git diff --numstat` text.
148
+ *
149
+ * Shared by the TWO ways an assisted item gets worked — a dispatched prompt
150
+ * (the agent drove the CLI) and a claimed interactive session (a person sat at
151
+ * the terminal). Both finish identically: the server evaluates the gate and
152
+ * parks the item at `needs_review`. The split is the point — a gate computed on
153
+ * the machine being gated protects nobody, and this machine is the customer's.
154
+ *
155
+ * Best-effort throughout: a failure here must not fail work that already
156
+ * happened. The reviewer sees the item stuck in_progress and can nudge the run.
157
+ */
158
+ async function postAssistedReport(opts) {
159
+ try {
160
+ const commit = await gitCommitAndPush(opts.execDir, opts.commitMessage);
161
+ // With an explicit base we always diff, even when this call committed
162
+ // nothing — a person working interactively may well have committed by
163
+ // hand, and reporting an empty diff for real work would send the reviewer
164
+ // an item that looks like a no-op.
165
+ const base = opts.diffBase && opts.diffBase !== opts.branch
166
+ ? opts.diffBase
167
+ : (commit.sha ? 'HEAD~1' : null);
168
+ const numstat = base ? gitNumstatSince(opts.execDir, base) : '';
169
+ let sha = commit.sha;
170
+ if (!sha && base) {
171
+ try {
172
+ sha = execSync('git rev-parse HEAD', { cwd: opts.execDir, stdio: 'pipe' }).toString().trim() || null;
173
+ }
174
+ catch { /* leave null — the server treats a missing sha as "no commit" */ }
175
+ }
176
+ const apiUrl = process.env.ORQUESTA_API_URL || 'https://getorquesta.com';
177
+ const res = await fetch(`${apiUrl}/api/agent/assisted-report`, {
178
+ method: 'POST',
179
+ headers: { 'Content-Type': 'application/json' },
180
+ body: JSON.stringify({
181
+ token: opts.token,
182
+ promptId: opts.promptId,
183
+ commitSha: sha,
184
+ branch: opts.branch,
185
+ numstat,
186
+ }),
187
+ });
188
+ if (!res.ok) {
189
+ logger.warn(`[assisted] report rejected (${res.status}) for item ${opts.itemId}`);
190
+ return;
191
+ }
192
+ logger.success(`[assisted] reported ${sha ? sha.slice(0, 8) : 'no commit'} on ${opts.branch}`);
193
+ }
194
+ catch (err) {
195
+ logger.warn(`[assisted] report failed: ${err}`);
196
+ }
197
+ }
198
+ /**
199
+ * Prepare a claimed assisted item for an interactive session: put the checkout
200
+ * on the run's branch and remember where it started.
201
+ *
202
+ * Returns the envelope the executor carries for the life of the session, or
203
+ * undefined when this session is not part of an assisted run.
204
+ */
205
+ function prepareAssistedSession(assisted, sessDir) {
206
+ if (!assisted?.branch)
207
+ return undefined;
208
+ if (!fs.existsSync(path.join(sessDir, '.git'))) {
209
+ logger.warn(`[assisted] ${sessDir} is not a git checkout — session runs without branch isolation`);
210
+ return assisted;
211
+ }
212
+ try {
213
+ execSync(`git checkout ${assisted.branch} 2>/dev/null || git checkout -b ${assisted.branch}`, { cwd: sessDir, stdio: 'pipe' });
214
+ logger.info(`[assisted] Checked out branch: ${assisted.branch}`);
215
+ }
216
+ catch (err) {
217
+ logger.warn(`[assisted] Branch checkout failed: ${err}`);
218
+ }
219
+ let baseSha;
220
+ try {
221
+ baseSha = execSync('git rev-parse HEAD', { cwd: sessDir, stdio: 'pipe' }).toString().trim() || undefined;
222
+ }
223
+ catch { /* a branch with no commits yet — HEAD~1 fallback covers it */ }
224
+ return { ...assisted, baseSha };
225
+ }
226
+ /** Report a finished interactive session that was working a claimed item. */
227
+ async function reportAssistedSession(info, token) {
228
+ const assisted = info.assisted;
229
+ if (!assisted)
230
+ return;
231
+ if (!fs.existsSync(path.join(info.workingDirectory, '.git')))
232
+ return;
233
+ await postAssistedReport({
234
+ token,
235
+ promptId: assisted.promptId,
236
+ itemId: assisted.itemId,
237
+ execDir: info.workingDirectory,
238
+ branch: assisted.branch,
239
+ diffBase: assisted.baseSha || null,
240
+ commitMessage: `assisted: interactive session for item ${assisted.itemId.slice(0, 8)}`,
241
+ });
242
+ }
145
243
  async function connect(options) {
146
244
  logger.banner(VERSION);
147
245
  // Single-instance guard for DIRECT runs (e.g. `npx -y orquesta-agent` with no
@@ -545,7 +643,9 @@ async function connect(options) {
545
643
  executePromptSequentialOSS(next);
546
644
  }
547
645
  }
548
- setOnSessionEnded(() => {
646
+ setOnSessionEnded((info) => {
647
+ if (info?.assisted && token)
648
+ void reportAssistedSession(info, token);
549
649
  if (promptQueue.length > 0) {
550
650
  logger.info(`Session ended — draining ${promptQueue.length} queued prompt(s)`);
551
651
  drainQueueOSS();
@@ -601,6 +701,8 @@ async function connect(options) {
601
701
  else
602
702
  logger.warn(`session:start requested dir "${rawDir}" does not exist — falling back to ${workingDirectory}`);
603
703
  }
704
+ // A claimed assisted item pins the session to the run's branch.
705
+ const assisted = prepareAssistedSession(payload.assisted, sessDir);
604
706
  // Pick up credentials created/rotated since startup before spawning.
605
707
  void refreshInjectedCredentials().finally(() => {
606
708
  startSession({
@@ -612,6 +714,7 @@ async function connect(options) {
612
714
  subAgentId: payload.subAgentId,
613
715
  subAgentName: payload.subAgentName,
614
716
  resume: payload.resume,
717
+ assisted,
615
718
  });
616
719
  });
617
720
  },
@@ -692,47 +795,20 @@ async function connect(options) {
692
795
  return promptQueue.some(q => q.promptId === promptId) ||
693
796
  [...runningExecutions.values()].some(e => e.promptId === promptId);
694
797
  }
695
- /**
696
- * Commit the assisted item's work and hand the server the raw facts.
697
- *
698
- * Facts only: the commit sha, the branch, and `git diff --numstat` text.
699
- * The server evaluates the gate. That split is the point — a gate computed
700
- * on the machine being gated protects nobody, and this machine belongs to
701
- * the customer.
702
- *
703
- * Best-effort throughout: a failure here must not fail the prompt, which
704
- * has already produced real work. The reviewer sees the item stuck
705
- * in_progress and can nudge the run instead.
706
- */
798
+ /** Report a finished dispatched prompt. See `postAssistedReport`. */
707
799
  async function reportAssistedResult(payload, execDir, baseBranch) {
708
800
  const assisted = payload.assisted;
709
- try {
710
- const commit = await gitCommitAndPush(execDir, `assisted: ${payload.content.split('\n')[0].slice(0, 120)}`);
711
- // Diff against the branch we started from when we know it; otherwise
712
- // the last commit only, which is what the item just produced anyway.
713
- const base = baseBranch && baseBranch !== assisted.branch ? baseBranch : 'HEAD~1';
714
- const numstat = commit.sha ? gitNumstatSince(execDir, base) : '';
715
- const apiUrl = process.env.ORQUESTA_API_URL || 'https://getorquesta.com';
716
- const res = await fetch(`${apiUrl}/api/agent/assisted-report`, {
717
- method: 'POST',
718
- headers: { 'Content-Type': 'application/json' },
719
- body: JSON.stringify({
720
- token,
721
- promptId: payload.promptId,
722
- commitSha: commit.sha,
723
- branch: assisted.branch,
724
- numstat,
725
- }),
726
- });
727
- if (!res.ok) {
728
- logger.warn(`[assisted] report rejected (${res.status}) for item ${assisted.itemId}`);
729
- return;
730
- }
731
- logger.success(`[assisted] reported ${commit.sha ? commit.sha.slice(0, 8) : 'no commit'} on ${assisted.branch}`);
732
- }
733
- catch (err) {
734
- logger.warn(`[assisted] report failed: ${err}`);
735
- }
801
+ if (!token)
802
+ return;
803
+ await postAssistedReport({
804
+ token,
805
+ promptId: payload.promptId,
806
+ itemId: assisted.itemId,
807
+ execDir,
808
+ branch: assisted.branch,
809
+ diffBase: baseBranch,
810
+ commitMessage: `assisted: ${payload.content.split('\n')[0].slice(0, 120)}`,
811
+ });
736
812
  }
737
813
  async function executePrompt(payload) {
738
814
  const execId = payload.id;
@@ -854,8 +930,12 @@ async function connect(options) {
854
930
  executePrompt(next); // Fire and forget — runs concurrently
855
931
  }
856
932
  }
857
- // When an interactive session ends, drain any prompts that were queued during it
858
- setOnSessionEnded(() => {
933
+ // When an interactive session ends, report it if it was a claimed assisted
934
+ // item (the person's diff goes to review like any agent-produced one), then
935
+ // drain any prompts that were queued during it.
936
+ setOnSessionEnded((info) => {
937
+ if (info?.assisted && token)
938
+ void reportAssistedSession(info, token);
859
939
  if (promptQueue.length > 0) {
860
940
  logger.info(`Session ended — draining ${promptQueue.length} queued prompt(s)`);
861
941
  drainQueue();
@@ -1061,6 +1141,11 @@ async function connect(options) {
1061
1141
  logger.warn(`[workstream:${subCfg.name}] Branch checkout failed: ${err}`);
1062
1142
  }
1063
1143
  }
1144
+ // A claimed assisted item pins the session to the run's branch. It runs
1145
+ // AFTER the workstream checkout above so an assisted claim wins — the
1146
+ // two are never combined in the UI, and the run's isolation is the
1147
+ // whole reason the branch exists.
1148
+ const assisted = prepareAssistedSession(payload.assisted, sessDir);
1064
1149
  // Pick up credentials created/rotated since startup before spawning.
1065
1150
  void refreshInjectedCredentials().finally(() => {
1066
1151
  startSession({
@@ -1073,6 +1158,7 @@ async function connect(options) {
1073
1158
  subAgentName: payload.subAgentName || subCfg?.name,
1074
1159
  resume: payload.resume,
1075
1160
  resumeSessionId: payload.resumeSessionId,
1161
+ assisted,
1076
1162
  });
1077
1163
  });
1078
1164
  },
@@ -1533,7 +1619,7 @@ program
1533
1619
  .enablePositionalOptions();
1534
1620
  // Default command: connect
1535
1621
  program
1536
- .option('-t, --token <token>', 'Connection token from Orquesta dashboard')
1622
+ .option('-t, --token <token>', 'Connection token from Orquesta dashboard. Falls back to $ORQUESTA_AGENT_TOKEN, which is how the systemd unit supplies it (argv is world-readable via ps).')
1537
1623
  .option('-n, --name <name>', 'Agent display name (e.g., "dev-laptop", "prod-server"). Defaults to hostname.')
1538
1624
  .option('-v, --verbose', 'Enable verbose logging')
1539
1625
  .option('-d, --working-dir <dir>', 'Working directory for command execution')
@@ -1550,6 +1636,11 @@ program
1550
1636
  .option('-D, --daemon', 'Run in daemon mode with automatic restart on exit')
1551
1637
  .option('--max-restarts <number>', 'Maximum restart attempts in daemon mode (0=unlimited)', '0')
1552
1638
  .action((options) => {
1639
+ // The service unit passes no --token; it exports ORQUESTA_AGENT_TOKEN so the
1640
+ // token never appears in `ps` output.
1641
+ if (!options.token && process.env.ORQUESTA_AGENT_TOKEN) {
1642
+ options.token = process.env.ORQUESTA_AGENT_TOKEN;
1643
+ }
1553
1644
  if (!options.token) {
1554
1645
  program.help();
1555
1646
  return;
@@ -2014,17 +2105,32 @@ serviceCmd
2014
2105
  logger.success(`Found Orquesta CLI at: ${cliPath}`);
2015
2106
  }
2016
2107
  const pathEnv = Array.from(pathDirs).join(':');
2108
+ // The token rides in an EnvironmentFile, not in ExecStart: anything in
2109
+ // ExecStart is visible to every user on the box through `ps` and through
2110
+ // `systemctl show`. 600 root-owned, so only root and the unit can read it.
2111
+ const envFilePath = `/etc/${serviceName}.env`;
2017
2112
  const serviceContent = `[Unit]
2018
2113
  Description=Orquesta Agent
2019
2114
  After=network.target
2020
2115
 
2116
+ # A crash-looping agent used to restart every 10s forever. These two cap the
2117
+ # loop: five failures inside 5 minutes stop the unit instead of hammering the
2118
+ # API (and filling agent_error_logs) until someone notices.
2119
+ StartLimitIntervalSec=300
2120
+ StartLimitBurst=5
2121
+
2021
2122
  [Service]
2022
2123
  Type=simple
2023
2124
  User=${options.user}
2024
2125
  WorkingDirectory=${options.workingDir}
2025
- ExecStart=${agentPath} --token ${options.token} --daemon
2126
+ EnvironmentFile=${envFilePath}
2127
+ ExecStart=${agentPath} --daemon
2026
2128
  Restart=always
2027
2129
  RestartSec=10
2130
+ # Back off 10s, 20s, 40s ... up to 5 min, so a persistent outage is retried
2131
+ # patiently rather than 360 times an hour.
2132
+ RestartSteps=5
2133
+ RestartMaxDelaySec=300
2028
2134
  Environment=PATH=${pathEnv}
2029
2135
  Environment=HOME=${userHome}
2030
2136
  Environment=NODE_ENV=production
@@ -2033,6 +2139,10 @@ Environment=NODE_ENV=production
2033
2139
  WantedBy=multi-user.target
2034
2140
  `;
2035
2141
  try {
2142
+ // Write the token file first — the unit refuses to start without it.
2143
+ fs.writeFileSync(envFilePath, `ORQUESTA_AGENT_TOKEN=${options.token}\n`, { mode: 0o600 });
2144
+ fs.chmodSync(envFilePath, 0o600);
2145
+ logger.success(`Token file created: ${envFilePath} (0600)`);
2036
2146
  // Write service file
2037
2147
  fs.writeFileSync(servicePath, serviceContent);
2038
2148
  logger.success(`Service file created: ${servicePath}`);