summaryrefslogtreecommitdiffhomepage
path: root/packages/sdk/js/example/example.ts
diff options
context:
space:
mode:
authorDax Raad <[email protected]>2025-09-01 17:35:48 -0400
committerDax Raad <[email protected]>2025-09-01 17:35:52 -0400
commitf6bc9238df9bfa95b0491bf8508459e0e6b3b83c (patch)
tree3ebc29b4b18581d53d8d51ebef58ceda2c089fc5 /packages/sdk/js/example/example.ts
parent26f75d4e68a98ff28eac792b4ee7189b28c03b45 (diff)
downloadopencode-f6bc9238df9bfa95b0491bf8508459e0e6b3b83c.tar.gz
opencode-f6bc9238df9bfa95b0491bf8508459e0e6b3b83c.zip
docs: sdk
Diffstat (limited to 'packages/sdk/js/example/example.ts')
-rw-r--r--packages/sdk/js/example/example.ts55
1 files changed, 55 insertions, 0 deletions
diff --git a/packages/sdk/js/example/example.ts b/packages/sdk/js/example/example.ts
new file mode 100644
index 000000000..481fc4240
--- /dev/null
+++ b/packages/sdk/js/example/example.ts
@@ -0,0 +1,55 @@
+import { createOpencodeClient, createOpencodeServer } from "@opencode-ai/sdk"
+
+const server = await createOpencodeServer()
+const client = createOpencodeClient({ baseUrl: server.url })
+
+const input = await Array.fromAsync(new Bun.Glob("packages/core/*.ts").scan())
+
+const tasks: Promise<void>[] = []
+for await (const file of input) {
+ console.log("processing", file)
+ const session = await client.session.create()
+ tasks.push(
+ client.session.prompt({
+ path: { id: session.data.id },
+ body: {
+ parts: [
+ {
+ type: "file",
+ mime: "text/plain",
+ url: `file://${file}`,
+ },
+ {
+ type: "text",
+ text: `Write tests for every public function in this file.`,
+ },
+ ],
+ },
+ }),
+ )
+ console.log("done", file)
+}
+
+await Promise.all(
+ input.map(async (file) => {
+ const session = await client.session.create()
+ console.log("processing", file)
+ await client.session.prompt({
+ path: { id: session.data.id },
+ body: {
+ parts: [
+ {
+ type: "file",
+ mime: "text/plain",
+ url: `file://${file}`,
+ },
+ {
+ type: "text",
+ text: `Write tests for every public function in this file.`,
+ },
+ ],
+ },
+ })
+ console.log("done", file)
+ }),
+)