@multiplayer-app/agent 0.1.9 → 0.1.10
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/README.md +106 -0
- package/dist/agent/definition.d.ts +22 -0
- package/dist/agent/definition.d.ts.map +1 -0
- package/dist/agent/definition.js +3 -0
- package/dist/agent/definition.js.map +1 -0
- package/dist/agent/definition.test.d.ts +2 -0
- package/dist/agent/definition.test.d.ts.map +1 -0
- package/dist/agent/definition.test.js +40 -0
- package/dist/agent/definition.test.js.map +1 -0
- package/dist/agent/profiles/coding.d.ts +4 -0
- package/dist/agent/profiles/coding.d.ts.map +1 -0
- package/dist/agent/profiles/coding.js +17 -0
- package/dist/agent/profiles/coding.js.map +1 -0
- package/dist/agent/profiles/index.d.ts +4 -0
- package/dist/agent/profiles/index.d.ts.map +1 -0
- package/dist/agent/profiles/index.js +9 -0
- package/dist/agent/profiles/index.js.map +1 -0
- package/dist/agent/profiles/research.d.ts +4 -0
- package/dist/agent/profiles/research.d.ts.map +1 -0
- package/dist/agent/profiles/research.js +43 -0
- package/dist/agent/profiles/research.js.map +1 -0
- package/dist/agent/turn-runner.d.ts +37 -0
- package/dist/agent/turn-runner.d.ts.map +1 -0
- package/dist/agent/turn-runner.js +94 -0
- package/dist/agent/turn-runner.js.map +1 -0
- package/dist/agent/turn-runner.test.d.ts +2 -0
- package/dist/agent/turn-runner.test.d.ts.map +1 -0
- package/dist/agent/turn-runner.test.js +181 -0
- package/dist/agent/turn-runner.test.js.map +1 -0
- package/dist/index.d.ts +11 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -10
- package/dist/index.js.map +1 -1
- package/dist/models/attribution.d.ts.map +1 -0
- package/dist/models/attribution.js.map +1 -0
- package/dist/{model.d.ts → models/resolve-model.d.ts} +2 -2
- package/dist/models/resolve-model.d.ts.map +1 -0
- package/dist/{model.js → models/resolve-model.js} +1 -1
- package/dist/models/resolve-model.js.map +1 -0
- package/dist/models/usage.d.ts +7 -0
- package/dist/models/usage.d.ts.map +1 -0
- package/dist/models/usage.js +13 -0
- package/dist/models/usage.js.map +1 -0
- package/dist/{git-sync.d.ts → persistence/git-sync.d.ts} +1 -1
- package/dist/persistence/git-sync.d.ts.map +1 -0
- package/dist/persistence/git-sync.js.map +1 -0
- package/dist/persistence/git-sync.test.d.ts.map +1 -0
- package/dist/{git-sync.test.js → persistence/git-sync.test.js} +2 -2
- package/dist/persistence/git-sync.test.js.map +1 -0
- package/dist/{session-storage-sync.d.ts → persistence/snapshot-sync.d.ts} +2 -2
- package/dist/persistence/snapshot-sync.d.ts.map +1 -0
- package/dist/{session-storage-sync.js → persistence/snapshot-sync.js} +1 -1
- package/dist/persistence/snapshot-sync.js.map +1 -0
- package/dist/persistence/snapshot-sync.test.d.ts +2 -0
- package/dist/persistence/snapshot-sync.test.d.ts.map +1 -0
- package/dist/{session-storage-sync.test.js → persistence/snapshot-sync.test.js} +3 -3
- package/dist/persistence/snapshot-sync.test.js.map +1 -0
- package/dist/persistence/workspace.d.ts +17 -0
- package/dist/persistence/workspace.d.ts.map +1 -0
- package/dist/persistence/workspace.js +26 -0
- package/dist/persistence/workspace.js.map +1 -0
- package/dist/persistence/workspace.test.d.ts +2 -0
- package/dist/persistence/workspace.test.d.ts.map +1 -0
- package/dist/persistence/workspace.test.js +38 -0
- package/dist/persistence/workspace.test.js.map +1 -0
- package/dist/research/extraction-tool.d.ts +6 -0
- package/dist/research/extraction-tool.d.ts.map +1 -0
- package/dist/research/extraction-tool.js +67 -0
- package/dist/research/extraction-tool.js.map +1 -0
- package/dist/research/extraction-tool.test.d.ts +2 -0
- package/dist/research/extraction-tool.test.d.ts.map +1 -0
- package/dist/research/extraction-tool.test.js +100 -0
- package/dist/research/extraction-tool.test.js.map +1 -0
- package/dist/research/filingramp/attachment-tools.d.ts +4 -0
- package/dist/research/filingramp/attachment-tools.d.ts.map +1 -0
- package/dist/research/filingramp/attachment-tools.js +99 -0
- package/dist/research/filingramp/attachment-tools.js.map +1 -0
- package/dist/research/filingramp/document-search-tool.d.ts +4 -0
- package/dist/research/filingramp/document-search-tool.d.ts.map +1 -0
- package/dist/research/filingramp/document-search-tool.js +173 -0
- package/dist/research/filingramp/document-search-tool.js.map +1 -0
- package/dist/research/filingramp/filing-detail-tool.d.ts +4 -0
- package/dist/research/filingramp/filing-detail-tool.d.ts.map +1 -0
- package/dist/research/filingramp/filing-detail-tool.js +114 -0
- package/dist/research/filingramp/filing-detail-tool.js.map +1 -0
- package/dist/research/filingramp/filing-search-tools.d.ts +4 -0
- package/dist/research/filingramp/filing-search-tools.d.ts.map +1 -0
- package/dist/research/filingramp/filing-search-tools.js +207 -0
- package/dist/research/filingramp/filing-search-tools.js.map +1 -0
- package/dist/research/filingramp/shared.d.ts +48 -0
- package/dist/research/filingramp/shared.d.ts.map +1 -0
- package/dist/research/filingramp/shared.js +58 -0
- package/dist/research/filingramp/shared.js.map +1 -0
- package/dist/research/filingramp-client.d.ts +1 -1
- package/dist/research/filingramp-client.d.ts.map +1 -1
- package/dist/research/filingramp-tools.d.ts +3 -8
- package/dist/research/filingramp-tools.d.ts.map +1 -1
- package/dist/research/filingramp-tools.js +14 -597
- package/dist/research/filingramp-tools.js.map +1 -1
- package/dist/research/filingramp-tools.test.js +45 -2
- package/dist/research/filingramp-tools.test.js.map +1 -1
- package/dist/research/prompt.d.ts +1 -1
- package/dist/research/prompt.d.ts.map +1 -1
- package/dist/research/scope.d.ts +1 -1
- package/dist/research/scope.d.ts.map +1 -1
- package/dist/runtime/cli.d.ts.map +1 -0
- package/dist/{cli.js → runtime/cli.js} +3 -3
- package/dist/runtime/cli.js.map +1 -0
- package/dist/{config.d.ts → runtime/config.d.ts} +1 -1
- package/dist/runtime/config.d.ts.map +1 -0
- package/dist/{config.js → runtime/config.js} +1 -1
- package/dist/runtime/config.js.map +1 -0
- package/dist/{runtime.d.ts → runtime/index.d.ts} +2 -2
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/{runtime.js → runtime/index.js} +7 -7
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/lambda-microvm.d.ts +3 -0
- package/dist/runtime/lambda-microvm.d.ts.map +1 -0
- package/dist/{lambda-microvm-entrypoint.js → runtime/lambda-microvm.js} +4 -4
- package/dist/runtime/lambda-microvm.js.map +1 -0
- package/dist/runtime/lifecycle.test.d.ts.map +1 -0
- package/dist/{lifecycle.test.js → runtime/lifecycle.test.js} +5 -5
- package/dist/runtime/lifecycle.test.js.map +1 -0
- package/dist/session/checkpoint-timer.test.d.ts.map +1 -0
- package/dist/{checkpoint-timer.test.js → session/checkpoint-timer.test.js} +8 -8
- package/dist/session/checkpoint-timer.test.js.map +1 -0
- package/dist/session/conversation.d.ts +15 -0
- package/dist/session/conversation.d.ts.map +1 -0
- package/dist/session/conversation.js +61 -0
- package/dist/session/conversation.js.map +1 -0
- package/dist/session/conversation.test.d.ts +2 -0
- package/dist/session/conversation.test.d.ts.map +1 -0
- package/dist/session/conversation.test.js +53 -0
- package/dist/session/conversation.test.js.map +1 -0
- package/dist/session/idle-checkpoint.test.d.ts.map +1 -0
- package/dist/{idle-checkpoint.test.js → session/idle-checkpoint.test.js} +8 -4
- package/dist/session/idle-checkpoint.test.js.map +1 -0
- package/dist/session/index.d.ts +7 -0
- package/dist/session/index.d.ts.map +1 -0
- package/dist/session/index.js +16 -0
- package/dist/session/index.js.map +1 -0
- package/dist/{session.d.ts → session/runtime.d.ts} +20 -16
- package/dist/session/runtime.d.ts.map +1 -0
- package/dist/session/runtime.js +251 -0
- package/dist/session/runtime.js.map +1 -0
- package/dist/session/runtime.test.d.ts +2 -0
- package/dist/session/runtime.test.d.ts.map +1 -0
- package/dist/session/runtime.test.js +201 -0
- package/dist/session/runtime.test.js.map +1 -0
- package/dist/session/tool-context.d.ts +12 -0
- package/dist/session/tool-context.d.ts.map +1 -0
- package/dist/session/tool-context.js +3 -0
- package/dist/session/tool-context.js.map +1 -0
- package/dist/session/tools.d.ts +6 -0
- package/dist/session/tools.d.ts.map +1 -0
- package/dist/session/tools.js +97 -0
- package/dist/session/tools.js.map +1 -0
- package/dist/session/tools.test.d.ts +2 -0
- package/dist/session/tools.test.d.ts.map +1 -0
- package/dist/session/tools.test.js +55 -0
- package/dist/session/tools.test.js.map +1 -0
- package/dist/task/loop.d.ts +6 -0
- package/dist/task/loop.d.ts.map +1 -0
- package/dist/{loop.js → task/loop.js} +6 -6
- package/dist/task/loop.js.map +1 -0
- package/dist/transport/link.d.ts.map +1 -0
- package/dist/transport/link.js.map +1 -0
- package/dist/transport/protocol.d.ts.map +1 -0
- package/dist/transport/protocol.js.map +1 -0
- package/dist/transport/protocol.test.d.ts.map +1 -0
- package/dist/transport/protocol.test.js.map +1 -0
- package/dist/{report.d.ts → transport/reporter.d.ts} +1 -1
- package/dist/transport/reporter.d.ts.map +1 -0
- package/dist/{report.js → transport/reporter.js} +1 -1
- package/dist/transport/reporter.js.map +1 -0
- package/package.json +11 -11
- package/dist/attribution.d.ts.map +0 -1
- package/dist/attribution.js.map +0 -1
- package/dist/checkpoint-timer.test.d.ts.map +0 -1
- package/dist/checkpoint-timer.test.js.map +0 -1
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js.map +0 -1
- package/dist/git-sync.d.ts.map +0 -1
- package/dist/git-sync.js.map +0 -1
- package/dist/git-sync.test.d.ts.map +0 -1
- package/dist/git-sync.test.js.map +0 -1
- package/dist/idle-checkpoint.test.d.ts.map +0 -1
- package/dist/idle-checkpoint.test.js.map +0 -1
- package/dist/lambda-microvm-entrypoint.d.ts +0 -3
- package/dist/lambda-microvm-entrypoint.d.ts.map +0 -1
- package/dist/lambda-microvm-entrypoint.js.map +0 -1
- package/dist/lifecycle.test.d.ts.map +0 -1
- package/dist/lifecycle.test.js.map +0 -1
- package/dist/link.d.ts.map +0 -1
- package/dist/link.js.map +0 -1
- package/dist/loop.d.ts +0 -6
- package/dist/loop.d.ts.map +0 -1
- package/dist/loop.js.map +0 -1
- package/dist/model.d.ts.map +0 -1
- package/dist/model.js.map +0 -1
- package/dist/protocol.d.ts.map +0 -1
- package/dist/protocol.js.map +0 -1
- package/dist/protocol.test.d.ts.map +0 -1
- package/dist/protocol.test.js.map +0 -1
- package/dist/report.d.ts.map +0 -1
- package/dist/report.js.map +0 -1
- package/dist/runtime.d.ts.map +0 -1
- package/dist/runtime.js.map +0 -1
- package/dist/session-storage-sync.d.ts.map +0 -1
- package/dist/session-storage-sync.js.map +0 -1
- package/dist/session-storage-sync.test.d.ts +0 -2
- package/dist/session-storage-sync.test.d.ts.map +0 -1
- package/dist/session-storage-sync.test.js.map +0 -1
- package/dist/session.d.ts.map +0 -1
- package/dist/session.js +0 -512
- package/dist/session.js.map +0 -1
- /package/dist/{attribution.d.ts → models/attribution.d.ts} +0 -0
- /package/dist/{attribution.js → models/attribution.js} +0 -0
- /package/dist/{git-sync.js → persistence/git-sync.js} +0 -0
- /package/dist/{git-sync.test.d.ts → persistence/git-sync.test.d.ts} +0 -0
- /package/dist/{cli.d.ts → runtime/cli.d.ts} +0 -0
- /package/dist/{lifecycle.test.d.ts → runtime/lifecycle.test.d.ts} +0 -0
- /package/dist/{checkpoint-timer.test.d.ts → session/checkpoint-timer.test.d.ts} +0 -0
- /package/dist/{idle-checkpoint.test.d.ts → session/idle-checkpoint.test.d.ts} +0 -0
- /package/dist/{link.d.ts → transport/link.d.ts} +0 -0
- /package/dist/{link.js → transport/link.js} +0 -0
- /package/dist/{protocol.d.ts → transport/protocol.d.ts} +0 -0
- /package/dist/{protocol.js → transport/protocol.js} +0 -0
- /package/dist/{protocol.test.d.ts → transport/protocol.test.d.ts} +0 -0
- /package/dist/{protocol.test.js → transport/protocol.test.js} +0 -0
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const strict_1 = __importDefault(require("node:assert/strict"));
|
|
7
|
+
const node_fs_1 = require("node:fs");
|
|
8
|
+
const node_os_1 = __importDefault(require("node:os"));
|
|
9
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
10
|
+
const node_test_1 = require("node:test");
|
|
11
|
+
const index_1 = require("./index");
|
|
12
|
+
const runtime_1 = require("./runtime");
|
|
13
|
+
const conversation_1 = require("./conversation");
|
|
14
|
+
function deferred() {
|
|
15
|
+
let resolve;
|
|
16
|
+
const promise = new Promise((done) => {
|
|
17
|
+
resolve = done;
|
|
18
|
+
});
|
|
19
|
+
return { promise, resolve };
|
|
20
|
+
}
|
|
21
|
+
function completed(text = 'Answer') {
|
|
22
|
+
return { status: 'completed', text, partialText: text, askedUser: false, messages: [{ role: 'assistant', content: text }] };
|
|
23
|
+
}
|
|
24
|
+
async function fixture(t, options = {}) {
|
|
25
|
+
const dir = await node_fs_1.promises.mkdtemp(node_path_1.default.join(node_os_1.default.tmpdir(), 'agent-runtime-'));
|
|
26
|
+
const events = [];
|
|
27
|
+
const calls = [];
|
|
28
|
+
const checkpoints = [];
|
|
29
|
+
let handle;
|
|
30
|
+
const config = {
|
|
31
|
+
sessionId: 'test', mode: 'session', profile: 'coding', workspaceDir: dir,
|
|
32
|
+
model: 'unused', extractionModel: 'unused', provider: {}, mcpConnections: [], tokenBudget: options.tokenBudget,
|
|
33
|
+
};
|
|
34
|
+
const runtime = new runtime_1.SessionRuntime(config, {
|
|
35
|
+
send: (event) => events.push(event), onCommand: (handler) => { handle = handler; },
|
|
36
|
+
async ready() { }, async close() { },
|
|
37
|
+
}, {
|
|
38
|
+
turnRunner: { async run(input) {
|
|
39
|
+
calls.push(input);
|
|
40
|
+
return options.run ? options.run(input) : completed();
|
|
41
|
+
} },
|
|
42
|
+
persistence: {
|
|
43
|
+
dir,
|
|
44
|
+
async restore() { return false; },
|
|
45
|
+
async checkpoint(reason) {
|
|
46
|
+
var _a;
|
|
47
|
+
checkpoints.push(reason);
|
|
48
|
+
await ((_a = options.checkpoint) === null || _a === void 0 ? void 0 : _a.call(options, reason, dir));
|
|
49
|
+
return { kind: 'snapshot', hash: 'snapshot-hash' };
|
|
50
|
+
},
|
|
51
|
+
},
|
|
52
|
+
});
|
|
53
|
+
t.after(async () => {
|
|
54
|
+
await runtime.stop();
|
|
55
|
+
await node_fs_1.promises.rm(dir, { recursive: true, force: true });
|
|
56
|
+
});
|
|
57
|
+
await runtime.start();
|
|
58
|
+
const send = async (messageId, text = messageId) => handle({ type: 'message', messageId, text });
|
|
59
|
+
const flush = async () => handle({ type: 'checkpoint', requestId: 'flush', waitForTurn: true });
|
|
60
|
+
return { runtime, events, calls, checkpoints, dir, send, flush };
|
|
61
|
+
}
|
|
62
|
+
(0, node_test_1.it)('preserves SessionAgent as an alias for SessionRuntime', () => {
|
|
63
|
+
strict_1.default.equal(index_1.SessionAgent, runtime_1.SessionRuntime);
|
|
64
|
+
});
|
|
65
|
+
(0, node_test_1.it)('queues messages behind durable completion and waits for accepted turns before acknowledging a checkpoint', async (t) => {
|
|
66
|
+
var _a;
|
|
67
|
+
const entered = deferred();
|
|
68
|
+
const release = deferred();
|
|
69
|
+
let first = true;
|
|
70
|
+
const { send, flush, calls, events, checkpoints, dir } = await fixture(t, {
|
|
71
|
+
checkpoint: async (reason, workspace) => {
|
|
72
|
+
var _a;
|
|
73
|
+
if (!first)
|
|
74
|
+
return;
|
|
75
|
+
first = false;
|
|
76
|
+
strict_1.default.equal(reason, 'checkpoint: turn finished');
|
|
77
|
+
strict_1.default.deepEqual((_a = (await (0, conversation_1.readConversation)(workspace))) === null || _a === void 0 ? void 0 : _a.messages.map((message) => message.role), ['user', 'assistant']);
|
|
78
|
+
entered.resolve();
|
|
79
|
+
await release.promise;
|
|
80
|
+
},
|
|
81
|
+
});
|
|
82
|
+
await send('first');
|
|
83
|
+
await entered.promise;
|
|
84
|
+
try {
|
|
85
|
+
await send('second');
|
|
86
|
+
strict_1.default.equal(calls.length, 1);
|
|
87
|
+
strict_1.default.equal(events.some((event) => event.type === 'done'), false);
|
|
88
|
+
}
|
|
89
|
+
finally {
|
|
90
|
+
release.resolve();
|
|
91
|
+
}
|
|
92
|
+
await flush();
|
|
93
|
+
strict_1.default.deepEqual(calls.map((call) => call.messageId), ['first', 'second']);
|
|
94
|
+
strict_1.default.deepEqual(events.filter((event) => event.type === 'done').map((event) => event.messageId), ['first', 'second']);
|
|
95
|
+
strict_1.default.deepEqual(checkpoints, ['checkpoint: turn finished', 'checkpoint: turn finished', 'checkpoint: requested']);
|
|
96
|
+
strict_1.default.equal((_a = (await (0, conversation_1.readConversation)(dir))) === null || _a === void 0 ? void 0 : _a.messages.length, 4);
|
|
97
|
+
strict_1.default.ok(events.filter((event) => event.type === 'checkpointed').every((event) => event.commit === undefined), 'snapshot hashes are not Git commits');
|
|
98
|
+
});
|
|
99
|
+
(0, node_test_1.it)('continues draining the queue after a budget rejection and persists the extended budget', async (t) => {
|
|
100
|
+
const started = deferred();
|
|
101
|
+
const release = deferred();
|
|
102
|
+
const { send, flush, calls, events, dir } = await fixture(t, {
|
|
103
|
+
tokenBudget: 10,
|
|
104
|
+
run: async (input) => {
|
|
105
|
+
if (input.messageId === 'first') {
|
|
106
|
+
started.resolve();
|
|
107
|
+
await release.promise;
|
|
108
|
+
}
|
|
109
|
+
input.recordUsage({ inputTokens: 5, outputTokens: 5, totalTokens: 10 });
|
|
110
|
+
return completed();
|
|
111
|
+
},
|
|
112
|
+
});
|
|
113
|
+
await send('first');
|
|
114
|
+
await started.promise;
|
|
115
|
+
try {
|
|
116
|
+
await send('rejected', 'Explain more');
|
|
117
|
+
await send('continued', 'continue');
|
|
118
|
+
}
|
|
119
|
+
finally {
|
|
120
|
+
release.resolve();
|
|
121
|
+
}
|
|
122
|
+
await flush();
|
|
123
|
+
strict_1.default.deepEqual(calls.map((call) => call.messageId), ['first', 'continued']);
|
|
124
|
+
strict_1.default.ok(events.some((event) => { var _a; return event.type === 'done' && event.messageId === 'rejected' && ((_a = event.summary) === null || _a === void 0 ? void 0 : _a.includes('budget is used up')); }));
|
|
125
|
+
const saved = await (0, conversation_1.readConversation)(dir);
|
|
126
|
+
strict_1.default.equal(saved === null || saved === void 0 ? void 0 : saved.usedTokens, 20);
|
|
127
|
+
strict_1.default.equal(saved === null || saved === void 0 ? void 0 : saved.budget, 20);
|
|
128
|
+
strict_1.default.equal(saved === null || saved === void 0 ? void 0 : saved.budgetPaused, true);
|
|
129
|
+
strict_1.default.equal(saved === null || saved === void 0 ? void 0 : saved.messages.length, 4);
|
|
130
|
+
});
|
|
131
|
+
(0, node_test_1.it)('reports a failed durable checkpoint without announcing completion or duplicating the response on retry', async (t) => {
|
|
132
|
+
var _a;
|
|
133
|
+
let fail = true;
|
|
134
|
+
const { send, flush, events, dir } = await fixture(t, {
|
|
135
|
+
checkpoint: async () => {
|
|
136
|
+
if (fail) {
|
|
137
|
+
fail = false;
|
|
138
|
+
throw new Error('Storage unavailable');
|
|
139
|
+
}
|
|
140
|
+
},
|
|
141
|
+
});
|
|
142
|
+
await send('first');
|
|
143
|
+
await flush();
|
|
144
|
+
strict_1.default.ok(events.some((event) => event.type === 'error' && event.message === 'Storage unavailable'));
|
|
145
|
+
strict_1.default.equal(events.some((event) => event.type === 'done'), false);
|
|
146
|
+
strict_1.default.equal((_a = (await (0, conversation_1.readConversation)(dir))) === null || _a === void 0 ? void 0 : _a.messages.length, 2);
|
|
147
|
+
strict_1.default.ok(events.some((event) => event.type === 'checkpointed' && event.requestId === 'flush'));
|
|
148
|
+
});
|
|
149
|
+
(0, node_test_1.it)('aborts the active turn, discards queued work, and checkpoints before shutdown resolves', async (t) => {
|
|
150
|
+
var _a;
|
|
151
|
+
const started = deferred();
|
|
152
|
+
const { runtime, send, calls, checkpoints, dir } = await fixture(t, {
|
|
153
|
+
run: async (input) => {
|
|
154
|
+
started.resolve();
|
|
155
|
+
await new Promise((resolve) => input.abortSignal.addEventListener('abort', () => resolve(), { once: true }));
|
|
156
|
+
return { status: 'aborted', partialText: 'Partial work', askedUser: false, messages: [{ role: 'assistant', content: 'Partial work' }] };
|
|
157
|
+
},
|
|
158
|
+
});
|
|
159
|
+
await send('first');
|
|
160
|
+
await started.promise;
|
|
161
|
+
await send('queued');
|
|
162
|
+
await runtime.stop();
|
|
163
|
+
strict_1.default.equal(calls.length, 1);
|
|
164
|
+
strict_1.default.deepEqual(checkpoints, ['checkpoint: turn interrupted', 'checkpoint: shutdown']);
|
|
165
|
+
strict_1.default.deepEqual((_a = (await (0, conversation_1.readConversation)(dir))) === null || _a === void 0 ? void 0 : _a.messages, [
|
|
166
|
+
{ role: 'user', content: 'first' }, { role: 'assistant', content: 'Partial work' },
|
|
167
|
+
]);
|
|
168
|
+
await strict_1.default.rejects(send('too-late'), /Session has stopped/);
|
|
169
|
+
});
|
|
170
|
+
(0, node_test_1.it)('serializes concurrent checkpoints and allows the next checkpoint to retry after failure', async (t) => {
|
|
171
|
+
const entered = deferred();
|
|
172
|
+
const release = deferred();
|
|
173
|
+
let active = 0;
|
|
174
|
+
let maximum = 0;
|
|
175
|
+
let attempts = 0;
|
|
176
|
+
const { runtime, events } = await fixture(t, {
|
|
177
|
+
checkpoint: async () => {
|
|
178
|
+
attempts += 1;
|
|
179
|
+
active += 1;
|
|
180
|
+
maximum = Math.max(maximum, active);
|
|
181
|
+
try {
|
|
182
|
+
if (attempts === 1) {
|
|
183
|
+
entered.resolve();
|
|
184
|
+
await release.promise;
|
|
185
|
+
throw new Error('First upload failed');
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
finally {
|
|
189
|
+
active -= 1;
|
|
190
|
+
}
|
|
191
|
+
},
|
|
192
|
+
});
|
|
193
|
+
const failed = strict_1.default.rejects(runtime.checkpoint('first', 'first'), /First upload failed/);
|
|
194
|
+
await entered.promise;
|
|
195
|
+
const retried = runtime.checkpoint('second', 'second');
|
|
196
|
+
release.resolve();
|
|
197
|
+
await Promise.all([failed, retried]);
|
|
198
|
+
strict_1.default.equal(maximum, 1);
|
|
199
|
+
strict_1.default.deepEqual(events.filter((event) => event.type === 'checkpointed').map((event) => event.requestId), ['second']);
|
|
200
|
+
});
|
|
201
|
+
//# sourceMappingURL=runtime.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.test.js","sourceRoot":"","sources":["../../src/session/runtime.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { AgentProgressStep, AgentSessionFile } from '../transport/protocol';
|
|
2
|
+
import type { TokenUsage } from '../models/usage';
|
|
3
|
+
/** Bound to one turn. Tools cannot access the queue, session state, or gateway connection. */
|
|
4
|
+
export interface SessionToolContext {
|
|
5
|
+
readonly workspaceDir: string;
|
|
6
|
+
readonly abortSignal: AbortSignal;
|
|
7
|
+
reportProgress(steps: AgentProgressStep[], toolCallId: string): void;
|
|
8
|
+
requestClarification(question: string, toolCallId: string): void;
|
|
9
|
+
publishFiles(files: AgentSessionFile[]): void;
|
|
10
|
+
recordUsage(usage: TokenUsage, model: string): void;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=tool-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-context.d.ts","sourceRoot":"","sources":["../../src/session/tool-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAChF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAEjD,8FAA8F;AAC9F,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;IACjC,cAAc,CAAC,KAAK,EAAE,iBAAiB,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACpE,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IAChE,YAAY,CAAC,KAAK,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAA;IAC7C,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CACpD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-context.js","sourceRoot":"","sources":["../../src/session/tool-context.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type Tool } from 'ai';
|
|
2
|
+
import type { McpConnectionRecord } from '../mcp/mcp-connection';
|
|
3
|
+
import type { SessionToolContext } from './tool-context';
|
|
4
|
+
/** Common tools for both profiles. Callbacks are bound to the turn that owns these tools. */
|
|
5
|
+
export declare function createSessionTools(context: SessionToolContext, mcpConnections: McpConnectionRecord[]): Record<string, Tool>;
|
|
6
|
+
//# sourceMappingURL=tools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/session/tools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,KAAK,IAAI,EAAE,MAAM,IAAI,CAAA;AAGpC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAIhE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAIxD,6FAA6F;AAC7F,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,mBAAmB,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAqF3H"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createSessionTools = createSessionTools;
|
|
7
|
+
const node_fs_1 = require("node:fs");
|
|
8
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
9
|
+
const ai_1 = require("ai");
|
|
10
|
+
const zod_1 = require("zod");
|
|
11
|
+
const mcp_tools_1 = require("../mcp/mcp-tools");
|
|
12
|
+
const exec_tools_1 = require("../tools/exec-tools");
|
|
13
|
+
const fs_tools_1 = require("../tools/fs-tools");
|
|
14
|
+
const MAX_PUBLISHED_FILE_BYTES = 512 * 1024;
|
|
15
|
+
/** Common tools for both profiles. Callbacks are bound to the turn that owns these tools. */
|
|
16
|
+
function createSessionTools(context, mcpConnections) {
|
|
17
|
+
const { workspaceDir } = context;
|
|
18
|
+
return {
|
|
19
|
+
...(0, fs_tools_1.createFsTools)(workspaceDir),
|
|
20
|
+
...(0, exec_tools_1.createExecTools)(workspaceDir),
|
|
21
|
+
...(0, mcp_tools_1.createMcpTools)(mcpConnections),
|
|
22
|
+
report_progress: (0, ai_1.tool)({
|
|
23
|
+
description: 'Show the user a checklist of the phases of the current work and their status. Call it when a phase starts or finishes.',
|
|
24
|
+
inputSchema: zod_1.z.object({
|
|
25
|
+
steps: zod_1.z
|
|
26
|
+
.array(zod_1.z.object({
|
|
27
|
+
key: zod_1.z.string().min(1).max(60),
|
|
28
|
+
label: zod_1.z.string().min(1).max(120),
|
|
29
|
+
status: zod_1.z.enum(['pending', 'active', 'done', 'failed']),
|
|
30
|
+
detail: zod_1.z.string().max(200).optional(),
|
|
31
|
+
}))
|
|
32
|
+
.min(1)
|
|
33
|
+
.max(20),
|
|
34
|
+
}),
|
|
35
|
+
execute: async ({ steps }, { toolCallId }) => {
|
|
36
|
+
context.reportProgress(steps, toolCallId);
|
|
37
|
+
return { ok: true };
|
|
38
|
+
},
|
|
39
|
+
}),
|
|
40
|
+
// Same name and input contract as the platform's own clarification tool, so the chat renders
|
|
41
|
+
// the question with its standard answer form and routes the answer back through approvals.
|
|
42
|
+
request_clarification: (0, ai_1.tool)({
|
|
43
|
+
description: 'Pause and ask the user one question you cannot answer yourself: confirm a large population, correct the scope, choose between readings, approve a codebook or more spending. Give 2–6 explicit options; set allowFreeText when they may not cover the answer. The turn ends after this call; the answer arrives as the next user message.',
|
|
44
|
+
inputSchema: zod_1.z.object({
|
|
45
|
+
question: zod_1.z.string().min(5).max(8000).describe('Clear, concise question with the context the user needs to decide; markdown allowed'),
|
|
46
|
+
selectionMode: zod_1.z.enum(['single', 'multiple']).describe('Whether the user picks one option or several'),
|
|
47
|
+
options: zod_1.z
|
|
48
|
+
.array(zod_1.z.object({
|
|
49
|
+
id: zod_1.z.string().min(1).max(60).describe('Stable option identifier'),
|
|
50
|
+
label: zod_1.z.string().min(1).max(300).describe('User-visible option label'),
|
|
51
|
+
description: zod_1.z.string().max(500).optional().describe('Optional explanation'),
|
|
52
|
+
}))
|
|
53
|
+
.min(2)
|
|
54
|
+
.max(6),
|
|
55
|
+
allowFreeText: zod_1.z.boolean().default(false).describe('Whether the user may answer in their own words instead'),
|
|
56
|
+
}),
|
|
57
|
+
execute: async ({ question }, { toolCallId }) => {
|
|
58
|
+
context.requestClarification(question, toolCallId);
|
|
59
|
+
return { asked: true };
|
|
60
|
+
},
|
|
61
|
+
}),
|
|
62
|
+
publish_results: (0, ai_1.tool)({
|
|
63
|
+
description: 'Store text files from the workspace as session artifacts the user sees in the session (findings.md, results.csv, evidence.json, notes). Call it whenever a deliverable changes. Max 512 KB per file.',
|
|
64
|
+
inputSchema: zod_1.z.object({ paths: zod_1.z.array(zod_1.z.string().min(1).max(500)).min(1).max(20) }),
|
|
65
|
+
execute: async ({ paths }) => {
|
|
66
|
+
const files = [];
|
|
67
|
+
const skipped = [];
|
|
68
|
+
for (const relative of paths) {
|
|
69
|
+
const target = node_path_1.default.resolve(workspaceDir, relative);
|
|
70
|
+
if (!target.startsWith(node_path_1.default.resolve(workspaceDir) + node_path_1.default.sep)) {
|
|
71
|
+
skipped.push({ path: relative, reason: 'outside the workspace' });
|
|
72
|
+
continue;
|
|
73
|
+
}
|
|
74
|
+
try {
|
|
75
|
+
const buffer = await node_fs_1.promises.readFile(target);
|
|
76
|
+
if (buffer.byteLength > MAX_PUBLISHED_FILE_BYTES) {
|
|
77
|
+
skipped.push({ path: relative, reason: `larger than ${MAX_PUBLISHED_FILE_BYTES} bytes` });
|
|
78
|
+
continue;
|
|
79
|
+
}
|
|
80
|
+
if (buffer.includes(0)) {
|
|
81
|
+
skipped.push({ path: relative, reason: 'binary file' });
|
|
82
|
+
continue;
|
|
83
|
+
}
|
|
84
|
+
files.push({ path: relative.replace(/^\/+/, ''), content: buffer.toString('utf8') });
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
skipped.push({ path: relative, reason: error.message });
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
if (files.length)
|
|
91
|
+
context.publishFiles(files);
|
|
92
|
+
return { published: files.map((file) => file.path), skipped };
|
|
93
|
+
},
|
|
94
|
+
}),
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/session/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.test.d.ts","sourceRoot":"","sources":["../../src/session/tools.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const strict_1 = __importDefault(require("node:assert/strict"));
|
|
7
|
+
const node_fs_1 = require("node:fs");
|
|
8
|
+
const node_os_1 = __importDefault(require("node:os"));
|
|
9
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
10
|
+
const node_test_1 = require("node:test");
|
|
11
|
+
const tools_1 = require("./tools");
|
|
12
|
+
function fixture(workspaceDir, messageId = 'turn') {
|
|
13
|
+
const events = [];
|
|
14
|
+
const context = {
|
|
15
|
+
workspaceDir,
|
|
16
|
+
abortSignal: new AbortController().signal,
|
|
17
|
+
recordUsage() { },
|
|
18
|
+
reportProgress: (steps, toolCallId) => events.push({ type: 'progress', messageId, toolCallId, steps }),
|
|
19
|
+
requestClarification: (question, toolCallId) => events.push({ type: 'question', messageId, toolCallId, question }),
|
|
20
|
+
publishFiles: (files) => events.push({ type: 'files', messageId, files }),
|
|
21
|
+
};
|
|
22
|
+
return { context, events };
|
|
23
|
+
}
|
|
24
|
+
(0, node_test_1.it)('reports progress and clarification through the supplied turn context', async () => {
|
|
25
|
+
const { context, events } = fixture('/unused');
|
|
26
|
+
const tools = (0, tools_1.createSessionTools)(context, []);
|
|
27
|
+
const steps = [{ key: 'research', label: 'Research', status: 'active' }];
|
|
28
|
+
await tools.report_progress.execute({ steps }, { toolCallId: 'progress', messages: [] });
|
|
29
|
+
await tools.request_clarification.execute({ question: 'Which state?' }, { toolCallId: 'question', messages: [] });
|
|
30
|
+
strict_1.default.deepEqual(events, [
|
|
31
|
+
{ type: 'progress', messageId: 'turn', toolCallId: 'progress', steps },
|
|
32
|
+
{ type: 'question', messageId: 'turn', toolCallId: 'question', question: 'Which state?' },
|
|
33
|
+
]);
|
|
34
|
+
});
|
|
35
|
+
(0, node_test_1.it)('publishes text artifacts and reports rejected paths without losing valid files', async (t) => {
|
|
36
|
+
const dir = await node_fs_1.promises.mkdtemp(node_path_1.default.join(node_os_1.default.tmpdir(), 'agent-publish-'));
|
|
37
|
+
t.after(() => node_fs_1.promises.rm(dir, { recursive: true, force: true }));
|
|
38
|
+
const { context, events } = fixture(dir);
|
|
39
|
+
await node_fs_1.promises.writeFile(node_path_1.default.join(dir, 'findings.md'), '# Findings');
|
|
40
|
+
await node_fs_1.promises.writeFile(node_path_1.default.join(dir, 'binary'), Buffer.from([1, 0, 2]));
|
|
41
|
+
await node_fs_1.promises.writeFile(node_path_1.default.join(dir, 'large'), 'x'.repeat(512 * 1024 + 1));
|
|
42
|
+
const result = await (0, tools_1.createSessionTools)(context, []).publish_results.execute({
|
|
43
|
+
paths: ['findings.md', '../outside', 'binary', 'large'],
|
|
44
|
+
}, { toolCallId: 'publish', messages: [] });
|
|
45
|
+
strict_1.default.deepEqual(result, {
|
|
46
|
+
published: ['findings.md'],
|
|
47
|
+
skipped: [
|
|
48
|
+
{ path: '../outside', reason: 'outside the workspace' },
|
|
49
|
+
{ path: 'binary', reason: 'binary file' },
|
|
50
|
+
{ path: 'large', reason: 'larger than 524288 bytes' },
|
|
51
|
+
],
|
|
52
|
+
});
|
|
53
|
+
strict_1.default.deepEqual(events, [{ type: 'files', messageId: 'turn', files: [{ path: 'findings.md', content: '# Findings' }] }]);
|
|
54
|
+
});
|
|
55
|
+
//# sourceMappingURL=tools.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.test.js","sourceRoot":"","sources":["../../src/session/tools.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { AgentRuntimeConfig } from '../runtime/config';
|
|
2
|
+
import type { Reporter } from '../transport/reporter';
|
|
3
|
+
export declare function runAgentLoop(config: AgentRuntimeConfig, reporter: Reporter): Promise<{
|
|
4
|
+
summary: string;
|
|
5
|
+
}>;
|
|
6
|
+
//# sourceMappingURL=loop.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../../src/task/loop.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAG3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAsBrD,wBAAsB,YAAY,CAAC,MAAM,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAyC/G"}
|
|
@@ -6,11 +6,11 @@ exports.runAgentLoop = runAgentLoop;
|
|
|
6
6
|
// primitives ai-agent-node uses underneath its ChatProcessor), not a port of ChatProcessor:
|
|
7
7
|
// that class needs MongoDB repositories and Socket.IO broadcast, none of which exist in a guest.
|
|
8
8
|
const ai_1 = require("ai");
|
|
9
|
-
const attribution_1 = require("
|
|
10
|
-
const mcp_tools_1 = require("
|
|
11
|
-
const
|
|
12
|
-
const exec_tools_1 = require("
|
|
13
|
-
const fs_tools_1 = require("
|
|
9
|
+
const attribution_1 = require("../models/attribution");
|
|
10
|
+
const mcp_tools_1 = require("../mcp/mcp-tools");
|
|
11
|
+
const resolve_model_1 = require("../models/resolve-model");
|
|
12
|
+
const exec_tools_1 = require("../tools/exec-tools");
|
|
13
|
+
const fs_tools_1 = require("../tools/fs-tools");
|
|
14
14
|
const MAX_STEPS = 40;
|
|
15
15
|
const SYSTEM_PROMPT = `You are a coding agent running inside an isolated session workspace VM. You have direct
|
|
16
16
|
tools to read/write files and run shell commands in the workspace, plus (if any MCP servers are
|
|
@@ -36,7 +36,7 @@ async function runAgentLoop(config, reporter) {
|
|
|
36
36
|
};
|
|
37
37
|
try {
|
|
38
38
|
const result = await (0, ai_1.generateText)({
|
|
39
|
-
model: (0,
|
|
39
|
+
model: (0, resolve_model_1.resolveLanguageModel)(config.provider, config.model, attribution_1.OPENROUTER_APPS.CODING_AGENT),
|
|
40
40
|
system: SYSTEM_PROMPT,
|
|
41
41
|
prompt: config.task,
|
|
42
42
|
tools,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/task/loop.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../src/transport/link.ts"],"names":[],"mappings":"AAOA,OAAO,EAGL,KAAK,mBAAmB,EAExB,KAAK,iBAAiB,EACvB,MAAM,YAAY,CAAA;AAMnB,MAAM,MAAM,aAAa,GAAG,iBAAiB,SAAS,MAAM,CAAC,GACzD,CAAC,SAAS;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC7D,IAAI,CAAC,CAAC,EAAE,WAAW,GAAG,KAAK,GAAG,WAAW,CAAC,GAC1C,KAAK,GACP,KAAK,CAAA;AAET,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;AAEnF,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAAA;IAChC,SAAS,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAAA;IACxC,2FAA2F;IAC3F,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACvB;AAMD,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,WAAW,EAAE,MAAM,GAAG,SAAS,GAC9B,WAAW,CAqEb"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link.js","sourceRoot":"","sources":["../../src/transport/link.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/transport/protocol.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/transport/protocol.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol.test.d.ts","sourceRoot":"","sources":["../../src/transport/protocol.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol.test.js","sourceRoot":"","sources":["../../src/transport/protocol.test.ts"],"names":[],"mappings":";;;;;AAAA,gEAAuC;AACvC,yCAAwC;AACxC,yCAAkJ;AAElJ,IAAA,oBAAQ,EAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,IAAA,cAAE,EAAC,sFAAsF,EAAE,GAAG,EAAE;QAC9F,MAAM,KAAK,GAAsB,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;QAC9K,gBAAM,CAAC,KAAK,CAAC,IAAA,+BAAoB,EAAC,KAAK,CAAC,EAAE,IAAA,+BAAoB,EAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,CAAA;QAC7E,gBAAM,CAAC,QAAQ,CAAC,IAAA,+BAAoB,EAAC,KAAK,CAAC,EAAE,IAAA,+BAAoB,EAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC,CAAA;QAC5G,gBAAM,CAAC,QAAQ,CAAC,IAAA,+BAAoB,EAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,EAAE,IAAA,+BAAoB,EAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACxJ,CAAC,CAAC,CAAA;IACF,IAAA,cAAE,EAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,gBAAM,CAAC,KAAK,CAAC,IAAA,8BAAmB,EAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;QACnI,gBAAM,CAAC,KAAK,CAAC,IAAA,8BAAmB,EAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;QAC5E,gBAAM,CAAC,KAAK,CAAC,IAAA,8BAAmB,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;QAC1D,gBAAM,CAAC,KAAK,CAAC,IAAA,8BAAmB,EAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAA;IAChD,CAAC,CAAC,CAAA;IAEF,IAAA,cAAE,EAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,gBAAM,CAAC,KAAK,CAAC,IAAA,2BAAgB,EAAC,KAAK,CAAC,EAAE,mBAAmB,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAA;IAEF,IAAA,cAAE,EAAC,qEAAqE,EAAE,GAAG,EAAE;QAC7E,KAAK,MAAM,GAAG,IAAI,CAAC,oBAAS,CAAC,wBAAwB,EAAE,oBAAS,CAAC,gBAAgB,EAAE,oBAAS,CAAC,kBAAkB,EAAE,oBAAS,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC/I,gBAAM,CAAC,EAAE,CAAC,gCAAqB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,mBAAmB,CAAC,CAAA;QAC3E,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -27,4 +27,4 @@ export interface Reporter {
|
|
|
27
27
|
close(): Promise<void>;
|
|
28
28
|
}
|
|
29
29
|
export declare function createReporter(socketUrl: string | undefined, socketToken: string | undefined, sessionId: string): Reporter;
|
|
30
|
-
//# sourceMappingURL=
|
|
30
|
+
//# sourceMappingURL=reporter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../../src/transport/reporter.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC9G;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACvE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACvE;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAA;AAE5E,MAAM,WAAW,QAAQ;IACvB,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACtC,yFAAyF;IACzF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACvB;AAED,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,SAAS,EAAE,MAAM,GAChB,QAAQ,CAwBV"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reporter.js","sourceRoot":"","sources":["../../src/transport/reporter.ts"],"names":[],"mappings":";;AAiBA,wCA4BC;AA7CD,4FAA4F;AAC5F,2FAA2F;AAC3F,wEAAwE;AACxE,iCAA4D;AAc5D,SAAgB,cAAc,CAC5B,SAA6B,EAC7B,WAA+B,EAC/B,SAAiB;IAEjB,MAAM,IAAI,GAAgB,IAAA,wBAAiB,EAAC,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,CAAA;IAC9E,OAAO;QACL,KAAK,CAAC,IAAI,CAAC,KAAK;YACd,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;YAClB,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;gBACnB,KAAK,WAAW;oBACd,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;oBACpG,MAAK;gBACP,KAAK,SAAS;oBACZ,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;oBAChD,MAAK;gBACP,KAAK,MAAM;oBACT,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;oBACtE,MAAK;gBACP,KAAK,OAAO;oBACV,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;oBACpD,MAAK;YACT,CAAC;QACH,CAAC;QACD,KAAK;YACH,OAAO,IAAI,CAAC,KAAK,EAAE,CAAA;QACrB,CAAC;KACF,CAAA;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@multiplayer-app/agent",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.10",
|
|
4
4
|
"description": "Agent that runs inside a session VM — one-shot coding tasks or long-lived research sessions driven over the gateway socket; local file/exec tools, FilingRamp research tools, MCP over env-var config",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -11,19 +11,19 @@
|
|
|
11
11
|
"default": "./dist/index.js"
|
|
12
12
|
},
|
|
13
13
|
"./protocol": {
|
|
14
|
-
"types": "./dist/protocol.d.ts",
|
|
15
|
-
"require": "./dist/protocol.js",
|
|
16
|
-
"default": "./dist/protocol.js"
|
|
14
|
+
"types": "./dist/transport/protocol.d.ts",
|
|
15
|
+
"require": "./dist/transport/protocol.js",
|
|
16
|
+
"default": "./dist/transport/protocol.js"
|
|
17
17
|
},
|
|
18
18
|
"./attribution": {
|
|
19
|
-
"types": "./dist/attribution.d.ts",
|
|
20
|
-
"require": "./dist/attribution.js",
|
|
21
|
-
"default": "./dist/attribution.js"
|
|
19
|
+
"types": "./dist/models/attribution.d.ts",
|
|
20
|
+
"require": "./dist/models/attribution.js",
|
|
21
|
+
"default": "./dist/models/attribution.js"
|
|
22
22
|
}
|
|
23
23
|
},
|
|
24
24
|
"bin": {
|
|
25
|
-
"agent": "dist/cli.js",
|
|
26
|
-
"agent-microvm": "dist/lambda-microvm
|
|
25
|
+
"agent": "dist/runtime/cli.js",
|
|
26
|
+
"agent-microvm": "dist/runtime/lambda-microvm.js"
|
|
27
27
|
},
|
|
28
28
|
"files": [
|
|
29
29
|
"dist"
|
|
@@ -48,8 +48,8 @@
|
|
|
48
48
|
"build": "tsc --build --force",
|
|
49
49
|
"clean": "rm -rf ./dist tsconfig.tsbuildinfo",
|
|
50
50
|
"typecheck": "tsc --noEmit",
|
|
51
|
-
"lint": "eslint src/**/*.ts --config ../../eslint.config.js",
|
|
51
|
+
"lint": "eslint 'src/**/*.ts' --config ../../eslint.config.js",
|
|
52
52
|
"test": "tsc --build --force && node --test 'dist/**/*.test.js'",
|
|
53
|
-
"postversion": "node scripts/sync-base-image-version.mjs && git commit -m \"agent v$npm_package_version\" -- package.json ../sandbox/
|
|
53
|
+
"postversion": "node scripts/sync-base-image-version.mjs && git commit -m \"agent v$npm_package_version\" -- package.json ../sandbox/base-images/agent/container/Dockerfile && git tag \"agent-v$npm_package_version\" && git push && git push --tags"
|
|
54
54
|
}
|
|
55
55
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"attribution.d.ts","sourceRoot":"","sources":["../src/attribution.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,qBAAqB,mBAAmB,CAAA;AAErD,qFAAqF;AACrF,eAAO,MAAM,eAAe;IAC1B,kGAAkG;;IAElG,4CAA4C;;IAE5C,0CAA0C;;IAE1C,sCAAsC;;CAE9B,CAAA;AAEV,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAA;AAElF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,SAAwB,GAAG,MAAM,CAMxF;AAED,kFAAkF;AAClF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,SAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAExG"}
|
package/dist/attribution.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"attribution.js","sourceRoot":"","sources":["../src/attribution.ts"],"names":[],"mappings":";AAAA,6FAA6F;AAC7F,uFAAuF;AACvF,EAAE;AACF,yFAAyF;AACzF,yFAAyF;AACzF,6FAA6F;AAC7F,yFAAyF;AACzF,4BAA4B;;;AAkB5B,oDAMC;AAGD,oDAEC;AA3BY,QAAA,qBAAqB,GAAG,gBAAgB,CAAA;AAErD,qFAAqF;AACxE,QAAA,eAAe,GAAG;IAC7B,kGAAkG;IAClG,YAAY,EAAE,cAAc;IAC5B,4CAA4C;IAC5C,aAAa,EAAE,eAAe;IAC9B,0CAA0C;IAC1C,aAAa,EAAE,eAAe;IAC9B,sCAAsC;IACtC,YAAY,EAAE,cAAc;CACpB,CAAA;AAIV,SAAgB,oBAAoB,CAAC,GAAW,EAAE,MAAM,GAAG,6BAAqB;IAC9E,MAAM,IAAI,GAAG,GAAG;SACb,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;IAC1B,OAAO,WAAW,IAAI,IAAI,MAAM,EAAE,CAAA;AACpC,CAAC;AAED,kFAAkF;AAClF,SAAgB,oBAAoB,CAAC,GAAW,EAAE,MAAM,GAAG,6BAAqB;IAC9E,OAAO,EAAE,cAAc,EAAE,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAA;AAC9E,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"checkpoint-timer.test.d.ts","sourceRoot":"","sources":["../src/checkpoint-timer.test.ts"],"names":[],"mappings":""}
|