Agent skill

Bottleneck Attack

by jacob-dietle in jacob-dietle/context-os

A skill your agent uses when deciding what to work on next, when progress is stuck, or when the reflex is to build or automate before proving the current bottleneck.

MITAuto-check passedDevelopment

Install Bottleneck Attack

skills CLI
$ npx skills add jacob-dietle/context-os --skill bottleneck-attack -a claude-code

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

GitHub CLI
$ gh skill install jacob-dietle/context-os bottleneck-attack --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/jacob-dietle/context-os.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/bottleneck-attack .claude/skills/bottleneck-attack && 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
bottleneck-attack
GitHub stars
111
Token cost
~2.3k tokens
SKILL.md length
1,093 words
Files
3 (incl. references)
Skills in repo
11
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when deciding what to work on next, when progress is stuck, or when the reflex is to build or automate before proving the current bottleneck.

  • Works in 5 steps: Question requirements → Delete → Simplify and optimize → …
  • Deciding what to work on next
  • SKILL.md covers When to use, Core beliefs, Find the real bottleneck and Classify the failure, plus 8 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Bottleneck Attack is an agent skill from jacob-dietle/context-os. Use when deciding what to work on next, when progress is stuck, or when the reflex is to build or automate before proving the current bottleneck. Identifies the single dominating constraint, drills to an attackable mechanism, and applies the ordered sequence question requirements → delete → simplify → accelerate → automate.

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `references/applied-example-mcp-retention.md` and `references/worksheet.md`).

It sits in Development. The licence is MIT.

When your agent uses it

  • Deciding what to work on next
  • Progress is stuck
  • The reflex is to build
  • Automate before proving the current bottleneck

Example prompts

  • “/bottleneck-attack”

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Question requirements
  2. Delete
  3. Simplify and optimize
  4. Accelerate
  5. Automate

What it can do on your machine

Read from SKILL.md and the folder at commit 1027e3f. 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 (its code samples are markdown).

    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

Bottleneck Attack loads about 2.3k tokens when it runs, and up to ~3.9k if it reads all its reference files. Until then it costs about 86 tokens; SKILL.md has 1,093 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~86
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.9k

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 jacob-dietle/context-os at commit 1027e3f, republished under its MIT licence (© jacob-dietle). 1,093 words, ~2,342 tokens.

Download SKILL.mdSave it as .claude/skills/bottleneck-attack/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
bottleneck-attack
description
Use when deciding what to work on next, when progress is stuck, or when the reflex is to build or automate before proving the current bottleneck. Identifies the single dominating constraint, drills to an attackable mechanism, and applies the ordered sequence question requirements → delete → simplify → accelerate → automate.

Bottleneck Attack

Identify the one constraint whose removal unlocks the most downstream progress, then attack it in the right order.

Speeding up something that should not exist is not progress.

When to use

Use this skill when:

  • deciding among several plausible initiatives;
  • a metric is underperforming and the cause is unclear;
  • progress feels diffused or stuck;
  • someone proposes new infrastructure before proving what it unlocks;
  • several teams are optimizing different symptoms of the same problem.

Do not use it when:

  • the root cause is already verified and the fix is obvious;
  • the work is pure exploration with no decision to make;
  • the constraint is taste or creative judgment rather than throughput;
  • a simple, bounded bug should just be fixed.

The tell: if the proposed action begins with “build,” “add,” or “automate” and nobody can name the exact constraint it removes, run this skill.

Core beliefs

  1. Attack the tip of the spear. Concentrate effort on the dominant limiter instead of improving several secondary problems.
  2. Find the bottleneck of the bottleneck. Abstract labels such as “retention,” “complexity,” or “alignment” are symptoms. Drill until the constraint is a specific mechanism, step, object, or requirement.
  3. Use the algorithm in order. Question → Delete → Simplify → Accelerate → Automate. Starting at automation compounds the wrong decision.
  4. Instrument disagreements. When two explanations compete, run the smallest test that allows reality to decide.
  5. Engineer cheap failures. Reversible failures are information. Irreversible, compounding, or reputational failures require assertion gates.
  6. Count externalities. A local improvement that transfers cost to people who cannot consent is debt, not optimization.

