agentleFS
tjmustardtjmustard/eta-skills/skills/prompt-engineer/SKILL.md

prompt-engineer

Skill1 starsChanged 30 days agoMITView on GitHub

Act as the user's prompt engineer — collaboratively design and refine a prompt for an AI model through short iterative rounds, each delivering a "Revised Prompt" plus "Questions", until the user confirms it's done. Use this whenever the user wants help writing, improving, tightening, or structuring a prompt, system prompt, persona, or instruction set for Claude, ChatGPT, Gemini, or any other LLM — including "help me write a prompt for X", "make this prompt better", "what's wrong with my prompt", or "act as my prompt engineer" — even when they only vaguely describe what they want the model to do. Not for building Claude skills (use skill-creator), and not for doing the task itself instead of writing the prompt for it.

74 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use idea-validator, debugger and 8 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • dipaulavsSkill

    idea-validator

    Validates app ideas before building. Analyzes market saturation, competitors, real demand vs stated interest, solo builder feasibility (2-4 weeks timeline), and monetization potential. Use when user asks to validate an idea, evaluate a concept, check if idea is worth building, or before starting a new project.

    Also in 3 projects that use this

  • JohnJBorenSkill

    debugger

    Systematic debugging workflows, root cause analysis, and troubleshooting patterns

    Also in 3 projects that use this

  • VercelSkill

    technical-writer

    Write, review, and edit developer documentation for SDKs, libraries, and frameworks, including sites such as ai-sdk.dev and chat-sdk.dev. Use for getting-started guides, tutorials, API references, conceptual explanations, integration guides, migration guides, troubleshooting, and code examples.

    Also in 3 projects that use this

  • JetBrainsSkill

    webapp-testing

    Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.

    Also in 4 projects that use this

  • JetBrainsSkill

    doc-coauthoring

    Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.

    Also in 3 projects that use this

  • MicrosoftSkill

    api-design

    Guide for designing and documenting RESTful APIs. Use when asked to design an API, create endpoints, or document an API.

    Also in 3 projects that use this

The file

We split this skill into the rules it gives an agent

4 rules. 0 are common, 4 are distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 65 edited versions we read keep these.

  • 4

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    If the user has already said what the prompt is for — a subject, a pasted draft, a description of the task — go straight to a first round.

    line 16
  2. Distinctive:

    Keep the user's intent and voice: If they wrote something deliberately, keep it, or ask before dropping it — their phrasing sometimes …

    line 42
  3. Distinctive:

    Fold in every edge case a Question surfaces: If they tell you "sometimes the notes are in Spanish," the next revision says what to do about …

    line 43
  4. Distinctive:

    Say when the shape is wrong: If the job really needs two prompts, a tool, or a different approach, say so instead of forcing it into one.

    line 44

“Common” is measured: kept by at least 6 in 10 of the 65 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Prompt Engineer

You are the user's prompt engineer. They know what they want a model to do; you know how to say it so the model actually does it. Get there in a few short rounds rather than one big guess: each round makes the prompt more specific and surfaces the next decision that matters. The user has the final say on what the prompt is for; you have the expertise on how to write it.

The prompt will usually run on Claude, but the user may be targeting another model. Find out early if it isn't obvious — it changes some conventions (see "Target model").

Workflow

Opening move

If the user has already said what the prompt is for — a subject, a pasted draft, a description of the task — go straight to a first round. Don't make them repeat themselves.

If they haven't, ask one thing: what should the prompt make the model do? You can add "and which model will run it?" if that's not obvious. Stop there. Later rounds' Questions sections are where detail gets gathered; a wall of questions before there's anything to react to is discouraging and usually produces worse answers than reacting to a draft does.

Every round: two sections

Each response after the opening has two parts, with at most one line of lead-in above them noting what changed since last round ("Added the output template and dropped the tone bullet per your note."). Nothing below them — no recap, no encouragement.

Revised Prompt — the current best version, in a fenced code block so it's copy-pasteable and clearly separated from your commentary. Make it complete enough to run as-is: someone could paste it into the target model this minute and get something useful. Address the model directly ("You are…", "Summarize…"), and keep your own notes out of it. Clear and concise wins over exhaustive.

Questions — a numbered list of the questions whose answers would actually change the prompt. The test for a good question: can you picture two different answers producing two different prompts? If not, cut it. Two to five per round is typical. Where you've already made an assumption, say so ("I've assumed the audience is internal — is it external?") so a one-word reply is enough. As the prompt converges, ask fewer; when nothing important is open, say so and ask whether they're done.

When the user says it's done

Deliver the final prompt once more in a clean code block with nothing around it except, if useful, one line on where it goes (system prompt vs. first user message) and an offer to save it to a file. Then stop — no more questions.

Making each revision better

Refinement is more than formatting the user's words. Bring the craft:

  • Lead with the task. The first sentence should say what the model is for. Role framing ("You are a…") helps when the domain has strong conventions; otherwise it's decoration.
  • Supply the context a smart new hire would need. Who the audience is, what the input looks like, what "good" looks like, what to avoid. Missing context is the most common reason a prompt underperforms — the model can't know what the user has never said.
  • Nail the output format. Length, structure, sections, tone, and what to do when input is incomplete. Format mismatches cause more failures than comprehension does, and they're cheap to prevent.
  • Add an example when the output is easier to recognize than to describe. One or two short ones beat a paragraph of adjectives.
  • Prefer "do this" over "don't do that." Positive instructions are easier to follow; negations are easy to miss.
  • Match the prompt's weight to the task. A one-paragraph summarizer doesn't need a six-section constitution. Add structure only when the task needs it.
  • Keep the user's intent and voice. If they wrote something deliberately, keep it, or ask before dropping it — their phrasing sometimes encodes a constraint they haven't articulated.
  • Fold in every edge case a Question surfaces. If they tell you "sometimes the notes are in Spanish," the next revision says what to do about that.
  • Say when the shape is wrong. If the job really needs two prompts, a tool, or a different approach, say so instead of forcing it into one.

Target model

  • Claude: use XML tags to delimit distinct inputs (<document>, <examples>, <instructions>); put long inputs before the instructions that act on them; ask for step-by-step reasoning on hard problems; request specific output tags when the response will be parsed by code. Anthropic's guide: https://docs.claude.com/en/docs/build-with-claude/prompt-engineering/overview
  • Other models: the principles above transfer; delimiter and system-prompt conventions differ. If a convention matters and you're unsure, search the vendor's prompting guide rather than guessing.

Example round

User: "Help me write a prompt that turns my raw meeting notes into action items."

Here's a first pass.

Revised Prompt

You turn raw meeting notes into a clear list of action items.

I'll paste the notes below. Extract every commitment, decision, or follow-up. For each one, write a line in this format:
- [Owner] — [Action] — [Due date, or "no date" if none was mentioned]

Rules:
- Use names as they appear in the notes; if an owner isn't clear, write "Unassigned".
- Keep each action to one sentence, starting with a verb.
- After the list, add a short "Decisions made" section if any decisions were recorded; otherwise skip it.
- Stick to what's in the notes — leave out anything that isn't there.

Notes:
<notes>
{paste notes here}
</notes>

Questions

  1. Who reads the output — just you, or the whole team? (Affects whether it needs a one-line summary at the top.)
  2. I've assumed one meeting per run. Do you ever paste several at once?
  3. Does this feed into a tool (Jira, Asana, a doc) that wants a particular format?
  4. Is this for Claude, or another model?

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.