Мой стек для AI-агентов: 25 скиллов + 3 MCP-сервера, одной командой, глобально, сразу для Claude Code и Codex. Набор не надёрган по звёздам — отобран аудитом: ~600 скиллов каталога skills.sh прочитаны по содержимому (взято 25), MCP — из аудита awesome-mcp-servers с проверкой живости репозиториев.
| скиллы | 25 — Go, PostgreSQL, процессная дисциплина, Vue |
| эталон | ponytail (анти-оверинжиниринг) + graphify (граф знаний кодовой базы) |
| mcp | postgres · context7 · gopls |
| агенты | Claude Code + Codex из одного каталога ~/.agents/skills |
| ос | macOS · Linux · Windows (Git Bash / WSL) — CI гоняет все три |
| патчи | 2 дефекта апстрима чинятся автоматически |
git clone https://github.com/ex3lite/agent-setup.git
cd agent-setup
./install.shС секретами и настройками (все опциональны):
CONTEXT7_API_KEY='ctx7sk-...' \
DATABASE_URI='postgresql://user:pass@127.0.0.1:5432/db?sslmode=disable' \
./install.shТолько скиллы, без MCP: ./install.sh --skills-only. Скрипт идемпотентен — повторный запуск безопасен; чего нет на машине (go, uvx, claude CLI) — пропустит с предупреждением, а не упадёт.
Windows: запускать в Git Bash (идёт с Git for Windows) или WSL.
| требование | зачем | обязательно |
|---|---|---|
Node.js 18+ (npx) |
skills CLI, context7 | да |
claude CLI |
регистрация MCP в Claude Code | для MCP |
uv (uvx) |
postgres-mcp, graphify | для postgres-mcp и graphify |
| Go 1.25+ | сборка mcp-gopls | для mcp-gopls |
Ставятся глобально в ~/.agents/skills: Codex читает каталог напрямую, Claude Code — через симлинки в ~/.claude/skills.
go — samber/cc-skills-golang · 11
| скилл | что даёт |
|---|---|
| golang-error-handling | %w внутри / %v на границе, запрет log-and-return |
| golang-testing | стандартный testing: build-теги, goleak, synctest против флака |
| golang-concurrency | выбор channel/mutex/atomic, errgroup, чек-лист перед горутиной |
| golang-database | pgx без ORM: rows.Close, ErrNoRows, FOR UPDATE, пул |
| golang-safety | типизированный nil, алиасинг append, defer в цикле, усечение int |
| golang-security | os.Root против traversal, crypto/subtle, GCM |
| golang-observability | histogram vs summary, запрет unbounded-лейблов Prometheus |
| golang-swagger | аннотации swaggo/swag, таблица поломок генерации |
| golang-code-style | то, что линтер не ловит: ≤4 параметра, ранний return |
| golang-lint | конфиг golangci-lint на 48 линтеров, дисциплина nolint |
| golang-continuous-integration | готовые GitHub Actions: -race, govulncheck, Trivy |
Осознанно не взяты из того же репо: ~20 скиллов-реклам библиотек автора (lo/mo/do/oops), DI-контейнеры, cobra/viper/testify.
| скилл | источник | что даёт |
|---|---|---|
| supabase-postgres-best-practices | supabase/agent-skills | 31 файл ваниль-Postgres правил: индексы, дедлоки, вакуум, пулинг |
| postgresql-table-design | wshobson/agents | запретный список типов (timestamp/varchar(n)/money/serial), NUMERIC для денег |
| скилл | источник | что даёт |
|---|---|---|
| systematic-debugging | obra/superpowers | 4 фазы, запрет чинить до корня, «3 неудачных фикса = проблема архитектуры» |
| receiving-code-review | obra/superpowers | проверять замечания ревью против кода до реализации |
| verification-before-completion | obra/superpowers | «нет свежего вывода команды — нет права заявлять „готово“» |
| writing-plans | obra/superpowers | измеримая планка качества плана, чёрный список плейсхолдеров |
| writing-skills | obra/superpowers | авторинг скиллов с baseline-тестом поведения агента |
| subagent-driven-development | obra/superpowers | ledger-файл, свежий сабагент на задачу, двухэтапное ревью |
| dispatching-parallel-agents | obra/superpowers | правила параллельного диспатча независимых задач |
| tdd | mattpocock/skills | TDD через seams; совместим с YAGNI-подходом к объёму тестов |
| planning-and-task-breakdown | addyosmani/agent-skills | декомпозиция: граф зависимостей → вертикальные срезы → чекпоинты |
| api-and-interface-design | addyosmani/agent-skills | закон Хайрама, one-version rule, только аддитивные изменения |
| скилл | источник | что даёт |
|---|---|---|
| security-and-hardening | addyosmani/agent-skills | STRIDE по границам доверия + OWASP LLM Top 10 |
| vue-best-practices | antfu/skills | единственный настоящий Vue-воркфлоу: когда дробить компонент, когда composable |
Скрипт правит два дефекта в установленных копиях: writing-plans ссылается на superpowers:executing-plans, который не ставится (и на префикс superpowers:, не существующий при standalone-установке), а planning-and-task-breakdown содержит битую относительную ссылку See Also.
⚠️ npx skills updateперезапишет патчи и вообще молча меняет поведение скиллов — обновляйтесь точечно, просматривайте диффы, после обновления перезапустите./install.sh --skills-only.
Регистрируются в Claude Code (claude mcp add, user scope) и Codex (~/.codex/config.toml). Для Codex скрипт также включает [features] multi_agent = true — spawn_agent/wait_agent, на которые опираются subagent-скиллы.
| сервер | что даёт | условие |
|---|---|---|
| postgres-mcp | health-check БД, explain, схемы, подбор индексов | env DATABASE_URI |
| context7 | свежая документация библиотек в контекст агента | ключ опционален |
| mcp-gopls | навигация по Go через gopls: definition/references/diagnostics/rename | установленный Go |
- postgres-mcp: обязательны
--python 3.12(на 3.14 не собирается pglast) и--with 'mcp<2'(в MCP SDK 2.x убранmcp.server.fastmcp). Режимrestricted— read-only; для DDL смените наunrestricted. - mcp-gopls:
GOTOOLCHAIN=autoобязателен — сервер форситlocalдля дочернего gopls, и если go в PATH процесса старше требуемого в go.mod, все инструменты падают до анализа. Workspace по умолчанию не фиксируется — сервер берёт cwd сессии и следует за открытым проектом;GOPLS_WORKSPACE=...прибивает его к одному корню. - MCP спавнятся при старте сессии — после любого изменения конфига перезапустите сессию/задачу, живая не перечитает.
- context7: доки community-contributed — источник-подсказка, не истина.
- DSN и API-ключ попадают в локальные конфиги (
~/.claude.json,~/.codex/config.toml) открытым текстом — держите их вне git.
claude mcp list # все три сервера должны быть ✔ Connected
npx skills ls -g # 25 скиллов, у каждого агенты Codex + Claude CodeПерезапустите Codex и Claude Desktop: MCP-серверы спавнятся при старте сессии. Скиллы в Claude Code подхватываются на лету, Codex читает их при старте.
На каждый пуш: shellcheck + матрица ubuntu / macos / windows, которая реально устанавливает все 25 скиллов в чистый HOME и проверяет количество, оба патча и симлинки.
Два мета-инструмента, задающие планку всему остальному набору — скрипт ставит их автоматически:
| что даёт | как ставится | агенты | |
|---|---|---|---|
| ponytail | ленивый сеньор: YAGNI, stdlib перед зависимостью, кратчайший рабочий дифф; режимы lite/full/ultra + /ponytail-review, /ponytail-audit, /ponytail-debt |
плагин из маркетплейса: claude plugin marketplace add DietrichGebert/ponytail && claude plugin install ponytail@ponytail |
Claude Code |
| graphify | любой вход (код, доки, статьи) → граф знаний; /graphify строит, graphify query/path/explain отвечают по графу вместо grep |
uv tool install graphifyy && graphify install --platform claude|codex |
Claude Code + Codex |
С остальным набором они не конфликтуют, а связываются: tdd выбран именно ponytail-совместимым, а обновлять скилл graphify при апдейте пакета — graphify install заново.