Skip to content

cboone/agent-harness-plugins

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,146 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Claude Code Plugins

A collection of plugins (skills and hooks) for Claude Code, OpenAI's Codex CLI, and OpenCode, from Christopher Boone.

Install

Claude Code

From within claude, open the plugins manager via /plugin, tab to Marketplace, and hit enter on Add Marketplace. Type cboone/agent-harness-plugins, then choose which plugins to install.

Or, from within claude:

/plugin marketplace add cboone/agent-harness-plugins

Codex CLI

codex plugin marketplace add cboone/agent-harness-plugins

See Using with Codex CLI below for the plugin_hooks feature flag, marketplace upgrade and remove semantics, and Codex-specific limitations.

OpenCode

export OPENCODE_CONFIG_DIR="$(pwd)/dist/opencode"

See Using with OpenCode below for mirror regeneration and known limitations.

Skills

Each skill links to its own README. The Trigger column shows the slash command. Some style-guide skills also activate automatically when you touch their target file types; see the per-plugin README for activation rules.

Git

Plugin Trigger What it does
Commit /commit Smart, context-aware git commits with conventional commit messages and plan awareness.
Merge Main /merge-main Fetch and merge the base branch into the current feature branch with automatic conflict resolution.
PR /pr Lint, commit, push, and create a pull request in one step with no prompts.
Rebase Onto Main /rebase-onto-main Fetch and rebase the current feature branch onto the base branch with automatic conflict resolution and force-with-lease push.
Release /release Prepare a versioned release or Claude Code marketplace catalog state tag: update release files, create a release commit, tag locally, and optionally publish a GitHub Release.
Review Branch /review-branch Review and evaluate all work done on the current branch: summarize changes, assess plan compliance, and evaluate code quality.
Use Git /use-git Git and GitHub CLI conventions for Claude Code: tmpfile patterns, HEREDOC commits, GPG signing, safe push practices, and permission-prompt avoidance.

External tools:

  • PR: gh
  • Merge Main, Rebase Onto Main: gh (falls back to git remote show origin if unavailable)
  • Release: jq for marketplace catalog releases; gh optional for GitHub Release creation

Issues and Worktrees

Plugin Trigger What it does
Address Issue /address-issue Fetch a GitHub issue, plan the work, execute changes, and commit with issue references.
Create Issue /create-issue Create GitHub issues using tmpfiles to avoid permission prompts from large multiline Bash arguments.
Create Worktree /create-worktree Create a git worktree, branch, and tmux window with a task prompt using workmux.
Create Worktree from Issue /create-worktree-from-issue Find a GitHub issue and create a worktree, branch, and tmux window for working on it, with issue context injected as a task prompt.
Suggest Next Issue /suggest-next-issue Review open GitHub issues and recommend what to work on next with prioritized reasoning.

External tools:

  • Address Issue, Create Issue, Suggest Next Issue: gh
  • Create Worktree: workmux
  • Create Worktree from Issue: gh, workmux

Code Review

Plugin Trigger What it does
Address Review /address-review <path> Parse a review document for actionable feedback, work through items systematically, and track resolution progress.
Resolve Copilot PR Feedback /resolve-copilot-pr-feedback Process and resolve GitHub Copilot automated PR review comments.

Code Quality

Plugin Trigger What it does
Add Scrut CLI Tests /add-scrut-cli-tests Set up scrut snapshot-based CLI integration testing for a CLI project.
Check Zsh Scripts /check-zsh-scripts Check and evaluate zsh scripts using shellcheck, shfmt, shellharden, zsh -n, zcompile, setopt warn_create_global/warn_nested_var, and checkbashisms.
Handle Secrets /handle-secrets Best practices for handling user-provided secrets in CLI tools: secure input methods, credential storage, secret masking, and language-specific libraries.
Lint and Fix /lint-and-fix Detect project linters and formatters, run them with auto-fix, resolve remaining issues, then commit and push the fixes.
Set-Up Linters /set-up-linters Detect project languages, recommend linters and formatters, install them, and generate config files, including Pandoc-academic Markdown presets.
Write Bash Scripts /write-bash-scripts Applies Bash style conventions when creating or editing Bash scripts.
Write Go Code /write-go-code Go code style guide based on Google Go Style Guide, Effective Go, Code Review Comments, and Cobra CLI behavior.
Write LaTeX /write-latex LaTeX mathematical typesetting style guide based on AMS, IEEE, ISO 80000-2, and Knuth conventions.
Write Lean Code /write-lean-code Lean 4 style guide and Mathlib conventions for naming, proofs, formatting, and metaprogramming.
Write Lean Tests /write-lean-tests Conventions for compile-time, example-based Lean 4 API regression tests that mirror a library's public surface.
Write Scrut Tests /write-scrut-tests Applies scrut test style conventions when creating or editing scrut test files for CLI binaries and zsh plugins.
Write Zsh Scripts /write-zsh-scripts Applies zsh style conventions when creating or editing zsh scripts, configurations, and completions.

