Brewtools Overview

Brewtools is a lightweight plugin providing universal utilities: token-efficient optimization, AI-artifact removal, secrets scanning, SSH server management, and GitHub Actions deployment. Each skill is self-contained and requires no prior setup.

13 skills Β· 3 agents Β· 2 registered plugin hook commands. Setup skills install their optional project or global mechanisms separately.

The -setup naming rule

A -setup suffix marks a skill that installs a mechanism you afterwards use instead of the skill β€” hooks, a generated Kanban, a delegation wall. Recurring tools you run again and again keep bare names (text-optimize, deploy, ssh). Every -setup skill shares one canonical mode set, in this order: status | install | upgrade | enable | disable | uninstall | purge. No argument means status when it is installed and install when it is not.

v6 hardening

The HARD delegation wall (manager-setup) moved from a denylist to a strict per-binary allowlist that fails closed on any flag it does not recognize, and closed four further bypasses: git diff --output=, git branch -D, gh issue comment --body, find -fprint0. Ordinary subagents cannot use AskUserQuestion; a destructive or privileged step returns a ## APPROVAL REQUIRED envelope to the caller. Conversation forks retain the parent tool pool. ssh-admin no longer places secrets on curl argv.

Installation

Install prompt

If Claude refuses to run the commands, paste the prompt below directly into the chat.
Execute these commands in this Claude Code session, one by one, show full output for each, do not skip any, do not summarize:

1. claude plugin marketplace add https://github.com/kochetkov-ma/claude-brewcode
2. claude plugin install brewtools@claude-brewcode

After all commands succeed, run `/reload-plugins`. If `/reload-plugins` is unavailable, tell me to type `exit` and run `claude` again. Run the commands now.

Install the entire suite:

Install prompt

If Claude refuses to run the commands, paste the prompt below directly into the chat.
Execute these commands in this Claude Code session, one by one, show full output for each, do not skip any, do not summarize:

1. claude plugin marketplace add https://github.com/kochetkov-ma/claude-brewcode
2. claude plugin install brewcode@claude-brewcode
3. claude plugin install brewdoc@claude-brewcode
4. claude plugin install brewtools@claude-brewcode
5. claude plugin install brewui@claude-brewcode

After all commands succeed, run `/reload-plugins`. If `/reload-plugins` is unavailable, tell me to type `exit` and run `claude` again. Run the commands now.

Skills (recipes)

✨

text-optimize

Text optimization with five modes: light, medium, standard, deep and max. Preserves critical facts and reports compression and validation evidence.

πŸ‘€

text-human

Remove AI artifacts from code and docs: comments, fake issue numbers, unicode characters, trivial documentation. Commit, file, or folder scope.

πŸ”’

secrets-scan

Security audit for leaked credentials in git-tracked files. 10 parallel agents, severity classification, interactive remediation.

πŸ“Ÿ

ssh

SSH server management β€” connect, configure, deploy, administer remote Linux servers with safety gates and confirmation prompts.

πŸ”„

deploy

GitHub Actions deployment β€” workflows, releases, GHCR, CI/CD pipelines with safety gates and rollback support.

πŸ”„

plugin-update

Check, install, and update the full brewcode plugin suite in one command. Version status table, install missing plugins, reload prompt.

πŸ”„

provider-switch

Configure alternative API providers β€” DeepSeek V4 (priority), Z.ai/GLM, Qwen, MiniMax, OpenRouter. Shell aliases in ~/.zshrc, one-command switching, validated model selection.

⚑

context-slim

Compresses everything that permanently enters the LLM context β€” CLAUDE.md, rules, agent descriptions, hooks, memory β€” via cross-layer dedup and per-file compression.

⏰

agent-deadline-setup

Soft wall-clock budget for subagents β€” warns at 80% of the budget, blocks non-finalizing tools past 100% so the report survives.

πŸ“¦

agent-return-setup

Size budget on every subagent’s final return message β€” blocks once past threshold with a compress or write-to-report order.

🎯

agent-router-setup

EXPERIMENTAL. Denies a generic subagent spawn when a real project or plugin expert owns the task, and names that expert.

