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 harness/harness-skills --skill configure-agent-pr-attestationgit clone --depth 1 https://github.com/harness/harness-skillsWrote 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/harness/harness-skills/configure-agent-pr-attestation)<a href="https://agentmods.dev/skills/harness/harness-skills/configure-agent-pr-attestation"><img src="https://agentmods.dev/badge/skills/harness/harness-skills/configure-agent-pr-attestation/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/harness/harness-skills/configure-agent-pr-attestation"><img src="https://agentmods.dev/badge/skills/harness/harness-skills/configure-agent-pr-attestation.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.00109 | $0.02301 |
| Opus 5 | $0.00055 | $0.01151 |
| Sonnet 5 | $0.00022 | $0.00460 |
| Haiku 4.5 | $0.00011 | $0.00230 |
Grade B, and why
configure-agent-pr-attestation scanned grade B with 1 finding 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 12d 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.
Asks for rootmediumPrivilege escalation
A mod that escalates privileges can change anything on the machine, not only the project.
task compile-harness-scs && sudo mv harness-scs /usr/local/bin/ Copies of this mod
1 near-identical copy found in the catalogue:
- configure-agent-pr-attestation — 100% identical, 0 lines differ
How it starts
The opening of the file, as written. The whole thing — 254 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Configure Agent PR Attestation
Sets up a PostToolUse hook that signs and uploads an in-toto attestation
to the Harness Evidence Vault every time an AI coding agent creates a PR/MR.
Instructions
Follow these steps in exact order. Do NOT skip steps or reorder them.
Step 1: Check Prerequisites
Run these checks and report what's missing. Do not proceed until all are installed.
command -v harness-scs
command -v jq
command -v git
command -v cosign
If harness-scs is missing, tell the user:
task compile-harness-scs && sudo mv harness-scs /usr/local/bin/
Step 2: Ask for SCM
Ask the user which tool they use to create PRs/MRs. Use AskUserQuestion.
Options:
| Choice | command_filter | url_pattern |
|---|---|---|
| Harness CLI (codepulse pr create) | codepulse pr create |
https://[^/]*\.harness\.io/.*/pulls/[0-9]+(/.*)? |
| GitHub CLI (gh pr create) | gh pr create |
https://github\.com/[^ ]+/pull/[0-9]+ |
| GitLab CLI (glab mr create) | glab mr create |
https://[^ ]+/-/merge_requests/[0-9]+ |
| Bitbucket CLI (bb pr create) | bb pr create |
https://[^ ]+/pull-requests/[0-9]+ |
| Azure DevOps CLI (az repos pr create) | az repos pr create |
https://[^ ]+/_git/[^ ]+/pullrequest/[0-9]+ |
| Gitea / Forgejo (tea pr create) | tea pr create |
https://[^ ]+/pulls/[0-9]+ |
If user picks GitLab, Bitbucket, Gitea, or Custom — also ask if self-hosted.
If self-hosted, ask for hostname and replace the generic [^ ]+ host in the
url_pattern with their specific escaped hostname.
If user picks "Other / custom":
- Ask for the exact command they run.
- Ask for an example PR URL their tool prints.
- Derive
command_filterandurl_pattern, show to user, confirm.
Step 3: Set up Harness Identity (auth.json)
Check if ~/.harness/auth.json already exists:
test -r ~/.harness/auth.json && jq -e '.token and .account_id' ~/.harness/auth.json >/dev/null 2>&1
If auth.json exists and is valid: Tell the user "Found existing ~/.harness/auth.json" and move to Step 4.
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.
- 12d ago First seen · 254 lines · 109 tokens per session scan B c13c77462a81
configure-agent-pr-attestation is a skill published in the GitHub repository harness/harness-skills (105 stars, last pushed 2d ago), licensed Apache-2.0. It adds 109 tokens to every session and 2,301 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it B with 1 finding (asks for root). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
agent-framework-py-release
Use when cutting a Python release for the microsoft/agent-framework monorepo. Triggers on "bump py versions", "cut a python release", "prepare release PR for python", "release py packages", "bump python to X.Y.Z", or similar requests to bump Python package versions and prepare a release PR. Handles all four lifecycle…
git-advanced-workflows
Master advanced Git workflows including rebasing, cherry-picking, bisect, worktrees, and reflog to maintain clean history and recover from any situation. Use when managing complex Git histories, collaborating on feature branches, or troubleshooting repository issues.
commit-history
List recent git commits linked to agent sessions, optionally filtered by branch or repo. Use when the user asks "show agent commits", "what has the agent shipped", "list linked commits", or wants commits with their session context.
workflow-patterns
Use this skill when implementing tasks according to Conductor's TDD workflow, handling phase checkpoints, managing git commits for tasks, or understanding the verification protocol.
python-release
Handle Python SDK release, build, bump, packaging metadata, PyPI client pin, uv.lock, nox/build workflow, and publish verification changes. Use for Python release process work or dependency pin bumps; do not use for ordinary Python feature implementation.
fanout
Run independent subtasks in parallel — one git worktree and one implementation sub-agent per task, each opening its own PR — then cross-review every PR. polly never merges; the human does.