qa-gate
Run this project's full local quality gate (lint/typecheck/test commands from .harness/project.json) and report pass/fail.
Skill by PVMalove
Chalk Labs
Need help deploying qa-gate?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
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/pvmalove-qa-gate
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
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 and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/qa-gate
What's inside
- Skill name
qa-gate- Description
- Run this project's full local quality gate (lint/typecheck/test commands from .harness/project.json) and report pass/fail. Use before opening a PR, or whenever asked to run the full check/test suite.
- License
- MIT
- Instructions
- 37 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (2)
- SKILL.md
- test_summary.py · scripts/
SKILL.md (first lines)
Run this project's quality gate and report the result. Nothing else — no restating the commands, no unrelated commentary. 1. Find the harness root. It is the current checkout when it has `.harness/project.json`. A linked worktree lacks the gitignored `.harness/`: when the file is absent there, use the main worktree — the first `worktree` entry of `git worktree list --porcelain` — as the harness root. Take only `.harness/project.json` and `.harness/skills/qa-gate/scripts/test_summary.py` from it; run every command with the current checkout as the working directory, never the main worktree. Read `qa_gate_commands` from that `.harness/project.json` — an ordered list of shell commands (e.g. `["make check", "make test"]` or `["ruff check .", "mypy .", "pytest"]`). If the file or field is missing, tell the user to fill it in (run `harness init`/`update` again, or edit `.harness/project.json` directly) and stop. 2. Read the optional `shell` field from the same file — `"bash"` (or the field absent) means this checkout runs commands through bash (Linux, macOS, or a Windows checkout where `bash` on `PATH` is really Git Bash/WSL and not the System32 WSL launcher stub); `"powershell"` means run them through PowerShell instead — pick this on a native Windows checkout where a bare `bash` resolves to that stub and fails with no WSL distro configured, even for a command that needs no shell at all. Run each command in order through the installed agent-facing wrapper, choosing the shell argv accordingly: ```bash # shell: "bash" (default) python <harness-root>/.harness/skills/qa-gate/scripts/test_summary.py -- bash -lc '<exact command from qa_gate_commands>' # shell: "powershell" python <harness-root>/.harness/skills/qa-gate/scripts/test_summary.py -- powershell -NoProfile -NonInteractive -Command '<exact command from qa_gate_commands>' ``` `<harness-root>` is `.` in a normal checkout and the absolute path of the main worktree in a linked one. On the first failure, stop. Return the wrapper's bounded summary — status, pytest totals, failed node IDs, structured diagnostics (traceback endings, explicit error messages, and compiler/linter errors), and its sanitized local log path — rather than command output or an arbitrary tail of the log. Do not run the remaining commands. Read a failure log only when the developer needs that particular diagnostic evidence. The wrapper works with every quality command; do not add a pytest JSON/XML reporting flag unless that command already owns and documents that artifact. 3. If every command succeeds, record the pass marker yourself: run `bash "$CLAUDE_PROJECT_DIR/.claude/hooks/record-qa-gate-pass.sh"`. Don't rely on the `mark-qa-gate-passed.sh` PostToolUse hook alone for this — this skill runs forked (see `context: fork` above), and the hook isn't guaranteed to fire for Bash calls made inside that fork. 4. Report a compact one-line PASS summary only — do not paste the passing output.
From PVMalove/claude-agent-harness, MIT.
More from PVMalove/claude-agent-harness
- 0.619score
integrate-project
PVMalove
Audit an existing, already-substantial codebase and fold this harness into it without disrupting what's already there.
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
start-project
PVMalove
Start a new project from an idea or create, audit, or update its self-contained agent harness.
SkillAFreshness: A★ 5Claude Code +9 - 0.616score
to-pull-requests
PVMalove
Prepare and open a pull request for an already pushed issue branch.
SkillAFreshness: A★ 5Claude Code +9 - 0.616score
to-guide
PVMalove
Turn a hitl ticket or spec into a step-by-step manual implementation guide with ready-to-paste prompts for an AI IDE (Cursor, Copilot Chat).
SkillAFreshness: A★ 5Claude Code +9 - 0.616score
to-tickets
PVMalove
Break a plan, spec, or conversation into a set of tracer-bullet tickets with blocking edges, and publish them to the configured tracker.
SkillAFreshness: A★ 5Claude Code +9 - 0.616score
delivery-stats
PVMalove
Collect delivery statistics for a finished epic and every ticket under it: tokens by model, cache efficiency, estimated cost, subscription window and code…
SkillAFreshness: A★ 5Claude Code +9 - 0.616score
tdd
PVMalove
Use test-driven development to build behavior or fix bugs test-first, at agreed public seams, with independent expectations, deterministic boundaries, and a…
SkillAFreshness: A★ 5Claude Code +9 - 0.613score
fast-implement
PVMalove
Implement a piece of work in a single session, without the coordinator pipeline's approval gates.
SkillAFreshness: A★ 5Claude Code +9 - 0.613score
architect
PVMalove
Compare architectural options and produce a decision brief in an interactive session.
SkillAFreshness: A★ 5Claude Code +9 - 0.613score
implement
PVMalove
Coordinate one backend ticket through the approved architect, developer, review, QA, and publish handoffs.
SkillAFreshness: A★ 5Claude Code +9 - 0.611score
setup-labels
PVMalove
Create or update this repo's GitHub or GitLab labels (status::*, hitl/afk, task-report::required, resolution::wontfix, wayfinder:*) to match…
SkillAFreshness: A★ 5Claude Code +9 - 0.599score
diagnosing-bugs
PVMalove
Diagnosis loop for hard bugs and performance regressions.
SkillAFreshness: A★ 5Claude Code +9
Signals
- Stars
- 5
- Forks
- 0
- Open issues
- 42
- Last commit (this folder)
- Oct 9, 2026 (21 days ago)
- Last release
- Oct 18, 2026 (12 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/PVMalove/claude-agent-harness
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from PVMalove
- 0.619score
integrate-project
PVMalove
Audit an existing, already-substantial codebase and fold this harness into it without disrupting what's already there.
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
start-project
PVMalove
Start a new project from an idea or create, audit, or update its self-contained agent harness.
SkillAFreshness: A★ 5Claude Code +9 - 0.616score
delivery-stats
PVMalove
Collect delivery statistics for a finished epic and every ticket under it: tokens by model, cache efficiency, estimated cost, subscription window and code…
SkillAFreshness: A★ 5Claude Code +9 - 0.616score
tdd
PVMalove
Use test-driven development to build behavior or fix bugs test-first, at agreed public seams, with independent expectations, deterministic boundaries, and a…
SkillAFreshness: A★ 5Claude Code +9 - 0.616score
to-guide
PVMalove
Turn a hitl ticket or spec into a step-by-step manual implementation guide with ready-to-paste prompts for an AI IDE (Cursor, Copilot Chat).
SkillAFreshness: A★ 5Claude Code +9 - 0.616score
to-pull-requests
PVMalove
Prepare and open a pull request for an already pushed issue branch.
SkillAFreshness: A★ 5Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get qa-gate running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
qa-gate skill. Agent Mart. https://agentmart.dev/skills/pvmalove-qa-gate (last updated 2026-10-24)