Reference⌗
Generated, exhaustive, and the source of truth for the API surface. If you've never read these before, the cheat sheet is where to start.
At a glance⌗
| Concern | Python | Go | TypeScript | Java |
|---|---|---|---|---|
| Wire the runtime in one call | tape.adk.durable_app(...) |
tape.NewDurableApp(ctx, cfg) |
durableApp({...}) |
DurableApp.wire(new Config().…) |
| Outbox tool for non-idempotent | @tape.outbox_tool(...) |
tape.NewOutboxTool(opts) |
outboxTool(fn, opts) |
OutboxTool.builder(name, conn).… |
| Capability connector registry | tape.connectors.register(...) |
connectors.Default |
CONNECTORS |
ConnectorRegistry.DEFAULT |
| Structured logs + OTel spans | tape.obs.log_json / span |
tape.LogJSON / tape.Span |
logJson / span / setSpanHook |
Obs.logJson / Obs.span |
| Tenancy + DESIGN-ONLY warn | tape.TenancyConfig |
tape.TenancyConfig |
tenancyFromObject / warnIf… |
Tenancy.Config |
All four SDKs enforce the same non_idempotent safety rule at
construction time — no business_key, no status_check, no
compensate ⇒ the SDK refuses to build the tool. The Rust server
enforces the contract again at BeginEffect-time, so an older SDK can't
slip through.
The CLI stays Python; the agent process can be any of the four languages.
Pages⌗
-
Cheat sheet Everything Tape on one page. Install, wire, decorate, deploy. Copy, paste, ship.
-
Python —
tape-pyThe reference SDK + ADK adapter. API generated from Google-style docstrings viamkdocstrings. -
Go —
tape-goGenerated from godoc viagomarkdoc. Pub/Sub gated behind thepubsubbuild tag; Cloud Tasks behindcloudtasks. -
TypeScript —
tape-tsGenerated from TSDoc viatypedoc --plugin typedoc-plugin-markdown. -
Java —
dev.tape:tapeGenerated bymvn javadoc:javadoc; embedded as a sibling site atreference/java/javadoc/. -
CLI —
tapeGenerated from the live Typer app byscripts/docs/gen_cli.py. To change the content, edit the Typer commands and re-run the script.
What "generated" means⌗
The reference pages are generated from the SDK / CLI source. The
generator scripts live in
scripts/docs/.
If a reference page doesn't match the code, the source is right and the
docs need to be re-generated:
The CI workflow at .github/workflows/docs.yml runs this on every push
to main, so the published site is always in sync.
Where to read prose⌗
The reference is API-shape. If you're learning the model, read the Concepts. If you're looking for "how do I do X", read the How-to guides.