wish

wish is a skill for Codex from automagik-dev/genie. It costs 47 tokens per session (3,316 once invoked), scanned A, original, MIT.

A planning procedure that turns an idea into a structured work plan called a wish. The plan records the project's scope, success conditions, and groups of work to be completed.

In plain words
What is it for?
Use it to define non-trivial features or changes, break them into execution groups, and record acceptance criteria in a WISH.md file.
Why use it?
It makes larger changes easier to understand and execute before coding begins. The written plan also gives other agents a shared description of the work.

Skill for Codex

Written for Codex: agents/openai.yaml present. Also seen: reads .claude/ paths; mentions subagents.

Good fit Use it to define non-trivial features or changes, break them into execution groups, and record acceptance criteria in a WISH.md file.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/automagik-dev/genie/wish
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add automagik-dev/genie --skill wish
Clone the repo
git clone --depth 1 https://github.com/automagik-dev/genie

Made for: Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for wish

README.md
[![agentmods](https://agentmods.dev/badge/skills/automagik-dev/genie/wish/github.svg)](https://agentmods.dev/skills/automagik-dev/genie/wish)
Your own site
<a href="https://agentmods.dev/skills/automagik-dev/genie/wish"><img src="https://agentmods.dev/badge/skills/automagik-dev/genie/wish/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for wish

Your own site · 80×15
<a href="https://agentmods.dev/skills/automagik-dev/genie/wish"><img src="https://agentmods.dev/badge/skills/automagik-dev/genie/wish.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 47 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,316 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00047 $0.03316
Opus 5.5 $0.00019 $0.01326
Sonnet 5.5 $0.00009 $0.00663
Haiku 4.5 $0.00005 $0.00332

Measured 22d ago against content hash a641967c5ebf, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

wish scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 22d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (references/design-review-evidence.mjs), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/wish/SKILL.md · 86 lines

How it starts

The opening of the file, as written. The whole thing — 86 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Wish

/wish is one task delivered, as soon as possible. Give it a decided, bounded objective and it comes back with a merge-ready PR against the base branch, or with a refusal that names the route the request needs instead. Everything else in the lifecycle — brainstorm, plan review, work over many groups, fix, verify — is auxiliary to that.

Prefer the saved workflow: .claude/workflows/wish.js in the genie repository's workflow catalog (see .claude/workflows/README.md there) is authoritative for saved execution. On a runtime that runs saved workflows, run the script at <repository root>/.claude/workflows/wish.js when that file exists, otherwise ~/.claude/workflows/wish.js (delivered by genie install / genie update); give the runtime that explicit script path, never a bare name — both scopes now carry these names and the order a name resolves in is undocumented — and relay the returned result unchanged. If the runtime cannot run saved workflows or neither script exists, use the native fallback below; it needs neither script nor its runner.

Invoke

Pass {objective, issue?, context?, slug?, base?, repairBudget?, model?, gateModel?, publishModel?, check?, install?, validation?, timestamp} through args, or record them as coordinator input in native mode. objective is the one task, frozen: no stage re-asks, narrows or widens it. issue is a number or URL the scout reads and the PR links. context is frozen caller context (a file set, a decision reference) framed as data. slug names the branch wish/<slug> and the worktree .claude/worktrees/wish-<slug>; pass the brainstorm slug when one exists so the design preflight and the branch agree. base defaults to dev; anything that is not a plain branch name, and any spelling that resolves to the default branch (main, master, HEAD, origin/main, refs/heads/master), is rejected before any agent runs. repairBudget defaults to 2 and is capped at 3; pass the value of genie config get budgets.maxEscalationsPerGroup when the repository sets one. Saved execution uses the script's configured worker and reasoner tiers. model pins one model for every stage. gateModel and publishModel pin the two mechanical stages — the gate runs the repository check and reads an exit code, the publisher runs an allowlisted push/PR sequence — and win over model; the order is gateModel/publishModel, then model, then the tier. Native execution uses available role-appropriate models with that override precedence. The scout discovers the repository's check and install commands from its own root files (package.json scripts and the lockfile, or a Makefile, justfile or Taskfile target) and quotes what each one runs. The script, never the judge, writes them into the contract at the judge step, and freezes one empty when it is not exactly one of the forms the discovery rules produce, when the scout quoted nothing for it, or when its text or quoted body spells an obvious push, remote change or publish. In native mode the parent coordinator takes this discovery-validation and freezing responsibility, freezing the objective, scope and acceptance criteria before edits. check and install override them and face only that last test, on the command as written. It is a check against obvious push and publish commands, not a guarantee: it reads only the command and the quoted bodies one level deep, so a variable, an encoded string, a script the body calls, or a quote that does not match the file passes it. validation is the one command the gate runs verbatim when the repository has no hook system or no check command: without it the script freezes the judge's or the scout's answer to ONE focused test invocation over the declared file set — a runner from the closed list, no second command, and after the runner only files the declaration carries (a bare name with no / included) plus a tiny per-runner allowlist (--bail for bun test, -- for the script runners, run for npx vitest). Every other flag is refused, since a flag can load, configure or run code, and so are VAR=value, shell syntax, a .. segment, an absolute path and @file; a task runner (make test, just test, task test, rake test, tox, nox, mvn test, gradle test and the wrappers) takes no argument at all. That bounds what the command can name, not what the declared test files do when they run. validation overrides that answer, exempt from the shape and still checked as written. A refused answer stops the run at admission only when no check command froze (none discovered, or the one proposed was refused), because then the gate's only possible command is the validation command whatever the hook system; with a frozen check command, whether a refused validation command matters depends on a hook system only the gate classifies, so that stop stays at the gate. /wish runs the repository's own install and check commands, and an install such as npm ci runs every dependency's install scripts, so point it only at repositories you trust. timestamp is the caller's clock; the workflow has none.

Read the full file on GitHub · 86 lines

Files

What ships with it

6 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 22d ago Changed a641967c5ebf
  2. 25d ago Changed 23d9108f82cd
  3. 28d ago Changed 20c871566f7d
  4. 1mo ago Changed · -3 lines a6f37c0fe953
  5. 1mo ago Changed fd9098df7f5b
  6. 1mo ago Changed · +10 lines · +23 tokens per session e20bd80268fe
  7. 1mo ago Changed · -35 lines · +2 tokens per session 7be7311770b3
  8. 1mo ago First seen · 114 lines · 22 tokens per session scan A 7b58f5de3012

Subscribe to this mod's changes

wish is a skill published in the GitHub repository automagik-dev/genie (345 stars, last pushed today), licensed MIT. It adds 47 tokens to every session and 3,316 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.