AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
MCP unreviewed MIT Self-run

Sofia

mcp-grasberg-sofia · by grasberg

Autonomous local AI assistant in Go — 40+ tools, 20+ LLM providers, multi-agent orchestration, self-improving

No reviews yet
0 installs
27 views
0.0% view→install

Install

$ agentstack add mcp-grasberg-sofia

Open-source listing, not yet scanned by AgentStack. Follow the source repository for install instructions.

Security review

⚠ Flagged

1 finding(s); flagged for manual review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures
  • high Pipes remote content directly into a shell (remote code execution).

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Reliability & compatibility

Not yet reviewed
0 installs to date
no reviews yet
2mo ago

Declared compatibility

Claude CodeClaude DesktopCursorWindsurf

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Sofia? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

🤖 Sofia

Your Local-First, Autonomous AI Colleague

[](https://github.com/grasberg/sofia/stargazers) [](https://github.com/grasberg/sofia/network/members) [](https://github.com/grasberg/sofia/blob/main/LICENSE) [](https://go.dev/) [](https://github.com/grasberg/sofia/commits/main) [](CONTRIBUTING.md)

A self-improving AI orchestrator that runs on your own machine. Single Go binary. 60+ tools. 188 models across 19 LLM providers. Multi-agent coordination. Persistent memory with a knowledge graph. Browser automation. Computer control. And it gets better at its job over time.

[🚀 Quick Start](#-quick-start) · [✨ Features](#-key-features) · [🏗️ Architecture](#-architecture) · [🤝 Contributing](CONTRIBUTING.md)


Why Sofia?

Most AI assistants are cloud-locked chatbots that wait for you to type something. Sofia is different.

  • 🏠 Local-first — Your config, memory, and history live on your machine in SQLite under ~/.sofia. (LLM inference still calls a provider's API unless you run a local model with Ollama.)
  • Single binary — Written in Go. No Python, no Node.js, no Docker required. Just make build.
  • 🧠 Self-improving — An opt-in evolution engine analyzes past performance and tunes the agent roster.
  • 🤖 Multi-agent — Spawn, coordinate, and retire agents dynamically. Agent-to-agent messaging built in.
  • 🔐 Safety built in — Approval gates on side-effectful tools (on by default, fail-closed). Opt-in prompt-injection and PII guardrails. Model API keys encrypted at rest (AES-256-GCM) when you set SOFIA_DB_KEY.
  • 🌐 19 LLM providers — OpenAI, Anthropic, Gemini, DeepSeek, Grok, Mistral, Groq, OpenRouter, Ollama, and more, with automatic fallback.

🚀 Quick Start

Install the binary, run the setup wizard, and open the dashboard:

# 1. Install (downloads the latest release, verifies its checksum, installs to ~/.local/bin)
curl -fsSL https://raw.githubusercontent.com/grasberg/sofia/main/install.sh | sh

# 2. First-run wizard: writes config, seeds the workspace, and configures a model
sofia onboard

# 3. Start the gateway (channels + web UI)
sofia gateway
# → Web UI at http://127.0.0.1:18795

sofia onboard detects provider API keys from your environment (ANTHROPIC_API_KEY, OPENAI_API_KEY, GEMINI_API_KEY, and others), lets you pick a provider, validates the key with a live one-token request, and saves it. If you skip it, add a model any time from the Web UI Models page.

> Note: the install.sh one-liner downloads a published GitHub release. Until the first > release is tagged, build from source (below) — that path works today.

Build from source

git clone https://github.com/grasberg/sofia.git
cd sofia
make deps && make build     # produces ./build/sofia
./build/sofia onboard
./build/sofia gateway

Prerequisites: Go 1.25+ (download). Always build with make build — a bare go build skips go generate and embeds a stale workspace.

See the [Installation Guide](docs/installation.md) for platform notes, upgrading, and running as a service.


✨ Key Features

🛠️ Autonomous Tool Use

Read and edit files, run shell commands, search and browse the web, query databases, manage Google services (Gmail/Calendar/Drive via gog) and GitHub (via gh) — with approval gates on anything that has side effects.

🧠 Advanced Memory

A tiered memory system — short-term session history, a long-term semantic knowledge graph, episodic notes and reflections, and named checkpoints — persisted in local SQLite with automatic summarization and consolidation.

🤖 Multi-Agent Orchestration

Delegate tasks to parallel agents chosen by semantic matching and reputation scores. Agent-to-agent mailbox messaging with broadcast, and conflict resolution when parallel agents disagree.

🌐 19 LLM Providers, 188 Models

OpenAI, Anthropic, Gemini, DeepSeek, Grok/xAI, Mistral, Groq, OpenRouter, Moonshot, Qwen, MiniMax, GitHub Copilot, local Ollama, and more — behind one interface with fallback chains and per-provider cooldown tracking.

📚 Skill System with Self-Learning

120+ built-in skills with expert personas, loaded from markdown SKILL.md files. Agents can discover, install, author, and refine skills at runtime — including pulling from the ClawHub community registry (experimental; the client and a reference server exist, but the public marketplace is not yet a stable service).

🔄 Evolution & Self-Improvement (opt-in)

A 5-phase EvolutionEngine (observe → diagnose → plan → act → verify) that reviews past performance and creates, retires, or tunes agents. Disabled by default; enable it in config or trigger a single cycle with /evolve.

🖥️ Computer Use

Autonomous desktop control via screenshots and a vision model — mouse and keyboard on macOS and Linux.

🌍 Browser Automation

Playwright-based web browsing: navigate, click, fill forms, screenshot, extract text. The ~250 MB browser runtime downloads automatically the first time a browser tool is used, not at startup.

🛡️ Guardrails & Security

Approval gates that fail closed (on by default), input validation, budget limits, and a circuit breaker for repeatedly failing tools. Prompt-injection defense and PII detection/redaction are available as opt-in guardrails (off by default; enable in config).

📋 More Features

  • MCP — Act as a Model Context Protocol server (sofia mcp-server), and connect to external MCP servers as tools.
  • Gateway Mode — Telegram, Discord, Email, Web, and CLI channels through one service.
  • Autonomy & Proactivity (on by default) — Long-term goals, context triggers, a heartbeat, and background research delivered to your last active channel.
  • Cron Scheduling — One-time (at), interval (every), and cron-expression jobs from chat, CLI, or the dashboard.
  • Workflows — Deterministic multi-step flows with approval gating (e.g. email support-reply, GitHub issue fixing).
  • Voice — Speech-to-text for Discord/Telegram voice notes; text-to-speech via ElevenLabs or the OS engine.
  • Remote Access — Expose the dashboard over your tailnet (or publicly) via Tailscale.
  • Modern Web UI — Real-time updates, streaming chat, file uploads, and settings for every subsystem.

🏗️ Architecture

┌─────────────────────────────────────────────────────────┐
│                    Channels (Input)                      │
│   Telegram  ·  Discord  ·  Email  ·  Web UI  ·  CLI      │
└──────────────────────────┬──────────────────────────────┘
                           │
                    ┌──────▼──────┐
                    │   Gateway    │  ← HTTP/WebSocket + health endpoints
                    └──────┬──────┘
                           │
              ┌────────────┼────────────────┐
              │         Orchestrator          │
              │  ┌─────────┴──────────┐      │
              │  │  Evolution Engine   │      │  (opt-in)
              │  │  (Self-Improvement) │      │
              │  └────────────────────┘      │
              │                               │
              │  ┌──────────┐  ┌──────────┐  │
              │  │  Agent 1  │  │  Agent 2  │  │  (A2A messaging)
              │  └─────┬────┘  └─────┬────┘  │
              └────────┼─────────────┼────────┘
                       │             │
              ┌────────┴─────────────┴────────┐
              │         Tool Layer             │
              │  File · Shell · Web · Browser  │
              │  GitHub · Google · Bitcoin     │
              │  Cron · Memory · Plan · MCP    │
              └───────────────┬────────────────┘
                              │
                    ┌─────────▼─────────┐
                    │   LLM Providers    │
                    │  19 with fallback  │
                    └───────────────────┘

For a full, source-grounded walkthrough of every subsystem, see [docs/features.md](docs/features.md).


⚔️ Comparison

| | Sofia | AutoGPT | CrewAI | LangChain | OpenDevin | |---|:---:|:---:|:---:|:---:|:---:| | Local-first state | ✅ | ❌ | ❌ | ❌ | ❌ | | Single binary | ✅ | ❌ | ❌ | ❌ | ❌ | | 60+ built-in tools | ✅ | Limited | Via plugins | Via plugins | Limited | | Knowledge graph | ✅ | Basic | ❌ | ❌ | ❌ | | Self-improving | ✅ | ❌ | ❌ | ❌ | ❌ | | Multi-agent orchestration | ✅ | Basic | ✅ | Basic | ❌ | | Browser automation | ✅ | ❌ | ❌ | ❌ | ❌ | | Computer use | ✅ | ❌ | ❌ | ❌ | ❌ | | Security guardrails | ✅ | ❌ | ❌ | ❌ | ❌ | | Language | Go | Python | Python | Python | Python |

"Local-first state" means your config, memory, and history stay on your machine. LLM inference is served by whichever provider you configure (cloud, unless you run Ollama locally).


📂 Where Sofia stores things

~/.sofia/
├── config.json          # channels, gateway, web UI, agents, tools, guardrails
├── memory.db            # model catalog + API keys, memory, goals, sessions (SQLite)
├── audit.db             # structured audit trail of every action
├── workspace/
│   ├── AGENT.md         # base agent instructions
│   ├── IDENTITY.md      # who Sofia is
│   ├── SOUL.md          # personality & behavior rules
│   ├── USER.md          # your preferences
│   ├── skills/          # 120+ skill definitions (name/SKILL.md)
│   └── agents/          # 40 agent templates (flat .md files)
└── logs/                # written when running as a background service

Nothing here lives in the repo — runtime state is entirely under ~/.sofia.


🗺️ Roadmap

  • [ ] Published release binaries — first tagged GitHub release + Homebrew tap
  • [ ] Plugin SDK — third-party tool development kit
  • [ ] Team Mode — multi-user collaboration
  • [ ] Cloud Sync — optional encrypted backup

🤝 Contributing

We love contributions! See [CONTRIBUTING.md](CONTRIBUTING.md) for setup, conventions, and the PR process.

Whether you are fixing a bug, adding a feature, improving docs, or sharing a skill — every contribution matters.

🛡️ Security

  • Secrets at rest — Set SOFIA_DB_KEY (16+ chars) and Sofia encrypts model API keys in

the local SQLite database with AES-256-GCM (key derived via PBKDF2-SHA256, per-install salt). Without the key, secrets are stored in plaintext in your local DB — set it to encrypt them.

  • Web UI binds loopback — The dashboard listens on 127.0.0.1 by default. It has no auth

unless you set webui.auth_token, and it can execute commands via chat — so the gateway refuses to start on a non-loopback interface unless a token is configured.

  • Approval gates fail closed — Side-effectful tools require approval unless you opt out per

session with /yolo; a missing approval gate denies rather than allows.

Found a vulnerability? Please see [SECURITY.md](SECURITY.md) for responsible disclosure.

📄 License

Sofia is released under the [MIT License](LICENSE).


⭐ Star us on GitHub · 🐛 Report a Bug · 💬 Join the Discussion

Made with ❤️ by the Sofia community

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.