codedeck 0.5.1 → 0.5.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 (67) hide show
  1. package/README.md +1 -1
  2. package/dist/cli/commands/doctor.js +24 -6
  3. package/dist/cli/commands/doctor.js.map +1 -1
  4. package/dist/cli/commands/profile.js +7 -2
  5. package/dist/cli/commands/profile.js.map +1 -1
  6. package/dist/cli/commands/ps.js +41 -6
  7. package/dist/cli/commands/ps.js.map +1 -1
  8. package/dist/cli/commands/setup.js +50 -22
  9. package/dist/cli/commands/setup.js.map +1 -1
  10. package/dist/cli/commands/web.js +1 -1
  11. package/dist/core/events.js.map +1 -1
  12. package/dist/core/pricing.js +51 -6
  13. package/dist/core/pricing.js.map +1 -1
  14. package/dist/daemon/daemon.js +30 -1
  15. package/dist/daemon/daemon.js.map +1 -1
  16. package/dist/drivers/antigravity/driver.js +105 -2
  17. package/dist/drivers/antigravity/driver.js.map +1 -1
  18. package/dist/drivers/antigravity/parser.js +108 -2
  19. package/dist/drivers/antigravity/parser.js.map +1 -1
  20. package/dist/drivers/claude/parser.js +3 -1
  21. package/dist/drivers/claude/parser.js.map +1 -1
  22. package/dist/drivers/helpers.js +17 -1
  23. package/dist/drivers/helpers.js.map +1 -1
  24. package/dist/drivers/opencode/parser.js +26 -1
  25. package/dist/drivers/opencode/parser.js.map +1 -1
  26. package/dist/drivers/session-runtime.js +3 -0
  27. package/dist/drivers/session-runtime.js.map +1 -1
  28. package/dist/open/launchers/opencode.js +1 -1
  29. package/dist/open/launchers/opencode.js.map +1 -1
  30. package/dist/open/runtime.js +8 -0
  31. package/dist/open/runtime.js.map +1 -1
  32. package/dist/plugin/.claude-plugin/plugin.json +1 -1
  33. package/dist/plugin/agents/orchestrator-edit.md +11 -2
  34. package/dist/plugin/agents/orchestrator-read.md +11 -2
  35. package/dist/plugin/agents/orchestrator.md +4 -2
  36. package/dist/plugin/hooks/hooks.json +2 -0
  37. package/dist/plugin/hooks/register.tsx +251 -0
  38. package/dist/plugin/mods/agents/pane.ts +453 -0
  39. package/dist/plugin/mods/agents/parse.ts +29 -0
  40. package/dist/plugin/mods/agents/types.ts +43 -0
  41. package/dist/plugin/prompts/_partials/spec-gates.md +2 -0
  42. package/dist/plugin/prompts/roles/orchestrator-edit.md +2 -1
  43. package/dist/plugin/prompts/roles/orchestrator-read.md +2 -1
  44. package/dist/plugin/prompts/roles/orchestrator.md +2 -2
  45. package/dist/plugin/skills/tlc-spec-driven/SKILL.md +186 -0
  46. package/dist/plugin/skills/tlc-spec-driven/references/code-analysis.md +98 -0
  47. package/dist/plugin/skills/tlc-spec-driven/references/coding-principles.md +72 -0
  48. package/dist/plugin/skills/tlc-spec-driven/references/context-limits.md +31 -0
  49. package/dist/plugin/skills/tlc-spec-driven/references/design.md +199 -0
  50. package/dist/plugin/skills/tlc-spec-driven/references/discuss.md +159 -0
  51. package/dist/plugin/skills/tlc-spec-driven/references/implement.md +436 -0
  52. package/dist/plugin/skills/tlc-spec-driven/references/lessons.md +115 -0
  53. package/dist/plugin/skills/tlc-spec-driven/references/memory.md +144 -0
  54. package/dist/plugin/skills/tlc-spec-driven/references/specify.md +228 -0
  55. package/dist/plugin/skills/tlc-spec-driven/references/sub-agents.md +147 -0
  56. package/dist/plugin/skills/tlc-spec-driven/references/tasks.md +451 -0
  57. package/dist/plugin/skills/tlc-spec-driven/references/validate.md +355 -0
  58. package/dist/plugin/skills/tlc-spec-driven/scripts/check_commit.py +133 -0
  59. package/dist/plugin/skills/tlc-spec-driven/scripts/lessons.py +412 -0
  60. package/dist/plugin/skills/tlc-spec-driven/scripts/validate_spec.py +284 -0
  61. package/dist/plugin/skills/tlc-spec-driven/scripts/validate_state.py +196 -0
  62. package/dist/plugin/skills/tlc-spec-driven/scripts/validate_tasks.py +287 -0
  63. package/dist/plugin/statusline.sh +0 -1
  64. package/dist/utils/process.js +88 -0
  65. package/dist/utils/process.js.map +1 -1
  66. package/dist/web/canvas-page.js +82 -82
  67. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../src/daemon/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../src/daemon/daemon.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,82 @@
