Compass is a local-first Python framework for agentic coding and artifact generation. It combines pluggable LLM backends, reusable generation loops, and an NFA-based agent runtime to plan work, produce artifacts, validate them, and iterate when execution fails.
- Local-first workflow oriented around your filesystem, shell, and workspace
- Pluggable model providers for Anthropic, Ollama, and llama.cpp
- Reusable generator architecture for code, notebooks, plans, and meta-generation
- Interactive CLI and agent runtime for multi-step coding workflows
- Built-in validation and repair loops instead of one-shot generation only
- Optional companion integration for Neo skill/state workflows
compass/core/: shared execution primitives, NFA runner, memory, and streaming utilitiescompass/llm/: provider abstraction, model routing, and Oracle interfacecompass/cli/: command-line entry points and interactive code mode
compass/agents/neo/: the main coding agent loop- Supports file operations, command execution, search/indexing, and optional computer-use actions
- Uses an actor/review/answer style workflow on top of the core state machine
trinity: plans and executes multi-step workflows across a workspacecode: generates Python code and tests, then validates with syntax checks and executionnotebook: generates notebooks and validates execution and variable flowmeta: generates new generators that follow the same framework shapeneo: generates executable plans for downstream workcli_tool: generates command-line tool artifacts
./setup.sh
source .venv/bin/activateManual setup:
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"List available generators:
generate --listGenerate Python code:
generate --name code --prompt "Build a stack class with tests"Run a Trinity workflow:
generate --name trinity --prompt "Investigate this repository and summarize its architecture"Generate a notebook:
generate --name notebook --prompt "Create a notebook that demonstrates decorators"Generate a generator:
generate --name meta --prompt "Build a generator for small Python CLI tools"Launch Trinity's interactive REPL:
generate --liveLaunch Trinity's REPL with prior-answer history included in context:
generate --history --liveLaunch Neo's interactive code mode:
generate --neoPrimary environment variables:
ANTHROPIC_API_KEYOLLAMA_HOSTOLLAMA_MODELLLAMACPP_HOSTOCR_URLDETECT_URLCOMPASS_MODEL
Optional integration:
COMPASS_NEO_LABpoints Neo's skill/state integration at a companionneo-labworkspace. This only affects the optional skill/state features used by Neo planning and computer-use actions.NEO_OCR_SERVERandNEO_DINO_SERVERare also accepted as compatibility aliases when Compass is paired with aneo-labsetup.
Start from .env.example and copy it
to .env or ~/.compass/.env.
Run the test suite:
pytestCompass is still experimental. Interfaces and generator contracts are evolving, especially around agent workflows, validation strategy, and artifact execution.
MIT. See LICENSE.