writing-studio
Write or review professional, human-facing prose so the result is clear, well-structured, correctly shaped for its document type, and free of AI-sounding…
Skill by aminfara
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/aminfara-writing-studio
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, spreadsheets, design, data
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/writing-studio
What's inside
- Skill name
writing-studio- Description
- Write or review professional, human-facing prose so the result is clear, well-structured, correctly shaped for its document type, and free of AI-sounding filler. Use this skill WHENEVER you are about to write something a person will read (a proposal, email, chat or Slack message, document or wiki page, blog post, announcement, status update, RFC or design doc, release notes, exec brief, incident report, peer performance feedback, RACI or roles-and-responsibilities matrix, program or project poster, PR/FAQ or working-backwards doc) OR when asked to review, improve, polish, critique, proofread, tighten, sharpen, or shorten any existing text. Prefer it over ad-hoc style fixes, especially for multi-paragraph or long-form writing. Do NOT use it for code, code comments, commit messages, machine-readable data (JSON/YAML/CSV), or trivial one-line replies.
- License
- MIT
- Instructions
- 119 lines in SKILL.md · view on GitHub
Files (16)
- .markdownlint-cli2.jsonc
- SKILL.md
- ai-patterns.md · references/
- _TEMPLATE.md · references/formats/
- blog.md · references/formats/
- peer-feedback.md · references/formats/
- poster.md · references/formats/
- prfaq.md · references/formats/
- proposal-floater.md · references/formats/proposal/
- proposal-full.md · references/formats/proposal/
- proposal-onepager.md · references/formats/proposal/
- proposal.md · references/formats/proposal/
- raci-onepager.md · references/formats/raci/
- raci-prose.md · references/formats/raci/
- raci.md · references/formats/raci/
- universal-rules.md · references/
SKILL.md (first lines)
# Writing Studio
Write new prose well, or review existing prose, for any human reader.
## Overview
This skill helps you do two things: **generate** strong professional writing on the first try, and **review** existing writing and return useful, prioritized feedback. It works for any document a person reads, including proposals, emails, chat messages, documents and wiki pages, blog posts, announcements, status updates, RFCs, release notes, incident reports, and PR/FAQs.
For any task, you first identify a few things about the writing (its document type, purpose, where it will be read, the tone, and the audience), then apply a shared set of writing rules plus a template for that document type. The rules cover clarity, structure, concision, and honesty, and they include checks that stop the output from sounding machine-written or stating facts that were never given.
A good result in generate mode is a draft that is shaped correctly for its document type, holds the requested tone, invents no facts, and reads like a capable person wrote it. A good result in review mode is a short, prioritized list of findings grouped by impact, each explaining the problem and the fix.
## When to use this skill
Load this skill whenever you are about to produce, expand, edit, or review prose a person will read. Beyond the document types in the description, this includes:
- Converting notes or an outline into prose, or summarizing a long document.
- Adjusting writing to a target tone or audience ("make this more formal", "an exec version").
- Producing output that other people, not just the requester, will read, even mid-task in a larger job.
### When NOT to use this skill
- Code generation, code comments shorter than a sentence, or commit messages governed by house conventions.
- Machine-readable data (JSON, YAML, CSV) — there is no human reader to optimize for.
- One-line acknowledgements ("done", "got it").
- Translation/transcription where the source style must be preserved verbatim.
## Constraints
- **Preserve the writer's intent and voice.** In review, do not rewrite meaning or flatten a distinctive voice into generic corporate prose. In generate, match the requested tone; do not impose a house style.
- **Apply rules with judgment, not as a checklist.** Each universal rule names when it applies and when it does not. Clarity for the actual reader beats conformity. If a rule would hurt this format/tone/audience, skip it and (in review) say why.
- **Never fabricate.** No invented quantification, sources, names, or dates. Name the gap (`[CLARIFY: ...]`) instead. This is enforced by the anti-hallucination pass in `references/universal-rules.md` (rule A9).
- **Honor stated length limits as hard caps.** If content will not fit, ask what to cut rather than overflowing. In review, prioritize and deduplicate findings: group by impact (structure → substance → sentence-level) and report a repeated issue once with examples, not per-paragraph.
## Inputs
Before drafting or reviewing, resolve these from context. Infer silently when confident; **ask only when a key input is genuinely unclear.**
- **mode** — `generate` (write new text) or `review` (give feedback on existing text). If the user supplies text and says "improve", default to `review` and offer a rewrite.
- **format** — the document type (proposal, email, blog, status update, RFC, ...). This selects the template in `references/formats/`. If none matches, see Workflow Step 2.
- **purpose** — inform, persuade/recommend, announce, request, instruct, report, document a decision, narrate a vision.
- **medium** — where it will be read: email, chat, wiki page or document, issue tracker, printed page. This sets length and formatting conventions.
- **tone** — formal, neutral, friendly, persuasive, authoritative, visionary, urgent, or a free-form description ("warm but direct"). If unspecified, use the format's default.
- **audience** — who reads it, what they know, how much attention they will give. This drives tone and vocabulary.
- **completeness** (only for formats that define levels, e.g. proposal, RACI) — how fully worked-out this should be. The level names are format-specific and listed in that format's base file. Infer from the request: "shoot a quick note proposing X" → proposal floater; "write up a one-pager" → one-pager; "write the proposal doc" → full; "drop a note in the channel on who owns what" → RACI prose. Ask if unclear. Formats without levels (e.g. blog post, peer feedback) ignore this.
Example: "Write an email to the team reporting the launch slip" resolves cleanly (format=email, purpose=report, medium=email, audience=team) — proceed. "Write something about X" does not — ask for format and destination.
## Output
**Generate mode.** Lead with the deliverable itself, starting with its natural title (or no title for a short email/message). Put meta below a `---` divider so a human sees only the prose:
```text
[the prose]
---
## Notes (for the agent, not the reader)
- What you used: format / purpose / medium / tone / audience (inferred or given)
- Rules relaxed and why (e.g. "skipped quantify-impact: visionary tone")
- Open items: [CLARIFY: ...] for anything unverified
```
**Review mode.** Use this template:
```text
## Verdict
One or two sentences: is it fit for its format, purpose, audience? Biggest lever to improve it.
## Findings (highest impact first)
### Structure
- [issue] -> [why it hurts the reader] -> [suggested fix]
### Substance
- ...
### Sentence-level / style
- [pattern] (e.g. "em-dash overuse, 6 instances") -> [fix], shown once with examples
## Suggested revision (optional)
[A rewritten version, if wanted or if it is the fastest way to show the fix.]
```
## Workflow
### Step 1: Resolve the inputs
Determine the mode and the other inputs (see Inputs). Infer when confident; ask only when a key input is genuinely unclear. In generate mode, when you infer rather than ask, record your read in the *notes* block, not in the deliverable.
### Step 2: Load the rules and the format
Always read `references/universal-rules.md` and `references/ai-patterns.md`. Then load the matching format:
- A simple format is a single file: `references/formats/<format>.md`.
- A format with **completeness levels** is a folder: load the base `references/formats/<format>/<format>.md` plus **exactly one** level file matching the completeness (e.g. `proposal/proposal-floater.md`). Do not load the other levels.
If no format matches, say so ("I don't have a dedicated template for <format> yet, so I'm using the universal rules"), then write with the universal rules and the closest structural pattern. Do not pretend a template exists.
### Step 3: Produce the draft or the review
In **generate**, write to the format template, apply the tone and medium guidance, and suppress the ai-patterns. In **review**, produce findings with the review template, applying each rule only where it fits this format, tone, and audience.
### Step 4: Run the final passes, then present
Run the **anti-hallucination pass** (universal-rules.md A9): classify each specific factual claim as Verified / Inferred / Unknown, and ask about or strip the Inferred and Unknown ones; never invent facts. Then run the **ai-patterns pass**. Then run the **reader-walk**: read each paragraph as the actual reader, who was not in your research or your context, and rewrite every sentence they could not restate in their own words without opening a link. Keep your analysis, verification tags and method notes in the notes block; the deliverable carries only what the reader needs. Present the output in the shape defined under Output.
## Reference files
- `references/universal-rules.md` — always-on rules (incl. the A9 anti-hallucination protocol), conditional rules, and the tone and medium guidance. Read every time.
- `references/ai-patterns.md` — LLM tells to suppress so text does not read as machine-written. Read every time you draft.
- `references/formats/` — per-format templates and rules. Currently supported:
- `references/formats/proposal/` — internal decision/strategy proposal. Load the base (proposal.md) plus exactly one level file: proposal-floater.md, proposal-onepager.md, or proposal-full.md.
- `references/formats/raci/` — RACI responsibility matrix (Responsible / Accountable / Consulted / Informed). Load the base (raci.md) plus exactly one level file: raci-prose.md for plain text in Slack or email, or raci-onepager.md for the wiki-page artifact. The base carries the *ownership clause*: the mandatory sections that stop a RACI becoming a "not my job" shield or a blame map.
- `references/formats/peer-feedback.md` — peer performance feedback (Strengths + Opportunities). Single file; no completeness levels. Collects receiver role, optional role expectations, and optional org values before generating or reviewing SBI-structured feedback items.
- `references/formats/poster.md` — program or project poster: the durable 1-2 page orientation page for work that already exists (what / why and why now / which goal it ladders up to / in and out of scope / tenets). Also answers to program brief, program overview, program profile, and project charter. Single file; two variants (program, project) selected inside it. Carries the *orientation contract* (the six questions a cold reader must answer without opening a link or asking anyone), the *durability rule* (the page holds the definition of the work, never its condition), and the two tenet tests. Every section is mandatory, glossary included, so the page stands alone. Not a proposal, not a status report, and not the pre-decision workshop artifact that shares the name.
- `references/formats/prfaq.md`: PR/FAQ in the Amazon working-backwards style. It is the launch-day press release for a product not yet built, then a Customer FAQ for the end user (internal or external), an Internal FAQ for the leaders deciding to build it and for the builder team, and visuals of the customer experience: static, simple HTML wireframes first, one per customer benefit, then Mermaid diagrams for journeys and flows. Also answers to PRFAQ, working-backwards doc, and future press release. Single file; no completeness levels. Carries the nine-part press release in AWS's order, a mandatory FAQ core of nine questions plus a menu (around 15 questions), a per-part table of which rules the press release may relax (quotes and wireframe sample content are declared fiction), and length guidelines rather than hard caps: press release 250 to 375 words, press release plus FAQ under about 1,500 words, visuals outside the guide. Not a proposal, and not a real announcement of something already shipped.
- `references/formats/blog.md` — first-person blog post: the author telling colleagues what they think, why, and what changes. Single file; two variants (direction-setting, perspective) selected inside it. Carries the voice rule ("I" for the author's experience, "we" for team change), the altitude rule (direction-setting posts state what and why and leave the how to the team), and optional voice samples to match the author's own cadence.
- `references/formats/_TEMPLATE.md` — scaffold for adding a new format (single-file or base+levels).
To grow the library, copy `_TEMPLATE.md`, fill in the template, default axes, format-specific rules, and which conditional rules to relax, then add a line to the supported list above. Build format-by-format; a small set of well-specified formats beats a large set of thin ones.From aminfara/orchestra, MIT.
More from aminfara/orchestra
- 0.570score
architecture
aminfara
Design a system's target architecture from selected requirements in a PRD (product requirements document), or describe an existing system's as-is…
SkillAFreshness: AClaude Code +9 - 0.570score
skill-linter
aminfara
Lint a SKILL.md against the canonical structural template and report findings (missing sections, wrong ordering, non-canonical headings, infinite-loop risks…
SkillAFreshness: AClaude Code +9 - 0.570score
tasks
aminfara
Create, find, claim, annotate and close Orchestra's features, stories and tasks through one small command-line script whose adapter keeps them in the…
SkillAFreshness: AClaude Code +9 - 0.570score
feedback
aminfara
Record findings from peer checks, code reviews, acceptance and user review gates in Orchestra's feedback ledger, a JSON Lines file, through a bundled script…
SkillAFreshness: AClaude Code +9 - 0.570score
conductor
aminfara
Run an Orchestra flow as the manager of a small team of agent roles (product manager, architect, engineer, reviewer).
SkillAFreshness: AClaude Code +9 - 0.565score
estimation
aminfara
Size requirements as small, medium or large and flag the ones nobody can size yet, using the existing architecture doc and glossary when the system already…
SkillAFreshness: AClaude Code +9 - 0.565score
feasibility
aminfara
Judge whether an idea or a requirement can be built and delivered with known techniques, naming the unproven parts and the smallest experiment that would…
SkillAFreshness: AClaude Code +9 - 0.565score
research
aminfara
Research the market, the users or the technology behind a product decision, through a named lens, and write the findings as a short Markdown document in which…
SkillAFreshness: AClaude Code +9 - 0.565score
tdd-programming
aminfara
Write, change, or fix code test-first, following one set of programming and testing principles (functional core and imperative shell, explicit dependencies…
SkillAFreshness: AClaude Code +9 - 0.565score
ux-design
aminfara
Design the user experience of a product's MVP from its selected requirements in the PRD (and its PR/FAQ, if one exists), as user journeys, an information…
SkillAFreshness: AClaude Code +9 - 0.565score
verification
aminfara
Decide whether work actually achieves its goal by working backward from the outcome to evidence gathered fresh, by running the tests, the product's real entry…
SkillAFreshness: AClaude Code +9 - 0.565score
review
aminfara
Review a code change against what it was meant to do, without the author's claims, through the lenses its risk calls for (function and quality always…
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 14, 2026 (15 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/aminfara/orchestra
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from aminfara
- 0.570score
skill-linter
aminfara
Lint a SKILL.md against the canonical structural template and report findings (missing sections, wrong ordering, non-canonical headings, infinite-loop risks…
SkillAFreshness: AClaude Code +9 - 0.570score
tasks
aminfara
Create, find, claim, annotate and close Orchestra's features, stories and tasks through one small command-line script whose adapter keeps them in the…
SkillAFreshness: AClaude Code +9 - 0.570score
architecture
aminfara
Design a system's target architecture from selected requirements in a PRD (product requirements document), or describe an existing system's as-is…
SkillAFreshness: AClaude Code +9 - 0.570score
feedback
aminfara
Record findings from peer checks, code reviews, acceptance and user review gates in Orchestra's feedback ledger, a JSON Lines file, through a bundled script…
SkillAFreshness: AClaude Code +9 - 0.570score
conductor
aminfara
Run an Orchestra flow as the manager of a small team of agent roles (product manager, architect, engineer, reviewer).
SkillAFreshness: AClaude Code +9 - 0.565score
coach
aminfara
Improve how the Orchestra team works from the evidence in its feedback ledgers, outside any flow.
SkillAFreshness: AClaude Code +9
Cite this page
writing-studio skill. Agent Mart. https://agentmart.dev/skills/aminfara-writing-studio (last updated 2026-10-24)