by alexeykrol
Meta-documentation framework for AI-assisted development with Claude Code
# Add to your Claude Code skills
git clone https://github.com/alexeykrol/claude-code-starterGuides for using documentation skills like claude-code-starter.
No comments yet. Be the first to share your thoughts!
Top skills in this category by stars
Claude Code Starter — это готовая управляющая среда для проектов, в которых основной рабочий агент — Claude Code.
Он нужен не для генерации приложения, а для того, чтобы быстро добавить в любой проект:
CLAUDE.md вместо мегадокумента;rules, skills, agents, hooks;.claude/SNAPSHOT.md;Новое в v6: автоматическое определение типа проекта (code / content / hybrid). Контентные проекты — книги, курсы, базы знаний, документы, транскрипты — получают свой набор правил, навыков и агентов (writer, editor, content-reviewer). Установка без флагов: bash init-project.sh сам поймёт, где находится, и поставит подходящий слой.
Обычно при работе с агентом проект быстро расползается:
CLAUDE.md;Claude Code Starter решает эти проблемы:
.claude/;skills;hooks;repo_access, чтобы память агента не утекала туда, где ей не место.После установки в хост-проекте появляется такая база:
.claude/
rules/
skills/
agents/
hooks/
logs/
SNAPSHOT.md
settings.json
scripts/
framework-state-mode.sh
switch-repo-access.sh
CLAUDE.md
manifest.md
.gitignore
Ключевые файлы:
CLAUDE.md — паспорт проекта;manifest.md — project_name и repo_access;.claude/SNAPSHOT.md — текущая память проекта;.claude/rules/ — постоянные operational правила;.claude/skills/ — стандартные workflows;.claude/agents/ — типовые subagent roles;.claude/hooks/ — фоновые guardrails;scripts/switch-repo-access.sh — безопасное переключение между private-solo, private-shared, public.Обязательно:
bashgit.claude/rules/.claude/skills/.claude/agents/.claude/hooks/Рекомендуется:
python3Опционально:
node / npmpytestsqlite3psqlsupabasepython3 нужен не для bootstrap, а для безопасного merge settings.json в migration flow.
Возьми root installer init-project.sh, положи его в корень целевого проекта и запусти:
chmod +x init-project.sh
./init-project.sh
Никаких флагов не нужно. Launcher сам определит:
Сценарий установки:
new — новый проект;existing — существующий без framework;legacy — старый framework;upgrade — частично установленный.Тип проекта (по содержимому файлов и папок):
code — обычный software-проект;content — книги, курсы, KB, документы, транскрипты;hybrid — и код, и контент.Тип контента для контентных проектов:
book — папки chapters/, briefs/, bible/;course — папки modules/, lessons/;knowledge-base — articles/, INDEX.md;documents — docs/;transcripts — Section-*/, *-Lecture-*;mixed — несколько сразу.Если установка затрагивает существующий CLAUDE.md, он мержится аддитивно через scripts/lib/merge_claude_md.py — кастомные секции пользователя сохраняются, фреймворк добавляет только недостающее. При жёстком конфликте установка останавливается и в .claude/CLAUDE.md.merge-proposal.md пишется конкретное предложение разрешения.
cd /path/to/your/project
bash /absolute/path/to/claude-code-starter/init-project.sh
/setup-projectЕсли хочешь, чтобы framework был доступен в любой папке без скачивания каждый раз — поставь его в ~/.claude/:
bash /path/to/claude-code-starter/scripts/install-global.sh
Это аддитивно копирует rules / skills / agents в ~/.claude/, не трогая существующие настройки. Делает backup в ~/.claude/.backup-TIMESTAMP/. После этого:
mkdir my-new-project && cd my-new-project
# Открой Claude Code в этой папке и скажи:
# /setup-project — или просто: «новый проект» / «поставь фреймворк»
Skill /setup-project сам найдёт checkout, определит тип проекта и поставит framework. Никакой ручной загрузки init-project.sh не требуется.
Откат: bash scripts/install-global.sh --rollback.
./init-project.sh --name "My Project"
./init-project.sh --type content --content-type book
./init-project.sh --mode init
./init-project.sh --mode migrate
./init-project.sh --template /path/to/local/framework
./init-project.sh --rollback
./init-project.sh --apply-proposal
./init-project.sh --force
Поддерживаются:
--name — имя проекта для свежего bootstrap;--type code|content|hybrid|auto — override автодетекта типа проекта;--content-type book|course|knowledge-base|documents|transcripts|mixed — override автодетекта типа контента;--mode init — принудительный bootstrap;--mode migrate — принудительная migration/integration;--template — использовать локальный checkout framework вместо download;--rollback — восстановить файлы из последнего .claude/backup-*/ snapshot;--apply-proposal — применить предложение из .claude/CLAUDE.md.merge-proposal.md;--force — перезаписать существующие файлы (для разработчиков фреймворка).CLAUDE.md под конкретный проект.manifest.md.scripts/switch-repo-access.sh public --commit
или
scripts/switch-repo-access.sh private-shared --commit
/start.repo_access задаётся в manifest.md.
Режимы:
private-solo — framework files можно хранить в git;private-shared — framework files должны оставаться локальными;public — framework files должны оставаться локальными.Практический смысл:
Если framework state уже успел попасть в remote history, одного .gitignore недостаточно. Для таких случаев и существует scripts/switch-repo-access.sh.
Публичный вход:
Внутренний payload:
repo_accessДокументация:
Архив:
v4v4switch-repo-access.sh не переписывает git history.migrate.sh зависит от python3, если нужен безопасный merge .claude/settings.json.| Тема | v5 | v6 |
|------|----|----|
| Тип проекта | только code | code / content / hybrid с автодетектом |
| Контентные проекты | нет | книги, курсы, KB, документы, транскрипты |
| CLAUDE.md при миграции | merge только settings.json hooks | полный аддитивный merge секций через Python helper |
| Конфликты | overwrite или skip | детектятся, останавливают установку, записывают конкретное предложение |
| Backup | нет | автоматический .claude/backup-TIMESTAMP/ перед каждым изменением |
| Откат | manual | init-project.sh --rollback |
| Шаблоны контента | нет | templates/chapter.md, lesson.md, transcript.md, article.md, document.md |
Подробности по эволюции версий смотри в CHANGELOG.md.