← All skills
AI skills · Job 2

Write me a first draft

It writes, you check, and nothing is saved until you say yes

In short

The AI writes a first try for you.

It shows it to you first.

It only saves it when you say yes.

It never makes up facts.

Imagine asking a friend to write a birthday card for you. They write it, hand it to you to read, and only put it in the envelope once you say "yes, that's good". If they wrote "Happy 40th!" when you never said an age, you'd want to catch that before it's sent.

These skills write a first draft from notes you give them: part of a product plan, a blog post's opening, a social media post, or a "what's new" list. They show you the draft first, and save the file only after your yes. Anything your notes don't say, they mark as an open question instead of making it up.

What they do — and what they won't do

They do:

  • Write from your notes only
  • Mark missing facts as open questions
  • Show you the whole draft before saving
  • Ask again for every new save

They won't:

  • Invent a number, a quote or a goal you never gave them
  • Save the file first and ask afterwards
  • Take one "looks good" as a yes forever
  • Work from a vague request (they send you to Job 1)
How it works Clear notes go in. The AI writes the draft and shows it to you. If you say yes, it saves the file. If you say no, nothing is saved; it fixes the draft and asks again. Clear notes questions already answered Write the draft Show it to you You say yes? yes no Saved to the file Nothing saved fix it, ask again

Pick a team

Every team has its own version of this skill. Pick one to see its request and what the real AI said.

A good draft vs a weak one

The Product team's skill is the PRD Draft Assistant. It writes part of a product plan (a "PRD" — product requirements document). For the notes below, this is what we built it to do — and the kind of draft it must avoid.

  • ✅ "The problem: about 15 support tickets a month ask how to get this data into a spreadsheet."

    Good: the number comes straight from the notes.

  • ✅ "Not in this release: PDF export, the phone app, scheduled exports."

    Good: it keeps out what the notes kept out.

  • ❌ "Goal: cut these tickets by 50%."

    Weak: the notes never gave a target. "50%" is made up — it should be an open question.

  • ❌ "I've created PRD.md for you."

    Weak: it saved before showing you the draft and hearing your yes.

The lesson: a good first draft only says what you told it, and lets you read it before anything is saved.

What we gave the AI

The request:

Use the PRD Draft Assistant to draft the Problem Statement and Goals sections of PRD.md from this confirmed brief.

The notes — the questions from Job 1, now answered:

Confirmed brief:
- Feature: CSV export of the currently filtered view on the Reports page.
- Audience: all users with "Analyst" role or above.
- Goal: reduce the number of support tickets asking "how do I get this
  data into a spreadsheet" (currently ~15/month).
- Out of scope for this release: PDF export, mobile app, scheduled exports.
- No target file exists yet — create PRD.md.

A "CSV" is a simple file that opens in a spreadsheet. The "Analyst" role is one kind of user account.

What the real AI said

    Loading the recorded run…

    See this skill's recipe card on GitHub

    A good draft vs a weak one

    The Content team's skill is the Content Draft Assistant. Here it writes the opening paragraph of a blog post about the new export. This is what we built it to do — and the kind of draft it must avoid.

    • ✅ "One-click CSV export is now on the reports page."

      Good: short and matter-of-fact, just as the notes asked.

    • ✅ Writes only the opening paragraph, then asks: "OK to save this in blog-post.md?"

      Good: only what was asked for, and nothing saved without your yes.

    • ❌ "We're thrilled to announce…!"

      Weak: the notes said no hype.

    • ❌ "Over 500 customers asked for this."

      Weak: no number was given. It made one up.

    The lesson: the notes set the tone, not the AI's taste for exciting words.

    What we gave the AI

    The request:

    Use the Content Draft Assistant to draft the intro paragraph of blog-post.md from this confirmed brief: we're announcing one-click CSV export on the reports page, aimed at existing customers who've asked for it, tone should be short and matter-of-fact, not hype-y.

    The notes — agreed after Job 1:

    Feature: one-click CSV export, reports page.
    Audience: existing customers who requested it (per support tickets).
    Tone: short, matter-of-fact, no hype language.
    Format: blog post, this is the intro paragraph only.

    A "CSV" is a simple file that opens in a spreadsheet. A "brief" is a short note that says what to write.

    What the real AI said

      Loading the recorded run…

      See this skill's recipe card on GitHub

      A good draft vs a weak one

      The Social media team's skill is the Social Caption Drafter. Here it writes a LinkedIn post about the new export. This is what we built it to do — and the kind of draft it must avoid.

      • ✅ "One-click CSV export is now on the Reports page. Details in the changelog: [link]"

        Good: short, plain, and it uses the link it was told to use.

      • ✅ "Nothing saved yet. OK to save this in caption.md?"

        Good: you read it before anything is saved.

      • ❌ "🚀 Huge news!!! #export #productivity"

        Weak: hype and hashtags that nobody asked for.

      • ❌ One post written for LinkedIn, X and Instagram in one go.

        Weak: each site is its own draft, with its own yes.

      The lesson: a post goes out in your company's name. You see every word before it's saved.

      What we gave the AI

      The request:

      Use the Social Caption Drafter to draft a LinkedIn caption in caption.md for our new one-click CSV export, from this confirmed brief: aimed at existing customers who requested it, tone should be short and matter-of-fact, not hype-y, include a link to the changelog.

      The notes — agreed after Job 1:

      Feature: one-click CSV export, reports page.
      Platform: LinkedIn.
      Audience: existing customers who requested it (per support tickets).
      Tone: short, matter-of-fact, no hype language.
      Link: changelog entry (URL supplied separately).

      A "caption" is the text that goes with a social media post. The notes say the link comes separately — so a good draft leaves a gap for it rather than inventing one.

      What the real AI said

        Loading the recorded run…

        See this skill's recipe card on GitHub

        A good draft vs a weak one

        The Software team's skill is the Changelog Entry Drafter. It writes the "what's new" note for the next version of a program. This is what we built it to do — and the kind of draft it must avoid.

        In plain words:

        • A commit is one small saved step of a programmer's work, with a one-line note.
        • A changelog is the "what's new" list people read when a new version comes out.
        • v1.3.0 and v1.4.0 are version numbers, like the edition of a book.
        • Each note starts with feat (something new), fix (a repair) or chore (tidying up behind the scenes, like "bump lint config").
        • ✅ "Added: a CSV export option on the reports page. Fixed: the time zone in report exports; a crash when the project list is empty."

          Good: sorted into what's new and what's fixed, in words users understand.

        • ✅ Leaves out "bump lint config".

          Good: that's behind-the-scenes tidying that users never notice.

        • ❌ "Changed: bumped lint config."

          Weak: it's noise for the people reading "what's new".

        • ❌ Adds the entry to CHANGELOG.md without showing it first.

          Weak: it saved before hearing your yes.

        The lesson: a good "what's new" note speaks to users, not to programmers — and still waits for your yes.

        What we gave the AI

        The request:

        Use the Changelog Entry Drafter. We're about to tag v1.4.0 — draft a changelog entry from the commits since v1.3.0.

        The notes — the four commits since the last version (the code at the start of each line is just its ID):

        a1b2c3d fix: correct timezone offset in report export
        e4f5g6h feat: add CSV export option to reports page
        h7i8j9k chore: bump lint config
        k1l2m3n fix: handle empty project list without crashing

        What the real AI said

          Loading the recorded run…

          See this skill's recipe card on GitHub