Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/tbeack-sec-review-fixes
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, testing, security
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/sec-review-fixes
What's inside
- Skill name
sec-review-fixes- Description
- Companion to `sec-review-team`. Takes the `REPORT.md` or `findings.jsonl` from a security review run and produces fix PRs (one per finding or one consolidated) with interactive approval. Each candidate finding becomes a proposed diff + a regression test that would have caught it + a commit/PR citing the finding ID. Filters by default to `severity IN (critical, high) AND confidence IN (certain, likely)`. Modes: interactive (default), `--dry-run` (produces a fix-plan document with no code changes), `--re-verify` (re-runs sec-review-team against a specific set of finding IDs and reports fixed / still-present / inconclusive). Safeguards: branch-only commits (never main), no force-push, clean-working-tree required, regression-test must pass before commit lands. Use when the user says "fix the security findings", "apply sec-review fixes", "open PRs for the security report", "re-verify the security fixes", or similar.
- License
- MIT
- Instructions
- 151 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# sec-review-fixes — Fix-Workflow Orchestration Companion to `sec-review-team`. Never applies a code change without explicit user approval. ## Step 0: Locate findings source Parse `$ARGUMENTS`: - **Source path** — either a `REPORT.md` or a `<agent>.findings.jsonl` file (or a directory containing them, e.g. `<target>/.planning/security-review/`). - If source is a directory, aggregate every `*.findings.jsonl` in it. - If source is `REPORT.md`, prefer the sibling `*.findings.jsonl` files if they exist (structured parse). Fall back to parsing the markdown if only the prose report is available. - **Mode:** - default = interactive - `--dry-run` = write a fix-plan markdown, no code changes - `--re-verify <id>...` = re-run sec-review-team on the specified finding IDs and report status (skip Steps 2–5) - **PR granularity:** `--one-pr` (all fixes in one PR) or `--pr-per-finding` (default for ≤ 3 fixes; for ≥ 4, default switches to one-PR to avoid PR storm). Do **not** operate on the source target repo yet. Just read metadata. ## Step 1: Filter candidate findings Apply default filter: - `severity IN (critical, high)` — medium/low need manual review first, they are not eligible for auto-fix. - `confidence IN (certain, likely)` — `possible`/`unverified` require human triage first; they are not eligible for auto-fix. - User may relax the filter explicitly (prompt: "N findings matched default filter. X additional findings available at lower severity/confidence — include them?"). For `--re-verify`, skip filtering; use the specified IDs literally. ## Step 2: Safety preflight Before touching any file, verify: 1. **Target git state:** Working tree clean (`git status --porcelain` empty). If dirty, abort with explanation. The user must stash/commit first. 2. **Current branch is NOT `main` / `master` / `trunk` / default-branch.** If it is, offer to create `sec-review-fix/<timestamp>` and switch. Never operate directly on default. 3. **No in-progress rebase / merge / cherry-pick** (`git status` shows no in-progress operation). 4. **Remote reachable** (if PR mode, not dry-run): `git ls-remote --exit-code origin` succeeds. 5. **`gh` CLI available and authenticated** (if PR mode). If any check fails, abort with a specific message. Never proceed past a failed safety check. ## Step 3: Per-finding fix authoring (spawn subagents in parallel) For each candidate finding, spawn a `fix-author` `Agent` with: - **Subagent type:** `general-purpose` (or a typed `code-writer` if available). - **Brief:** "Here is one security finding from sec-review-team: `<finding>`. The current state of the code at `<file>:<line_range>` is `<snippet>`. Produce (1) a diff that implements the `fix` field, (2) a regression test that would fail before the fix and pass after. Write to `<TARGET>/.planning/sec-review-fixes/<id>.diff` and `<id>.test.<ext>` respectively. Also write a one-paragraph commit message at `<id>.commit-msg.txt`." - **Allowed tools:** `Read`, `Grep`, `Glob`, read-only `Bash` allowlist. `Write` scoped to the three output paths only. **No `Edit` on target files** — the orchestrator applies diffs later, not the subagent. Subagents don't mutate target code. They produce candidate artifacts. ## Step 4: Interactive approval (one finding at a time) For each candidate: ``` ━━ Finding <id>: <title> ━━ Severity: <sev> Confidence: <conf> File: <file>:<line_range> Root issue: <root_issue> Exploit: <exploit> Proposed fix: <fix> Proposed diff: <diff contents> Proposed regression test: <test contents> Approve / edit-fix / skip / abort? [a/e/s/x] ``` - **a** (approve) — move to Step 5 for this finding. - **e** (edit-fix) — let the user type revised instructions; respawn the fix-author with the revised brief. - **s** (skip) — finding stays un-fixed; continue to next. - **x** (abort) — stop all further processing; do not apply any pending approved fixes that haven't been committed yet. Default if no response: treat as skip (never auto-approve). Exception: `--dry-run` skips this step entirely. The fix-plan is just the collected proposals. ## Step 5: Apply + test + commit + push + PR (per approved finding) **Still safeguarded.** Even after approval: 1. **Create or checkout the fix branch:** `sec-review-fix/<finding-id>` (for per-PR mode) or `sec-review-fix/<timestamp>` (for one-PR mode). Never operate on main. 2. **Apply the diff** via `git apply <id>.diff`. On failure: mark finding as `apply-failed`, do not commit, continue to next. 3. **Run the regression test.** How: detect target's test runner (`package.json scripts.test`, `cargo test`, `pytest`, `go test`, etc.) and invoke. The test must pass before proceeding. If it fails, revert (`git checkout -- <affected>`), mark as `regression-test-failed`, continue to next. 4. **Commit with message:** the contents of `<id>.commit-msg.txt`, plus a trailer `Fixes-finding: <id>` + `Ref: <source path of findings>`. Default commit message ends with `Co-Authored-By: Claude (sec-review-fixes) <noreply@anthropic.com>`. 5. **Push to origin** (for PR mode only). `git push -u origin <branch>`. 6. **Open PR** via `gh pr create`: - Title: `fix(security): <finding title>` - Body: full finding (exploit + fix + evidence), the regression test description, a checklist for the reviewer (manual verification + security implications + adjacent review). - Label: `security`, `sec-review-team`. Safeguards that stay on throughout: - **Never force-push.** - **Never push to main.** - **Never amend an existing commit.** - **Never modify `.git/` directly.** - If any safeguard tripping is requested, abort and surface it to the user. ## Step 6: Report Emit a summary table: | Finding | Status | PR | Branch | |---|---|---|---| | auth-001 | fixed + PR opened | #1234 | sec-review-fix/auth-001 | | iv-003 | skipped | — | — | | sc-001 | regression-test-failed | — | — | | de-002 | apply-failed | — | — | Print absolute paths to `.planning/sec-review-fixes/` artifacts for every candidate (even skipped ones, so the user can come back later). ## `--re-verify` mode
From tbeack/fsad_playbook, MIT.
More from tbeack/fsad_playbook
- 0.626score
plan
tbeack
Guide the user through planning a significant project, a large epic/initiative spanning multiple epics, or a codebase refactor.
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
set-context
tbeack
Gather codebase and initiative context before planning starts — runs a graphify build or query when graphify is available locally, falls back to a manual repo…
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
add-task
tbeack
Add a new task to any of your local projects.
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
code-review-team
tbeack
Run a multi-agent code review TEAM over a codebase diff or path.
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
init
tbeack
Initialize a new project with a standard directory structure, template files, and a git repository.
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
next
tbeack
Pick the next open task from the current project's todo file and invoke `/fsad-harness:do-task` with that task ID.
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
playbook-assistant
tbeack
Answer "how do I…" questions about FSAD strategies and practices using only the content already in the FSAD Playbook — no external knowledge.
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
prd
tbeack
Guide the user through writing a Product Requirements Document or feature spec.
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
sec-review-team
tbeack
Run a multi-agent security review TEAM over a codebase or recent diff.
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
plan-review
tbeack
Run a detailed, adversarial multi-agent review of an implementation plan — a GitHub PR, a branch, or a planning document — against the baseline spec, ADR, or…
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
ac
tbeack
Verify acceptance criteria for a task.
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
ship-it
tbeack
Wrap up a finished round of work — verify README and CHANGELOG are current, cut a version if warranted, move completed task files into the completed/ folder…
SkillAFreshness: A★ 8Claude Code +9
Signals
- Stars
- 8
- Forks
- 4
- Open issues
- 0
- Last commit (this folder)
- Oct 7, 2026 (21 days ago)
- Last release
- May 18, 2026 (5 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/tbeack/fsad_playbook
- Website
- fsad-playbook.vercel.app
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from tbeack
- 0.626score
set-context
tbeack
Gather codebase and initiative context before planning starts — runs a graphify build or query when graphify is available locally, falls back to a manual repo…
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
plan
tbeack
Guide the user through planning a significant project, a large epic/initiative spanning multiple epics, or a codebase refactor.
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
add-task
tbeack
Add a new task to any of your local projects.
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
init
tbeack
Initialize a new project with a standard directory structure, template files, and a git repository.
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
next
tbeack
Pick the next open task from the current project's todo file and invoke `/fsad-harness:do-task` with that task ID.
SkillAFreshness: A★ 8Claude Code +9 - 0.623score
code-review-team
tbeack
Run a multi-agent code review TEAM over a codebase diff or path.
SkillAFreshness: A★ 8Claude Code +9
Cite this page
sec-review-fixes skill. Agent Mart. https://agentmart.dev/skills/tbeack-sec-review-fixes (last updated 2026-10-24)