Agent skill

Nav Features

by qf-studio in qf-studio/navigator

Show and toggle Navigator features. An agent skill from qf-studio/navigator.

MITAuto-check: notesAgent Workflows

Install Nav Features

skills CLI
$ npx skills add qf-studio/navigator --skill nav-features -a claude-code

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

GitHub CLI
$ gh skill install qf-studio/navigator nav-features --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/qf-studio/navigator.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/nav-features .claude/skills/nav-features && 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
nav-features
GitHub stars
355
Token cost
~3k tokens
SKILL.md length
709 words
Files
3
Skills in repo
32
Repo updated
First seen
Licence
MIT

At a glance

Show and toggle Navigator features. An agent skill from qf-studio/navigator.

  • Works in 3 steps: Read Current Configuration → Handle Toggle Request (If Applicable) → Explain Feature (If Asked)
  • Says show features
  • SKILL.md covers When to Invoke, Execution Steps, Predefined Functions and Error Handling, plus 2 more sections
  • Runs Python scripts from its folder; calls python3; needs TYPESAFE_API_KEY

What it does

Nav Features is an agent skill from qf-studio/navigator. Show and toggle Navigator features. Auto-invoke when user says "show features", "enable/disable feature", "my navigator settings", or "configure navigator".

Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files (for example `functions/feature_manager.py` and `functions/test_feature_manager.py`).

It sits in Agent Workflows. The repository describes itself as: Finish What You Start — Context engineering for Claude Code. Sessions last 20+ exchanges instead of crashing at 7. The licence is MIT.

When your agent uses it

  • Says show features
  • Enable/disable feature
  • My navigator settings
  • Configure navigator

Example prompts

  • “show features”
  • “enable/disable feature”
  • “my navigator settings”
  • “/nav-features”

Requirements

  • Python 3
  • A credential in TYPESAFE_API_KEY
  • Pre-approved tools (allowed-tools): Read, Write, Bash

Workflow steps

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

  1. Read Current Configuration
  2. Handle Toggle Request (If Applicable)
  3. Explain Feature (If Asked)

What it can do on your machine

Read from SKILL.md and the folder at commit 3bb9eac. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Bash

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships script files (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python3

    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 these keys or tokens, usually read from environment variables:

    • TYPESAFE_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Nav Features loads about 3k tokens when it runs. Until then it costs about 42 tokens; SKILL.md has 709 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~42
When it runs · the whole SKILL.md, loaded when a task matches
~3k

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: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Read, Write, Bash

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 qf-studio/navigator at commit 3bb9eac, republished under its MIT licence (© qf-studio). 709 words, ~3,033 tokens.

Download SKILL.mdSave it as .claude/skills/nav-features/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
nav-features
description
Show and toggle Navigator features. Auto-invoke when user says "show features", "enable/disable feature", "my navigator settings", or "configure navigator".
allowed-tools
Read, Write, Bash
version
1.0.0

Navigator Features Skill

Display and toggle Navigator features with an interactive table. Helps users understand what's enabled and customize their setup.

When to Invoke

Invoke this skill when the user:

  • Says "show my features", "navigator features", "what features are enabled"
  • Says "enable [feature]", "disable [feature]", "turn on/off [feature]"
  • Says "configure navigator", "my navigator settings"
  • Asks "what can navigator do?", "what features are available?"

DO NOT invoke if:

  • User is asking about project features (not Navigator)
  • User is in middle of implementation
  • Just starting session (use nav-start instead)

Execution Steps

Step 1: Read Current Configuration
bash
PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT:-$(cat "${NAVIGATOR_CONFIG_HOME:-${XDG_CONFIG_HOME:-$HOME/.config}/navigator}/plugin-root" 2>/dev/null)}"
[ -d "$PLUGIN_DIR/skills" ] || PLUGIN_DIR="$HOME/.claude/plugins/marketplaces/navigator-marketplace"
python3 "$PLUGIN_DIR/skills/nav-features/functions/feature_manager.py" show