⭐

manager-setup

Installs a hard delegation wall for this project β€” strict per-binary allowlist, fails closed β€” and the ++m / ++a / ++rr / ++r codewords. Bare +++ adds anti-drift cron planning only in Plan mode.

πŸ“‹

task-board-setup

Deploys a file-based Kanban with domain/task methodology, a task graph and unique session anti-drift timers; optional spec/design and CLAUDE.md optimization.

Commands

CommandPurposeModelArguments
/brewtools:text-optimizeOptimize text for LLM token efficiencysonnet[prompt] [-l|-s|-d|-x|--max] [file|folder|path1,path2]
/brewtools:text-humanRemove AI artifacts from code and docssonnet<commit-hash|path> [custom instructions]
/brewtools:secrets-scanScan for leaked secrets and credentialssonnet[--fix]
/brewtools:sshSSH server managementopus<prompt describing what to do>
/brewtools:deployGitHub Actions deployment, CI/CDopus<prompt describing what to do>
/brewtools:plugin-updateCheck and update the full brewcode plugin suitesonnet[check|update|all]
/brewtools:provider-switchConfigure alternative API providersopus[status|install|verify|model-check|help|<provider>]
/brewtools:context-slimCompress everything that permanently enters the LLM contextopus[prompt] [measure|preview|slim|hard|bodies|restore] [--target=N%] [--global] [--memory] [--noask] [ts]
/brewtools:agent-deadline-setupInstall a soft wall-clock budget for subagentssonnet[status|install|upgrade|enable|disable|uninstall|purge] [project|global] [minutes]
/brewtools:agent-return-setupCap the size of every subagent’s final return messagesonnet[status|install|upgrade|enable|disable|uninstall|purge] [project|global] [pass] [file]
/brewtools:agent-router-setupRoute a generic subagent spawn to the real expert (experimental)sonnet[status|install|upgrade|enable|disable|uninstall|purge] [level fast|strict]
/brewtools:manager-setupManager mode: hard delegation wall + codewordssonnet[status|install|upgrade|enable|disable|uninstall|purge] [level strict|balanced] [edit]
/brewtools:task-board-setupDeploy a file-based Kanban into any repoopus[status|install|upgrade|enable|disable|uninstall|purge] [repo path] [free-text directive]

Task methodology and anti-drift

Task-board setup writes shared domain methodology for reviews and tests; each task adds its own goal, acceptance evidence, review/test strategy and bounded base work units. When a top-level task becomes active, the main session’s task-board flow announces and creates a unique hourly session anti-drift cron. Users can choose another cadence or opt out. Queued tasks keep their prepared methodology and complete task-specific prompt without a live timer.

Each delivered tick rereads the methodology, anti-drift rules and goal, collects active-agent updates, reconciles statuses and dependencies, and keeps all unfinished graph entries plus the latest 10 completed entries. Older completion evidence stays in task records. At most five short report lines give local time/timezone, tick number and elapsed time, achievements, remaining work and next action, blockers or questions when present, and the drift verdict. Completion, cancellation or parking stops the timer and verifies removal. Timers depend on the active session and runtime limits; unavailable scheduling is reported.

Bare +++ injects these planning steps only in Plan mode. File changes and scheduling wait until execution. See Task Board Setup and Manager Setup.

Agents

AgentModelPurpose
text-optimizersonnetLean execution engine for text optimization with rule-based validation
ssh-admininheritSSH server administration, configuration, deployment
deploy-admininheritGitHub Actions, CI/CD, releases, GHCR management

Artifact metadata

Every -setup skill stamps what it writes with the plugin version that generated it and generated_by naming the skill. JSON artifacts carry these plus last_updated as top-level keys. The byte-copied .mjs/.md hook and prompt files carry only version and generated_by in a // brewcode-meta: comment line (or .md frontmatter) β€” never last_updated, since the date would be the release date already present at the top of the file and rewriting it on every build would defeat the copy’s own drift check.

