@opencomputer/cli 0.6.4 → 0.6.6

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 CHANGED
@@ -7,7 +7,7 @@ npx @opencomputer/cli init my-agent
7
7
  cd my-agent
8
8
  npm install
9
9
  npx --package @opencomputer/cli opencomputer login
10
- npx --package @opencomputer/cli opencomputer link
10
+ npx --package @opencomputer/cli opencomputer link --project <id-or-slug>
11
11
  ```
12
12
 
13
13
  Agent definitions live under `opencomputer/agents/`. The default initializer
@@ -19,12 +19,10 @@ Watch source and deploy changes to Development (Cloud):
19
19
  npm run deploy -- --watch
20
20
  ```
21
21
 
22
- `opencomputer link` asks whether to create a project or select an existing
23
- project from the authenticated account. Later commands reuse that local binding.
24
- If you skip this step, the first project-scoped command prompts you to link.
25
- Use `opencomputer deploy --watch --project <id|slug>` for non-interactive
26
- selection or `opencomputer deploy --watch --create-project <name>` to create
27
- one explicitly.
22
+ `opencomputer link --project <id|slug>` links an existing project;
23
+ `opencomputer link --create-project <name>` creates and links one. Later
24
+ commands reuse that local binding without prompting. An unlinked command fails
25
+ with the exact link command needed to proceed.
28
26
 
29
27
  The production cloud API (`https://app.opencomputer.dev`) is the default.
30
28
  Override it only with `--api-url` or `OPENCOMPUTER_API_URL`.
@@ -61,21 +59,21 @@ structured payload is available to agent code as `input.payload`.
61
59
 
62
60
  ## Secrets and managed egress
63
61
 
64
- Secret values are read from a hidden prompt, or from standard input in CI.
62
+ Secret values are accepted only from standard input with `--value-stdin`.
65
63
  They are write-only: list output contains names, scope, environment, and
66
- allowed origins, never values.
64
+ allowed origins, never values or command-line arguments.
67
65
 
68
- During development, put agent secrets in `opencomputer/.env.local`. The CLI
69
- syncs only names referenced by `useSecret()` and limits each value to origins
70
- declared by `defineConnection()`. It asks before the first upload, watches for
71
- changes, and skips unrelated variables rather than granting wildcard access.
66
+ During development, `opencomputer doctor` checks names referenced by
67
+ `useSecret()` against `opencomputer/.env.example` and the ignored
68
+ `opencomputer/.env.local`. Upload values explicitly with `secrets set`; the CLI
69
+ infers and enforces origins declared by `defineConnection()`.
72
70
 
73
71
  ```bash
74
72
  # Project-level development secret. Allowed origins are inferred from code.
75
- opencomputer secrets set GITHUB_TOKEN
73
+ printf %s "$GITHUB_TOKEN" | opencomputer secrets set GITHUB_TOKEN --value-stdin
76
74
 
77
75
  # Agent-level production override.
78
- opencomputer secrets set GITHUB_TOKEN \
76
+ printf %s "$GITHUB_TOKEN" | opencomputer secrets set GITHUB_TOKEN --value-stdin \
79
77
  --agent current \
80
78
  --environment production
81
79
 
@@ -88,8 +86,8 @@ environment, use encrypted agent runtime variables. They require no source
88
86
  declaration and apply to newly started runtimes:
89
87
 
90
88
  ```bash
91
- opencomputer env set DATABASE_URL
92
- opencomputer env set DATABASE_URL --agent current --environment production
89
+ printf %s "$DATABASE_URL" | opencomputer env set DATABASE_URL --value-stdin
90
+ printf %s "$DATABASE_URL" | opencomputer env set DATABASE_URL --value-stdin --agent current --environment production
93
91
  opencomputer env list --environment development
94
92
  opencomputer env remove DATABASE_URL --environment development
95
93
  ```
@@ -109,3 +107,9 @@ opencomputer logs
109
107
  opencomputer logs --agent my-agent --environment development --follow
110
108
  opencomputer logs --session <session-id> --json
111
109
  ```
