# Cook AI Agent
Cook is a portable terminal AI agent built by Devadutta Ghat. It is a **single static binary** that runs natural-language tasks in the shell, swappable across LLM providers via flags. The defining pitch sits on every page:
> One binary. No runtime. Works with any LLM provider.
It is a small, opinionated [[AI Agent Harness]] in the same neighborhood as [[Aider]], [[OpenCode]], or a stripped-down [[Claude Code]] ; but with the explicit goal of being the *least heavy* possible distribution. Drop the binary onto an "odd machine with minimal packages installed" and it works.
## Why It Exists
Most coding agents ship as a Node, Python, or Bun runtime + a heavy dependency tree. That makes them inconvenient on minimal hosts: a fresh VPS, a [[Crabbox]] runner, an Alpine container, an iPad-style restricted shell. Cook compiles down to one file that doesn't need a runtime ; install via a one-liner and it just runs.
A second motivation is **provider neutrality**. Many harnesses are coupled to one model vendor's APIs, idioms, or subscription. Cook treats the model as a flag: switch between [[Anthropic]], [[OpenAI]], Google, [[Groq]], or [[Vercel AI Gateway]] without reinstalling.
## Tech Stack
- **Language**: TypeScript (~84%)
- **Runtime/build**: [[Bun]] ; the binary is built using Bun's single-file executable
- **AI integration**: [[Vercel AI SDK]] ; one abstraction across providers
- **License**: MIT
## Built-In Tools
The agent has four primitive tools:
- **Read** ; file reading
- **Write** ; file creation
- **Edit** ; targeted file modification
- **Bash** ; shell execution, gated by approval
Mutations (Write, Edit, Bash) require explicit user approval by default. Reads are free. This is the same default-safe posture Claude Code uses.
## Supported Providers
- [[OpenAI]] (GPT-5.2)
- [[Anthropic]] (Claude Sonnet 4.6)
- **Google** (Gemini 3 Flash Preview)
- [[Groq]]
- [[Vercel AI Gateway]]
Provider switch is a CLI flag; same workflow, different brain.
## Installation
```bash
curl --proto '=https' --tlsv1.2 -LsSf \
https://raw.githubusercontent.com/devadutta/cook/main/install.sh | sh
```
The script downloads the prebuilt binary. For source builds, [[Bun]] is the only prerequisite.
## Use Cases
- **Shell-native AI on minimal hosts**: a fresh VPS, a Docker container, a [[Crabbox]] ephemeral runner, a recovery shell
- **Pipeline integration**: stdin/stdout-friendly so it composes inside scripts and cron jobs
- **Provider experiments**: compare model behaviour by swapping flags, not configs
- **Cron-driven autonomous tasks**: Cook + cron = a poor-man's automation loop similar to [[OpenClaw Standing Orders]]
## Where It Doesn't Compete
- **Not** a deep IDE-integrated agent ; for that, [[Claude Code]], Cursor, [[Windsurf]], or [[GitHub Copilot CLI|gh copilot]] are heavier and richer
- **Not** a long-horizon multi-agent orchestrator ; for that, see [[Cook (Orchestration CLI)]] (different project, same name) or [[OpenClaw Sub-Agents]]
- **Not** a managed runtime ; runs locally, no hosted plane
## Naming Collision
There is a separate, unrelated project also named **Cook** ; an *orchestration CLI* by rjcorwin that drives Claude Code / Codex / OpenCode through composable workflows. That note is at [[Cook (Orchestration CLI)]]. The two projects share a name and a terminal-CLI form factor but solve different problems.
## References
- Website: https://getcook.dev/
- GitHub: https://github.com/devadutta/cook
- Hacker News discussion: https://news.ycombinator.com/item?id=47262711
## Related
- [[AI Agent Harness]]
- [[AI SDKs]]
- [[Vercel AI SDK]]
- [[Vercel AI Gateway]]
- [[Groq]]
- [[Claude Code]]
- [[Aider]]
- [[OpenCode]]
- [[Bun]]
- [[Crabbox]]
- [[Cook (Orchestration CLI)]] — unrelated tool with the same name