Find the real bottleneck

Choose the direction that matches the evidence you have.

Top-down: drill from a broken metric
text
L1 — Surface symptom
  “Activation is low.”
        ↓ What is limiting L1?
L2 — First-order constraint
  “Most approved users never complete setup.”
        ↓ What is limiting L2?
L3 — Attackable mechanism
  “The approval message has no setup path or observable completion event.”

Stop only when L3 is:

  • specific enough to change today;
  • causal enough that removing it should move the goal metric;
  • general enough to measure across more than one anecdote.
Bottom-up: drill from a specific anecdote
  1. Take the detail seriously.
  2. Recreate the journey yourself.
  3. Ask whether the instance represents a class.
  4. Measure the class.
  5. Fix the class-level mechanism, not only the original instance.

Use at least three comparable instances when possible. If the pattern does not generalize, treat it as a one-off rather than the system bottleneck.

The worksheet in references/worksheet.md supports both paths.

Classify the failure

Before attacking L3, ask whether a failed attempt would be catastrophic.

Catastrophic: irreversible data loss, public breach, burned customer relationship, regulatory harm, or a compounding failure that cannot be cheaply rolled back.

Non-catastrophic: local, reversible, observable, and inexpensive to undo.

For catastrophic work, add explicit preconditions, backups, staged rollout, and a second reviewer. For non-catastrophic work, shorten the feedback loop.

Check externalities

List everyone who bears a cost under the proposed fix:

  • customers;
  • employees and operators;
  • neighboring teams;
  • communities or shared resources;
  • future maintainers.

For each party, ask:

  1. What cost do they bear?
  2. Is that cost included in the decision?
  3. Could they refuse it?
  4. What second-order effect may return as a worse bottleneck?

If the improvement depends on offloading meaningful cost to a party that cannot consent, redesign the attack.

The five-step algorithm

Do not advance until the current gate passes.

1. Question requirements

Every requirement needs a named owner and a current reason.

Ask:

  • Who requested this?
  • When was it decided?
  • Is the original reason still true?
  • Is it a hard constraint or an inherited preference?
  • Is this the only way to achieve the outcome?

Gate: every surviving requirement has a person, reason, and failed deletion argument. Nameless requirements do not survive.

2. Delete

Remove everything that does not need to exist.

Ask:

  • What happens if we stop doing this?
  • Which steps exist only because of a requirement we removed?
  • Can two steps, tools, or surfaces collapse into one?
  • What is the minimum version that still produces the outcome?

Deletion should be aggressive enough that roughly 10% needs to be added back. If nothing was added back, test whether the cut was actually deep enough.

Gate: removing anything else would break the required outcome.

Show full SKILL.md (423 more words)Show less
3. Simplify and optimize

Only optimize what survived deletion.

Ask:

  • What is the simplest implementation of the remaining need?
  • Where is coordination hiding complexity?
  • Can an existing component replace a custom one?
  • Is any input costing many times more than its underlying materials, compute, or labor?

Gate: no complexity remains that exists only to preserve an eliminated requirement.

4. Accelerate

Shorten the loop after the work is necessary and simple.

Ask:

  • Which dependencies can run in parallel?
  • Where is handoff or waiting latency?
  • Can the operator go directly to the constraint today?
  • What deadline has roughly a 50% chance of success?

Gate: the remaining delay cannot be removed without automation.

5. Automate

Automate only a stable, validated process.

Ask:

  • Has the manual process worked often enough to deserve automation?
  • What is the lifecycle cost of automation at the current volume?
  • How expensive is reversal when the process changes?
  • What observation will detect silent failure?

Automation is optional. “Not yet” is often the correct output.

