summaryrefslogtreecommitdiffhomepage
path: root/packages/sdk/python/docs/generation.md
diff options
context:
space:
mode:
Diffstat (limited to 'packages/sdk/python/docs/generation.md')
-rw-r--r--packages/sdk/python/docs/generation.md19
1 files changed, 19 insertions, 0 deletions
diff --git a/packages/sdk/python/docs/generation.md b/packages/sdk/python/docs/generation.md
new file mode 100644
index 000000000..f949760a1
--- /dev/null
+++ b/packages/sdk/python/docs/generation.md
@@ -0,0 +1,19 @@
+# Generation workflow
+
+The SDK is generated from the Opencode server's OpenAPI 3.1 spec.
+
+Two source modes are supported:
+- CLI (default): runs `bun dev generate` to emit the OpenAPI JSON
+- Server: fetches `http://localhost:4096/doc` from a running server
+
+Generator command
+```bash
+# From repo root
+uv run --project packages/sdk/python python packages/sdk/python/scripts/generate.py --source cli
+# Or
+uv run --project packages/sdk/python python packages/sdk/python/scripts/generate.py --source server --server-url http://localhost:4096/doc
+```
+
+Post-generation
+- The generator injects `extras.py` (OpenCodeClient) and patches `__init__.py` to export it
+- Code is formatted with `ruff` (imports) and `black`