@agentworkforce/deploy 0.0.0 → 3.0.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/bundle.js +19 -2
- package/dist/bundle.js.map +1 -1
- package/dist/bundle.test.js +40 -0
- package/dist/bundle.test.js.map +1 -1
- package/dist/deploy.d.ts.map +1 -1
- package/dist/deploy.js +52 -26
- package/dist/deploy.js.map +1 -1
- package/dist/deploy.test.js +126 -10
- package/dist/deploy.test.js.map +1 -1
- package/dist/index.d.ts +7 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +57 -3
- package/dist/index.js.map +1 -1
- package/dist/login.d.ts +30 -0
- package/dist/login.d.ts.map +1 -1
- package/dist/login.js +263 -0
- package/dist/login.js.map +1 -1
- package/dist/modes/cloud.d.ts +13 -14
- package/dist/modes/cloud.d.ts.map +1 -1
- package/dist/modes/cloud.js +717 -15
- package/dist/modes/cloud.js.map +1 -1
- package/dist/modes/cloud.test.d.ts +2 -0
- package/dist/modes/cloud.test.d.ts.map +1 -0
- package/dist/modes/cloud.test.js +506 -0
- package/dist/modes/cloud.test.js.map +1 -0
- package/dist/modes/dev.d.ts.map +1 -1
- package/dist/modes/dev.js +2 -0
- package/dist/modes/dev.js.map +1 -1
- package/dist/modes/input-values.test.d.ts +2 -0
- package/dist/modes/input-values.test.d.ts.map +1 -0
- package/dist/modes/input-values.test.js +242 -0
- package/dist/modes/input-values.test.js.map +1 -0
- package/dist/modes/sandbox.d.ts +1 -1
- package/dist/modes/sandbox.d.ts.map +1 -1
- package/dist/modes/sandbox.js +4 -2
- package/dist/modes/sandbox.js.map +1 -1
- package/dist/runtime-context.d.ts +3 -0
- package/dist/runtime-context.d.ts.map +1 -0
- package/dist/runtime-context.js +40 -0
- package/dist/runtime-context.js.map +1 -0
- package/dist/types.d.ts +28 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +8 -8
package/dist/modes/dev.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/modes/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,IAAI,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/modes/dev.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-values.test.d.ts","sourceRoot":"","sources":["../../src/modes/input-values.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
import test from 'node:test';
|
|
2
|
+
import assert from 'node:assert/strict';
|
|
3
|
+
import { mkdtemp, readFile, rm, writeFile, mkdir } from 'node:fs/promises';
|
|
4
|
+
import path from 'node:path';
|
|
5
|
+
import os from 'node:os';
|
|
6
|
+
import { deploy } from '../index.js';
|
|
7
|
+
import { createBufferedIO } from '../io.js';
|
|
8
|
+
import { cloudLauncher } from './cloud.js';
|
|
9
|
+
function personaJson(overrides = {}) {
|
|
10
|
+
return {
|
|
11
|
+
id: 'demo',
|
|
12
|
+
intent: 'documentation',
|
|
13
|
+
tags: ['documentation'],
|
|
14
|
+
description: 'test persona',
|
|
15
|
+
harness: 'claude',
|
|
16
|
+
model: 'anthropic/claude-3-5-sonnet',
|
|
17
|
+
systemPrompt: 'be helpful',
|
|
18
|
+
harnessSettings: { reasoning: 'medium', timeoutSeconds: 300 },
|
|
19
|
+
cloud: true,
|
|
20
|
+
schedules: [{ name: 'weekly', cron: '0 9 * * 6' }],
|
|
21
|
+
onEvent: './agent.ts',
|
|
22
|
+
inputs: {
|
|
23
|
+
TOPIC: { default: 'AI' },
|
|
24
|
+
REGION: { optional: true }
|
|
25
|
+
},
|
|
26
|
+
...overrides
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
async function withTempPersona(persona) {
|
|
30
|
+
const dir = await mkdtemp(path.join(os.tmpdir(), 'wf-deploy-inputs-'));
|
|
31
|
+
const personaPath = path.join(dir, 'persona.json');
|
|
32
|
+
await writeFile(personaPath, JSON.stringify(persona, null, 2), 'utf8');
|
|
33
|
+
await writeFile(path.join(dir, 'agent.ts'), 'export default async () => {};', 'utf8');
|
|
34
|
+
return {
|
|
35
|
+
dir,
|
|
36
|
+
personaPath,
|
|
37
|
+
cleanup: () => rm(dir, { recursive: true, force: true })
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
function testWorkspaceAuth() {
|
|
41
|
+
return {
|
|
42
|
+
async resolveWorkspace() {
|
|
43
|
+
return { workspace: 'ws-test', token: 'tok' };
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
function connectedIntegrations() {
|
|
48
|
+
return {
|
|
49
|
+
async isConnected() {
|
|
50
|
+
return true;
|
|
51
|
+
},
|
|
52
|
+
async connect() {
|
|
53
|
+
throw new Error('connect should not be called');
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
function testBundleStager(runnerSource = '') {
|
|
58
|
+
return {
|
|
59
|
+
async stage(input) {
|
|
60
|
+
await mkdir(input.outDir, { recursive: true });
|
|
61
|
+
const runner = path.join(input.outDir, 'runner.mjs');
|
|
62
|
+
const bundle = path.join(input.outDir, 'agent.bundle.mjs');
|
|
63
|
+
const personaCopy = path.join(input.outDir, 'persona.json');
|
|
64
|
+
const pkg = path.join(input.outDir, 'package.json');
|
|
65
|
+
await Promise.all([
|
|
66
|
+
writeFile(runner, runnerSource, 'utf8'),
|
|
67
|
+
writeFile(bundle, '', 'utf8'),
|
|
68
|
+
writeFile(personaCopy, '{}', 'utf8'),
|
|
69
|
+
writeFile(pkg, '{}', 'utf8')
|
|
70
|
+
]);
|
|
71
|
+
return {
|
|
72
|
+
runnerPath: runner,
|
|
73
|
+
bundlePath: bundle,
|
|
74
|
+
personaCopyPath: personaCopy,
|
|
75
|
+
packageJsonPath: pkg,
|
|
76
|
+
sizeBytes: 2
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
test('deploy inputs validate against persona spec and forward to mode env', async () => {
|
|
82
|
+
const { personaPath, cleanup } = await withTempPersona(personaJson());
|
|
83
|
+
const io = createBufferedIO();
|
|
84
|
+
let launchInput;
|
|
85
|
+
const launcher = {
|
|
86
|
+
async launch(input) {
|
|
87
|
+
launchInput = input;
|
|
88
|
+
return {
|
|
89
|
+
id: 'pid-1',
|
|
90
|
+
async stop() {
|
|
91
|
+
/* no-op */
|
|
92
|
+
},
|
|
93
|
+
done: Promise.resolve({ code: 0 })
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
try {
|
|
98
|
+
await deploy({
|
|
99
|
+
personaPath,
|
|
100
|
+
mode: 'dev',
|
|
101
|
+
io,
|
|
102
|
+
inputs: { TOPIC: 'Deploy v1', REGION: 'us-east-1' }
|
|
103
|
+
}, {
|
|
104
|
+
workspaceAuth: testWorkspaceAuth(),
|
|
105
|
+
integrations: connectedIntegrations(),
|
|
106
|
+
bundle: testBundleStager(),
|
|
107
|
+
modes: { dev: launcher }
|
|
108
|
+
});
|
|
109
|
+
assert.deepEqual(launchInput?.inputs, { TOPIC: 'Deploy v1', REGION: 'us-east-1' });
|
|
110
|
+
assert.equal(launchInput?.env?.WORKFORCE_INPUT_TOPIC, 'Deploy v1');
|
|
111
|
+
assert.equal(launchInput?.env?.WORKFORCE_INPUT_REGION, 'us-east-1');
|
|
112
|
+
}
|
|
113
|
+
finally {
|
|
114
|
+
await cleanup();
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
test('deploy inputs reach the dev launcher child process env', async () => {
|
|
118
|
+
const { dir, personaPath, cleanup } = await withTempPersona(personaJson());
|
|
119
|
+
const observedPath = path.join(dir, 'observed-env.json');
|
|
120
|
+
const runnerSource = [
|
|
121
|
+
"import { writeFileSync } from 'node:fs';",
|
|
122
|
+
`writeFileSync(${JSON.stringify(observedPath)}, JSON.stringify({`,
|
|
123
|
+
' topic: process.env.WORKFORCE_INPUT_TOPIC ?? null,',
|
|
124
|
+
' region: process.env.WORKFORCE_INPUT_REGION ?? null,',
|
|
125
|
+
' workspace: process.env.WORKFORCE_WORKSPACE_ID ?? null',
|
|
126
|
+
"}), 'utf8');"
|
|
127
|
+
].join('\n');
|
|
128
|
+
try {
|
|
129
|
+
const result = await deploy({
|
|
130
|
+
personaPath,
|
|
131
|
+
mode: 'dev',
|
|
132
|
+
io: createBufferedIO(),
|
|
133
|
+
inputs: { TOPIC: 'Deploy v1', REGION: 'eu-west-1' }
|
|
134
|
+
}, {
|
|
135
|
+
workspaceAuth: testWorkspaceAuth(),
|
|
136
|
+
integrations: connectedIntegrations(),
|
|
137
|
+
bundle: testBundleStager(runnerSource)
|
|
138
|
+
});
|
|
139
|
+
const handle = result.runHandle;
|
|
140
|
+
const exit = await handle?.done;
|
|
141
|
+
assert.equal(exit?.code, 0);
|
|
142
|
+
assert.deepEqual(JSON.parse(await readFile(observedPath, 'utf8')), {
|
|
143
|
+
topic: 'Deploy v1',
|
|
144
|
+
region: 'eu-west-1',
|
|
145
|
+
workspace: 'ws-test'
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
finally {
|
|
149
|
+
await cleanup();
|
|
150
|
+
}
|
|
151
|
+
});
|
|
152
|
+
test('deploy inputs reject undeclared keys with declared input list', async () => {
|
|
153
|
+
const { personaPath, cleanup } = await withTempPersona(personaJson());
|
|
154
|
+
try {
|
|
155
|
+
await assert.rejects(deploy({
|
|
156
|
+
personaPath,
|
|
157
|
+
mode: 'dev',
|
|
158
|
+
io: createBufferedIO(),
|
|
159
|
+
inputs: { UNKNOWN: 'x' }
|
|
160
|
+
}), /Unknown input 'UNKNOWN'; persona declares: TOPIC, REGION/);
|
|
161
|
+
}
|
|
162
|
+
finally {
|
|
163
|
+
await cleanup();
|
|
164
|
+
}
|
|
165
|
+
});
|
|
166
|
+
test('deploy inputs reject non-string values with clean error', async () => {
|
|
167
|
+
const { personaPath, cleanup } = await withTempPersona(personaJson());
|
|
168
|
+
try {
|
|
169
|
+
await assert.rejects(deploy({
|
|
170
|
+
personaPath,
|
|
171
|
+
mode: 'dev',
|
|
172
|
+
io: createBufferedIO(),
|
|
173
|
+
inputs: { TOPIC: 42 }
|
|
174
|
+
}), /Input 'TOPIC' must be a string/);
|
|
175
|
+
}
|
|
176
|
+
finally {
|
|
177
|
+
await cleanup();
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
test('cloud launcher includes inputs in persona bundle POST body', async () => {
|
|
181
|
+
const dir = await mkdtemp(path.join(os.tmpdir(), 'wf-cloud-inputs-'));
|
|
182
|
+
const oldToken = process.env.WORKFORCE_WORKSPACE_TOKEN;
|
|
183
|
+
const oldFetch = globalThis.fetch;
|
|
184
|
+
const calls = [];
|
|
185
|
+
try {
|
|
186
|
+
const bundle = await writeBundle(dir);
|
|
187
|
+
process.env.WORKFORCE_WORKSPACE_TOKEN = 'tok-cloud';
|
|
188
|
+
globalThis.fetch = (async (input, init) => {
|
|
189
|
+
calls.push({
|
|
190
|
+
url: typeof input === 'string' ? input : input.toString(),
|
|
191
|
+
body: init?.body ? JSON.parse(String(init.body)) : undefined
|
|
192
|
+
});
|
|
193
|
+
return new Response(JSON.stringify({ agentId: 'agent-1', deploymentId: 'dep-1', status: 'starting' }), { status: 201, headers: { 'content-type': 'application/json' } });
|
|
194
|
+
});
|
|
195
|
+
const handle = await cloudLauncher.launch({
|
|
196
|
+
persona: personaJson(),
|
|
197
|
+
bundle,
|
|
198
|
+
workspace: 'ws-test',
|
|
199
|
+
cloudUrl: 'https://cloud.example.com',
|
|
200
|
+
inputs: { TOPIC: 'Deploy v1' },
|
|
201
|
+
io: createBufferedIO(),
|
|
202
|
+
workspaceToken: 'tok-cloud',
|
|
203
|
+
noPrompt: true,
|
|
204
|
+
harnessSource: 'byok',
|
|
205
|
+
byokKey: 'sk-test'
|
|
206
|
+
});
|
|
207
|
+
const deployCall = calls.find((c) => c.url === 'https://cloud.example.com/api/v1/workspaces/ws-test/deployments');
|
|
208
|
+
assert.equal(handle.id, 'agent-1');
|
|
209
|
+
assert.ok(deployCall, 'expected a POST to the deployments endpoint');
|
|
210
|
+
assert.deepEqual(deployCall.body.inputs, { TOPIC: 'Deploy v1' });
|
|
211
|
+
}
|
|
212
|
+
finally {
|
|
213
|
+
if (oldToken === undefined) {
|
|
214
|
+
delete process.env.WORKFORCE_WORKSPACE_TOKEN;
|
|
215
|
+
}
|
|
216
|
+
else {
|
|
217
|
+
process.env.WORKFORCE_WORKSPACE_TOKEN = oldToken;
|
|
218
|
+
}
|
|
219
|
+
globalThis.fetch = oldFetch;
|
|
220
|
+
await rm(dir, { recursive: true, force: true });
|
|
221
|
+
}
|
|
222
|
+
});
|
|
223
|
+
async function writeBundle(dir) {
|
|
224
|
+
const runnerPath = path.join(dir, 'runner.mjs');
|
|
225
|
+
const bundlePath = path.join(dir, 'agent.bundle.mjs');
|
|
226
|
+
const personaCopyPath = path.join(dir, 'persona.json');
|
|
227
|
+
const packageJsonPath = path.join(dir, 'package.json');
|
|
228
|
+
await Promise.all([
|
|
229
|
+
writeFile(runnerPath, 'runner', 'utf8'),
|
|
230
|
+
writeFile(bundlePath, 'agent', 'utf8'),
|
|
231
|
+
writeFile(personaCopyPath, '{}', 'utf8'),
|
|
232
|
+
writeFile(packageJsonPath, '{"type":"module"}', 'utf8')
|
|
233
|
+
]);
|
|
234
|
+
return {
|
|
235
|
+
runnerPath,
|
|
236
|
+
bundlePath,
|
|
237
|
+
personaCopyPath,
|
|
238
|
+
packageJsonPath,
|
|
239
|
+
sizeBytes: 1
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
//# sourceMappingURL=input-values.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-values.test.js","sourceRoot":"","sources":["../../src/modes/input-values.test.ts"],"names":[],"mappings":"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"}
|
package/dist/modes/sandbox.d.ts
CHANGED
|
@@ -29,7 +29,7 @@ export declare const sandboxLauncher: ModeLauncher;
|
|
|
29
29
|
* Pick the sandbox client implementation based on env. Public so the
|
|
30
30
|
* deploy orchestrator (and tests) can plug in an explicit choice.
|
|
31
31
|
*/
|
|
32
|
-
export declare function resolveSandboxClient(input: Pick<ModeLaunchInput, 'workspace' | 'persona' | 'env'> & Partial<Pick<ModeLaunchInput, 'io'>>, overrides?: {
|
|
32
|
+
export declare function resolveSandboxClient(input: Pick<ModeLaunchInput, 'workspace' | 'persona' | 'env'> & Partial<Pick<ModeLaunchInput, 'io' | 'workspaceToken' | 'cloudUrl'>>, overrides?: {
|
|
33
33
|
/** Force BYO even when both BYO and workforce-managed are configured. */
|
|
34
34
|
forceByo?: boolean;
|
|
35
35
|
/** Inject a custom client (tests). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../src/modes/sandbox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EAEf,YAAY,EACb,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../src/modes/sandbox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EAEf,YAAY,EACb,MAAM,aAAa,CAAC;AAErB,OAAO,EAIL,KAAK,aAAa,EAEnB,MAAM,qBAAqB,CAAC;AAI7B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,eAAe,EAAE,YA4D7B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,WAAW,GAAG,SAAS,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,GAAG,gBAAgB,GAAG,UAAU,CAAC,CAAC,EACpI,SAAS,GAAE;IACT,yEAAyE;IACzE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,sCAAsC;IACtC,MAAM,CAAC,EAAE,aAAa,CAAC;CACnB,GACL,aAAa,CAkCf;AAGD,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,wBAAwB,EACxB,KAAK,aAAa,EAClB,KAAK,aAAa,EACnB,MAAM,qBAAqB,CAAC;AAE7B;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,kBAAkB,IAAI,WAAW,GAAG,SAAS,CAU5D"}
|
package/dist/modes/sandbox.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { runtimeContextEnv } from '../runtime-context.js';
|
|
1
2
|
import { SANDBOX_BUNDLE_DIR, createByoSandboxClient, createProxySandboxClient } from './sandbox-client.js';
|
|
2
3
|
const DEFAULT_CLOUD_URL = 'https://cloud.agentworkforce.com';
|
|
3
4
|
/**
|
|
@@ -31,6 +32,7 @@ export const sandboxLauncher = {
|
|
|
31
32
|
label: `wf-${input.persona.id}`,
|
|
32
33
|
env: {
|
|
33
34
|
...(input.env ?? {}),
|
|
35
|
+
...runtimeContextEnv(input.persona, input.env),
|
|
34
36
|
WORKFORCE_WORKSPACE_ID: input.workspace,
|
|
35
37
|
WORKFORCE_PERSONA_ID: input.persona.id
|
|
36
38
|
}
|
|
@@ -102,11 +104,11 @@ export function resolveSandboxClient(input, overrides = {}) {
|
|
|
102
104
|
...(organizationId ? { organizationId } : {})
|
|
103
105
|
});
|
|
104
106
|
}
|
|
105
|
-
const workspaceToken = process.env.WORKFORCE_WORKSPACE_TOKEN?.trim();
|
|
107
|
+
const workspaceToken = input.workspaceToken?.trim() || process.env.WORKFORCE_WORKSPACE_TOKEN?.trim();
|
|
106
108
|
if (!workspaceToken) {
|
|
107
109
|
throw new Error('sandbox launcher: no Daytona credentials and no workforce workspace token. Either export DAYTONA_API_KEY, or run `workforce login` (sets WORKFORCE_WORKSPACE_TOKEN) so we can mint a workforce-managed sandbox.');
|
|
108
110
|
}
|
|
109
|
-
const cloudUrl = (process.env.WORKFORCE_CLOUD_URL?.trim() || DEFAULT_CLOUD_URL).replace(/\/$/, '');
|
|
111
|
+
const cloudUrl = (input.cloudUrl?.trim() || process.env.WORKFORCE_CLOUD_URL?.trim() || DEFAULT_CLOUD_URL).replace(/\/$/, '');
|
|
110
112
|
return createProxySandboxClient({
|
|
111
113
|
cloudUrl,
|
|
112
114
|
workspaceId: input.workspace,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../src/modes/sandbox.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,wBAAwB,EAGzB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,iBAAiB,GAAG,kCAAkC,CAAC;AAE7D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAiB;IAC3C,KAAK,CAAC,MAAM,CAAC,KAAsB;QACjC,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YAC/B,KAAK,EAAE,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE;YAC/B,GAAG,EAAE;gBACH,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC;gBACpB,sBAAsB,EAAE,KAAK,CAAC,SAAS;gBACvC,oBAAoB,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE;aACvC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,gEAAgE;YAChE,gEAAgE;YAChE,qCAAqC;YACrC,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YACpD,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;YACrC,IAAI,QAAQ;gBAAE,OAAO;YACrB,QAAQ,GAAG,IAAI,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,KAAK,CAAC,EAAE,CAAC,IAAI,CACX,4BAA4B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAC/E,CAAC;YACJ,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,IAAI,GAAG,CAAC,KAAK,IAAI,EAAE;YACvB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,iBAAiB,EAAE;oBAC1D,GAAG,EAAE,kBAAkB;iBACxB,CAAC,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBACpC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;oBAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,MAAM,EAAE,CAAC,CAAC;gBAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;YACnC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,KAAK,CAAC,EAAE,CAAC,KAAK,CACZ,gCAAgC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACnF,CAAC;gBACJ,CAAC;gBACD,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YACrB,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,OAAO;YACL,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,IAAI;YACJ,IAAI;SACL,CAAC;IACJ,CAAC;CACF,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAClC,
|
|
1
|
+
{"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../src/modes/sandbox.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-context.d.ts","sourceRoot":"","sources":["../src/runtime-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAmB/D,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,WAAW,EACpB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,GACtC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOxB"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
const AGENT_CONTEXT_ENV = 'WORKFORCE_AGENT_CONTEXT';
|
|
2
|
+
const DEPLOYMENT_CONTEXT_ENV = 'WORKFORCE_DEPLOYMENT_CONTEXT';
|
|
3
|
+
export function runtimeContextEnv(persona, env) {
|
|
4
|
+
return {
|
|
5
|
+
[AGENT_CONTEXT_ENV]: nonEmpty(env?.[AGENT_CONTEXT_ENV]) ?? JSON.stringify(resolveAgentContext(persona, env)),
|
|
6
|
+
[DEPLOYMENT_CONTEXT_ENV]: nonEmpty(env?.[DEPLOYMENT_CONTEXT_ENV]) ?? JSON.stringify(resolveDeploymentContext(persona, env))
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
function nonEmpty(value) {
|
|
10
|
+
const trimmed = value?.trim();
|
|
11
|
+
return trimmed && trimmed.length > 0 ? trimmed : undefined;
|
|
12
|
+
}
|
|
13
|
+
function resolveAgentContext(persona, env) {
|
|
14
|
+
return {
|
|
15
|
+
id: nonEmpty(env?.WORKFORCE_AGENT_ID) ?? persona.id,
|
|
16
|
+
deployedName: nonEmpty(env?.WORKFORCE_AGENT_DEPLOYED_NAME) ?? persona.id,
|
|
17
|
+
spawnedByAgentId: nonEmpty(env?.WORKFORCE_SPAWNED_BY_AGENT_ID) ?? null
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
function resolveDeploymentContext(persona, env) {
|
|
21
|
+
return {
|
|
22
|
+
id: nonEmpty(env?.WORKFORCE_DEPLOYMENT_ID) ?? persona.id,
|
|
23
|
+
triggerKind: parseTriggerKind(nonEmpty(env?.WORKFORCE_DEPLOYMENT_TRIGGER_KIND)) ?? inferTriggerKind(persona),
|
|
24
|
+
parentDeploymentId: nonEmpty(env?.WORKFORCE_PARENT_DEPLOYMENT_ID) ?? null
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
function parseTriggerKind(value) {
|
|
28
|
+
if (value === 'inbox' || value === 'clock' || value === 'radio')
|
|
29
|
+
return value;
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
function inferTriggerKind(persona) {
|
|
33
|
+
if (hasIntegrationTriggers(persona))
|
|
34
|
+
return 'radio';
|
|
35
|
+
return 'clock';
|
|
36
|
+
}
|
|
37
|
+
function hasIntegrationTriggers(persona) {
|
|
38
|
+
return Object.values(persona.integrations ?? {}).some((integration) => (integration.triggers?.length ?? 0) > 0);
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=runtime-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-context.js","sourceRoot":"","sources":["../src/runtime-context.ts"],"names":[],"mappings":"AAEA,MAAM,iBAAiB,GAAG,yBAAyB,CAAC;AACpD,MAAM,sBAAsB,GAAG,8BAA8B,CAAC;AAgB9D,MAAM,UAAU,iBAAiB,CAC/B,OAAoB,EACpB,GAAuC;IAEvC,OAAO;QACL,CAAC,iBAAiB,CAAC,EACjB,QAAQ,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACzF,CAAC,sBAAsB,CAAC,EACtB,QAAQ,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;KACpG,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAyB;IACzC,MAAM,OAAO,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC;IAC9B,OAAO,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7D,CAAC;AAED,SAAS,mBAAmB,CAC1B,OAAoB,EACpB,GAAuC;IAEvC,OAAO;QACL,EAAE,EAAE,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAC,IAAI,OAAO,CAAC,EAAE;QACnD,YAAY,EAAE,QAAQ,CAAC,GAAG,EAAE,6BAA6B,CAAC,IAAI,OAAO,CAAC,EAAE;QACxE,gBAAgB,EAAE,QAAQ,CAAC,GAAG,EAAE,6BAA6B,CAAC,IAAI,IAAI;KACvE,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,OAAoB,EACpB,GAAuC;IAEvC,OAAO;QACL,EAAE,EAAE,QAAQ,CAAC,GAAG,EAAE,uBAAuB,CAAC,IAAI,OAAO,CAAC,EAAE;QACxD,WAAW,EAAE,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,iCAAiC,CAAC,CAAC,IAAI,gBAAgB,CAAC,OAAO,CAAC;QAC5G,kBAAkB,EAAE,QAAQ,CAAC,GAAG,EAAE,8BAA8B,CAAC,IAAI,IAAI;KAC1E,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAyB;IACjD,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAC9E,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAoB;IAC5C,IAAI,sBAAsB,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IACpD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAoB;IAClD,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAClH,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -19,6 +19,18 @@ export interface DeployOptions {
|
|
|
19
19
|
dryRun?: boolean;
|
|
20
20
|
/** Override the WORKFORCE_CLOUD_URL; defaults to env or production. */
|
|
21
21
|
cloudUrl?: string;
|
|
22
|
+
/** Fail instead of prompting for cloud auth/integration setup. */
|
|
23
|
+
noPrompt?: boolean;
|
|
24
|
+
/** Cloud harness credential source. */
|
|
25
|
+
harnessSource?: 'plan' | 'byok' | 'oauth';
|
|
26
|
+
/** BYOK API key used when `harnessSource` is `byok`. */
|
|
27
|
+
byokKey?: string;
|
|
28
|
+
/** Existing cloud persona behavior. Defaults to `cancel`. */
|
|
29
|
+
onExists?: 'update' | 'destroy' | 'cancel';
|
|
30
|
+
/** Deploy-time persona input overrides, supplied as `--input KEY=value`. Forwarded to hosted cloud deployments. */
|
|
31
|
+
inputs?: Record<string, string>;
|
|
32
|
+
/** Runtime log streaming hook. */
|
|
33
|
+
onLog?: (line: string) => void;
|
|
22
34
|
/** Override stdout writer for tests + structured outputs. */
|
|
23
35
|
io?: DeployIO;
|
|
24
36
|
}
|
|
@@ -103,6 +115,22 @@ export interface ModeLaunchInput {
|
|
|
103
115
|
* cloud. Mode-specific (sandbox launcher only); other modes ignore.
|
|
104
116
|
*/
|
|
105
117
|
byoSandbox?: boolean;
|
|
118
|
+
/** Workspace-scoped auth token resolved by the deploy orchestrator. */
|
|
119
|
+
workspaceToken?: string;
|
|
120
|
+
/** Cloud base URL override. */
|
|
121
|
+
cloudUrl?: string;
|
|
122
|
+
/** Fail instead of prompting for cloud setup. */
|
|
123
|
+
noPrompt?: boolean;
|
|
124
|
+
/** Cloud harness credential source. */
|
|
125
|
+
harnessSource?: 'plan' | 'byok' | 'oauth';
|
|
126
|
+
/** BYOK API key used when `harnessSource` is `byok`. */
|
|
127
|
+
byokKey?: string;
|
|
128
|
+
/** Existing cloud persona behavior. Defaults to `cancel`. */
|
|
129
|
+
onExists?: 'update' | 'destroy' | 'cancel';
|
|
130
|
+
/** Runtime inputs forwarded to launchers that support them. */
|
|
131
|
+
inputs?: Record<string, string>;
|
|
132
|
+
/** Runtime log streaming hook. */
|
|
133
|
+
onLog?: (line: string) => void;
|
|
106
134
|
}
|
|
107
135
|
export interface ModeLaunchHandle {
|
|
108
136
|
/** Mode-specific identifier (pid for dev, sandboxId for sandbox, deploymentId for cloud). */
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentworkforce/deploy",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.3",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -24,17 +24,17 @@
|
|
|
24
24
|
"publishConfig": {
|
|
25
25
|
"access": "public"
|
|
26
26
|
},
|
|
27
|
+
"dependencies": {
|
|
28
|
+
"@daytonaio/sdk": "^0.148.0",
|
|
29
|
+
"esbuild": "^0.25.0",
|
|
30
|
+
"@agentworkforce/persona-kit": "3.0.3",
|
|
31
|
+
"@agentworkforce/runtime": "3.0.3"
|
|
32
|
+
},
|
|
27
33
|
"scripts": {
|
|
28
34
|
"build": "tsc -p tsconfig.json",
|
|
29
35
|
"dev": "tsc -p tsconfig.json --watch --preserveWatchOutput",
|
|
30
36
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
31
37
|
"test": "tsc -p tsconfig.json && node --test dist/**/*.test.js dist/*.test.js",
|
|
32
38
|
"lint": "tsc -p tsconfig.json --noEmit"
|
|
33
|
-
},
|
|
34
|
-
"dependencies": {
|
|
35
|
-
"@agentworkforce/persona-kit": "workspace:*",
|
|
36
|
-
"@agentworkforce/runtime": "workspace:*",
|
|
37
|
-
"@daytonaio/sdk": "^0.148.0",
|
|
38
|
-
"esbuild": "^0.25.0"
|
|
39
39
|
}
|
|
40
|
-
}
|
|
40
|
+
}
|