@patze/code-cli 0.10.6 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/CHANGELOG.md +86 -0
  2. package/VERSION +1 -1
  3. package/bin/patze.mjs +0 -0
  4. package/dist/backend/agent-trace.d.ts +15 -0
  5. package/dist/backend/agent-trace.d.ts.map +1 -0
  6. package/dist/backend/agent-trace.js +53 -0
  7. package/dist/backend/agent-trace.js.map +1 -0
  8. package/dist/backend/execute-client.d.ts +51 -0
  9. package/dist/backend/execute-client.d.ts.map +1 -0
  10. package/dist/backend/execute-client.js +140 -0
  11. package/dist/backend/execute-client.js.map +1 -0
  12. package/dist/backend/preview-payload.d.ts +15 -3
  13. package/dist/backend/preview-payload.d.ts.map +1 -1
  14. package/dist/backend/preview-payload.js +38 -10
  15. package/dist/backend/preview-payload.js.map +1 -1
  16. package/dist/backend/run-record.d.ts +16 -0
  17. package/dist/backend/run-record.d.ts.map +1 -0
  18. package/dist/backend/run-record.js +43 -0
  19. package/dist/backend/run-record.js.map +1 -0
  20. package/dist/backend/run-stream-client.d.ts +36 -0
  21. package/dist/backend/run-stream-client.d.ts.map +1 -0
  22. package/dist/backend/run-stream-client.js +109 -0
  23. package/dist/backend/run-stream-client.js.map +1 -0
  24. package/dist/backend/runs-client.d.ts +35 -0
  25. package/dist/backend/runs-client.d.ts.map +1 -0
  26. package/dist/backend/runs-client.js +87 -0
  27. package/dist/backend/runs-client.js.map +1 -0
  28. package/dist/backend/session-client.d.ts +17 -0
  29. package/dist/backend/session-client.d.ts.map +1 -0
  30. package/dist/backend/session-client.js +54 -0
  31. package/dist/backend/session-client.js.map +1 -0
  32. package/dist/backend/sse-parse.d.ts +14 -0
  33. package/dist/backend/sse-parse.d.ts.map +1 -0
  34. package/dist/backend/sse-parse.js +63 -0
  35. package/dist/backend/sse-parse.js.map +1 -0
  36. package/dist/cli/commands/agent.d.ts +8 -0
  37. package/dist/cli/commands/agent.d.ts.map +1 -0
  38. package/dist/cli/commands/agent.js +72 -0
  39. package/dist/cli/commands/agent.js.map +1 -0
  40. package/dist/cli/commands/plan.d.ts +3 -0
  41. package/dist/cli/commands/plan.d.ts.map +1 -1
  42. package/dist/cli/commands/plan.js +3 -0
  43. package/dist/cli/commands/plan.js.map +1 -1
  44. package/dist/cli/commands/runs-format.d.ts +4 -0
  45. package/dist/cli/commands/runs-format.d.ts.map +1 -0
  46. package/dist/cli/commands/runs-format.js +50 -0
  47. package/dist/cli/commands/runs-format.js.map +1 -0
  48. package/dist/cli/commands/runs.d.ts.map +1 -1
  49. package/dist/cli/commands/runs.js +78 -8
  50. package/dist/cli/commands/runs.js.map +1 -1
  51. package/dist/cli/commands/status-format.d.ts.map +1 -1
  52. package/dist/cli/commands/status-format.js +11 -0
  53. package/dist/cli/commands/status-format.js.map +1 -1
  54. package/dist/cli/help.d.ts.map +1 -1
  55. package/dist/cli/help.js +7 -3
  56. package/dist/cli/help.js.map +1 -1
  57. package/dist/cli/interactive/agent-execute-turn.d.ts +26 -0
  58. package/dist/cli/interactive/agent-execute-turn.d.ts.map +1 -0
  59. package/dist/cli/interactive/agent-execute-turn.js +127 -0
  60. package/dist/cli/interactive/agent-execute-turn.js.map +1 -0
  61. package/dist/cli/interactive/agent-stream-format.d.ts +24 -0
  62. package/dist/cli/interactive/agent-stream-format.d.ts.map +1 -0
  63. package/dist/cli/interactive/agent-stream-format.js +170 -0
  64. package/dist/cli/interactive/agent-stream-format.js.map +1 -0
  65. package/dist/cli/interactive/agent-turn-context.d.ts +11 -0
  66. package/dist/cli/interactive/agent-turn-context.d.ts.map +1 -0
  67. package/dist/cli/interactive/agent-turn-context.js +57 -0
  68. package/dist/cli/interactive/agent-turn-context.js.map +1 -0
  69. package/dist/cli/interactive/agent-turn-format.d.ts +4 -3
  70. package/dist/cli/interactive/agent-turn-format.d.ts.map +1 -1
  71. package/dist/cli/interactive/agent-turn-format.js +38 -39
  72. package/dist/cli/interactive/agent-turn-format.js.map +1 -1
  73. package/dist/cli/interactive/agent-turn.d.ts +5 -1
  74. package/dist/cli/interactive/agent-turn.d.ts.map +1 -1
  75. package/dist/cli/interactive/agent-turn.js +84 -7
  76. package/dist/cli/interactive/agent-turn.js.map +1 -1
  77. package/dist/cli/interactive/cloud-git.d.ts +13 -0
  78. package/dist/cli/interactive/cloud-git.d.ts.map +1 -0
  79. package/dist/cli/interactive/cloud-git.js +43 -0
  80. package/dist/cli/interactive/cloud-git.js.map +1 -0
  81. package/dist/cli/interactive/header.d.ts +2 -1
  82. package/dist/cli/interactive/header.d.ts.map +1 -1
  83. package/dist/cli/interactive/header.js +9 -1
  84. package/dist/cli/interactive/header.js.map +1 -1
  85. package/dist/cli/interactive/launcher.d.ts +3 -0
  86. package/dist/cli/interactive/launcher.d.ts.map +1 -0
  87. package/dist/cli/interactive/launcher.js +43 -0
  88. package/dist/cli/interactive/launcher.js.map +1 -0
  89. package/dist/cli/interactive/line-editor.d.ts.map +1 -1
  90. package/dist/cli/interactive/line-editor.js +19 -8
  91. package/dist/cli/interactive/line-editor.js.map +1 -1
  92. package/dist/cli/interactive/model-command.d.ts +6 -0
  93. package/dist/cli/interactive/model-command.d.ts.map +1 -0
  94. package/dist/cli/interactive/model-command.js +40 -0
  95. package/dist/cli/interactive/model-command.js.map +1 -0
  96. package/dist/cli/interactive/run-replay.d.ts +17 -0
  97. package/dist/cli/interactive/run-replay.d.ts.map +1 -0
  98. package/dist/cli/interactive/run-replay.js +114 -0
  99. package/dist/cli/interactive/run-replay.js.map +1 -0
  100. package/dist/cli/interactive/session-controller.d.ts +22 -0
  101. package/dist/cli/interactive/session-controller.d.ts.map +1 -0
  102. package/dist/cli/interactive/session-controller.js +103 -0
  103. package/dist/cli/interactive/session-controller.js.map +1 -0
  104. package/dist/cli/interactive/session-store.d.ts +20 -0
  105. package/dist/cli/interactive/session-store.d.ts.map +1 -0
  106. package/dist/cli/interactive/session-store.js +88 -0
  107. package/dist/cli/interactive/session-store.js.map +1 -0
  108. package/dist/cli/interactive/session.d.ts +30 -0
  109. package/dist/cli/interactive/session.d.ts.map +1 -1
  110. package/dist/cli/interactive/session.js +69 -0
  111. package/dist/cli/interactive/session.js.map +1 -1
  112. package/dist/cli/interactive/shell.d.ts.map +1 -1
  113. package/dist/cli/interactive/shell.js +14 -43
  114. package/dist/cli/interactive/shell.js.map +1 -1
  115. package/dist/cli/interactive/slash-dispatch.d.ts +7 -1
  116. package/dist/cli/interactive/slash-dispatch.d.ts.map +1 -1
  117. package/dist/cli/interactive/slash-dispatch.js +116 -8
  118. package/dist/cli/interactive/slash-dispatch.js.map +1 -1
  119. package/dist/cli/interactive/slash-registry.d.ts.map +1 -1
  120. package/dist/cli/interactive/slash-registry.js +6 -0
  121. package/dist/cli/interactive/slash-registry.js.map +1 -1
  122. package/dist/cli/interactive/transcript-format.d.ts +3 -0
  123. package/dist/cli/interactive/transcript-format.d.ts.map +1 -0
  124. package/dist/cli/interactive/transcript-format.js +29 -0
  125. package/dist/cli/interactive/transcript-format.js.map +1 -0
  126. package/dist/cli/main.d.ts.map +1 -1
  127. package/dist/cli/main.js +35 -3
  128. package/dist/cli/main.js.map +1 -1
  129. package/dist/cli/one-shot-args.d.ts +9 -0
  130. package/dist/cli/one-shot-args.d.ts.map +1 -0
  131. package/dist/cli/one-shot-args.js +35 -0
  132. package/dist/cli/one-shot-args.js.map +1 -0
  133. package/dist/cli/read-stdin.d.ts +2 -0
  134. package/dist/cli/read-stdin.d.ts.map +1 -0
  135. package/dist/cli/read-stdin.js +12 -0
  136. package/dist/cli/read-stdin.js.map +1 -0
  137. package/dist/config/config.d.ts +2 -0
  138. package/dist/config/config.d.ts.map +1 -1
  139. package/dist/config/config.js +8 -0
  140. package/dist/config/config.js.map +1 -1
  141. package/dist/config/models.d.ts +11 -0
  142. package/dist/config/models.d.ts.map +1 -0
  143. package/dist/config/models.js +51 -0
  144. package/dist/config/models.js.map +1 -0
  145. package/docs/known-limitations.md +12 -6
  146. package/package.json +4 -1