110
+
111
+ Use `opencomputer sessions tail <session-id> --json` for durable NDJSON session
112
+ events and `opencomputer channels status --json` for the last accepted event,
113
+ delivery outcome, and redacted error category. All commands accept `--json`;
114
+ mutations accept `--idempotency-key <stable-retry-key>`. Run
115
+ `opencomputer doctor --json` for the sub-second local pre-deploy scan.
package/dist/api.d.ts CHANGED
@@ -110,6 +110,28 @@ export interface ManagedAgentLog {
110
110
  sessionId: string;
111
111
  data: Record<string, unknown>;
112
112
  }
113
+ export interface ManagedChannelStatus {
114
+ id: string;
115
+ channel: "slack";
116
+ channelId?: string;
117
+ agentId: string;
118
+ alias: string;
119
+ appName?: string;
120
+ teamName?: string;
121
+ status: string;
122
+ verifiedAt?: string;
123
+ lastEventAt?: string;
124
+ lastDelivery?: {
125
+ status: "delivered" | "failed";
126
+ at: string;
127
+ };
128
+ lastError?: {
129
+ category: string;
130
+ at: string;
131
+ };
132
+ createdAt: string;
133
+ updatedAt: string;
134
+ }
113
135
  export interface ManagedSessionSnapshot {
114
136
  id: string;
115
137
  status: string;
@@ -136,7 +158,8 @@ export declare class APIError extends Error {
136
158
  }
137
159
  export declare class OpenComputerClient {
138
160
  private readonly config;
139
- constructor(config: ResolvedConfig);
161
+ private readonly idempotencyKey?;
162
+ constructor(config: ResolvedConfig, idempotencyKey?: string | undefined);
140
163
  private request;
141
164
  startLogin(): Promise<{
142
165
  device_code: string;
@@ -257,6 +280,7 @@ export declare class OpenComputerClient {
257
280
  logs: ManagedAgentLog[];
258
281
  cursor: string;
259
282
  }>;
283
+ channels(): Promise<ManagedChannelStatus[]>;
260
284
  registerDeployment(input: {
261
285
  agentId: string;
262
286
  name: string;
@@ -300,7 +324,7 @@ export declare class OpenComputerClient {
300
324
  createSession(agentId: string): Promise<CreateSessionResult>;
301
325
  sessions(): Promise<ManagedSessionSnapshot[]>;
302
326
  session(sessionId: string): Promise<ManagedSessionSnapshot>;
303
- createTurn(sessionId: string, input: string): Promise<{
327
+ createTurn(sessionId: string, input: string, idempotencyKey?: string): Promise<{
304
328
  turnId: string;
305
329
  duplicate: boolean;
306
330
  }>;
package/dist/api.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { createHash } from "node:crypto";
1
2
  export class APIError extends Error {
2
3
  status;
3
4
  constructor(message, status) {
@@ -22,8 +23,10 @@ function errorMessage(body, status) {
22
23
  }
23
24
  export class OpenComputerClient {
24
25
  config;
25
- constructor(config) {
26
+ idempotencyKey;
27
+ constructor(config, idempotencyKey) {
26
28
  this.config = config;
29
+ this.idempotencyKey = idempotencyKey;
27
30
  }
28
31
  async request(path, init = {}, authenticated = true) {
29
32
  const headers = new Headers(init.headers);
@@ -36,6 +39,18 @@ export class OpenComputerClient {
36
39
  }
37
40
  headers.set("x-api-key", this.config.apiKey);
38
41
  }
42
+ const method = (init.method ?? "GET").toUpperCase();
43
+ if (this.idempotencyKey && method !== "GET" && method !== "HEAD") {
44
+ headers.set("idempotency-key", createHash("sha256")
45
+ .update(this.idempotencyKey)
46
+ .update("\0")
47
+ .update(method)
48
+ .update("\0")
49
+ .update(path)
50
+ .update("\0")
51
+ .update(typeof init.body === "string" ? init.body : "")
52
+ .digest("hex"));
53
+ }
39
54
  const response = await fetch(`${this.config.apiUrl}${path}`, {
40
55
  ...init,
41
56
  headers,
@@ -220,6 +235,10 @@ export class OpenComputerClient {
220
235
  query.set("limit", String(input.limit));
221
236
  return this.request(`/api/managed-agents/logs?${query.toString()}`);
222
237
  }
238
+ async channels() {
239
+ const result = await this.request("/api/managed-agents/channels");
240
+ return result.channels;
241
+ }
223
242
  registerDeployment(input) {
224
243
  return this.request("/api/managed-agents/deployments", { method: "POST", body: JSON.stringify(input) });
225
244
  }
@@ -236,12 +255,12 @@ export class OpenComputerClient {
236
255
  session(sessionId) {
237
256
  return this.request(`/api/managed-agents/sessions/${encodeURIComponent(sessionId)}`);
238
257
  }
239
- createTurn(sessionId, input) {
258
+ createTurn(sessionId, input, idempotencyKey = crypto.randomUUID()) {
240
259
  return this.request(`/api/managed-agents/sessions/${encodeURIComponent(sessionId)}/turns`, {
241
260
  method: "POST",
242
261
  body: JSON.stringify({
243
262
  input,
244
- idempotencyKey: crypto.randomUUID(),
263
+ idempotencyKey,
245
264
  }),
246
265
  });
247
266
  }
package/dist/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,21 @@
1
+ import assert from "node:assert/strict";
2
+ import test from "node:test";
3
+ import { OpenComputerClient } from "./api.js";
4
+ test("mutations derive stable, operation-specific idempotency headers", async (context) => {
5
+ const requests = [];
6
+ context.mock.method(globalThis, "fetch", async (input, init) => {
7
+ const request = new Request(input, init);
8
+ requests.push(request);
9
+ return Response.json({ id: "project", agents: [], environments: [] });
10
+ });
11
+ const client = new OpenComputerClient({ apiUrl: "https://app.opencomputer.dev", apiKey: "test" }, "retry-42");
12
+ await client.createProject("Agent", "agent");
13
+ await client.createProject("Agent", "agent");
14
+ await client.createProject("Different", "different");
15
+ const keys = requests.map((request) => request.headers.get("idempotency-key"));
16
+ assert.ok(keys[0]);
17
+ assert.equal(keys[0], keys[1]);
18
+ assert.notEqual(keys[0], keys[2]);
19
+ assert.equal(keys[0]?.includes("retry-42"), false);
20
+ });
21
+ //# sourceMappingURL=api.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.test.js","sourceRoot":"","sources":["../src/api.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,IAAI,CAAC,iEAAiE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IACxF,MAAM,QAAQ,GAAc,EAAE,CAAC;IAC/B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,KAA6B,EAAE,IAAkB,EAAE,EAAE;QACnG,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACzC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvB,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,IAAI,kBAAkB,CACnC,EAAE,MAAM,EAAE,8BAA8B,EAAE,MAAM,EAAE,MAAM,EAAE,EAC1D,UAAU,CACX,CAAC;IAEF,MAAM,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7C,MAAM,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7C,MAAM,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAErD,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC/E,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACnB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC"}
package/dist/binding.d.ts CHANGED
@@ -10,8 +10,6 @@ export interface ProjectBinding {
10
10
  export interface ProjectBindingOptions {
11
11
  project?: string;
12
12
  createProjectName?: string;
13
- interactive?: boolean;
14
- select?: boolean;
15
13
  }
16
14
  export declare function findOpenComputerProjectRoot(agentRoot: string): Promise<string>;
17
15
  export declare function ensureProjectBinding(client: Pick<OpenComputerClient, "projects" | "createProject">, config: ResolvedConfig, agentRoot: string, options?: ProjectBindingOptions): Promise<ProjectBinding>;
package/dist/binding.js CHANGED
@@ -1,6 +1,5 @@
1
- import { createInterface } from "node:readline/promises";
2
1
  import { access, mkdir, readFile, writeFile } from "node:fs/promises";
3
- import { basename, dirname, resolve } from "node:path";
2
+ import { dirname, resolve } from "node:path";
4
3
  import { agentIdFromName, } from "./project.js";
5
4
  async function exists(path) {
6
5
  try {
@@ -42,28 +41,6 @@ async function readBinding(projectRoot, apiUrl) {
42
41
  return null;
43
42
  }
44
43
  }
45
- async function chooseProject(projects, defaultName) {
46
- const terminal = createInterface({ input: process.stdin, output: process.stdout });
47
- try {
48
- process.stdout.write("\nConnect this app to a Development (Cloud) project:\n\n");
49
- process.stdout.write(` 1) Create a new project\n`);
50
- projects.forEach((project, index) => {
51
- process.stdout.write(` ${String(index + 2)}) ${project.name} (${project.slug})\n`);
52
- });
53
- const answer = (await terminal.question("\nSelect [1]: ")).trim() || "1";
54
- const selected = Number.parseInt(answer, 10);
55
- if (!Number.isInteger(selected) || selected < 1 || selected > projects.length + 1) {
56
- throw new Error("Choose one of the numbered project options.");
57
- }
58
- if (selected > 1)
59
- return { project: projects[selected - 2] };
60
- const name = (await terminal.question(`Project name [${defaultName}]: `)).trim();
61
- return { createName: name || defaultName };
62
- }
63
- finally {
64
- terminal.close();
65
- }
66
- }
67
44
  async function persistBinding(projectRoot, config, project) {
68
45
  const agent = project.agents[0];
69
46
  if (!agent)
@@ -86,7 +63,7 @@ export async function ensureProjectBinding(client, config, agentRoot, options =
86
63
  }
87
64
  const projectRoot = await findOpenComputerProjectRoot(agentRoot);
88
65
  const projects = await client.projects();
89
- if (!options.project && !options.createProjectName && !options.select) {
66
+ if (!options.project && !options.createProjectName) {
90
67
  const existing = await readBinding(projectRoot, config.apiUrl);
91
68
  if (existing &&
92
69
  projects.some((project) => project.id === existing.projectId &&
@@ -101,13 +78,12 @@ export async function ensureProjectBinding(client, config, agentRoot, options =
101
78
  throw new Error(`Project ${options.project} was not found in this account.`);
102
79
  }
103
80
  let createName = options.createProjectName;
81
+ if (!project && createName) {
82
+ const slug = agentIdFromName(createName);
83
+ project = projects.find((candidate) => candidate.slug === slug);
84
+ }
104
85
  if (!project && !createName) {
105
- if (options.interactive === false || !process.stdin.isTTY || !process.stdout.isTTY) {
106
- throw new Error("This app is not connected to a cloud project. Run `opencomputer link`.");
107
- }
108
- const choice = await chooseProject(projects, basename(projectRoot));
109
- project = choice.project;
110
- createName = choice.createName;
86
+ throw new Error("This app is not connected to a cloud project. Run `opencomputer link --project <id|slug>` or `opencomputer link --create-project <name>`.");
111
87
  }
112
88
  project ??= await client.createProject(createName, agentIdFromName(createName));
113
89
  return persistBinding(projectRoot, config, project);
@@ -1 +1 @@
1
- {"version":3,"file":"binding.js","sourceRoot":"","sources":["../src/binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIvD,OAAO,EACL,eAAe,GAChB,MAAM,cAAc,CAAC;AAiBtB,KAAK,UAAU,MAAM,CAAC,IAAY;IAChC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,SAAiB;IAEjB,IAAI,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IACnC,SAAS,CAAC;QACR,IAAI,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC;YACnE,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,MAAM,KAAK,SAAS;YAAE,MAAM;QAChC,SAAS,GAAG,MAAM,CAAC;IACrB,CAAC;IACD,MAAM,IAAI,KAAK,CACb,0FAA0F,CAC3F,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,WAAmB;IACtC,OAAO,OAAO,CAAC,WAAW,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;AAC/D,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,WAAmB,EACnB,MAAc;IAEd,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CACtB,MAAM,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,CACtB,CAAC;QAC7B,OAAO,KAAK,CAAC,OAAO,KAAK,CAAC;YACxB,KAAK,CAAC,MAAM,KAAK,MAAM;YACvB,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;YACnC,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;YACrC,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;YACjC,CAAC,CAAE,KAAwB;YAC3B,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,QAA0B,EAC1B,WAAmB;IAEnB,MAAM,QAAQ,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACnF,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QACjF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACpD,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC;QACtF,CAAC,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC;QACzE,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClF,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,QAAQ,GAAG,CAAC;YAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,WAAW,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACjF,OAAO,EAAE,UAAU,EAAE,IAAI,IAAI,WAAW,EAAE,CAAC;IAC7C,CAAC;YAAS,CAAC;QACT,QAAQ,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,WAAmB,EACnB,MAAsB,EACtB,OAAuB;IAEvB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,CAAC,IAAI,wBAAwB,CAAC,CAAC;IAC7E,MAAM,OAAO,GAAmB;QAC9B,OAAO,EAAE,CAAC;QACV,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,WAAW,EAAE,OAAO,CAAC,IAAI;QACzB,OAAO,EAAE,KAAK,CAAC,EAAE;KAClB,CAAC;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC;IACpD,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACzD,MAAM,SAAS,CACb,WAAW,CAAC,WAAW,CAAC,EACxB,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EACvC,EAAE,IAAI,EAAE,KAAK,EAAE,CAChB,CAAC;IACF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAA8D,EAC9D,MAAsB,EACtB,SAAiB,EACjB,UAAiC,EAAE;IAEnC,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,MAAM,WAAW,GAAG,MAAM,2BAA2B,CAAC,SAAS,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;IACzC,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACtE,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/D,IACE,QAAQ;YACR,QAAQ,CAAC,IAAI,CACX,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,EAAE,KAAK,QAAQ,CAAC,SAAS;gBACjC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,QAAQ,CAAC,OAAO,CAAC,CAChE,EACD,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;IAED,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO;QAC3B,CAAC,CAAC,QAAQ,CAAC,IAAI,CACX,CAAC,SAAS,EAAE,EAAE,CACZ,SAAS,CAAC,EAAE,KAAK,OAAO,CAAC,OAAO,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC,OAAO,CACzE;QACH,CAAC,CAAC,SAAS,CAAC;IACd,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,CAAC,OAAO,iCAAiC,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,UAAU,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAC3C,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;QAC5B,IAAI,OAAO,CAAC,WAAW,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACnF,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;QACpE,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QACzB,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IACjC,CAAC;IACD,OAAO,KAAK,MAAM,MAAM,CAAC,aAAa,CACpC,UAAW,EACX,eAAe,CAAC,UAAW,CAAC,CAC7B,CAAC;IACF,OAAO,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"binding.js","sourceRoot":"","sources":["../src/binding.ts"],"names":[],"mappings":"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"}
@@ -34,7 +34,7 @@ test("first dev can select an existing project and later reuses its binding", as
34
34
  },
35
35
  };
36
36
  const config = { apiUrl: "https://app.opencomputer.dev", apiKey: "test" };
37
- const selected = await ensureProjectBinding(client, config, initialized.agentRoot, { project: "existing-project", interactive: false });
37
+ const selected = await ensureProjectBinding(client, config, initialized.agentRoot, { project: "existing-project" });
38
38
  assert.equal(selected.projectId, "prj_existing");
39
39
  assert.equal(selected.agentId, "agent-cloud");
40
40
  assert.equal((await readManifest(initialized.agentRoot)).id, "hello-world");
@@ -42,7 +42,7 @@ test("first dev can select an existing project and later reuses its binding", as
42
42
  assert.doesNotMatch(projectSource, /prj_existing|agent-cloud/);
43
43
  assert.match(projectSource, /name:/);
44
44
  assert.deepEqual(JSON.parse(await readFile(resolve(root, ".opencomputer", "project.json"), "utf8")), selected);
45
- const reused = await ensureProjectBinding(client, config, initialized.agentRoot, { interactive: false });
45
+ const reused = await ensureProjectBinding(client, config, initialized.agentRoot, {});
46
46
  assert.deepEqual(reused, selected);
47
47
  assert.equal(creates, 0);
48
48
  }
@@ -61,7 +61,28 @@ test("non-interactive commands direct an unlinked app to link", async () => {
61
61
  async createProject() {
62
62
  return project();
63
63
  },
64
- }, { apiUrl: "https://app.opencomputer.dev" }, initialized.agentRoot, { interactive: false }), /opencomputer link/);
64
+ }, { apiUrl: "https://app.opencomputer.dev" }, initialized.agentRoot, {}), /opencomputer link/);
65
+ }
66
+ finally {
67
+ await rm(root, { recursive: true, force: true });
68
+ }
69
+ });
70
+ test("explicit project creation reuses the existing slug on retry", async () => {
71
+ const root = await mkdtemp(resolve(tmpdir(), "opencomputer-binding-"));
72
+ try {
73
+ const initialized = await initializeAgentProject(root);
74
+ let creates = 0;
75
+ const binding = await ensureProjectBinding({
76
+ async projects() {
77
+ return [project()];
78
+ },
79
+ async createProject() {
80
+ creates += 1;
81
+ return project();
82
+ },
83
+ }, { apiUrl: "https://app.opencomputer.dev" }, initialized.agentRoot, { createProjectName: "Existing Project" });
84
+ assert.equal(binding.projectId, "prj_existing");
85
+ assert.equal(creates, 0);
65
86
  }
66
87
  finally {
67
88
  await rm(root, { recursive: true, force: true });
@@ -1 +1 @@
1
- {"version":3,"file":"binding.test.js","sourceRoot":"","sources":["../src/binding.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"binding.test.js","sourceRoot":"","sources":["../src/binding.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEpE,SAAS,OAAO;IACd,OAAO;QACL,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;QACpD,YAAY,EAAE;YACZ,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,0BAA0B,EAAE;YAC9D,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,0BAA0B,EAAE;SAC9D;QACD,SAAS,EAAE,0BAA0B;QACrC,SAAS,EAAE,0BAA0B;KACtC,CAAC;AACJ,CAAC;AAED,IAAI,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;IACvF,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,uBAAuB,CAAC,CAAC,CAAC;IACvE,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,MAAM,MAAM,GAAG;YACb,KAAK,CAAC,QAAQ;gBACZ,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;YACrB,CAAC;YACD,KAAK,CAAC,aAAa;gBACjB,OAAO,IAAI,CAAC,CAAC;gBACb,OAAO,OAAO,EAAE,CAAC;YACnB,CAAC;SACF,CAAC;QACF,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,8BAA8B,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAC1E,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CACzC,MAAM,EACN,MAAM,EACN,WAAW,CAAC,SAAS,EACrB,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAChC,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QACjD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9C,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,YAAY,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;QAC5E,MAAM,aAAa,GAAG,MAAM,QAAQ,CAClC,OAAO,CAAC,IAAI,EAAE,cAAc,EAAE,YAAY,CAAC,EAC3C,MAAM,CACP,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,aAAa,EAAE,0BAA0B,CAAC,CAAC;QAC/D,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACrC,MAAM,CAAC,SAAS,CACd,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,eAAe,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC,EAClF,QAAQ,CACT,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,oBAAoB,CACvC,MAAM,EACN,MAAM,EACN,WAAW,CAAC,SAAS,EACrB,EAAE,CACH,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC3B,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;IACzE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,uBAAuB,CAAC,CAAC,CAAC;IACvE,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,MAAM,CAAC,OAAO,CAClB,oBAAoB,CAClB;YACE,KAAK,CAAC,QAAQ;gBACZ,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;YACrB,CAAC;YACD,KAAK,CAAC,aAAa;gBACjB,OAAO,OAAO,EAAE,CAAC;YACnB,CAAC;SACF,EACD,EAAE,MAAM,EAAE,8BAA8B,EAAE,EAC1C,WAAW,CAAC,SAAS,EACrB,EAAE,CACH,EACD,mBAAmB,CACpB,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;IAC7E,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,uBAAuB,CAAC,CAAC,CAAC;IACvE,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,MAAM,OAAO,GAAG,MAAM,oBAAoB,CACxC;YACE,KAAK,CAAC,QAAQ;gBACZ,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;YACrB,CAAC;YACD,KAAK,CAAC,aAAa;gBACjB,OAAO,IAAI,CAAC,CAAC;gBACb,OAAO,OAAO,EAAE,CAAC;YACnB,CAAC;SACF,EACD,EAAE,MAAM,EAAE,8BAA8B,EAAE,EAC1C,WAAW,CAAC,SAAS,EACrB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,CAC1C,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QAChD,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC3B,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;AACH,CAAC,CAAC,CAAC"}
@@ -3,6 +3,7 @@ export interface GlobalOptions {
3
3
  apiKey?: string;
4
4
  json: boolean;
5
5
  verbose?: boolean;
6
+ idempotencyKey?: string;
6
7
  }
7
8
  export declare function deploymentAlias(requestedAlias?: string): string;
8
9
  export declare function shouldBindModelAccessProject(projectReference: string | undefined, currentAgentRoot: string | null | undefined): boolean;