by GenAI Lab (open source) Windows, macOS, Linux
Терминальный агент-рантайм с маленьким контекстом и нативной скоростью — один 12 МБ Go-бинарник, ноль рантайм-зависимостей.
Ещё один харнесс для coding-агента — лёгкий, написан на Go.
Терминальный coding-агент, оптимизированный под prefix caching DeepSeek (написан на чистом Go) — 95-99% попаданий в кеш, …
Интерактивный CLI (и веб-интерфейс), использующий Claude 3.5 Sonnet для задач разработки ПО. Позволяет Claude генерировать и …
Token-эффективный AI-агент — та же плотность интеллекта при том же бюджете токенов.
# Homebrew (macOS / Linux) brew tap genai-io/san brew install san # macOS / Linux curl -fsSL https://raw.githubusercontent.com/genai-io/san/main/install.sh | bash # Windows (PowerShell) irm https://raw.githubusercontent.com/genai-io/san/main/install.ps1 | iex
Минимальные накладные расходы. Максимальный агент.
Малый контекст, нативная скорость, полностью открытый.简体中文 · Русский
Открыть введение в полном качестве ↗
⚡ ~0.01 с холодный старт · 📦 ~12 МБ один бинарный файл · 🪶 ноль зависимостей во время выполнения
San — это открытая среда выполнения агентов для терминала: один нативный бинарный файл на Go, без Node.js или Python. Всё, к чему прикасается модель — промпт, инструменты, провайдеры, расширения — остаётся вашим для изменений.
Три свойства, и San отказывается жертвовать любым из них ради других.
Малый — ~2.3k токенов инфраструктуры доходят до модели до вашего первого сообщения; остальное пространство контекста отводится вашей работе. На диске — один бинарный файл размером 12 МБ без зависимостей во время выполнения — он запускается на ноутбуке, CI-раннере или контейнере scratch.
Быстрый — ~0.01 с холодный старт, и задача с использованием инструментов выполняется за ~3.3 с от начала до конца. То, на что вы ждёте — это модель, а не клиент (бенчмарк).
Открытый — подключайте модели, навыки, субагентов и MCP-серверы; пишите собственный системный промпт, цели автопилота и стратегию самообучения; воспроизводите любой запуск в san inspector.
Минимальные накладные расходы, а не минимальный агент.
Название — San, записывается как 三 ("три") и изображается ☰. Из Дао Дэ Цзин: 三生万物 — "из трёх рождаются десять тысяч вещей": одна среда выполнения, становящаяся любым агентом, работающая по трёхшаговому циклу (рассуждение → действие → наблюдение). Команда остаётся san.
Обзорная диаграмма

