16 open-source AI tools. Local-first. Vendor-agnostic. No telemetry.
🌐 Live site: sovereign-shovels.vercel.app
We build small, focused utilities that ride existing AI substrates (Claude, Ollama, Sarvam, MCP) while preserving user sovereignty over the model, the data, and the hardware.
Principles:
- Works offline with local models by default
- No hardcoded API keys; env vars only
- No telemetry, no required sign-up
- SQLite for local data, reqwest for HTTP
| Repo | What it does | Live URL |
|---|---|---|
| www | Portfolio homepage with repo detail pages | sovereign-shovels.vercel.app |
| Repo | Language | What it does |
|---|---|---|
| claude-vault | Rust | Local SQLite vault for AI conversations. Import Claude/ChatGPT exports, FTS5 search, tags. |
| agent-console | Rust | Unified log timeline for agent sessions. Aider, Cline, Claude Code, Goose. |
| Repo | Language | What it does |
|---|---|---|
| bulbul-studio | Rust + TS | Desktop TTS studio. 30+ voices, 10 Indic languages, SSML, batch. |
| saaras-tray | Rust + TS | Tray dictation for 10 Indic languages. Hinglish codemix. Global hotkey. |
| sarvam-pdf | Rust | PDF text extraction + Indic translation. 22 languages. |
| sarvam-meet | Rust | Meeting recorder + transcription for Indic languages. |
| sarvam-cast | TypeScript | RSS → Indic podcast pipeline. Summarize + translate + TTS. |
| Repo | Language | What it does |
|---|---|---|
| ollama-cron | Rust | Cron for AI prompts. Schedule local model runs. File/webhook output. |
| llm-diff | Rust | Run prompts across N providers in parallel. Side-by-side diff. |
| claude-radio | Rust | RSS → podcast script. Fetch feeds, generate briefings with any LLM. |
| claude-bridge | TypeScript | Express proxy with context bus. Clipboard/selection injected into LLM calls. |
| obsidian-llm | TypeScript | Obsidian plugin for LLM chat. BYO endpoint. Ollama by default. |
| Repo | Language | What it does |
|---|---|---|
| claude-prompts | TypeScript | Canonical prompt library. Syncs to .cursorrules + AGENTS.md. |
| mcp-forge | TypeScript | Scaffold MCP servers in 30 seconds. 3 templates, test harness. |
| Repo | Language | What it does |
|---|---|---|
| gemini-watcher | TypeScript | Directory file watcher. Extracts layout, code, or text from files/screenshots using Gemini features. |
| clipboard-gemini-clipboard | TypeScript | Clipboard transformation utility. Intercepts copied text, refactors/translates it via Gemini on-the-fly. |
You can install any CLI utility in the portfolio using our global one-liner installer:
# Download the global installer
curl -fsSL https://raw.githubusercontent.com/sovereign-shovels/www/main/install.sh -o install.sh && chmod +x install.sh
# Install any shovel (e.g., llm-diff or claude-prompts)
./install.sh llm-diffOr build manually from source:
git clone https://github.com/sovereign-shovels/llm-diff.git
cd llm-diff && cargo build --release┌─────────────────────────────────────────────────────────────┐
│ LOCAL AI STACK │
├─────────────┬─────────────┬─────────────┬───────────────────┤
│ VAULT │ SPEECH │ SCHEDULE │ DIFF / RADIO │
│ claude-vault│ saaras-tray │ ollama-cron │ llm-diff │
│ agent-con. │ bulbul-stu. │ │ claude-radio │
│ │ │ │ sarvam-cast │
├─────────────┼─────────────┼─────────────┼───────────────────┤
│ PROMPTS │ MCP │ PDF │ BRIDGE / PLUGIN │
│ claude-pr. │ mcp-forge │ sarvam-pdf │ claude-bridge │
│ │ │ sarvam-meet │ obsidian-llm │
├─────────────┴─────────────┴─────────────┴───────────────────┤
│ MULTIMODAL │
│ gemini-watcher clipboard-gemini-clipboard │
└─────────────────────────────────────────────────────────────┘
All repos are Apache 2.0.