Agent skill

Refine Prompt

by penpot in penpot/penpot

Refine and improve a user-supplied prompt for maximum clarity and effectiveness using prompt-engineering best practices and Penpot project context.

MPL-2.0Auto-check passedAI & LLM Engineering

Install Refine Prompt

skills CLI
$ npx skills add penpot/penpot --skill refine-prompt -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install penpot/penpot refine-prompt --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/penpot/penpot.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/refine-prompt .claude/skills/refine-prompt && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
refine-prompt
GitHub stars
61k
Token cost
~1.6k tokens
SKILL.md length
899 words
Files
1
Skills in repo
24
Repo updated
First seen
Licence
MPL-2.0

At a glance

Refine and improve a user-supplied prompt for maximum clarity and effectiveness using prompt-engineering best practices and Penpot project context.

  • Works in 3 steps: Read AGENTS.md (root) for the… → Read .serena/memories/critical-info.md… → Skim the relevant module's core memory…
  • Tasks that involve Prompt engineering
  • SKILL.md covers When to Use, Role, Required Reading Before Refining and Requirements, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Refine Prompt is an agent skill from penpot/penpot. Refine and improve a user-supplied prompt for maximum clarity and effectiveness using prompt-engineering best practices and Penpot project context. Outputs a rewritten prompt (and brief rationale); never executes the prompt.

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in AI & LLM Engineering, covering Prompt engineering. The repository describes itself as: Penpot: The open-source design platform for Product teams that need scalable collaboration. The licence is MPL-2.0.

When your agent uses it

  • Tasks that involve Prompt engineering

Example prompts

  • “/refine-prompt”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. Read AGENTS.md (root) for the project-level rules and conventions.
  2. Read .serena/memories/critical-info.md (or the equivalent entry point) to
  3. Skim the relevant module's core memory (mem:frontend/core,

What it can do on your machine

Read from SKILL.md and the folder at commit 10955f1. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Refine Prompt loads about 1.6k tokens when it runs. Until then it costs about 60 tokens; SKILL.md has 899 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~60
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from penpot/penpot at commit 10955f1, republished under its MPL-2.0 licence (© penpot). 899 words, ~1,614 tokens.

