interrogate

interrogate is a skill for Claude Code, Cursor from backnotprop/pstack. It costs 51 tokens per session (1,160 once invoked), scanned A, a copy of interrogate, MIT.

An adversarial code-review skill that asks multiple configured language models to inspect the same change independently. It combines their findings into one verdict without applying edits.

In plain words
What is it for?
Use it to stress-test a diff, feature, or recent change, challenge its intent and design, and identify risks before merging.
Why use it?
Independent reviewers can expose blind spots that one review might miss, while agreement between reviewers provides stronger evidence for a finding.

Skill for Claude CodeCursor

Written for Claude Code and Cursor: disable-model-invocation in frontmatter, but also shipped in a Cursor plugin. Also seen: mentions subagents; mentions Claude Code; mentions Codex.

Part of the pstack plugin — 57 skills, 2 agents shipped together

Good fit Use it to stress-test a diff, feature, or recent change, challenge its intent and design, and identify risks before merging.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/backnotprop/pstack/interrogate
About the project

pstack is a collection of plain Agent Skills and engineering principles that guide AI-assisted software development across coding agents such as Claude Code, Codex, Pi, Cursor, and OpenCode. It is for developers who want reusable practices for tasks including testing, technical writing, debugging, review, and coordinating agent work. The catalogue entries are the project's skills, agents, and plugin.

backnotprop/pstack · 2,115 stars · on GitHub

Install

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.

Any agent
npx skills add backnotprop/pstack --skill interrogate
Clone the repo
git clone --depth 1 https://github.com/backnotprop/pstack

Made for: Claude Code, Cursor.

Or install pstack, the plugin that ships this one along with the rest of its 57 skills, 2 agents.

Wrote 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.

agentmods badge for interrogate

README.md
[![agentmods](https://agentmods.dev/badge/skills/backnotprop/pstack/interrogate/github.svg)](https://agentmods.dev/skills/backnotprop/pstack/interrogate)
Your own site
<a href="https://agentmods.dev/skills/backnotprop/pstack/interrogate"><img src="https://agentmods.dev/badge/skills/backnotprop/pstack/interrogate/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.

agentmods 80×15 button for interrogate

Your own site · 80×15
<a href="https://agentmods.dev/skills/backnotprop/pstack/interrogate"><img src="https://agentmods.dev/badge/skills/backnotprop/pstack/interrogate.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 51 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,160 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • Socket pass 16 Oct 2026
  • Snyk pass 16 Oct 2026
How audits are shown
Origin 88% copy Near-identical to another mod in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00051 $0.01160
Opus 5.5 $0.00020 $0.00464
Sonnet 5.5 $0.00010 $0.00232
Haiku 4.5 $0.00005 $0.00116

Measured 2d ago against content hash a466b10aaf3c, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

interrogate 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.

Origin

This is a copy

88% identical to interrogate — 25 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

skills/interrogate/SKILL.md · 77 lines

How it starts

The opening of the file, as written. The whole thing — 77 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Interrogate

Spawn one reviewer per configured model to adversarially review code changes. The adversarial signal comes from model diversity, not assigned personas. The deliverable is a synthesized verdict. Do NOT auto-apply changes.

Step 1, Scope

Identify what to review from context:

  • If the user points at specific files or a diff, use that.
  • If on a feature branch, run git diff main...HEAD (or the appropriate base branch) for the full changeset.
  • If the user's message references recent work, gather the relevant files.

Package the diff or file contents with any surrounding context files the reviewers need to understand the code.

Step 2, Intent

Before spawning reviewers, state the intent in one clear paragraph from the user's message, commit messages, the PR description if one exists, and the code. If you're unsure about the intent, ask the user before proceeding.

Step 3, Spawn Reviewers

Launch all reviewers in a single message with the Task tool, one per entry on the interrogate reviewers line in the pstack settings file (~/.cursor/rules/pstack-models.mdc in Cursor, ~/.agents/pstack-models.md in other harnesses), labeled Reviewer A, B, and so on to match the entry count. If the file or that line is missing, use the table defaults.

Other harnesses. The spawns in this skill use Cursor's Task tool. In another harness, use its subagent tool: Agent in Claude Code (subagent_type: general-purpose), task in OpenCode (subagent_type: general), spawn_agent in Codex. Keep the prompt and the model. Drop parameters your tool doesn't have. If your harness has no subagent tool, as in Pi without an extension, run each reviewer yourself, one after another.

Subagent Default model
Reviewer A claude-opus-5-5-xhigh
Reviewer B grok-4.7-xhigh-fast

Each reviewer gets subagent_type: generalPurpose, readonly: true, and model set to its configured entry, or its table default when there is no configured line. Omit model for an auto or inherit-parent entry, so that reviewer runs on the parent model.

Read the full file on GitHub · 77 lines

Files

What ships with it

4 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

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.

  1. 2d ago Changed a466b10aaf3c
  2. 5d ago Changed · -37 lines cf994ce47a2c
  3. 9d ago Changed · -1 lines cdf25c6a9a3e
  4. 13d ago Changed · -1 lines 1d23326c925d
  5. 1mo ago Changed · +2 lines a032d652d675
  6. 1mo ago First seen · 114 lines · 51 tokens per session scan A a009220dfe68

Subscribe to this mod's changes

interrogate is a skill published in the GitHub repository backnotprop/pstack (2,115 stars, last pushed 3d ago), licensed MIT. It adds 51 tokens to every session and 1,160 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. It is 88% identical to interrogate, differing in 25 lines, and is treated as a copy.

Related

Other skills, from other repositories

argumentation

Construct well-structured arguments using the hypothesis-argument-example triad. Covers formulating falsifiable hypotheses, building logical arguments (deductive, inductive, analogical, evidential), providing concrete examples, and steelmanning counterarguments. Use when writing or reviewing PR descriptions that…

pjt222/agent-almanac · 86 tokens

cross-review-project

Conduct a structured cross-project code review between two Claude Code instances via the cross-review-mcp broker. Each agent reads its own codebase, reviews the peer's code, and engages in evidence-backed dialogue — with QSG scaling laws enforcing review quality through minimum bandwidth constraints and phase-gated…

pjt222/agent-almanac · 63 tokens

create-pull-request

Create and manage pull requests using GitHub CLI. Covers branch preparation, writing PR titles and descriptions, creating PRs, handling review feedback, and merge/cleanup workflows. Use when proposing changes from a feature or fix branch for review, merging completed work into the main branch, requesting code review…

pjt222/agent-almanac · 78 tokens

audit-pr

Audit a whole PR against the delivery contract and return MERGE-READY or evidenced blockers with the full URL. Consumes the current review-change REVIEW-PASS receipt instead of re-running review axes; posts a SHA-bound ready comment; never edits or merges. Triggers: "audit-pr", "is this PR ready", "merge gate".

gtrabanco/agentic-workflow · 71 tokens

fold-findings

Repair persisted fix-now findings in compatible atomic batches: root-cause fixes, green gate, commit/push, and per-row folded: yes updates. Never reclassify or substitute backlog notes. Triggers: "fold-findings", "fix the review findings", "repair audit blockers".

gtrabanco/agentic-workflow · 65 tokens

review-change

Review a change with only applicable internal axes, classify every finding, persist fix-now work, and return one evidence-backed decision. Findings only; --adversarial N uses isolated reviewers; --synthesize fuses supplied reviewer tables. Triggers: "review-change", "review this change", "adversarial review".

gtrabanco/agentic-workflow · 67 tokens