github davila7/claude-code-templates v1.29.6
v1.29.6 — Claude Mods: --mod installs Anthropic-layout plugins, 24 mods

52 minutes ago

Function Hooks become Claude Mods. Anthropic renamed the feature, shipped it
behind an early-access flag in Claude Code >= 2.1.259, and published the source of
its three built-in mods plus the full TypeScript declarations
(anthropics/claude-code#91870,
mods/). This release
aligns the CLI, the catalog and the site with what actually ships.

Install

npx claude-code-templates@latest --mod security/secret-redactor

--mod downloads the whole plugin directory (like a skill) and writes it verbatim to
.claude/skills/<name>/, which Claude Code auto-loads as <name>@skills-dir:

.claude/skills/secret-redactor/
├── .claude-plugin/plugin.json   # name, description, userConfig, author, license
├── hooks/
│   ├── hooks.json               # { "modules": ["./secret-redactor.ts"] }
│   └── secret-redactor.ts
└── README.md

Then run Claude Code with the flag:

CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1 claude
# or, for one session with hot reload:
claude --plugin-dir .claude/skills/secret-redactor

--function-hook still works as a hidden alias of --mod.

What changed

CLI

  • New --mod <category/name> flag (comma-separated values supported). Recursive
    download of the plugin directory via the GitHub API, verbatim write, and validation
    of plugin.json, hooks/hooks.json and that every module listed in modules came
    down.
  • Post-install output explains the flag, claude plugin validate / claude plugin test, and how to set options via pluginConfigs[name].options in user settings.
  • Download tracking type is now mod.

Components: 24 mods, all typechecked against Anthropic's real API

  • Every mod is now a complete plugin in Anthropic's layout
    (cli-tool/components/mods/{category}/{name}/).
  • The 10 existing modules were rewritten against the real $ API and runtime-tested
    on Claude Code 2.1.272: $.fs.read, $.http.fetch{status, ok, text},
    $.ui.ask, { deny } / { result } + context, Box/Text UI primitives,
    { refuse } on plugin.register.
  • Options must be declared in plugin.json userConfig and are read from user or
    managed settings (never project settings). Declared and documented for every mod.
  • cli-tool/components/mods/types/claude-code.d.ts (as /plugin-types writes it)
    plus a tsconfig.json; CI runs tsc on every mod (mods-typecheck.yml).

14 new game mods (games/)

  • cc-arcade vendored as-is (MIT, Seza Akgün), with a fix for $.clock.now()
    returning a Promise in the current API.
  • One mod per cc-arcade game with its own slash command: /tetris, /snake,
    /2048, /minesweeper, /flappy, /pong, /invaders, /typing, /doom, /pet.
  • Three originals written for aitmpl: pacman (scatter/chase ghost AI, power
    pellets, tunnel), tool-defense (a tower defense where every tool call Claude
    makes spawns an enemy shaped by the tool) and diff-invaders (every Edit/Write's
    added lines become the alien formation, drawn with the code's own characters).

Site

  • /function-hooks/mods (Beta). Old URLs
    redirect. A mod's page shows the README and the full file tree; "Send to repo"
    writes the entire plugin.

The catalog

Mod What it does
security/block-destructive-commands Denies rm -rf /, force push, hard reset, destructive SQL
security/secret-redactor Redacts keys, tokens, JWTs and connection strings in tool output
security/protected-paths-guard Denies edits to .env, lockfiles, CI workflows, private keys
security/large-edit-confirmation Asks before editing a file over N lines (fail-closed)
productivity/npm-to-pnpm-rewriter Rewrites npm/npx to pnpm, yarn or bun
productivity/webfetch-cache Serves repeated WebFetch calls from a session cache
observability/universal-audit-log JSON line per event, including other plugins' $ calls and denials
ui/tool-timing-badge Times every tool call, draws a badge on the ToolUse row
integrations/websearch-to-exa Replaces built-in WebSearch with Exa
enterprise/admin-capability-lockdown Withholds http/process from $, allowlists plugins
games/* (14) Arcade games and two tool-reactive games rendered above the prompt

Early access — read this first

Mods are behind CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1 and the $ API may change
between Claude Code releases. When Anthropic bumps it, we regenerate the d.ts with
/plugin-types and re-run the typecheck. Options only take effect from user/managed
settings, not from .claude/settings.json in the project.

Also in this release

  • New command: regression-triage (#904)
  • New skill: eval-genius (#880); synced new skills from anthropics/skills (#898)
  • Enhanced agents: competitive-analyst, web3-integration-specialist,
    smart-contract-auditor, smart-contract-specialist, content-marketer,
    mlops-engineer, business-analyst, hackathon-ai-strategist
  • discernment-nudge: narrowed the code-execution exemption (#900)
  • CI: contributor PRs that touch generated catalog files are now blocked with revert
    instructions (#899)
  • Dashboard: Featured section hidden on the homepage (#902), Beta label on Mods (#912)

Full Changelog: v1.29.5...v1.29.6

Don't miss a new claude-code-templates release

NewReleases is sending notifications on new releases.