Редактор, у якому живуть агенти.
🌐 English · 中文 · 日本語 · 한국어 · Deutsch · Français · Español · Português · Italiano · Polski · Nederlands · Türkçe · Svenska
Завантажити v4.0 · Допис до релізу · Сайт · Безпека
Ваші нотатки живуть у теці. SoloMD — це редактор поверх неї, з першокласним агентським інтерфейсом усередині редактора та MCP-точкою входу, якою Claude Code / Cursor можуть керувати ззовні. Ті самі .md-файли. Спілкуйтеся зі своїм сховищем у чаті. Плануйте recipes, що виконуються, коли вас немає за клавіатурою. Передавайте те саме сховище будь-якому MCP-клієнту.
Побудовано на Tauri 2 + Vue 3 + CodeMirror 6. Універсальний macOS dmg ~32 МБ. Безкоштовно, MIT, без підписок, без серверів, що хостить SoloMD. Ваші нотатки, AI-ключі, індекс embeddings та історія Git — усе залишається на вашій машині.
Редактор. WYSIWYG-редагування наживо (стиль Typora), вкладки + розділені панелі, KaTeX + Mermaid, вставка зображень у _assets/, режим слайд-шоу (⌘⌥P), Vim-режим, Hunspell + перевірка орфографії CJK, семантичний пошук (⌘⇧F), wikilinks + зворотні посилання, експорт через Pandoc. Кодування CJK (GBK / Big5 / Shift-JIS) визначаються автоматично.
Точка входу. Поставлений у комплекті бінарник solomd-mcp відкриває те саме сховище будь-якому MCP-клієнту — 13 інструментів за замовчуванням, у тому числі 5 власних SoloMD (autogit_log, autogit_diff, autogit_rollback, sync_status, share_url), яких немає в жодному іншому Markdown-сервері. v4.0 додає федерацію --workspace path1 --workspace path2 — одна MCP-сесія, багато сховищ. Плюс CLI solomd agent <prompt>, який передає Claude Code / Codex CLI із заздалегідь підключеним MCP.
Агентський інтерфейс (v4.0). Панель агента праворуч: чат зі сховищем у режимі стрімінгу, цитати [[wikilink]], картки викликів інструментів inline, кнопки Вставити / Копіювати скидають відповідь у активну нотатку. Плюс декларативні recipes як YAML у <workspace>/.solomd/agents/*.yml — тригери cron / on-save / on-commit / on-tag-add / ручні. Кожна записувальна дія агента потрапляє у власну гілку AutoGit, яку ви приймаєте або відхиляєте, перш ніж вона торкнеться main; типовий write-cap 5; відмовляється стартувати, якщо робоче дерево брудне; повторюваний trace.jsonl на запуск з MCP-інструментом read_agent_trace.
| Функція | |
|---|---|
| Панель агента (v4.0) | Чат зі сховищем у режимі стрімінгу нарівні з Outline / Backlinks / Tags / History. Картки викликів інструментів розгортаються inline; відповідь Вставити / Копіювати до активного редактора; журнал запусків зберігається як чистий Markdown у .solomd/agent-runs/. |
| Заплановані recipes (v4.0) | YAML-завдання у вашому сховищі. Пісочниця гілки AutoGit + UI accept/reject перед мерджем. Write-cap на запуск (за замовчуванням 5, максимум 50). Кулінарна книга з 11 recipes у дереві. |
| Повторюваний trace (v4.0) | trace.jsonl на крок (prompt / model_call / tool_call / tool_result / git_commit). Replay-from-step перемотує і запускає знову. |
| Федерація робочих просторів (v4.0) | solomd-mcp --workspace path1 --workspace path2. Одна сесія Claude Desktop, багато сховищ. UI MCP-профілів у Налаштування → Інтеграції. |
| Ollama першокласно (v4.0) | Авто-визначення на localhost:11434. Три пресети моделей (qwen2.5:1.5b/7b/14b). Recipe-alias provider: local для автономних циклів без хмари. |
| AI-переписування, BYOK | 14 провайдерів — OpenAI · Claude · Gemini · DeepSeek · Qwen · GLM · Kimi · Doubao · SiliconFlow · OpenRouter · Mistral · Groq · xAI · Ollama. Прямі виклики до постачальників. Ключі в OS-keychain. |
| Синхронізація через GitHub | Push сховища до приватного репозиторію GitHub при кожному збереженні. Опціональне E2EE (Argon2id + XChaCha20-Poly1305). GitLab / Gitea / будь-який HTTPS git URL також працює. |
| AutoGit на нотатку | Кожний ⌘S — це коміт у локальний .git у робочому просторі. libgit2 у комплекті, системний git не потрібен. Ніколи не пушиться автоматично. |
| MCP-сервер у комплекті | solomd-mcp входить у поставку. 13 інструментів (8 загальних + 5 власних SoloMD). Лише stdio, без мережевого порту. Лише для читання за замовчуванням; opt-in --allow-write. |
| REST API (v4.0) | Лише localhost, авторизація за токеном. Та сама поверхня, що й MCP, для клієнтів, які ще не говорять MCP — Alfred / Raycast / n8n / власні скрипти. |
| Лічильник вартості BYOK (v4.0) | Поточний лічильник використання токенів на провайдера, opt-in. Налаштування → Інтеграції. |
| Режим хмарної теки | Якщо ваше сховище в ~/Library/Mobile Documents/... або ~/Dropbox/..., SoloMD це визначає й додає відновлення сесії між пристроями — синхронізацію файлів уже виконує OS. |
| Публічне обмеження лише для читання | Палітра команд → скопіюйте посилання solomd.app/share/?repo=...&path=.... Рендерить будь-який файл у вашому публічному GitHub-репо, перегляд не потребує облікового запису SoloMD. |
Після встановлення SoloMD на macOS / Linux:
1. Спілкуйтеся зі сховищем у чаті. Відкрийте панель агента праворуч (⌘⇧P → "View: Toggle Agent Panel", якщо приховано). Стрімований мульти-діалог по ваших нотатках; картки викликів інструментів показують кожне читання/запис inline. Відповідь занадто довга? Вставити скидає її у активну нотатку на позицію курсора (замінює виділення); Копіювати до буфера обміну.
2. Заплануйте recipe. Налаштування → Recipes → перегляньте кулінарну книгу. Готові 11 стартових: тижневий огляд, щоденний підсумок, витяг TODO, прохід перекладу, чищення цитат, агент перевірки орфографії CJK, детектор link rot, нормалізатор frontmatter, outline-у-блог, прохід рефакторингу, щотижневий триаж тегів. Встановіть один, відредагуйте промпт, запустіть.
3. Керуйте тим самим сховищем з іншого LLM-клієнта. В один рух:
# Вивести фрагмент конфігурації MCP для вашого AI-клієнта.
solomd mcp-config{
"mcpServers": {
"solomd": {
"command": "/Applications/SoloMD.app/Contents/Resources/solomd-mcp",
"args": ["--workspace", "/Users/me/Documents/SoloMD"]
}
}
}Вставте у Claude Desktop / Cursor / тощо. Для федерації кількох сховищ повторіть --workspace:
"args": [
"--workspace", "/Users/me/Documents/SoloMD",
"--workspace", "/Users/me/Documents/work-notes"
]4. Або передайте промпт безпосередньо до claude / codex CLI:
solomd agent "перепиши щоденні нотатки цього тижня в тижневий огляд і закоміть його"Захищено від path traversal. Без мережевого порту. LLM бачить лише те, на що ви спрямували робочий простір.
Останній реліз: v4.0.0.
brew install --cask zhitongblog/solomd/solomdАбо завантажте dmg напряму:
https://github.com/zhitongblog/solomd/releases/latest/download/SoloMD_4.0.0_universal.dmg
Або встановлення shell-командою в один рядок:
curl -fsSL https://solomd.app/install.sh | bashSoloMD_4.0.0_x64_en-US.msiSoloMD_4.0.0_x64-setup.exe(NSIS)SoloMD_4.0.0_x64-portable.zip— без інсталятора
irm https://solomd.app/install.ps1 | iexwinget install solomd.AppImage(універсальний),.deb(Debian/Ubuntu),.rpm(Fedora/RHEL) — обидві архітектури зі сторінки релізів.- Користувачі Arch:
solomd-binв AUR.
App Store — той самий двигун, нативний UI iPad.
Чисто клієнтська сторона. Ваші .md-файли залишаються в обраній вами теці. API-ключі живуть в OS-keychain (macOS Keychain / Windows Credential Manager / Linux libsecret), ніколи в localStorage або файлі конфігурації. AI-запити йдуть з вашої машини напряму до обраного провайдера — без релею SoloMD. Embeddings RAG та репозиторій AutoGit — лише локальні. MCP-сервер говорить через stdio, ніколи не відкриває мережевий порт. Уся кодова база MIT і піддається аудиту.
Запобіжники безпеки агентів (v4.0). Кожен запуск recipe стартує на власній гілці AutoGit — ваш main залишається недоторканим, поки ви не натиснете Прийняти на diff. Write-cap на запуск (за замовчуванням 5, жорсткий максимум 50) запобігає циклам, що пішли врозніс. Recipe-runner відмовляється стартувати, якщо робоче дерево брудне (жоден агентський коміт не змете ваш WIP). Захист від path traversal заздалегідь відхиляє сегменти .. та абсолютні шляхи в кожній точці входу Tauri / MCP / REST, яка приймає шлях, наданий користувачем.
E2EE-синхронізація використовує Argon2id (стандартні параметри RFC9106) → XChaCha20-Poly1305 з детермінованими nonce та шляхом як AAD. Відкритий текст залишається на ваших пристроях; remote бачить лише шифротекст. Невдалий парсинг sync.json — fail-closed: відмовляє в push, замість деградації до відкритого тексту (виправлення з аудиту v3.0.x).
Повний опис: https://solomd.app/security.
Передумови: Rust (stable), Node 18+, pnpm.
git clone https://github.com/zhitongblog/solomd.git
cd solomd/app
pnpm install
pnpm tauri dev # dev з hot reload
pnpm tauri build # релізні артефакти → src-tauri/target/release/bundle/Linux також потребує libdbus-1-dev для keychain-бекенду.
MCP-сервер — окремий crate в mcp-server/; dev-MCP-harness для end-to-end-тестів живе в dev-mcp/. Точка входу для end-to-end-тестів: scripts/v4-self-test.sh (запустіть з --with-release --with-ollama --with-ui для повного покриття).
Issues та PR вітаються — відкрийте один. Щоб відчути напрям, дивіться docs/roadmap.md. Журнал збірки v4.0 — на solomd.app/blog/v4-0-0-how-we-built-it/ — починайте звідти, якщо хочете зрозуміти інженерні принципи перед надсиланням PR.
Один підтримувач, двоє вхідних дверей. Асинхронно — GitHub Discussions. Чат у реальному часі:
- Telegram (міжнародний): @SOLOMDAPP — анонси релізів + чат
- WeChat (中文): скануйте, щоб додати мене — у нотатці "SoloMD"
MIT © 2026 xiangdong li. SoloMD стоїть на Tauri 2, Vue 3, CodeMirror 6, markdown-it, KaTeX, Mermaid, libgit2, Pandoc, Hunspell, keyring-rs та rmcp. Спонсорство на GitHub Sponsors або через solomd.app/#sponsor.