AI-powered test generation for Claude Code — generate, init, and migrate test suites via slash commands.
Analyse the test suite for CI readiness — coverage depth, flakiness, assertion quality, critical path coverage, and runtime.
Identify which areas of the codebase carry the most test risk based on churn, dependents, and business-critical signals.
Diagnose a flaky test and propose a deterministic fix from code, CI logs, or a failure description.
Surface edge cases worth testing for a feature, function, or existing test suite.
Trace the downstream impact of a test, function, or code path failing undetected — produces a severity label and affected dependency list.
Validate architectural constraints and dependency rules. Use when checking layer boundaries, detecting circular dependencies, or verifying import direction compliance.
Perform code review and address review findings using harness methodology. Use when reviewing code, fixing review findings, responding to review feedback, or when a code review has produced issues that need to be addressed.
Proactively identifies structural problems, coupling risks, and architectural drift
Detect and fix codebase entropy including drift, dead code, and pattern violations. Use when running cleanup, detecting dead code, or fixing pattern violations.
Framework-aware reviewer for async-UI diffs — flags lifecycle gaps, hook-timing mistakes, concurrent interactions, and stale-work races
Executes bash commands
Hook triggers when Bash tool is used
Modifies files
Hook triggers on file write and edit operations
Uses power tools
Uses Bash, Write, or Edit tools
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Canary is an AI-powered test automation agent that transforms natural language requirements into high-quality, framework-aware test code.
pipx install git+https://github.com/bop-clocktower/canary@latest
This installs the canary binary globally without polluting your project
virtualenv. Upgrade by re-running with @<new-tag>.
git clone https://github.com/bop-clocktower/canary.git
cd canary
pip install -e .
Canary ships as a Claude Code plugin with four MVP personas — canary-test-author,
canary-test-reviewer, canary-framework-advisor, and canary-flake-hunter —
plus the harness MCP server. Add it as a local marketplace:
/plugin marketplace add https://github.com/bop-clocktower/canary
/plugin install canary@bop-clocktower
Or, if you've already cloned the repo:
/plugin marketplace add /path/to/canary
/plugin install canary@bop-clocktower
Note: the install syntax is
<plugin-name>@<marketplace-name>. Thecanaryplugin ships from thebop-clocktowermarketplace, so the@qualifier reads ascanary@bop-clocktower.
No separate API key is required. The plugin runs through Claude Code's own session authentication.
Test generation runs inside Claude Code — no API key, no LLM provider setup. Invoke a persona from your editor session:
/canary-write-test Create a Playwright test for the login flow on https://example.com
The canary-test-author agent classifies the intent, picks a framework, reads
your repo for context via the Canary MCP tools, and writes the test using your
Claude Code session.
The CLI is deterministic and needs no key. To see Canary's framework recommendation and reasoning for a requirement:
canary recommend "I need a load test for my checkout API"
Other deterministic CLI commands: canary init <framework> (scaffold a suite),
canary run <file> <framework> (execute a test), canary migrate (adopt a
harness-scaffolded project), canary version.
No API key is required. Canary runs as a Claude Code plugin and uses your
Claude Code session for any LLM work — there is no separate provider key to
set. The CLI commands (recommend, init, run, migrate) are deterministic
and make no LLM calls.
See CHANGELOG.md for release history. Per-release notes are also published on GitHub Releases.
Canary follows a modular pipeline: User Prompt → Classifier → Recommender → host LLM (your Claude Code session) → Generated Test
Generated by Canary — The future of autonomous test engineering.
npx claudepluginhub bop-clocktower/canary --plugin canaryComplete collection of battle-tested Claude Code configs from an Anthropic hackathon winner - agents, skills, hooks, and rules evolved over 10+ months of intensive daily use
20 SEO/GEO skills and 5 commands on one shared contract for keyword research, content creation, technical audits, schema markup, monitoring, quality gates, entity truth, and campaign memory.
Modern R development skills for Claude Code - tidyverse patterns, rlang metaprogramming, Bayesian inference, performance optimization, and more
Comprehensive PR review agents specializing in comments, tests, error handling, type design, code quality, and code simplification
Comprehensive feature development workflow with specialized agents for codebase exploration, architecture design, and quality review
Unity Development Toolkit - Expert agents for scripting/refactoring/optimization, script templates, and Agent Skills for Unity C# development