GitHub - jwvictor/clinic: Agent-ready terminal in one command.

4 min read Original article ↗

getclinic.sh

Connect your agent to your Gmail, GitHub, Notion, and 39 more services in one command.

Clinic manages collections of agent-friendly CLI tools as unified, opinionated stacks. One command turns a bare terminal into a fully agent-capable workspace — tools installed, authenticated, and visible to your AI agent.

clinic init --stack founder

That installs gws, slack, notion, linear, gh, stripe, ngrok, and jq — then generates skill files so OpenClaw, Claude Code, Gemini CLI, and other AI agents know how to use them.

Why

Every week another company ships a CLI tool designed for AI agents. Google shipped gws. GitHub has gh. Stripe, Vercel, DigitalOcean, Fly.io — all have CLIs that AI coding agents invoke.

But setting up 5-10 CLI tools means:

  • Installing from different package managers (brew, npm, apt)
  • Authenticating each one separately
  • Manually writing skill/config files so your agent knows they exist
  • Keeping everything updated
  • Repeating all of this on every new machine

Clinic handles all of it.

Quick Start

curl -fsSL https://getclinic.sh/install | sh

Then pick a stack and go:

clinic init --stack founder

Or add tools one at a time:

clinic add gh
clinic add stripe

What It Does

Installs CLI tools

Clinic delegates to native package managers — Homebrew for Go/Rust tools, npm for Node tools, official install scripts as fallback. It doesn't host binaries or reinvent package management.

Authenticates them

clinic auth <tool> runs the tool's native auth flow. In headless environments (Docker, SSH, CI), it auto-detects and uses device-code flows — giving you a URL and code to complete auth on any device with a browser.

Generates agent skill files

After installation, Clinic writes Agent Skills standard SKILL.md files to:

  • ~/.openclaw/skills/OpenClaw
  • ~/.claude/skills/ — Claude Code
  • ~/.agents/skills/ — Agent Skills open standard (Gemini CLI, Codex CLI, etc.)

These tell your AI agent what tools are available, how to use them, and that they're authenticated. The agent can start using them immediately without any extra configuration.

Health checks

$ clinic doctor

Tool             Version      Auth       Skill    Status
────             ───────      ────       ─────    ──────
gh               2.88.1       ✓ ok       ✓        ✓ ok
stripe           1.25.0       ✗ no       ✓        ⚠ auth needed
jq               1.8.1        n/a        ✓        ✓ ok

Supported Tools & Stacks

Browse all available tools and curated stacks at getclinic.sh/tools.

Or from the CLI:

clinic list --all    # See all available tools
clinic stacks        # See available stacks

Commands

clinic init [--stack <name>]    Set up a workspace with a curated stack
clinic add <tool>               Add a single tool
clinic remove <tool>            Remove a tool from your workspace
clinic list [--all]             List installed or available tools
clinic search <query>           Search available tools by name, description, or category
clinic doctor                   Health check all tools
clinic auth <tool>              Authenticate a tool
clinic auth --status            Show auth status for all tools
clinic generate                 Regenerate skill files
clinic update [<tool>]          Update lockfile versions
clinic upgrade [<tool>]         Upgrade one or all installed tools via their package managers
clinic stacks                   Browse available stacks
clinic shellenv                 Print PATH setup for shell profile
clinic self-update              Update clinic itself to the latest release
clinic nuke                     Uninstall all managed tools and remove all traces of Clinic
clinic version                  Print version

How It Works

Clinic is a single Go binary. It maintains a lockfile at ~/.clinic/clinic.json tracking what's installed and how. Tools are installed globally via their native package managers — Clinic orchestrates but doesn't own the installations.

Skill files are the same format everywhere — the Agent Skills open standard with YAML frontmatter. One SKILL.md works with OpenClaw, Claude Code, Gemini CLI, Codex CLI, and any other compliant agent.

Existing tools

If you already have a tool installed, clinic add detects it, skips installation, and generates the skill files. It works regardless of how the tool was originally installed.

Headless auth

In environments without a browser (Docker, SSH, CI), clinic auth auto-detects and uses device-code or no-localhost flows. You get a URL and code — open it on your phone or laptop to complete auth.

Development

# Build
make build

# Run tests in a Docker container (clean Linux environment)
make test-build     # Build the test container
make test-shell     # Interactive shell in a fresh container
make test-smoke     # Quick smoke test
make test-run CMD="add jq"  # Run a specific command

License

Apache 2.0