Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.buttons.sh/llms.txt

Use this file to discover all available pages before exploring further.

Buttons gives agents deterministic escape hatches. Instead of hoping an LLM follows a multi-step procedure correctly, agents press buttons — self-contained, composable actions with clear inputs, outputs, and status. Each button wraps a single action: a shell script, an HTTP API call, a Python/Node snippet, or an agent instruction. Create it once with typed arguments and a timeout, press it whenever you need it, get structured JSON output every time.

Get started

Install

curl, Docker, Go, or Homebrew.

Quick start

Create and press your first button in 30 seconds.

Button types

Code

Inline shell, Python, or Node scripts.

HTTP API

GET/POST with URL templates and typed args.

File

Import an existing script file.

Agent

Attach an instruction for the consuming agent.

CLI reference

Every command is auto-generated from the Cobra command tree. Flags, examples, and descriptions stay in sync with the binary.

CLI reference

Full command reference: create, press, list, history, delete, version, and more.

For deployed agents

Buttons ships as a static binary and a multi-arch Docker image. Bake it into your agent container with one line:
COPY --from=ghcr.io/autonoco/buttons:v0.1.0 /usr/local/bin/buttons /usr/local/bin/buttons
Your agent calls buttons press <name> --json as a subprocess and gets structured output. No SDK, no library import, no runtime dependency.