craze¶
A Linux and macOS terminal UI for coding agents. It talks ACP to
Cursor CLI (cursor-agent acp),
Grok CLI (grok), or gx
(charliek/grok-build), a
third-party fork of the Grok CLI. You own the chrome; the provider still
runs the agent. Its native provider runs the agent inside craze instead,
against a model provider's API or a ChatGPT plan, and needs no other CLI (see
Native provider).
./bin/craze # the TUI, in the current directory
./bin/craze --workspace ../proj # somewhere else
./bin/craze --no-force # ask before each tool call
--force (yolo) is the default. --no-force turns on the permission line.
Current Scope¶
Early-stage software: v0.1.x is released (Homebrew, apt and release archives)
for Linux and macOS. craze opens a TUI; craze prompt --json is the headless
path. Sessions run in a detached host and outlive the
terminal: craze ps lists them, craze attach and craze -c rejoin one,
craze new starts one in the background through the per-machine hub, and
craze new --load brings a saved one back through it (see the
CLI reference).
What it does¶
- A TUI over four providers.
cursor,grok,gxand the built-innativeagent share one set of keys, cards and slash commands (TUI reference). - Sessions that outlive the terminal. A detached host keeps the agent
running;
craze ps,craze attachandcraze -crejoin it (CLI reference). - Resume through the hub.
craze ps --savedlists the saved sessions andcraze new --loadreopens one; a hub client such as shed does the same oversession.reopen(CLI reference). - Scripted and background use.
craze prompt --jsonruns one turn;craze new,send,wait,cancelandstopdrive sessions without a terminal (CLI reference). - Claude Code sub-agents. A plugin hands a task to a craze session on a native, Grok or Cursor model, and returns the result (Claude Code).
- Side questions.
/btw <question>asks a quick question without adding to the session (TUI reference). - Effort and speed.
--effortand--fast/--no-faststart a model at a chosen setting (CLI reference); in a session,/effortchanges it from a picker of the current model's levels, and on native the model dialog shows each model's levels as you highlight it (TUI reference). - Native start models. A new native session starts on the first provider you have connected, in the order Z.AI, ChatGPT plan, Fireworks, OpenRouter, Meta (Configuration).
- A render check.
craze framerenders the TUI once for tests (Testing).
To run craze you need:
- Linux or macOS
- One way to reach a model:
- the native provider (
--provider native), which needs none of the CLIs below: only a model provider's API key, or a ChatGPT plan sign-in (craze auth login chatgpt); or - one of: the Cursor CLI, with a working login
(
cursor-agent login, the same binary is also installed asagent); the Grok CLI (grok), withgrok loginorXAI_API_KEYset; orgx, a third-party fork of the Grok CLI that speaks the same ACP dialect asgrok, so everything these docs say about Grok's behaviour applies to it too — it currently shares grok's~/.grokhome (config, auth, sessions, skills), which is the fork's current behaviour, not a craze guarantee
- the native provider (
Go 1.27+ (this repo pins 1.27.1 via .mise.toml) is needed only to build from
source. Brew, apt and the release archives need no Go.
Coming from v0.0.1? See Upgrading.
Next Steps¶
- Quick Start — install and first run
- Upgrading — what changed since v0.0.1 and since v0.1.0
- Claude Code — craze sessions as Claude Code sub-agents
- CLI Reference — commands and flags
- TUI Reference — keys, cards, slash commands
- Configuration — themes, config file, env vars
- Protocol — the control socket's wire protocol