@opencomputer/cli 0.3.10 → 0.3.12

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.
@@ -1 +1 @@
1
- {"version":3,"file":"project.js","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"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"}
@@ -58,6 +58,7 @@ test("the compiler maps flat source into an OpenCode runtime", async () => {
58
58
  const runtimeInstructions = await readFile(resolve(runtime, "AGENTS.md"), "utf8");
59
59
  assert.match(runtimeInstructions, /You are an OpenComputer agent/);
60
60
  assert.match(runtimeInstructions, /Never direct users to OpenCode/);
61
+ assert.match(runtimeInstructions, /Use the question tool[\s\S]*resumes when the user replies/);
61
62
  assert.match(runtimeInstructions, /Email triage/);
62
63
  assert.equal((await stat(resolve(runtime, ".opencode", "tools", "gmail.ts"))).isFile(), true);
63
64
  const connectionTool = await readFile(resolve(runtime, ".opencode", "tools", "opencomputer-connections.ts"), "utf8");
@@ -74,6 +75,9 @@ test("the compiler maps flat source into an OpenCode runtime", async () => {
74
75
  ?.map((diagnostic) => ts.flattenDiagnosticMessageText(diagnostic.messageText, "\n"))
75
76
  .join("\n"));
76
77
  assert.equal((await stat(resolve(runtime, "opencode.json"))).isFile(), true);
78
+ const runtimeOpenCode = JSON.parse(await readFile(resolve(runtime, "opencode.json"), "utf8"));
79
+ assert.equal(runtimeOpenCode.tools.question, true);
80
+ assert.equal(runtimeOpenCode.permission.question, "allow");
77
81
  assert.match(runtimeInstructions, /start with the `gmail_search` tool/);
78
82
  assert.match(runtimeInstructions, /summary count exactly matches/);
79
83
  assert.equal((await stat(resolve(runtime, "README.md"))).isFile(), true);
@@ -82,6 +86,24 @@ test("the compiler maps flat source into an OpenCode runtime", async () => {
82
86
  await rm(parent, { recursive: true, force: true });
83
87
  }
84
88
  });
89
+ test("the compiler preserves an explicit question denial", async () => {
90
+ const parent = await mkdtemp(resolve(tmpdir(), "opencomputer-runtime-"));
91
+ const root = resolve(parent, "no-questions");
92
+ try {
93
+ await initializeAgentProject(emailTemplate, root);
94
+ const sourceConfig = JSON.parse(await readFile(resolve(root, "opencode.json"), "utf8"));
95
+ sourceConfig.tools.question = false;
96
+ sourceConfig.permission.question = "deny";
97
+ await writeFile(resolve(root, "opencode.json"), `${JSON.stringify(sourceConfig, null, 2)}\n`);
98
+ const runtime = await prepareAgent(root);
99
+ const runtimeConfig = JSON.parse(await readFile(resolve(runtime, "opencode.json"), "utf8"));
100
+ assert.equal(runtimeConfig.tools.question, false);
101
+ assert.equal(runtimeConfig.permission.question, "deny");
102
+ }
103
+ finally {
104
+ await rm(parent, { recursive: true, force: true });
105
+ }
106
+ });
85
107
  test("a template initializes at the root of a fresh Git repository", async () => {
86
108
  const root = await mkdtemp(resolve(tmpdir(), "gmail-summarizer-"));
87
109
  try {
@@ -130,6 +152,15 @@ test("the PTO template creates Calendar tools without checked-in channel state",
130
152
  assert.ok(connection.scopes.includes("https://www.googleapis.com/auth/calendar"));
131
153
  assert.equal((await stat(resolve(root, "skills", "manage-pto", "SKILL.md"))).isFile(), true);
132
154
  assert.match(await readFile(resolve(root, "opencode.json"), "utf8"), /calendar_create_time_off/);
155
+ const opencode = JSON.parse(await readFile(resolve(root, "opencode.json"), "utf8"));
156
+ assert.equal(opencode.permission.bash, "deny");
157
+ assert.equal(opencode.permission.question, "allow");
158
+ assert.equal(opencode.permission
159
+ .calendar_create_time_off, "allow");
160
+ assert.equal(opencode.tools.question, true);
161
+ assert.match(await readFile(resolve(root, "agent.ts"), "utf8"), /shell: "deny"/);
162
+ assert.match(await readFile(resolve(root, "instructions.md"), "utf8"), /Never[\s\S]*curl[\s\S]*managed connection/);
163
+ assert.match(await readFile(resolve(root, "skills", "manage-pto", "SKILL.md"), "utf8"), /Never use bash[\s\S]*direct Google API requests/);
133
164
  await assert.rejects(stat(resolve(root, "channels", "slack.ts")));
134
165
  await assert.rejects(stat(resolve(root, "slack", "manifest.json")));
135
166
  }
@@ -137,4 +168,15 @@ test("the PTO template creates Calendar tools without checked-in channel state",
137
168
  await rm(root, { recursive: true, force: true });
138
169
  }
139
170
  });
171
+ test("an incomplete PTO project cannot be packaged without Calendar tools", async () => {
172
+ const root = await mkdtemp(resolve(tmpdir(), "pto-calendar-incomplete-"));
173
+ try {
174
+ await initializeAgentProject(ptoTemplate, root);
175
+ await rm(resolve(root, "tools", "calendar.ts"));
176
+ await assert.rejects(buildAgentArtifact(root), /opencomputer tools add calendar/);
177
+ }
178
+ finally {
179
+ await rm(root, { recursive: true, force: true });
180
+ }
181
+ });
140
182
  //# sourceMappingURL=project.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"project.test.js","sourceRoot":"","sources":["../src/project.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,MAAM,EACN,EAAE,EACF,IAAI,EACJ,SAAS,GACV,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,YAAY,CAAC;AAG5B,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,YAAY,EACZ,YAAY,GACb,MAAM,cAAc,CAAC;AAEtB,MAAM,YAAY,GAChB,uEAAuE,CAAC;AAC1E,MAAM,mBAAmB,GAAG,2BAA2B,CAAC;AAExD,MAAM,aAAa,GAAyB;IAC1C,EAAE,EAAE,cAAc;IAClB,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,gDAAgD;IAC7D,QAAQ,EAAE,OAAO;IACjB,YAAY,EAAE,CAAC,OAAO,EAAE,cAAc,CAAC;IACvC,gBAAgB,EAAE,CAAC,uBAAuB,CAAC;CAC5C,CAAC;AAEF,MAAM,WAAW,GAAyB;IACxC,EAAE,EAAE,cAAc;IAClB,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,kDAAkD;IAC/D,QAAQ,EAAE,OAAO;IACjB,YAAY,EAAE,CAAC,iBAAiB,EAAE,OAAO,CAAC;IAC1C,gBAAgB,EAAE,CAAC,kCAAkC,CAAC;CACvD,CAAC;AAEF,IAAI,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;IACjF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,qBAAqB,CAAC,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IACxD,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QAC1E,MAAM,CAAC,KAAK,CACV,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAC3D,IAAI,CACL,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC;QAC3E,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QACvD,MAAM,CAAC,KAAK,CACV,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EACzD,IAAI,CACL,CAAC;QACF,MAAM,SAAS,GAAG,MAAM,QAAQ,CAC9B,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,EACtC,MAAM,CACP,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QAC3C,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;QAClD,MAAM,CAAC,KAAK,CACV,CACE,MAAM,IAAI,CACR,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,CAAC,CACxD,CACF,CAAC,MAAM,EAAE,EACV,IAAI,CACL,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QAC7D,MAAM,CAAC,KAAK,CACV,MAAM,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,mBAAmB,CAAC,EAAE,MAAM,CAAC,EAC9D,IAAI,MAAM,CAAC,SAAS,WAAW,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAChD,CAAC;QAEF,MAAM,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChC,MAAM,CAAC,SAAS,CAAC,MAAM,YAAY,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QACpE,MAAM,CAAC,KAAK,CACV,CAAC,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAC3C,WAAW,CAAC,QAAQ,CAAC,EAAE,CACxB,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;IACxE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,uBAAuB,CAAC,CAAC,CAAC;IACzE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC7C,IAAI,CAAC;QACH,MAAM,sBAAsB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,mBAAmB,GAAG,MAAM,QAAQ,CACxC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,EAC7B,MAAM,CACP,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,+BAA+B,CAAC,CAAC;QACnE,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,gCAAgC,CAAC,CAAC;QACpE,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;QAClD,MAAM,CAAC,KAAK,CACV,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EACzE,IAAI,CACL,CAAC;QACF,MAAM,cAAc,GAAG,MAAM,QAAQ,CACnC,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,6BAA6B,CAAC,EACrE,MAAM,CACP,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,6BAA6B,CAAC,CAAC;QAC5D,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,qBAAqB,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;QAC3C,MAAM,CAAC,KAAK,CACV,cAAc,EACd,4DAA4D,CAC7D,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,2BAA2B,CAAC,EAAE,IAAI,CAAC,CAAC;QACzE,MAAM,wBAAwB,GAAG,EAAE,CAAC,eAAe,CAAC,cAAc,EAAE;YAClE,eAAe,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE;YACjD,iBAAiB,EAAE,IAAI;SACxB,CAAC,CAAC;QACH,MAAM,CAAC,KAAK,CACV,wBAAwB,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,EACjD,CAAC,EACD,wBAAwB,CAAC,WAAW;YAClC,EAAE,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CACnB,EAAE,CAAC,4BAA4B,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,CAC9D;aACA,IAAI,CAAC,IAAI,CAAC,CACd,CAAC;QACF,MAAM,CAAC,KAAK,CACV,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EACxD,IAAI,CACL,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,oCAAoC,CAAC,CAAC;QACxE,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,+BAA+B,CAAC,CAAC;QACnE,MAAM,CAAC,KAAK,CACV,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EACpD,IAAI,CACL,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;IAC9E,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,mBAAmB,CAAC,CAAC,CAAC;IACnE,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QACnC,MAAM,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,cAAc,CAAC,CAAC;QAC5D,MAAM,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,aAAa,CAAC,CAAC;QAE5D,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QACtE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QAC7D,MAAM,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,EAAE,cAAc,CAAC,CAAC;QACjF,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC;QACtE,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACtC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;QAC5C,MAAM,MAAM,CAAC,OAAO,CAClB,sBAAsB,CAAC,aAAa,EAAE,IAAI,CAAC,EAC3C,qCAAqC,CACtC,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,0EAA0E,EAAE,KAAK,IAAI,EAAE;IAC1F,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC;IAC/D,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACpE,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QACpD,MAAM,YAAY,GAAG,MAAM,QAAQ,CACjC,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,EACrC,MAAM,CACP,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;QACvD,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,4BAA4B,CAAC,CAAC;QACzD,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,8BAA8B,CAAC,CAAC;QAC3D,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,qCAAqC,CAAC,CAAC;QAClE,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QAClD,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,oDAAoD,CAAC,CAAC;QACjF,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;QAC9C,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,sCAAsC,CAAC,CAAC;QACnE,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAC7C,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,4BAA4B,CAAC,CAAC;QACzD,MAAM,sBAAsB,GAAG,EAAE,CAAC,eAAe,CAAC,YAAY,EAAE;YAC9D,eAAe,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE;YACjD,iBAAiB,EAAE,IAAI;SACxB,CAAC,CAAC;QACH,MAAM,CAAC,KAAK,CACV,sBAAsB,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,EAC/C,CAAC,EACD,sBAAsB,CAAC,WAAW;YAChC,EAAE,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CACnB,EAAE,CAAC,4BAA4B,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,CAC9D;aACA,IAAI,CAAC,IAAI,CAAC,CACd,CAAC;QACF,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAC3B,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,aAAa,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,CACxB,CAAC;QAC9C,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,EAAE,CACP,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,0CAA0C,CAAC,CACvE,CAAC;QACF,MAAM,CAAC,KAAK,CACV,CACE,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC,CAC9D,CAAC,MAAM,EAAE,EACV,IAAI,CACL,CAAC;QACF,MAAM,CAAC,KAAK,CACV,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,EACtD,0BAA0B,CAC3B,CAAC;QACF,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;QAClE,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IACtE,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"}
1
+ {"version":3,"file":"project.test.js","sourceRoot":"","sources":["../src/project.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { Readable, Writable } from "node:stream";
2
+ export interface SessionPromptEvent {
3
+ type: string;
4
+ data: Record<string, unknown>;
5
+ }
6
+ interface SessionPromptOptions {
7
+ agentName: string;
8
+ verbose?: boolean;
9
+ input?: Readable;
10
+ output?: Writable;
11
+ send(prompt: string, sessionId: string | undefined, emit: (event: SessionPromptEvent) => void): Promise<string>;
12
+ }
13
+ export declare function formatSessionEvent(event: SessionPromptEvent): string | undefined;
14
+ export declare function runSessionPrompt(options: SessionPromptOptions): Promise<void>;
15
+ export {};
@@ -0,0 +1,93 @@
1
+ import { createInterface } from "node:readline";
2
+ export function formatSessionEvent(event) {
3
+ if (event.type === "message.delta" || event.type === "message.completed") {
4
+ return undefined;
5
+ }
6
+ return `Event: ${event.type} ${JSON.stringify(event.data)}`;
7
+ }
8
+ const spinnerFrames = ["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"];
9
+ function startSpinner(output, enabled) {
10
+ if (!enabled)
11
+ return () => undefined;
12
+ let frame = 0;
13
+ let stopped = false;
14
+ output.write(spinnerFrames[frame]);
15
+ const timer = setInterval(() => {
16
+ frame = (frame + 1) % spinnerFrames.length;
17
+ output.write(`\b${spinnerFrames[frame]}`);
18
+ }, 80);
19
+ timer.unref();
20
+ return () => {
21
+ if (stopped)
22
+ return;
23
+ stopped = true;
24
+ clearInterval(timer);
25
+ output.write("\b \b");
26
+ };
27
+ }
28
+ export async function runSessionPrompt(options) {
29
+ const input = options.input ?? process.stdin;
30
+ const output = options.output ?? process.stdout;
31
+ const terminal = "isTTY" in input && input.isTTY === true;
32
+ const lines = createInterface({ input, output, terminal, crlfDelay: Infinity });
33
+ lines.on("SIGINT", () => lines.close());
34
+ output.write(`OpenComputer session — ${options.agentName}\n` +
35
+ "Type /exit or /quit to leave.\n\n" +
36
+ "User: ");
37
+ let sessionId;
38
+ try {
39
+ for await (const line of lines) {
40
+ if (!terminal)
41
+ output.write(`${line}\n`);
42
+ const prompt = line.trim();
43
+ if (prompt === "/exit" || prompt === "/quit")
44
+ break;
45
+ if (!prompt) {
46
+ output.write("User: ");
47
+ continue;
48
+ }
49
+ output.write("Agent: ");
50
+ const stopSpinner = startSpinner(output, "isTTY" in output && output.isTTY === true);
51
+ let streamedText = false;
52
+ let printedEvents = false;
53
+ try {
54
+ sessionId = await options.send(prompt, sessionId, (event) => {
55
+ if (event.type === "message.delta") {
56
+ stopSpinner();
57
+ if (printedEvents && !streamedText)
58
+ output.write("Agent: ");
59
+ streamedText = true;
60
+ output.write(String(event.data.text ?? ""));
61
+ }
62
+ else if (event.type === "message.completed" && !streamedText) {
63
+ stopSpinner();
64
+ if (printedEvents)
65
+ output.write("Agent: ");
66
+ output.write(String(event.data.text ?? ""));
67
+ }
68
+ else if (options.verbose) {
69
+ const formatted = formatSessionEvent(event);
70
+ if (!formatted)
71
+ return;
72
+ stopSpinner();
73
+ if (!printedEvents)
74
+ output.write("\n");
75
+ printedEvents = true;
76
+ output.write(`${formatted}\n`);
77
+ }
78
+ });
79
+ }
80
+ catch (error) {
81
+ stopSpinner();
82
+ output.write(`Error: ${error instanceof Error ? error.message : String(error)}`);
83
+ }
84
+ stopSpinner();
85
+ output.write("\n\nUser: ");
86
+ }
87
+ }
88
+ finally {
89
+ lines.close();
90
+ output.write("\n");
91
+ }
92
+ }
93
+ //# sourceMappingURL=session-prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-prompt.js","sourceRoot":"","sources":["../src/session-prompt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,104 @@
1
+ import assert from "node:assert/strict";
2
+ import { Readable, PassThrough } from "node:stream";
3
+ import test from "node:test";
4
+ import { runSessionPrompt } from "./session-prompt.js";
5
+ test("session prompt renders a simple multi-turn transcript", async () => {
6
+ const input = Readable.from(["hello\nagain\n/exit\n"]);
7
+ const output = new PassThrough();
8
+ output.setEncoding("utf8");
9
+ let rendered = "";
10
+ output.on("data", (chunk) => {
11
+ rendered += chunk;
12
+ });
13
+ const sessions = [];
14
+ await runSessionPrompt({
15
+ agentName: "Email triage",
16
+ input,
17
+ output,
18
+ send: async (prompt, sessionId, emit) => {
19
+ sessions.push(sessionId);
20
+ if (prompt === "hello") {
21
+ emit({ type: "message.delta", data: { text: "Hi" } });
22
+ emit({ type: "message.delta", data: { text: " there" } });
23
+ return "session-1";
24
+ }
25
+ emit({ type: "message.completed", data: { text: "Welcome back" } });
26
+ return "session-1";
27
+ },
28
+ });
29
+ assert.deepEqual(sessions, [undefined, "session-1"]);
30
+ assert.equal(rendered, "OpenComputer session — Email triage\n" +
31
+ "Type /exit or /quit to leave.\n\n" +
32
+ "User: hello\n" +
33
+ "Agent: Hi there\n\n" +
34
+ "User: again\n" +
35
+ "Agent: Welcome back\n\n" +
36
+ "User: /exit\n\n");
37
+ });
38
+ test("session prompt reports a failed turn and keeps reading", async () => {
39
+ const input = Readable.from(["fail\n/quit\n"]);
40
+ const output = new PassThrough();
41
+ output.setEncoding("utf8");
42
+ let rendered = "";
43
+ output.on("data", (chunk) => {
44
+ rendered += chunk;
45
+ });
46
+ await runSessionPrompt({
47
+ agentName: "Test agent",
48
+ input,
49
+ output,
50
+ send: async () => {
51
+ throw new Error("request failed");
52
+ },
53
+ });
54
+ assert.match(rendered, /Agent: Error: request failed\n\nUser:/);
55
+ });
56
+ test("session prompt shows a lightweight spinner on interactive output", async () => {
57
+ const input = Readable.from(["hello\n/exit\n"]);
58
+ const output = Object.assign(new PassThrough(), { isTTY: true });
59
+ output.setEncoding("utf8");
60
+ let rendered = "";
61
+ output.on("data", (chunk) => {
62
+ rendered += chunk;
63
+ });
64
+ await runSessionPrompt({
65
+ agentName: "Test agent",
66
+ input,
67
+ output,
68
+ send: async (_prompt, _sessionId, emit) => {
69
+ emit({ type: "message.completed", data: { text: "Hello" } });
70
+ return "session-1";
71
+ },
72
+ });
73
+ assert.ok(rendered.includes("Agent: ⠋\b \bHello"));
74
+ });
75
+ test("session prompt prints non-message events only in verbose mode", async () => {
76
+ const input = Readable.from(["hello\n/exit\n"]);
77
+ const output = new PassThrough();
78
+ output.setEncoding("utf8");
79
+ let rendered = "";
80
+ output.on("data", (chunk) => {
81
+ rendered += chunk;
82
+ });
83
+ await runSessionPrompt({
84
+ agentName: "Test agent",
85
+ verbose: true,
86
+ input,
87
+ output,
88
+ send: async (_prompt, _sessionId, emit) => {
89
+ emit({ type: "session.created", data: { sessionId: "session-1" } });
90
+ emit({
91
+ type: "tool.started",
92
+ data: { tool: "gmail_search", input: { query: "unread" } },
93
+ });
94
+ emit({ type: "tool.completed", data: { tool: "gmail_search" } });
95
+ emit({ type: "message.completed", data: { text: "Found two emails" } });
96
+ return "session-1";
97
+ },
98
+ });
99
+ assert.match(rendered, /Event: session\.created/);
100
+ assert.match(rendered, /Event: tool\.started/);
101
+ assert.match(rendered, /Event: tool\.completed/);
102
+ assert.match(rendered, /Agent: Found two emails/);
103
+ });
104
+ //# sourceMappingURL=session-prompt.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-prompt.test.js","sourceRoot":"","sources":["../src/session-prompt.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opencomputer/cli",
3
- "version": "0.3.10",
3
+ "version": "0.3.12",
4
4
  "description": "Build, test, connect, deploy, and share OpenComputer agents as code.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -11,14 +11,15 @@
11
11
  "README.md"
12
12
  ],
13
13
  "scripts": {
14
+ "clean": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"",
14
15
  "build:server": "tsc -p tsconfig.json",
15
16
  "build:ui": "tsc -p tsconfig.ui.json --noEmit && vite build",
16
- "build": "npm run build:server && npm run build:ui",
17
+ "build": "npm run clean && npm run build:server && npm run build:ui",
17
18
  "test": "npm run build && node --test dist/*.test.js",
18
19
  "prepack": "npm test"
19
20
  },
20
21
  "engines": {
21
- "bun": ">=1.2.0"
22
+ "node": ">=22.0.0"
22
23
  },
23
24
  "publishConfig": {
24
25
  "access": "public"
@@ -35,8 +36,6 @@
35
36
  ],
36
37
  "dependencies": {
37
38
  "@opencode-ai/sdk": "1.18.4",
38
- "@opentui/core": "^0.4.5",
39
- "@opentui/react": "^0.4.5",
40
39
  "ai": "^7.0.45",
41
40
  "opencode-ai": "1.18.4",
42
41
  "react": "^19.2.8"
package/dist/tui.d.ts DELETED
@@ -1,12 +0,0 @@
1
- /** @jsxImportSource @opentui/react */
2
- export interface TuiEvent {
3
- type: string;
4
- data: Record<string, unknown>;
5
- }
6
- interface AppProps {
7
- agentName: string;
8
- send(prompt: string, sessionId: string | undefined, emit: (event: TuiEvent) => void): Promise<string>;
9
- exit(): void;
10
- }
11
- export declare function runSessionTUI(options: Omit<AppProps, "exit">): Promise<void>;
12
- export {};
package/dist/tui.js DELETED
@@ -1,148 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "@opentui/react/jsx-runtime";
2
- /** @jsxImportSource @opentui/react */
3
- import { createCliRenderer, SyntaxStyle } from "@opentui/core";
4
- import { createRoot, useKeyboard } from "@opentui/react";
5
- import { useCallback, useEffect, useState } from "react";
6
- const markdownStyle = SyntaxStyle.fromStyles({
7
- default: { fg: "#e5e5df" },
8
- "markup.heading": { fg: "#f1f1ea", bold: true },
9
- "markup.strong": { fg: "#f1f1ea", bold: true },
10
- "markup.italic": { fg: "#c8c8c0", italic: true },
11
- "markup.list": { fg: "#8fb99a" },
12
- "markup.raw": { fg: "#d5b87a" },
13
- "markup.raw.block": { fg: "#d5b87a", bg: "#1b1b19" },
14
- "markup.link": { fg: "#8fb99a" },
15
- "markup.link.label": { fg: "#8fb99a", underline: true },
16
- "markup.link.url": { fg: "#77776f", dim: true },
17
- "markup.quote": { fg: "#a8a8a0", italic: true },
18
- });
19
- function SessionApp({ agentName, send, exit }) {
20
- const [turns, setTurns] = useState([]);
21
- const [sessionId, setSessionId] = useState();
22
- const [input, setInput] = useState("");
23
- const [busy, setBusy] = useState(false);
24
- const [spinnerIndex, setSpinnerIndex] = useState(0);
25
- const spinner = ["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"];
26
- useEffect(() => {
27
- if (!busy) {
28
- setSpinnerIndex(0);
29
- return;
30
- }
31
- const timer = setInterval(() => setSpinnerIndex((current) => (current + 1) % spinner.length), 90);
32
- return () => clearInterval(timer);
33
- }, [busy, spinner.length]);
34
- useKeyboard((key) => {
35
- if (key.ctrl && !key.shift && key.name === "c")
36
- exit();
37
- });
38
- const updateAssistant = useCallback((id, update) => {
39
- setTurns((current) => current.map((turn) => (turn.id === id ? update(turn) : turn)));
40
- }, []);
41
- const submit = (value) => {
42
- const prompt = value.trim();
43
- if (!prompt || busy)
44
- return;
45
- if (prompt === "/exit" || prompt === "/quit") {
46
- exit();
47
- return;
48
- }
49
- setInput("");
50
- setBusy(true);
51
- const userId = crypto.randomUUID();
52
- const assistantId = crypto.randomUUID();
53
- setTurns((current) => [
54
- ...current,
55
- {
56
- id: userId,
57
- role: "user",
58
- text: prompt,
59
- reasoning: "",
60
- tools: [],
61
- active: false,
62
- },
63
- {
64
- id: assistantId,
65
- role: "assistant",
66
- text: "",
67
- reasoning: "",
68
- tools: [],
69
- active: true,
70
- },
71
- ]);
72
- const emit = (event) => {
73
- updateAssistant(assistantId, (turn) => {
74
- if (event.type === "message.delta") {
75
- return { ...turn, text: turn.text + String(event.data.text ?? "") };
76
- }
77
- if (event.type === "message.completed") {
78
- return { ...turn, text: String(event.data.text ?? turn.text) };
79
- }
80
- if (event.type === "reasoning.delta") {
81
- return {
82
- ...turn,
83
- reasoning: turn.reasoning + String(event.data.text ?? ""),
84
- };
85
- }
86
- if (event.type.startsWith("tool.")) {
87
- const id = String(event.data.callId ?? event.data.tool ?? "tool");
88
- const previous = turn.tools.find((item) => item.id === id);
89
- const eventName = typeof event.data.tool === "string" ? event.data.tool.trim() : "";
90
- const eventTitle = typeof event.data.title === "string" ? event.data.title.trim() : "";
91
- const status = event.type === "tool.completed"
92
- ? "completed"
93
- : event.type === "tool.failed"
94
- ? "failed"
95
- : "running";
96
- const tool = {
97
- id,
98
- name: eventName || previous?.name || "tool",
99
- title: eventTitle || previous?.title,
100
- status,
101
- };
102
- const existing = turn.tools.findIndex((item) => item.id === id);
103
- const tools = [...turn.tools];
104
- if (existing === -1)
105
- tools.push(tool);
106
- else
107
- tools[existing] = { ...tools[existing], ...tool };
108
- return { ...turn, tools };
109
- }
110
- return turn;
111
- });
112
- };
113
- void send(prompt, sessionId, emit)
114
- .then((nextSessionId) => setSessionId(nextSessionId))
115
- .catch((error) => {
116
- updateAssistant(assistantId, (turn) => ({
117
- ...turn,
118
- error: error instanceof Error ? error.message : String(error),
119
- }));
120
- })
121
- .finally(() => {
122
- updateAssistant(assistantId, (turn) => ({ ...turn, active: false }));
123
- setBusy(false);
124
- });
125
- };
126
- return (_jsxs("box", { style: { width: "100%", height: "100%", flexDirection: "column", backgroundColor: "#11110f" }, children: [_jsxs("box", { style: { height: 3, paddingX: 2, flexDirection: "row", alignItems: "center", border: ["bottom"], borderColor: "#34342f" }, children: [_jsx("text", { fg: "#f0f0e9", children: _jsx("strong", { children: "OpenComputer" }) }), _jsxs("text", { fg: "#787870", children: [" / ", agentName] }), _jsx("box", { style: { flexGrow: 1 } }), _jsx("text", { fg: busy ? "#d2aa62" : "#69aa7c", children: busy ? spinner[spinnerIndex] : "●" }), _jsxs("text", { fg: "#85857d", children: [" ", busy ? "working" : "local"] })] }), _jsxs("scrollbox", { style: { flexGrow: 1, paddingX: 2, paddingY: 1 }, stickyScroll: true, stickyStart: "bottom", children: [!turns.length && (_jsxs("box", { style: { flexDirection: "column", paddingTop: 2 }, children: [_jsx("ascii-font", { text: "opencomputer", font: "tiny", color: ["#f1f1ea", "#8fb99a"], selectable: false, style: { marginBottom: 1 } }), _jsx("text", { fg: "#e6e6df", children: _jsx("strong", { children: "Test your agent locally" }) }), _jsx("text", { fg: "#77776f", children: "Send a message below. Connected tools are proxied through OpenComputer." })] })), turns.map((turn) => (_jsxs("box", { style: { flexDirection: "column", marginBottom: 1 }, children: [_jsx("text", { fg: turn.role === "user" ? "#999991" : "#6fa981", children: _jsx("strong", { children: turn.role === "user" ? "YOU" : agentName.toUpperCase() }) }), turn.role === "assistant" && (turn.reasoning || turn.tools.length > 0) && (_jsx("box", { style: { flexDirection: "column", marginTop: 1, marginBottom: turn.text ? 0 : 1 }, children: turn.active && !turn.text ? (_jsxs(_Fragment, { children: [turn.reasoning && _jsx("text", { fg: "#6f6f68", children: turn.reasoning }), turn.tools.map((tool) => (_jsxs("text", { fg: tool.status === "failed" ? "#b66b6b" : "#77776f", children: [tool.status === "completed" ? "✓" : tool.status === "failed" ? "×" : "○", " ", tool.title || tool.name] }, tool.id)))] })) : (_jsxs("text", { fg: "#66665f", children: ["\u2713 ", turn.tools.length ? `${turn.tools.length} tool ${turn.tools.length === 1 ? "call" : "calls"}` : "thought process"] })) })), turn.role === "assistant" &&
127
- turn.active &&
128
- !turn.text &&
129
- !turn.reasoning &&
130
- turn.tools.length === 0 && (_jsxs("text", { fg: "#77776f", children: [spinner[spinnerIndex], " Agent is working\u2026"] })), turn.text && (_jsx("markdown", { content: turn.text, syntaxStyle: markdownStyle, conceal: true, concealCode: true, streaming: turn.active, internalBlockMode: "top-level", style: { width: "100%" } })), turn.error && _jsxs("text", { fg: "#d27777", children: ["Error: ", turn.error] })] }, turn.id)))] }), _jsxs("box", { style: { height: 3, marginX: 2, marginBottom: 1, paddingX: 1, flexDirection: "row", border: true, borderColor: busy ? "#3b3b36" : "#62625b", alignItems: "center" }, children: [_jsx("text", { fg: "#77776f", children: "\u203A " }), _jsx("input", { style: { flexGrow: 1, width: "100%" }, value: input, placeholder: busy ? "Agent is working…" : `Message ${agentName}`, focused: !busy, onInput: setInput, onSubmit: submit })] }), _jsx("box", { style: { height: 1, paddingX: 2 }, children: _jsx("text", { fg: "#575751", children: "Enter send \u00B7 Drag select \u00B7 Ctrl+Shift+C copy \u00B7 Ctrl+C quit" }) })] }));
131
- }
132
- export async function runSessionTUI(options) {
133
- const renderer = await createCliRenderer({ exitOnCtrlC: false });
134
- const root = createRoot(renderer);
135
- await new Promise((done) => {
136
- let finished = false;
137
- const exit = () => {
138
- if (finished)
139
- return;
140
- finished = true;
141
- done();
142
- };
143
- root.render(_jsx(SessionApp, { ...options, exit: exit }));
144
- });
145
- root.unmount();
146
- renderer.destroy();
147
- }
148
- //# sourceMappingURL=tui.js.map