Individual skill
vulnhunter-fix
Automate vulnerability remediation from VulnHunter scan results using TDD. Parses VulnHunter findings, writes exploit demos proving each vulnerability, writes security tests that define correct behavior (RED), implements fixes to pass those tests (GREEN), and delivers via PR or fallback GitHub issue. Each PR includes the exploit demo, failing-then-passing test, and fix. Use when the user says "/vulnhunter-fix", "fix the vulnerabilities", "remediate the findings", "apply the security fixes", "create PRs for the vuln fixes", or provides a GitHub repo URL alongside a VulnHunter results path.
vulnhunter-fix/SKILL.md
Source commit 6d25b5c58b7820809b391ecda6a102537effe3ba
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- Yes
- Repository scan complete
- No
- Skill scan complete
- No
- Observed behavior
- Network or broad shell
- Last checked
- Nov 3, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.
Repository context
- Repository stars (not skill ratings)
- 1,156
- Repository last updated
- Oct 7, 2026
- License
- Apache-2.0
Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
README.mddoc · 5,054 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytesSKILL.mdcore · 31,910 bytescollaborators.jsonasset · 93 bytesconfig.jsonasset · 2,181 bytesevals/evals.jsonasset · 3,368 bytesprompts/agent_fix.mddoc · 1,778 bytesprompts/deliver.mddoc · 32,104 bytesprompts/implement.mddoc · 38,928 bytesprompts/parse.mddoc · 2,657 bytesprompts/parse_issues.mddoc · 38,374 bytesprompts/plan.mddoc · 8,518 bytesprompts/plan_fork.mddoc · 3,367 bytesprompts/reviewer_test.mddoc · 2,672 bytesprompts/sweep.mddoc · 2,669 bytesprompts/tier_judgment.mddoc · 4,285 bytesprompts/verify.mddoc · 28,053 bytesprompts/worker_agent_authz.mddoc · 2,227 bytesprompts/worker_agent_common.mddoc · 25,299 bytesprompts/worker_agent_config.mddoc · 2,912 bytesprompts/worker_agent_crypto.mddoc · 2,719 bytesprompts/worker_agent_injection.mddoc · 2,354 bytesprompts/worker_agent_resource.mddoc · 2,079 bytespyproject.tomlasset · 2,503 bytesreferences/README.mddoc · 3,506 bytesreferences/anti-merge-math.mddoc · 2,264 bytesreferences/approved-crypto-algorithms.yamlasset · 2,471 bytesreferences/approved-key-sources.yamlasset · 2,134 bytesreferences/committed-test-naming-rule.mddoc · 2,044 bytesreferences/cwe-fix-patterns.mddoc · 6,980 bytesreferences/finding-schema.jsonasset · 2,285 bytesreferences/fix-completeness-rubric.mddoc · 4,645 bytesreferences/fix_plan-schema.jsonasset · 4,598 bytesreferences/idempotency-key-rule.mddoc · 1,442 bytesreferences/remediation-rigor.mddoc · 9,429 bytesreferences/repo-type-adapters.mddoc · 3,847 bytesreferences/residual-risk-rules.mddoc · 3,388 bytesreferences/result-schema.jsonasset · 10,475 bytesreferences/severity-mask-rule.mddoc · 2,002 bytesreferences/sweep-algorithm.mddoc · 3,392 bytesreferences/sweep-patterns.mddoc · 2,966 bytesreferences/test-quality-rubric.mddoc · 3,685 bytesreferences/triage-schema.jsonasset · 4,024 bytesreferences/verification-table-rules.mddoc · 3,812 bytesscripts/_skill_bootstrap.pyruns · 4,155 bytesscripts/anti-merge-check.pyruns · 3,317 bytesscripts/build_graph.pyruns · 7,061 bytesscripts/check-body-completeness.pyruns · 5,597 bytesscripts/check-committed-test-naming.pyruns · 7,125 bytesscripts/check-idempotency.pyruns · 1,551 bytesscripts/check-scope.pyruns · 3,597 bytesscripts/check-severity-mask.pyruns · 4,307 bytesscripts/check_repo_access.shruns · 943 bytesscripts/clone_repo.shruns · 3,863 bytesscripts/cluster_score.pyruns · 5,973 bytesscripts/compute-completeness-tier.pyruns · 9,872 bytesscripts/crypto-trust-chain-checkers.pyruns · 15,246 bytesscripts/detect_mode.shruns · 4,446 bytesscripts/heading-sync-lint.pyruns · 7,598 bytesscripts/issue_intake.pyruns · 7,262 bytesscripts/language-detect.pyruns · 4,570 bytesscripts/parse-tier-judgment.pyruns · 4,280 bytesscripts/parse_results.pyruns · 13,747 bytesscripts/pr-body-check.pyruns · 5,513 bytesscripts/preflight.pyruns · 16,722 bytesscripts/prompt-lint.pyruns · 2,133 bytesscripts/run-gates.pyruns · 12,770 bytesscripts/safe-phrase-sync-lint.pyruns · 1,875 bytesscripts/setup_worktree.shruns · 4,561 bytesscripts/sweep-root-causes.pyruns · 14,772 bytesscripts/validate-finding.pyruns · 2,297 bytesscripts/validate-fix-plan.pyruns · 2,474 bytesscripts/validate-result.pyruns · 2,013 bytesscripts/validate-triage.pyruns · 1,879 bytesscripts/validate-verification.pyruns · 11,321 bytesscripts/validate_findings_draft.pyruns · 5,992 bytesscripts/validate_pr_body.pyruns · 4,255 bytesscripts/worker-preamble-sync-lint.pyruns · 4,885 bytesscripts/worktree-reset.pyruns · 6,328 bytestemplates/commit_msg.mddoc · 391 bytestemplates/follow_up_issue.mddoc · 1,117 bytestemplates/issue_body.mddoc · 2,598 bytestemplates/pr_body.mddoc · 2,080 bytestemplates/pr_body_cluster.mddoc · 2,716 bytestemplates/residual_risk_section.mddoc · 1,099 bytestests/__init__.pyruns · 0 bytestests/conftest.pyruns · 1,555 bytestests/graph_fixtures/go/golden.graph.jsonasset · 1,128 bytestests/graph_fixtures/go/sample_auth.goruns · 869 bytestests/graph_fixtures/python/golden.graph.jsonasset · 1,163 bytestests/graph_fixtures/python/sample_auth.pyruns · 806 bytestests/test_branch_naming_helpers.pyruns · 4,322 bytestests/test_build_graph.pyruns · 5,995 bytestests/test_check_committed_test_naming.pyruns · 8,520 bytestests/test_cluster_score.pyruns · 7,672 bytestests/test_contract_end_to_end.pyruns · 16,067 bytestests/test_crypto_checkers.pyruns · 20,431 bytestests/test_detect_mode_sh.pyruns · 7,168 bytestests/test_gate2_cli_contract.pyruns · 4,026 bytestests/test_gate_scripts.pyruns · 15,037 bytestests/test_graph_build_bugs.pyruns · 8,754 bytestests/test_graph_fixture_regression.pyruns · 3,397 bytestests/test_graph_query.pyruns · 18,703 bytestests/test_hand_wave_guard.pyruns · 2,763 bytestests/test_issue_intake.pyruns · 13,725 bytestests/test_json_schema_validators.pyruns · 15,354 bytestests/test_lint_and_language.pyruns · 14,312 bytestests/test_llm_review_resolution.pyruns · 6,435 bytestests/test_parse_results.pyruns · 7,942 bytestests/test_pr_body_check.pyruns · 2,829 bytestests/test_preflight_in_place.pyruns · 10,542 bytestests/test_run_gates.pyruns · 15,555 bytestests/test_schema_repair_loop.pyruns · 3,848 bytestests/test_setup_worktree.pyruns · 8,338 bytestests/test_sweep_and_verification.pyruns · 30,137 bytestests/test_validate_findings_draft.pyruns · 5,998 bytestests/test_validate_pr_body.pyruns · 4,682 bytestests/test_worker_preamble_sync.pyruns · 2,999 bytestests/test_worktree_reset.pyruns · 6,078 bytesvulnhunter_fix/__init__.pyruns · 22 bytesvulnhunter_fix/delivery.pyruns · 13,702 bytesvulnhunter_fix/graph/__init__.pyruns · 699 bytesvulnhunter_fix/graph/build.pyruns · 12,753 bytesvulnhunter_fix/graph/config.pyruns · 4,473 bytesvulnhunter_fix/graph/fallback.pyruns · 5,336 bytesvulnhunter_fix/graph/query.pyruns · 11,250 bytesvulnhunter_fix/graph/schema.pyruns · 3,920 bytes
Read excerpt
# VulnFix — Automated Security Remediation via TDD
## Overview
VulnFix takes VulnHunter scan results and automates the full remediation lifecycle:
1. Parse findings from the report (or from `vulnhunter`-labeled issues in in-place mode)
2. Plan fix order and approach
3. For each vulnerability: write exploit demo → write failing test → implement fix → verify test passes
4. Deliver as PRs — to a private fork (fork mode) or to the same repo (in-place mode)
## Modes
The skill runs in one of two modes, dispatched automatically.