1
1
  import fs from "node:fs";
2
2
  import os from "node:os";
3
3
  import path from "node:path";
4
+ import { StringDecoder } from "node:string_decoder";
4
5
  import { detectBinary, runCommandWithTimeout } from "../helpers.js";
5
6
  import { createRuntimeHooks, SessionDriver } from "../session-driver.js";
6
- import { parseAntigravityLine } from "./parser.js";
7
+ import { sessionLogPaths } from "../session-runtime.js";
8
+ import { createAntigravityParser } from "./parser.js";
9
+ const MAX_REPLAY_READ_BYTES = 64 * 1024;
10
+ export function alignAntigravityLogOffset(stdoutPath, logOffset) {
11
+ if (!Number.isSafeInteger(logOffset) || logOffset <= 0)
12
+ return 0;
13
+ let fd;
14
+ try {
15
+ fd = fs.openSync(stdoutPath, "r");
16
+ const size = fs.fstatSync(fd).size;
17
+ if (logOffset > size)
18
+ return 0;
19
+ let position = logOffset;
20
+ const buffer = Buffer.allocUnsafe(MAX_REPLAY_READ_BYTES);
21
+ while (position > 0) {
22
+ const start = Math.max(0, position - MAX_REPLAY_READ_BYTES);
23
+ const bytesRead = fs.readSync(fd, buffer, 0, position - start, start);
24
+ if (bytesRead === 0)
25
+ return 0;
26
+ const newline = buffer.subarray(0, bytesRead).lastIndexOf(0x0a);
27
+ if (newline >= 0)
28
+ return start + newline + 1;
29
+ position = start;
30
+ }
31
+ return 0;
32
+ }
33
+ catch {
34
+ return 0;
35
+ }
36
+ finally {
37
+ if (fd !== undefined)
38
+ fs.closeSync(fd);
39
+ }
40
+ }
41
+ export function replayAntigravityOutput(stdoutPath, logOffset, parser, sessionId) {
42
+ if (!Number.isSafeInteger(logOffset) || logOffset <= 0)
43
+ return;
44
+ let fd;
45
+ try {
46
+ fd = fs.openSync(stdoutPath, "r");
47
+ const buffer = Buffer.allocUnsafe(Math.min(MAX_REPLAY_READ_BYTES, logOffset));
48
+ const decoder = new StringDecoder("utf8");
49
+ let position = 0;
50
+ let line = "";
51
+ while (position < logOffset) {
52
+ const bytesRead = fs.readSync(fd, buffer, 0, Math.min(buffer.length, logOffset - position), position);
53
+ if (bytesRead === 0)
54
+ break;
55
+ position += bytesRead;
56
+ const chunk = decoder.write(buffer.subarray(0, bytesRead));
57
+ let start = 0;
58
+ for (let newline = chunk.indexOf("\n"); newline >= 0; newline = chunk.indexOf("\n", start)) {
59
+ line += chunk.slice(start, newline);
60
+ if (line)
61
+ parser(line, sessionId);
62
+ line = "";
63
+ start = newline + 1;
64
+ }
65
+ line += chunk.slice(start);
66
+ }
67
+ // The persisted offset is the end of a complete line. Discard any
68
+ // unterminated fragment so an invalid offset cannot turn log bytes into
69
+ // assistant text or cause the live tailer to replay part of a line.
70
+ decoder.end();
71
+ }
72
+ catch {
73
+ // A missing or unreadable old log does not prevent the runtime from attaching.
74
+ }
75
+ finally {
76
+ if (fd !== undefined)
77
+ fs.closeSync(fd);
78
+ }
79
+ }
7
80
  // Pure so the flag spellings and effort clamping are testable without spawning agy.
