Get from zero to a working AI development environment.
Metis is a CLI for scaffolding and evolving local AI development environments for RAG, Agents and MCP.
Recipes create environments. Capabilities extend them. Dry-run previews them. Inspect explains them. Doctor validates them.
Install
For local development from the Metis repository:
python3.12 -m venv .venv
source .venv/bin/activate
python -m pip install -e .Once Metis is published to PyPI or Homebrew, replace this with the public installation command.
Quick start
Preview a RAG project before creating anything:
metis init rag --name demo --dry-runWhen the plan looks right, create an Agent environment:
metis init agentStart the generated project:
cd my-agent
cp .env.example .env
docker compose up --buildUnderstand and validate it:
metis inspect
metis doctorCreate a RAG environment
metis init ragChoose a vector DB, LLM, embedding provider and FastAPI framework. Metis scaffolds the environment and starter wiring; you own chunking, retrieval strategy, prompts and domain logic.
Create an Agent environment
metis init agentChoose LLM provider, runtime, state and framework. Current state options include none or Redis.
Create an MCP server
metis init mcp-serverGenerate a minimal Python MCP server using stdio or streamable HTTP, plus a safe example tool.
Core commands
metis init --dry-run
Preview exactly what Metis plans to generate before any filesystem changes are made.
metis init rag --name demo --dry-runThe plan includes the recipe, project name, destination, resolved selections, capabilities and files that would be created.
Metis generation plan
Recipe: rag
Project: demo
Destination: ./demo
Selections:
vector_db: qdrant
llm: openai
embedding: openai
framework: fastapi
Files:
CREATE .env.example
CREATE Dockerfile
CREATE docker-compose.yml
CREATE .metis/project.yaml
Dry run only. No files were written.Dry-run does not create the project directory, write generated files, or create .metis/project.yaml.
metis add
Add a capability to an existing Metis-generated project.
metis add ragMetis inspects what already exists, preserves compatible pieces, adds what is missing, validates the result and updates metadata.
metis inspect
metis inspectShow the current recipe, selections, capabilities and detected infrastructure.
metis doctor
metis doctorCheck Docker, Compose validity, app health, Qdrant/Chroma, Redis and required provider environment variables when relevant.
Mental model
Example: Agent, RAG, MCP.
Example: FastAPI, Redis, vector DB.
Build and display the generation plan without filesystem mutation.
Compare metadata with project evidence.
Check tooling, config and reachable services.
Metis v0.1 scope
metis init ragmetis init agentmetis init mcp-servermetis init <recipe> --dry-runmetis add ragmetis inspectmetis doctor