Not in the top 1,000 by GitHub stars
backspace-shmackspace/claude-devkit
claude-devkit - an agentic coding framework
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
contrib/journal/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
contrib/journal-recall/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
contrib/journal-review/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/ai-code-review/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/architect/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/audit/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/build-yaml-misconfiguration/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/client-side-security/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/compliance-check/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/container-hardening/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/dependency-audit/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/fix/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/input-validation-injection/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/receiving-code-review/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/retro/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/secrets-scan/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/secure-review/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/semgrep/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/ship/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/sync/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/threat-model/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/threat-model-gate/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
skills/verification-before-completion/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 7d11c4a8aa4b
No earlier version was observed for comparison.
Verified commit 7d11c4a8aa4be142a6ea4792604f8a7b39f0d789
git clone --filter=blob:none --no-checkout https://github.com/backspace-shmackspace/claude-devkit.git .hotskills/backspace-shmackspace-claude-devkit && git -C .hotskills/backspace-shmackspace-claude-devkit checkout --detach 7d11c4a8aa4be142a6ea4792604f8a7b39f0d789
# Copy each selected skill directory from .hotskills/backspace-shmackspace-claude-devkit into .claude/skills/<skill-name>/git clone --filter=blob:none --no-checkout https://github.com/backspace-shmackspace/claude-devkit.git .hotskills/backspace-shmackspace-claude-devkit && git -C .hotskills/backspace-shmackspace-claude-devkit checkout --detach 7d11c4a8aa4be142a6ea4792604f8a7b39f0d789
# Copy each selected skill directory from .hotskills/backspace-shmackspace-claude-devkit into .gemini/skills/<skill-name>/Heat
0.3- Star growth, last 7 daysNot available
- Star growth, last 24 hoursNot available
- Rank movement, last 7 daysNot available
- Commits, last 30 daysNot available
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekNot available
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
- journal
contrib/journal - journal-recall
contrib/journal-recall - journal-review
contrib/journal-review - ai-code-review
skills/ai-code-review - architect
skills/architect - audit
skills/audit - build-yaml-misconfiguration
skills/build-yaml-misconfiguration - client-side-security
skills/client-side-security - compliance-check
skills/compliance-check - container-hardening
skills/container-hardening - dependency-audit
skills/dependency-audit - fix
skills/fix - input-validation-injection
skills/input-validation-injection - receiving-code-review
skills/receiving-code-review - retro
skills/retro - secrets-scan
skills/secrets-scan - secure-review
skills/secure-review - semgrep
skills/semgrep - ship
skills/ship - sync
skills/sync - threat-model
skills/threat-model - threat-model-gate
skills/threat-model-gate - verification-before-completion
skills/verification-before-completion
How it works
journal
When your agent uses it
Write entries to the Obsidian work journal. Creates daily logs, meeting notes, project updates, learnings, and decision records. Use when the user says "journal", "log", "daily entry", "meeting notes", "learning", "decision", "ADR", "capture this", "write down", "record this", or wants to document work for future reference.
What it loads into context
Frontmatter
102 tokensAlways available to the agent
SKILL.md
3,846 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Inputs
- Step 0 — Determine Entry Type
- Step 1 — Validate Path and Load Template
- Step 2 — Check Existing File
- Step 3 — Write Entry
- Step 4 — Cross-Link
- Step 5 — Confirm and Report
- Embedded Templates
- Gotchas / Pitfalls
- Related Concepts
- References
- Application
- Timestamped Artifacts
- Bounded Iterations
- Archive on Success
Files
SKILL.mdcore15,720 bytesSKILL.mdcore15,720 bytes
Read SKILL.md
# /journal Workflow
## Inputs
**User provides:**
- Natural language description of what to journal (content, context, topic)
- Optional: explicit entry type (daily, meeting, project, learning, decision)
- Optional: project name, topic name, or meeting title
**Scope parameters:**
- `JOURNAL_BASE`: `~/journal/` (hardcoded, user can modify in skill file if needed)
- `TEMPLATES_DIR`: `~/journal/templates/` (on-disk templates override embedded defaults)
- Supported entry types: daily, meeting, project, learning, decision, biweekly-update
View the complete source on GitHubjournal-recall
When your agent uses it
Search, retrieve, and summarize past journal entries. Use when the user says "what did I", "recall", "look up", "find in journal", "journal search", "last week", "weekly review", "what happened on", "summarize my week", "what have I been working on", "review my journal", or asks about past work, decisions, meetings, or notes.
What it loads into context
Frontmatter
111 tokensAlways available to the agent
SKILL.md
1,805 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Inputs
- Step 0 — Classify Intent
- Step 1 — Retrieve Entries
- Step 2 — Present Results
- Step 3 — Handle Missing Data
- Timestamped Artifacts
- Bounded Iterations
- Archive on Success
Files
SKILL.mdcore7,571 bytes
Read SKILL.md
# /journal-recall Workflow
## Inputs
**User provides:**
- Natural language query describing what to find (date, keyword, topic, project, etc.)
- Optional: date range, entry type filter, project name
**Scope parameters:**
- `JOURNAL_BASE`: `~/journal/` (hardcoded, matches /journal skill)
- Entry types: daily, meetings, projects, learnings, decisions
- Search modes: date lookup, date range, keyword search, topic search, project filter, weekly review
## Step 0 — Classify IntentView the complete source on GitHubjournal-review
When your agent uses it
Periodic journal review — scans daily entries to surface unlogged decisions, unlogged learnings, untracked action items, and recurring themes. Use when the user says "journal audit", "review my entries for promotion", "extract decisions", "unlogged items", "what should I formalize", "untracked items", or wants to promote daily notes into formal entries. NOT for weekly summaries — use /journal-recall for "weekly review" or "review my journal".
What it loads into context
Frontmatter
122 tokensAlways available to the agent
SKILL.md
4,397 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Inputs
- Step 0 — Configure Review Period
- Step 1 — Scan Daily and Meeting Entries
- Step 2 — Extract Candidates
- Step 3 — Cross-Reference Existing Entries
- Step 4 — Present Candidates and Get Approval
- Step 5 — Create Approved Entries
- Embedded Templates
- Gotchas / Pitfalls
- Related Concepts
- References
- Application
Files
SKILL.mdcore18,510 bytesSKILL.mdcore18,510 bytesSKILL.mdcore18,510 bytesSKILL.mdcore18,510 bytesSKILL.mdcore18,510 bytesSKILL.mdcore18,510 bytesSKILL.mdcore18,510 bytesSKILL.mdcore18,510 bytesSKILL.mdcore18,510 bytesSKILL.mdcore18,510 bytes
Read SKILL.md
# /journal-review Workflow
## Inputs
**User provides:**
- Review period: "this week", "last week", "last N days", "this sprint", a date range (YYYY-MM-DD to YYYY-MM-DD), or omitted (defaults to "this week")
- Optional: category filter (decisions, learnings, actions, themes, or all)
**Scope parameters:**
- `JOURNAL_BASE`: `~/journal/` (hardcoded, matches /journal and /journal-recall skills)
- `REVIEW_CATEGORIES`: decisions, learnings, actions, themes
- `DECISION_SIGNALS`: "decided", "chose", "went with", "opted for", "tradeoff", "picked", "selected", "decision:"
- `LEARNING_SIGNALS`: "learned", "discovered", "figured out", "TIL", "gotcha", "insight", "realization", "aha"
- `ACTION_SIGNALS`: "- [ ]", "TODO", "follow up", "need to", "action item", "next step"View the complete source on GitHubai-code-review
When your agent uses it
Security-focused review of AI-generated or AI-assisted code. Use when reviewing code produced by AI coding assistants, auditing AI-generated patches, verifying AI-assisted contributions before merge, or when a review needs to account for failure modes specific to AI code generation.
What it loads into context
Frontmatter
87 tokensAlways available to the agent
SKILL.md
1,902 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to Use
- When NOT to Use
- AI-Specific Failure Modes
- Review Checklist
- Output Format
- Relationship to Other Skills
Files
SKILL.mdcore8,710 bytes
Read SKILL.md
# AI-Generated Code Security Review
Security review checklist and methodology for code produced by AI
coding assistants (Claude, Copilot, Cursor, Gemini, or any LLM-based
tool). AI-generated code has characteristic failure modes that differ
from human-written code and require specific review attention.
## When to Use
- Reviewing PRs or patches marked with `Assisted-by:` or
`Generated-by:` attribution
- Auditing code known or suspected to be AI-generated
- As a supplementary checklist during any code review where AI
assistance was usedView the complete source on GitHubarchitect
When your agent uses it
Research and create a technical blueprint for a new feature.
What it loads into context
Frontmatter
36 tokensAlways available to the agent
SKILL.md
7,949 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Inputs
- Output Rules
- Step 0 — Pre-flight (optional)
- Step 1 — Context Discovery
- Discovered Project Context
- Step 2 — Architect drafts plan
- Step 3 — Red Team + Librarian + Feasibility review (parallel)
- Verdict: PASS or FAIL
- Findings
- Step 4 — Revision loop (conditional)
- Step 5 — Final verdict gate
Files
SKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytesSKILL.mdcore31,031 bytes
Read SKILL.md
# /architect Workflow
## Inputs
- Feature request: $ARGUMENTS
- Flags: `--fast` skips the red team review (use for low-risk changes)
## Output Rules
- **Always print full absolute paths** for all artifact references (plan files, review files, audit logs). This makes paths clickable in terminals like Warp. Use the resolved `$PLANS_DIR` value, never relative paths like `./plans/`.
## Step 0 — Pre-flight (optional)
**Resolve devkit paths (MUST be first action in Step 0):**
Tool: `Bash`
View the complete source on GitHubaudit
When your agent uses it
Deep security and performance scan with structured reporting.
What it loads into context
Frontmatter
34 tokensAlways available to the agent
SKILL.md
5,506 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Inputs
- Output Rules
- Role
- Step 1 — Determine scope
- Step 2 — Security scan
- Step 3 — Performance scan
- Step 4 — Anti-pattern scan (conditional)
- Step 5 — QA regression (conditional)
- Step 6 — Synthesis
- Step 7 — Gate
Files
SKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytesSKILL.mdcore21,409 bytes
Read SKILL.md
# /audit Workflow
## Inputs
- Scope: $ARGUMENTS (optional: "plan", "code", "full")
- `plan`: Audit a plan file before implementation
- `code`: Audit recent uncommitted changes (default)
- `full`: Full codebase scan
## Output Rules
- **Always print full absolute paths** for all artifact references (plan files, review files, audit logs). This makes paths clickable in terminals like Warp. Use the resolved `$PLANS_DIR` value, never relative paths.
## Role
You are the **audit coordinator**. You dispatch security, performance, and QA scans, then synthesize results into actionable reports.
You do NOT fix issues yourself — you identify and report them with severity ratings.
View the complete source on GitHubbuild-yaml-misconfiguration
When your agent uses it
Apply when reviewing or writing GitLab CI (.gitlab-ci.yml), Tekton pipeline/task YAML, or Containerfiles/Dockerfiles used in CI builds. Detects common misconfigurations that expose secrets, weaken isolation, skip security gates, grant excessive privileges, or produce insecure container images.
What it loads into context
Frontmatter
99 tokensAlways available to the agent
SKILL.md
4,014 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- GitLab CI (.gitlab-ci.yml)
- Tekton Pipelines
- Containerfile / Dockerfile Hardening
- Common Misconfigurations (Both Platforms)
- Implementation Checklist
- Test Plan
Files
SKILL.mdcore16,796 bytesSKILL.mdcore16,796 bytesSKILL.mdcore16,796 bytesSKILL.mdcore16,796 bytesSKILL.mdcore16,796 bytes
Read SKILL.md
# Build YAML Misconfiguration
Detect and prevent security misconfigurations in GitLab CI and Tekton pipeline definitions. Misconfigured build YAML is a common source of secret leakage, privilege escalation, and supply chain compromise.
## GitLab CI (.gitlab-ci.yml)
### Secret Exposure
- **Never hardcode secrets** in `.gitlab-ci.yml`, `variables:`, or `script:` blocks. Use CI/CD protected variables or an external vault.
- **Mask and protect variables**: set `masked: true` and `protected: true` on sensitive CI/CD variables. Masked variables are redacted from job logs.
- **Never echo secrets**: avoid `echo $SECRET`, `printenv`, `env`, or `set -x` in scripts that handle credentials. Debug output is stored in job logs.
- **Restrict variable scope**: use `protected: true` to limit variables to protected branches/tags only. Use environment scoping to restrict which jobs see which secrets.
- **Artifacts and caches**: never include files containing secrets (`.env`, credentials, tokens) in `artifacts:` or `cache:` paths. These are stored and downloadable.
View the complete source on GitHubclient-side-security
When your agent uses it
Apply when reviewing or writing browser-facing code that handles user input, renders HTML, sets cookies, or loads third-party scripts. Covers XSS, CSRF, CSP, clickjacking, XS-Leaks, and HTTP security headers.
What it loads into context
Frontmatter
85 tokensAlways available to the agent
SKILL.md
1,360 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- XSS Prevention (Context-Aware)
- DOM-based XSS and Dangerous Sinks
- Content Security Policy (CSP)
- CSRF Defense
- Clickjacking Defense
- Cross-Site Leaks (XS-Leaks) Controls
- Third-Party JavaScript
- HTML5, CORS, WebSockets, Storage
- HTTP Security Headers
- AJAX and Safe DOM APIs
- Implementation Checklist
- Test Plan
Files
SKILL.mdcore5,834 bytes
Read SKILL.md
# Client-Side Web Security
Protect browser clients against code injection, request forgery, UI redress, cross-site leaks, and unsafe third-party scripts with layered, context-aware controls.
## XSS Prevention (Context-Aware)
- **HTML context**: prefer `textContent`. If HTML is required, sanitize with a vetted library (e.g., DOMPurify) and strict allow-lists.
- **Attribute context**: always quote attributes and encode values.
- **JavaScript context**: do not build JS from untrusted strings; avoid inline event handlers; use `addEventListener`.
- **URL context**: validate protocol/domain and encode; block `javascript:` and data URLs where inappropriate.
- **Redirects/forwards**: never use user input directly for destinations; use server-side mapping (ID to URL) or validate against trusted domain allow-lists.
- **CSS context**: allow-list values; never inject raw style text from users.
Example sanitization:View the complete source on GitHubcompliance-check
When your agent uses it
Validate codebase against code-level compliance signals for regulatory frameworks (FedRAMP, FIPS, OWASP, SOC 2). Scoped to source code analysis only — not a compliance certification.
What it loads into context
Frontmatter
64 tokensAlways available to the agent
SKILL.md
3,688 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Output Rules
- Role
- Inputs
- Step 0 — Parse and validate framework arguments
- Step 1 — Parallel compliance scans (one per framework)
- Step 2 — Synthesis
- Step 3 — Verdict gate
- Step 4 — Archive on completion
Files
SKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytesSKILL.mdcore16,230 bytes
Read SKILL.md
# /compliance-check Workflow
## Output Rules
- **Always print full absolute paths** for all artifact references (plan files, review files, audit logs). This makes paths clickable in terminals like Warp. Use the resolved `$PLANS_DIR` value, never relative paths.
## Role
This skill is a **scan coordinator**. It orchestrates parallel compliance signal scans per requested framework, synthesizes findings, and produces a structured report with a PASS / PASS_WITH_NOTES / BLOCKED verdict. It checks **code-level signals only** — it does not verify organizational, infrastructure, or procedural controls.
This report is a development aid, not a compliance certification.
## Inputs
- Framework(s): $ARGUMENTS (required)
- `fedramp` — Federal Risk and Authorization Management Program code-level controlsView the complete source on GitHubcontainer-hardening
When your agent uses it
Harden container images and runtime configuration. Use when building, reviewing, or auditing Containerfiles, Dockerfiles, container compose files, or Kubernetes pod security settings.
What it loads into context
Frontmatter
70 tokensAlways available to the agent
SKILL.md
893 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Base Image Selection
- Minimize Installed Software
- Runtime Security
- Containerfile Linting
- Implementation Checklist
- References
Files
SKILL.mdcore3,662 bytesSKILL.mdcore3,662 bytesSKILL.mdcore3,662 bytes
Read SKILL.md
# Container Hardening
## Base Image Selection
- Use a **Universal Base Image (UBI)** from the official [Red Hat Container Registry](https://catalog.redhat.com/software/containers/search)
- Prefer **ubi-minimal** (`ubi8/ubi-minimal` or `ubi9/ubi-minimal`) to reduce attack surface
- Use the most up-to-date image available
### Image Tagging Strategy
| Source | Strategy |
|---|---|
| **Red Hat Catalog** | Omit floating tags to get the latest image; exception: Konflux project uses digest-based pinning with automated updates |
| **Non-Red Hat registries** | Pin the version or digest to ensure you use the intended image and not a tampered one |View the complete source on GitHubdependency-audit
When your agent uses it
Supply chain security audit — coordinates real CLI vulnerability scanners (npm audit, pip-audit, govulncheck, cargo audit, etc.) and synthesizes findings with license compliance and risk assessment.
What it loads into context
Frontmatter
66 tokensAlways available to the agent
SKILL.md
4,783 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Output Rules
- Role
- Inputs
- Step 0 — Pre-flight: detect manifest and scanner availability
- Step 1 — Read and parse manifest
- Step 2 — Invoke scanner
- Step 3 — LLM synthesis of scanner output
- Step 4 — License compliance check
- Step 6 — Generate consolidated report
- Step 7 — Verdict gate
Files
SKILL.mdcore18,921 bytesSKILL.mdcore18,921 bytesSKILL.mdcore18,921 bytesSKILL.mdcore18,921 bytesSKILL.mdcore18,921 bytesSKILL.mdcore18,921 bytesSKILL.mdcore18,921 bytesSKILL.mdcore18,921 bytesSKILL.mdcore18,921 bytesSKILL.mdcore18,921 bytes
Read SKILL.md
# /dependency-audit Workflow
## Output Rules
- **Always print full absolute paths** for all artifact references (plan files, review files, audit logs). This makes paths clickable in terminals like Warp. Use the resolved `$PLANS_DIR` value, never relative paths.
## Role
This skill is a **pipeline coordinator**. It orchestrates a sequential supply chain security workflow by delegating scanner invocation and synthesis to appropriate tools. It does NOT perform LLM-based CVE lookup — it coordinates real CLI scanners that use live vulnerability databases, then synthesizes their output. The LLM's training data has a knowledge cutoff and cannot reliably detect post-cutoff CVEs.
## Inputs
- Package manifest path or scope: $ARGUMENTS (optional — auto-detected if omitted)
- Supported: `package.json`, `requirements.txt`, `pyproject.toml`, `Pipfile`, `go.mod`, `Cargo.toml`, `pom.xml`, `Gemfile`
## Step 0 — Pre-flight: detect manifest and scanner availabilityView the complete source on GitHubfix
When your agent uses it
Apply targeted fixes for specific findings from code reviews, security reviews, QA reports, or audit scans.
What it loads into context
Frontmatter
45 tokensAlways available to the agent
SKILL.md
4,304 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Output Rules
- Role
- Inputs
- Step 0 — Parse and locate finding
- Step 1 — Scope the fix
- Step 2 — Dispatch coder
- Step 3 — Targeted verification
- Step 4 — Commit and archive
Files
SKILL.mdcore17,095 bytesSKILL.mdcore17,095 bytesSKILL.mdcore17,095 bytesSKILL.mdcore17,095 bytesSKILL.mdcore17,095 bytesSKILL.mdcore17,095 bytesSKILL.mdcore17,095 bytesSKILL.mdcore17,095 bytesSKILL.mdcore17,095 bytesSKILL.mdcore17,095 bytesSKILL.mdcore17,095 bytesSKILL.mdcore17,095 bytes
Read SKILL.md
# /fix Workflow
## Output Rules
- **Always print full absolute paths** for all artifact references (plan files, review files, audit logs). This makes paths clickable in terminals like Warp. Use the resolved `$PLANS_DIR` value, never relative paths.
## Role
This skill is a **pipeline coordinator**. It orchestrates a targeted fix workflow: parse a finding from a review artifact, scope the fix, dispatch a coder agent, run focused verification, and commit with traceability back to the source finding. It does NOT write code directly — it delegates implementation to a coder agent and verification to focused subagent tasks.
**Finding-driven, not plan-driven:** The finding IS the specification. No plan file required or generated.
**Supported artifacts:** Works with findings from both `/ship` artifacts (`.code-review.md`, `.secure-review.md`, `.qa-report.md`) and `/audit` artifacts (`audit-[timestamp].security.md`, `audit-[timestamp].performance.md`).
**Dry-run mode:** Supports `--dry-run` flag. Runs Steps 0-3 but skips Step 4 (commit). Changes remain in the working directory for manual review.
View the complete source on GitHubinput-validation-injection
When your agent uses it
Apply when reviewing or writing code that processes untrusted input, constructs queries or commands, or handles user-supplied data. Covers SQL, LDAP, OS command injection, prototype pollution, and general validation strategy.
What it loads into context
Frontmatter
81 tokensAlways available to the agent
SKILL.md
1,055 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core Strategy
- Validation Playbook
- SQL Injection Prevention
- LDAP Injection Prevention
- OS Command Injection Defense
- Query Parameterization Guidance
- Prototype Pollution (JavaScript)
- Caching and Transport
- Implementation Checklist
- Test Plan
Files
SKILL.mdcore4,976 bytes
Read SKILL.md
# Input Validation and Injection Defense
Ensure untrusted input is validated and never interpreted as code. Prevent injection across SQL, LDAP, OS commands, templating, and JavaScript runtime object graphs.
## Core Strategy
- Validate early at trust boundaries with positive (allow-list) validation and canonicalization.
- Treat all untrusted input as data, never as code. Use safe APIs that separate code from data.
- Parameterize queries/commands; escape only as last resort and context-specific.
## Validation Playbook
- **Syntactic validation**: enforce format, type, ranges, and lengths for each field.
- **Semantic validation**: enforce business rules (e.g., start <= end date, enum allow-lists).View the complete source on GitHubreceiving-code-review
When your agent uses it
Use when receiving code review feedback, before implementing suggestions, especially if feedback seems unclear or technically questionable - requires technical rigor and verification, not performative agreement or blind implementation
What it loads into context
Frontmatter
78 tokensAlways available to the agent
SKILL.md
1,471 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Core Principle
- The Response Pattern
- Forbidden Responses
- Handling Unclear Feedback
- Source-Specific Handling
- YAGNI Check for "Professional" Features
- Implementation Order
- When to Push Back
- Acknowledging Correct Feedback
- Gracefully Correcting Your Pushback
- Common Mistakes
- Real Examples
- GitHub Thread Replies
- The Bottom Line
Files
SKILL.mdcore6,190 bytes
Read SKILL.md
# Code Review Reception
## Overview
Code review requires technical evaluation, not emotional performance.
## Core Principle
Verify before implementing. Ask before assuming. Technical correctness over social comfort.
## The Response Pattern
```
WHEN receiving code review feedback:View the complete source on GitHubretro
When your agent uses it
Mine review artifacts for recurring patterns and write project learnings.
What it loads into context
Frontmatter
37 tokensAlways available to the agent
SKILL.md
5,036 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Inputs
- Output Rules
- Role
- Step 0 — Determine scope and discover artifacts
- Step 1 — Scan: Coder calibration (parallel with Steps 2, 3)
- Step 5 — Write learnings and verdict gate
- Step 6 -- Cross-project learnings mining (mine scope only)
Scripts executed separately
../../scripts/learnings_promotions.py
Files
../../scripts/learnings_promotions.pyruns16,904 bytesSKILL.mdcore20,444 bytesSKILL.mdcore20,444 bytesSKILL.mdcore20,444 bytesSKILL.mdcore20,444 bytesSKILL.mdcore20,444 bytesSKILL.mdcore20,444 bytesSKILL.mdcore20,444 bytes
Read SKILL.md
# /retro Workflow
## Inputs
- Scope: $ARGUMENTS (optional: "recent", "full", "mine", or a feature name)
- `recent`: Last 3 archived features (default)
- `full`: All archived features
- `mine`: Cross-project learnings mining (skips Steps 0-5, proceeds to Step 6)
- `<name>`: Single feature archive (e.g., "add-user-auth")
## Output Rules
- **Always print full absolute paths** for all artifact references (plan files, review files, audit logs). This makes paths clickable in terminals like Warp. Use the resolved `$PLANS_DIR` value, never relative paths.
## Role
You are the **retro coordinator**. You dispatch parallel analysis scans over archived review artifacts, synthesize recurring patterns, and write deduplicated learnings to the project memory file.
You do NOT fix code or modify agents — you extract and record patterns.View the complete source on GitHubsecrets-scan
When your agent uses it
Pre-commit secrets detection with pattern-based scanning for API keys, tokens, passwords, private keys, and connection strings. Self-contained — no external tools required.
What it loads into context
Frontmatter
59 tokensAlways available to the agent
SKILL.md
5,594 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Output Rules
- Role
- Inputs
- Step 0 — Pre-flight checks
- Step 1 — Determine scan scope and collect target content
- Step 2 — Pattern-based secret detection
- Step 3 — False positive filtering
- Summary
- False Positives Excluded
- Recommendations
Files
SKILL.mdcore19,423 bytesSKILL.mdcore19,423 bytesSKILL.mdcore19,423 bytesSKILL.mdcore19,423 bytesSKILL.mdcore19,423 bytesSKILL.mdcore19,423 bytesSKILL.mdcore19,423 bytesSKILL.mdcore19,423 bytes
Read SKILL.md
# /secrets-scan Workflow
## Output Rules
- **Always print full absolute paths** for all artifact references (plan files, review files, audit logs). This makes paths clickable in terminals like Warp. Use the resolved `$PLANS_DIR` value, never relative paths.
## Role
This skill is a **pipeline coordinator**. It orchestrates a sequential secrets detection workflow using pattern-based scanning. It delegates grep/regex scanning to Bash and synthesis to analysis tasks. It does NOT require external tools like trufflehog or gitleaks — all scanning uses built-in grep patterns, making it self-contained and deployable anywhere Claude Code runs.
**Zero tolerance policy:** Any confirmed secret detected results in a BLOCKED verdict. There is no passing threshold — secrets in code are a critical finding.
**Report redaction rule:** This skill NEVER includes actual secret values in reports. Reports show secret type, file path, and line number only. Pattern matches are redacted to show type and location: e.g., "AWS Access Key at `src/config.js:42`".
## Inputs
View the complete source on GitHubsecure-review
When your agent uses it
Deep semantic security review of code changes with data flow tracing, taint analysis, and trust boundary validation. Composable building block invoked by /audit when deployed.
What it loads into context
Frontmatter
58 tokensAlways available to the agent
SKILL.md
4,767 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Output Rules
- Role
- Inputs
- Step 0 — Determine scope and check for security-analyst agent
- Step 1 — Parallel security scans (vulnerability, data flow, auth/authz)
- Step 2 — Synthesis
- Step 3 — Verdict gate
- Step 4 — Archive on completion
Files
SKILL.mdcore20,346 bytesSKILL.mdcore20,346 bytesSKILL.mdcore20,346 bytesSKILL.mdcore20,346 bytesSKILL.mdcore20,346 bytes
Read SKILL.md
# /secure-review Workflow
## Output Rules
- **Always print full absolute paths** for all artifact references (plan files, review files, audit logs). This makes paths clickable in terminals like Warp. Use the resolved `$PLANS_DIR` value, never relative paths.
## Role
This skill is a **scan coordinator**. It orchestrates parallel semantic security scans across three dimensions — vulnerability patterns, data flow and PII exposure, and authentication/authorization logic — then synthesizes findings into a structured security report with a PASS / PASS_WITH_NOTES / BLOCKED verdict. It does not fix issues; it identifies and categorizes them.
This skill is a composable building block. When deployed, `/audit` can dispatch it as its security scan component for deeper analysis.
## Inputs
- Scope: $ARGUMENTS (optional)
- `changes` — Uncommitted changes only (default)View the complete source on GitHubsemgrep
When your agent uses it
Run Semgrep static analysis scan on a codebase using parallel subagents. Supports two scan modes — "run all" (full ruleset coverage) and "important only" (high-confidence security vulnerabilities). Automatically detects and uses Semgrep Pro for cross-file taint analysis when available. Use when asked to scan code for vulnerabilities, run a security audit with Semgrep, find bugs, or perform static analysis. Spawns parallel workers for multi-language codebases.
What it loads into context
Frontmatter
129 tokensAlways available to the agent
SKILL.md
6,569 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Essential Principles
- When to Use
- When NOT to Use
- Output Directory
- Prerequisites
- Scan Modes
- Orchestration Architecture
- Workflow
- Rationalizations to Reject
- Reference Index
- Success Criteria
- Inlined: scan modes (upstream `reference/scan-modes.md`)
- Mode: Run All
- Mode: Important Only
- Inlined: scanner task prompt (upstream `reference/scanner-task-prompt.md`)
- Template
- Critical Rules
- Output
Files
SKILL.mdcore25,823 bytesSKILL.mdcore25,823 bytesSKILL.mdcore25,823 bytesSKILL.mdcore25,823 bytesSKILL.mdcore25,823 bytesSKILL.mdcore25,823 bytesSKILL.mdcore25,823 bytesSKILL.mdcore25,823 bytesSKILL.mdcore25,823 bytesSKILL.mdcore25,823 bytesSKILL.mdcore25,823 bytesSKILL.mdcore25,823 bytes
Read SKILL.md
# Semgrep Security Scan
Run a Semgrep scan with automatic language detection, parallel execution across language groups, and merged SARIF output.
## Essential Principles
1. **Always use `--metrics=off`** — Semgrep sends telemetry by default; `--config auto` also phones home. Every `semgrep` command must include `--metrics=off` to prevent data leakage during security audits.
2. **User must approve the scan plan (Step 3 is a hard gate)** — The original "scan this codebase" request is NOT approval. Present exact rulesets, target, engine, and mode; wait for explicit "yes"/"proceed" before running scanners.
3. **Third-party rulesets are required, not optional** — Trail of Bits, 0xdea, and Decurity rules catch vulnerabilities absent from the official registry. Include them whenever the detected language matches.
4. **Run all scan workers in parallel** — Parallel execution is the core performance advantage. Do not run language scans strictly one-after-another when independence allows overlap.
5. **Always check for Semgrep Pro before scanning** — Pro enables cross-file taint tracking and catches ~250% more true positives. Skipping the check means silently missing critical inter-file vulnerabilities.
## When to Use
View the complete source on GitHubship
When your agent uses it
Execute an approved plan using unattended implementation and validation with worktree isolation.
What it loads into context
Frontmatter
39 tokensAlways available to the agent
SKILL.md
19,127 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Inputs
- Output Rules
- Role
- Step 0 — Pre-flight checks
- Step 1 — Coordinator reads plan
- Step 2 — Pattern Validation (warnings only)
- Step 3 — Implementation (with worktree isolation)
- Step 4 — Parallel verification
- Step 5 — Revision loop (conditional)
- Step 6 — Commit gate
- Step 7 — Retro capture (post-commit, non-blocking)
Scripts executed separately
../../scripts/deploy.sh
Files
../../scripts/deploy.shruns11,534 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytesSKILL.mdcore72,897 bytes
Read SKILL.md
# /ship Workflow
## Inputs
- Plan file: $ARGUMENTS # Full path, or bare plan name (e.g. "cross-repo-plan-support")
## Output Rules
- **Always print full absolute paths** for all artifact references (plan files, review files, audit logs). This makes paths clickable in terminals like Warp. Use the resolved `$PLANS_DIR` value, never relative paths.
## Role
You are the **work coordinator**. You dispatch work to agents and check their results.
You do NOT write code, explore the codebase, or run tests yourself — agents do that.
Your job: read the plan once, dispatch each step, check verdicts, gate progression.
## Step 0 — Pre-flight checks
View the complete source on GitHubsync
When your agent uses it
Synchronize CLAUDE.md and README with recent code changes.
What it loads into context
Frontmatter
38 tokensAlways available to the agent
SKILL.md
1,492 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Inputs
- Output Rules
- Role
- Step 1 — Detect changes
- Step 2 — Detect new environment variables
- Step 3 — Librarian review
- Verdict
- Required Updates
- Suggested Updates
- Rationale
- Step 4 — Update documentation (conditional)
- Step 5 — Verification
- Step 6 — Archive review
Files
SKILL.mdcore5,769 bytesSKILL.mdcore5,769 bytesSKILL.mdcore5,769 bytesSKILL.mdcore5,769 bytes
Read SKILL.md
# /sync Workflow
## Inputs
- Scope: $ARGUMENTS (optional: "recent", "full")
- `recent`: Last 5 commits (default)
- `full`: Full codebase scan
## Output Rules
- **Always print full absolute paths** for all artifact references (plan files, review files, audit logs). This makes paths clickable in terminals like Warp. Use the resolved `$PLANS_DIR` value, never relative paths.
## Role
You are the **documentation coordinator**. You detect changes, delegate review to the librarian, and present diffs for user approval.
You do NOT make documentation changes yourself — you coordinate the process.
## Step 1 — Detect changesView the complete source on GitHubthreat-model
When your agent uses it
Use when performing threat modeling for a project, feature, or system architecture. Applies STRIDE threat categorization with DREAD risk rating to produce structured threat models in OTM JSON and markdown formats. Covers system decomposition, trust boundary mapping, data flow analysis, per-subsystem threat identification, cross-cutting synthesis, and mitigation planning.
What it loads into context
Frontmatter
103 tokensAlways available to the agent
SKILL.md
12,680 tokensWhen the skill is activated
Reference documents
10,924 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core Principles
- Rationalizations (Do Not Skip)
- Quick Reference
- Three-Phase Workflow
- DREAD Scoring Guide
- STRIDE Deep Reference
- MITRE ATT&CK Mapping Guidance
- OTM Output Specification
- Verification Checklist
- Integration with Other Skills
- When NOT to Use This Skill
- Example Usage
- Supporting Documentation
- Regulatory Considerations
Files
SKILL.mdcore57,230 bytesSKILL.mdcore57,230 bytesSKILL.mdcore57,230 bytesSKILL.mdcore57,230 bytesSKILL.mdcore57,230 bytesSKILL.mdcore57,230 bytesreference/otm-schema.mddoc28,758 bytesreference/report-template.mddoc14,291 bytes
Read SKILL.md
# Threat Modeling
Structured threat identification and risk assessment for software systems
using STRIDE threat categorization and DREAD risk rating, producing both
machine-readable Open Threat Model (OTM) JSON and human-readable markdown
reports.
## Core Principles
1. **Risk-First**: Focus analysis effort on high-value assets and exposed
trust boundaries. Not every component warrants equal analysis depth --
prioritize by data sensitivity and exposure.
2. **Evidence-Based**: Every identified threat must be backed by specificView the complete source on GitHubthreat-model-gate
When your agent uses it
Use when planning security-sensitive features — authentication, authorization, data handling, API design, cryptography, or network configuration — requires explicit threat modeling before implementation decisions are made
What it loads into context
Frontmatter
78 tokensAlways available to the agent
SKILL.md
3,106 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Core Principle
- When to Activate
- The Threat Modeling Checklist
- STRIDE Quick Reference
- DREAD Risk Rating Reference
- Security Requirements Template for Plans
- Anti-Patterns
- How to Apply During Planning
- Relationship to Other Skills
- Full Threat Modeling Methodology
- The Bottom Line
Files
SKILL.mdcore14,069 bytesSKILL.mdcore14,069 bytes
Read SKILL.md
# Threat Model Gate
## Overview
Security cannot be added later. Features that touch user data, system boundaries, or trust relationships require threat modeling during planning — not after code is written.
## Core Principle
**Every feature that handles user data, authentication, or system boundaries requires explicit threat modeling before implementation.**
"We'll secure it in the next sprint" is a commitment that never gets honored. The cost of retrofitting security is 10x the cost of designing it in. Threat modeling during planning is the minimum viable security practice.
## When to Activate
View the complete source on GitHubverification-before-completion
When your agent uses it
Use when about to claim work is complete, before committing or creating PRs - requires fresh verification evidence before any completion claim. Triggers on phrases like "done", "finished", "ready to commit", "all tests pass", "looks good", "should work", "I think that's it".
What it loads into context
Frontmatter
105 tokensAlways available to the agent
SKILL.md
1,910 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- The Iron Law
- The Gate Function
- What Each Claim Requires
- Red Flags -- STOP and Go Back to Step 2
- Common Rationalizations
- Key Patterns
- When to Apply This Gate
- Relationship to Other Skills
- The Bottom Line
Files
SKILL.mdcore7,965 bytes
Read SKILL.md
# Verification Before Completion
## Overview
Every completion claim requires fresh evidence. No exceptions.
## The Iron Law
**NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE.**
"I believe it works" is not evidence. "The tests passed at 14:32" is evidence.
If you have not run verification commands in this session and read their output, you have not verified.
View the complete source on GitHubSkills included
- journal
- journal-recall
- journal-review
- ai-code-review
- architect
- audit
- build-yaml-misconfiguration
- client-side-security
- compliance-check
- container-hardening
- dependency-audit
- fix
- input-validation-injection
- receiving-code-review
- retro
- secrets-scan
- secure-review
- semgrep
- ship
- sync
- threat-model
- threat-model-gate
- verification-before-completion
Repository facts
- License
- MIT
- Created
- Mar 10, 2026
- Last pushed
- Aug 24, 2026
- Forks
- 2
- Open issues
- 1
- Project activity
- Slowing
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 6, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 224 notes
contrib/journal/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedcontrib/journal-review/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedcontrib/journal-review/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedcontrib/journal-review/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedcontrib/journal-review/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedcontrib/journal-review/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedcontrib/journal-review/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedcontrib/journal-review/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedcontrib/journal-review/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedcontrib/journal-review/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/architect/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/architect/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/architect/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/architect/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/architect/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/architect/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/architect/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/architect/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/architect/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/architect/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- 30 dangerous shell commandsin 8 files: scripts/deploy.sh:72 ship/SKILL.md:106 architect/SKILL.md:181 and 5 more
- 62 network referencesin 8 files: semgrep/SKILL.md:77 threat-model/reference/otm-schema.md:18 build-yaml-misconfiguration/SKILL.md:110 and 5 more
- No hidden or obfuscated text
- No instruction overrides
- 2 executable scriptsin 2 files: scripts/deploy.sh:1 scripts/learnings_promotions.py:1
- 19 references to secretsin 4 files: build-yaml-misconfiguration/SKILL.md:151 ship/SKILL.md:130 secrets-scan/SKILL.md:177 and 1 more
- No requests to vote in Hot
Show all 113 signals by file
scripts/deploy.sh
- Executable scriptline 1
#!/usr/bin/env bash - Dangerous shell operationline 72
rm -f "$checksums_tmp" - Dangerous shell operationline 73
for f in "${deployed_files[@]}"; do rm -f "$f"; done - Dangerous shell operationline 81
rm -f "$checksums_tmp" - Dangerous shell operationline 82
for f in "${deployed_files[@]}"; do rm -f "$f"; done - Dangerous shell operationline 88
rm -f "$checksums_tmp" "$dst_tmp" - Dangerous shell operationline 89
for f in "${deployed_files[@]}"; do rm -f "$f"; done - Dangerous shell operationline 95
rm -f "$checksums_tmp" "$dst_tmp" - Dangerous shell operationline 96
for f in "${deployed_files[@]}"; do rm -f "$f"; done - Dangerous shell operationline 154
rm -rf "$dst/reference" - Dangerous shell operationline 182
rm -rf "$dst/reference" - Dangerous shell operationline 199
# NOTE: rm -rf is not in the Claude Code global allowlist (~/.claude/settings.json) - Dangerous shell operationline 201
rm -rf "$target"
scripts/learnings_promotions.py
skills/architect/SKILL.md
- Dangerous shell operationline 181
eval "TARGET_PATH=\$DEVKIT_TARGET_${i}_PATH" - Dangerous shell operationline 182
eval "TARGET_NAME=\$DEVKIT_TARGET_${i}_NAME" - Dangerous shell operationline 183
eval "TARGET_ID=\$DEVKIT_TARGET_${i}_ID" - Dangerous shell operationline 681
rm -f ".architect-audit-state-${RUN_ID}.json"
skills/audit/SKILL.md
- Dangerous shell operationline 577
rm -f ".audit-audit-state-${RUN_ID}.json"
skills/build-yaml-misconfiguration/SKILL.md
- Network accessline 110
# RISKY -- remote include with no version pinning include: - remote: 'https://example.com/ci-templates/build.yml' - Network accessline 112
- remote: 'https://example.com/ci-templates/build.yml' - Network accessline 136
[Credential-related source omitted] - Network accessline 138
[Credential-related source omitted] - Network accessline 149
[Credential-related source omitted] - Network accessline 151
[Credential-related source omitted] - Access to secretsline 151
[Credential-related source omitted] - Access to secretsline 265
[Credential-related source omitted] - Access to secretsline 266
[Credential-related source omitted] - Access to secretsline 269
[Credential-related source omitted] - Access to secretsline 270
[Credential-related source omitted] - Access to secretsline 271
[Credential-related source omitted] - Access to secretsline 315
[Credential-related source omitted] - Network accessline 330
EXPOSE 8080 HEALTHCHECK --interval=30s --timeout=3s \ CMD curl -f http://localhost:8080/healthz || exit 1 - Network accessline 331
HEALTHCHECK --interval=30s --timeout=3s CMD curl -f http://localhost:8080/healthz || exit 1 - Network accessline 332
CMD curl -f http://localhost:8080/healthz || exit 1 - Access to secretsline 346
[Credential-related source omitted] - Dangerous shell operationline 350
| `RUN chmod 777` | World-writable files in image | Use specific permissions (`chmod 755`) |
skills/client-side-security/SKILL.md
- Network accessline 83
<script src="https://cdn.vendor.com/app.js"
skills/container-hardening/SKILL.md
- Network accessline 13
- Use a **Universal Base Image (UBI)** from the official [Red Hat Container Registry](https://catalog.redhat.com/software/containers/search) - Network accessline 79
Use [Hadolint](https://github.com/hadolint/hadolint) to lint Containerfiles for best-practice violations and inline bash issues: - Network accessline 102
- [Red Hat Container Registry](https://catalog.redhat.com/software/containers/search) - Network accessline 103
- [Understanding the UBI minimal images](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html-single/building_running_and_managing_containers/index#con_understanding-the-ubi-minimal-images_assembly_types-of-containe - Network accessline 104
- [Hadolint](https://github.com/hadolint/hadolint) - Network accessline 105
- [Container Hardening Guide](https://docs.engineering.redhat.com/pages/viewpage.action?spaceKey=PLATSEC&title=Container+Hardening+Guide) - Network accessline 106
- [Docker Capabilities and no-new-privileges](https://raesene.github.io/blog/2019/06/01/docker-capabilities-and-no-new-privs/)
skills/dependency-audit/SKILL.md
- Network accessline 158
Go: go install golang.org/x/vuln/cmd/govulncheck@latest Rust: cargo install cargo-audit Java: Apache Maven required (https://maven.apache.org) - Network accessline 159
Rust: cargo install cargo-audit Java: Apache Maven required (https://maven.apache.org) Ruby: gem install bundler-audit - Network accessline 160
Java: Apache Maven required (https://maven.apache.org)
skills/fix/SKILL.md
- Dangerous shell operationline 207
rm -f BLOCKED.md
skills/secrets-scan/SKILL.md
- Dangerous shell operationline 126
rm -f "$FILELIST_TMP" "$FILELIST_FILTERED_TMP" 2>/dev/null - Access to secretsline 177
[Credential-related source omitted] - Dangerous shell operationline 213
[Credential-related source omitted] - Access to secretsline 224
[Credential-related source omitted] - Access to secretsline 288
[Credential-related source omitted] - Network accessline 424
[Credential-related source omitted] - Network accessline 425
[Credential-related source omitted] - Network accessline 426
[Credential-related source omitted]
skills/semgrep/SKILL.md
- Network accessline 77
**Required:** Semgrep CLI (`semgrep --version`). If not installed, see [Semgrep installation docs](https://semgrep.dev/docs/getting-started/). - Network accessline 141
jq -s '{"version": "2.1.0", "$schema": "https://json.schemastore.org/sarif-2.1.0.json", "runs": [.[].runs[]]}' "$OUTPUT_DIR/raw"/*.sarif > "$OUTPUT_DIR/results/results.sarif" - Network accessline 333
- p/security-audit - p/secrets - https://github.com/trailofbits/semgrep-rules - Network accessline 335
- https://github.com/trailofbits/semgrep-rules - Network accessline 341
mkdir -p [OUTPUT_DIR]/repos # For each GitHub URL ruleset, clone into [OUTPUT_DIR]/repos/[name]: git clone --depth 1 https://github.com/org/repo [OUTPUT_DIR]/repos/repo-name - Network accessline 343
git clone --depth 1 https://github.com/org/repo [OUTPUT_DIR]/repos/repo-name - Dangerous shell operationline 358
[ -n "[OUTPUT_DIR]" ] && rm -rf [OUTPUT_DIR]/repos - Network accessline 522
| Languages | Source | Why Required | |-----------|--------|--------------| | Python, Go, Ruby, JS/TS, Terraform, HCL | [Trail of Bits](https://github.com/trailofbits/semgrep-rules) | Security audit patterns from real engagements (AGPLv3) | - Network accessline 523
|-----------|--------|--------------| | Python, Go, Ruby, JS/TS, Terraform, HCL | [Trail of Bits](https://github.com/trailofbits/semgrep-rules) | Security audit patterns from real engagements (AGPLv3) | | C, C++ | [0xdea](https://github.com - Network accessline 524
| Python, Go, Ruby, JS/TS, Terraform, HCL | [Trail of Bits](https://github.com/trailofbits/semgrep-rules) | Security audit patterns from real engagements (AGPLv3) | - Network accessline 525
| C, C++ | [0xdea](https://github.com/0xdea/semgrep-rules) | Memory safety, low-level vulnerabilities | - Network accessline 526
| Solidity, Cairo, Rust | [Decurity](https://github.com/Decurity/semgrep-smart-contracts) | Smart contract vulnerabilities, DeFi exploits | - Network accessline 527
| Go | [dgryski](https://github.com/dgryski/semgrep-go) | Additional Go-specific patterns | - Network accessline 528
| Android (Java/Kotlin) | [MindedSecurity](https://github.com/mindedsecurity/semgrep-rules-android-security) | OWASP MASTG-derived mobile security rules | - Network accessline 529
| Java, Go, JS/TS, C#, Python, PHP | [elttam](https://github.com/elttam/semgrep-rules) | Security consulting patterns | - Network accessline 530
| Dockerfile, PHP, Go, Java | [kondukto](https://github.com/kondukto-io/semgrep-rules) | Container and web app security | - Network accessline 531
| PHP, Kotlin, Java | [dotta](https://github.com/federicodotta/semgrep-rules) | Pentest-derived web/mobile app rules | - Network accessline 532
| Terraform, HCL | [HashiCorp](https://github.com/hashicorp-forge/semgrep-rules) | HashiCorp infrastructure patterns | - Network accessline 533
| Swift, Java, Cobol | [akabe1](https://github.com/akabe1/akabe1-semgrep-rules) | iOS and legacy system patterns | - Network accessline 534
| Java | [Atlassian Labs](https://github.com/atlassian-labs/atlassian-sast-ruleset) | Atlassian-maintained Java rules | - Network accessline 535
| Python, JS/TS, Java, Ruby, Go, PHP | [Apiiro](https://github.com/apiiro/malicious-code-ruleset) | Malicious code detection, supply chain | - Network accessline 546
Or browse the [Semgrep Registry](https://semgrep.dev/explore). - Network accessline 554
"javascript": ["p/javascript", "p/react", "p/nodejs"], "docker": ["p/dockerfile"], "third_party": ["https://github.com/trailofbits/semgrep-rules"] - Network accessline 555
"docker": ["p/dockerfile"], "third_party": ["https://github.com/trailofbits/semgrep-rules"] } - Network accessline 556
"third_party": ["https://github.com/trailofbits/semgrep-rules"]
skills/ship/SKILL.md
- Dangerous shell operationline 106
rm -f "$tracking_file" - Dangerous shell operationline 112
rm -f .ship-violations-*.tmp - Access to secretsline 130
[Credential-related source omitted] - Access to secretsline 132
[Credential-related source omitted] - Access to secretsline 149
[Credential-related source omitted] - Access to secretsline 330
[Credential-related source omitted] - Access to secretsline 331
[Credential-related source omitted] - Dangerous shell operationline 653
rm -f .ship-worktrees-${RUN_ID}.tmp - Dangerous shell operationline 945
echo " rm -rf /tmp/ship-*" - Dangerous shell operationline 949
rm -f .ship-worktrees-${RUN_ID}.tmp .ship-violations-${RUN_ID}.tmp - Access to secretsline 991
[Credential-related source omitted] - Access to secretsline 992
[Credential-related source omitted] - Dangerous shell operationline 1489
rm -f ".devkit-audit-logs/ship-${RUN_ID}.jsonl" - Dangerous shell operationline 1601
rm -f ".ship-audit-state-${RUN_ID}.json" - Dangerous shell operationline 1717
rm -f ".ship-audit-state-${RUN_ID}.json"
skills/threat-model/SKILL.md
skills/threat-model/reference/otm-schema.md
- Network accessline 18
- **Specification repository:** <https://github.com/iriusrisk/OpenThreatModel> - Network accessline 19
<https://github.com/iriusrisk/OpenThreatModel> - Network accessline 24
The OTM specification is created and maintained by [IriusRisk](https://www.iriusrisk.com/) and is licensed under the - Network accessline 25
[IriusRisk](https://www.iriusrisk.com/) and is licensed under the - Network accessline 34
Full license text: <https://creativecommons.org/licenses/by-sa/4.0/> - Network accessline 43
|----------|-------| | Schema version | `0.2.0` | | Source repository | `https://github.com/iriusrisk/OpenThreatModel` | - Network accessline 44
| Schema version | `0.2.0` | | Source repository | `https://github.com/iriusrisk/OpenThreatModel` | | Source tag | `0.2.0` (commit `6bcb2abe0ef8f992c1fbb18843bb66f659959e4b`) | - Network accessline 45
| Source repository | `https://github.com/iriusrisk/OpenThreatModel` | - Network accessline 164
"description": "High-level component layout showing trust boundaries", "repository": { "url": "https://wiki.example.com/arch/order-api-diagram.png" - Network accessline 165
"repository": { "url": "https://wiki.example.com/arch/order-api-diagram.png" } - Network accessline 166
"url": "https://wiki.example.com/arch/order-api-diagram.png" - Network accessline 900
Monitor the CycloneDX specification at <https://cyclonedx.org/capabilities/tm/> for updates. - Network accessline 901
<https://cyclonedx.org/capabilities/tm/> for updates.
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Signal confidence: 113 facts
- Executable script in code of a file that runsscripts/deploy.sh:1High confidence
- Dangerous shell operation in code of a file that runsscripts/deploy.sh:72High confidence
- Dangerous shell operation in code of a file that runsscripts/deploy.sh:73High confidence
- Dangerous shell operation in code of a file that runsscripts/deploy.sh:81High confidence
- Dangerous shell operation in code of a file that runsscripts/deploy.sh:82High confidence
- Dangerous shell operation in code of a file that runsscripts/deploy.sh:88High confidence
- Dangerous shell operation in code of a file that runsscripts/deploy.sh:89High confidence
- Dangerous shell operation in code of a file that runsscripts/deploy.sh:95High confidence
- Dangerous shell operation in code of a file that runsscripts/deploy.sh:96High confidence
- Dangerous shell operation in code of a file that runsscripts/deploy.sh:154High confidence
- Dangerous shell operation in code of a file that runsscripts/deploy.sh:182High confidence
- Dangerous shell operation in a comment of a file that runsscripts/deploy.sh:199Low confidence
- Dangerous shell operation in code of a file that runsscripts/deploy.sh:201High confidence
- Executable script in code of a file that runsscripts/learnings_promotions.py:1High confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuescripts/learnings_promotions.py:63Low confidence
- Dangerous shell operation in code of the SKILL.mdarchitect/SKILL.md:181High confidence
- Dangerous shell operation in code of the SKILL.mdarchitect/SKILL.md:182High confidence
- Dangerous shell operation in code of the SKILL.mdarchitect/SKILL.md:183High confidence
- Dangerous shell operation in code of the SKILL.mdarchitect/SKILL.md:681High confidence
- Dangerous shell operation in code of the SKILL.mdaudit/SKILL.md:577High confidence
- Network access in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:110High confidence
- Network access in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:112High confidence
- Network access in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:136High confidence
- Network access in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:138High confidence
- Network access in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:149High confidence
- Network access in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:151High confidence
- Access to secrets in code of the SKILL.md: a variable, placeholder or call, not a stored valuebuild-yaml-misconfiguration/SKILL.md:151Low confidence
- Access to secrets in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:265High confidence
- Access to secrets in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:266High confidence
- Access to secrets in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:269High confidence
- Access to secrets in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:270High confidence
- Access to secrets in code of the SKILL.md: a variable, placeholder or call, not a stored valuebuild-yaml-misconfiguration/SKILL.md:271Low confidence
- Access to secrets in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:315High confidence
- Network access in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:330High confidence
- Network access in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:331High confidence
- Network access in code of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:332High confidence
- Access to secrets in prose of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:346Low confidence
- Dangerous shell operation in prose of the SKILL.mdbuild-yaml-misconfiguration/SKILL.md:350Low confidence
- Network access in code of the SKILL.mdclient-side-security/SKILL.md:83High confidence
- Network access in prose of the SKILL.mdcontainer-hardening/SKILL.md:13Low confidence
- Network access in prose of the SKILL.mdcontainer-hardening/SKILL.md:79Low confidence
- Network access in prose of the SKILL.mdcontainer-hardening/SKILL.md:102Low confidence
- Network access in prose of the SKILL.mdcontainer-hardening/SKILL.md:103Low confidence
- Network access in prose of the SKILL.mdcontainer-hardening/SKILL.md:104Low confidence
- Network access in prose of the SKILL.mdcontainer-hardening/SKILL.md:105Low confidence
- Network access in prose of the SKILL.mdcontainer-hardening/SKILL.md:106Low confidence
- Network access in code of the SKILL.mddependency-audit/SKILL.md:158High confidence
- Network access in code of the SKILL.mddependency-audit/SKILL.md:159High confidence
- Network access in code of the SKILL.mddependency-audit/SKILL.md:160High confidence
- Dangerous shell operation in code of the SKILL.mdfix/SKILL.md:207High confidence
and 63 more
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Path .claude/agents/code-reviewer-specialist.md | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md contrib/journal/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md contrib/journal/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Native | Path GEMINI.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md contrib/journal/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md contrib/journal/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.