917ef337b2
- CLAUDE.md (brain repo meta) - README.md (root quick start) - CHANGELOG.md (brain-v1.0 release notes) - manifest.json (sha256 + min-python + required tools) - docs/architecture.md (copy of Liderra spec) - docs/how-to-use-brain.md - docs/how-to-experiment.md - docs/secrets-and-tokens.md - docs/consumer-projects.md - user-level-files/README.md - project-files/README.md Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1.9 KiB
1.9 KiB
Secrets and Tokens
Список секретов
| Секрет | Где используется | Откуда взять |
|---|---|---|
MAGIC_API_KEY |
~/.claude.json:mcpServers.magic.args |
21st.dev → settings → API keys |
GITHUB_TOKEN |
.mcp.json:mcpServers.github.headers |
GitHub → settings → Personal Access Tokens (fine-grained, repo+read:org) |
Где НЕ хранить
- В brain repo (даже private)
- В commit history
- В CLAUDE.md / docs / README
- В скриншотах сессий
Где хранить
- В KeePass / Bitwarden / 1Password
- Как env-vars в shell profile (для
GITHUB_TOKEN) - Inline в
~/.claude.jsonлокально (после resolve черезsetup-secrets.sh)
Workflow при первой установке
./scripts/install.sh --target=$HOME/.claude --version=brain-v1.0
# Скрипт промптит:
# > Enter value for <<MAGIC_API_KEY>> (or empty to skip):
# Вводишь значение из KeePass
Workflow в CI
./scripts/install.sh --target=$HOME/.claude --version=brain-v1.0 \
--skip-secrets
# Placeholder'ы остаются; .brain-deferred-secrets.txt создан
Затем — resolve через GH Actions secret + setup-secrets.sh --secret=MAGIC_API_KEY=$MAGIC_API_KEY ....
Ротация при компрометации
- На 21st.dev: revoke + создать новый
- Обновить локально через
setup-secrets.sh --secret=MAGIC_API_KEY=newvalue ~/.claude.json - Никаких изменений в brain repo не нужно — placeholder остаётся
gitleaks scan
В brain repo — pre-commit hook и CI workflow проверяют:
gitleaks detect --source=. --no-git
Если 0 findings — OK. Любой finding — немедленный фикс (mask API_KEY, force-push, ротация key).