External tools:

Writing

Plugin Trigger What it does
Write Formalization Roadmap /write-formalization-roadmap Document-structure guide for multi-milestone formalization roadmaps in Lean, Rocq, Isabelle, HOL, and other proof assistants.
Write Markdown /write-markdown Applies Markdown style conventions when creating or editing Markdown files.
Write Math /write-math Mathematical writing and exposition guide based on Tao, Knuth, Halmos, and other leading references.
Write Pandoc Markdown /write-pandoc-markdown Pandoc-flavored Markdown conventions for academic papers with LaTeX output.

Scaffolding

Plugin Trigger What it does
Add Community Files /add-community-files Add standard community files to a project: CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md, and PR template.
Bootstrap Project /bootstrap-project Assess a repository, determine what scaffolding and setup tools are needed, present a plan, and execute them in the correct order.
Manage Repo Licensing /manage-repo-licensing Bootstrap, audit, and maintain REUSE-style mixed-license coverage in a repository: LICENSES/, NOTICE, REUSE.toml, SPDX headers, and reuse lint cleanliness.
Refresh Project Scaffolding /refresh-project-scaffolding Refresh existing project scaffolding against the latest plugin templates.
Scaffold Go CLI /scaffold-go-cli Scaffold a complete Go CLI project with Cobra, GoReleaser, GitHub Actions, and Homebrew tap support.
Scaffold Go Library /scaffold-go-library Scaffold a Go library project with GoReleaser changelog releases, golangci-lint, GitHub Actions CI/CD, and Makefile.
Scaffold Lean Library /scaffold-lean-library Scaffold a Lean 4 library project with Mathlib or PFR dependencies, Lake test/lint wiring, GitHub Actions CI, text linting, and agent instructions.
Scaffold New Repo /scaffold-new-repo Scaffold the universal boilerplate for a new repository: LICENSE, README, CHANGELOG, .gitignore, agent config files, and a plans directory.
Scaffold Rust CLI /scaffold-rust-cli Scaffold a complete Rust CLI project with Cargo, cargo-deny, cargo-nextest, git-cliff, GitHub Actions CI/CD, and Makefile.

External tools:

  • Manage Repo Licensing: reuse. Install via Homebrew: brew install reuse

CI and Release

Plugin Trigger What it does
Add Cobra Version /add-cobra-version Add a version subcommand with build metadata (version, commit hash, build date, Go runtime version, optional JSON output) to an existing Cobra-based Go CLI, wiring up ldflags in main.go, the cmd package, GoReleaser, and the Makefile.
Add GoReleaser Homebrew /add-goreleaser-homebrew Add GoReleaser and Homebrew tap publishing to an existing Go CLI project with conditional support for completions, man pages, and macOS-only builds.
Optimize Runner Usage /optimize-runner-usage Add paths-ignore, concurrency groups, and timeout-minutes to existing GitHub Actions workflows.
Pin Everything /pin-everything Pin every version surface in a repository (action SHAs, packageManager integrity digests, dependency exact-pins, runtime version files, install commands) for one-shot supply-chain hardening.
Set-Up CI /set-up-ci Set up GitHub Actions CI with test, lint, format, and vulnerability check jobs, plus matching Makefile targets.
Set-Up Installers /set-up-installers Set up installer and distribution methods for Go, Swift, Rust, and Zig projects: Homebrew tap, go/cargo install, and release workflow.
Set-Up Secret Scanning /set-up-secret-scanning Set up secret scanning with gitleaks and TruffleHog GitHub Actions workflows and optional gitleaks configuration.
Upgrade Everything /upgrade-everything Assess every version reference in a repository, evaluate available upgrades with repo-specific risk and reward, and present selectable upgrade options.
Write Homebrew Formula /write-homebrew-formula Write or update Homebrew formulae using current Homebrew guidance and cboone/homebrew-tap conventions.

External tools:

  • Pin Everything: gh, jq; optional corepack (only when pinning Yarn or pnpm) and reuse (only in REUSE-licensed repos)
  • Write Homebrew Formula: Homebrew for formula audit, style, install, and test validation

Agents

Plugin Trigger What it does
Clean Up Agent Config /clean-up-agent-config Review and reorganize AI coding agent configuration and instruction files across Claude Code, Codex, Copilot, and OpenCode.
Create Plugin /create-plugin Guide for creating new plugins in this repository with consistent structure and conventions.

Hooks

