██████╗ ██████╗ ██████╗ ██╔══██╗ ██╔════╝ ██╔════╝ ██║ ██║ ██║ ███╗ ██║ ██║ ██║ ██║ ██║ ██║ ██████╔╝ ╚██████╔╝ ╚██████╗ ╚═════╝ ╚═════╝ ╚═════╝
DGC lives in your terminal and drives your model — Ollama, llama.cpp, LM Studio, vLLM, or any OpenAI-compatible cloud. Permission modes, plan mode, thinking levels, memory and skills. Your machine, your model, your data.
curl -fsSL https://dagucchicode.com/install.sh | bash
dgc setup walks you through provider, key, model and context size. Switch any time inside the session with /connect.
Four permission modes, switched live with /mode — from ask-first to fully unattended.
Reads and known-safe commands run free. Writes and other shell commands ask first — allow once, always, or never.
File edits are auto-approved so flow isn't interrupted; shell commands still ask for a yes.
Read-only. The agent researches your codebase and presents a concrete plan — approve it into any mode, or send it back to revise.
Full-auto. Everything is approved — the agent builds, tests and verifies unattended until the task is done. Deny rules still fire.
Claude Code-style rules, evaluated deny → ask → allow. Compound shell commands are split and matched per subcommand; wrappers like timeout are stripped; read-only commands (ls, git status, …) never prompt.
Rules persist globally in ~/.dgc/config.json or per project in .dgc/permissions.json.
# in the REPL /permissions allow Bash(npm run *) /permissions allow Edit(src/**) /permissions ask Bash(git push *) /permissions deny Bash(rm -rf *) /permissions deny Read(**/.env)
The machinery the big agents have — pointed at whatever model you choose.
Read-only research → a concrete step-by-step plan → approve into auto, acceptEdits or default. Reject with feedback and it revises.
/think off|low|medium|high, with think / think hard / ultrathink keywords bumping a single turn. Reasoning streams dimmed.
DGC.md in your project and ~/.dgc/DGC.md for you load into every session. #a fact quick-adds; /init writes the project guide.
Drop a SKILL.md into .dgc/skills/<name>/ — the model invokes it when the description matches, or call it directly with /skill.
No native tool-calling on the endpoint? DGC auto-falls back to a text tool-call protocol and parses it, so small quantized models still work.
Long sessions summarize older turns automatically near your model's context limit. /compact forces it, /clear resets.
TOOLS THE AGENT CAN CALL
curl -fsSL https://dagucchicode.com/install.sh | bash
Self-contained venv, nothing needs root.
dgc setup picks a provider and model interactively; dgc doctor verifies the endpoint.
dgc -p "task" --mode auto
dgc opens the agent in your project; the line above runs one-shot, unattended.