grithdocs

grith run

Run one task through the built-in agent, or drop into the REPL by running grith with no arguments.

grith run <TASK>

Run one task through grith's own agent, non-interactively, using the provider set in [llm]. Every tool call the agent makes goes through the filter pipeline first.

There are no command-specific flags - only the global ones.

What it prints

The run ends with a session summary, whether the task succeeded or not.

terminal
$ grith run "say hi"

● ● ●  SESSION SUMMARY

Project:  grith-docs    Session:  fba2d5d3

Session complete - 0 actions | $0.00 | 100% allowed

Tool calls:    0              Cost:      $0.00
├ file_read       0           Provider:  Ollama
├ file_write      0           Model:     llama3.1:8b
├ shell_exec      0           Duration:  0s
└ net_request     0

Security:
├ Allowed       0 (100%)
├ Quarantined   0
└ Denied        0
Error: LLM request failed: provider error: ollama: HTTP 404 Not Found: {"error":"model 'llama3.1:8b' not found"}

That capture is from a machine with no Ollama model pulled, so the task itself failed and the exit code was 1. A provider error always surfaces on the last line like that. See Connect a model.

grith run opens the dashboard in your browser on start, because server.auto_open_dashboard defaults to true. It and the REPL are also the only two places that will prompt you to upgrade when a newer grith exists; grith exec checks too but prints one line and gets on with launching the tool. GRITH_NO_UPDATE_CHECK silences both.

ℹ️This is not the supervisor

grith run supervises grith's own agent loop. To supervise a separate tool - Claude Code, Codex, aider - use grith exec, which intercepts syscalls rather than tool calls.

Bare grith - the REPL

Running grith with no subcommand starts an interactive prompt. It opens with

grith v0.3.1 | model: <model> | filters: <n>
Type /help for commands, or enter a prompt.

Anything that does not start with / is sent to the model as a prompt. With no terminal attached it blocks on stdin, so do not use it in scripts - use grith run.

Slash commands

CommandAliasesWhat it does
/help/h, /?Print this table
/quit/q, /exitExit
/digest/dOpen the digest review UI
/audit [n]Last n audit entries, default 10
/configSession, model, filter count, turns, messages
/model <name>See the warning below
/proxy status/proxyProxy: <n> filters active
/proxy test <call>Dry-run a call through the proxy
/clearClear the screen
/contextSession, turn and message history

An unrecognised /command prints the help table rather than an error.

⚠️/model only renames the session

/model <name> changes the display name and nothing else. The router is not rebuilt at runtime. To change the model that actually answers, edit [llm] and restart.

See also

Last updated: 2026-08-24Edit this page on GitHub →