Hooks are event-driven; they have no slash-command trigger.

Plugin What it does
Notify (macOS) Sends macOS notifications when Claude Code, OpenCode, or Codex CLI finishes a task or needs your attention.

External tools:

Using with Codex CLI

This repository works as a native Codex CLI plugin marketplace. Codex reads the generated .agents/plugins/marketplace.json, which points at committed plugin roots under dist/codex/plugins/. Those generated roots mirror the canonical plugins/* directories but replace skill frontmatter descriptions with shorter Codex-facing descriptions from the marketplace entries. The canonical plugins/*/skills/*/SKILL.md files keep their richer Claude Code trigger descriptions.

For per-plugin metadata Codex prefers .codex-plugin/plugin.json when present and falls back to .claude-plugin/plugin.json otherwise. Hook registration requires a .codex-plugin/plugin.json with a non-empty hooks path (for example "hooks": "./hooks/hooks.json"); this lets hook plugins point Codex at a Codex-compatible hook file. Codex exposes ${CLAUDE_PLUGIN_ROOT} to plugin-bundled hook commands for backward compatibility with existing Claude Code plugins.

Codex CLI currently manages plugins at the marketplace level. In Codex CLI 0.128.0, codex plugin exposes the marketplace subcommand with add, upgrade, and remove; it does not expose a separate codex plugin install subcommand.

Enable plugin-bundled hooks once per host so the notify hook fires:

codex features enable plugin_hooks

Plugin-bundled hooks are gated behind the plugin_hooks feature flag (listed as under development in Codex CLI 0.128.0). Without it the marketplace add and skill discovery still work, but hooks/hooks.json files inside installed plugins are silently ignored.

Refresh a Git-backed marketplace after pulling repository updates or after a published release:

codex plugin marketplace upgrade agent-harness-plugins

codex plugin marketplace upgrade and remove take the marketplace name (agent-harness-plugins, derived from the repository name), not the owner/repo identifier used by add.

When changing plugin metadata, skills, hooks, scripts, or references, regenerate the Codex marketplace with bin/build-codex-marketplace and commit .agents/plugins/marketplace.json plus dist/codex/. For a local-path marketplace, restart Codex after changing plugin files so it can rebuild cached plugin copies from the local source.

Remove the configured marketplace by name:

codex plugin marketplace remove agent-harness-plugins

Codex CLI known limitations

  • Plugin-bundled hooks are gated behind a feature flag. plugin_hooks is under development in Codex CLI 0.128.0 and is false by default. Run codex features enable plugin_hooks once before expecting notify to fire on Codex; see above.
  • Notification and PreCompact hook events are not supported. Codex CLI's hook schema only supports PreToolUse, PermissionRequest, PostToolUse, SessionStart, UserPromptSubmit, and Stop. The notify plugin therefore wires only the Stop and PermissionRequest events on Codex (turn completion plus permission requests with Approve / Deny buttons). Idle, elicitation, and compact-style banners have no Codex hook equivalent; for those, enable Codex's built-in tui.notifications = true in ~/.codex/config.toml. The two are complementary and can run side by side. See the notify plugin README for details.
  • No custom prompts shipped. Codex's ~/.codex/prompts/ mechanism is officially deprecated in favor of skills. This repository ships skills (and hooks), not prompts.

Using with OpenCode

This repository also works with the skills and hooks in OpenCode via a committed mirror at dist/opencode/.

When adding or removing a plugin, regenerate the mirror with bin/build-opencode-mirror and commit the result. CI fails if the mirror drifts from the source plugins. Hooks are mirrored to dist/opencode/plugins/ as TypeScript plugins, sourced from each plugin's opencode/index.ts.

OpenCode known limitations

  • ${CLAUDE_PLUGIN_ROOT} references do not expand. Some skills use Claude Code's @${CLAUDE_PLUGIN_ROOT}/references/... pattern to inline reference files at runtime. OpenCode does not expand this variable, so those inclusions appear to the agent as literal path strings rather than inlined content. The inline workflow text in each affected file still loads correctly. Affected skills: /add-goreleaser-homebrew, /scaffold-go-cli, /scaffold-go-library, /scaffold-new-repo, /scaffold-rust-cli, /set-up-ci, /set-up-secret-scanning, /create-plugin. For full fidelity in these cases, run them in Claude Code.
  • Hook event parity is approximate. OpenCode's event model collapses several distinct Claude Code notification matchers (idle_prompt, elicitation_dialog, permission_prompt) and the PreCompact event is mapped to an experimental OpenCode hook. See each hook's README for the specific mapping.

License

MIT License. TL;DR: Do whatever you want with this software, just keep the copyright notice included. The authors aren't liable if something goes wrong.