@@ -0,0 +1,50 @@
1
+ import { pickRunReplyText } from "../../backend/run-record.js";
2
+ function formatTimestamp(value) {
3
+ if (!value) {
4
+ return "—";
5
+ }
6
+ const parsed = Date.parse(value);
7
+ if (Number.isNaN(parsed)) {
8
+ return value.slice(0, 19);
9
+ }
10
+ return new Date(parsed).toISOString().replace("T", " ").slice(0, 19);
11
+ }
12
+ export function formatRunsListLines(runs) {
13
+ if (!runs.length) {
14
+ return ["No runs yet.", "Complete a coding task to populate run history."];
15
+ }
16
+ const lines = [`Runs (${runs.length}):`, ""];
17
+ for (const run of runs) {
18
+ const summary = pickRunReplyText(run).replace(/\s+/g, " ").slice(0, 72);
19
+ lines.push(` ${run.run_id} ${run.phase || run.status} ${formatTimestamp(run.created_at)} ${run.agent_model || "model?"}`);
20
+ if (summary) {
21
+ lines.push(` ${summary}${summary.length >= 72 ? "…" : ""}`);
22
+ }
23
+ }
24
+ lines.push("");
25
+ lines.push("Open details: patze runs open <id> · Replay: /run <id>");
26
+ return lines;
27
+ }
28
+ export function formatRunOpenLines(run) {
29
+ const lines = [
30
+ `Run ${run.run_id}`,
31
+ ` phase: ${run.phase || run.status}`,
32
+ ` model: ${run.agent_model || "unknown"}`,
33
+ ` workflow: ${run.workflow_mode || "—"}`,
34
+ ` created: ${formatTimestamp(run.created_at)}`,
35
+ ];
36
+ const summary = run.outcome_summary.trim() || pickRunReplyText(run);
37
+ if (summary) {
38
+ lines.push(` summary: ${summary.replace(/\s+/g, " ").slice(0, 240)}`);
39
+ }
40
+ if (run.deliverable_paths.length) {
41
+ lines.push(` deliverables: ${run.deliverable_paths.slice(0, 5).join(", ")}`);
42
+ }
43
+ if (run.error_code) {
44
+ lines.push(` error: ${run.error_code}`);
45
+ }
46
+ lines.push("");
47
+ lines.push("Replay trace: patze runs open --stream <id> or /run " + run.run_id);
48
+ return lines;
49
+ }
50
+ //# sourceMappingURL=runs-format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runs-format.js","sourceRoot":"","sources":["../../../src/cli/commands/runs-format.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAE9D,SAAS,eAAe,CAAC,KAAa;IACpC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,GAAG,CAAA;IACZ,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IAChC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAC3B,CAAC;IACD,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AACtE,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAA4B;IAC9D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,cAAc,EAAE,iDAAiD,CAAC,CAAA;IAC5E,CAAC;IAED,MAAM,KAAK,GAAG,CAAC,SAAS,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,CAAA;IAC5C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QACvE,KAAK,CAAC,IAAI,CACR,KAAK,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,KAAK,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,WAAW,IAAI,QAAQ,EAAE,CAClH,CAAA;QACD,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,CAAC,IAAI,CAAC,OAAO,OAAO,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAChE,CAAC;IACH,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACd,KAAK,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAA;IACtE,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,GAAyB;IAC1D,MAAM,KAAK,GAAG;QACZ,OAAO,GAAG,CAAC,MAAM,EAAE;QACnB,YAAY,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE;QACrC,YAAY,GAAG,CAAC,WAAW,IAAI,SAAS,EAAE;QAC1C,eAAe,GAAG,CAAC,aAAa,IAAI,GAAG,EAAE;QACzC,cAAc,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;KAChD,CAAA;IAED,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAA;IACnE,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,CAAC,IAAI,CAAC,cAAc,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;IACxE,CAAC;IAED,IAAI,GAAG,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,mBAAmB,GAAG,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC/E,CAAC;IAED,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,UAAU,EAAE,CAAC,CAAA;IAC1C,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACd,KAAK,CAAC,IAAI,CAAC,wDAAwD,GAAG,GAAG,CAAC,MAAM,CAAC,CAAA;IACjF,OAAO,KAAK,CAAA;AACd,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"runs.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/runs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAE5C,wBAAsB,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBjF;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAIpF"}
1
+ {"version":3,"file":"runs.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/runs.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAM5C,wBAAsB,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CA4EjF;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAepF"}
@@ -1,25 +1,95 @@
1
+ import { isAuthConfigured } from "../../backend/auth.js";
2
+ import { listPatzeCodeRunsForConfig, fetchPatzeCodeRunDetail } from "../../backend/runs-client.js";
3
+ import { PatzeBackendClient } from "../../backend/client.js";
4
+ import { loadConfig } from "../../config/config.js";
5
+ import { flagBoolean, flagString } from "../argv.js";
6
+ import { formatRunOpenLines, formatRunsListLines } from "./runs-format.js";
7
+ import { replayPatzeCodeRun } from "../interactive/run-replay.js";
8
+ import { InteractiveSession } from "../interactive/session.js";
1
9
  export async function runRuns(argv, printer) {
2
10
  const sub = argv.command[1] ?? "list";
11
+ const cwd = process.cwd();
12
+ const config = loadConfig(cwd);
13
+ if (!isAuthConfigured(config)) {
14
+ printer.error("Auth incomplete — run `patze login` or set PATZE_CODE_* env vars.");
15
+ return 1;
16
+ }
3
17
  if (sub === "list") {
4
- printer.warn("patze runs list is planned for Phase 4 backend sync.");
5
- printer.line("No runs fetched in slice 0.1.0.");
18
+ const limitRaw = flagString(argv.flags, "limit");
19
+ const limit = typeof limitRaw === "string" && limitRaw.trim() ? Math.min(Number(limitRaw) || 20, 64) : 20;
20
+ const result = await listPatzeCodeRunsForConfig({ config, limit });
21
+ if (!result.ok) {
22
+ printer.error(result.message);
23
+ return result.kind === "auth" ? 1 : 2;
24
+ }
25
+ for (const line of formatRunsListLines(result.runs)) {
26
+ printer.line(line);
27
+ }
6
28
  return 0;
7
29
  }
8
30
  if (sub === "open") {
31
+ const stream = flagBoolean(argv.flags, "stream");
9
32
  const runId = argv.positional[0];
10
33
  if (!runId) {
11
- printer.error("Usage: patze runs open <id>");
34
+ printer.error("Usage: patze runs open [--stream] <id>");
12
35
  return 2;
13
36
  }
14
- printer.warn(`patze runs open ${runId} is not implemented yet.`);
15
- return 2;
37
+ if (stream) {
38
+ const session = new InteractiveSession(cwd);
39
+ session.setLastRunId(runId);
40
+ let partialActive = false;
41
+ const replay = await replayPatzeCodeRun(session, {
42
+ runId,
43
+ onTranscriptLine: (line) => printer.line(line),
44
+ onTranscriptPartial: process.stdout.isTTY
45
+ ? (chunk) => {
46
+ partialActive = true;
47
+ process.stdout.write(chunk);
48
+ }
49
+ : undefined,
50
+ });
51
+ if (partialActive) {
52
+ process.stdout.write("\n");
53
+ }
54
+ if (!replay.streamed) {
55
+ for (const line of replay.lines) {
56
+ printer.line(line);
57
+ }
58
+ }
59
+ return replay.exitCode;
60
+ }
61
+ const client = new PatzeBackendClient(config);
62
+ const run = await fetchPatzeCodeRunDetail({
63
+ apiBase: client.baseUrl,
64
+ headers: client.buildHeaders(),
65
+ runId,
66
+ });
67
+ if (!run) {
68
+ printer.error(`Run not found: ${runId}`);
69
+ return 1;
70
+ }
71
+ for (const line of formatRunOpenLines(run)) {
72
+ printer.line(line);
73
+ }
74
+ return 0;
16
75
  }
17
- printer.error("Usage: patze runs list | patze runs open <id>");
76
+ printer.error("Usage: patze runs list [--limit N] | patze runs open [--stream] <id>");
18
77
  return 2;
19
78
  }
