Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add waqas1412/claude-harness --skill pr-commentsgit clone --depth 1 https://github.com/waqas1412/claude-harnessWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/waqas1412/claude-harness/pr-comments)<a href="https://agentmods.dev/skills/waqas1412/claude-harness/pr-comments"><img src="https://agentmods.dev/badge/skills/waqas1412/claude-harness/pr-comments/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/waqas1412/claude-harness/pr-comments"><img src="https://agentmods.dev/badge/skills/waqas1412/claude-harness/pr-comments.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00106 | $0.01631 |
| Opus 5 | $0.00053 | $0.00816 |
| Sonnet 5 | $0.00021 | $0.00326 |
| Haiku 4.5 | $0.00011 | $0.00163 |
Grade A, and why
pr-comments scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 129 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/pr-comments: triage and close out review threads
Load .claude/harness/profile.md for REPO, LINT_CMD, UNIT_TEST_CMD, E2E_TEST_CMD,
BUILD_CMD. Infer from the repo if there is no profile.
The policy this encodes
Stated repeatedly and unchanged: if you agree, fix it and resolve; if you do not agree, justify it and resolve. Nothing is left open and nothing is resolved silently.
Step 1: read the threads, do not guess them
gh api graphql -f owner=<OWNER> -f repo=<REPO> -F pr=<N> -f query='
query($owner:String!,$repo:String!,$pr:Int!){
repository(owner:$owner,name:$repo){
pullRequest(number:$pr){
reviewThreads(first:100){
nodes{
id isResolved isOutdated path line
comments(first:20){nodes{author{login} body createdAt}}
}
}
}
}
}'
nodes[].id is the PRRT_... thread id both mutations need. Filter to isResolved == false. Read
every comment in a thread, not just the first: a reviewer often narrows or answers their own point
further down. Separate human reviewers from the CI reviewbot (github-actions); bot threads are still
triaged, but a human reviewer's thread is the one with a person's time attached to it.
Also check top-level PR comments, which are not review threads:
gh pr view <N> --json comments --jq '.comments[] | {a:.author.login, b:.body}'
Step 2: ground every claim before classifying it
Review feedback is a claim to verify, not an instruction to obey. Agreeing is as much a decision as
disagreeing, and it needs the same evidence. Before writing down a verdict, check the claim against the
grounds that can settle it: the INSTALLED library source in node_modules at the version this repo
pins, the version-matched official docs, real-world discussion of the same failure (the high-signal
Stack Overflow thread or upstream issue), and the repo's own gotchas and prior decisions. A reviewer's
suggested FIX gets the same treatment as their diagnosis: the diagnosis can be right while the proposed
remedy is wrong, so where the mechanism is subtle (effect ordering, layout timing, framework
internals), pin it with a failing test before you write the fix, not after.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago Changed · +13 lines b0298f7bdd26
- 6d ago Changed · -3 tokens per session 6e0cb2da3456
- 10d ago First seen · 116 lines · 109 tokens per session scan A 61ca7b41f41b
pr-comments is a skill published in the GitHub repository waqas1412/claude-harness (1 stars, last pushed 3d ago), licensed MIT. It adds 106 tokens to every session and 1,631 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
fabrik-review-comment
Use when operating as the Fabrik Review comment reviewer. This skill guides applying user decisions on review findings — fixing issues, dismissing false positives, or deferring items — then committing and pushing without signaling stage completion.
no-mistakes
Validate committed feature-branch changes through the no-mistakes pipeline: intent, rebase, review, test, docs, lint, push, PR, and CI. Use when the user asks to run no-mistakes, ship safely, validate before pushing, or gate a change before it reaches upstream.
contribute
Complete contribution workflow using git-town. Create branch → commit → PR → ship. Preflight at every step.
flame-harness-submit
Phase 10 — upload store text metadata + categories via fastlane, then pause with exact manual steps for the final iOS review submission and Android production promotion.
develop-feature
Autonomously implement a complete feature from request to merge-ready — documentation phase, wave-based TDD implementation, then all quality gates, without stopping for human input.
flame-harness-build
Phase 8 — bootstrap signing credentials, generate fastlane config from templates, and build + upload signed IPA (TestFlight) and AAB (internal track).