Workflow

  1. State the goal. One sentence, measurable and time-bound.
  2. Drill to L3. Use the top-down or bottom-up path.
  3. Classify failure. Catastrophic or reversible.
  4. Check externalities. Count costs outside the local metric.
  5. Run the algorithm. Question, delete, simplify, accelerate, automate.
  6. Set a 50% deadline. Uncomfortable but credible.
  7. Run a reality test. Predeclare the measurement and decision rule.

Output format

markdown
## Bottleneck Decision: [goal name]

**Goal:** [measurable outcome and date]

**Bottleneck drill:**
- L1 — symptom: [what appears wrong]
- L2 — first-order constraint: [what limits L1]
- L3 — real constraint: [specific mechanism to attack]

**Failure class:** [catastrophic / non-catastrophic, with reason]

**Externalities:**
- [party]: [cost, consent, mitigation]

**Algorithm applied to L3:**
- Question: [requirements challenged; what survived and why]
- Delete: [what was removed and what was added back]
- Simplify: [what became smaller or clearer]
- Accelerate: [parallel work, removed waits, deadline]
- Automate: [what will be automated, or “not yet”]

**Deadline:** [date with approximately 50% likelihood]

**Reality test:** [measurement and predeclared pass/fail rule]

**What I am not doing:** [the attractive wrong move]

Anti-patterns

Anti-patternFailure
Automate firstMakes the wrong process faster and harder to reverse.
Optimize without questioningPreserves requirements that should have been removed.
Attack several symptomsDilutes effort before the dominant constraint moves.
Drill foreverConverts diagnosis into avoidance. Stop at a measurable mechanism.
Inflate scope during deletionTurns focus into an unrelated cleanup program.
Use unnamed requirementsReplaces evidence with organizational folklore.
Treat reversible tests as catastrophicSlows learning while masquerading as rigor.
Offload externalitiesProduces a local win subsidized by hidden debt.

Integration

  • Ground in the domain before deciding which requirements are real.
  • If the attack requires a feature, define the user job before planning it.
  • Use an eval loop to verify that the chosen metric moved.
  • For code changes, pair the attack with tests proportionate to failure risk.

References

Intellectual provenance

The ordered Question → Delete → Simplify → Accelerate → Automate sequence is commonly associated with Elon Musk's engineering algorithm. This skill combines that sequence with constraint analysis, falsifiable testing, explicit externality accounting, and a reusable decision format. The worked example is synthetic and contains no client or private operational data.

© jacob-dietle, 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 (references) in .claude/skills/bottleneck-attack of jacob-dietle/context-os.

  • SKILL.md
  • references/applied-example-mcp-retention.md
  • references/worksheet.md

Open the folder on GitHubat commit 1027e3f

Compare with similar skills

Bottleneck Attack 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.

Bottleneck Attack compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Bottleneck Attack this skilljacob-dietle/context-os111—~2.3kAutomated safety check: PassMIT
Vercel Composition Patternssupabase/supabase111k59 repos~726Automated safety check: PassMIT
Finishing a Development Branchobra/superpowers296k5 repos~1.9kAutomated safety check: PassMIT
Typescript Advanced Typesrolling-scopes/rsschool-app10k25 repos~4.2kAutomated safety check: PassMPL-2.0
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Code Review ChecklistshareAI-lab/learn-claude-code78k5 repos~1.1kAutomated safety check: PassMIT

Similar skills

  • Official

    React composition patterns that scale. An agent skill from supabase/supabase.

    111k GitHub starsUsed in 59 repos~726 tokens
    DevelopmentAuto-check passed
  • 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.

    296k GitHub starsUsed in 5 repos~1.9k tokens
    DevelopmentAuto-check passed
  • Typescript Advanced Types

    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.

    10k GitHub starsUsed in 25 repos~4.2k tokens
    DevelopmentAuto-check passed
  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Code Review Checklist

    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.

    78k GitHub starsUsed in 5 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Greploop

    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.

    32k GitHub starsUsed in 4 repos~3.3k tokens
    DevelopmentAuto-check passed

More from jacob-dietle/context-os

