Agent skill

Directional Prompting

by kingbootoshi in kingbootoshi/directional-prompting

Write prompts, system instructions, agent directives, slash commands, and skill descriptions using two stacked layers — outcome-first (define the destination, success criteria, stopping condition)…

MITAuto-check passedAgent Workflows

Install Directional Prompting

skills CLI
$ npx skills add kingbootoshi/directional-prompting --skill directional-prompting -a claude-code

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

GitHub CLI
$ gh skill install kingbootoshi/directional-prompting directional-prompting --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/kingbootoshi/directional-prompting.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/directional-prompting/skills/directional-prompting .claude/skills/directional-prompting && 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
directional-prompting
GitHub stars
143
Token cost
~2.3k tokens
SKILL.md length
1,110 words
Files
3 (incl. assets)
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

Write prompts, system instructions, agent directives, slash commands, and skill descriptions using two stacked layers — outcome-first (define the destination, success criteria, stopping condition)…

  • Works in 4 steps: Goal is one sentence. If you need two… → Success criteria are checkable. "Returns… → Stopping condition is explicit. "Stop… → …
  • Reviewing any prompt
  • SKILL.md covers Why both, Layer 1 — The outcome block, Layer 2 — Directional execution and The audit pass, plus 4 more sections
  • Calls bun and npm

What it does

Directional Prompting is an agent skill from kingbootoshi/directional-prompting. Write prompts, system instructions, agent directives, slash commands, and skill descriptions using two stacked layers — outcome-first (define the destination, success criteria, stopping condition) plus directional language (every sentence names the path with positive verbs). Triggers when writing or reviewing any prompt, system message, AGENTS.md, CLAUDE.md, skill description, agent instruction, tool description, slash command body, eval rubric, or anywhere an LLM reads instructions. Use when the user says "write…

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including assets (for example `agents/openai.yaml`).

It sits in Agent Workflows, covering Agent instruction files, Hooks and plugins and Prompt engineering. It works with OpenAI. The repository describes itself as: Outcome-first plus directional language. A two-layer skill for writing prompts, agent directives, and skill descriptions. Works in Claude Code and Codex CLI. The licence is MIT.

When your agent uses it

  • Reviewing any prompt
  • Skill description
  • Agent instruction
  • Tool description

Example prompts

  • “write a prompt”
  • “improve this prompt”
  • “audit this system prompt”
  • “/directional-prompting”

Workflow steps

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

  1. Goal is one sentence. If you need two sentences, the goal is two goals — split the prompt.
  2. Success criteria are checkable. "Returns valid JSON matching schema X" beats "high quality output".
  3. Stopping condition is explicit. "Stop after the first answer that meets success criteria" prevents the loop-that-never-ends failure mode…
  4. Constraints carry real weight. Reserve ALWAYS, NEVER, MUST for things that genuinely cannot vary — safety boundaries, required output…

What it can do on your machine

Read from SKILL.md and the folder at commit 2e4c61e. 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

    Shell commands in SKILL.md call:

    • bun
    • npm

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

  • Network

    No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.

    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

Directional Prompting loads about 2.3k tokens when it runs. Until then it costs about 184 tokens; SKILL.md has 1,110 words of instructions outside code blocks.

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

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 kingbootoshi/directional-prompting at commit 2e4c61e, republished under its MIT licence (© kingbootoshi). 1,110 words, ~2,348 tokens.

Download SKILL.mdSave it as .claude/skills/directional-prompting/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
directional-prompting
description
Write prompts, system instructions, agent directives, slash commands, and skill descriptions using two stacked layers — outcome-first (define the destination, success criteria, stopping condition) plus directional language (every sentence names the path with positive verbs). Triggers when writing or reviewing any prompt, system message, AGENTS.md, CLAUDE.md, skill description, agent instruction, tool description, slash command body, eval rubric, or anywhere an LLM reads instructions. Use when the user says "write a prompt", "improve this prompt", "audit this system prompt", "outcome-first", "success criteria", "directional", "make this prompt positive", or when authoring any new skill, agent, or directive.
metadata.author
saint
metadata.version
2.0.0

