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 diagrid-labs/dapr-skills --skill review-pubsub-subscriptionsgit clone --depth 1 https://github.com/diagrid-labs/dapr-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/diagrid-labs/dapr-skills/review-pubsub-subscriptions)<a href="https://agentmods.dev/skills/diagrid-labs/dapr-skills/review-pubsub-subscriptions"><img src="https://agentmods.dev/badge/skills/diagrid-labs/dapr-skills/review-pubsub-subscriptions/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/diagrid-labs/dapr-skills/review-pubsub-subscriptions"><img src="https://agentmods.dev/badge/skills/diagrid-labs/dapr-skills/review-pubsub-subscriptions.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.00069 | $0.01265 |
| Opus 5.5 | $0.00028 | $0.00506 |
| Sonnet 5.5 | $0.00014 | $0.00253 |
| Haiku 4.5 | $0.00007 | $0.00127 |
Grade A, and why
review-pubsub-subscriptions 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 4d 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 — 62 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Review Dapr Pub/sub — Subscriptions and Handlers
Overview
Reviews how an app receives Dapr pub/sub messages: declarative kind: Subscription files, programmatic subscriptions ([Topic], .WithTopic, DaprApp.subscribe) and streaming subscriptions (Dapr.Messaging, subscribe_with_handler). Checks CloudEvent handling, SUCCESS / RETRY / DROP responses, idempotency, dead-letter handling, match expressions, the same topic subscribed through two types, and declarative routes that have no endpoint. Read-only: this skill never modifies source files. Publishing code and component configuration are out of scope and are covered by review-pubsub-publishing and review-pubsub-components.
Execution Order
You MUST follow these phases in strict order. Do not load files outside the agreed scope, and do not write or edit any files.
- Resolve scope — Read
../dapr-shared/review-scope-prompt.mdand follow it to setscope_root. - Detect target — Read
../dapr-shared/review-detect-target-pubsub.mdand follow it to producelanguage,subscriptions,handler_files,subscription_files, pluspublisher_filesandrun_filesas context. Ifsubscriptionsis empty, emit the "Nothing to review" report defined inreview-report-format.mdwith the reasonno pub/sub subscription files found in <scope_root>(no rule id, not counted inFound:) and stop. - Load checklist — Based on
language, read exactly one of:dotnetoraspire→../dapr-shared/review-pubsub-subscriptions-dotnet.mdpython→../dapr-shared/review-pubsub-subscriptions-python.md
- Apply rules per type — Group
subscriptionsbytype(declarative,programmatic,streaming). For each group, apply only the rules whose Types column includes that type (HTTP means declarative or programmatic) to the entries and their handlers. Then run the cross-type pass over all subscriptions together:DPS-SUB-014— the same pubsub and topic subscribed through two or more types in one app. Resolvescopesto app ids first.DPS-SUB-015— a declarativeroutes.defaultorrules[].pathwith no matching POST endpoint in the app it is scoped to.
- Report — Format every finding using the canonical template from
../dapr-shared/review-report-format.md. Group by severity, then rule id, then file path. Put low-confidence findings (indirect side effects, handler files outside the scope) under## Please verify. - Show final message — Your last output is the report. Do not append a summary or next-action prompt other than the
## Next stepsblock defined by the report format. Clarifying questions are always allowed during the review (see the report format); once answered, the report is still your last output.
What ships with it
1 file 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.
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.
- 4d ago Changed · -23 tokens per session e95f208abb99
- 8d ago First seen · 62 lines · 92 tokens per session scan A 2cbabe020e2c
review-pubsub-subscriptions is a skill published in the GitHub repository diagrid-labs/dapr-skills (13 stars, last pushed 4d ago), licensed MIT. It adds 69 tokens to every session and 1,265 once invoked, about $0.0003 per session on Opus 5.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-10-14.
Other skills, from other repositories
code-review
A structured code-review guide that checks code for correctness, security, edge cases, concurrency problems, tests, and maintainability.
offensive-api-abuse
Advanced API exploitation methodology focused on business logic abuse and sophisticated attack patterns that bypass traditional security controls. Covers business logic bypass through API call chaining and workflow manipulation. Addresses GraphQL-specific attacks including batching for credential brute-force, query…
flow-next-impl-review
Carmack-level implementation review of changes via the configured backend. Use when asked to review code or a diff in a flow-next repo.
flow-next-resolve-pr
Resolve PR review feedback. Fetches unresolved threads, triages, fixes, replies and resolves via GraphQL. Use when asked to address review comments.
pr-description-writer
Redacta una descripción de pull request clara y estructurada a partir de un diff de git, resumen de rama o lista de commits. Úsalo cuando te pidan escribir una descripción de PR, redactar una solicitud de cambios o documentar cambios de código. Produce una descripción con resumen, motivación, cambios realizados, pasos…
resolve-pr-comments
Evaluate, fix, answer, and reply to GitHub pull request review comments and conversation comments. Handles both change requests (fix or skip) and reviewer questions (explain using the rationale recalled from past Claude Code transcripts). Use when the user asks to "resolve PR comments", "fix review comments", "address…