SkillCarrier
manager-setupstate.json top-level keys + the copied guard’s brewcode-meta line
agent-deadline-setupagent-deadline.json top-level keys + both hooks’ brewcode-meta line
agent-return-setupagent-return.json top-level keys + the brewcode-meta line in all three .mjs
agent-router-setupagent-router.json top-level keys + the hook’s brewcode-meta line
task-board-setupProvenance metadata on generated board/control files, skills and tracker; task methodology and timer state remain task data

/brewcode:setup-status reads these stamps back across all eleven -setup skills in this marketplace and tells you when an install is running on an older brewtools version than the plugin currently installed β€” the fix is always that skill’s own upgrade mode.

Plugin variable

${CLAUDE_PLUGIN_ROOT} and ${CLAUDE_SKILL_DIR} are text substitutions Claude Code performs on the prompt itself, not environment variables β€” no hook injection required. Skills in the main conversation use ${CLAUDE_SKILL_DIR} to access their own files. Subagent .md definitions get ${CLAUDE_PLUGIN_ROOT} substituted into the prompt text at Agent spawn; it is not readable as a shell variable inside a Bash call.

Architecture

brewtools/
β”œβ”€β”€ .claude-plugin/
β”‚   └── plugin.json              # Plugin manifest
β”œβ”€β”€ hooks/                       # filenames deliberately NOT renamed in v5.0.0
β”‚   β”œβ”€β”€ hooks.json               # Hook registry
β”‚   β”œβ”€β”€ session-start.mjs        # SessionStart: HARD-wall awareness, manager codeword prep
β”‚   β”œβ”€β”€ manager-prompt.mjs       # Codewords; +++ only in Plan mode
β”‚   β”œβ”€β”€ hardmode-guard.mjs       # Copied into a project by manager-setup install
β”‚   └── lib/                     # utils.mjs, manager-state.mjs, manager-prompts.mjs
β”œβ”€β”€ skills/
β”‚   β”œβ”€β”€ text-optimize/           # Token optimization
β”‚   β”œβ”€β”€ text-human/              # AI artifact removal
β”‚   β”œβ”€β”€ secrets-scan/            # Secrets scanning
β”‚   β”œβ”€β”€ ssh/                     # SSH server management
β”‚   β”œβ”€β”€ deploy/                  # GitHub Actions deployment
β”‚   β”œβ”€β”€ plugin-update/           # Check, install, and update plugin suite
β”‚   β”œβ”€β”€ provider-switch/         # Alternative API provider management
β”‚   β”œβ”€β”€ context-slim/            # Permanent-context compression
β”‚   β”œβ”€β”€ agent-deadline-setup/    # Soft wall-clock budget for subagents
β”‚   β”œβ”€β”€ agent-return-setup/      # Size budget on every subagent's final return
β”‚   β”œβ”€β”€ agent-router-setup/      # Generic-spawn router (experimental)
β”‚   β”œβ”€β”€ manager-setup/           # Hard delegation wall + codewords
β”‚   └── task-board-setup/        # Kanban, methodology, graph and session anti-drift
└── agents/
    β”œβ”€β”€ text-optimizer.md        # Text optimization agent
    β”œβ”€β”€ ssh-admin.md             # SSH server administration
    └── deploy-admin.md          # GitHub Actions, CI/CD agent

Brewtools vs Brewcode

Brewtools provides standalone text utilities: optimization, humanization, security scanning. Each skill works independently with no lifecycle dependencies.

Brewcode is the spec-and-search plugin β€” agent and skill authoring, semantic code search via the semble MCP, deep-review and team generators, plus the cross-plugin setup dashboard.

Both plugins install from the same claude-brewcode marketplace but operate independently.

πŸš€

Latest Release

Download, changelog, and installation instructions.

πŸ“–

Installation Guide

Full setup, update, and troubleshooting instructions.

πŸ”—

View on GitHub

Source code, README, and configuration files.

πŸ“‹

Task Board Setup

Domain methodology, task graph and session anti-drift controls.

Updating plugins

Use /brewtools:plugin-update to check and update the brewcode plugin suite in one command. See the FAQ for details.