AugmentClaude

choosing-a-workflow

Use FIRST when any new piece of work arrives — a request, feature, change, fix, question, or idea — before starting on it or choosing an approach. Not for continuing work already routed to a workflow skill.

Installation

  1. Make sure Claude is on your device and in your terminal.

    Skills load from ~/.claude/skills/ when Claude Code starts up — so you need it on your machine first. If you don't have it yet, install it once with the command below, then run claude in any terminal to verify.

    One-time setup
    npm i -g @anthropic-ai/claude-code

    Already have it? Skip ahead.

  2. Paste into Claude Code or into your terminal.

    This copies the whole skill folder into ~/.claude/skills/choosing-a-workflow-jetbrains/ — the SKILL.md plus any scripts, reference docs, or templates the skill ships with. Safe default: works for every skill.

    Faster alternative (instruction-only skills)

    Skips the clone and grabs only the SKILL.md file. Don't use this if the skill ships Python scripts, reference markdowns, or asset templates — they won't be downloaded and the skill will fail when it tries to load them.

    Quick install (SKILL.md only)
    Sign up to copy
  3. Restart Claude Code.

    Quit and reopen Claude Code (or any other agent that loads from ~/.claude/skills/). New skills are picked up on startup.

  4. Just ask Claude.

    Skills auto-activate when your request matches the skill's description — no slash command needed. Trigger phrases live in the skill's own frontmatter; you can read them in the “What this skill does” section above.

Prefer to read the source first? Open on GitHub.

When Claude uses it

Use FIRST when any new piece of work arrives — a request, feature, change, fix, question, or idea — before starting on it or choosing an approach. Not for continuing work already routed to a workflow skill.

What this skill does

Choosing a Workflow

The root router of the workflow family in packages/pi-thinkrail-workflow. It classifies the incoming work and names the workflow skill that governs it — nothing more. A routed skill's steps live in that skill alone; read it, don't run it from memory.

Classify

Read the request and the workspace, then answer three questions — usually silently, from what is already in front of you:

  1. Is this project onboarding? No spec graph yet — an empty (or effectively empty) workspace where the user brings a raw idea, or an existing codebase being set up / specced for the first time.
  2. Is this the PR lifecycle? Finished work shipping as a pull request, or an existing PR being tended — created, brought up to date, given screenshots, its checks watched, its review comments addressed. Fixes that flow from a PR's own review comments belong here, not to feature work.
  3. Does the work create or change anything in the project? A new feature, added functionality, a behavior change, a nontrivial design decision — anything that alters what the project is or does.

If the route is genuinely ambiguous from the request alone, ask one short clarifying question (ask_user_question, composed per the asking-user-questions concept skill) rather than guessing.

Route

ClassificationRoute
Project onboarding — no spec graph yet: an empty workspace with a raw idea, or an existing codebase to set up / specRead and follow setting-up-a-project — a dispatcher that routes on the workspace's state
The PR lifecycle — finished work to ship as a pull request, or an existing PR to tend: create, bring up to date, screenshots, checks, review commentsRead and follow shipping-a-pr
The work creates or changes anything in the project — a new feature, added functionality, a behavior change, a nontrivial design decisionRead and follow brainstorming — however small it looks; that skill owns the "too small" judgment
Anything else — answering questions, explaining code, running commands or checks, work that changes nothingNo matching workflow. Say so in one line (e.g. "No workflow skill covers this; proceeding directly.") and proceed with your own judgment. Never stretch a route to fit — a forced route is worse than none.

One route per piece of work. If a request bundles work from different rows (e.g. "explain X, then change Y"), route the part that changes the project and handle the rest directly.

Red flags — stop and re-route

  • You started designing or editing before naming a route — routing comes first.
  • You are following a routed skill's steps from memory instead of reading that skill.
  • You classed a change as "anything else" because it looked small or mechanical — size is brainstorming's call, not the router's.

Handoff

This skill ends by naming exactly one of: setting-up-a-project, shipping-a-pr, brainstorming, or no matching workflow (proceed with judgment). Adding a workflow to the family adds a row to the table above — see the writing-workflow-skills skill.

Related skills