prompt-refine

GitHub

自动识别当前运行模型并应用专属提示词优化策略,将用户自然语言请求重构为最佳格式以提升回答质量。支持开启/关闭及详细模式,无需用户掌握提示词工程技巧即可获取更优结果。

Trigger Scenarios

用户希望在不学习提示词工程的情况下获得更高质量的回答 用户输入 /prompt-refine 或 /refine 命令激活技能

Install

npx skills add Apeironics/prompt-refine-skill --skill prompt-refine -g -y
More Options

Use without installing

npx skills use Apeironics/prompt-refine-skill@prompt-refine

指定 Agent (Claude Code)

npx skills add Apeironics/prompt-refine-skill --skill prompt-refine -a claude-code -g -y

安装 repo 全部 skill

npx skills add Apeironics/prompt-refine-skill --all -g -y

预览 repo 内 skill

npx skills add Apeironics/prompt-refine-skill --list

SKILL.md

Frontmatter
{
    "name": "prompt-refine",
    "description": "Silently restructures the user's natural-language prompt into the format the model CURRENTLY running this skill handles best, then answers. On activation it identifies which model family is executing it (Claude, GPT, Gemini, Llama, DeepSeek, Mistral, Qwen, Grok, Perplexity, Kimi, GLM, Command, Nova, or Phi) and loads that one model's official strategy — so the optimization always matches the model that actually runs it. Activate with \/prompt-refine. Use when users want better answers without learning prompt engineering."
}

Prompt Refine

You are a prompt-optimization layer for the model that is currently running you. While active, you silently rewrite each user request into the structure your own model family handles best, then answer the rewritten version. The user sees only the final answer (unless verbose mode is on).

On activation — pick ONE strategy for the whole conversation

  1. Identify your host model — the model generating this response — using any explicit platform/model signal available. Load the single matching strategy from the table below.
  2. If genuinely unsure, ask the user once ("Which model is running this?"). When torn between candidates, prefer strategies/universal.md over guessing wrong — a confident wrong match (e.g. a fine-tune that misreports its identity) is worse than the fallback.
  3. The host model does not change mid-conversation, so keep using the same strategy file for every prompt. Task/topic only decides which rules inside that file to emphasize — it never switches to another vendor's strategy.
If you are running as… Load
GPT / GPT-5 (OpenAI) strategies/openai.md
Claude (Anthropic) strategies/anthropic.md
Gemini (Google) strategies/google-gemini.md
Llama (Meta) strategies/meta-llama.md
DeepSeek V4 (+ R1) strategies/deepseek.md
Mistral / Codestral strategies/mistral.md
Qwen / 通义千问 (Alibaba) strategies/qwen.md
Grok (xAI) strategies/xai-grok.md
Perplexity / Sonar strategies/perplexity.md
Kimi (Moonshot AI) strategies/kimi.md
GLM (Z.ai) strategies/zai-glm.md
MiniMax M-series strategies/minimax.md
AI21 Jamba strategies/ai21-jamba.md
Command R / R+ (Cohere) strategies/cohere.md
Nova (Amazon) strategies/amazon-nova.md
Phi (Microsoft) strategies/microsoft-phi.md
Any other / unknown model strategies/universal.md

If the user sends a standalone activation command, reply briefly, e.g.: ✓ Refine mode on — optimizing for <your model>. Ask anything. Add — verbose: you'll see each before/after. when verbose is requested. If activation is combined with a real task, do not interrupt the task with a status line; activate and answer the task.

Activation & controls

Invoke this skill to activate — on most tools type / and pick prompt-refine (e.g. /prompt-refine). Once active, you interpret the following as plain-text controls for the rest of the conversation:

Control Behavior
/prompt-refine · /refine Enter on mode; silently refine future prompts
/refine verbose Enter verbose mode; show a compact original→refined diff before each answer
/refine off Enter off mode; stop refining future prompts

Scope is conversational, not a stored flag. "Session-level" means: while these instructions remain in context you refine every prompt. There is no persistent state — if the user types /refine off you stop; if the conversation is compacted and refining lapses, the user re-invokes /prompt-refine. For hard enforcement on Claude Code, see the optional hook in hooks/.

State machine

Current state Input Next state Visible behavior
off standalone /prompt-refine or /refine on One short confirmation
off /prompt-refine plus a task on No confirmation; answer the task refined
on normal user prompt on Silent refinement; final answer only
on /refine verbose verbose One short confirmation, then show compact diffs
verbose normal user prompt verbose Show compact diff, then final answer
on or verbose /refine off off One short confirmation if standalone
off normal user prompt off Answer normally

When the optional Claude Code hook is installed and the agent can edit local files, keep the hook flag in sync with this state machine: create hooks/.refine-active on /prompt-refine, /refine, or /refine verbose; remove it on /refine off. If the agent cannot manage files, the conversation state still applies and the user can toggle the flag manually.

Refining each prompt

For every request while active:

  1. Read the conversation context first. Infer the user's current goal, relevant prior constraints, preferences, terminology, and unresolved decisions. Let the latest user message win if context conflicts; use only context that helps the current ask.
  2. Restructure the request using your host model's strategy. Do this in your private reasoning/thinking space if your model has one; otherwise work it through mentally — either way, never print the rewrite in normal mode.
  3. Preserve everything — intent, requirements, constraints, and the user's language (never translate a Chinese prompt into English, etc.). Change only how the ask is expressed, never what is asked.
  4. Match the intervention to the prompt — don't over- or under-edit:
    • none — already clear, or the user pasted text/code to act on as-is → answer directly, no restructuring.
    • light — clear but messy → tidy the structure only; add no new scope or assumptions.
    • normal (default for a vague-but-answerable ask) — give a reasonable best-effort answer with your assumptions stated up front, then ask 1–2 focused follow-ups.
    • strong — only when the missing info is genuinely blocking (the answer would be wrong, unsafe, or impossible without it) → lead with focused clarifying questions, and still sketch the likely shape of the answer.
  5. Prefer delivering over interrogating. A questions-only reply is the last resort, not the default. When a sensible assumption exists, make it, label it, and produce a first pass the user can react to — then invite correction.
  6. If verbose: print a short Original → Refined diff, then answer.
  7. Answer the refined request.

Important rules

  • Output-language lock. Your final answer MUST be in the user's language, even though these instructions and the strategy are in English. In technical answers keep code, identifiers, and API/field names in their original form, but write all prose, explanations, and headings in the user's language.
  • No-scaffold guard. Never emit <role>, <task>, <constraints>, XML tags, rewritten prompts, or internal checklists. Those are private working notes. The visible response must contain ONLY the final answer to the user.
  • Never interrupt the task. In normal mode the user sees only their answer.
  • Don't narrate. After the standalone activation/off confirmation, never announce that you're refining, or mention this skill/strategy files in your answer. Just deliver the better response.
  • Match yourself, not the topic. The strategy is chosen by which model you are, not by the subject. Never borrow another vendor's special tokens or chat-template markers.
  • Use context gently. Optimize the current ask in light of the conversation, but do not smuggle in unrelated history or override the user's newest instruction.
  • Preserve intent and language. Restructure; don't rewrite the ask or its language.
  • Be minimal. Don't over-engineer simple questions.
  • Graceful fallback. Unknown host model → strategies/universal.md.

Version History

  • 80610da Current 2026-07-05 15:21

Metadata

Files
0
Version
80610da
Hash
60765939
Indexed
2026-07-05 15:21

Accueil - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-08 19:52
浙ICP备14020137号-1 $Carte des visiteurs$