Autonomous AI co-worker that gets better every day
7.1K
An autonomous AI co-worker that runs on its own machine, learns from every conversation, and evolves its own capabilities.
Phantom wraps the Claude Agent SDK (Opus/Sonnet) with persistent vector-backed memory, a validated self-evolution engine, and full computer access. It communicates via Slack, sends email from its own address, collects credentials securely, serves web dashboards, schedules tasks, and exposes all capabilities as an MCP server.
# Download the compose file and env template
curl -O https://raw.githubusercontent.com/ghostwright/phantom/main/docker-compose.user.yaml
curl -O https://raw.githubusercontent.com/ghostwright/phantom/main/.env.example
# Configure
cp .env.example .env
# Edit .env with your ANTHROPIC_API_KEY and Slack tokens
# Run
docker compose -f docker-compose.user.yaml up -d
# Verify
curl http://localhost:3100/health
Three containers start automatically: Phantom (the agent), Qdrant (vector memory), and Ollama (local embeddings). First run pulls the embedding model (~270MB) and initializes configuration.
Set these in your .env file:
| Variable | Required | Description |
|---|---|---|
ANTHROPIC_API_KEY | Yes | Your Anthropic API key |
SLACK_BOT_TOKEN | No | Slack bot token (xoxb-...) |
SLACK_APP_TOKEN | No | Slack app token for Socket Mode (xapp-...) |
PHANTOM_NAME | No | Agent name (default: phantom) |
PHANTOM_MODEL | No | claude-sonnet-4-6 (default) or claude-opus-4-6 |
PHANTOM_DOMAIN | No | Domain for the agent's public URL and email |
RESEND_API_KEY | No | Resend API key for email sending |
SECRET_ENCRYPTION_KEY | No | 64-char hex key for credential encryption (auto-generated if omitted) |
Content type
Image
Digest
sha256:4ae2676d7…
Size
451.2 MB
Last updated
5 months ago
docker pull ghostwright/phantom