Agent skill

Nav Sop

by qf-studio in qf-studio/navigator

Create Standard Operating Procedures after solving novel issues, establishing patterns, or documenting workflows.

MITAuto-check: notesBusiness, Finance & HR

Install Nav Sop

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

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

GitHub CLI
$ gh skill install qf-studio/navigator nav-sop --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-sop .claude/skills/nav-sop && 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-sop
GitHub stars
355
Token cost
~2.9k tokens
SKILL.md length
684 words
Files
2
Skills in repo
32
Repo updated
First seen
Licence
MIT

At a glance

Create Standard Operating Procedures after solving novel issues, establishing patterns, or documenting workflows.

  • Works in 12 steps: Determine SOP Category → Determine SOP Name → Check if SOP Already Exists → …
  • User says document this solution
  • SKILL.md covers When to Invoke, Execution Steps, Complete Example and Testing, plus 6 more sections
  • Runs Python scripts from its folder; calls curl and stripe; needs STRIPE_SECRET_KEY and STRIPE_WEBHOOK_SECRET

What it does

Nav Sop is an agent skill from qf-studio/navigator. Create Standard Operating Procedures after solving novel issues, establishing patterns, or documenting workflows. Use when user says "document this solution", "save this for next time", "create SOP".

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

It sits in Business, Finance & HR, covering Operations and SOPs. It works with Stripe. 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

  • User says document this solution
  • Save this for next time

Example prompts

  • “document this solution”
  • “save this for next time”
  • “create SOP”
  • “/nav-sop”

Requirements

  • Python 3
  • Node.js
  • A credential in STRIPE_SECRET_KEY
  • A credential in STRIPE_WEBHOOK_SECRET
  • Pre-approved tools (allowed-tools): Read, Write, Bash

Workflow steps

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

  1. Determine SOP Category
  2. Determine SOP Name
  3. Check if SOP Already Exists
  4. Generate SOP Content
  5. {Next Action}
  6. {Continue...}
  7. Link to Related Task (If Applicable)
  8. Confirm Success
  9. integrations/
  10. debugging/
  11. development/
  12. deployment/

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:

    • curl
    • stripe

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • stripe.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • STRIPE_SECRET_KEY
    • STRIPE_WEBHOOK_SECRET

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

Context cost

Nav Sop loads about 2.9k tokens when it runs. Until then it costs about 52 tokens; SKILL.md has 684 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~52
When it runs · the whole SKILL.md, loaded when a task matches
~2.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: notes

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

  • NoteMentions a .env fileSKILL.md:149
    Add to `.env`:
  • 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). 684 words, ~2,853 tokens.

Download SKILL.mdSave it as .claude/skills/nav-sop/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
nav-sop
description
Create Standard Operating Procedures after solving novel issues, establishing patterns, or documenting workflows. Use when user says "document this solution", "save this for next time", "create SOP".
allowed-tools
Read, Write, Bash
version
1.0.0

Navigator SOP Creator Skill

Create Standard Operating Procedures (SOPs) - reusable documentation for processes, integrations, debugging solutions, and workflows.

When to Invoke

Invoke this skill when the user:

  • Says "document this solution", "save this for next time"
  • Says "create SOP", "make this reusable"
  • Solves a novel issue and mentions "don't want to hit this again"
  • Sets up integration and says "document the setup"
  • Establishes pattern and mentions "team should follow this"

DO NOT invoke if:

  • Creating task documentation (use nav-task skill)
  • Updating architecture docs (different purpose)
  • Simple bug fix with no reusable pattern

Execution Steps

Step 1: Determine SOP Category

Ask user which category (or infer from context):

Categories:

  1. integrations - Third-party service setups
  2. debugging - Common issues & solutions
  3. development - Dev workflows, patterns
  4. deployment - Deploy procedures, CI/CD

Examples:

  • "How to set up Stripe webhooks" → integrations/
  • "Fixing CORS errors" → debugging/
  • "Testing authenticated routes" → development/
  • "Deploy to production" → deployment/
Step 2: Determine SOP Name

If user provided name:

  • Use their name (sanitize: lowercase, hyphens)
  • Example: "Stripe Payment Setup" → "stripe-payment-setup"

If no name provided:

  • Generate from context: {service}-{action}
  • Example: "github-oauth-integration"
  • Example: "cors-proxy-errors"
Step 3: Check if SOP Already Exists

Check existing SOPs in category:

bash
ls .agent/sops/{category}/*.md 2>/dev/null

If similar SOP exists:

⚠️  Similar SOP found:
   .agent/sops/{category}/{similar-name}.md

Options:
1. Read existing SOP (don't duplicate)
2. Update existing SOP (add to it)
3. Create new SOP (different enough)

Your choice [1-3]:
Step 4: Generate SOP Content

Create SOP document from conversation:

markdown
# {SOP Title}

**Category**: {integrations|debugging|development|deployment}
**Created**: {YYYY-MM-DD}
**Last Updated**: {YYYY-MM-DD}

---

## Context

**When to use this SOP**:
[Describe the scenario where this applies]

**Problem it solves**:
[What issue does this address?]

**Prerequisites**:
- [Requirement 1]
- [Requirement 2]

---

## The Problem

### Symptoms
[What does the issue look like?]
- Error message: `{specific error}`
- Behavior: [Unexpected behavior]
- Impact: [What breaks]

### Root Cause
[Why does this happen? Technical explanation]

---

## The Solution

### Step 1: {Action}

**Do this**:
```bash
# Command or code
npm install stripe

Why: [Explanation of what this accomplishes]

Expected output:

+ stripe@12.0.0
added 1 package
Step 2: {Next Action}

Do this:

typescript
// Code example
import Stripe from 'stripe';

const stripe = new Stripe(process.env.STRIPE_SECRET_KEY);

Why: [Explanation]

Configuration: Add to .env:

STRIPE_SECRET_KEY=sk_test_...
STRIPE_WEBHOOK_SECRET=whsec_...
Step 3: {Continue...}

...


Complete Example

Full Working Code

File: src/services/stripe.ts

typescript
import Stripe from 'stripe';

export class StripeService {
  private stripe: Stripe;

  constructor() {
    this.stripe = new Stripe(process.env.STRIPE_SECRET_KEY!, {
      apiVersion: '2023-10-16',
    });
  }

  async createPaymentIntent(amount: number) {
    return await this.stripe.paymentIntents.create({
      amount: amount * 100, // Convert to cents
      currency: 'usd',
    });
  }
}

File: src/routes/webhook.ts

typescript
export async function handleStripeWebhook(req: Request, res: Response) {
  const sig = req.headers['stripe-signature'];

  try {
    const event = stripe.webhooks.constructEvent(
      req.body,
      sig,
      process.env.STRIPE_WEBHOOK_SECRET!
    );

    // Handle event
    switch (event.type) {
      case 'payment_intent.succeeded':
        // Process successful payment
        break;
    }

    res.json({ received: true });
  } catch (err) {
    res.status(400).send(`Webhook Error: ${err.message}`);
  }
}

Testing

Verify It Works

Test 1: Create payment intent

bash
curl -X POST http://localhost:3000/api/create-payment \
  -H "Content-Type: application/json" \
  -d '{"amount": 10}'

Expected result:

json
{
  "clientSecret": "pi_xxx_secret_yyy"
}

Test 2: Webhook delivery

bash
stripe listen --forward-to localhost:3000/webhook

Expected result:

Ready! You are using Stripe API Version [2023-10-16]

Prevention

How to avoid this issue in future:

  • [Prevention strategy 1]
  • [Prevention strategy 2]

Red flags to watch for:

  • [Warning sign 1]
  • [Warning sign 2]

Troubleshooting

Issue: Webhook signature verification fails

Symptoms:

Error: No signatures found matching the expected signature

Cause: Webhook secret mismatch or body already parsed

Fix:

typescript
// Use raw body for webhook verification
app.post('/webhook', express.raw({type: 'application/json'}), handleStripeWebhook);
Issue: Payment amount incorrect

Symptoms: Charged wrong amount

Cause: Forgot to convert to cents

Fix: Always multiply by 100 for Stripe amounts


Stripe Docs:

Our Docs:

  • Task: .agent/tasks/TASK-04-stripe-integration.md
  • System: .agent/system/project-architecture.md (payments section)

External:


Maintenance Notes

Update when:

  • Stripe API version changes
  • Payment flow changes
  • New webhook events added

Owner: [Team or person responsible]


Last Updated: {YYYY-MM-DD} Tested With: Stripe API v2023-10-16, Node.js v18+


### Step 5: Save SOP File

Write to appropriate category:

Write( file_path: ".agent/sops/{category}/{name}.md", content: [generated SOP] )


Filename: `.agent/sops/{category}/{name}.md`

### Step 6: Update Navigator Index

Edit `.agent/DEVELOPMENT-README.md` to add SOP to index:

```markdown
## Standard Operating Procedures

### Integrations
- **{Service}**: `.agent/sops/integrations/{name}.md` - {One-line description}

### Debugging
- **{Issue}**: `.agent/sops/debugging/{name}.md` - {Description}

### Development
...

### Deployment
...

If SOP came from specific task, add reference:

In task doc:

markdown
## Related SOPs

- `.agent/sops/integrations/stripe-payment-setup.md`

In SOP:

markdown
## Related Documentation

- Task: `.agent/tasks/TASK-04-stripe-integration.md`

Cross-linking helps discoverability.

Step 8: Confirm Success

Show completion message:

✅ SOP created successfully!

Title: {SOP Title}
Category: {category}
File: .agent/sops/{category}/{name}.md
Size: {X} KB (~{Y} tokens)

📚 SOP includes:
- Problem description & symptoms
- Step-by-step solution
- Complete code examples
- Testing instructions
- Troubleshooting guide

🔗 Navigator index updated
[If linked: Linked to TASK-{XX}]

To reference later:
Read .agent/sops/{category}/{name}.md

SOP Categories Explained

Show full SKILL.md (275 more words)Show less
1. integrations/

Purpose: How to set up third-party services

Examples:

  • stripe-payment-setup.md
  • github-oauth-integration.md
  • sendgrid-email-config.md
  • redis-session-store.md

Structure: Setup steps + Configuration + Testing

2. debugging/

Purpose: How to solve common issues

Examples:

  • cors-proxy-errors.md
  • jwt-token-expiration.md
  • database-connection-timeout.md
  • build-errors-typescript.md

Structure: Symptoms + Root cause + Fix + Prevention

3. development/

Purpose: Development workflows & patterns

Examples:

  • testing-authenticated-routes.md
  • adding-new-api-endpoint.md
  • database-migration-workflow.md
  • component-testing-patterns.md

Structure: When to use + Steps + Example + Best practices

4. deployment/

Purpose: Deploy, CI/CD, infrastructure

Examples:

  • deploy-to-production.md
  • rollback-failed-deploy.md
  • setup-github-actions.md
  • environment-variables.md

Structure: Prerequisites + Steps + Verification + Rollback

Common Use Cases

After Solving Tricky Bug
User: "Finally fixed CORS issue, save this so we don't hit it again"
→ Creates: .agent/sops/debugging/cors-proxy-errors.md
→ Captures: Error, root cause, fix, prevention
→ Team won't repeat mistake
After Integration Setup
User: "Stripe webhooks working, document the setup"
→ Creates: .agent/sops/integrations/stripe-webhooks.md
→ Captures: All config steps, code, testing
→ Next integration is copy-paste
Establishing Team Pattern
User: "Document how we test protected routes"
→ Creates: .agent/sops/development/testing-auth-routes.md
→ Captures: Pattern, examples, best practices
→ Team follows consistent approach

Error Handling

Category directory doesn't exist:

Creating category: .agent/sops/{category}/
✅ Directory created

SOPs directory missing entirely:

❌ Navigator not initialized

Run /nav:init to create .agent/ structure.

Duplicate SOP name:

⚠️  SOP already exists: {name}.md

Options:
1. Read existing (don't duplicate)
2. Update existing (add new info)
3. Rename new SOP ({name}-v2.md)

Your choice [1-3]:

Success Criteria

SOP creation is successful when:

  • SOP file created in correct category
  • Contains all required sections
  • Includes working code examples
  • Testing instructions provided
  • Navigator index updated
  • Linked to related task (if applicable)

Scripts

generate_sop.py: Create SOP from conversation

  • Input: Conversation, category, name
  • Output: Formatted SOP markdown

Best Practices

Good SOP names:

  • stripe-payment-integration (specific, descriptive)
  • cors-proxy-configuration (clear purpose)
  • jwt-token-refresh (explains what)

Bad SOP names:

  • fix (too vague)
  • integration (not specific)
  • sop1 (meaningless)

When to create SOPs:

  • ✅ Solved novel issue (will happen again)
  • ✅ Set up integration (reusable process)
  • ✅ Established pattern (team should follow)
  • ✅ Complex workflow (needs documentation)
  • ❌ One-off bug (not reusable)
  • ❌ Obvious solution (don't over-document)

SOP quality checklist:

  • Clear problem description
  • Step-by-step solution
  • Complete code examples (copy-paste ready)
  • Testing instructions
  • Troubleshooting common issues

Notes

SOPs are living documents:

  • Created when pattern established
  • Updated when solution improves
  • Referenced frequently by team
  • Prevent repeated mistakes

They transform:

  • Individual knowledge → Team knowledge
  • One-time solution → Reusable process
  • Tribal knowledge → Documented procedure

Impact: Zero repeated mistakes over time

This skill provides same functionality as /nav:doc sop command but with natural language invocation.

© 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 1 other file in skills/nav-sop of qf-studio/navigator.

  • SKILL.md
  • functions/sop_formatter.py

Open the folder on GitHubat commit 3bb9eac

Compare with similar skills

Nav Sop 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 Sop compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Nav Sop this skillqf-studio/navigator355—~2.9kAutomated safety check: NotesMIT
Cc Sdd New Agentgotalab/cc-sdd3.7k—~1.1kAutomated safety check: PassMIT
DBS Business Toolkit Entrydontbesilent2025/dbskill11k—~2kAutomated safety check: PassCustom licence
Agent Sop Authorstrands-agents/agent-sop1.2k—~3.5kAutomated safety check: PassApache-2.0
Diffusion Narrative Denouncingcanwhite/Krebs1k—~831Automated safety check: PassMIT
Company Researchsimonlin1212/Vibe-Research2.7k—~3.2kAutomated safety check: PassMIT

Similar skills

  • Cc Sdd New Agent

    gotalab/cc-sdd

    Add or extend coding-agent support in cc-sdd by executing the SOP in docs/cc-sdd/sop-new-agent.md end-to-end.

    3.7k GitHub stars~1.1k tokensUpdated 18 days ago
    Business, Finance & HRAuto-check passed
  • DBS Business Toolkit Entry

    dontbesilent2025/dbskill

    Chinese-language entry skill for the dontbesilent business toolkit: onboards new users, orchestrates tasks across sub-skills, runs numbered prompts and lists hidden ones.

    11k GitHub stars~2k tokensUpdated yesterday
    Business, Finance & HRAuto-check passed
  • Agent Sop Author

    strands-agents/agent-sop

    Create (or update) and validate Agent SOPs (Standard Operating Procedures) - markdown-based workflows that guide AI agents through complex, multi-step tasks with RFC 2119 constraints.

    1.2k GitHub stars~3.5k tokensUpdated 3 days ago
    Business, Finance & HRAuto-check passed
  • 基于"扩散模型叙事去噪流"的小说写作 SOP。将 AI 视为去杂质机器,通过锁定全局信号、预测叙事噪声、精准去噪、随机修正四个步骤,解决 AI 翻译腔、逻辑断层和故事平淡的问题。

    1k GitHub stars~831 tokensUpdated 1 mo ago
    Business, Finance & HRAuto-check passed
  • Company Research

    simonlin1212/Vibe-Research

    A 股 / 港股 / 美股个股研究六阶段 SOP(profile → financials → estimates → valuation → risk → report),Phase 0 范围 = 财务估值闭环。当任务是研究 / 分析 / 评估一只或多只已指定代码的个股时使用(港股 / 美股的口径差异见 §7);规定每阶段取哪些数据、调哪些 calc 函数、必须落盘什么产物、过什么…

    2.7k GitHub stars~3.2k tokensUpdated yesterday
    Business, Finance & HRAuto-check passed
  • Polanyi Perspective

    0xenzyme/polanyi-skill

    Michael Polanyi 的思维框架。用 Polanyi 视角分析隐性知识、技能习得、经验传承、师徒制、 知识管理、学习方法、AI/工具替代边界、科学共同体与后批判哲学问题。

    137 GitHub stars~1.3k tokensUpdated 4 mo ago
    Business, Finance & HRAuto-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 2 days ago
    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 2 days ago
    Auto-check: notes
  • Backend Test

    qf-studio/navigator

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

    355 GitHub stars~1.5k tokensUpdated 2 days ago
    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 2 days ago
    Auto-check: notes
  • Frontend Component

    qf-studio/navigator

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

    355 GitHub stars~4.5k tokensUpdated 2 days ago
    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 2 days ago
    Auto-check: notes

Works with

Questions about Nav Sop

What does Nav Sop do?

Create Standard Operating Procedures after solving novel issues, establishing patterns, or documenting workflows. Nav Sop is an agent skill from qf-studio/navigator. Create Standard Operating Procedures after solving novel issues, establishing patterns, or documenting workflows.

When should I use Nav Sop?

Nav Sop fits situations like: user says document this solution; save this for next time.

How do I install Nav Sop in Claude Code?

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

How do I install Nav Sop in Codex?

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

Can I use Nav Sop 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-sop -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-sop, .gemini/skills/nav-sop, .github/skills/nav-sop and .opencode/skills/nav-sop in your project.

What does Nav Sop need to run?

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

Does Nav Sop access the network?

SKILL.md names 1 domain. As links in the text: stripe.com. This is read from the text; nothing was executed.

Is Nav Sop safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file; 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 Sop use?

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

About 2.9k tokens (SKILL.md is roughly 11k 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 Sop?

Skills that share tags, products or a category with Nav Sop: Cc Sdd New Agent (gotalab/cc-sdd, 3.7k stars), DBS Business Toolkit Entry (dontbesilent2025/dbskill, 11k stars), Agent Sop Author (strands-agents/agent-sop, 1.2k stars) and Diffusion Narrative Denouncing (canwhite/Krebs, 1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Nav Sop?

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.