Help
OrchestKit help directory with categorized skill listings. Use when discovering skills for a task, finding the right workflow, or browsing capabilities.
/ork:helpOrchestKit Skill Directory
Dynamic skill discovery — reads from source at runtime so listings are never stale.
Quick Start
/ork:help # Show all categories
/ork:help build # Show BUILD skills only
/ork:help git # Show GIT skills only
/ork:help all # List every user-invocable skillArgument Resolution
CATEGORY = "$ARGUMENTS[0]" # Optional: build, git, memory, quality, config, explore, plan, media, all
# If provided, skip AskUserQuestion and show that category directly.
# $ARGUMENTS is the full string (CC 2.1.59 indexed access)STEP 0: Dynamic Skill Discovery
ALWAYS run this first to get accurate, up-to-date skill data:
# Scan all user-invocable skills from source
Grep(pattern="user-invocable:\\s*true", path="src/skills", output_mode="files_with_matches")For each matched file, extract name and description from frontmatter:
# For each SKILL.md found, read first 15 lines to get name + description
Read(file_path="src/skills/{name}/SKILL.md", limit=15)Build the skill list dynamically. Never hardcode counts or skill names.
STEP 1: Category Selection
If CATEGORY argument provided, skip to STEP 2 with that category.
Otherwise, present categories interactively:
AskUserQuestion(
questions=[{
"question": "What type of task are you working on?",
"header": "Category",
"options": [
{"label": "BUILD", "description": "Implement features, brainstorm, verify", "markdown": "```\nBUILD — Feature Development\n───────────────────────────\n/ork:implement Full-power implementation\n/ork:brainstorm Design exploration\n/ork:verify Test & grade changes\n```"},
{"label": "GIT", "description": "Commits, PRs, issues, branches", "markdown": "```\nGIT — Version Control\n─────────────────────\n/ork:commit Conventional commits\n/ork:create-pr PR with validation\n/ork:review-pr 6-agent PR review\n/ork:fix-issue Debug + fix + PR\n```"},
{"label": "PLAN", "description": "PRDs, plan visualization, assessment", "markdown": "```\nPLAN — Design & Strategy\n────────────────────────\n/ork:visualize-plan ASCII plan rendering\n/ork:write-prd Product requirements\n/ork:assess Rate 0-10 + report\n```"},
{"label": "MEMORY", "description": "Store decisions, search, recall", "markdown": "```\nMEMORY — Knowledge Persistence\n──────────────────────────────\n/ork:remember Store decisions/patterns\n/ork:memory Search, recall, visualize\n```"},
{"label": "QUALITY", "description": "Assess, review, diagnose", "markdown": "```\nQUALITY — Assessment & Health\n─────────────────────────────\n/ork:assess Rate quality 0-10\n/ork:review-pr 6-agent PR review\n/ork:doctor Plugin health check\n```"},
{"label": "CONFIG", "description": "Setup, diagnostics", "markdown": "```\nCONFIG — Setup & Operations\n───────────────────────────\n/ork:setup Onboarding wizard\n/ork:doctor Health diagnostics\n/ork:configure Plugin settings\n```"},
{"label": "EXPLORE", "description": "Codebase exploration and analysis", "markdown": "```\nEXPLORE — Codebase Analysis\n───────────────────────────\n/ork:explore Multi-angle exploration\n 4 parallel agents\n Architecture visualization\n```"},
{"label": "Show all", "description": "List every user-invocable skill"}
],
"multiSelect": false
}]
)STEP 2: Render Category
For the selected category, render the skill table from the data gathered in STEP 0.
Category-to-Skill Mapping
| Category | Skills |
|---|---|
| BUILD | implement, brainstorm, verify |
| GIT | commit, create-pr, review-pr, fix-issue |
| PLAN | visualize-plan, write-prd, assess |
| MEMORY | remember, memory |
| QUALITY | assess, review-pr, doctor |
| CONFIG | setup, doctor, configure |
| EXPLORE | explore |
For each skill in the category, render:
/ork:{name} v{version} {complexity}
{description}
Example: /ork:{name} {argument-hint example}"Show all" — Full Listing
If user picks "Show all", render ALL user-invocable skills grouped by category from STEP 0 data.
CC Built-in Commands (2.1.72+)
Not OrchestKit skills — these are Claude Code built-ins:
| Command | Description | Since |
|---|---|---|
/simplify | Review changed code for quality, then fix | CC 2.1.63 |
/help | Claude Code built-in help | CC 2.1.0+ |
/config | Claude Code configuration | CC 2.1.0+ |
/clear | Clear conversation (preserves background agents) | CC 2.1.72 |
/fast | Toggle fast mode (same model, faster output) | CC 2.1.59+ |
/loop | Recurring interval (e.g. /loop 5m /foo) | CC 2.1.71 |
/effort | Reasoning effort: low/medium/high/auto | CC 2.1.72 |
/plan | Enter plan mode | CC 2.1.72 |
/team-onboarding | Generate teammate ramp-up guide | CC 2.1.101 |
/ultraplan | Remote-session deep planning | CC 2.1.101 |
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Ctrl+F | Find in session output |
Esc | Cancel / dismiss |
Shift+Enter | Newline in input |
Ctrl+C | Cancel operation |
Pro Tip
You don't need to memorize skills. Just describe your task naturally:
"I need to implement user login" → /ork:implement
"Show me the payment architecture" → /ork:explore
"Review PR 123" → /ork:review-pr
"Is this code good?" → /ork:assess
"Plan out the billing redesign" → /ork:visualize-planRelated Skills
/help— Claude Code built-in help/ork:doctor— OrchestKit health check/ork:setup— Full onboarding wizard
Rules (2)
Cross-check skill category assignments against skill tags to prevent miscategorization — MEDIUM
Problem
The help skill maps skills to categories (BUILD, GIT, PLAN, MEMORY, QUALITY, CONFIG, EXPLORE). When skills are recategorized or their tags change, the hardcoded mapping in the help skill can assign a skill to a category that no longer matches its actual function. Users looking for a specific capability browse the wrong category and miss the skill entirely.
Rule
When assigning a skill to a display category, verify the assignment by checking the skill's tags and metadata.category fields from its SKILL.md frontmatter. If the skill's tags contradict the category placement, use the tags as the source of truth.
Category-to-Tag Mapping
BUILD -> tags contain: implement, build, feature, brainstorm, verify
GIT -> tags contain: git, commit, pr, pull-request, branch, issue
PLAN -> tags contain: plan, prd, assessment, visualization, strategy
MEMORY -> tags contain: memory, decisions, patterns, graph-memory
QUALITY -> tags contain: quality, review, assess, health, diagnostics
CONFIG -> tags contain: setup, config, onboarding, diagnostics
EXPLORE -> tags contain: explore, analysis, architecture, codebaseIncorrect -- placing skill in wrong category:
# "assess" placed only in PLAN category
PLAN_SKILLS = ["visualize-plan", "write-prd", "assess"]
# But assess has tags: [quality, assessment, scoring, grading]
# User looking in QUALITY never finds it
# "doctor" placed only in CONFIG
CONFIG_SKILLS = ["setup", "doctor", "configure"]
# But doctor has tags: [health, diagnostics, quality]
# User checking QUALITY for diagnostics misses itCorrect -- using tags to allow multi-category placement:
# Read skill frontmatter
assess_tags = ["quality", "assessment", "scoring", "grading"]
# assess matches both PLAN (assessment) and QUALITY (quality)
PLAN_SKILLS = ["visualize-plan", "write-prd", "assess"]
QUALITY_SKILLS = ["assess", "review-pr", "doctor"]
# doctor matches both CONFIG (diagnostics) and QUALITY (diagnostics, health)
CONFIG_SKILLS = ["setup", "doctor", "configure"]
# doctor appears in QUALITY too -- correct cross-listingIncorrect -- ignoring metadata.category field:
# Skill has metadata.category: "workflow-automation"
# But help places it under CONFIG because of a legacy mapping
CONFIG_SKILLS = ["setup", "doctor", "configure", "remember"]
# ^^^^^^^^
# remember.metadata.category = "workflow-automation", not config
# remember.tags = [memory, decisions, patterns]
# Belongs in MEMORY, not CONFIGCorrect -- checking metadata.category:
skill_meta = read_frontmatter("src/skills/remember/SKILL.md")
# metadata.category = "workflow-automation"
# tags = [memory, decisions, patterns]
# -> Place in MEMORY (tags match), not CONFIGValidation Steps
- For each skill in a category listing, read its
tagsarray from SKILL.md - Verify at least one tag matches the category-to-tag mapping above
- If zero tags match, the skill is miscategorized -- move it to the correct category
- Skills matching multiple categories should appear in all matching categories
Key Rules
- Tags from SKILL.md frontmatter are the source of truth for categorization
- A skill can appear in multiple categories if its tags span them
- Never place a skill in a category where none of its tags match
- When "Show all" is selected, group by
metadata.categoryfrom each SKILL.md, not by the hardcoded mapping
Validate listed skills exist in manifest before displaying to prevent showing stale or removed skills — HIGH
Problem
The help skill can display skills that have been removed, renamed, or merged if it relies on hardcoded lists or cached data instead of reading from the live manifest. When a user tries to invoke a stale skill, they get a confusing "skill not found" error with no guidance on the replacement.
Rule
Before rendering any skill listing, cross-reference every skill name against manifests/ork.json or scan src/skills/*/SKILL.md files. Never display a skill that does not exist in the current manifest.
Incorrect -- rendering from hardcoded list:
# Hardcoded category mapping (goes stale when skills change)
BUILD_SKILLS = ["implement", "brainstorm", "verify", "scaffold"]
# ^^^^^^^^
# "scaffold" was merged into "implement" in v7.2.0
# User sees it in /ork:help, tries /ork:scaffold, gets "skill not found"
for skill in BUILD_SKILLS:
render_skill_entry(skill)Correct -- validate against live source:
# Step 1: Scan for all user-invocable skills
found_skills = Grep(
pattern="user-invocable:\\s*true",
path="src/skills",
output_mode="files_with_matches"
)
# Step 2: Extract names from matched SKILL.md files
live_skills = set()
for skill_file in found_skills:
frontmatter = Read(file_path=skill_file, limit=15)
name = parse_frontmatter_field(frontmatter, "name")
live_skills.add(name)
# Step 3: Filter category mapping against live skills
BUILD_CATEGORY = ["implement", "brainstorm", "verify", "scaffold"]
valid_build = [s for s in BUILD_CATEGORY if s in live_skills]
# "scaffold" is excluded because it no longer exists in sourceIncorrect -- showing a count without verification:
OrchestKit: 89 skills available
# Count is from CLAUDE.md header, may not match actual manifestCorrect -- deriving count from scan:
OrchestKit: {len(live_skills)} user-invocable skills available
# Count derived from actual Grep scan in STEP 0Key Rules
- Always run STEP 0 (dynamic skill discovery) before rendering any skill list
- Never hardcode skill names or counts -- derive from source files
- If a skill appears in category mapping but not in live scan, silently omit it
- If a category becomes empty after filtering, omit the entire category from display
- Log a warning (not shown to user) when a mapped skill is missing for maintainer awareness
References (1)
Cc Keyboard Shortcuts
CC Keyboard Shortcuts
Input
| Shortcut | Action | Notes |
|---|---|---|
Shift+Down | Multi-line input | Type across multiple lines before sending (CC 2.1.47+) |
Enter | Send message | Submits the current input |
Up Arrow | Previous message | Navigate input history |
Tab | Autocomplete | Complete file paths, skill names |
Esc | Cancel | Dismiss autocomplete or cancel current edit |
Output Navigation
| Shortcut | Action | Notes |
|---|---|---|
Ctrl+F | Find in output | Search through all output in the session (CC 2.1.47+) |
Ctrl+C | Cancel operation | Interrupt the current tool execution or generation |
Session Control
| Shortcut | Action | Notes |
|---|---|---|
/exit | Exit session | Gracefully close the session (triggers Stop hooks) |
/clear | Clear screen | Clear terminal output |
/compact | Compact context | Compress conversation history to free context space |
Ctrl+C (twice) | Force exit | Exit immediately without cleanup |
CC 2.1.47 New Features
- Find in output (
Ctrl+F): Search through all assistant output, tool results, and error messages in the current session. Works like browser find. - Multi-line input (
Shift+Down): Enter multi-line messages without triggering send. Useful for pasting code blocks, writing detailed prompts, or composing multi-paragraph instructions.
Golden Dataset
Golden dataset lifecycle patterns for curation, versioning, quality validation, and CI integration. Use when building evaluation datasets, managing dataset versions, validating quality scores, or integrating golden tests into pipelines.
I18n Date Patterns
Implements internationalization (i18n) in React applications. Covers user-facing strings, date/time handling, locale-aware formatting, ICU MessageFormat, and RTL support. Use when building multilingual UIs or formatting dates/currency.
Last updated on