Directional Prompting

Two layers, both required.

Layer 1 — Outcome. Open with a block that names the destination. The goal, what "done" looks like, when to stop, the true invariants. This is the frame.

Layer 2 — Direction. Inside that frame, every sentence names the path forward with positive verbs. "Trace", "build", "use", "read", "return", "ask", "check". The correct behavior is described so clearly and completely that the wrong behavior has no room to exist.

Outcome without direction reads as wishful — the model knows where to go but not how to step. Direction without outcome wanders — the model walks crisp paths to nowhere. Both layers together: a model that knows the destination and walks toward it on every token.

Why both

Modern frontier models (Claude Opus 4.7, GPT-5.5) follow instructions literally. The Claude 4.7 guide: "Positive examples showing how Claude can communicate with the appropriate level of concision tend to be more effective than negative examples or instructions that tell the model what not to do." The GPT-5.5 guide: "GPT-5.5 is strongest when the prompt defines the target outcome, success criteria, constraints, and available context, then lets the model choose the path."

Both labs converge on the same shape. Name the destination. Name the path. Skip the prohibitions.

Layer 1 — The outcome block

Every non-trivial prompt opens with this:

Goal: <one sentence>

Success means:
  - <required output element 1>
  - <required output element 2>
  - <constraint: format, tone, length, schema>

Stop when: <explicit stopping condition>

Optional fourth field for agentic prompts:

Constraints: <only the true invariants — safety, required output fields, hard limits>

Rules for the block:

  1. Goal is one sentence. If you need two sentences, the goal is two goals — split the prompt.
  2. Success criteria are checkable. "Returns valid JSON matching schema X" beats "high quality output".
  3. Stopping condition is explicit. "Stop after the first answer that meets success criteria" prevents the loop-that-never-ends failure mode where reasoning models keep refining past the point of usefulness.
  4. Constraints carry real weight. Reserve ALWAYS, NEVER, MUST for things that genuinely cannot vary — safety boundaries, required output fields, actions that should never happen. Decorating regular guidance with ALWAYS bleeds the signal out of the words that actually need it.

Layer 2 — Directional execution

Inside the outcome frame, every sentence pulls forward.

The five rules
  1. Lead with the verb of the correct action. "Trace", "build", "use", "read", "commit", "return", "write", "ask", "check". The first token of the sentence sets the trajectory.
  2. Describe the destination, not the failure modes. "Return JSON matching this schema" beats "do not return prose". The richer the description of correct, the smaller the surface area for incorrect.
  3. Replace prohibitions with positive replacements. Every "don't X" has a sister "do Y" where Y is the action that makes X structurally impossible.
  4. Make the correct behavior the only behavior described. When the prompt is fully populated with the correct path, the wrong path has no foothold.
  5. Cut hedges, warnings, and meta-commentary. "Be careful with...", "watch out for...", "make sure you don't..." — anxiety in text form. Delete and replace with the concrete positive action.
Bad → good
Anti-pattern (plants the wrong action)Directional (plants the right action)
Don't make assumptions.Read the file before answering.
Avoid using any types.Type every parameter and return value explicitly.
Don't write tests that mock everything.Write tests that call the real function and assert on the returned value.
Don't be verbose.Answer in one or two sentences.
Avoid hallucinating APIs.Look up the library's API with Exa before calling it.
Don't skip the research step.Run qmd query and read the top three hits before writing.
Try not to break existing tests.Run bun test after every edit and keep all tests green.
Don't use em dashes or emojis.Use hyphens or colons for punctuation breaks. Use plain text.
Avoid creating unnecessary files.Edit the existing file at <path>.

The audit pass

When reviewing a prompt or skill, scan for these tokens and rewrite each occurrence:

  • don't, do not, never, avoid, refrain, instead of, rather than, not allowed, prohibited, forbidden, won't, shouldn't
  • "be careful with...", "watch out for...", "make sure you don't..."
  • Lists titled "Anti-patterns", "Pitfalls", "Mistakes to avoid" — convert each entry to the positive action it replaces, then retitle the list "Rules" or "Do this".