All 11 skills in this repo
  • Code Service Defrag

    jacob-dietle/context-os

    This skill should be used to periodically defragment a multi-app/multi-service codebase — both CODE (duplicate deploy targets, colliding bindings, stale forks) and CONTEXT (parallel spec…

    111 GitHub stars~3.7k tokensUpdated 1 mo ago
    Auto-check passed
  • Content Strategy And Assembly

    jacob-dietle/context-os

    This skill should be used when producing content (newsletter posts, blog posts, LinkedIn posts) from existing corpus material.

    111 GitHub stars~3.1k tokensUpdated 1 mo ago
    Auto-check passed
  • Context Os CLI

    jacob-dietle/context-os

    This skill should be used when users ask about their work context, what they're working on, recent activity, file relationships, or knowledge graph structure.

    111 GitHub stars~4.1k tokensUpdated 1 mo ago
    Auto-check passed
  • Decision Accountability

    jacob-dietle/context-os

    This skill should be used when making architectural decisions, writing specs, or reviewing decisions that contain "future work", "v2", "simpler for now", "out of scope", or complexity claims.

    111 GitHub stars~1.9k tokensUpdated 1 mo ago
    Auto-check passed
  • Coordinated Agent Teams

    jacob-dietle/context-os

    This skill should be used when decomposing a spec into a multi-agent implementation plan with dependency ordering, parallelism decisions, contract testing, and verification strategy.

    111 GitHub stars~4.2k tokensUpdated 1 mo ago
    Auto-check passed
  • Eval Loop

    jacob-dietle/context-os

    This skill should be used when a specific quality problem (UX, data, architecture, feature) needs systematic diagnosis and iterative fixing toward a defined target.

    111 GitHub stars~5.2k tokensUpdated 1 mo ago
    Auto-check passed

Categories

Questions about Bottleneck Attack

What does Bottleneck Attack do?

A skill your agent uses when deciding what to work on next, when progress is stuck, or when the reflex is to build or automate before proving the current bottleneck. Bottleneck Attack is an agent skill from jacob-dietle/context-os. Use when deciding what to work on next, when progress is stuck, or when the reflex is to build or automate before proving the current bottleneck.

When should I use Bottleneck Attack?

Bottleneck Attack fits situations like: deciding what to work on next; progress is stuck; the reflex is to build; automate before proving the current bottleneck.

How do I install Bottleneck Attack in Claude Code?

Run `npx skills add jacob-dietle/context-os --skill bottleneck-attack -a claude-code`. Or copy the skill folder (.claude/skills/bottleneck-attack in jacob-dietle/context-os) into .claude/skills/bottleneck-attack in your project. Claude Code loads it when a task matches its description.

How do I install Bottleneck Attack in Codex?

Run `npx skills add jacob-dietle/context-os --skill bottleneck-attack -a codex`. Or copy the skill folder (.claude/skills/bottleneck-attack in jacob-dietle/context-os) into .agents/skills/bottleneck-attack in your project. Codex loads it when a task matches its description.

Can I use Bottleneck Attack 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 jacob-dietle/context-os --skill bottleneck-attack -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/bottleneck-attack, .gemini/skills/bottleneck-attack, .github/skills/bottleneck-attack and .opencode/skills/bottleneck-attack in your project.

What does Bottleneck Attack need to run?

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

Does Bottleneck Attack 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 Bottleneck Attack 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 Bottleneck Attack use?

Bottleneck Attack 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 Bottleneck Attack 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. Its references folder adds about 1.6k tokens, read only when the agent opens those files.

What are the alternatives to Bottleneck Attack?

Skills that share tags, products or a category with Bottleneck Attack: Vercel Composition Patterns (supabase/supabase, 111k stars), Finishing a Development Branch (obra/superpowers, 296k stars), Typescript Advanced Types (rolling-scopes/rsschool-app, 10k stars) and PR Babysitter (openinterpreter/openinterpreter, 69k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Bottleneck Attack?

jacob-dietle (a GitHub user) maintains it in jacob-dietle/context-os, which has 111 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on August 13, 2026.

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