8
81
  export function buildAntigravityArgs(options) {
9
82
  const args = ["--output-format", "stream-json", "--dangerously-skip-permissions"];
@@ -72,14 +145,44 @@ export function parseAntigravityModelsList(stdout) {
72
145
  }
73
146
  export class AntigravityDriver extends SessionDriver {
74
147
  id = "antigravity";
148
+ parser = createAntigravityParser();
75
149
  hooks = createRuntimeHooks({
76
- parse: parseAntigravityLine,
150
+ parse: this.parser,
77
151
  nativeKeys: ["conversation_id"],
78
152
  harness: "Antigravity",
79
153
  plainTextFallback: true,
80
154
  });
81
155
  resumeError = "No native conversation id available for Antigravity resume";
82
156
  detectedPath;
157
+ async start(options) {
158
+ this.parser.reset(options.sessionId);
159
+ return super.start(options);
160
+ }
161
+ async attach(request) {
162
+ this.parser.reset(request.sessionId);
163
+ const logOffset = alignAntigravityLogOffset(sessionLogPaths(request.sessionId).stdoutPath, request.logOffset ?? 0);
164
+ this.replayConsumedOutput(request.sessionId, logOffset);
165
+ await super.attach({ ...request, logOffset });
166
+ }
167
+ async stop(session) {
168
+ try {
169
+ await super.stop(session);
170
+ }
171
+ finally {
172
+ this.parser.reset(session.id);
173
+ }
174
+ }
175
+ async *events(session) {
176
+ for await (const event of super.events(session)) {
177
+ if (event.type === "session.completed" || event.type === "session.failed") {
178
+ this.parser.reset(session.id);
179
+ }
180
+ yield event;
181
+ }
182
+ }
183
+ replayConsumedOutput(sessionId, logOffset) {
184
+ replayAntigravityOutput(sessionLogPaths(sessionId).stdoutPath, logOffset ?? 0, this.parser, sessionId);
185
+ }
83
186
  getCommand() {
84
187
  if (this.detectedPath)
85
188
  return this.detectedPath;
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../../src/drivers/antigravity/driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../../src/drivers/antigravity/driver.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,35 @@
1
1
  import { classifyFailure } from "../../core/errors.js";
2
+ // Keep fallback reconstruction bounded while retaining ordinary long answers.
3
+ const MAX_ACCUMULATED_RESPONSE_CHARS = 8 * 1024 * 1024;
2
4
  export function parseAntigravityLine(line, sessionId) {
5
+ return parseAntigravityLineWithState(line, sessionId);
6
+ }
7
+ // A result line can omit response text after streaming it through step_update
8
+ // lines. Keep this state per parser instance so separate runtimes cannot mix
9
+ // their transcripts while the stateless export remains useful in tests.
10
+ export function createAntigravityParser() {
11
+ const responseBySession = new Map();
12
+ const parse = (line, sessionId) => parseAntigravityLineWithState(line, sessionId, responseBySession);
13
+ parse.reset = (sessionId) => responseBySession.delete(sessionId);
14
+ return parse;
15
+ }
16
+ function parseAntigravityLineWithState(line, sessionId, responseBySession) {
3
17
  let obj;
4
18
  try {
5
19
  obj = JSON.parse(line);
6
20
  }
7
21
  catch {
22
+ if (responseBySession && line.trim()) {
23
+ const delta = `${line}\n`;
24
+ appendResponseText(responseBySession, sessionId, delta);
25
+ return [{
26
+ type: "text.delta",
27
+ sessionId,
28
+ timestamp: new Date().toISOString(),
29
+ delta,
30
+ raw: line,
31
+ }];
32
+ }
8
33
  return [];
9
34
  }
10
35
  if (!obj || typeof obj !== "object")
@@ -14,6 +39,7 @@ export function parseAntigravityLine(line, sessionId) {
14
39
  const raw = obj;
15
40
  // Handle generic error object
16
41
  if (obj.error && !obj.event) {
42
+ responseBySession?.delete(sessionId);
17
43
  const errText = typeof obj.error === "string" ? obj.error : obj.error.message || JSON.stringify(obj.error);
18
44
  events.push({
19
45
  type: "session.failed",
@@ -27,6 +53,7 @@ export function parseAntigravityLine(line, sessionId) {
27
53
  }
28
54
  // 1. "init" event -> session.started
29
55
  if (obj.event === "init") {
56
+ responseBySession?.delete(sessionId);
30
57
  const nativeSessionId = obj.conversation_id || obj.init?.conversation_id;
31
58
  events.push({
32
59
  type: "session.started",
@@ -43,6 +70,9 @@ export function parseAntigravityLine(line, sessionId) {
43
70
  const nativeSessionId = update.conversation_id || obj.conversation_id;
44
71
  // Streamed assistant text delta
45
72
  if (update.step_type === "agent_response" && typeof update.text_delta === "string" && update.text_delta) {
73
+ if (responseBySession) {
74
+ appendResponseText(responseBySession, sessionId, update.text_delta);
75
+ }
46
76
  events.push({
47
77
  type: "text.delta",
48
78
  sessionId,
@@ -115,6 +145,7 @@ export function parseAntigravityLine(line, sessionId) {
115
145
  const nativeSessionId = result.conversation_id || obj.conversation_id;
116
146
  const isError = result.status === "ERROR" || Boolean(result.error);
117
147
  if (isError) {
148
+ responseBySession?.delete(sessionId);
118
149
  const errText = result.error || result.response || "Antigravity execution failed";
119
150
  events.push({
120
151
  type: "session.failed",
@@ -141,17 +172,42 @@ export function parseAntigravityLine(line, sessionId) {
141
172
  raw,
142
173
  });
143
174
  }
144
- if (result.response && typeof result.response === "string" && result.response.trim()) {
175
+ const response = typeof result.response === "string" ? result.response : "";
176
+ const accumulator = responseBySession?.get(sessionId);
177
+ const accumulatedContent = !response.trim() && accumulator ? accumulatedResponseContent(accumulator) : "";
178
+ const content = response.trim()
179
+ ? response
180
+ : accumulatedContent.trim() && accumulator
181
+ ? accumulatedResponseText(accumulator, accumulatedContent)
182
+ : "";
183
+ if (content.trim()) {
145
184
  events.push({
146
185
  type: "message",
147
186
  sessionId,
148
187
  timestamp: ts,
149
188
  role: "assistant",
150
- content: result.response,
189
+ content,
151
190
  nativeSessionId,
152
191
  raw,
153
192
  });
154
193
  }
194
+ else {
195
+ const error = accumulator
196
+ ? "Antigravity returned an empty or whitespace-only response with no usable text deltas"
197
+ : "Antigravity returned an empty or whitespace-only response with no text deltas";
198
+ responseBySession?.delete(sessionId);
199
+ events.push({
200
+ type: "session.failed",
201
+ sessionId,
202
+ timestamp: ts,
203
+ error,
204
+ failure: classifyFailure(error),
205
+ nativeSessionId,
206
+ raw,
207
+ });
208
+ return events;
209
+ }
210
+ responseBySession?.delete(sessionId);
155
211
  events.push({
156
212
  type: "session.completed",
157
213
  sessionId,
@@ -165,4 +221,54 @@ export function parseAntigravityLine(line, sessionId) {
165
221
  }
166
222
  return [];
167
223
  }
224
+ function appendResponseText(responseBySession, sessionId, delta) {
225
+ const accumulator = responseBySession.get(sessionId) ?? {
226
+ chunks: [],
227
+ firstChunk: 0,
228
+ length: 0,
229
+ truncatedChars: 0,
230
+ nextCompactionAt: 1024,
231
+ };
232
+ accumulator.chunks.push(delta);
233
+ accumulator.length += delta.length;
234
+ while (accumulator.length > MAX_ACCUMULATED_RESPONSE_CHARS) {
235
+ const first = accumulator.chunks[accumulator.firstChunk];
236
+ let remove = Math.min(first.length, accumulator.length - MAX_ACCUMULATED_RESPONSE_CHARS);
237
+ if (remove === first.length) {
238
+ accumulator.firstChunk += 1;
239
+ }
240
+ else {
241
+ accumulator.chunks[accumulator.firstChunk] = first.slice(remove);
242
+ }
243
+ accumulator.length -= remove;
244
+ accumulator.truncatedChars += remove;
245
+ }
246
+ const first = accumulator.chunks[accumulator.firstChunk];
247
+ if (first && first.charCodeAt(0) >= 0xdc00 && first.charCodeAt(0) <= 0xdfff) {
248
+ accumulator.chunks[accumulator.firstChunk] = first.slice(1);
249
+ accumulator.length -= 1;
250
+ accumulator.truncatedChars += 1;
251
+ }
252
+ // Avoid retaining references to every discarded delta. Compaction is
253
+ // amortized so append remains linear even after the cap is reached.
254
+ if (accumulator.firstChunk > 1024 && accumulator.firstChunk * 2 >= accumulator.chunks.length) {
255
+ accumulator.chunks = accumulator.chunks.slice(accumulator.firstChunk);
256
+ accumulator.firstChunk = 0;
257
+ }
258
+ const liveChunks = accumulator.chunks.length - accumulator.firstChunk;
259
+ if (liveChunks >= accumulator.nextCompactionAt) {
260
+ accumulator.chunks = [accumulator.chunks.slice(accumulator.firstChunk).join("")];
261
+ accumulator.firstChunk = 0;
262
+ accumulator.nextCompactionAt = Math.max(accumulator.nextCompactionAt * 2, liveChunks * 2);
263
+ }
264
+ responseBySession.set(sessionId, accumulator);
265
+ }
266
+ function accumulatedResponseText(accumulator, text) {
267
+ return accumulator.truncatedChars > 0
268
+ ? `[truncated ${accumulator.truncatedChars} characters]\n${text}`
269
+ : text;
270
+ }
271
+ function accumulatedResponseContent(accumulator) {
272
+ return accumulator.chunks.slice(accumulator.firstChunk).join("");
273
+ }
168
274
  //# sourceMappingURL=parser.js.map