20
79
  export async function runConfig(_argv, printer) {
21
- printer.warn("patze config is read-only in slice 0.1.0.");
22
- printer.line("Use `patze status` or edit ~/.patze/config.json");
80
+ const config = loadConfig();
81
+ printer.line("Patze config (resolved):");
82
+ printer.line(` api: ${config.api ?? "not set"}`);
83
+ printer.line(` userId: ${config.userId ?? "not set"}`);
84
+ printer.line(` model: ${config.model ?? "default"}`);
85
+ printer.line(` approval: ${config.approvalMode}`);
86
+ printer.line(` sandbox: ${config.sandboxMode}`);
87
+ if (config.sources.globalPath) {
88
+ printer.line(` global: ${config.sources.globalPath}`);
89
+ }
90
+ if (config.sources.projectPath) {
91
+ printer.line(` project: ${config.sources.projectPath}`);
92
+ }
23
93
  return 0;
24
94
  }
25
95
  //# sourceMappingURL=runs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runs.js","sourceRoot":"","sources":["../../../src/cli/commands/runs.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAAgB,EAAE,OAAgB;IAC9D,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM,CAAA;IACrC,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAA;QACpE,OAAO,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAA;QAC/C,OAAO,CAAC,CAAA;IACV,CAAC;IAED,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;QAChC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAA;YAC5C,OAAO,CAAC,CAAA;QACV,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,mBAAmB,KAAK,0BAA0B,CAAC,CAAA;QAChE,OAAO,CAAC,CAAA;IACV,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAA;IAC9D,OAAO,CAAC,CAAA;AACV,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,KAAiB,EAAE,OAAgB;IACjE,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAA;IACzD,OAAO,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAA;IAC/D,OAAO,CAAC,CAAA;AACV,CAAC"}