Подключайте — ничего не вшито жёстко. Модели от Anthropic, OpenAI, Google, DeepSeek, Ollama и ещё десятка других; выбранный вами бэкенд веб-поиска; расширения любого рода — навыки, субагенты, MCP-серверы, плагины, хуки.
Пишите — поведение агента определяется текстом, который принадлежит вам, а не вшит в бинарный файл. Составляйте системный промпт (как), объединяйте его в персону, которую можно переключать, ставьте автопилоту цель, настраивайте стратегию самообучения.
Контролируйте — ничто не выполняется без наблюдения. Вы выбираете, сколько San может сделать без запроса, и субагенты наследуют этот выбор (разрешения); инспектор воспроизводит любой запуск точно так, как его видела модель.
Homebrew (macOS / Linux)
brew tap genai-io/san
brew install san
macOS / Linux
curl -fsSL https://raw.githubusercontent.com/genai-io/san/main/install.sh | bash
Windows (PowerShell)
irm https://raw.githubusercontent.com/genai-io/san/main/install.ps1 | iex
Запустите с помощью san. При первом запуске выберите модель и добавьте её API-ключ по запросу. Чтобы обновиться позже, выполните san update — или brew upgrade san, если вы устанавливали через Homebrew.
Другие методы
Удаление
# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/genai-io/san/main/install.sh | bash -s uninstall
# Windows (PowerShell)
& ([scriptblock]::Create((irm https://raw.githubusercontent.com/genai-io/san/main/install.ps1))) uninstall
Установка через Go (требуется Go 1.25.8+)
go install github.com/genai-io/san/cmd/san@latest
Сборка из исходников
git clone https://github.com/genai-io/san.git
cd san
go build -o san ./cmd/san
mkdir -p ~/.local/bin && mv san ~/.local/bin/
san # interactive
san "explain this function" # one-shot
san -p "do something" # print mode (no TUI), pipe-friendly
san --continue # resume the latest session
san --resume # pick a past session to resume
Подкоманды: inspector · agent · plugin · mcp — выполните san <команда> --help для каждой.
| Что | Как |
|---|---|
| Модель · бюджет мышления | /models · Ctrl+T |
| Режим разрешений | Shift+Tab (запрос · автопринятие · автопилот) |
| Долгосрочная работа · обучение | /autopilot · /goal · /evolve |
| Все команды с косой чертой | /help |
| Сочетания клавиш | Enter отправить · Alt+Enter новая строка · Esc остановить · Ctrl+O развернуть инструмент · Ctrl+C отмена · Ctrl+D выход |
docs/guides/getting-started.md
Учётные данные
| Сервис | Переменная |
|---|---|
| Anthropic (Claude) | ANTHROPIC_API_KEY или Vertex AI |
| OpenAI (GPT, o-series, Codex) | OPENAI_API_KEY или подписка на ChatGPT (вход через /models) |
| GitHub Copilot (все модели Copilot) | подписка на Copilot (вход через /models) |
| Google (Gemini) | GOOGLE_API_KEY |
| DeepSeek (DeepSeek V4) | DEEPSEEK_API_KEY |
| Moonshot (Kimi) | MOONSHOT_API_KEY |
| Alibaba (Qwen) | DASHSCOPE_API_KEY |
| MiniMax | MINIMAX_API_KEY |
| Z.ai (GLM / GLM Coding Plan) | BIGMODEL_API_KEY |
| SenseNova | SENSENOVA_API_KEY |
| Mimo | MIMO_API_KEY |
| Volcengine (Ark) | VOLCENGINE_API_KEY |
| Ollama (локально) | OLLAMA_BASE_URL (по умолчанию http://localhost:11434/v1) |
| Agnes-AI | AGNESAI_API_KEY |
| Exa поиск | нет (по умолчанию) |
| Tavily поиск | TAVILY_API_KEY |
| Brave поиск | BRAVE_API_KEY |
| Serper поиск | SERPER_API_KEY |
Конфигурационные файлы и структура
Настройки загружаются из ~/.san/ и <проект>/.san/, при этом настройки проекта переопределяют пользовательские. Инструкции для проекта читаются из .san/SAN.md, SAN.md, .claude/CLAUDE.md или CLAUDE.md в указанном порядке.
Пользовательский уровень (~/.san/):
providers.json # Provider connections and current model
settings.json # Permissions, hooks, env, active persona
skills.json # Skill states
personas/ # Persona bundles: system prompt parts, skills, settings
skills/ # Custom skill definitions
agents/ # Agent definitions
commands/ # Custom slash commands
plugins/ # Installed plugins
projects/ # Session transcripts + indexes
Уровень проекта (.san/):
settings.json # Permissions, hooks, disabled tools
mcp.json # MCP server definitions (team shared)
mcp.local.json # MCP server definitions (personal, git-ignored)
personas/ # Project-scoped persona bundles (override user-level)
agents/*.md # Subagent definitions
skills/*/SKILL.md # Skills
commands/*.md # Slash commands
plugins/ # Project-level plugins
plugins-local/ # Local plugins (git-ignored)
Сравнение с Claude Code v2.1.112 на Apple Silicon, одна и та же модель (claude-sonnet-4-6):
| Метрика | San | Claude Code | Преимущество |
|---|---|---|---|
| Размер загрузки | 12 МБ | 63 МБ (+ Node.js 112 МБ) | в 5 раз меньше |
| Занимаемое место на диске | 38 МБ | 175 МБ | в 4,6 раза меньше |
| Время запуска | ~0,01 с | ~0,20 с | в 20 раз быстрее |
| Память при запуске | ~32 МБ | ~189 МБ | в 5,8 раза меньше |
| Простая задача | ~2,4 с / 39 МБ | ~10,4 с / 286 МБ | в 4,3 раза быстрее, в 7,3 раза меньше памяти |
| Задача с использованием инструментов | ~3,3 с / 39 МБ | ~26,0 с / 285 МБ | в 7,9 раза быстрее, в 7,2 раза меньше памяти |
| Контекстный оверхед* | ~2,3 тыс. токенов | ~20,9 тыс. токенов | ~в 9 раз эффективнее |
*Контекстный оверхед — это системный промпт + схемы инструментов на первом пустом ходе, измерено отдельно для San v1.22.0 и Claude Code v2.1.220 — см. методику. Все остальные строки из запуска v1.13.2 / v2.1.112.
Сравнимый набор функций — разница заключается в клиентском оверхеде, а не в возможностях. docs/operations/benchmark.md
docs/packages/ — начните с Указателя пакетовДва способа присоединиться — WeChat для китайского сообщества, Slack для всех остальных:
![]() Подпишитесь на официальный аккаунт «极客外传» · Отправьте san или 三 для вступления в группу
|
![]() Отсканируйте или присоединитесь к нашему Slack |
Принимаем вклад! Ознакомьтесь с CONTRIBUTING.md для получения рекомендаций.
Лицензия Apache 2.0 — подробности в LICENSE.