Learn-skills.dev help
Contextual guidance and command discovery. Three modes — narrative (first-time), contextual (mid-task), compact (quick reference). Shows available commands, active skills, and intelligent suggestions based on vault state. Triggers on "/help", "what can I do", "show commands", "how does this work".
git clone https://github.com/NeverSight/learn-skills.dev
T=$(mktemp -d) && git clone --depth=1 https://github.com/NeverSight/learn-skills.dev "$T" && mkdir -p ~/.claude/skills && cp -r "$T/data/skills-md/agenticnotetaking/arscontexta/help" ~/.claude/skills/neversight-learn-skills-dev-help && rm -rf "$T"
data/skills-md/agenticnotetaking/arscontexta/help/SKILL.mdEXECUTE NOW
Target: $ARGUMENTS
Parse immediately:
- If target contains
: force compact mode regardless of vault state--compact - If target contains a skill name (e.g., "help reduce" or "help reflect"): show detailed help for that specific skill
- If target is empty: determine mode from vault state
Execute these steps:
- Gather vault state (Step 1)
- Resolve domain vocabulary (Step 2)
- Determine mode (Step 3)
- Discover commands dynamically (Step 4)
- Render the appropriate mode (Step 5)
START NOW. Reference below defines each step.
Step 1: Gather Vault State
Determine the notes folder by checking which domain-named directory exists (notes/, reflections/, concepts/, ideas/, decisions/, memories/, or any custom name from derivation-manifest.md). Then gather counts:
- Note count:
files in the notes folder, excluding MOCs (files with.md
in frontmatter)type: moc - Inbox count:
files in the inbox folder (inbox/, journal/, encounters/, etc.).md - Observation count:
files in.md
orops/observations/ops/methodology/ - Tension count:
files in.mdops/tensions/ - Connection density: count wiki links (
) across notes folder; sparse if fewer than 2x note count[[ - Queue state: pending tasks in
orops/queue/queue.yamlops/queue/queue.json - Health warnings: check latest report in
if it existsops/health/ - Tutorial state: check
for incomplete tutorialops/tutorial-state.yaml - Session count: estimate from
file count (indicates usage maturity)ops/sessions/
# Quick state gathering note_count=$(ls -1 {vocabulary.notes}/*.md 2>/dev/null | wc -l | tr -d ' ') inbox_count=$(ls -1 {vocabulary.inbox}/*.md 2>/dev/null | wc -l | tr -d ' ') obs_count=$(ls -1 ops/observations/*.md ops/methodology/*.md 2>/dev/null | wc -l | tr -d ' ') tension_count=$(ls -1 ops/tensions/*.md 2>/dev/null | wc -l | tr -d ' ')
Step 2: Resolve Domain Vocabulary
Read
ops/derivation-manifest.md (or fall back to ops/derivation.md Vocabulary Mapping section). Extract domain-native names for: reduce, reflect, reweave, verify, rethink, note, MOC, inbox. If neither file exists, use universal names.
For display, show domain name with universal in parentheses when they differ:
/{domain:reduce} (reduce) Extract patterns from journal entries
If domain name equals universal name, show just the name:
/reduce Extract insights from source material
Step 3: Determine Mode
| Condition | Mode |
|---|---|
in arguments | Compact |
| Specific skill name in arguments | Skill detail |
| Note count < 5 | Narrative |
| Note count >= 5 | Contextual |
Step 4: Discover Commands
Scan
${CLAUDE_PLUGIN_ROOT}/skills/ dynamically:
- Subdirectories containing
(e.g.,SKILL.md
)reduce/SKILL.md
Extract
name: and description: from each frontmatter. Do NOT hardcode the command list.
Command categories:
| Category | Commands | When to Show |
|---|---|---|
| Core | /ask, /learn, /next, /help | Always |
| Processing | /reduce, /reflect, /reweave, /verify | Always (all skills from day one) |
| Maintenance | /health, /rethink, /remember | Always |
| Evolution | /architect, /reseed, /add-domain, /upgrade | Always |
| Meta | /tutorial, /graph, /stats | Always |
Step 5: Render
NARRATIVE MODE (note count < 5)
This is the first impression. The user is new or nearly new. Explain what the system IS before listing what it DOES.
What narrative mode communicates:
- What Ars Contexta is (one sentence)
- What THEIR system was built to do (read from ops/derivation.md if available)
- What they can do RIGHT NOW (concrete actions, not abstract possibilities)
- How the system grows with them
--=={ ars contexta : help }==-- Your knowledge system is ready. It turns thoughts into a connected graph where every note compounds the value of every other note. [If ops/derivation.md exists:] Your system: [domain description from derivation] Getting started: Tell me a thought, observation, or question. I will turn it into a note and show you what the system does with it. Or try one of these: /ask [question] Ask about [domain] -- I will answer from your graph /learn [topic] Research [topic] and grow your graph with findings /tutorial Walk through the system step by step (5 minutes) As your graph grows, you will use: /reduce [source] Extract insights from articles, notes, or any raw material /reflect Find connections between notes /health Check your system's health Your system also learns from experience: /remember Capture when something goes wrong (your system remembers corrections) /ask [question] Ask about [domain] -- answers draw from 249 methodology notes AND your system's own methodology notes Type /help anytime for guidance.
Manual reference (if manual/ exists): If the vault contains a
manual/ directory, add to the narrative output:
For a deeper guide, read manual/getting-started.md or explore the full manual in manual/manual.md.
Key principles for narrative mode:
- Conversational, not list-like
- Show the easiest entry point first ("tell me a thought")
- Group commands by when the user would need them, not alphabetically
- Reference the user's actual domain when possible
- If tutorial is incomplete, mention: "You have an unfinished tutorial (step N of 5). Resume with /tutorial"
CONTEXTUAL MODE (note count >= 5)
The user has been working. Show them what is happening NOW and what would be most valuable NEXT.
What contextual mode communicates:
- Current system state (brief metrics)
- What needs attention right now (state-aware)
- Suggested next action (the single most valuable thing)
- Commands they might not know yet
- Full command reference
--=={ ars contexta : help }==-- Your system: [domain] knowledge graph [N] notes, [M] connections, [P] pending tasks Right now: [State-aware observations — pick up to 3 most relevant:] Your inbox has [N] items (oldest: [age]) [N] pending observations -- approaching /rethink threshold Pipeline: [N] tasks at [phase] phase [N] notes have sparse connections (< 2 links) Suggested: [Single most valuable next action with rationale] [If user hasn't tried certain commands:] Commands you might not know: /remember Capture when something goes wrong (teaches your system from friction) /graph Explore your knowledge graph visually /stats See vault metrics in shareable format All commands: /ask [question] Query your knowledge system /learn [topic] Research and grow your graph /next Next recommended action /{reduce} [source] Extract insights from material /{reflect} Find connections between notes /{reweave} Update older notes /verify [note] Combined quality verification /health Run vault diagnostics /{rethink} Challenge assumptions /remember Capture methodology learning /architect Research-backed evolution advice /reseed Principled restructuring /add-domain Extend with a new domain /upgrade Check for skill improvements /tutorial Interactive walkthrough /graph Graph exploration /stats Vault metrics
State-aware suggestion logic:
Pick the FIRST matching condition:
| Condition | Suggestion |
|---|---|
| Inbox has items | |
| Pipeline has pending tasks | |
| 10+ observations or 5+ tensions | |
| Health warnings exist | |
| Notes exist, sparse connections | |
| User hasn't tried /learn | |
| Methodology folder has friction notes | |
| Methodology folder has notes beyond derivation-rationale | |
| Sessions accumulating without mining | |
| Healthy vault, no pressure | |
Reference a specific file when possible (e.g., the actual oldest inbox filename, the actual pending task description).
Manual page suggestion (if manual/ exists): Based on the first matching state-aware condition, suggest the relevant manual page:
| Condition | Manual Page |
|---|---|
| Inbox has items | [[workflows]] (processing pipeline) |
| Pipeline has pending tasks | [[workflows]] (batch processing) |
| Observations/tensions accumulated | [[meta-skills]] (/rethink guide) |
| Health warnings exist | [[troubleshooting]] |
| Sparse connections | [[workflows]] (connection finding) |
| General orientation needed | [[getting-started]] |
Add:
For details, see manual/{page}.md
"Commands you might not know" logic:
Track which commands the user has likely used by checking for their artifacts:
- /learn used if
has learn-related transcripts or inbox has research filesops/sessions/ - /remember used if
orops/methodology/
has filesops/observations/ - /graph used if... (no artifact, always suggest if note count > 20)
- /stats used if... (no artifact, always suggest if note count > 10)
Show up to 3 commands the user probably has not tried. Skip commands they clearly have used.
COMPACT MODE (--compact flag)
Quick reference. No state analysis. No suggestions. Just the commands.
--=={ ars contexta : help --compact }==-- /ask [question] Query knowledge system /learn [topic] Research and grow graph /next Next recommended action /{reduce} [source] Extract insights /{reflect} Find connections /{reweave} Update older notes /verify [note] Quality verification /health Vault diagnostics /{rethink} Challenge assumptions /remember Capture methodology learning /architect Evolution advice /reseed Restructure system /add-domain Add new domain /upgrade Check for improvements /tutorial Interactive walkthrough /graph Graph exploration /stats Vault metrics /help This guide
SKILL DETAIL MODE (help [skill-name])
When the user asks for help with a specific skill (e.g.,
/help reduce or /help reflect):
- Find the skill's SKILL.md file
- Read its frontmatter (name, description) and first section
- Display a focused guide:
--=={ ars contexta : help /{skill-name} }==-- {Description from frontmatter} Usage: /{skill-name} [arguments] Examples: /{skill-name} inbox/article.md /{skill-name} --since 7d What it does: {2-3 sentence summary extracted from the skill's philosophy or first methodology section} Related: /{related-skill} {one-line description}
Special case for /help ask: Expand the "What it does" section to mention both knowledge layers:
What it does: Queries the bundled methodology knowledge base (249 research claims) AND your local methodology notes in ops/methodology/. Answers are grounded in specific claims and applied to your system's configuration.
Extract the pipeline position (what comes before and after this skill) to show workflow context.
Manual cross-reference: If
manual/skills.md exists, also check it for additional context about the requested skill. The manual may contain domain-specific examples and workflow context that the SKILL.md frontmatter does not include.
Rendering Rules
- Max width: 76 characters
- No ANSI color codes
- No emoji
- Monospaced alignment assumed
- Display short command forms (
), not plugin-qualified forms (/reduce
)/arscontexta:reduce - Domain-native names in curly braces (e.g.,
) are resolved from derivation-manifest.md/{reduce} - When domain name equals universal name, drop the braces
Edge Cases
No ops/derivation-manifest.md: Use universal vocabulary for all command names.
Pre-init invocation: If no vault structure exists at all (no notes folder, no ops/), show a minimal message:
Ars Contexta is not initialized in this directory. Run /setup to create your knowledge system.
Multiple domains: If
ops/derivation-manifest.md lists multiple domains, show commands grouped by domain in contextual mode.