Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Security-Phoenix-demo/security-skills-claude-code --skill phoenix-verification-matrixgit clone --depth 1 https://github.com/Security-Phoenix-demo/security-skills-claude-codeWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/security-phoenix-demo/security-skills-claude-code/phoenix-verification-matrix)<a href="https://agentmods.dev/skills/security-phoenix-demo/security-skills-claude-code/phoenix-verification-matrix"><img src="https://agentmods.dev/badge/skills/security-phoenix-demo/security-skills-claude-code/phoenix-verification-matrix/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/security-phoenix-demo/security-skills-claude-code/phoenix-verification-matrix"><img src="https://agentmods.dev/badge/skills/security-phoenix-demo/security-skills-claude-code/phoenix-verification-matrix.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00176 | $0.01027 |
| Opus 5 | $0.00088 | $0.00513 |
| Sonnet 5 | $0.00035 | $0.00205 |
| Haiku 4.5 | $0.00018 | $0.00103 |
Grade A, and why
phoenix-verification-matrix scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 94 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Phoenix Security — Verification Matrix (Role 08)
Token Budget: ≤1000 tokens
Depends On: Roles 04, 06, 07 — NORMATIVE_REQUIREMENTS, SECURITY_REQUIREMENTS, CONTRACTS
Feeds Into: Role 09 — Batch Planner
Output: 08-verification-matrix.md
Phoenix Proof Types
| Proof Type | Description | Naming Convention |
|---|---|---|
unit-test |
Automated unit test | test_<module>_<behaviour>.py |
integration-test |
Multi-component test | test_<feature>_integration.py |
contract-test |
API / Pact test | pact_<api-id>_<scenario>.json |
static-analysis |
Linter / SAST | Bandit, CodeQL, Semgrep rule name |
infra-check |
IaC / config validation | Terraform plan / AWS policy check |
manual-review |
Human checklist | Named checklist item |
pen-test |
Penetration test | For new trust boundary crossings |
load-test |
Performance validation | Locust / k6 scenario name |
Proof Priority (prefer automated)
unit-test → integration-test → contract-test → static-analysis → infra-check → load-test → manual-review
Mandatory Proof Assignments
- R-SEC-* →
static-analysis+unit-testminimum - PSC-03 (multi-tenancy) →
integration-testrequired - PSC-08 (AI agent) →
manual-review+unit-test - API-NNN →
contract-testas primary - Auth / tenant isolation / input validation → negative tests required
Core Rules
- Every MUST/MUST NOT must have ≥1 proof path.
- If proof is impossible → downgrade MUST → SHOULD, or mark OPEN QUESTION with rationale.
- Negative tests for all auth, tenant isolation, and input validation requirements.
unverified_musts > 0is a Final Gate blocker unless downgraded with rationale.
Output Schema
---
meta:
role: 08-verification-matrix
session_id: session-[YYYYMMDD-HHMMSS]
token_count: [actual]
total_musts: [count]
automated_proofs: [count]
manual_proofs: [count]
unverified_musts: [count]
status: complete
next_role: 09-batch-planner
---
### VERIFICATION_MATRIX
| Requirement_ID | Statement (short) | Level | Proof_Type | Proof_Artifact | Negative_Test | Notes |
|---|---|---|---|---|---|---|
| R-FUNC-001 | ... | MUST | unit-test | test_feature_behaviour.py | test_feature_unauthorised.py | |
| R-SEC-001 | Tenant data isolated | MUST | integration-test + static | test_tenant_isolation.py + semgrep_tenant | test_cross_tenant_leak.py | PSC-03 |
| R-SEC-002 | LLM input sanitised | MUST | unit-test + manual-review | test_prompt_sanitise.py + ai-review-checklist | test_prompt_injection.py | PSC-08 |
| API-001 | GET /... returns envelope | MUST | contract-test | pact_api001_consumer.json | pact_api001_invalid_token.json | |
#### UNVERIFIED_MUSTS (if any)
- R-XXX-NNN: <reason> → recommended: downgrade | ask | manual
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 94 lines · 176 tokens per session scan A 28ae5c6857bc
phoenix-verification-matrix is a skill published in the GitHub repository Security-Phoenix-demo/security-skills-claude-code (70 stars, last pushed yesterday), licensed MIT. It adds 176 tokens to every session and 1,027 once invoked, about $0.0009 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-11.
Other skills, from other repositories
migrate-xunit-to-xunit-v3
Migrate .NET test projects from xUnit.net v2 to xunit.v3 and fix v3 breaks. Use for package/CPM conversion, OutputType=Exe, preserving the VSTest or MTP runner (including projects currently using YTest.MTP.XUnit2), incompatible TFMs, async void tests, string-to-Type attributes, custom Fact/Theory/BeforeAfterTest…
go-testing
Trigger: Go tests, go test coverage, Bubbletea teatest, golden files. Apply focused Go testing patterns.
nw-fp-clojure
Clojure language-specific patterns, data-first modeling, REPL-driven development, and spec.
mobiai-ios-testing
Use when writing or running tests in an iOS project — unit tests, UI tests, snapshot tests, choosing the right framework.
junit-5-skill
Generates production-grade JUnit 5 unit and integration tests in Java. Covers assertions, parameterized tests, lifecycle hooks, mocking with Mockito, and nested tests. Use when user mentions "JUnit", "JUnit 5", "@Test", "assertEquals", "Assertions", "Java unit test". Triggers on: "JUnit", "@Test", "assertEquals"…
restore-internals-seams-in-finally-blocks-after-each-test
When delegating a task affected by this skill, include.