Back to skills
SKILL.md
Verify
ASecurityThis skill should be used when the user asks to "verify protocols", "check consistency before commit", "validate definitions", "run pre-commit checks", "verify soundness", or wants to ensure epistemic protocol quality. Invoke explicitly with /verify for pre-commit validation.
- 173 stars
- 0 votes
- 0 copies
- 1 view
- Added February 8, 2026
Works with
Security analysis
100/100Pro scans all 4 files and shows the line behind each finding
npx -y skills add jongwony/epistemic-protocols --skill verify --agent claude-codeAre you the author of Verify?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/jongwony-verify)---
name: verify
description: This skill should be used when the user asks to "verify protocols", "check consistency before commit", "validate definitions", "run pre-commit checks", "verify soundness", or wants to ensure epistemic protocol quality. Invoke explicitly with /verify for pre-commit validation.
allowed-tools: Read, Grep, Glob, Bash(node *), Task, AskUserQuestion
---
# Protocol Verification
Verify epistemic protocol consistency before commit through static checks and expert review.
## Purpose
Surface potential issues in protocol definitions without blocking commits. Follow Anthropic philosophy: transparency over enforcement, user agency over automation.
## Core Principles
| Principle | Implementation |
|-----------|----------------|
| **Surface, don't enforce** | Present findings; user decides action |
| **Zero-context scripts** | Static checks run without consuming context |
| **Explicit control** | User invokes `/verify` intentionally |
| **Graduated severity** | Critical / Concern / Note categorization |
## Workflow
### Phase 1: Static Checks
Run `scripts/static-checks.js` against project root. This script executes without loading into context.
```bash
node ${SKILL_DIR}/scripts/static-checks.js ${PROJECT_ROOT}
```
**Output format**:
```json
{
"pass": [{ "check": "...", "file": "...", "message": "..." }],
"fail": [{ "check": "...", "file": "...", "message": "..." }],
"warn": [{ "check": "...", "file": "...", "message": "..." }]
}
```
**Checks performed**: `scripts/static-checks.js` is the orchestrator. Its head names the layer files it runs and what each layer holds, and each layer file's `CHECKS` list is that layer's inventory. `references/verification.md` carries why the non-obvious checks exist and what to do when one fires.
### Phase 2: Expert Review
Spawn parallel Task subagents for LLM-based review — one per perspective (Type Theory / Category Theory, Instruction Design, Claude Code Ecosystem). Load each subagent's prompt template from `references/review-checklists.md` (single source of truth; do not duplicate the templates here — see Review Checklists below). Each template samples the protocols changed in the current diff, falling back to a representative sample when the diff is not protocol-scoped.
All three subagents run in parallel. Collect results before proceeding.
### Phase 3: Synthesize Findings
Combine static check results with expert review findings. Categorize by severity:
| Severity | Static Check Source | LLM Review Source |
|----------|--------------------|--------------------|
| **Critical** | `fail` array | findings with `severity: "critical"` |
| **Concern** | `warn` array (structural) | findings with `severity: "concern"` |
| **Note** | `warn` array (stylistic) | findings with `severity: "note"` |
Identify convergence (all perspectives agree) and divergence (perspectives differ).
Apply Claude Code Ecosystem expert's `filtered` array to dismiss false positives from other perspectives.
### Phase 4: Surface via Gate Interaction
Present findings via gate interaction. Format:
```
## Verification Results
### Critical (n issues)
- [issue 1]: [location] - [description]
- [issue 2]: [location] - [description]
### Concerns (n issues)
- [issue 1]: [location] - [description]
### Notes (n observations)
- [observation 1]
### Filtered (Claude Code context)
- [filtered issue]: [reason dismissed]
---
Select action:
```
**Options to present**:
1. **Fix critical issues** - Address critical findings before commit
2. **Review concerns** - Examine each concern individually
3. **Proceed anyway** - Commit with decision logged
4. **Cancel** - Abort verification
### Phase 5: Handle User Decision
| Decision | Action |
|----------|--------|
| Fix critical | Show specific fixes, await approval for each |
| Review concerns | Present concerns one by one with dismiss/address options |
| Proceed anyway | Log decision, suggest commit message annotation |
| Cancel | End verification, no changes |
**Commit message annotation** (if proceeding with issues):
```
[verify: n critical, m concerns acknowledged]
```
## Severity Reference
Consult `references/criteria.md` for which channel judges which kind of obligation, the severity definitions, and what review reads for.
## Review Checklists
Consult `references/review-checklists.md` for:
- Type Theory / Category Theory expert prompt template
- Instruction Design expert prompt template
- Claude Code Ecosystem expert prompt template
- Known issues checklist
- Synthesis template
## Error Handling
| Error | Response |
|-------|----------|
| Script execution fails | Report error, offer manual check option |
| Subagent timeout | Report partial results, continue with available data |
| No issues found | Confirm clean state, proceed to commit |
## Integration Notes
### Standalone Usage
Most common pattern: invoke `/verify` before `/commit` command.
## Output Examples
### Clean State
```
## Verification Results
All checks passed.
- Static checks: all checks pass (0 fail, 0 warn)
- Type/Category review: No issues
- Instruction Design review: No issues
Ready to commit.
```
### Issues Found
```
## Verification Results
### Critical (1 issue)
- State machine totality: hyphegesis/skills/conduct/SKILL.md - Undefined transition when the person withdraws after the method was handed off
### Concerns (2 issues)
- Categorical terminology: hyphegesis/skills/conduct/SKILL.md - limit/colimit may not match intended semantics
- Directive verb: hyphegesis/skills/conduct/SKILL.md - "Invoke AskUserQuestion" should be "call"
### Notes (1 observation)
- Version: hyphegesis plugin.json version not bumped since last change
---
How to proceed?
```
Files in this skill
- SKILL.md
- references/criteria.md
- references/review-checklists.md
- scripts/static-checks.js
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.