Claude Policy Objects
PluginstableHard gates for Claude Code: policies checked before a write, a command or the end of a turn.
CPO routes every Claude Code event to `ccpp cpo`, which evaluates the policies of your profiles and of the project. A policy blocks, asks you, steers Claude or logs; a blocked write is undone and Claude is told why. The plugin also ships ccpp-tester, the only agent allowed to write tests.
- Category
- Guardrails
- Documentation
- /docs/plugins/cpo
- Source
- plugins/cpo/.claude-plugin/plugin.json
Install
Add the marketplace (terminal)
claude plugin marketplace add CCPP-dev/CCPPInstall the cpo plugin (terminal)
claude plugin install cpo@ccppIn this plugin
- Hooks
CPO hooks
One command on every Claude Code event, so CPO sees each prompt, tool call, subagent and end of turn.
in cpo
- Agentalpha
CCPP Tester
The only agent allowed to write tests. It writes them blind, from what you asked, so Claude never tests its own code.
cpo:ccpp-tester
- Skillalpha
CCPP Tester attack kit
Test design, mutation testing and fault probes for the ccpp-tester agent. CPO refuses it to every other agent.
cpo:ccpp-tester
Read from source
- Marketplace manifest
- .claude-plugin/marketplace.json
Verified at build
- passSource plugins/cpo/.claude-plugin/plugin.json exists
- passDeclares the name cpo
- passListed in .claude-plugin/marketplace.json with source ./plugins/cpo
- passDocumentation page /docs/plugins/cpo exists