sefaertunc/anthropic-watch
Monitors 37 Anthropic sources daily and publishes structured RSS/JSON feeds: upstream intelligence for Claude Code
ARCHETYPE
Fort Knox
Deny lists, pre-tool hooks, sandboxing. Nothing touches prod without a signature.
GUARDRAILS
4/5
Blocks destructive commands · Protects secrets · No YOLO mode · Sandbox or ask-first rules · details
Copy this rig
# review before running: this installs third-party code $ claude mcp add --transport http socket-mcp https://mcp.socket.dev/ $ npx degit sefaertunc/anthropic-watch/.claude ./rig-anthropic-watch # inspect, then merge into .claude/
MCP servers are added to Claude Code at local scope; env vars are shown as YOUR_… placeholders — we never store values. Files are fetched with degit into a separate folder so you can review before merging.
$ claude mcp add --transport http socket-mcp https://mcp.socket.dev/ $ npx degit sefaertunc/anthropic-watch/.claude/skills/agent-routing .claude/skills/agent-routing $ npx degit sefaertunc/anthropic-watch/.claude/skills/backend-conventions .claude/skills/backend-conventions $ npx degit sefaertunc/anthropic-watch/.claude/skills/claude-md-maintenance .claude/skills/claude-md-maintenance $ npx degit sefaertunc/anthropic-watch/.claude/skills/coding-principles .claude/skills/coding-principles $ npx degit sefaertunc/anthropic-watch/.claude/skills/context-management .claude/skills/context-management $ npx degit sefaertunc/anthropic-watch/.claude/skills/coordinator-mode .claude/skills/coordinator-mode $ npx degit sefaertunc/anthropic-watch/.claude/skills/frontend-design-system .claude/skills/frontend-design-system $ npx degit sefaertunc/anthropic-watch/.claude/skills/git-conventions .claude/skills/git-conventions $ npx degit sefaertunc/anthropic-watch/.claude/skills/memory-architecture .claude/skills/memory-architecture $ npx degit sefaertunc/anthropic-watch/.claude/skills/planning-with-files .claude/skills/planning-with-files $ npx degit sefaertunc/anthropic-watch/.claude/skills/project-patterns .claude/skills/project-patterns $ npx degit sefaertunc/anthropic-watch/.claude/skills/prompt-engineering .claude/skills/prompt-engineering $ npx degit sefaertunc/anthropic-watch/.claude/skills/review-and-handoff .claude/skills/review-and-handoff $ npx degit sefaertunc/anthropic-watch/.claude/skills/security-checklist .claude/skills/security-checklist $ npx degit sefaertunc/anthropic-watch/.claude/skills/subagent-usage .claude/skills/subagent-usage $ npx degit sefaertunc/anthropic-watch/.claude/skills/testing .claude/skills/testing $ npx degit sefaertunc/anthropic-watch/.claude/skills/verification .claude/skills/verification
$ curl -fsSL --create-dirs -o .claude/agents/bug-fixer.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/bug-fixer.md $ curl -fsSL --create-dirs -o .claude/agents/build-fixer.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/build-fixer.md $ curl -fsSL --create-dirs -o .claude/agents/build-validator.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/build-validator.md $ curl -fsSL --create-dirs -o .claude/agents/changelog-generator.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/changelog-generator.md $ curl -fsSL --create-dirs -o .claude/agents/ci-fixer.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/ci-fixer.md $ curl -fsSL --create-dirs -o .claude/agents/code-simplifier.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/code-simplifier.md $ curl -fsSL --create-dirs -o .claude/agents/dependency-manager.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/dependency-manager.md $ curl -fsSL --create-dirs -o .claude/agents/deploy-validator.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/deploy-validator.md $ curl -fsSL --create-dirs -o .claude/agents/doc-writer.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/doc-writer.md $ curl -fsSL --create-dirs -o .claude/agents/docker-helper.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/docker-helper.md $ curl -fsSL --create-dirs -o .claude/agents/e2e-runner.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/e2e-runner.md $ curl -fsSL --create-dirs -o .claude/agents/performance-auditor.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/performance-auditor.md $ curl -fsSL --create-dirs -o .claude/agents/plan-reviewer.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/plan-reviewer.md $ curl -fsSL --create-dirs -o .claude/agents/refactorer.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/refactorer.md $ curl -fsSL --create-dirs -o .claude/agents/security-reviewer.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/security-reviewer.md $ curl -fsSL --create-dirs -o .claude/agents/test-writer.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/test-writer.md $ curl -fsSL --create-dirs -o .claude/agents/upstream-watcher.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/upstream-watcher.md $ curl -fsSL --create-dirs -o .claude/agents/verify-app.md https://raw.githubusercontent.com/sefaertunc/anthropic-watch/main/.claude/agents/verify-app.md
Merge into .claude/settings.json (project) or ~/.claude/settings.json (user). Hook commands reference scripts in the source repo — copy those too.
{
"permissions": {
"deny": [
"// -- Secret files (Read/Edit — Claude's own tools) --",
"Read(./.env)",
"Read(./.env.*)",
"Read(./secrets/**)",
"Edit(./.env)",
"Edit(./.env.*)",
"Edit(./secrets/**)",
"Read(./*.pem)",
"Read(./*.key)",
"Read(./id_rsa)",
"Read(./id_ed25519)",
"// -- SSH and cloud creds (home-relative) --",
"Read(~/.ssh/**)",
"Read(~/.aws/credentials)",
"Read(~/.config/gh/hosts.yml)",
"// -- Bash file-view commands targeting .env --",
"Bash(cat *.env*)",
"Bash(head *.env*)",
"Bash(tail *.env*)",
"Bash(less *.env*)",
"Bash(more *.env*)",
"Bash(grep *.env*)",
"// -- Catastrophic rm patterns (literal-match defense-in-depth) --",
"Bash(rm -rf /)",
"Bash(rm -rf /*)",
"Bash(rm -fr /)",
"Bash(rm -fr /*)",
"Bash(rm -rf ~)",
"Bash(rm -rf ~/*)",
"Bash(rm -rf $HOME)",
"Bash(rm -rf $HOME/*)"
]
},
"sandbox": {
"enabled": true
}
} MCP servers (1)
| server | source | est. tokens |
|---|---|---|
| mcp.socket.dev · "socket-mcp" | remote · remote | 2.5k |
Skills (17)
agent-routingbackend-conventionsclaude-md-maintenancecoding-principlescontext-managementcoordinator-modefrontend-design-systemgit-conventionsmemory-architectureplanning-with-filesproject-patternsprompt-engineeringreview-and-handoffsecurity-checklistsubagent-usagetestingverification
Subagents (18)
| bug-fixer model: sonnet | Diagnoses and fixes bugs |
| build-fixer model: sonnet | Diagnoses and fixes build failures |
| build-validator model: haiku | Validates that the project builds and all tests pass |
| changelog-generator model: haiku | Generates changelog from commits |
| ci-fixer model: sonnet | Diagnoses and fixes CI/CD failures |
| code-simplifier model: sonnet | Reviews changed code and simplifies overly complex implementations |
| dependency-manager model: haiku | Reviews dependency health and updates |
| deploy-validator model: sonnet | Validates deployment readiness |
| doc-writer model: sonnet | Writes and updates documentation |
| docker-helper model: sonnet | Reviews Docker configs for best practices |
| e2e-runner model: sonnet | Writes and runs end-to-end tests |
| performance-auditor model: sonnet | Analyzes code for performance issues |
| plan-reviewer model: opus | Reviews implementation plans for specificity, gaps, and executability |
| refactorer model: sonnet | Refactors code to improve maintainability |
| security-reviewer model: opus | Reviews code for security vulnerabilities |
| test-writer model: sonnet | Writes comprehensive, meaningful tests for recently changed code |
| upstream-watcher model: sonnet | Cross-references new Anthropic upstream changes against the current project's scaffolded infrastructure and produces an impact report |
| verify-app model: sonnet | Verifies the running application end-to-end — tests actual behavior, not just code reading |
Hooks (14)
| event | matcher | runs |
|---|---|---|
| PostToolUse | Write|Edit | p=${WORCLAUDE_HOOK_PROFILE:-standard}; case "$p" in minimal) exit 0;; esac; file=$(jq -r '.tool_input.file_path // empty' 2>/dev/null); [ -n "$file" ] && [ -f "$file" ] && npx --silent prettier --write "$file" 2>/dev/null || true |
| PostToolUse | Write|Edit | p=${WORCLAUDE_HOOK_PROFILE:-standard}; case "$p" in strict) ;; *) exit 0;; esac; npx tsc --noEmit 2>/dev/null || echo '[Hook] TypeScript errors detected' >&2 |
| PostCompact | * | cat CLAUDE.md && cat docs/spec/PROGRESS.md 2>/dev/null || true |
| PreCompact | * | test -f .claude/hooks/pre-compact-save.cjs && node .claude/hooks/pre-compact-save.cjs || true |
| SessionStart | * | echo '=== CLAUDE.md ==='; cat CLAUDE.md 2>/dev/null; echo; echo '=== PROGRESS ==='; cat docs/spec/PROGRESS.md 2>/dev/null; echo; echo '=== LAST SESSION ==='; f=$(ls -t .claude/sessions/*.md 2>/dev/null | head -1); if [ -n "$f" ]; then cat " |
| SessionEnd | * | p=${WORCLAUDE_HOOK_PROFILE:-standard}; case "$p" in minimal) exit 0;; esac; notify-send 'Claude Code' 'Session needs attention' 2>/dev/null || true |
| Stop | * | p=${WORCLAUDE_HOOK_PROFILE:-standard}; case "$p" in minimal) exit 0;; esac; test -f .claude/hooks/learn-capture.cjs && node .claude/hooks/learn-capture.cjs || true |
| UserPromptSubmit | * | p=${WORCLAUDE_HOOK_PROFILE:-standard}; case "$p" in minimal) exit 0;; esac; test -f .claude/hooks/correction-detect.cjs && node .claude/hooks/correction-detect.cjs || true |
| UserPromptSubmit | * | p=${WORCLAUDE_HOOK_PROFILE:-standard}; case "$p" in minimal) exit 0;; esac; test -f .claude/hooks/skill-hint.cjs && node .claude/hooks/skill-hint.cjs || true |
| UserPromptSubmit | * | p=${WORCLAUDE_HOOK_PROFILE:-standard}; case "$p" in minimal) exit 0;; esac; test -f .claude/hooks/obs-command-invocations.cjs && node .claude/hooks/obs-command-invocations.cjs || true |
| Notification | * | p=${WORCLAUDE_HOOK_PROFILE:-standard}; case "$p" in minimal) exit 0;; esac; notify-send 'Claude Code' 'Session needs attention' 2>/dev/null || true |
| InstructionsLoaded | * | p=${WORCLAUDE_HOOK_PROFILE:-standard}; case "$p" in minimal) exit 0;; esac; test -f .claude/hooks/obs-skill-loads.cjs && node .claude/hooks/obs-skill-loads.cjs || true |
| SubagentStart | * | p=${WORCLAUDE_HOOK_PROFILE:-standard}; case "$p" in minimal) exit 0;; esac; test -f .claude/hooks/obs-agent-events.cjs && node .claude/hooks/obs-agent-events.cjs || true |
| SubagentStop | * | p=${WORCLAUDE_HOOK_PROFILE:-standard}; case "$p" in minimal) exit 0;; esac; test -f .claude/hooks/obs-agent-events.cjs && node .claude/hooks/obs-agent-events.cjs || true |
Slash commands (19)
/build-fix/commit-push-pr/compact-safe/conflict-resolver/end/learn/observability/refactor-clean/review-changes/review-plan/setup/start/status/sync/techdebt/test-coverage/update-claude-md/upstream-check/verify
Permissions
deny (31)
// -- Secret files (Read/Edit — Claude's own tools) --
Read(./.env)
Read(./.env.*)
Read(./secrets/**)
Edit(./.env)
Edit(./.env.*)
Edit(./secrets/**)
Read(./*.pem)
Read(./*.key)
Read(./id_rsa)
Read(./id_ed25519)
// -- SSH and cloud creds (home-relative) --
Read(~/.ssh/**)
Read(~/.aws/credentials)
Read(~/.config/gh/hosts.yml)
// -- Bash file-view commands targeting .env --
Bash(cat *.env*)
Bash(head *.env*)
Bash(tail *.env*)
Bash(less *.env*)
Bash(more *.env*)
Bash(grep *.env*)
// -- Catastrophic rm patterns (literal-match defense-in-depth) --
Bash(rm -rf /)
Bash(rm -rf /*)
Bash(rm -fr /)
Bash(rm -fr /*)
Bash(rm -rf ~)
Bash(rm -rf ~/*)
Bash(rm -rf $HOME)
Bash(rm -rf $HOME/*)
ask (0)
—
allow (104)
// -- Read-only / Exploration --
Bash(find:*)
Bash(grep:*)
Bash(cat:*)
Bash(ls:*)
Bash(head:*)
Bash(tail:*)
Bash(wc:*)
Bash(which:*)
Bash(tree:*)
Bash(diff:*)
Bash(sort:*)
Bash(uniq:*)
Bash(awk:*)
Bash(sed:*)
Bash(cut:*)
Bash(jq:*)
Bash(xargs:*)
Bash(ps:*)
Bash(du:*)
Bash(df:*)
Bash(env:*)
Bash(printenv:*)
// -- Git --
Bash(git:*)
Bash(gh:*)
// -- Common Dev Tools --
Bash(echo:*)
Bash(mkdir:*)
Bash(touch:*)
Bash(cp:*)
Bash(mv:*)
Bash(curl:*)
Bash(wget:*)
Bash(tar:*)
Bash(zip:*)
Bash(unzip:*)
Bash(rm:*)
Bash(make:*)
Bash(npm test:*)
Bash(npm run:*)
Bash(cd:*)
// -- Read Permissions --
Read(src/**)
Read(tests/**)
Read(templates/**)
Read(docs/**)
Read(.claude/**)
Read(*.md)
Read(*.json)
Read(*.js)
// -- Edit Permissions --
Edit(.claude/**)
Edit(docs/**)
Edit(src/**)
Edit(tests/**)
Edit(test/**)
Edit(README*)
Edit(*.md)
Edit(package.json)
Similar rigs
0xquinto/bcherny-claude
Boris Cherny's Claude Code configuration - commands, agents, and settings
Orchestrator 1.1k tok ·
georgegkoumas/My-Claude-Code-Setup
My version of the https://github.com/0xquinto/bcherny-claude/tree/main
Orchestrator 942 tok ·
heymegabyte/agent-skills
Agent Skills — agent-neutral autonomous product-building OS for 32+ AI coding tools. 23 skill categories · 28 agents · 149 reference docs · 37 platform variants. One-line prompts → deployed products on Cloudflare Workers.
YOLO Cowboy 8.8k tok ·
RohiRIK/claude-code-config
Personal Claude Code global config — hooks, agents, skills, commands
YOLO Cowboy 2.8k tok ·