Coding

Opinionated coding guidelines, quality review agents, and slash commands for Go and Python — packaged as a Claude Code plugin.
Overview
Writing consistent, idiomatic code across a large codebase is hard. This plugin bundles 50+ opinionated guides (Go architecture, error handling, testing, HTTP handlers, Python structure, Git workflow, documentation) together with specialized Claude Code agents that enforce them on your code. Install once, then run /coding:local-review or /coding:pr-review to review your work against the full ruleset.
Requirements
Install
claude plugin marketplace add bborbe/coding
claude plugin install coding
Update:
claude plugin marketplace update coding
claude plugin update coding@coding
Quick Start
Review your current branch against all guidelines:
/coding:pr-review
Review local uncommitted changes in selector mode (default — zero LLM spawns, in-session classify + adjudicate) or full mode (per-owner dispatch, concurrent agents):
/coding:local-review # selector mode (default)
/coding:local-review full # per-owner dispatch
Audit the whole codebase (severity-filtered, baseline-aware):
/coding:code-review # whole codebase, Must Fix + Should Fix only
/coding:code-review --include-optional # add Nice to Have
/coding:code-review --refresh-baseline # write current findings to .code-review-baseline.yaml
Find relevant guides before starting work:
/coding:check-guides "add Prometheus metrics to HTTP handler"
Commit with changelog and version bump:
/coding:commit
Commands
| Command | Description |
|---|
/coding:pr-review | Branch diff vs target — selector mode default; full mode = per-owner dispatch |
/coding:local-review [short|selector|full] | Local uncommitted/recent diff vs HEAD~1 — selector mode default |
/coding:code-review [--include-optional] [--refresh-baseline] | Whole-codebase audit — severity-filtered (Must + Should) + baseline-aware (.code-review-baseline.yaml) |
/coding:architecture-review [directory] | Deep whole-codebase architectural review — top-down + dimensions, consolidated Must/Should/Could |
/coding:check-guides "task" | Find relevant guides before implementation |
/coding:commit | Git commit with changelog and versioning |
/coding:go-write-test [basic|standard|integration] | Generate Go tests for changed files |
/coding:github-release [target] [--dry-run] | Release a git repo (cwd, dir, or owner/repo clone-to-tmp) — classify bump, rewrite header, commit, tag, push, PR fallback |
/coding:go-version [check|update] | Check/update Go version across project files |
/coding:improve-guide [file] | Refactor guide into structured rule sets |
/coding:audit-guide [file] | Audit guide against style, structure, and indexing |
/coding:audit-agent [file] | Audit agent against Agent & Command Development Guide |
/coding:audit-skill [path] | Audit skill directory against Claude Code Skill Writing Guide |
/coding:audit-slash-command [file] | Audit slash command against Agent & Command Development Guide |
/coding:self-improve | Review THIS session; propose ≤2 durable improvements to memory/commands/agents/skills (inline, two-phase) |
/coding:vscode [dir] | Open VS Code in directory |
/coding:intellij [dir] | Open IntelliJ IDEA in directory |
Guides
All guides live in docs/ and can be read standalone without the plugin.
Go — Architecture & Patterns
Go — Code Quality
Go — Testing
Go — Infrastructure
Go — HTTP & APIs
Python
Node.js
Workflows & Documentation
Claude Code Authoring
Frontend
Agents
Agents are invoked by commands — you rarely call them directly. Each reads its matching guide as source of truth.
Go Quality (standard mode, 7 agents)
| Agent | Doc | Checks |
|---|
go-quality-assistant | go-architecture-patterns.md | Naming, file layout, logging, concurrency, transactions |
go-context-assistant | go-context-cancellation-in-loops.md | context.Background(), missing ctx.Done() in loops |
go-error-assistant | go-error-wrapping-guide.md | fmt.Errorf, bare return err, missing wrapping |
go-time-assistant | go-time-injection.md | time.Time in structs, time.Now() in production |
go-factory-pattern-assistant | go-factory-pattern.md | Factory compliance, zero-business-logic |
go-http-handler-assistant | go-http-handler-refactoring-guide.md | Handler organization, inline detection |
go-test-coverage-assistant | go-testing-guide.md | Test coverage gaps |
Go Quality (full mode adds 8 more)
| Agent | Doc | Checks |
|---|
go-metrics-assistant | go-prometheus-metrics-guide.md | Metric types, naming, labels, pre-init |
godoc-assistant | go-doc-best-practices.md | GoDoc completeness and format |
go-test-quality-assistant | go-testing-guide.md | Ginkgo/Gomega patterns, mock usage |
go-security-specialist | go-security-linting.md | Vulnerabilities, OWASP |
srp-checker | — | Single Responsibility Principle (unit-level) |
go-architecture-assistant | — | Cross-unit architecture, naive extractions, layering, boundaries |
architecture-dimensions-assistant | architecture-dimensions-guide.md | Whole-codebase behavioral review — data flow, failure, concurrency, observability, drift |
go-version-manager | — | Go version currency |
go-tooling-assistant | go-makefile-commands.md | Makefile, tools.go |
Other agents
| Agent | Description |
|---|
license-assistant | LICENSE file, headers, README section |
readme-quality-assistant | README.md completeness |
shellcheck-assistant | Shell script quality |
python-quality-assistant | Python code quality |
node-quality-assistant | Node.js service quality |
python-architecture-assistant | Cross-module architecture, naive extractions, layering, boundaries |
context7-library-checker | Library API currency |
go-test-writer-assistant | Generate Go tests |
guide-improvement-assistant | Refactor guides |
guide-auditor | Audit guides against style/structure/indexing |
agent-auditor | Audit agent files against Agent & Command Development Guide |
slash-command-auditor | Audit slash commands against Agent & Command Development Guide |
skill-auditor | Audit skills against Claude Code Skill Writing Guide |
simple-bash-runner | Run build commands |
pre-implementation-assistant | Find relevant guides |
coding-guidelines-finder | Search docs/ |
release-changelog-assistant | Classify semver bump from ## Unreleased + optionally rewrite to conventional-prefix style; invoked by /coding:commit Workflow B, /coding:github-release, and K8s agent/github-releaser |
project-docs-finder | Search project docs/ |
Acceptance Scenarios
End-to-end acceptance walks for the doc-driven review pipeline, following the dark-factory scenario writing guide. Each scenario file under scenarios/ is a manually-walked checklist; promote draft → active after the first successful walk.
| # | Scenario | Validates |
|---|
| 001 | toolchain-preflight | Step 4.0 / Step 0 preflight blocks exit 1 with documented stderr when ast-grep / sg is absent from PATH |
| 002 | clean-pr-zero-findings | /coding:local-review master against a zero-violation diff produces empty Must Fix / Should Fix / Nice to Have (no LLM hallucination) |
| 003 | scaling-funnel-100-files | 100-file synthetic fixture: mechanical funnel ≤30s, distinct Owners ≤30 (structural ceiling on Step 4b LLM calls) |
| 004 | findings-exist-path | /coding:pr-review against the stable test PR bborbe/maintainer#2: Step 4a surfaces ≥4 findings, every Owner has an agent file, citation discipline holds |
Contributing
Issues and pull requests welcome at github.com/bborbe/coding.
Guides are the source of truth — agents enforce them. To propose a rule change, edit the relevant file in docs/ and open a PR.
License
BSD-2-Clause. See LICENSE.