Aligns claude-skills with secrets-out-of-common etap-1 migration: the canonical home for plain-text local-dev secrets is now ~/.config/projects-secrets/, outside any git tree. setup-interns [v0.3.0 → v0.4.0, MINOR — write target changed]: - Phase 1 drops gitignore-sanity check (no longer needed) - Phase 2 plan block drops Gitignore line - Phase 3 backs up ~/.config/projects-secrets/interns.env if present - Phase 5 writes ~/.config/projects-secrets/interns.env (mkdir -p ahead) - Phase 6 cwd documentation: secrets path no longer relative to cwd; uses INTERNS_SECRETS_PATH env var (or ~/.config default) — independent - Common-mistakes drops "missing gitignore rule" entry using-interns [v0.2.0 → v0.2.1, PATCH — wording]: - Always-ask paths section reflects new canonical secrets home - Prerequisites text updates setup-interns write target interns-design.md (wiki concept): path refs updated for ASCII layer diagram, Layer 1 example block, Phase 5 description, comparison table, and final cross-cutting note. **/projects-secrets/** added to always-ask documentation pattern. dist/: setup-interns.skill + using-interns.skill rebuilt. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
setup-interns
One-time skill that brings up the local interns MCP server on a new (or freshly broken) machine. Detects the runtime source at <project-root>/.common/lib/interns-mcp/, runs pip install -e, writes ~/.config/projects-secrets/interns.env with the endpoint API keys, and registers mcpServers.interns in ~/.claude.json.
The runtime policy for using the resulting tools lives in using-interns — setup-interns is the only place that touches user-level config or the project's secrets directory.
Full design (Layer 1 / 2 / 3, MVP catalog, always-ask paths, routing hints):
.wiki/concepts/interns-design.md (in this repo).
When it triggers
- User says: "install interns", "set up interns", "configure interns", "настрой интернов", "установи интернов", "interns не работает", "interns isn't working".
using-internsdetects missingmcp__interns__*tools and delegates here via its Prerequisites section.- A new machine in the multi-machine fleet — install once per machine that wants delegation.
What it touches
| Path | Role |
|---|---|
<project-root>/.common/lib/interns-mcp/ |
server source (must already exist; not created here) |
<project-root>/.common/config/interns/config.yaml |
catalog of interns + endpoints (read-only here) |
~/.config/projects-secrets/interns.env |
endpoint API keys (outside any git tree) |
~/.claude.json (mcpServers.interns) |
MCP registration |
pip site-packages |
editable install of interns_mcp |
Hard rules
- Never auto-mutate. Phase 1 (discovery) and Phase 2 (plan) always pause for explicit confirmation. A trigger phrase grants permission to inspect, not to run
pip installor write secrets. - Never echo endpoint API keys in chat. Edit / Write tool calls inevitably contain them (that's how they land in
.env); chat output must not. - Never run on absent source. If
.common/lib/interns-mcp/pyproject.tomlis missing, stop and tell the user — initializing a fresh runtime is a separate task. - Always
chmod 600.envon Linux / macOS. Token leak otherwise. - Pin the absolute Python interpreter path in
mcpServers.interns.command. A barepythonresolves to whatever shadows it onPATHat session start.
Procedure (high-level)
- Phase 0 — environment sanity (
python≥ 3.11,pip, network to endpoints). - Phase 1 — discovery (source / module / config / keys / MCP registration).
- Phase 2 — plan + confirm. Wait for explicit "ok" / "go" / "поехали".
- Phase 3 — backup (
~/.claude.json, existing~/.config/projects-secrets/interns.env). - Phase 4 —
pip install -e .common/lib/interns-mcp/. - Phase 5 — write
~/.config/projects-secrets/interns.env(per-key, missing-only). - Phase 6 — register
mcpServers.internsin~/.claude.jsonwith absolute interpreter path +cwd. - Phase 7 — best-effort smoke test (in-session caveat: real verification is after restart).
- Phase 8 — restart guidance + final report.
Full procedure with shell snippets and templates lives in SKILL.md.
Rollback
- Stop. Don't fix forward.
cp <file>.bak-<ts> <file>for~/.claude.jsonand~/.config/projects-secrets/interns.env.- Optional:
pip uninstall interns-mcpto undo the editable install. - Restart Claude Code.
- Confirm
mcp__interns__*tools are gone (or back to the prior version).
Install
From the repo root:
bash scripts/install.sh setup-interns
Works on Windows under git-bash, Linux, macOS.
See also
using-interns— runtime policy + per-session permission grant for themcp__interns__*tools.setup-projects-meta— companion pattern, similar 8-phase shape.setup-context7— sister setup-skill for the context7 MCP plugin.project-discipline— Rule 4 (per-session push grant) is the prior art for the grant mechanism inusing-interns..wiki/concepts/interns-design.md— full architecture spec.