Christopher R. Bilger
May 22nd, 2026
"Catch wiring drift during service-adds, not six months later."
CLAUDE.md / AGENTS.md in each repo - drift the moment code changesIdentical across every repo - HIPAA, auth, naming
How to test, deploy, run migrations here
API contracts between this repo and the ones that call it
Same MCP server, three indexes - picked at bootstrap time based on which repo you opened.
| Tool | Purpose |
|---|---|
| bootstrap(repo) | Session entry point - tailored payload |
| get_skill() | Fetch full skill content |
| get_cross_repo_impact() | Impact analysis when a service changes |
| get_map() | Service registry + dependency graph |
| get_global_context() | Org-wide standards (HIPAA, auth, naming) |
| Tool | Purpose |
|---|---|
| list_skills() | Search skills by repo/category |
| get_service_overview() | Service README |
| search() | Keyword search across all .md files |
| get_agent() | Load specialized agent personas |
| get_domain() | Cross-cutting domain knowledge (reserved) |
# 1. Authenticate with GitHub Packages
echo "//npm.pkg.github.com/:_authToken=YOUR_PAT" >> ~/.npmrc
echo "@talkiatry:registry=https://npm.pkg.github.com" >> ~/.npmrc
# 2. Register the MCP server (user scope, every session picks it up)
claude mcp add -s user rosetta -- npx -y @talkiatry/rosetta-mcp-server@latest
PAT needs read:packages - generate at GitHub → Settings → Developer settings →
Personal access tokens.
// <repo>/.claude/settings.json -- Ensure that you update <repo> to the actual repository name
{
"hooks": {
"UserPromptSubmit": [{
"matcher": "",
"hooks": [{
"type": "command",
"command": "echo '[rosetta] REMINDER: Call bootstrap(repo: \"<repo>\") before proceeding.'"
}]
}]
}
}
From zero to a bootstrap'd session in ~90 seconds.
get_cross_repo_impact("ehr-service") before touching the API
Agent guesses field names from outdated README → integration breaks at runtime
Agent calls get_skill("cross-service", "ehr-service", "patient-api") →
contract is regenerated from current source on every sync
Sonnet first. Opus on retry. Keep the last good version if both fail.
Context refreshed from source, not memory
Every Claude Code session starts pre-briefed
Contracts surfaced before code lands
Org standards delivered to every agent session
No hard numbers yet - early adopter feedback to come.
domains/ namespace for cross-cutting knowledge (reserved, empty)ignore_discoveries to mute noisy skill suggestions in sync-config.yml