reframe

reframe is a skill for Claude Code, Codex from saadshahd/moo.md. It costs 25 tokens per session (592 once invoked), scanned A, original, MIT.

A problem-solving skill for replacing a forced or unhelpful way of framing a question with a better one.

In plain words
What is it for?
Use it to identify the current framing and its bind, then restate the problem around the underlying subject and decision.
Why use it?
It helps when every option in the current framing leads to a poor result or the question resists a useful answer.

Skill for Claude CodeCodex

Part of the hope plugin — 20 skills, 1 command, 3 hooks 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/saadshahd/moo.md/reframe
Any agent
npx skills add saadshahd/moo.md --skill reframe
Clone the repo
git clone --depth 1 https://github.com/saadshahd/moo.md

Made for: Claude Code, Codex.

Or install hope, the plugin that ships this one along with the rest of its 20 skills, 1 command, 3 hooks.

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 reframe

README.md
[![agentmods](https://agentmods.dev/badge/skills/saadshahd/moo.md/reframe.svg)](https://agentmods.dev/skills/saadshahd/moo.md/reframe)
Your own site
<a href="https://agentmods.dev/skills/saadshahd/moo.md/reframe"><img src="https://agentmods.dev/badge/skills/saadshahd/moo.md/reframe.svg" alt="Measured on agentmods" 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 592 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.00025 $0.00592
Opus 5 $0.00013 $0.00296
Sonnet 5 $0.00005 $0.00118
Haiku 4.5 $0.00003 $0.00059

Measured 4d ago against content hash 82cc522d7e74, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

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

hope/skills/reframe/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.

Extract

From the conversation/context/user:

  • The framing as stated — the sentence or question the problem currently lives in.
  • Its bind — how every option inside it loses: the either/or where each side loses, the question that resists every answer.
  • Its origin — whether the frame arrived with the problem or the user chose it.

Gate

Proceed only when: the bind is real — every option inside the framing loses, or the question resists every answer — and the frame is not a choice the user already made.

Anything else, say which in one plain line — never reframe anyway:

  • An option inside the framing can actually win → the frame holds; answer inside it and proceed with what the answer settles.
  • The user chose the frame and wants an answer inside it → answer inside it and proceed with what the answer settles.
  • Something exists inside the frame and a claim about it needs a committed verdict → use judge skill.
  • The frame is fine and the user is missing something already settled → use explain skill.

Rework

Everything here, the retry included, runs inside this one turn — nothing waits on the user.

  1. Name what the current framing fixes: its subject, its level, its scope.
  2. Change exactly one and state the problem again with that one change — one plain sentence. Where more than one change would do, prefer the statement that makes the stuck options irrelevant over the one that picks between them.
  3. Test the new statement before delivering anything: if it names the same subject at the same level, it is the old frame in new words — discard it, change a different one of the three, and state and test once more. If the second statement fails the same test, the framing resists reframing — carry that verdict out as the result instead of a statement.

Output

The new statement is the result — deliver it, with one line on what it frees that the old framing blocked. Stop there: a statement of the problem to work from, not a solution. Stating the problem again is the whole act — solving it runs on the new statement, after this turn, never inside it.

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. 4d ago First seen · 45 lines · 25 tokens per session scan A 82cc522d7e74

Subscribe to this mod's changes

reframe is a skill published in the GitHub repository saadshahd/moo.md (34 stars, last pushed 18d ago), licensed MIT. It adds 25 tokens to every session and 592 once invoked, about $0.0001 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-30.

Related

Other skills, from other repositories

lark-sheets

飞书电子表格:创建和操作电子表格。支持创建表格、管理工作表与行列结构(增删/合并/调整尺寸/隐藏/冻结)、读写单元格(值/公式/样式/批注/单元格图片)、查找替换、多操作原子批量更新,以及图表、透视表、条件格式、筛选器、迷你图、浮动图片等对象的创建与维护。当用户需要创建电子表格、管理工作表、批量读写或编辑数据、统计汇总与可视化、表格美化、公式计算(含 Excel 公式迁移)、金融/财务建模(DCF、三张表、预算、Sensitivity 等)等任务时使用。若用户是想按名称或关键词搜索云空间(云盘/云存储)里的表格文件,请改用 lark-drive 的 drive +search 先定位资源。当用户给出 doubao.com 的…

DropFan/claude-code-plugins · 259 tokens

lark-slides

飞书幻灯片:创建和编辑幻灯片。创建演示文稿、读取幻灯片内容、管理幻灯片页面(创建、删除、读取、局部替换)。当用户需要创建或编辑幻灯片、读取或修改单个页面时使用。当用户给出 doubao.com 的 /slides/ URL/token 时,也应直接使用本 skill,不要因为域名不是飞书而回退到 WebFetch;路由依据是 URL 路径模式和 token,而不是域名。不负责:云文档内容编辑(走 lark-doc)、云文档里的独立画板对象(走 lark-whiteboard)、上传或下载普通文件(走 lark-drive)。.

DropFan/claude-code-plugins · 156 tokens

lark-vc-agent

飞书视频会议会中能力:用于让应用机器人真实加入或离开正在进行的会议,并读取当前身份可见的会中事件、发送会中文本消息或会中表情。适用于用户询问正在开的会议发生了什么、谁在发言、是否共享内容,或需要发现当前可读的进行中会议 ID。不负责已结束会议搜索、参会人快照、纪要、逐字稿或录制查询,这些使用 lark-vc 技能。.

DropFan/claude-code-plugins · 114 tokens

lark-vc

飞书视频会议:搜索历史会议记录、查询会议纪要(总结/待办/章节/逐字稿)、查询参会人快照。当用户查询已结束的会议、获取会议产物(纪要/妙记)、查看参会人时使用;查询未来日程走 lark-calendar。不负责:Agent 真实入会/离会、会中实时事件(走 lark-vc-agent)。.

DropFan/claude-code-plugins · 95 tokens

session-recap

Document Claude Code sessions by extracting knowledge into cross-referenced documentation. Triggers on "recap the session", "summarize the work", or after significant code changes.

sxhmilyoyo/sundayhao-plugins · 39 tokens

lark-minutes

飞书妙记:搜索妙记、查看妙记基础信息、下载/上传音视频、读取或编辑妙记的产物内容、改标题、替换说话人/关键词、申请妙记查看/编辑权限。当给出minutetoken、本地音视频文件,要查/改/转妙记产物,或用户明确要主动申请妙记权限时使用;本地音视频转纪要/逐字稿优先走本 skill,不要用 ffmpeg/whisper 本地转写。不负责:获取会议关联妙记,或仅按自然语言标题定位纪要.

DropFan/claude-code-plugins · 133 tokens