Open Gauss is a project-scoped Lean workflow orchestrator from Math, Inc. It gives gauss a multi-agent frontend for the lean4-skills prove, draft, autoprove, formalize, and autoformalize workflows, while staging the Lean tooling, MCP/LSP wiring, and backend session state those workflows need.
Open Gauss handles project detection, managed backend setup, workflow spawning, swarm tracking, and recovery. The proving and formalization behavior still comes from cameronfreer/lean4-skills; Gauss exposes it through a Gauss-native CLI and project model.
Each lifted slash command spawns a managed backend child agent in the active project and forwards the same argument tail into the corresponding lean4-skills workflow command:
/prove ...->/lean4:prove .../draft ...->/lean4:draft .../autoprove ...->/lean4:autoprove .../formalize ...->/lean4:formalize .../autoformalize ...->/lean4:autoformalize ...
git clone https://github.com/math-inc/OpenGauss.git cd OpenGauss ./scripts/install.shThe installer will:
- Install system dependencies (via Homebrew on macOS, apt on Ubuntu/Debian)
- Install
uv, Node.js, Claude Code, and the Lean toolchain if missing - Create a Python virtualenv and install Gauss
- Link the
gausscommand to~/.local/bin/gauss - Set up
~/.gauss/for runtime config and secrets - Run the setup wizard to configure your API keys and model
After install, reload your shell and start Gauss:
source ~/.zshrc # or ~/.bashrc gaussIf you prefer to run models locally (e.g., using a local GPU) to save on API costs:
- Start your vLLM server (OpenAI-compatible):
python -m vllm.entrypoints.openai.api_server --model <model_name>
./scripts/install.sh --with-workspace # Also create a prewarmed Lean+Mathlib workspace (~2 GB download) ./scripts/install.sh --skip-system-packages # Skip Homebrew/apt package installation ./scripts/install.sh --recreate-venv # Force-recreate the Python virtualenv cd OpenGauss git pull gauss updategauss # Launch the CLI /project create ~/my-project # Create a new Lean project /prove 1+1=2 # Spawn a proving agent /swarm # See running agents If you already have a Lean project:
cd ~/my-lean-project gauss /project init # Register it as a Gauss project /prove # Start proving - Start the CLI with
gauss - Create or select the active project with
/project - Launch
/prove,/draft,/autoprove,/formalize, or/autoformalize - Gauss spawns a managed backend child session that runs the corresponding
lean4-skillsworkflow command in the active project - Use
/swarmto track or reattach to running workflow agents
Gauss treats Lean work as project-scoped by default. Before launching managed workflows, select the active project once and then let Gauss keep spawning backend child agents inside that project root.
/project init [path] [--name <name>]registers an existing Lean repo as a Gauss project/project convert [path] [--name <name>]registers an existing Lean blueprint repo/project create <path> [--template-source <source>] [--name <name>]bootstraps a project from a template and registers it/project use [path]pins the current session to an existing Gauss project/project clearremoves the session override and falls back to ambient project discovery
Gauss discovers .gauss/project.yaml upward from the current working directory, but managed workflow child agents launch from the active project root so the forwarded Lean workflow command always runs in the right project context.
/prove [scope or flags]β spawn a guided proving agent/draft [topic or flags]β draft Lean declaration skeletons/autoprove [scope or flags]β spawn an autonomous proving agent/formalize [topic or flags]β spawn an interactive formalization agent/autoformalize [topic or flags]β spawn an autonomous formalization agent/swarmβ list running workflow agents/swarm attach <task-id>β reattach to a running agent/swarm cancel <task-id>β cancel a running agent
gauss.autoformalize.backenddefaults toclaude-code- Built-in backends:
claude-code,codex claudeorcodexinstalled and authenticated for the backend you select- Claude auth can come from either:
- the normal
claude auth loginflow / Claude credential files - a saved
ANTHROPIC_API_KEYin~/.gauss/.env
- the normal
- If both are present, Gauss defaults to Claude's own local auth and only falls back to
ANTHROPIC_API_KEYwhen no Claude credentials are available - Override with
gauss.autoformalize.auth_modein~/.gauss/config.yaml:auto(default): prefer local backend auth, then fall back to saved env/API-key authlogin: ignore staged API-key auth and let the backend use the normal interactive login flowapi-key: force the managed session onto saved env/API-key auth
uvoruvxavailableripgrep(rg) available for Lean local search- An active Gauss project selected via
.gauss/project.yaml
Gauss checks these before launch and tells you exactly what is missing.
This repository was forked from nousresearch/hermes-agent.