propose

propose is a skill for Claude Code, Codex from scolladon/craft. It costs 31 tokens per session (704 once invoked), scanned A, original, MIT.

A controlled workflow for preparing and proposing a pull request, which is a request to merge code into a shared repository. It checks validation results, applies required fixes, pushes the branch, and follows the repository’s policy for creating the request.

In plain words
What is it for?
Use it at the end of a coding task when the repository is ready for review. It helps run the pre-review gate, handle remediation, push the branch, and either ask the user to approve the draft or follow the project’s proposal rules.
Why use it?
It stops a pull request from being created before validation and issue triage are complete. It also records required checks and exceptions instead of relying on memory.

Skill for Claude CodeCodex

Part of the craft plugin — 20 skills, 4 commands, 18 agents, 1 hook shipped together

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.

agentmods
npx agentmods add skills/scolladon/craft/propose
Any agent
npx skills add scolladon/craft --skill propose
Clone the repo
git clone --depth 1 https://github.com/scolladon/craft

Made for: Claude Code, Codex.

Or install craft, the plugin that ships this one along with the rest of its 20 skills, 4 commands, 18 agents, 1 hook.

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/scolladon/craft/propose.svg)](https://agentmods.dev/skills/scolladon/craft/propose)
Your own site
<a href="https://agentmods.dev/skills/scolladon/craft/propose"><img src="https://agentmods.dev/badge/skills/scolladon/craft/propose.svg" alt="Measured on agentmods" height="20"></a>
Per session 31 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 704 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
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 $0.00031 $0.00704
Opus 5 $0.00015 $0.00352
Sonnet 5 $0.00006 $0.00141
Haiku 4.5 $0.00003 $0.00070

Measured 3d ago against content hash 702aa5180a37, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, 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 3d 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.

skills/propose/SKILL.md · 45 lines

How it starts

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

craft:propose

Preamble (always runs — non-overridable)

  1. Manifest read (lint if standalone). Probe: remote? none → propose AND integrate no-op with a note (work stays on the local branch); the run ends after documentation.
  2. Cross-phase invariant check: the validation phase's run has landed or recorded a no-op, survivors are triaged, gates.phase is green. Not yet → wait; never create the PR early.

Procedure (default body — a manifest override: replaces everything below)

  1. Pre-PR gate (pr.pre-pr-gate if declared): contract = check + documented remediation + documented exceptions (both live in the manifest body or a phase context file — never memory). Run it; apply the remediation in its own conventional commit; re-gate.

  2. Consult push action (see docs/contributing/specs/policy.md for surface semantics). Obey the returned surface, then push -u origin <branch>.

  3. Consult propose action (see docs/contributing/specs/policy.md). Obey the returned surface:

    • ask (default, ADR-127) — hand the drafted body to the user and stop (pr.creator: user behaviour); on approval proceed with the PR creation, on decline record POLICY(ask:propose→declined) and block.
    • never — refuse; record POLICY(never:propose); phase no-ops.
    • always — create the PR without stopping; record POLICY(always:propose); supersedes the pr.creator: user stop (ADR-128 — Supersede).

    Prose-lint the drafted body (advisory). Before invoking the port, write the drafted body to a temp file and scan it under the same posture the ci.sh cadence uses: resolve the gate via node engine/bin/hygiene-gate.js <manifest-path> (default advisory), then run node engine/bin/prose-lint.js --gate <gate> --waiver-source <body-file> -- <body-file>. Fold any SLOP-FOUND(<file>): … lines into the run record and a hygiene note in the PR body; the hygiene.gate knob and the SLOP-WAIVE(<file>) waiver are honored (the body is its own waiver source, so a deliberate ban-list word can be waived in-body). PR body only — never the ci.sh touched-docs cadence.

Read the full file on GitHub · 45 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. 3d ago First seen · 45 lines · 31 tokens per session scan A 702aa5180a37

Subscribe to this mod's changes

propose is a skill published in the GitHub repository scolladon/craft (2 stars, last pushed 15d ago), licensed MIT. It adds 31 tokens to every session and 704 once invoked, about $0.0002 per session on Opus 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

define

Manifest builder. Turns shared understanding into a verifiable Manifest with Deliverables, Acceptance Criteria, Global Invariants, and an Initial Approach. Use when planning features, scoping refactors, debugging complex issues, or when the user asks to define, scope, plan, spec out, make a manifest, or break down a…

doodledood/manifest-dev · 68 tokens

check-pr

Read-only inspection of a single GitHub PR lifecycle — checks CI, review threads, description sync, and mergeability, and returns PASS or FAIL with per-gate findings. Never invokes the merge button. Use when verifying a PR is ready to merge, polling lifecycle progress, checking mergeability, or babysitting a GitHub PR…

doodledood/manifest-dev · 74 tokens

babysit-pr

Author-side PR lifecycle babysitter and companion to review-pr. Use when the user wants to tend an existing GitHub PR through CI, review threads, description sync, mergeability, auto-fixes, or asks to babysit a PR with or without an existing manifest.

doodledood/manifest-dev · 59 tokens

review-code

Review a change along one specific quality dimension — bugs, design, simplicity, maintainability, testability, test quality, type safety, contracts, operational readiness, docs, prose value, change intent, defect-class completeness after a fix, or CLAUDE.md adherence. Loads exactly one dimension reference and audits…

doodledood/manifest-dev · 103 tokens

just-define

Goal-based Manifest builder. Encodes shared understanding into a verifiable Manifest — Deliverables, Acceptance Criteria, Global Invariants — deciding for itself how to interview. Use when the user asks to just define it, spec it lean, or make a manifest with minimal process.

doodledood/manifest-dev · 58 tokens

update-lid

Configure or reconcile a project for linked-intent development (LID). Dispatches on project state — fresh bootstrap, append directives to an existing agent-instructions file (AGENTS.md or CLAUDE.md), add missing mode marker, reconcile convention drift, or run mode transitions. Invoked as /update-lid. For fresh…

jszmajda/lid · 105 tokens