@agtd/agent 0.1.2 → 0.1.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.
- package/dist/agent.js +6 -49
- package/dist/{chunk-24ORBJSI.js → chunk-RJLNNX7L.js} +489 -32
- package/dist/cli.js +186 -120
- package/package.json +2 -1
- package/dist/__tests__/codexAdapterFindFile.test.d.ts +0 -2
- package/dist/__tests__/codexAdapterFindFile.test.d.ts.map +0 -1
- package/dist/__tests__/codexAdapterFindFile.test.js +0 -298
- package/dist/__tests__/codexAdapterFindFile.test.js.map +0 -1
- package/dist/__tests__/enrichers.test.d.ts +0 -2
- package/dist/__tests__/enrichers.test.d.ts.map +0 -1
- package/dist/__tests__/enrichers.test.js +0 -47
- package/dist/__tests__/enrichers.test.js.map +0 -1
- package/dist/__tests__/tmux.integration.test.d.ts +0 -2
- package/dist/__tests__/tmux.integration.test.d.ts.map +0 -1
- package/dist/__tests__/tmux.integration.test.js +0 -112
- package/dist/__tests__/tmux.integration.test.js.map +0 -1
- package/dist/__tests__/tmux.test.d.ts +0 -2
- package/dist/__tests__/tmux.test.d.ts.map +0 -1
- package/dist/__tests__/tmux.test.js +0 -26
- package/dist/__tests__/tmux.test.js.map +0 -1
- package/dist/__tests__/transcriptAdapters.test.d.ts +0 -2
- package/dist/__tests__/transcriptAdapters.test.d.ts.map +0 -1
- package/dist/__tests__/transcriptAdapters.test.js +0 -133
- package/dist/__tests__/transcriptAdapters.test.js.map +0 -1
- package/dist/adapters/claude-code.d.ts +0 -3
- package/dist/adapters/claude-code.d.ts.map +0 -1
- package/dist/adapters/claude-code.js +0 -48
- package/dist/adapters/claude-code.js.map +0 -1
- package/dist/adapters/codex.d.ts +0 -3
- package/dist/adapters/codex.d.ts.map +0 -1
- package/dist/adapters/codex.js +0 -33
- package/dist/adapters/codex.js.map +0 -1
- package/dist/adapters/generic.d.ts +0 -3
- package/dist/adapters/generic.d.ts.map +0 -1
- package/dist/adapters/generic.js +0 -38
- package/dist/adapters/generic.js.map +0 -1
- package/dist/adapters/index.d.ts +0 -7
- package/dist/adapters/index.d.ts.map +0 -1
- package/dist/adapters/index.js +0 -12
- package/dist/adapters/index.js.map +0 -1
- package/dist/agent.d.ts +0 -3
- package/dist/agent.d.ts.map +0 -1
- package/dist/agent.js.map +0 -1
- package/dist/cli.d.ts +0 -11
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/config.d.ts +0 -26
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js +0 -48
- package/dist/config.js.map +0 -1
- package/dist/enrichers/git.d.ts +0 -6
- package/dist/enrichers/git.d.ts.map +0 -1
- package/dist/enrichers/git.js +0 -20
- package/dist/enrichers/git.js.map +0 -1
- package/dist/enrichers/pr.d.ts +0 -2
- package/dist/enrichers/pr.d.ts.map +0 -1
- package/dist/enrichers/pr.js +0 -10
- package/dist/enrichers/pr.js.map +0 -1
- package/dist/enrichers/transcript.d.ts +0 -8
- package/dist/enrichers/transcript.d.ts.map +0 -1
- package/dist/enrichers/transcript.js +0 -33
- package/dist/enrichers/transcript.js.map +0 -1
- package/dist/heartbeat.d.ts +0 -4
- package/dist/heartbeat.d.ts.map +0 -1
- package/dist/heartbeat.js +0 -15
- package/dist/heartbeat.js.map +0 -1
- package/dist/init.d.ts +0 -10
- package/dist/init.d.ts.map +0 -1
- package/dist/init.js +0 -70
- package/dist/init.js.map +0 -1
- package/dist/register.d.ts +0 -3
- package/dist/register.d.ts.map +0 -1
- package/dist/register.js +0 -22
- package/dist/register.js.map +0 -1
- package/dist/sessionScanner.d.ts +0 -20
- package/dist/sessionScanner.d.ts.map +0 -1
- package/dist/sessionScanner.js +0 -479
- package/dist/sessionScanner.js.map +0 -1
- package/dist/spawn.d.ts +0 -8
- package/dist/spawn.d.ts.map +0 -1
- package/dist/spawn.js +0 -73
- package/dist/spawn.js.map +0 -1
- package/dist/syncProjects.d.ts +0 -3
- package/dist/syncProjects.d.ts.map +0 -1
- package/dist/syncProjects.js +0 -91
- package/dist/syncProjects.js.map +0 -1
- package/dist/terminalBridge.d.ts +0 -4
- package/dist/terminalBridge.d.ts.map +0 -1
- package/dist/terminalBridge.js +0 -42
- package/dist/terminalBridge.js.map +0 -1
- package/dist/tmux.d.ts +0 -21
- package/dist/tmux.d.ts.map +0 -1
- package/dist/tmux.js +0 -89
- package/dist/tmux.js.map +0 -1
- package/dist/transcriptAdapters/claude-code.d.ts +0 -3
- package/dist/transcriptAdapters/claude-code.d.ts.map +0 -1
- package/dist/transcriptAdapters/claude-code.js +0 -147
- package/dist/transcriptAdapters/claude-code.js.map +0 -1
- package/dist/transcriptAdapters/codex.d.ts +0 -3
- package/dist/transcriptAdapters/codex.d.ts.map +0 -1
- package/dist/transcriptAdapters/codex.js +0 -251
- package/dist/transcriptAdapters/codex.js.map +0 -1
- package/dist/transcriptAdapters/index.d.ts +0 -17
- package/dist/transcriptAdapters/index.d.ts.map +0 -1
- package/dist/transcriptAdapters/index.js +0 -9
- package/dist/transcriptAdapters/index.js.map +0 -1
- package/dist/wsClient.d.ts +0 -6
- package/dist/wsClient.d.ts.map +0 -1
- package/dist/wsClient.js +0 -156
- package/dist/wsClient.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enrichers.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/enrichers.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from "vitest";
|
|
2
|
-
import { derivePrUrl } from "../enrichers/pr.js";
|
|
3
|
-
import { parseTranscript } from "../enrichers/transcript.js";
|
|
4
|
-
describe("PR URL enricher", () => {
|
|
5
|
-
it("derives GitHub PR search URL from HTTPS remote", () => {
|
|
6
|
-
const url = derivePrUrl("https://github.com/user/repo.git", "feat/my-branch");
|
|
7
|
-
expect(url).toContain("github.com/user/repo/pulls");
|
|
8
|
-
expect(url).toContain("head:feat%2Fmy-branch");
|
|
9
|
-
});
|
|
10
|
-
it("handles SSH remote URLs", () => {
|
|
11
|
-
const url = derivePrUrl("git@github.com:user/repo.git", "fix/bug");
|
|
12
|
-
expect(url).toContain("github.com/user/repo/pulls");
|
|
13
|
-
expect(url).toContain("fix%2Fbug");
|
|
14
|
-
});
|
|
15
|
-
it("returns null for non-GitHub remotes", () => {
|
|
16
|
-
expect(derivePrUrl("https://gitlab.com/user/repo.git", "main")).toBeNull();
|
|
17
|
-
});
|
|
18
|
-
it("returns null for empty inputs", () => {
|
|
19
|
-
expect(derivePrUrl("", "main")).toBeNull();
|
|
20
|
-
expect(derivePrUrl("https://github.com/u/r", "")).toBeNull();
|
|
21
|
-
});
|
|
22
|
-
});
|
|
23
|
-
describe("Transcript parser", () => {
|
|
24
|
-
it("extracts model name", () => {
|
|
25
|
-
const result = parseTranscript("Using model: claude-sonnet-4-5");
|
|
26
|
-
expect(result.model).toBe("claude-sonnet-4-5");
|
|
27
|
-
});
|
|
28
|
-
it("extracts context percentage", () => {
|
|
29
|
-
const result = parseTranscript("context: 61%");
|
|
30
|
-
expect(result.contextPercent).toBe(61);
|
|
31
|
-
});
|
|
32
|
-
it("extracts MCP servers", () => {
|
|
33
|
-
const result = parseTranscript("mcp: [github, filesystem]");
|
|
34
|
-
expect(result.mcpServers).toEqual(["github", "filesystem"]);
|
|
35
|
-
});
|
|
36
|
-
it("returns nulls for empty input", () => {
|
|
37
|
-
const result = parseTranscript("");
|
|
38
|
-
expect(result.model).toBeNull();
|
|
39
|
-
expect(result.contextPercent).toBeNull();
|
|
40
|
-
expect(result.mcpServers).toBeNull();
|
|
41
|
-
});
|
|
42
|
-
it("handles GPT model names", () => {
|
|
43
|
-
const result = parseTranscript("model: gpt-4o-mini");
|
|
44
|
-
expect(result.model).toBe("gpt-4o-mini");
|
|
45
|
-
});
|
|
46
|
-
});
|
|
47
|
-
//# sourceMappingURL=enrichers.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enrichers.test.js","sourceRoot":"","sources":["../../src/__tests__/enrichers.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tmux.integration.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/tmux.integration.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Integration tests for tmux key-sending approaches.
|
|
3
|
-
*
|
|
4
|
-
* Key findings from empirical testing:
|
|
5
|
-
* - Both hex mode (buildSendKeysCmd) and plain send-keys (buildSendMessageCmd) deliver
|
|
6
|
-
* the SAME bytes to the running program. For 'hello world' + Enter, both deliver
|
|
7
|
-
* the string as a single data event with bytes [68 65 6c 6c 6f 20 77 6f 72 6c 64 0d].
|
|
8
|
-
* - readline.emitKeypressEvents (used by Ink/Codex internally) correctly parses a
|
|
9
|
-
* batched data event into individual keypress events: h, e, l, l, o, ..., return.
|
|
10
|
-
* - However, Ink TUIs may be mid-render when input arrives; sending chars one at a
|
|
11
|
-
* time (with 20ms delays) is more reliable for interactive TUIs.
|
|
12
|
-
*
|
|
13
|
-
* Skipped automatically if tmux is not available.
|
|
14
|
-
*/
|
|
15
|
-
import { describe, it, expect, afterEach } from "vitest";
|
|
16
|
-
import { execSync } from "node:child_process";
|
|
17
|
-
import * as fs from "node:fs";
|
|
18
|
-
import * as os from "node:os";
|
|
19
|
-
import * as path from "node:path";
|
|
20
|
-
import { isTmuxAvailable, tmuxExec, buildSendKeysCmd, buildSendMessageCmd, buildCapturePaneCmd, sanitizeShellArg, } from "../tmux.js";
|
|
21
|
-
const AVAILABLE = isTmuxAvailable();
|
|
22
|
-
const PREFIX = `agtd-itest-${Date.now()}`;
|
|
23
|
-
function killSession(name) {
|
|
24
|
-
try {
|
|
25
|
-
execSync(`tmux kill-session -t '${sanitizeShellArg(name)}'`, {
|
|
26
|
-
stdio: "pipe",
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
catch { }
|
|
30
|
-
}
|
|
31
|
-
function newSession(name) {
|
|
32
|
-
tmuxExec(`tmux new-session -d -s '${sanitizeShellArg(name)}'`);
|
|
33
|
-
}
|
|
34
|
-
/** Poll capture-pane every 100 ms until pattern matches or timeout. */
|
|
35
|
-
async function waitFor(session, pattern, timeoutMs = 5000) {
|
|
36
|
-
const deadline = Date.now() + timeoutMs;
|
|
37
|
-
while (Date.now() < deadline) {
|
|
38
|
-
const out = tmuxExec(buildCapturePaneCmd(session));
|
|
39
|
-
if (pattern.test(out))
|
|
40
|
-
return out;
|
|
41
|
-
await new Promise((r) => setTimeout(r, 100));
|
|
42
|
-
}
|
|
43
|
-
return tmuxExec(buildCapturePaneCmd(session));
|
|
44
|
-
}
|
|
45
|
-
function writeTmpScript(code) {
|
|
46
|
-
const dir = fs.mkdtempSync(path.join(os.tmpdir(), "agtd-test-"));
|
|
47
|
-
const file = path.join(dir, "script.mjs");
|
|
48
|
-
fs.writeFileSync(file, code);
|
|
49
|
-
return file;
|
|
50
|
-
}
|
|
51
|
-
// ── Verify byte delivery ──────────────────────────────────────────────────
|
|
52
|
-
describe.skipIf(!AVAILABLE)("tmux byte delivery — both send approaches", () => {
|
|
53
|
-
const session = `${PREFIX}-bytes`;
|
|
54
|
-
afterEach(() => killSession(session));
|
|
55
|
-
// Raw-mode Node.js script that logs each keypress (uses readline.emitKeypressEvents
|
|
56
|
-
// internally, same as Ink/Codex)
|
|
57
|
-
const SCRIPT = writeTmpScript(`
|
|
58
|
-
import readline from 'readline';
|
|
59
|
-
readline.emitKeypressEvents(process.stdin);
|
|
60
|
-
if (process.stdin.isTTY) process.stdin.setRawMode(true);
|
|
61
|
-
process.stdin.resume();
|
|
62
|
-
process.stdin.setEncoding('utf8');
|
|
63
|
-
let buf = '';
|
|
64
|
-
process.stdin.on('keypress', (ch, key) => {
|
|
65
|
-
if (key?.name === 'return') {
|
|
66
|
-
process.stdout.write('GOT:' + buf + '\\n');
|
|
67
|
-
buf = '';
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
if (key?.ctrl && key?.name === 'c') process.exit(0);
|
|
71
|
-
if (ch) buf += ch;
|
|
72
|
-
});
|
|
73
|
-
process.stdout.write('READY\\n');
|
|
74
|
-
`);
|
|
75
|
-
async function setup() {
|
|
76
|
-
killSession(session);
|
|
77
|
-
newSession(session);
|
|
78
|
-
tmuxExec(`tmux send-keys -t '${sanitizeShellArg(session)}' 'node ${SCRIPT}' Enter`);
|
|
79
|
-
await waitFor(session, /READY/, 3000);
|
|
80
|
-
await new Promise((r) => setTimeout(r, 300));
|
|
81
|
-
}
|
|
82
|
-
it("buildSendMessageCmd ('text' Enter) delivers chars via emitKeypressEvents", async () => {
|
|
83
|
-
await setup();
|
|
84
|
-
tmuxExec(buildSendMessageCmd(session, "hello world"));
|
|
85
|
-
const out = await waitFor(session, /GOT:/, 3000);
|
|
86
|
-
expect(out).toContain("GOT:hello world");
|
|
87
|
-
});
|
|
88
|
-
it("char-by-char hex mode (user-message approach) delivers chars correctly", async () => {
|
|
89
|
-
await setup();
|
|
90
|
-
// Simulate what the user-message handler now does: send each char, then CR
|
|
91
|
-
for (const char of "hello chars") {
|
|
92
|
-
tmuxExec(buildSendKeysCmd(session, char));
|
|
93
|
-
await new Promise((r) => setTimeout(r, 20));
|
|
94
|
-
}
|
|
95
|
-
tmuxExec(buildSendKeysCmd(session, "\r"));
|
|
96
|
-
const out = await waitFor(session, /GOT:/, 3000);
|
|
97
|
-
expect(out).toContain("GOT:hello chars");
|
|
98
|
-
});
|
|
99
|
-
it("messages with special characters (quotes, backticks) are delivered", async () => {
|
|
100
|
-
await setup();
|
|
101
|
-
const msg = "fix it's bug";
|
|
102
|
-
// char-by-char (agent approach)
|
|
103
|
-
for (const char of msg) {
|
|
104
|
-
tmuxExec(buildSendKeysCmd(session, char));
|
|
105
|
-
await new Promise((r) => setTimeout(r, 20));
|
|
106
|
-
}
|
|
107
|
-
tmuxExec(buildSendKeysCmd(session, "\r"));
|
|
108
|
-
const out = await waitFor(session, /GOT:/, 3000);
|
|
109
|
-
expect(out).toContain(`GOT:${msg}`);
|
|
110
|
-
});
|
|
111
|
-
}, { timeout: 30000 });
|
|
112
|
-
//# sourceMappingURL=tmux.integration.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tmux.integration.test.js","sourceRoot":"","sources":["../../src/__tests__/tmux.integration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tmux.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/tmux.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from "vitest";
|
|
2
|
-
import { buildCreateSessionCmd, buildCreateWindowCmd, buildSendKeysCmd, buildCapturePaneCmd, } from "../tmux.js";
|
|
3
|
-
describe("tmux command builders", () => {
|
|
4
|
-
it("builds create session command", () => {
|
|
5
|
-
const cmd = buildCreateSessionCmd("aidash-s1", "/code/proj");
|
|
6
|
-
expect(cmd).toBe("tmux new-session -d -s 'aidash-s1' -c '/code/proj'");
|
|
7
|
-
});
|
|
8
|
-
it("builds create window command", () => {
|
|
9
|
-
const cmd = buildCreateWindowCmd("aidash-s1", "my-window", "/code/proj");
|
|
10
|
-
expect(cmd).toBe("tmux new-window -t 'aidash-s1' -n 'my-window' -c '/code/proj'");
|
|
11
|
-
});
|
|
12
|
-
it("builds send-keys command with hex-encoded bytes", () => {
|
|
13
|
-
const cmd = buildSendKeysCmd("aidash-s1", "hi");
|
|
14
|
-
// "hi" = 0x68 0x69
|
|
15
|
-
expect(cmd).toBe("tmux send-keys -t 'aidash-s1' -H 68 69");
|
|
16
|
-
});
|
|
17
|
-
it("sends Enter key as hex 0d (carriage return)", () => {
|
|
18
|
-
const cmd = buildSendKeysCmd("aidash-s1", "\r");
|
|
19
|
-
expect(cmd).toBe("tmux send-keys -t 'aidash-s1' -H 0d");
|
|
20
|
-
});
|
|
21
|
-
it("builds capture-pane command with ANSI escape preservation", () => {
|
|
22
|
-
const cmd = buildCapturePaneCmd("aidash-s1");
|
|
23
|
-
expect(cmd).toBe("tmux capture-pane -t 'aidash-s1' -p -e -S -");
|
|
24
|
-
});
|
|
25
|
-
});
|
|
26
|
-
//# sourceMappingURL=tmux.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tmux.test.js","sourceRoot":"","sources":["../../src/__tests__/tmux.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,GAAG,GAAG,qBAAqB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAC7D,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACtC,MAAM,GAAG,GAAG,oBAAoB,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;QACzE,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CACd,+DAA+D,CAChE,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,GAAG,GAAG,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAChD,mBAAmB;QACnB,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,GAAG,GAAG,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAChD,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,GAAG,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAC7C,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transcriptAdapters.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/transcriptAdapters.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, beforeAll, afterAll } from "vitest";
|
|
2
|
-
import { writeFileSync, mkdirSync, rmSync } from "node:fs";
|
|
3
|
-
import { join } from "node:path";
|
|
4
|
-
import { tmpdir } from "node:os";
|
|
5
|
-
import { claudeCodeAdapter } from "../transcriptAdapters/claude-code.js";
|
|
6
|
-
import { codexAdapter } from "../transcriptAdapters/codex.js";
|
|
7
|
-
const FAKE_SESSION = {
|
|
8
|
-
id: "sess_test",
|
|
9
|
-
deviceId: "dev1",
|
|
10
|
-
projectId: null,
|
|
11
|
-
agentType: "claude-code",
|
|
12
|
-
agentCommand: "",
|
|
13
|
-
cwd: "/projects/myapp",
|
|
14
|
-
branch: "main",
|
|
15
|
-
status: "idle",
|
|
16
|
-
task: "",
|
|
17
|
-
model: null,
|
|
18
|
-
contextPercent: null,
|
|
19
|
-
mcpServers: null,
|
|
20
|
-
prUrl: null,
|
|
21
|
-
tmuxSession: "aidash-sess_test",
|
|
22
|
-
tmuxWindow: "claude",
|
|
23
|
-
lastHeartbeatAt: new Date().toISOString(),
|
|
24
|
-
codexThreadId: null,
|
|
25
|
-
};
|
|
26
|
-
const USER_LINE = JSON.stringify({
|
|
27
|
-
type: "user",
|
|
28
|
-
uuid: "uuid-1",
|
|
29
|
-
timestamp: "2026-01-01T00:00:00Z",
|
|
30
|
-
message: { content: [{ type: "text", text: "Hello Claude" }] },
|
|
31
|
-
});
|
|
32
|
-
const ASSISTANT_LINE = JSON.stringify({
|
|
33
|
-
type: "assistant",
|
|
34
|
-
uuid: "uuid-2",
|
|
35
|
-
timestamp: "2026-01-01T00:00:01Z",
|
|
36
|
-
message: {
|
|
37
|
-
content: [{ type: "text", text: "Hi there!" }],
|
|
38
|
-
model: "claude-opus-4-6",
|
|
39
|
-
usage: { input_tokens: 10, output_tokens: 5 },
|
|
40
|
-
},
|
|
41
|
-
});
|
|
42
|
-
describe("claudeCodeAdapter", () => {
|
|
43
|
-
const tmpDir = join(tmpdir(), "agtd-test-" + Date.now());
|
|
44
|
-
// The adapter constructs: join(homeDir, ".claude", "projects", cwd.replace(/\//g, "-"))
|
|
45
|
-
// For cwd="/projects/myapp" the dir name is "-projects-myapp"
|
|
46
|
-
const projectDir = join(tmpDir, ".claude", "projects", "-projects-myapp");
|
|
47
|
-
const jsonlPath = join(projectDir, "session.jsonl");
|
|
48
|
-
beforeAll(() => {
|
|
49
|
-
mkdirSync(projectDir, { recursive: true });
|
|
50
|
-
writeFileSync(jsonlPath, [USER_LINE, ASSISTANT_LINE].join("\n") + "\n");
|
|
51
|
-
});
|
|
52
|
-
afterAll(() => {
|
|
53
|
-
rmSync(tmpDir, { recursive: true, force: true });
|
|
54
|
-
});
|
|
55
|
-
it("findFile returns path when project dir contains a jsonl file", () => {
|
|
56
|
-
// Pass tmpDir as homeDir so the adapter looks in tmpDir/.claude/projects/...
|
|
57
|
-
const path = claudeCodeAdapter.findFile(FAKE_SESSION, tmpDir);
|
|
58
|
-
expect(path).toBe(jsonlPath);
|
|
59
|
-
});
|
|
60
|
-
it("parse returns messages with correct roles", () => {
|
|
61
|
-
const result = claudeCodeAdapter.parse(jsonlPath, 0, 50);
|
|
62
|
-
expect(result.messages).toHaveLength(2);
|
|
63
|
-
expect(result.messages[0].role).toBe("user");
|
|
64
|
-
const c0 = result.messages[0].content[0];
|
|
65
|
-
expect(c0.type).toBe("text");
|
|
66
|
-
expect(c0.text).toBe("Hello Claude");
|
|
67
|
-
expect(result.messages[1].role).toBe("assistant");
|
|
68
|
-
expect(result.messages[1].model).toBe("claude-opus-4-6");
|
|
69
|
-
});
|
|
70
|
-
it("parse respects cursor and limit", () => {
|
|
71
|
-
const result = claudeCodeAdapter.parse(jsonlPath, 1, 1);
|
|
72
|
-
expect(result.messages).toHaveLength(1);
|
|
73
|
-
expect(result.messages[0].role).toBe("assistant");
|
|
74
|
-
expect(result.hasMore).toBe(false);
|
|
75
|
-
expect(result.total).toBe(2);
|
|
76
|
-
});
|
|
77
|
-
it("parse returns empty result for missing file", () => {
|
|
78
|
-
const result = claudeCodeAdapter.parse("/nonexistent/path.jsonl", 0, 50);
|
|
79
|
-
expect(result.messages).toHaveLength(0);
|
|
80
|
-
expect(result.total).toBe(0);
|
|
81
|
-
expect(result.hasMore).toBe(false);
|
|
82
|
-
});
|
|
83
|
-
});
|
|
84
|
-
const CODEX_USER_LINE = JSON.stringify({
|
|
85
|
-
type: "response_item",
|
|
86
|
-
timestamp: "2026-01-01T00:00:00Z",
|
|
87
|
-
payload: {
|
|
88
|
-
type: "message",
|
|
89
|
-
role: "user",
|
|
90
|
-
content: [{ type: "text", text: "fix the bug" }],
|
|
91
|
-
},
|
|
92
|
-
});
|
|
93
|
-
const CODEX_ASSISTANT_LINE = JSON.stringify({
|
|
94
|
-
type: "response_item",
|
|
95
|
-
timestamp: "2026-01-01T00:00:01Z",
|
|
96
|
-
payload: {
|
|
97
|
-
type: "message",
|
|
98
|
-
role: "assistant",
|
|
99
|
-
content: [{ type: "text", text: "Done!" }],
|
|
100
|
-
},
|
|
101
|
-
});
|
|
102
|
-
describe("codexAdapter", () => {
|
|
103
|
-
const codexTmpDir = join(tmpdir(), "agtd-codex-test-" + Date.now());
|
|
104
|
-
// Codex sessions are stored under sessions/YEAR/MONTH/DAY/file.jsonl
|
|
105
|
-
const sessionDir = join(codexTmpDir, ".codex", "sessions", "2026", "01", "01");
|
|
106
|
-
const jsonlPath = join(sessionDir, "session.jsonl");
|
|
107
|
-
beforeAll(() => {
|
|
108
|
-
mkdirSync(sessionDir, { recursive: true });
|
|
109
|
-
writeFileSync(jsonlPath, [CODEX_USER_LINE, CODEX_ASSISTANT_LINE].join("\n") + "\n");
|
|
110
|
-
});
|
|
111
|
-
afterAll(() => {
|
|
112
|
-
rmSync(codexTmpDir, { recursive: true, force: true });
|
|
113
|
-
});
|
|
114
|
-
it("findFile returns latest jsonl in sessions dir when SQLite absent", () => {
|
|
115
|
-
const CODEX_SESSION = {
|
|
116
|
-
id: "codex-123",
|
|
117
|
-
cwd: "/projects/x",
|
|
118
|
-
agentType: "codex",
|
|
119
|
-
};
|
|
120
|
-
const path = codexAdapter.findFile(CODEX_SESSION, codexTmpDir);
|
|
121
|
-
expect(path).toBe(jsonlPath);
|
|
122
|
-
});
|
|
123
|
-
it("parse returns user and assistant messages", () => {
|
|
124
|
-
const result = codexAdapter.parse(jsonlPath, 0, 50);
|
|
125
|
-
expect(result.messages).toHaveLength(2);
|
|
126
|
-
expect(result.messages[0].role).toBe("user");
|
|
127
|
-
const c0 = result.messages[0].content[0];
|
|
128
|
-
expect(c0.type).toBe("text");
|
|
129
|
-
expect(c0.text).toBe("fix the bug");
|
|
130
|
-
expect(result.messages[1].role).toBe("assistant");
|
|
131
|
-
});
|
|
132
|
-
});
|
|
133
|
-
//# sourceMappingURL=transcriptAdapters.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transcriptAdapters.test.js","sourceRoot":"","sources":["../../src/__tests__/transcriptAdapters.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"claude-code.d.ts","sourceRoot":"","sources":["../../src/adapters/claude-code.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAM/C,eAAO,MAAM,iBAAiB,EAAE,YA6C/B,CAAC"}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
function escapeForShell(str) {
|
|
2
|
-
return str.replace(/'/g, "'\\''");
|
|
3
|
-
}
|
|
4
|
-
export const claudeCodeAdapter = {
|
|
5
|
-
type: "claude-code",
|
|
6
|
-
buildSpawnCommand(_task, cwd) {
|
|
7
|
-
const escapedCwd = escapeForShell(cwd);
|
|
8
|
-
// Start in interactive mode (no -p flag which exits after one response)
|
|
9
|
-
return `cd '${escapedCwd}' && claude`;
|
|
10
|
-
},
|
|
11
|
-
hookInstallInstructions() {
|
|
12
|
-
return [
|
|
13
|
-
"To install the Claude Code hook for the agent dashboard:",
|
|
14
|
-
"",
|
|
15
|
-
"1. Edit (or create) ~/.claude/hooks.json",
|
|
16
|
-
"2. Add the following hook configuration:",
|
|
17
|
-
"",
|
|
18
|
-
" {",
|
|
19
|
-
' "hooks": {',
|
|
20
|
-
' "PreToolUse": [',
|
|
21
|
-
" {",
|
|
22
|
-
' "type": "command",',
|
|
23
|
-
' "command": "/path/to/packages/agent/src/hooks/claude-hook.sh PreToolUse"',
|
|
24
|
-
" }",
|
|
25
|
-
" ],",
|
|
26
|
-
' "PostToolUse": [',
|
|
27
|
-
" {",
|
|
28
|
-
' "type": "command",',
|
|
29
|
-
' "command": "/path/to/packages/agent/src/hooks/claude-hook.sh PostToolUse"',
|
|
30
|
-
" }",
|
|
31
|
-
" ],",
|
|
32
|
-
' "Stop": [',
|
|
33
|
-
" {",
|
|
34
|
-
' "type": "command",',
|
|
35
|
-
' "command": "/path/to/packages/agent/src/hooks/claude-hook.sh Stop"',
|
|
36
|
-
" }",
|
|
37
|
-
" ]",
|
|
38
|
-
" }",
|
|
39
|
-
" }",
|
|
40
|
-
"",
|
|
41
|
-
"3. Set the following environment variables:",
|
|
42
|
-
" - AGENT_DASHBOARD_BACKEND (e.g., http://localhost:3001)",
|
|
43
|
-
" - AGENT_DASHBOARD_DEVICE_ID",
|
|
44
|
-
" - AGENT_DASHBOARD_API_KEY",
|
|
45
|
-
].join("\n");
|
|
46
|
-
},
|
|
47
|
-
};
|
|
48
|
-
//# sourceMappingURL=claude-code.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"claude-code.js","sourceRoot":"","sources":["../../src/adapters/claude-code.ts"],"names":[],"mappings":"AAEA,SAAS,cAAc,CAAC,GAAW;IACjC,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAiB;IAC7C,IAAI,EAAE,aAAa;IAEnB,iBAAiB,CAAC,KAAa,EAAE,GAAW;QAC1C,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QACvC,wEAAwE;QACxE,OAAO,OAAO,UAAU,aAAa,CAAC;IACxC,CAAC;IAED,uBAAuB;QACrB,OAAO;YACL,0DAA0D;YAC1D,EAAE;YACF,0CAA0C;YAC1C,0CAA0C;YAC1C,EAAE;YACF,MAAM;YACN,iBAAiB;YACjB,wBAAwB;YACxB,YAAY;YACZ,+BAA+B;YAC/B,qFAAqF;YACrF,YAAY;YACZ,WAAW;YACX,yBAAyB;YACzB,YAAY;YACZ,+BAA+B;YAC/B,sFAAsF;YACtF,YAAY;YACZ,WAAW;YACX,kBAAkB;YAClB,YAAY;YACZ,+BAA+B;YAC/B,+EAA+E;YAC/E,YAAY;YACZ,UAAU;YACV,QAAQ;YACR,MAAM;YACN,EAAE;YACF,6CAA6C;YAC7C,4DAA4D;YAC5D,gCAAgC;YAChC,8BAA8B;SAC/B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;CACF,CAAC"}
|
package/dist/adapters/codex.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../src/adapters/codex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAM/C,eAAO,MAAM,YAAY,EAAE,YA8B1B,CAAC"}
|
package/dist/adapters/codex.js
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
function escapeForShell(str) {
|
|
2
|
-
return str.replace(/'/g, "'\\''");
|
|
3
|
-
}
|
|
4
|
-
export const codexAdapter = {
|
|
5
|
-
type: "codex",
|
|
6
|
-
buildSpawnCommand(task, cwd) {
|
|
7
|
-
const escapedTask = escapeForShell(task);
|
|
8
|
-
const escapedCwd = escapeForShell(cwd);
|
|
9
|
-
return `cd '${escapedCwd}' && codex '${escapedTask}'`;
|
|
10
|
-
},
|
|
11
|
-
hookInstallInstructions() {
|
|
12
|
-
return [
|
|
13
|
-
"To install the Codex hook for the agent dashboard:",
|
|
14
|
-
"",
|
|
15
|
-
"1. Use the codex-hook.sh wrapper script instead of calling codex directly:",
|
|
16
|
-
"",
|
|
17
|
-
" ./packages/agent/src/hooks/codex-hook.sh 'your task here'",
|
|
18
|
-
"",
|
|
19
|
-
" The wrapper script will:",
|
|
20
|
-
" - Send a working heartbeat before running codex",
|
|
21
|
-
" - Start a background keepalive loop (every 10s)",
|
|
22
|
-
" - Run codex with the provided task",
|
|
23
|
-
" - Send an idle heartbeat on exit",
|
|
24
|
-
"",
|
|
25
|
-
"2. Set the following environment variables:",
|
|
26
|
-
" - AGENT_DASHBOARD_BACKEND (e.g., http://localhost:3001)",
|
|
27
|
-
" - AGENT_DASHBOARD_DEVICE_ID",
|
|
28
|
-
" - AGENT_DASHBOARD_API_KEY",
|
|
29
|
-
" - AGENT_DASHBOARD_SESSION_ID (unique session identifier)",
|
|
30
|
-
].join("\n");
|
|
31
|
-
},
|
|
32
|
-
};
|
|
33
|
-
//# sourceMappingURL=codex.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codex.js","sourceRoot":"","sources":["../../src/adapters/codex.ts"],"names":[],"mappings":"AAEA,SAAS,cAAc,CAAC,GAAW;IACjC,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,IAAI,EAAE,OAAO;IAEb,iBAAiB,CAAC,IAAY,EAAE,GAAW;QACzC,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QACvC,OAAO,OAAO,UAAU,eAAe,WAAW,GAAG,CAAC;IACxD,CAAC;IAED,uBAAuB;QACrB,OAAO;YACL,oDAAoD;YACpD,EAAE;YACF,4EAA4E;YAC5E,EAAE;YACF,8DAA8D;YAC9D,EAAE;YACF,6BAA6B;YAC7B,oDAAoD;YACpD,oDAAoD;YACpD,uCAAuC;YACvC,qCAAqC;YACrC,EAAE;YACF,6CAA6C;YAC7C,4DAA4D;YAC5D,gCAAgC;YAChC,8BAA8B;YAC9B,6DAA6D;SAC9D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;CACF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generic.d.ts","sourceRoot":"","sources":["../../src/adapters/generic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAM/C,eAAO,MAAM,cAAc,EAAE,YAmC5B,CAAC"}
|
package/dist/adapters/generic.js
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
function escapeForShell(str) {
|
|
2
|
-
return str.replace(/'/g, "'\\''");
|
|
3
|
-
}
|
|
4
|
-
export const genericAdapter = {
|
|
5
|
-
type: "generic",
|
|
6
|
-
buildSpawnCommand(task, cwd) {
|
|
7
|
-
const escapedTask = escapeForShell(task);
|
|
8
|
-
const escapedCwd = escapeForShell(cwd);
|
|
9
|
-
return `cd '${escapedCwd}' && echo 'Task: ${escapedTask}'`;
|
|
10
|
-
},
|
|
11
|
-
hookInstallInstructions() {
|
|
12
|
-
return [
|
|
13
|
-
"To send heartbeats from a generic agent to the dashboard:",
|
|
14
|
-
"",
|
|
15
|
-
"1. Use the generic-hook.sh script to send manual heartbeat updates:",
|
|
16
|
-
"",
|
|
17
|
-
" ./packages/agent/src/hooks/generic-hook.sh <session_id> <status> [task]",
|
|
18
|
-
"",
|
|
19
|
-
" Examples:",
|
|
20
|
-
' ./packages/agent/src/hooks/generic-hook.sh my-session working "Implementing feature X"',
|
|
21
|
-
" ./packages/agent/src/hooks/generic-hook.sh my-session idle",
|
|
22
|
-
" ./packages/agent/src/hooks/generic-hook.sh my-session awaiting_permission",
|
|
23
|
-
"",
|
|
24
|
-
"2. Or send heartbeats directly via curl:",
|
|
25
|
-
"",
|
|
26
|
-
" curl -X POST $AGENT_DASHBOARD_BACKEND/api/agent/heartbeat \\",
|
|
27
|
-
' -H "Content-Type: application/json" \\',
|
|
28
|
-
' -H "x-api-key: $AGENT_DASHBOARD_API_KEY" \\',
|
|
29
|
-
" -d '{\"deviceId\": \"...\", \"sessionId\": \"...\", \"status\": \"working\"}'",
|
|
30
|
-
"",
|
|
31
|
-
"3. Set the following environment variables:",
|
|
32
|
-
" - AGENT_DASHBOARD_BACKEND (e.g., http://localhost:3001)",
|
|
33
|
-
" - AGENT_DASHBOARD_DEVICE_ID",
|
|
34
|
-
" - AGENT_DASHBOARD_API_KEY",
|
|
35
|
-
].join("\n");
|
|
36
|
-
},
|
|
37
|
-
};
|
|
38
|
-
//# sourceMappingURL=generic.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generic.js","sourceRoot":"","sources":["../../src/adapters/generic.ts"],"names":[],"mappings":"AAEA,SAAS,cAAc,CAAC,GAAW;IACjC,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAiB;IAC1C,IAAI,EAAE,SAAS;IAEf,iBAAiB,CAAC,IAAY,EAAE,GAAW;QACzC,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QACvC,OAAO,OAAO,UAAU,oBAAoB,WAAW,GAAG,CAAC;IAC7D,CAAC;IAED,uBAAuB;QACrB,OAAO;YACL,2DAA2D;YAC3D,EAAE;YACF,qEAAqE;YACrE,EAAE;YACF,4EAA4E;YAC5E,EAAE;YACF,cAAc;YACd,2FAA2F;YAC3F,+DAA+D;YAC/D,8EAA8E;YAC9E,EAAE;YACF,0CAA0C;YAC1C,EAAE;YACF,iEAAiE;YACjE,6CAA6C;YAC7C,kDAAkD;YAClD,oFAAoF;YACpF,EAAE;YACF,6CAA6C;YAC7C,4DAA4D;YAC5D,gCAAgC;YAChC,8BAA8B;SAC/B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;CACF,CAAC"}
|
package/dist/adapters/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrD,uBAAuB,IAAI,MAAM,CAAC;CACnC;AAYD,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,CAE1D"}
|
package/dist/adapters/index.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { claudeCodeAdapter } from "./claude-code.js";
|
|
2
|
-
import { codexAdapter } from "./codex.js";
|
|
3
|
-
import { genericAdapter } from "./generic.js";
|
|
4
|
-
const adapters = {
|
|
5
|
-
"claude-code": claudeCodeAdapter,
|
|
6
|
-
"codex": codexAdapter,
|
|
7
|
-
"generic": genericAdapter,
|
|
8
|
-
};
|
|
9
|
-
export function getAdapter(agentType) {
|
|
10
|
-
return adapters[agentType] || genericAdapter;
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,QAAQ,GAAiC;IAC7C,aAAa,EAAE,iBAAiB;IAChC,OAAO,EAAE,YAAY;IACrB,SAAS,EAAE,cAAc;CAC1B,CAAC;AAEF,MAAM,UAAU,UAAU,CAAC,SAAiB;IAC1C,OAAO,QAAQ,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC;AAC/C,CAAC"}
|
package/dist/agent.d.ts
DELETED
package/dist/agent.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AA2B/C,wBAAsB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBnE"}
|
package/dist/agent.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAErD,KAAK,UAAU,cAAc,CAC3B,MAAmB,EACnB,UAAU,GAAG,EAAE;IAEf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;YAC7B,OAAO;QACT,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CACT,kCAAkC,QAAQ,SAAS,CAAC,GAAG,CAAC,IAAI,UAAU,GAAG,CAC1E,CAAC;YACF,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAmB;IAClD,OAAO,CAAC,GAAG,CAAC,8BAA8B,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;IAE7C,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IAC7B,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;IAC3B,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAEzB,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAE5B,WAAW,CAAC,KAAK,IAAI,EAAE;QACrB,IAAI,CAAC;YACH,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;QACxC,CAAC;IACH,CAAC,EAAE,qBAAqB,CAAC,CAAC;IAE1B,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;AACtD,CAAC;AAED,uCAAuC;AACvC,MAAM,WAAW,GACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACf,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;AAEhE,IAAI,WAAW,EAAE,CAAC;IAChB,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;IACtC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QAC7B,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/dist/cli.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
interface ParsedArgs {
|
|
2
|
-
init: boolean;
|
|
3
|
-
backend?: string;
|
|
4
|
-
apiKey?: string;
|
|
5
|
-
deviceName?: string;
|
|
6
|
-
configPath?: string;
|
|
7
|
-
help: boolean;
|
|
8
|
-
}
|
|
9
|
-
export declare function parseArgs(argv: string[]): ParsedArgs;
|
|
10
|
-
export {};
|
|
11
|
-
//# sourceMappingURL=cli.d.ts.map
|
package/dist/cli.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAaA,UAAU,UAAU;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,OAAO,CAAC;CACf;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAmCpD"}
|
package/dist/cli.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|