propose

propose is a skill for Claude Code from mirkobozzetto/arsenal. It costs 25 tokens per session (672 once invoked), scanned A, original, MIT.

A proposal-writing workflow based on the RFC tradition, a format for explaining a technical problem, possible solutions, tradeoffs, risks, and a recommended design before implementation. It offers short, regular, and full proposal sizes.

In plain words
What is it for?
Use it for architecture decisions, migrations, system-wide refactors, new patterns, and changes crossing systems, teams, versions, or expectations.
Why use it?
It creates a written reasoning record before costly architectural or cross-system changes begin. This helps compare valid approaches and reduce rework caused by choosing a direction too early.

Skill for Claude Code

Written for Claude Code: argument-hint in frontmatter. Also seen: mentions subagents.

Part of the propose plugin — 1 skill shipped together

Good fit Use it for architecture decisions, migrations, system-wide refactors, new patterns, and changes crossing systems, teams, versions, or expectations.

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

Made for: Claude Code.

Or install propose, the plugin that ships this one along with the rest of its 1 skill.

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 propose

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

Your own site · 80×15
<a href="https://agentmods.dev/skills/mirkobozzetto/arsenal/propose"><img src="https://agentmods.dev/badge/skills/mirkobozzetto/arsenal/propose.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 25 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 672 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.00025 $0.00672
Opus 5.5 $0.00010 $0.00269
Sonnet 5.5 $0.00005 $0.00134
Haiku 4.5 $0.00003 $0.00067

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

Security

Grade A, and why

propose 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 26d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/render.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

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.

plugins/propose/skills/propose/SKILL.md · 64 lines

How it starts

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

Propose

Gather only the context needed to answer the design question. Prefer the smallest sufficient format: short for a bounded reversible choice, standard for one system, full for a genuine cross-system design. No format interview when the request already determines the appropriate size.

Use references/proposal-template.md for stable section numbers and artifact shape. Write problem, real alternatives (including status quo when relevant), tradeoffs, design, risks, recommendation and runnable implementation tasks. Do not manufacture alternatives, diagrams, metrics or verification layers to fill a template. Research only unresolved external questions.

Interview

Without --auto, interview the user before drafting: problem, scope, goals/non-goals, alternatives direction, design choices. One question per message, in plain text, then wait for the answer. Draw questions from references/interview-questions.md; skip one only when the request already answers it. Never infer an answer the user can give. Under --auto, infer from code and the request and ask only about a blocking decision.

Review the draft yourself. An independent review is optional and requires explicit user consent, never merely omission of --no-review. Retain supported findings only. Leave status Draft or Review until the user explicitly accepts the proposal; writing it is not implementation approval.

Keep the existing docs/proposals/-/PROPOSAL.md layout and links to a source brief. Do not supersede that brief until the design is accepted. On acceptance, record the Git base and branch in the frontmatter (steps/step-09-finalize.md) so ship branches without asking again. Render via scripts/render.py only on --html or request. Do not launch ship, open a browser, create an index, or start another agent just to finish.

Arsenal handoff

When called by Arsenal, return the proposal, status and unresolved decisions to Arsenal. Do not launch ship yourself. Explicit user acceptance remains required before Arsenal can consume the proposal for implementation, even when the original request was to build the feature.

Read the full file on GitHub · 64 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. 26d ago Changed · +8 lines 9f5a07fe2033
  2. 1mo ago Changed · +2 lines c9cd124c3369
  3. 1mo ago Changed · +9 lines 4f5289010e03
  4. 1mo ago Changed · +7 lines bb6208152638
  5. 1mo ago Changed · -74 lines · +25 tokens per session 5202c9b66308
  6. 1mo ago First seen · 112 lines · 0 tokens per session scan A e00c44efbe55

Subscribe to this mod's changes

propose is a skill published in the GitHub repository mirkobozzetto/arsenal (22 stars, last pushed 8d ago), licensed MIT. It adds 25 tokens to every session and 672 once invoked, about $0.0001 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-30.

Related

Other skills, from other repositories

create-video-seedance-2-fal

Generate a single 4-15s vertical video clip with ByteDance Seedance 2.0 reference-to-video via fal.ai, for shots with no realistic face (a product hero, a product in motion, an empty set). Multi-image reference (product + setting), ambient audio, internal multi-cut handling within one render, 720p by default. Routes…

gooseworks-ai/goose-skills · 121 tokens

meta-ad-manager

Front door and loop owner of a Meta (Facebook/Instagram) ad harness. Reads the brand's ads/ docs, works out which campaign the user means and which stage it is at, hands off to the stage skill that runs it (intake, strategy, creative, launch, checks, fixes, answers), and writes every stage change back to the docs. Use…

gooseworks-ai/goose-skills · 108 tokens

run-memory

Shared step of the marketing playbooks (analyze-performance, run-paid-campaigns, research-competitors, email-lifecycle): reads the last run's record, checks whether its recommendations were done and whether they worked, and saves a short record of this run for the next one. Loaded by those playbooks; not for direct…

gooseworks-ai/goose-skills · 72 tokens

create-chatgpt-mockup

Render pixel-accurate ChatGPT mobile (iOS) screen mockups in light mode from a thread JSON. Supports user text bubbles, user image attachments, assistant markdown prose, citation chips, the OpenAI spiral logo, the Apps-SDK GPT chip in the composer, and three header styles (model-tag, plain title, "Get Plus"). Fixed…

gooseworks-ai/goose-skills · 90 tokens

review-finished-ad

Final QC gate for a rendered 9:16 video ad, run before it is published. One script checks what a machine can decide — exact 1080x1920 size, a hook that moves and speaks in the first second, no frozen stretches, no dead air, no black frames, the brand's real logo on the end card (never a favicon, never a redrawn or…

gooseworks-ai/goose-skills · 200 tokens

company-contact-finder

Find decision-makers at a specific company using Fiber, Crustdata and PDL people search inside the GooseWorks coworker. Given a company name and target titles, returns a list of contacts with name, title, LinkedIn URL, and location.

gooseworks-ai/goose-skills · 55 tokens