Finishing a Development Branch
obra/superpowers
Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.
Edward de Bono's Provocation (Po) technique — state something deliberately wrong or absurd about the problem, then extract useful "movement" from it instead of judging it.
$ npx skills add danium/lateral-thinking --skill provocation -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install danium/lateral-thinking provocation --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/danium/lateral-thinking.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/provocation .claude/skills/provocation && rm -rf skills-srcUse ~/.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/
Install the "provocation" agent skill from https://github.com/danium/lateral-thinking/tree/main/skills/provocation into .claude/skills/provocation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "provocation", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/danium/lateral-thinking/tree/main/skills/provocationType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add danium/lateral-thinking --skill provocation -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install danium/lateral-thinking provocation --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/danium/lateral-thinking.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/provocation .agents/skills/provocation && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "provocation" agent skill from https://github.com/danium/lateral-thinking/tree/main/skills/provocation into .agents/skills/provocation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "provocation", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add danium/lateral-thinking --skill provocation -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install danium/lateral-thinking provocation --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/danium/lateral-thinking.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/provocation .cursor/skills/provocation && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "provocation" agent skill from https://github.com/danium/lateral-thinking/tree/main/skills/provocation into .cursor/skills/provocation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "provocation", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/danium/lateral-thinking.git --path skills/provocation--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add danium/lateral-thinking --skill provocation -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install danium/lateral-thinking provocation --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/danium/lateral-thinking.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/provocation .gemini/skills/provocation && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "provocation" agent skill from https://github.com/danium/lateral-thinking/tree/main/skills/provocation into .gemini/skills/provocation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "provocation", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install danium/lateral-thinking provocationInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add danium/lateral-thinking --skill provocation -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/danium/lateral-thinking.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/provocation .github/skills/provocation && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "provocation" agent skill from https://github.com/danium/lateral-thinking/tree/main/skills/provocation into .github/skills/provocation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "provocation", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add danium/lateral-thinking --skill provocation -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install danium/lateral-thinking provocation --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/danium/lateral-thinking.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/provocation .opencode/skills/provocation && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "provocation" agent skill from https://github.com/danium/lateral-thinking/tree/main/skills/provocation into .opencode/skills/provocation/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "provocation", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
provocationEdward de Bono's Provocation (Po) technique — state something deliberately wrong or absurd about the problem, then extract useful "movement" from it instead of judging it.
Provocation is an agent skill from danium/lateral-thinking. Edward de Bono's Provocation (Po) technique — state something deliberately wrong or absurd about the problem, then extract useful "movement" from it instead of judging it. Use when a constraint feels unbreakable, when every design converges on the same shape, or to escape "the way it's always done". Triggers include "provocation", "po", "absurd statement", "deliberately break the rule", "the constraint feels unbreakable", "sacred cow". Do NOT use for analytical work like debugging, code review, or implementation…
Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `references/provocation-templates.md` and `references/worked-example.md`).
It sits in Development. The repository describes itself as: Lateral thinking skills for AI agents - 8 techniques + a router. de Bono for your coding agent. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit bde713d. It shows what the files ask for, not the result of running them.
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.
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.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Provocation loads about 1.7k tokens when it runs, and up to ~5.5k if it reads all its reference files. Until then it costs about 134 tokens; SKILL.md has 1,018 words of instructions outside code blocks.
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.
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.
The full file from danium/lateral-thinking at commit bde713d, republished under its MIT licence (© danium). 1,018 words, ~1,749 tokens.
.claude/skills/provocation/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.State something deliberately wrong, impossible, or absurd about the problem — then refuse to judge it. Instead, ask what useful movement the statement creates: the principle hiding inside it, what would happen moment-to-moment if it were true, what that makes different from today. The absurd statement is not a proposal; it is a stepping stone you stand on only long enough to reach somewhere you could not have walked to directly. It works because judgment and movement are opposite mental motions, and every honest constraint you carry is also a wall you have stopped seeing.
Source: Edward de Bono, Po: Beyond Yes and No (1972) and Serious Creativity (1992).
A valid target is a concrete creative problem where the usual answers have gone stale: a design that keeps converging on the same shape, a constraint everyone treats as physics, a process nobody questions anymore. Good phrasings: "reinvent how we onboard new users", "our pricing page always ends up looking identical to competitors", "the approval step feels untouchable — challenge it". If the target is unclear, ask one focused question — "What's the problem, and which constraint or convention feels most fixed?"
Refuse requests to perform analytical work — debugging, reviewing code, implementing a change — and suggest an analytical approach instead. Redesigning or ideating about such a process is a valid creative target: "reinvent our code-review ritual" is in scope; "review this PR" is not.
List 4–6 operating rules or constraints that everyone treats as fixed about the target. Write them as flat declaratives, not questions — the things so obvious nobody says them out loud. These are the walls. Each one is a candidate to break, invert, or exaggerate in the next step. If you cannot name at least four, the target is probably too vague; go back to Step 1.
Draw across the five classical operations. Prefix each with Po: and keep it to one line. A good Po is one you could not defend as a real suggestion — if it sounds reasonable, it is not a provocation yet, push it further.
Po: the checkout has no prices.Po: the user reviews the software's work.Po: onboarding takes three seconds.Po: you pay the invoice before the work is scoped.Po: the page reads the visitor's mind.Cover at least three of the five operations across the batch. Do not run more than eight in one batch.
Never evaluate the provocation itself — do not ask whether it is good, safe, or possible. That is judgment, the wrong motion. Instead extract movement three ways:
Then shape any live thread into a real idea. Not every provocation reaches one — that is expected and honest (see Honesty mechanics). Show the movement work, not just the idea it produced.
Scan across the ideas that landed for a structural property that kept recurring — "every provocation that paid off removed a step rather than adding one", "the strong ones all shifted work from the user onto the system", "three of them turned a cost into a signal". State the structural insight explicitly. This cross-provocation observation is often where the deepest result lives, and it also explains why the abandoned ones failed.
Pick the 2–4 sharpest directions and rank them. Say which feel weak, and why. Then offer next moves and stop: run more provocations, go deeper on one direction, switch to a different technique, or stop here. Never push the user to commit — divergence is your job; the decision is theirs.
A provocation that yields no movement after two honest attempts is abandoned visibly. Show it, for example:
Po: customers pay us to leave — no movement found. Moving on.
Roughly 1 in 3 provocations will not pay off. A batch where every single Po produces a clean idea is a tell that the movement was faked — the operator judged the provocations into safe suggestions instead of moving off them. Show the failures; they are what proves the rest are real.
When the batch itself fails. If almost nothing moves, the problem is upstream of the provocations. Do not write more of them. Name the diagnosis, suggest the technique that fits it as the user's next move, and stop there — do not run it yourself:
random-stimulus, which needs no constraint to push against.concept-fan, which climbs to the concept the target serves.references/provocation-templates.md — the five operations, with fill-in templates and worked one-line examplesreferences/worked-example.md — a real session showing the full shape, abandonment included© danium, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files (references) in skills/provocation of danium/lateral-thinking.
Open the folder on GitHubat commit bde713d
Provocation 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Provocation this skilldanium/lateral-thinking | 318 | — | ~1.7k | Automated safety check: Pass | MIT | |
| Finishing a Development Branchobra/superpowers | 296k | 5 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Typescript Advanced Typesrolling-scopes/rsschool-app | 10k | 24 repos | ~4.2k | Automated safety check: Pass | MPL-2.0 | |
| PR Babysitteropeninterpreter/openinterpreter | 69k | 3 repos | ~4.2k | Automated safety check: Pass | Apache-2.0 | |
| Code Review ChecklistshareAI-lab/learn-claude-code | 78k | 5 repos | ~1.1k | Automated safety check: Pass | MIT | |
| Greplooponyx-dot-app/onyx | 32k | 4 repos | ~3.3k | Automated safety check: Pass | MIT |
obra/superpowers
Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.
rolling-scopes/rsschool-app
Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications.
openinterpreter/openinterpreter
Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.
shareAI-lab/learn-claude-code
Reviews code against a five-part checklist covering security, correctness, performance, maintainability and testing, and reports findings in a fixed format.
onyx-dot-app/onyx
Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.
akash-network/node
Behavioral guidelines to reduce common LLM coding mistakes. An agent skill from akash-network/node.
danium/lateral-thinking
Forced Analogy / Structural Transplant — map the problem onto a structurally similar system from a distant domain (immune system, air-traffic control, restaurant kitchen, jazz ensemble) and transfer…
danium/lateral-thinking
Edward de Bono's Concept Fan — climb from the current solution to the concept it serves by asking "what is this a way of doing?", then fan out alternative concepts and concrete implementations for…
danium/lateral-thinking
Assumption Inversion — list the assumptions behind the current approach and flip each one, then ask where the flipped version could actually be true.
danium/lateral-thinking
Edward de Bono's Random Stimulus technique — force-fit a random unrelated object, place, or phenomenon onto a creative target to break familiar association patterns.
danium/lateral-thinking
SCAMPER (Bob Eberle) — run one existing idea, product, or process through seven systematic transformations - Substitute, Combine, Adapt, Modify/Magnify, Put to other use, Eliminate, Reverse/Rearrange.
danium/lateral-thinking
Parallel thinking with six enforced perspectives, based on Edward de Bono's Six Thinking Hats® method - examine one decision through sequential passes for facts, feelings, risks, benefits…
Categories
Edward de Bono's Provocation (Po) technique — state something deliberately wrong or absurd about the problem, then extract useful "movement" from it instead of judging it. Provocation is an agent skill from danium/lateral-thinking. Edward de Bono's Provocation (Po) technique — state something deliberately wrong or absurd about the problem, then extract useful "movement" from it instead of judging it.
Provocation fits situations like: A constraint feels unbreakable; every design converges on the same shape; escape the way its always done; include provocation.
Run `npx skills add danium/lateral-thinking --skill provocation -a claude-code`. Or copy the skill folder (skills/provocation in danium/lateral-thinking) into .claude/skills/provocation in your project. Claude Code loads it when a task matches its description.
Run `npx skills add danium/lateral-thinking --skill provocation -a codex`. Or copy the skill folder (skills/provocation in danium/lateral-thinking) into .agents/skills/provocation in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add danium/lateral-thinking --skill provocation -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/provocation, .gemini/skills/provocation, .github/skills/provocation and .opencode/skills/provocation in your project.
SKILL.md names no scripts, command-line tools or credentials: Provocation is instructions for the agent only.
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.
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.
Provocation is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.7k tokens (SKILL.md is roughly 7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 3.8k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Provocation: Finishing a Development Branch (obra/superpowers, 296k stars), Typescript Advanced Types (rolling-scopes/rsschool-app, 10k stars), PR Babysitter (openinterpreter/openinterpreter, 69k stars) and Code Review Checklist (shareAI-lab/learn-claude-code, 78k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
danium (a GitHub user) maintains it in danium/lateral-thinking, which has 318 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on September 13, 2026.
Source: danium/lateral-thinking on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.