This displays the feature table (one row per configurable Navigator feature, current version's number in the header):

v<version> Features:

┌─────────────────────────┬────────┬───────────────────────────────────────────────┐
│ Feature                 │ Status │ Description                                   │
├─────────────────────────┼────────┼───────────────────────────────────────────────┤
│ task_mode               │ [x]    │ Auto-detects task complexity, defers to sk... │
│ tom_features            │ [x]    │ Verification checkpoints, user profile, di... │
│ loop_mode               │ [ ]    │ Autonomous loop execution (enable when nee... │
│ simplification          │ [x]    │ Post-implementation code cleanup with Opus    │
│ auto_update             │ [x]    │ Update notice on session start                │
│ knowledge_graph         │ [x]    │ Unified project knowledge + experiential m... │
│ compact_hook            │ [x]    │ Injects rich summary into compacted sessions  │
│ workflow_enforcer_hook  │ [x]    │ Enforces WORKFLOW CHECK block before task ... │
│ read_guard_hook         │ [x]    │ Warns on excessive Reads (push to agents)     │
│ workflow_state_hook     │ [x]    │ Tracks current task/phase across the session  │
│ task_graph_sync_hook    │ [x]    │ Auto-syncs task files into the knowledge g... │
│ profile_sync_hook       │ [x]    │ Auto-captures preferences/corrections into... │
│ dispatcher              │ [x]    │ Single hook dispatcher runtime (nav_dispat... │
│ tier1                   │ [ ]    │ Zero-token answers for whitelisted prompts    │
│ stop_completion         │ [ ]    │ Completion gate on Stop (decision:block)      │
│ reject_log              │ [x]    │ One JSONL line per refusal (.agent/.nav-re... │
│ jit_memory              │ [ ]    │ Injects relevant memories after tool use      │
│ subagent_context        │ [ ]    │ Injects project context into subagents (2k)   │
│ failure_diagnosis       │ [ ]    │ Surfaces graph pitfalls on tool failures      │
│ judge                   │ [ ]    │ Jev judgments overlay the prompt scorers      │
│ adhd_mode               │ [ ]    │ Per-person reply shaping (one next action,... │
│ ste_mode                │ [ ]    │ STE sentence rules, personal switch           │
│ config_guard            │ [x]    │ Warns when .nav-config.json edits break JSON  │
│ setup_hook              │ [x]    │ One-line runtime status on the Setup event    │
└─────────────────────────┴────────┴───────────────────────────────────────────────┘

All v<version> features configured.
Step 2: Handle Toggle Request (If Applicable)

If user requested to enable/disable a feature:

bash
PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT:-$(cat "${NAVIGATOR_CONFIG_HOME:-${XDG_CONFIG_HOME:-$HOME/.config}/navigator}/plugin-root" 2>/dev/null)}"
[ -d "$PLUGIN_DIR/skills" ] || PLUGIN_DIR="$HOME/.claude/plugins/marketplaces/navigator-marketplace"
# Enable a feature
python3 "$PLUGIN_DIR/skills/nav-features/functions/feature_manager.py" enable task_mode

# Disable a feature
python3 "$PLUGIN_DIR/skills/nav-features/functions/feature_manager.py" disable loop_mode

# Personal toggle (team repo): write to .agent/.nav-config.local.json, not the shared file
python3 "$PLUGIN_DIR/skills/nav-features/functions/feature_manager.py" disable judge --local

Personal overrides (v7.8.0+): .agent/.nav-config.json is committed and shared. .agent/.nav-config.local.json is gitignored (nav-init adds it) and merges over the shared file last — DEFAULTS < shared < local — in both the hook runtime and this script. Use --local when the user says "for me only", "just on my machine", or has no key for a shared-on feature (typical: disable judge --local). show marks rows the local file decides with L and prints a legend; toggling the shared value while a local override exists prints a warning so nobody wonders why nothing changed.

Supported features:

Core (config-toggled):

  • task_mode - Unified workflow orchestration
  • tom_features - Theory of Mind (verification checkpoints, profile, diagnostics)
  • loop_mode - Autonomous loop execution
  • simplification - Code cleanup before commit
  • auto_update - Update notice on session start; the update is one command
  • knowledge_graph - Unified project knowledge + memories (v6.0.0)

Hooks (config-toggled, edit with caution):

  • compact_hook - Pre-compact summary injection
  • workflow_enforcer_hook - Mandatory WORKFLOW CHECK block (disabling weakens guardrails)
  • read_guard_hook - Anti upfront-loading guard
  • workflow_state_hook - Tracks task/phase across the session
  • task_graph_sync_hook - Auto-syncs tasks into knowledge graph
  • profile_sync_hook - Auto-captures profile corrections

v7 hooks runtime (config-toggled; new blocking/injecting features ship OFF):

  • dispatcher - Single hook dispatcher runtime (nav_dispatch); ON by default — disabling turns off ALL hook ops at once
  • tier1 - Zero-token answers for whitelisted prompts (per-rule flags live under tier1.rules.* in .agent/.nav-config.json; edit those directly)
  • stop_completion - Completion gate on Stop via decision:block (stop_completion.continue_enabled stays false; max_continues caps at 2)
  • reject_log - one JSON line per refusal (read-guard deny, prompt-gate block, stop-gate block) in .agent/.nav-rejects.jsonl, both runtimes, bounded to 500 lines; observes only, so it ships on. /nav shows it behind l.
  • jit_memory - Just-in-time memory injection after tool use
  • subagent_context - Project context injection into subagents (subagent_context.budget_chars, default 2000)
  • failure_diagnosis - Graph-pitfall injection on PostToolUseFailure (ships OFF)
  • judge - Typed prompt judge (TypeSafe Jev) behind the loop/complexity/ambiguity scorers (ships OFF). Needs a key: TYPESAFE_API_KEY or ~/.config/typesafe/api_key, never inside .nav-config.json. After enable judge, show the key hint the toggle prints and point to .agent/sops/integrations/typesafe-judge-setup.md
  • adhd_mode - ADHD-friendly reply shape (one next action first, deadlines bold, lists capped, no preamble). The switch is the person's: enable adhd_mode writes ~/.config/navigator/adhd-mode.json, not the repo, and the user can also just say adhd mode on / adhd mode off at any prompt (answered by the hook, zero model turn). --local pins adhd_mode.on in .nav-config.local.json; a repo pin wins over the personal switch. adhd_mode.enabled only makes the machinery available
  • ste_mode - Simplified Technical English sentences (ASD-STE100 Part 1: one idea per sentence, 20 words, imperative, active voice, no gerunds). Same personal-switch mechanics as adhd_mode: enable ste_mode writes ~/.config/navigator/ste-mode.json, or say ste mode on / use ste / ste mode off at any prompt. Both modes may be on; the ADHD block comes first and the STE block applies inside it
  • config_guard - systemMessage warning on invalid .nav-config.json edits (safety surface, ON by default)
  • setup_hook - One-line runtime status on the Setup event (safety surface, ON by default)
Show full SKILL.md (121 more words)Show less

After toggle, show updated table.

Step 3: Explain Feature (If Asked)

If user asks about a specific feature, provide details:

task_mode:

Task Mode (v5.6.0)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Auto-detects task complexity and routes appropriately:
- Simple tasks → Direct execution
- Skill matches → Defers to skill workflow
- Substantial → Task Mode phases (RESEARCH→COMPLETE)

Config: task_mode.enabled, complexity_threshold (0.5)

tom_features:

Theory of Mind (v5.0.0)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Human-AI collaboration improvements:
- Verification checkpoints for high-stakes skills
- User profile (nav-profile) - remembers preferences
- Quality detection (nav-diagnose) - catches drift

Config: tom_features.verification_checkpoints, profile_enabled

loop_mode:

Loop Mode (v5.1.0)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
"Run until done" capability:
- Structured completion signals (NAVIGATOR_STATUS)
- Dual-condition exit (heuristics + EXIT_SIGNAL)
- Stagnation detection prevents infinite loops

Trigger: "run until done", "loop mode"
Config: loop_mode.enabled, max_iterations (5)

simplification:

Code Simplification (v5.4.0)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Automatic code clarity improvements:
- Runs post-implementation, before commit
- Clarity over brevity, functionality preserved
- Uses Opus model for best results

Trigger: "simplify this code"
Config: simplification.enabled, trigger, scope

auto_update:

Auto-Update (v5.5.0)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Read-only update notice on session start (v8: Navigator never updates itself from a hook):
- Compares the running version with the latest GitHub release, at most every
  `check_interval_hours`, never under Pilot
- Shows `claude plugin update navigator@navigator-marketplace` when one is newer
- "Start my Navigator session" applies it (nav-start Step 1.5); restart Claude Code after
- Never blocks session start; disabled means no check and no notice
- Under `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` the engine refuses the fetch; opt in with
  `curl_fallback: true` to repeat the same GET through curl (ships off)

Config: auto_update.enabled, check_interval_hours (1), curl_fallback (false)

Predefined Functions

functions/feature_manager.py

Purpose: Display and toggle Navigator features

Usage:

bash
# Show all features
python3 feature_manager.py show

# Show for first session (includes welcome message)
python3 feature_manager.py show --first-session

# Enable a feature
python3 feature_manager.py enable task_mode

# Disable a feature
python3 feature_manager.py disable loop_mode

# Disable only for this contributor (.agent/.nav-config.local.json, gitignored)
python3 feature_manager.py disable judge --local

# Get feature details
python3 feature_manager.py info task_mode

Output: Formatted feature table or status message

Error Handling

Config not found:

❌ .nav-config.json not found

Run "Initialize Navigator in this project" first.

Unknown feature: lists all available feature names (see Supported features section above). The error message is generated dynamically from the FEATURES dict, so it stays current as features are added.

Success Criteria

  • Feature table displayed correctly
  • Toggle updates config file
  • Updated table shown after toggle
  • Feature details available on request

Notes

This skill is triggered on first session (via nav-start) to help users understand available features and optionally disable unused ones to save tokens.

© qf-studio, 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 in skills/nav-features of qf-studio/navigator.

  • SKILL.md
  • functions/feature_manager.py
  • functions/test_feature_manager.py

Open the folder on GitHubat commit 3bb9eac

Compare with similar skills

Nav Features 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.

Nav Features compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Nav Features this skillqf-studio/navigator355—~3kAutomated safety check: NotesMIT
MCP Server Builderanthropics/skills180k63 repos~2.3kAutomated safety check: PassApache-2.0
Hook Development for Claude Code Pluginsanthropics/claude-plugins-official38k10 repos~4.1kAutomated safety check: NotesApache-2.0
Using Superpowersfarm-fe/farm5.6k35 repos~1.4kAutomated safety check: PassMIT
Executing Plans Inlineobra/superpowers297k2 repos~5.1kAutomated safety check: PassMIT
Skill CreatorAzure/azqr79689 repos~8.2kAutomated safety check: PassApache-2.0

Similar skills

  • MCP Server Builder

    anthropics/skills

    Official

    Guides the design and implementation of Model Context Protocol servers in TypeScript or Python, from tool naming and error messages to evaluation.

    180k GitHub starsUsed in 63 repos~2.3k tokens
    Agent WorkflowsAuto-check passed
  • Hook Development for Claude Code Plugins

    anthropics/claude-plugins-official

    Official

    Explains how to write Claude Code plugin hooks, both prompt-based checks and bash commands, for events such as PreToolUse, Stop and SessionStart.

    38k GitHub starsUsed in 10 repos~4.1k tokens
    Agent WorkflowsAuto-check: notes
  • Using Superpowers

    farm-fe/farm

    A skill your agent uses when starting any conversation - establishes how to find and use skills, requiring Skill tool invocation before ANY response including clarifying questions

    5.6k GitHub starsUsed in 35 repos~1.4k tokens
    Agent WorkflowsAuto-check passed
  • Executing Plans Inline

    obra/superpowers

    Has the agent carry out an implementation plan itself, task by task in the current session, keeping a ledger, proving each step with a test and ending with one whole-branch review.

    297k GitHub starsUsed in 2 repos~5.1k tokens
    Agent WorkflowsAuto-check passed
  • Skill Creator

    Azure/azqr

    Official

    Create new skills, modify and improve existing skills, and measure skill performance.

    796 GitHub starsUsed in 89 repos~8.2k tokens
    Agent WorkflowsAuto-check passed
  • Claude Code Agent Development

    anthropics/claude-plugins-official

    Official

    Explains how to write agents for Claude Code plugins: the markdown file with YAML frontmatter, trigger descriptions, model and color settings, and system prompt design.

    38k GitHub starsUsed in 7 repos~2.8k tokens
    Agent WorkflowsAuto-check passed

More from qf-studio/navigator

All 32 skills in this repo
  • Nav Start

    qf-studio/navigator

    Load Navigator documentation navigator when starting development session, resuming work, or beginning new feature.

    355 GitHub stars~4.7k tokensUpdated yesterday
    Auto-check: notes
  • Backend Endpoint

    qf-studio/navigator

    Create REST/GraphQL API endpoint with validation, error handling, and tests.

    355 GitHub stars~4.5k tokensUpdated yesterday
    Auto-check: notes
  • Backend Test

    qf-studio/navigator

    Generate backend tests (unit, integration, mocks) for existing code.

    355 GitHub stars~1.5k tokensUpdated yesterday
    Auto-check: notes
  • Database Migration

    qf-studio/navigator

    Create database migration with schema changes and rollback. An agent skill from qf-studio/navigator.

    355 GitHub stars~3.7k tokensUpdated yesterday
    Auto-check: notes
  • Frontend Component

    qf-studio/navigator

    Create React/Vue component with TypeScript, tests, and styles.

    355 GitHub stars~4.5k tokensUpdated yesterday
    Auto-check: notes
  • Frontend Test

    qf-studio/navigator

    Generate frontend component tests (React Testing Library, Vue Test Utils, snapshot) for existing components.

    355 GitHub stars~1.6k tokensUpdated yesterday
    Auto-check: notes

Categories

Questions about Nav Features

What does Nav Features do?

Show and toggle Navigator features. An agent skill from qf-studio/navigator. Nav Features is an agent skill from qf-studio/navigator. Show and toggle Navigator features.

When should I use Nav Features?

Nav Features fits situations like: says show features; enable/disable feature; my navigator settings; configure navigator.

How do I install Nav Features in Claude Code?

Run `npx skills add qf-studio/navigator --skill nav-features -a claude-code`. Or copy the skill folder (skills/nav-features in qf-studio/navigator) into .claude/skills/nav-features in your project. Claude Code loads it when a task matches its description.

How do I install Nav Features in Codex?

Run `npx skills add qf-studio/navigator --skill nav-features -a codex`. Or copy the skill folder (skills/nav-features in qf-studio/navigator) into .agents/skills/nav-features in your project. Codex loads it when a task matches its description.

Can I use Nav Features 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 qf-studio/navigator --skill nav-features -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/nav-features, .gemini/skills/nav-features, .github/skills/nav-features and .opencode/skills/nav-features in your project.

What does Nav Features need to run?

Going by SKILL.md and its folder, Nav Features needs Python for the scripts in its folder, the command-line tools its instructions call (python3) and credentials named TYPESAFE_API_KEY. Our summary lists: Python 3; A credential in TYPESAFE_API_KEY. Its frontmatter pre-approves these tools: Read, Write, Bash.

Does Nav Features 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 Nav Features safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Nav Features use?

Nav Features 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 Nav Features use?

About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Nav Features?

Skills that share tags, products or a category with Nav Features: MCP Server Builder (anthropics/skills, 180k stars), Hook Development for Claude Code Plugins (anthropics/claude-plugins-official, 38k stars), Using Superpowers (farm-fe/farm, 5.6k stars) and Executing Plans Inline (obra/superpowers, 297k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Nav Features?

qf-studio (a GitHub organization) maintains it in qf-studio/navigator, which has 355 GitHub stars. The repository holds 32 skills in this directory. The repository was last updated on October 8, 2026.

Source: qf-studio/navigator on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.