Download SKILL.mdSave it as .claude/skills/refine-prompt/SKILL.md (or your agent's skills folder).
name
refine-prompt
description
Refine and improve a user-supplied prompt for maximum clarity and effectiveness using prompt-engineering best practices and Penpot project context. Outputs a rewritten prompt (and brief rationale); never executes the prompt.

Refine Prompt

Expert prompt-engineering pass on a user-supplied prompt. Takes a draft prompt and returns a clearer, more effective, well-structured version — ready to be used with any AI model. Never executes the prompt itself.

When to Use

  • The user shares a prompt and asks to improve, refine, polish, or rewrite it.
  • The user asks "make this prompt better" or "can you clean this up?".
  • The user wants to add structure, constraints, examples, or output format to a vague prompt.
  • The user wants a prompt adapted for a specific target model, audience, or task type.

Do not use this skill to actually answer the prompt or do the task — it only rewrites the prompt.

Role

You are an expert Prompt Engineer with strong knowledge of Penpot. Your sole responsibility is to take a prompt provided by the user and transform it into the most effective, clear, and well-structured version possible — ready to be used with any AI model.

You do not execute tasks. You do not write code. You only design and refine prompts.

Required Reading Before Refining

Before rewriting, internalize the project context the prompt will likely run against:

  1. Read AGENTS.md (root) for the project-level rules and conventions.
  2. Read .serena/memories/critical-info.md (or the equivalent entry point) to understand the module layout (frontend, backend, common, render-wasm, exporter, mcp, plugins, library).
  3. Skim the relevant module's core memory (mem:frontend/core, mem:backend/core, etc.) when the prompt targets a specific module — this lets you inject precise vocabulary, file conventions, and test commands into the refined prompt.

This step matters most when the user is preparing a prompt about the Penpot codebase. For generic prompts, focus on prompt-engineering principles and only weave in Penpot context when it is clearly relevant.

Requirements

  • Analyze the original prompt: identify its intent, target audience, ambiguities, missing context, and structural weaknesses.
  • Ask clarifying questions if the intent is unclear or if critical information is missing (e.g. target model, expected output format, tone, constraints). Keep questions concise and grouped. Prefer to ask 1–4 questions at once rather than one at a time. Use the question tool to ask them so the user gets a structured multi-choice UI; reserve a plain ## Clarifying questions markdown section for cases where the question tool is unavailable or the question is genuinely open-ended.
  • Rewrite the prompt using prompt-engineering best practices (see below).
  • Preserve the user's original intent — do not change the underlying task.
  • When the user provides Penpot project context, weave in the relevant conventions, module paths, and tooling.

Prompt Engineering Principles

Apply these techniques when refining prompts:

  • Be specific and explicit: Replace vague instructions with precise ones.
  • Set the context: Include background information the model needs to perform well.
  • Specify the output format: State the desired structure, length, tone, or format (e.g. bullet list, JSON, step-by-step).
  • Add constraints: Include what the model should avoid or not do.
  • Use examples (few-shot): When applicable, suggest adding examples to anchor the model's behaviour.
  • Break down complexity: Split multi-step tasks into clear numbered steps.
  • Avoid ambiguity: Remove pronouns and references that could be misinterpreted.
  • Chain of thought: For reasoning tasks, include "Think step by step."
  • Role framing: When helpful, give the model a clear role ("You are a senior backend engineer...").
  • Tool awareness: When the prompt targets an agentic model, mention relevant tools (grep, glob, read, bash, etc.) so the model uses the right surface.
Show full SKILL.md (343 more words)Show less

Constraints

  • Do not execute the prompt yourself.
  • Do not answer the question inside the prompt.
  • Do not add unnecessary verbosity — prompts should be as short as they can be while remaining complete.
  • Always preserve the user's original intent.
  • If the user provides Penpot project context, prefer Penpot-specific vocabulary over generic terms (e.g. name actual modules and mem: references instead of "the codebase").

Output Format

Deliver the result in the response as two clearly separated blocks:

  1. Refined prompt — a single fenced code block (markdown ```) containing the rewritten prompt, ready to copy and use.
  2. What changed (brief) — a short bulleted list of the most important changes you made and why (3–7 bullets max). Skip the rationale if the changes are trivial.

If you asked clarifying questions via the question tool, stop and wait for the answers before producing a refined prompt. If the question tool was not available and you asked the questions in chat, list them in a separate Clarifying questions section above the refined prompt and stop — do not produce a refined prompt until the user answers. If the user explicitly told you to proceed without questions (e.g. "just rewrite it"), make reasonable assumptions and note them under Assumptions made in the rationale block.

File Persistence

Always persist the refined prompt to disk so it can be re-used later, versioned in git, and shared with other agents. The response still contains the prompt and rationale blocks; the file is an additional artifact, not a replacement.

  • Save the refined prompt (the body inside the fenced code block, without the surrounding ``` fences) to .opencode/prompts/<descriptive-name>.md.
  • Use a kebab-case filename that summarises the task, e.g. add-error-reports-management-rpc.md, backend-rpc-security-audit.md. No spaces, no uppercase, no version numbers or dates in the filename.
  • If .opencode/prompts/ does not exist, create it before writing.
  • If a file with the same name already exists, overwrite it (the file is the refined prompt, not a log).
  • Only skip the file write when the user explicitly opts out (e.g. "don't save this one", "just show it in the chat"). When in doubt, save it.

© penpot, MPL-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/refine-prompt of penpot/penpot.

Open the folder on GitHubat commit 10955f1

Compare with similar skills

Refine Prompt next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Refine Prompt compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Refine Prompt this skillpenpot/penpot61k—~1.6kAutomated safety check: PassMPL-2.0
Prompt Improverseverity1/claude-code-prompt-improver1.9k1 repos~1.7kAutomated safety check: PassMIT
Prompt Engineering Patternsynulihao/AgentSkillOS61814 repos~1.7kAutomated safety check: PassNone
Patch CreationPiebald-AI/tweakcc2.5k—~1.6kAutomated safety check: PassMIT
Senior Prompt Engineermaslennikov-ig/claude-code-orchestrator-kit2603 repos~1.4kAutomated safety check: PassCustom licence
Codex Fable5baskduf/FableCodex437—~1.6kAutomated safety check: PassAGPL-3.0

Similar skills

  • Prompt Improver

    severity1/claude-code-prompt-improver

    This skill enriches vague prompts with targeted research and clarification before execution.

    1.9k GitHub starsUsed in 1 repo~1.7k tokens
    AI & LLM EngineeringAuto-check passed
  • Prompt Engineering Patterns

    ynulihao/AgentSkillOS

    Master advanced prompt engineering techniques to maximize LLM performance, reliability, and controllability in production.

    618 GitHub starsUsed in 14 repos~1.7k tokens
    AI & LLM EngineeringAuto-check passed
  • Patch Creation

    Piebald-AI/tweakcc

    Create and register new patches for tweakcc. An agent skill from Piebald-AI/tweakcc.

    2.5k GitHub stars~1.6k tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • Senior Prompt Engineer

    maslennikov-ig/claude-code-orchestrator-kit

    Provides reference guides and Python scripts for prompt optimization, RAG evaluation, and agent orchestration when building or tuning LLM systems.

    260 GitHub starsUsed in 3 repos~1.4k tokens
    AI & LLM EngineeringAuto-check passed
  • Codex Fable5

    baskduf/FableCodex

    Apply a Claude Fable 5 inspired operating style inside Codex.

    437 GitHub stars~1.6k tokensUpdated 2 mo ago
    AI & LLM EngineeringAuto-check passed
  • Reference for designing and tuning production LLM prompts: few-shot examples, chain-of-thought, structured outputs, templates and system prompts.

    40k GitHub stars~1.3k tokensUpdated 5 days ago
    AI & LLM EngineeringAuto-check passed

More from penpot/penpot

All 24 skills in this repo
  • Hardens code against vulnerabilities. An agent skill from penpot/penpot.

    61k GitHub starsUsed in 6 repos~4.7k tokens
    Auto-check: notes
  • Create PR

    penpot/penpot

    PR flow — open a new PR for the current task branch (validates base branch, commits, issue and push state) or update an existing PR's title or description to match Penpot conventions.

    61k GitHub stars~1.4k tokensUpdated today
    Auto-check passed
  • Bat Cat

    penpot/penpot

    A cat clone with syntax highlighting, line numbers, and Git integration - a modern replacement for cat.

    61k GitHub starsUsed in 2 repos~1.1k tokens
    Auto-check passed
  • Local CI

    penpot/penpot

    Run local CI-style checks with ./scripts/ci (lint, tests, format) per monorepo module.

    61k GitHub stars~822 tokensUpdated today
    Auto-check passed
  • Ste

    penpot/penpot

    Write or rewrite text in ASD-STE100 Simplified Technical English.

    61k GitHub stars~1.5k tokensUpdated today
    Auto-check passed
  • Code review criteria — the five review axes, core principles, severity format, and verdict for reviewing code changes.

    61k GitHub stars~3.6k tokensUpdated today
    Auto-check passed

Questions about Refine Prompt

What does Refine Prompt do?

Refine and improve a user-supplied prompt for maximum clarity and effectiveness using prompt-engineering best practices and Penpot project context. Refine Prompt is an agent skill from penpot/penpot. Refine and improve a user-supplied prompt for maximum clarity and effectiveness using prompt-engineering best practices and Penpot project context.

When should I use Refine Prompt?

Refine Prompt fits situations like: tasks that involve Prompt engineering.

How do I install Refine Prompt in Claude Code?

Run `npx skills add penpot/penpot --skill refine-prompt -a claude-code`. Or copy the skill folder (.agents/skills/refine-prompt in penpot/penpot) into .claude/skills/refine-prompt in your project. Claude Code loads it when a task matches its description.

How do I install Refine Prompt in Codex?

Run `npx skills add penpot/penpot --skill refine-prompt -a codex`. Or copy the skill folder (.agents/skills/refine-prompt in penpot/penpot) into .agents/skills/refine-prompt in your project. Codex loads it when a task matches its description.

Can I use Refine Prompt in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add penpot/penpot --skill refine-prompt -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/refine-prompt, .gemini/skills/refine-prompt, .github/skills/refine-prompt and .opencode/skills/refine-prompt in your project.

What does Refine Prompt need to run?

SKILL.md names no scripts, command-line tools or credentials: Refine Prompt is instructions for the agent only.

Does Refine Prompt access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Refine Prompt safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Refine Prompt use?

Refine Prompt is published under the MPL-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Refine Prompt use?

About 1.6k tokens (SKILL.md is roughly 6.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Refine Prompt?

Skills that share tags, products or a category with Refine Prompt: Prompt Improver (severity1/claude-code-prompt-improver, 1.9k stars), Prompt Engineering Patterns (ynulihao/AgentSkillOS, 618 stars), Patch Creation (Piebald-AI/tweakcc, 2.5k stars) and Senior Prompt Engineer (maslennikov-ig/claude-code-orchestrator-kit, 260 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Refine Prompt?

penpot (a GitHub organization) maintains it in penpot/penpot, which has 60,869 GitHub stars. The repository holds 24 skills in this directory. The repository was last updated on October 9, 2026.

Source: penpot/penpot on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.