skills/doc-fetcher/SKILL.md
<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly. Run: node scripts/gen-skill-docs.mjs --> --- name: doc-fetcher description: > API/SDK documentation fetcher via Context Hub MCP + web fallback. Triggers on "API docs", "SDK docs", "docs for X", "how to use X", "documentation", "API reference", "API 문서", "라이브러리 사용법", "패키지 문서" and similar. Uses chub MCP tools (chub_search, chub_get) for curated registry access. Falls back to web search when unavailable. Progressive Disclosur
npx skillsauth add Kit4Some/Oh-my-ClaudeClaw skills/doc-fetcherInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
name: doc-fetcher description: > API/SDK documentation fetcher via Context Hub MCP + web fallback. Triggers on "API docs", "SDK docs", "docs for X", "how to use X", "documentation", "API reference", "API 문서", "라이브러리 사용법", "패키지 문서" and similar. Uses chub MCP tools (chub_search, chub_get) for curated registry access. Falls back to web search when unavailable. Progressive Disclosure with memory caching, persistent annotations, quality feedback, and knowledge graph linking. allowed-tools:
Before executing this skill:
Load context from memory:
memory_search(query: "{skill-relevant-query}", associative: true, limit: 5)
memory_search(tag: "{skill-name}", limit: 3)
Review returned memories for relevant past context, decisions, and patterns.
Check OMC state for active work:
state_get_status()
If conflicting active tasks exist, warn the user before proceeding.
Detect current branch (for git-related skills):
git rev-parse --abbrev-ref HEAD 2>/dev/null || echo "not-a-git-repo"
Check proactive mode:
state_read("occ-proactive")
If "false": do NOT proactively suggest other OpenClaw-CC skills during this session.
Only run skills the user explicitly invokes.
Log skill activation:
memory_daily_log(type: "note", entry: "Skill activated: /{skill-name}")
Fetch, structure, and persist API/SDK documentation. Uses Progressive Disclosure (summary first, details on request) to minimize context usage. Leverages Context Hub (chub) MCP for curated, versioned, LLM-optimized documentation with persistent annotations and quality feedback.
Before starting work, load relevant context from the 3-layer memory system:
# Search for related past work
memory_search(query: "{task description}", associative: true, limit: 5)
# Search by relevant tags
memory_search(tag: "{relevant-tag}", limit: 3)
# Check for recent related daily logs
memory_search_date(start: "{7 days ago}", end: "{today}", category: "daily-logs", limit: 5)
Use retrieved context to:
If critical related memories exist, summarize them before proceeding:
Found {N} related memories:
- {memory_1 title}: {brief relevance}
- {memory_2 title}: {brief relevance}
memory_search(query: "{library} documentation", tag: "api-docs")
If found and recent (< 30 days): return cached version with any chub annotations. If found but old: fetch fresh and update.
Use chub MCP tools directly (not CLI):
2a. Search for the doc:
chub_search(query: "{library name}", lang: "{language if known}")
Pick the best-matching id from results (e.g., openai/chat, stripe/api).
If nothing matches, try a broader term. If still no results, fall through to Step 3.
2b. Fetch the doc:
chub_get(id: "{matched_id}", lang: "{py|js|ts}", full: false)
lang if the doc has only one language variant (auto-selected)full: true for comprehensive reference (all files)file: "references/streaming.md" for specific reference files2c. Check for existing annotations:
Annotations from previous sessions appear automatically in the chub_get response.
These contain workarounds, version quirks, and project-specific notes.
WebSearch("{library} official documentation API reference")
Fetch the top result and extract structured documentation. Note: Web fallback lacks versioning, annotations, and feedback — prefer chub when available.
After completing the workflow, persist results to the 3-layer memory system:
Log completion to daily log:
memory_daily_log(type: "done", entry: "{skill-name}: {brief result summary}")
Store significant findings (importance ≥ 6):
memory_store(
category: "{appropriate category}",
title: "{descriptive title}",
content: "{structured result content}",
tags: ["{skill-name}", "{project}", "{relevant-tags}"],
importance: {6-10 based on significance}
)
Link to related memories (if applicable):
memory_link(source: "{new_memory_id}", target: "{related_id}", relation: "{related|derived|refines}")
| Content Type | Category | Subcategory | |-------------|----------|-------------| | Bug fix / debugging | knowledge | debugging | | Code review results | projects | {project-name} | | Design decisions | projects | {project-name} | | Research findings | knowledge | {topic} | | Release / deploy | projects | {project-name} | | Person-related info | people | — | | Task / action item | tasks | — |
memory_store(
category: "knowledge",
subcategory: "docs",
title: "{Library} API Reference v{version}",
content: "{structured documentation}",
tags: ["api-docs", "{library}", "{language}"],
importance: 6
)
Link to the current project in the knowledge graph:
memory_link(source: "{doc_memory_id}", target: "{project_id}", relation: "related")
After using the docs, if you discovered something not in the documentation — a gotcha, workaround, version quirk, or project-specific detail — save it for future sessions:
chub_annotate(id: "{doc_id}", note: "{concise actionable discovery}")
Annotations are local, persist across sessions, and appear automatically on future
chub_get calls. Keep notes concise and actionable. Don't repeat what's already in the doc.
Examples:
Rate the doc after using it. This helps authors fix outdated or incorrect docs:
chub_feedback(id: "{doc_id}", rating: "up", labels: ["accurate", "helpful"])
chub_feedback(id: "{doc_id}", rating: "down", labels: ["outdated"], comment: "Lists gpt-4o as latest but gpt-5 is out")
Available labels:
accurate, well-structured, helpful, good-examplesoutdated, inaccurate, incomplete, wrong-examples, wrong-version, poorly-structuredWhen to rate:
Level 1 — Summary (always shown):
## {Library} v{version}
**Key APIs**: function1(), function2(), Class1, Class2
**Install**: `npm install {library}` / `pip install {library}`
**Source**: Context Hub ({doc_id}) | Annotations: {count}
**Stored**: memory ID #{id}
For detailed usage: `memory_get(id: "{id}")`
Level 2 — Details (on request):
| Priority | Source | When | Capabilities | |----------|--------|------|-------------| | 1 | memory_search | Cached docs from previous sessions | Fastest, project-linked | | 2 | chub MCP (chub_get) | Curated registry (4,400+ libraries) | Versioned, annotatable, feedback | | 3 | WebSearch + WebFetch | Fallback for unavailable docs | Broad coverage, no versioning |
knowledge/docs/ subcategoryapi-docs + library name + languagememory_link(relation: "related")Every skill must end with one of these status codes:
| Code | Meaning | When to Use | |------|---------|-------------| | DONE | All steps completed, evidence provided | Root cause found + fix verified, PR created, review finished | | DONE_WITH_CONCERNS | Completed with warnings or caveats | Tests pass but coverage dropped, fix applied but can't fully verify | | BLOCKED | Cannot proceed, requires user intervention | 3 failed attempts, missing permissions, external dependency down | | NEEDS_CONTEXT | Missing information to continue | Unclear requirements, need user clarification |
3-strike rule: After 3 failed attempts at any step, STOP and escalate to user. Do not continue guessing. Present what was tried and ask for direction.
Scope escalation: If fix/change touches 5+ files unexpectedly, pause and confirm with the user before proceeding.
Security uncertainty: If you are unsure about a security implication, STOP and escalate. Never guess on security.
Verification requirement: Never claim DONE without evidence.
═══════════════════════════════════════
Status: {DONE | DONE_WITH_CONCERNS | BLOCKED | NEEDS_CONTEXT}
Summary: {one-line description of outcome}
Evidence: {test output, verification results, or blocking reason}
═══════════════════════════════════════
development
<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly. Run: node scripts/gen-skill-docs.mjs --> --- name: web-researcher description: > Web research with OMC team parallel execution. Triggers on "웹에서 찾아", "최신 정보", "리서치해", "동향", "web research", "find online", "latest info", "look up", "search the web", "trend analysis" and similar. v3: Spawns research-agent in parallel for multi-angle search. Deduplicates via memory_similar. Builds knowledge graph connections. For comprehensive
tools
<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly. Run: node scripts/gen-skill-docs.mjs --> --- name: unfreeze description: > Remove edit scope restriction set by /freeze or /guard. Triggers on "unfreeze", "편집 제한 해제", "잠금 해제", "remove freeze", "unlock edits". allowed-tools: - Bash - Read --- # /unfreeze — Remove Edit Restrictions ## Preamble Before executing this skill: 1. **Load context from memory**: ``` memory_search(query: "{skill-relevant-query}", associative:
tools
<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly. Run: node scripts/gen-skill-docs.mjs --> --- name: task-analyzer allowed-tools: - Bash - Read - Write - Edit - Glob - Grep - Agent - AskUserQuestion - WebSearch description: > Autonomously analyzes and executes tasks with a structured plan. Triggers on "분석해", "작업 계획", "이거 해줘", "자동으로 처리해", "계획 세워", "workflow 만들어", "analyze", "task plan", "do this", "handle automatically", "make a plan", "create a workflow",
development
<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly. Run: node scripts/gen-skill-docs.mjs --> --- name: ship description: > Automated release workflow with comprehensive quality gates. Triggers on "배포", "릴리스", "ship it", "PR 만들어", "release", "deploy", "create PR", "push this", "ship". Non-interactive: user says /ship, next thing they see is the PR URL. Delegates commit organization to OMC git-master, review to code-reviewer, verification to verifier. Sends PR notification vi