1
+ {"version":3,"file":"runs.js","sourceRoot":"","sources":["../../../src/cli/commands/runs.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"status-format.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/status-format.ts"],"names":[],"mappings":"AAEA,OAAO,EAA0B,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAMpF,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,SAAS,EAAE,OAAO,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,cAAgC,GAAG,cAAc,CAiC9G;AAED,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAChC,OAAO,CAAC,cAAc,CAAC,CAqBzB"}
1
+ {"version":3,"file":"status-format.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/status-format.ts"],"names":[],"mappings":"AAGA,OAAO,EAA0B,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAMpF,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,SAAS,EAAE,OAAO,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,cAAgC,GAAG,cAAc,CAiC9G;AAED,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAChC,OAAO,CAAC,cAAc,CAAC,CAgCzB"}
@@ -1,4 +1,5 @@
1
1
  import { PatzeBackendClient } from "../../backend/client.js";
2
+ import { resolvePatzeCodeSessionUser } from "../../backend/session-client.js";
2
3
  import { isAuthConfigured } from "../../backend/auth.js";
3
4
  import { loadConfig, maskSecret } from "../../config/config.js";
4
5
  import { resolveApproval } from "../../runtime/approvals.js";
@@ -51,6 +52,16 @@ export async function buildStatusSnapshot(cwd, options = {}) {
51
52
  snapshot.lines.push(`${"check".padEnd(14)} ${probe.ok ? "api reachable" : `failed (${probe.message})`}`);
52
53
  if (!probe.ok) {
53
54
  snapshot.exitCode = 1;
55
+ return snapshot;
56
+ }
57
+ if (!config.userId) {
58
+ const session = await resolvePatzeCodeSessionUser({ config });
59
+ if (session.ok) {
60
+ snapshot.lines.push(`${"user".padEnd(14)} ${session.userId} (from session)`);
61
+ }
62
+ else {
63
+ snapshot.lines.push(`${"session".padEnd(14)} ${session.message}`);
64
+ }
54
65
  }
55
66
  return snapshot;
56
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"status-format.js","sourceRoot":"","sources":["../../../src/cli/commands/status-format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status-format.js","sourceRoot":"","sources":["../../../src/cli/commands/status-format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAA;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAuB,MAAM,wBAAwB,CAAA;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAQvD,MAAM,UAAU,wBAAwB,CAAC,GAAW,EAAE,SAAyB,UAAU,CAAC,GAAG,CAAC;IAC5F,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;IAC1C,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IAClD,MAAM,SAAS,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAA;IAEzC,MAAM,KAAK,GAAG;QACZ,oBAAoB,EAAE;QACtB,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,GAAG,EAAE;QAC5B,GAAG,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,SAAS,EAAE;QACxC,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,IAAI,SAAS,EAAE;QAChD,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,SAAS,EAAE;QACpD,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;QACnD,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE;QAC5D,GAAG,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE;QAC3C,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE;KAC1C,CAAA;IAED,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;IACrE,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAA;IACnE,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACpE,CAAC;IAED,OAAO;QACL,KAAK;QACL,SAAS;QACT,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAC5B,CAAA;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,GAAW,EACX,UAA+B,EAAE;IAEjC,MAAM,QAAQ,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAA;IAC9C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC9B,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QACvC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,2CAA2C,CAAC,CAAA;QACrF,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAC7C,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE,CAAA;IACxC,QAAQ,CAAC,KAAK,CAAC,IAAI,CACjB,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,KAAK,CAAC,OAAO,GAAG,EAAE,CACpF,CAAA;IACD,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;QACd,QAAQ,CAAC,QAAQ,GAAG,CAAC,CAAA;QACrB,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,OAAO,GAAG,MAAM,2BAA2B,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;QAC7D,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;YACf,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,MAAM,iBAAiB,CAAC,CAAA;QAC9E,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;QACnE,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAG9C,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmChD"}
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAG9C,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAuChD"}
package/dist/cli/help.js CHANGED
@@ -5,6 +5,9 @@ export function printHelp(printer) {
5
5
  printer.line("");
6
6
  printer.line("Usage:");
7
7
  printer.line(" patze Interactive shell (trust loop)");
8
+ printer.line(' patze "<task>" One-shot agent (preview + execute)');
9
+ printer.line(" patze agent \"<task>\" Explicit one-shot agent");
10
+ printer.line(" printf \"task\" | patze Stdin one-shot (non-TTY)");
8
11
  printer.line(" patze --help Show help");
9
12
  printer.line(" patze --version Show version");
10
13
  printer.line(" patze status [--check] Local posture + trust-loop snapshot");
@@ -13,14 +16,15 @@ export function printHelp(printer) {
13
16
  printer.line(' patze goal "<task>" --dry-run Plan without mutation');
14
17
  printer.line(" patze code inspect|plan|diff Read-only / preview commands");
15
18
  printer.line(" patze code apply|verify Disabled or help-only — use /apply /verify in shell");
16
- printer.line(" patze runs list|open <id> (planned)");
17
- printer.line(" patze config (planned)");
19
+ printer.line(" patze runs list|open [--stream] <id> Server run history (read-only)");
20
+ printer.line(" patze config Show resolved config paths");
18
21
  printer.line("");
19
22
  printer.line("Interactive trust loop:");
20
23
  printer.line(" prompt → inspect → plan → diff → permissions → approve → apply → verify");
21
24
  printer.line("");
22
25
  printer.line("Slash commands (inside patze):");
23
26
  printer.line(" /help /status /login /logout /context /goal /inspect /plan");
27
+ printer.line(" /model /run /last /runs /local /cloud");
24
28
  printer.line(" /permissions /tools /diff /approve /apply /verify /reject /reset /clear /exit");
25
29
  printer.line("");
26
30
  printer.line("Safety:");
@@ -30,7 +34,7 @@ export function printHelp(printer) {
30
34
  printer.line(" • Session digests are masked in output");
31
35
  printer.line("");
32
36
  printer.line("Environment:");
33
- printer.line(" PATZE_CODE_API, PATZE_CODE_TOKEN, PATZE_CODE_USER_ID");
37
+ printer.line(" PATZE_CODE_API, PATZE_CODE_TOKEN, PATZE_CODE_USER_ID, PATZE_CODE_MODEL");
34
38
  printer.line("");
35
39
  printer.line("Docs: docs/trust-loop.md · docs/safety-model.md · docs/internal-beta.md");
36
40
  printer.line(" docs/beta-tester-checklist.md · docs/beta-feedback-template.md");
@@ -1 +1 @@
1
- {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAE3C,MAAM,UAAU,SAAS,CAAC,OAAgB;IACxC,OAAO,CAAC,IAAI,CAAC,iBAAiB,WAAW,gCAAgC,CAAC,CAAA;IAC1E,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAA;IAC3D,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACtB,OAAO,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAA;IAC/E,OAAO,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAA;IAC1D,OAAO,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAA;IAC7D,OAAO,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAA;IACpF,OAAO,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAA;IAC9F,OAAO,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAA;IACzE,OAAO,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAA;IACtE,OAAO,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAA;IAC7E,OAAO,CAAC,IAAI,CAAC,sFAAsF,CAAC,CAAA;IACpG,OAAO,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAA;IAC1D,OAAO,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAA;IAC1D,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;IACvC,OAAO,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAA;IACzF,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAA;IAC9C,OAAO,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAA;IAC5E,OAAO,CAAC,IAAI,CAAC,iFAAiF,CAAC,CAAA;IAC/F,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACvB,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAA;IAC9D,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAA;IACrE,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAA;IACrD,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAA;IACxD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IAC5B,OAAO,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAA;IACtE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,yEAAyE,CAAC,CAAA;IACvF,OAAO,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAA;AACtF,CAAC"}
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAE3C,MAAM,UAAU,SAAS,CAAC,OAAgB;IACxC,OAAO,CAAC,IAAI,CAAC,iBAAiB,WAAW,gCAAgC,CAAC,CAAA;IAC1E,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAA;IAC3D,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACtB,OAAO,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAA;IAC/E,OAAO,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAA;IACnF,OAAO,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAA;IAC1E,OAAO,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAA;IAC3E,OAAO,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAA;IAC1D,OAAO,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAA;IAC7D,OAAO,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAA;IACpF,OAAO,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAA;IAC9F,OAAO,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAA;IACzE,OAAO,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAA;IACtE,OAAO,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAA;IAC7E,OAAO,CAAC,IAAI,CAAC,sFAAsF,CAAC,CAAA;IACpG,OAAO,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAA;IACtF,OAAO,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAA;IAC3E,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;IACvC,OAAO,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAA;IACzF,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAA;IAC9C,OAAO,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAA;IAC5E,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAA;IACvD,OAAO,CAAC,IAAI,CAAC,iFAAiF,CAAC,CAAA;IAC/F,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACvB,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAA;IAC9D,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAA;IACrE,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAA;IACrD,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAA;IACxD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IAC5B,OAAO,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAA;IACxF,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,yEAAyE,CAAC,CAAA;IACvF,OAAO,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAA;AACtF,CAAC"}
@@ -0,0 +1,26 @@
1
+ import type { FetchLike } from "../../backend/preview-client.js";
2
+ import type { PatzeCodeRunRecord } from "../../backend/run-record.js";
3
+ import type { ResolvedConfig } from "../../config/config.js";
4
+ export type ExecuteTurnOptions = {
5
+ cwd: string;
6
+ config: ResolvedConfig;
7
+ objective: string;
8
+ previewArtifactDigest: string;
9
+ modelHint?: string | null;
10
+ conversationContext?: string | null;
11
+ executionMode?: "local" | "cloud";
12
+ fetchImpl?: FetchLike;
13
+ onTranscriptLine?: (line: string) => void;
14
+ onTranscriptPartial?: (chunk: string) => void;
15
+ };
16
+ export type ExecuteTurnResult = {
17
+ ok: boolean;
18
+ streamed: boolean;
19
+ run: PatzeCodeRunRecord | null;
20
+ exitCode: number;
21
+ lines: string[];
22
+ };
23
+ export declare function isCliExecuteEnabled(): boolean;
24
+ export declare function isExecuteAuthReady(config: ResolvedConfig): boolean;
25
+ export declare function runExecuteTurn(options: ExecuteTurnOptions): Promise<ExecuteTurnResult>;
26
+ //# sourceMappingURL=agent-execute-turn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-execute-turn.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/agent-execute-turn.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAGhE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAI5D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,cAAc,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;IACjC,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CAC9C,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,OAAO,CAAA;IACX,QAAQ,EAAE,OAAO,CAAA;IACjB,GAAG,EAAE,kBAAkB,GAAG,IAAI,CAAA;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,EAAE,CAAA;CAChB,CAAA;AAED,wBAAgB,mBAAmB,IAAI,OAAO,CAM7C;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAElE;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAuH5F"}
@@ -0,0 +1,127 @@
1
+ import { PatzeBackendClient } from "../../backend/client.js";
2
+ import { postUserTaskExecute } from "../../backend/execute-client.js";
3
+ import { buildPreviewPayload } from "../../backend/preview-payload.js";
4
+ import { streamPatzeCodeRun } from "../../backend/run-stream-client.js";
5
+ import { AgentStreamTranscript } from "./agent-stream-format.js";
6
+ import { formatAgentReply } from "./transcript-format.js";
7
+ export function isCliExecuteEnabled() {
8
+ const raw = process.env.PATZE_CODE_CLI_EXECUTE;
9
+ if (raw === "0" || raw === "false" || raw === "off") {
10
+ return false;
11
+ }
12
+ return true;
13
+ }
14
+ export function isExecuteAuthReady(config) {
15
+ return Boolean(config.api && config.token && config.userId);
16
+ }
17
+ export async function runExecuteTurn(options) {
18
+ const sink = {
19
+ lines: [],
20
+ emit(lines) {
21
+ for (const line of lines) {
22
+ this.lines.push(line);
23
+ options.onTranscriptLine?.(line);
24
+ }
25
+ },
26
+ };
27
+ const client = new PatzeBackendClient(options.config);
28
+ const payload = buildPreviewPayload({
29
+ objective: options.objective,
30
+ cwd: options.cwd,
31
+ config: options.config,
32
+ modelHint: options.modelHint,
33
+ conversationContext: options.conversationContext,
34
+ executionMode: options.executionMode,
35
+ });
36
+ const transcript = new AgentStreamTranscript({
37
+ emit(lines) {
38
+ for (const line of lines) {
39
+ sink.lines.push(line);
40
+ options.onTranscriptLine?.(line);
41
+ }
42
+ },
43
+ emitPartial(chunk) {
44
+ options.onTranscriptPartial?.(chunk);
45
+ },
46
+ });
47
+ transcript.emitRunPhase("queued");
48
+ const execute = await postUserTaskExecute({
49
+ apiBase: client.baseUrl,
50
+ headers: client.buildHeaders(),
51
+ payload,
52
+ previewArtifactDigest: options.previewArtifactDigest,
53
+ fetchImpl: options.fetchImpl,
54
+ });
55
+ if (!execute.ok) {
56
+ const message = execute.kind === "auth"
57
+ ? `${execute.message} — ensure user id is set (/login or /status --check).`
58
+ : execute.message;
59
+ sink.emit(formatAgentReply(`Execute failed: ${message}`));
60
+ return { ok: false, streamed: sink.lines.length > 0, run: null, exitCode: 1, lines: sink.lines };
61
+ }
62
+ if (execute.kind === "completed") {
63
+ transcript.emitRunPhase(execute.response.phase ?? execute.response.status);
64
+ const run = {
65
+ run_id: execute.response.run_id,
66
+ status: execute.response.status,
67
+ phase: execute.response.phase ?? execute.response.status,
68
+ error_code: execute.response.error_code,
69
+ agent_output_preview: execute.response.agent_output_preview ?? "",
70
+ outcome_summary: execute.response.outcome_summary ?? "",
71
+ agent_model: execute.response.agent_model ?? "",
72
+ finding_codes: execute.response.finding_codes,
73
+ deliverable_paths: execute.response.deliverable_paths ?? [],
74
+ agent_trace: execute.response.agent_trace ?? [],
75
+ };
76
+ for (const item of run.agent_trace) {
77
+ transcript.emitTraceItem(item);
78
+ }
79
+ transcript.emitFinalRun(run);
80
+ const ok = run.phase === "completed" || run.status === "completed";
81
+ return {
82
+ ok,
83
+ streamed: sink.lines.length > 0,
84
+ run,
85
+ exitCode: ok ? 0 : 1,
86
+ lines: sink.lines,
87
+ };
88
+ }
89
+ const runId = execute.response.run_id;
90
+ transcript.emitRunPhase(execute.response.phase, execute.response.status);
91
+ const holder = { run: null };
92
+ await new Promise((resolvePromise) => {
93
+ void streamPatzeCodeRun({
94
+ apiBase: client.baseUrl,
95
+ headers: client.buildHeaders(),
96
+ runId,
97
+ fetchImpl: options.fetchImpl,
98
+ handlers: {
99
+ onStatus: (event) => {
100
+ transcript.emitRunPhase(event.phase, event.status);
101
+ },
102
+ onTrace: (event) => {
103
+ transcript.emitTraceItem(event.item);
104
+ },
105
+ onComplete: (run) => {
106
+ holder.run = run;
107
+ transcript.emitFinalRun(run);
108
+ resolvePromise();
109
+ },
110
+ onError: () => {
111
+ resolvePromise();
112
+ },
113
+ },
114
+ });
115
+ });
116
+ const finalRun = holder.run;
117
+ const ok = finalRun !== null &&
118
+ (finalRun.phase === "completed" || finalRun.status === "completed");
119
+ return {
120
+ ok,
121
+ streamed: sink.lines.length > 0,
122
+ run: finalRun,
123
+ exitCode: ok ? 0 : 1,
124
+ lines: sink.lines,
125
+ };
126
+ }
127
+ //# sourceMappingURL=agent-execute-turn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-execute-turn.js","sourceRoot":"","sources":["../../../src/cli/interactive/agent-execute-turn.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import type { PatzeCodeRunRecord } from "../../backend/run-record.js";
2
+ import { formatTranscriptEntry } from "./transcript-format.js";
3
+ export type StreamTranscriptSink = {
4
+ emit: (lines: string[]) => void;
5
+ emitPartial?: (chunk: string) => void;
6
+ };
7
+ export declare class AgentStreamTranscript {
8
+ private readonly sink;
9
+ private readonly seenTraceIds;
10
+ private readonly traceSlots;
11
+ private lastPhase;
12
+ private textBuffer;
13
+ private agentPrefixEmitted;
14
+ constructor(sink: StreamTranscriptSink);
15
+ flushPartialLine(): void;
16
+ emitRunPhase(phase: string, status?: string): void;
17
+ emitTraceItem(item: unknown): void;
18
+ emitFinalRun(run: PatzeCodeRunRecord | null): void;
19
+ private emitUpsertTrace;
20
+ private emitStreamingText;
21
+ private emitAgentPartial;
22
+ }
23
+ export { formatTranscriptEntry };
24
+ //# sourceMappingURL=agent-stream-format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-stream-format.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/agent-stream-format.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAErE,OAAO,EAAoB,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAEhF,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IAC/B,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACtC,CAAA;AAQD,qBAAa,qBAAqB;IAOpB,OAAO,CAAC,QAAQ,CAAC,IAAI;IANjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAoB;IACjD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA+B;IAC1D,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,kBAAkB,CAAQ;gBAEL,IAAI,EAAE,oBAAoB;IAEvD,gBAAgB,IAAI,IAAI;IAQxB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IASlD,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IA2ClC,YAAY,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,GAAG,IAAI;IA6BlD,OAAO,CAAC,eAAe;IAuCvB,OAAO,CAAC,iBAAiB;IAoBzB,OAAO,CAAC,gBAAgB;CAczB;AAyBD,OAAO,EAAE,qBAAqB,EAAE,CAAA"}