frame-the-brief

frame-the-brief is a skill for Claude Code from OC-NeuralSense/reader-first-writing-skills. It costs 170 tokens per session (1,521 once invoked), scanned A, original, Apache-2.0.

A briefing aid that identifies the intended reader, the document’s purpose, and its type. It records these decisions for later writing and review work.

In plain words
What is it for?
Use it when the audience, goal, or document type is unclear. It can use a topic, audience hints, or an existing draft without editing that draft.
Why use it?
It removes guesswork about audience and purpose before content decisions are made. This helps expose assumptions about what readers already know.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter.

Runs only inside its plugin — its command needs a path that Claude Code sets for a plugin’s own hooks and for nothing else. Install the plugin, not this.

Part of the reader-first-writing plugin — 12 skills, 3 agents shipped together

Good fit Use it when the audience, goal, or document type is unclear. It can use a topic, audience hints, or an existing draft without editing that draft.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.

Claude Code
/plugin marketplace add OC-NeuralSense/reader-first-writing-skills
Claude Code
/plugin install reader-first-writing

Made for: Claude Code.

Or install reader-first-writing, the plugin that ships this one along with the rest of its 12 skills, 3 agents.

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 frame-the-brief

README.md
[![agentmods](https://agentmods.dev/badge/skills/oc-neuralsense/reader-first-writing-skills/frame-the-brief/github.svg)](https://agentmods.dev/skills/oc-neuralsense/reader-first-writing-skills/frame-the-brief)
Your own site
<a href="https://agentmods.dev/skills/oc-neuralsense/reader-first-writing-skills/frame-the-brief"><img src="https://agentmods.dev/badge/skills/oc-neuralsense/reader-first-writing-skills/frame-the-brief/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 frame-the-brief

Your own site · 80×15
<a href="https://agentmods.dev/skills/oc-neuralsense/reader-first-writing-skills/frame-the-brief"><img src="https://agentmods.dev/badge/skills/oc-neuralsense/reader-first-writing-skills/frame-the-brief.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 170 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,521 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.00170 $0.01521
Opus 5 $0.00085 $0.00760
Sonnet 5 $0.00034 $0.00304
Haiku 4.5 $0.00017 $0.00152

Measured 12d ago against content hash dcd23e5eb7f8, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

frame-the-brief 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 12d 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/frame-the-brief/SKILL.md · 139 lines

How it starts

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

frame-the-brief

Purpose

Fix the two things that parameterize every downstream choice before any content decision: who the reader is and what the document is meant to do to them. This is a diagnostic skill. It reconstructs the absent reader on paper, names the communicative aim, routes the genre, and surfaces what the writer is silently assuming. It produces a decision object, not prose.

When to use

  • The reader profile, genre, or aim is unstated or vague.
  • A downstream skill (build-argument, review-document, shape-and-close) needs a reader-frame and none exists; this is the most common clarification trigger in the system.

When NOT to use (routing non-triggers)

  • Reader profile already settled and the writer wants an outline -> build-argument.
  • Writer wants sentence-level flow/clarity fixes -> revise-prose.
  • Writer wants to check whether claims support a conclusion -> test-argument.

Inputs

  • brief_or_topic (required)
  • audience_hints (optional)
  • optional_draft (optional: read it to infer an implicit reader, but do not edit it)

Workflow

  1. Model the reader. State assumed prior knowledge, the standing question the reader carries in, expertise level, and the in-group vocabulary safe to leave undefined.
  2. Name the situation. State the triggering circumstance and the unresolved tension that makes the document necessary.
  3. Classify the aim. Decide reveal-a-truth vs seek-an-action; when unstated, default to reveal and flag the choice.
  4. Route the genre. Select one of the four v1 genres. If a downstream decision will need the genre and it is not given, ask; never infer.
  5. Surface expert blind spots. List knowledge silently assumed; bias toward assuming too little.
  6. Emit or ask. If audience facts are missing, populate clarification_needed and ask before proceeding; otherwise emit the reader-frame.

Decision rules

  • Bias every uncertainty toward assuming the reader knows too little.
  • Model the least-prepared reader whose comprehension you actually need; let experts skim.
  • Genre is never guessed. When required and absent, ASK.
  • A suspected blind spot is a flag to check, not an automatic instruction to expand.

Read the full file on GitHub · 139 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. 12d ago First seen · 139 lines · 170 tokens per session scan A dcd23e5eb7f8

Subscribe to this mod's changes

frame-the-brief is a skill published in the GitHub repository OC-NeuralSense/reader-first-writing-skills (1 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 170 tokens to every session and 1,521 once invoked, about $0.0009 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

provider-integration

Adds new AI providers to claude-council, configures provider API settings, troubleshoots provider connections, and documents the provider script interface. Covers creating provider shell scripts, setting API keys, and validating connectivity. Triggers on "add provider", "new AI agent", "provider not working", "API…

hex/claude-council · 74 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

recursive-decomposition

Decompose dense codebase-wide, multi-document, PDF, and aggregation work even when the input fits the context window, following Recursive Language Models (Zhang, Kraska, Khattab, 2025). Use when the user asks to analyse all files, a whole repo, all docs, large PDFs, or to aggregate or multi-hop across scattered…

massimodeluisa/recursive-decomposition-skill · 144 tokens

arrow-maintenance

Navigation and audit overlay for linked-intent development. Use when working with docs/arrows/ — orienting via index.yaml, auditing spec-to-code coherence, detecting reverse orphans and drift, splitting/merging/renaming/re-parenting segments. Dual-mode: ambient guidance when the overlay is present…

jszmajda/lid · 85 tokens

map-codebase

Bootstrap LID in an existing (brownfield) codebase. Deep-reads every file in the declared scope, offers lens-based clustering options, generates skeleton LLDs/HLD/EARS bottom-up, then creates arrow docs and prompts the user to flesh out the skeletons. Token-intensive by design. Use when asked to map a codebase…

jszmajda/lid · 92 tokens

design

Create a doc-as-code design package from a PRD or SPEC. Conditionally generates C4 diagrams (Context/Container/Component), sequence diagrams, ER diagram + Data Dictionary, OpenAPI 3.0, AsyncAPI 3.0, ADRs, domain glossary, state diagrams, and deployment view as Mermaid-rendered Markdown files. Use when PM mentions…

cryndoc/polisade-orchestrator · 162 tokens