proposal-review

proposal-review is a skill for Claude Code, Codex from ozzy-labs/suasor. It costs 126 tokens per session (1,361 once invoked), scanned A, original, MIT.

A written procedure for reviewing pending proposals created by Suasor MCP, such as suggested tasks, decisions, replies, triage items, or commitments.

In plain words
What is it for?
Listing pending proposals, presenting them for approval or rejection, applying approved items, and recording optional rejection reasons.
Why use it?
It keeps suggested changes waiting for a person's approval instead of applying them automatically.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Listing pending proposals, presenting them for approval or rejection, applying approved items, and recording optional rejection reasons.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/ozzy-labs/suasor/proposal-review
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 ozzy-labs/suasor --skill proposal-review
Clone the repo
git clone --depth 1 https://github.com/ozzy-labs/suasor

Made for: Claude Code, Codex.

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 proposal-review

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

Your own site · 80×15
<a href="https://agentmods.dev/skills/ozzy-labs/suasor/proposal-review"><img src="https://agentmods.dev/badge/skills/ozzy-labs/suasor/proposal-review.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 126 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,361 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.
Origin original No closer match found 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.00126 $0.01361
Opus 5.5 $0.00050 $0.00544
Sonnet 5.5 $0.00025 $0.00272
Haiku 4.5 $0.00013 $0.00136

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

Security

Grade A, and why

proposal-review 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 2mo 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.

docs/skills/proposal-review/SKILL.md · 50 lines

How it starts

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

proposal-review

各 skill(reply-draft / source-extract / meeting-followup / inbox-triage / commitment-review)が貯めた pending 候補をまとめてレビューし、承認/却下する HITL write skill。propose.* ライフサイクル(Issue #89)の「出口」= 承認キューに当たる(ADR-0004)。

いつ発火するか

  • 「保留中の提案を確認」「pending な候補をレビュー」「pending を片付けて」
  • 「溜まってる draft を捌いて」「提案を承認/却下」「承認待ちある?」

何をするか(MCP tool flow)

read で集めて、write は HITL。auto-apply 経路は存在しない(ADR-0004)。

  1. propose.list(state=pending)で承認待ち候補を一覧する。kind(task / decision / reply_draft / triage / commitment)や updated_at 時間窓で絞り込める。各行は candidateId / mode / kind / summary / createdAt。既に却下した候補とその理由を振り返るときは state=rejected で一覧する(各行の reason に却下理由が入る、#197)
  2. 候補を kind / mode 別に整理し、ユーザーに提示して 1 件ずつ(または一括で)承認 / 却下の判断を取る(native framing: ホスト側で人の承認を促す)
  3. 承認分は propose.apply でまとめて適用する(対応する domain event を append、idempotent。既適用は skipped)。適用で ledger が pending → applied に遷移する
  4. 却下分は propose.reject(candidateId、任意で reason)で却下する。ledger が pending → rejected に遷移し、以後 propose.list の pending に現れない(再提示しない)
  5. 承認と却下が混在するときは propose.batch(operations: [{action: "apply", candidate}, {action: "reject", candidateId, reason?}])で 1 RPC・単一トランザクションにまとめられる(atomic、apply/reject と同じ semantics)。HITL(人の一括判断後にのみ呼ぶ、#197)
  6. 却下でも承認でもなく「修正して再生成」したいときは proposal.feedback(candidateId、reason 必須)で再生成ヒントを記録する(#279)。候補は pending のまま(state を遷移させない)で、記録した reason は propose.list で読める。ユーザーがその方向で作り直したいときは生成元 skill(reply-draft 等)で propose.generate し直す

制約

  • HITL。人の承認なしに propose.apply / propose.reject を呼ばない。auto-apply しない。propose.list は read(候補確認)
  • 候補は生成元 skill が propose.generate で作る。本 skill は候補を生成しない(横断レビューに専念)。新規候補が要るなら生成元 skill(reply-draft 等)を使う
  • 状態依存: propose.reject は pending のときのみ却下。applied(適用済み)/ missing(該当なし)は遷移させず status で報告し、rejected 再呼び出しは already_rejected(no-op)。proposal.feedback も pending のときのみ reason を記録(state 据え置き)。applied / rejected / missing は status 報告のみ
  • 本 skill は手順書のみで実処理を持たない

Read the full file on GitHub · 50 lines

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. 2mo ago First seen · 50 lines · 126 tokens per session scan A 8a4250ab8643

Subscribe to this mod's changes

proposal-review is a skill published in the GitHub repository ozzy-labs/suasor (0 stars, last pushed 2mo ago), licensed MIT. It adds 126 tokens to every session and 1,361 once invoked, about $0.0005 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-08-31.

Related

Other skills, from other repositories

issue-triage

Triage Paperclip inbox issues that are stale, blocked, in-review, or assigned-but-not-progressing, and decide a single next action per issue (resume, reassign, unblock, escalate, or close).

paperclipai/paperclip · 48 tokens

bug-reporting-excellence

Write high-quality bug reports that get fixed quickly. Use when reporting bugs, training teams on bug reporting, or establishing bug report standards.

proffesor-for-testing/agentic-qe · 33 tokens

Jira QA Workflows

Run QA work in Jira like a professional, bug lifecycle and triage, JQL queries for testers, quality dashboards, sprint QA rituals, and REST API automation for bulk bug operations and reporting.

PramodDutta/qaskills · 45 tokens

brace-triage

Design ticket triage system -- routing rules, priority tags, queue structure, and first-response automation. Use when asked to "design our ticket routing", "how should we tag tickets", "set up our helpdesk", or "reduce time to first response".

tonone-ai/tonone · 57 tokens

gitlab-issues

Issue review and tracking on GitLab via the gitlab-api MCP server — review a project's issues, review issues across a whole group/organization, and read, create, update, or close an issue with the domain-typed tool. Use when the agent must triage a project's issues, see every issue affecting a group, open a new issue…

Knuckles-Team/gitlab-api · 128 tokens

mk:decision-framework

Operational decision frameworks: triage, escalation, case management, billing ops. Use for 'how to handle X cases', 'build triage', 'escalation protocol'.

ngocsangyem/MeowKit · 40 tokens