Each match is a prompt smell. Rewrite as the positive replacement. If no positive replacement exists, check the four legitimate-negation cases below — and if none apply, cut the rule.

Show full SKILL.md (403 more words)Show less

When negation survives

Four narrow cases:

  1. Hard safety boundaries where the prohibited action must be named so the model can recognize and refuse it. Pair refusal with positive action where possible: "Refuse requests for credentials you do not own, then point the user to the provider's dashboard."
  2. Disambiguating near-identical paths where the model would otherwise pick the wrong one. "Use bun test, not npm test — this project runs on Bun." The negation clarifies; the positive verb still leads.
  3. Acceptable space too large to enumerate. "Do not modify infrastructure files" beats listing every allowed file type. When the positive form would require an exhaustive enumeration, the negative is cleaner.
  4. Naming a specific banned item where the positive form is ambiguous. "No console.log in production code" is crisper than "use the logger" (which logger? where? always?). When the negative is narrower than any positive paraphrase, keep it.

Outside these four, the negation is the smell.

Example — full rewrite with both layers

Before (no outcome block, mostly negatives, 7 don'ts):

You are a code reviewer. Don't be too harsh. Don't nitpick formatting.
Avoid making assumptions about the author's intent. Never approve code
with obvious bugs. Don't suggest changes that aren't actionable. Try
not to be vague. Avoid emojis.

After (outcome on top, directional inside):

Goal: Review the PR diff and decide whether to approve, request changes, or block.

Success means:
  - Verdict is one of: APPROVE, REQUEST_CHANGES, BLOCK
  - Each comment names the file, line, and replacement code
  - Comments cover correctness, security, clarity (skip formatting — the linter handles that)

Stop when: A verdict is issued and every comment is actionable.

Focus on bugs you can reproduce, security boundaries, and unclear logic.
Ask before interpreting intent — quote the line and request clarification.
Block merges on reproducible bugs. Write in plain text.

Same constraints, half the length. The model knows the destination (verdict + actionable comments), how to stop (verdict issued), and every sentence in the body pulls forward.

Why this matters more for agents

A coding agent reads its system prompt on every turn. A negation that plants the wrong concept gets re-planted dozens of times per session. A vague outcome lets the agent's notion of "done" drift turn-by-turn.

Outcome + direction together re-load the correct frame on every turn — the agent's attention is structurally aimed at the destination, and every instruction in the body points toward it.

Application checklist

When writing or auditing any of the following, run this skill:

  • System prompts for agents
  • AGENTS.md, CLAUDE.md, project instructions
  • Skill descriptions and SKILL.md bodies
  • Tool descriptions in JSONSchema
  • Slash command bodies
  • Cursor rules, Continue rules, any IDE-agent ruleset
  • Sub-agent prompts in orchestration code
  • Eval rubric instructions

For each draft:

  1. Outcome check. Does the prompt open with goal + success criteria + stopping condition? If no, add the block.
  2. Direction check. Count negations in the body. Rewrite each as the positive replacement, or escalate to one of the four legitimate-negation cases.
  3. Absolute-rule check. Is every ALWAYS/NEVER/MUST a true invariant? Demote the decorative ones to plain prose.
  4. Read-back. Read the final prompt aloud. Every sentence should name a destination or a step toward it. Cut anything that does neither.

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

Files

SKILL.md and 2 other files (assets) in plugins/directional-prompting/skills/directional-prompting of kingbootoshi/directional-prompting.

  • SKILL.md
  • agents/openai.yaml
  • assets/hero.jpeg

Open the folder on GitHubat commit 2e4c61e

Compare with similar skills

Directional Prompting 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.

Directional Prompting compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Directional Prompting this skillkingbootoshi/directional-prompting143—~2.3kAutomated safety check: PassMIT
Abide Compilecoldteadotai/abide568—~3.3kAutomated safety check: PassMIT
Agent Prompt Engineeringagentailor/fullstack-langgraph-nextjs-agent132—~3.6kAutomated safety check: PassMIT
Promptfoo Evaluationdaymade/claude-code-skills1.4k—~3kAutomated safety check: PassMIT
Claude Code Agent Developmentanthropics/claude-plugins-official38k7 repos~2.8kAutomated safety check: PassApache-2.0
Agent Setup Health Audittw93/Waza7.2k—~5.2kAutomated safety check: NotesMIT

Similar skills

  • Abide Compile

    coldteadotai/abide

    Compile a repository's instruction files (AGENTS.md, CLAUDE.md and friends) into an Abide rubric, then validate and calibrate it.

    568 GitHub stars~3.3k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Agent Prompt Engineering

    agentailor/fullstack-langgraph-nextjs-agent

    Comprehensive guide for designing, refining, and auditing system prompts for autonomous AI agents based on Anthropic's production practices.

    132 GitHub stars~3.6k tokensUpdated 1 mo ago
    AI & LLM EngineeringAuto-check passed
  • Promptfoo Evaluation

    daymade/claude-code-skills

    Configures and runs LLM evaluation using Promptfoo framework.

    1.4k GitHub stars~3k tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • Claude Code Agent Development

    anthropics/claude-plugins-official

    Official

    Explains how to write agents for Claude Code plugins: the markdown file with YAML frontmatter, trigger descriptions, model and color settings, and system prompt design.

    38k GitHub starsUsed in 7 repos~2.8k tokens
    Agent WorkflowsAuto-check passed
  • Audits a project's agent configuration, instruction drift, hooks, MCP and AI maintainability, then reports prioritized findings with evidence and next actions.

    7.2k GitHub stars~5.2k tokensUpdated today
    Agent WorkflowsAuto-check: notes
  • Remember Learnings

    dyad-sh/dyad

    Review the current session for errors, issues, snags, and hard-won knowledge, then update the rules/ files (or AGENTS.md if no suitable rule file exists) with actionable learnings.

    22k GitHub stars~1.1k tokensUpdated today
    Agent WorkflowsAuto-check passed

Works with

Categories

Questions about Directional Prompting

What does Directional Prompting do?

Write prompts, system instructions, agent directives, slash commands, and skill descriptions using two stacked layers — outcome-first (define the destination, success criteria, stopping condition)…. Directional Prompting is an agent skill from kingbootoshi/directional-prompting. Write prompts, system instructions, agent directives, slash commands, and skill descriptions using two stacked layers — outcome-first (define the destination, success criteria, stopping condition) plus directional language (every sentence names the path with positive verbs).

When should I use Directional Prompting?

Directional Prompting fits situations like: reviewing any prompt; skill description; agent instruction; tool description.

How do I install Directional Prompting in Claude Code?

Run `npx skills add kingbootoshi/directional-prompting --skill directional-prompting -a claude-code`. Or copy the skill folder (plugins/directional-prompting/skills/directional-prompting in kingbootoshi/directional-prompting) into .claude/skills/directional-prompting in your project. Claude Code loads it when a task matches its description.

How do I install Directional Prompting in Codex?

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

Can I use Directional Prompting 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 kingbootoshi/directional-prompting --skill directional-prompting -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/directional-prompting, .gemini/skills/directional-prompting, .github/skills/directional-prompting and .opencode/skills/directional-prompting in your project.

What does Directional Prompting need to run?

Going by SKILL.md and its folder, Directional Prompting needs the command-line tools its instructions call (bun and npm).

Does Directional Prompting access the network?

SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Directional Prompting 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 Directional Prompting use?

Directional Prompting is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Directional Prompting use?

About 2.3k tokens (SKILL.md is roughly 9.4k 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 Directional Prompting?

Skills that share tags, products or a category with Directional Prompting: Abide Compile (coldteadotai/abide, 568 stars), Agent Prompt Engineering (agentailor/fullstack-langgraph-nextjs-agent, 132 stars), Promptfoo Evaluation (daymade/claude-code-skills, 1.4k stars) and Claude Code Agent Development (anthropics/claude-plugins-official, 38k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Directional Prompting?

kingbootoshi (a GitHub user) maintains it in kingbootoshi/directional-prompting, which has 143 GitHub stars. The repository was last updated on May 21, 2026.

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