knowledge-base

Manage your personal knowledge base of curated resources, bookmarks, and excerpts. Triggers include "knowledge base", "kb", "add to knowledge", "add tabs to", "what do I have on", "what do we know about", "find resources about". Use with safari-tabs skill for bulk ingestion from Safari windows. Location is ~/knowledge/.

$ Installer

git clone https://github.com/jacobrask/claude-skills /tmp/claude-skills && cp -r /tmp/claude-skills/skills/knowledge-base ~/.claude/skills/claude-skills

// tip: Run this command in your terminal to install the skill


name: knowledge-base description: Manage your personal knowledge base of curated resources, bookmarks, and excerpts. Triggers include "knowledge base", "kb", "add to knowledge", "add tabs to", "what do I have on", "what do we know about", "find resources about". Use with safari-tabs skill for bulk ingestion from Safari windows. Location is ~/knowledge/.

Knowledge Base

Topic-based collection of curated links and notes at ~/knowledge/.

Structure

~/knowledge/
├── _index.md          # Topic listing
├── _inbox.md          # Unprocessed items
├── topics/*.md        # Articles, concepts, best practices
├── tools/*.md         # Software, libraries (organized by use case)
└── archive/YYYY-MM/   # Full article content (link rot protection)

Entry Formats

Topics (articles/concepts):

**[Title](url)** — Author

1-2 paragraph summary focusing on core insights. Be extremely concise, disregard grammar.

Tools (software/libraries):

### [tool-name](url)

**Platform:** macOS / JavaScript / Web Service
**Install:** Installation method
**Use case:** Problem it solves

Brief summary of why it's useful and when to use it.

**Alternatives:** other-tool (tradeoff)

Workflow: Adding from Safari

  1. Get tabs: get_tabs.sh markdown or get_tabs.sh -w N markdown
  2. Process in batches of 8-10 to avoid context overflow
  3. For each batch:
    • Fetch content from URLs
    • Read existing topic files
    • Route to appropriate topic based on content
    • Archive substantial/unique articles to archive/YYYY-MM/
    • Items not fitting existing topics → _inbox.md
  4. Update _index.md when done

Routing

Articles/concepts → topics/:

  • Match by content, not just title
  • Prefer more specific topics
  • If unsure, add to _inbox.md with suggested topic
  • If topic >500 lines or >30 entries, ask user to split

Software/tools → tools/ by use case:

  • Libraries, CLI tools, apps, web services all go here
  • Articles about tools → topics/
  • Create new use-case files as needed

Quality Control

When bulk adding, pause and ask if you encounter:

  • Out of place or low-quality content
  • GitHub repos/gists (ask for routing confirmation)
  • Failed fetches (summarize at end, ask if should add URL-only)

Archiving

Archive to archive/YYYY-MM/ when:

  • Substantial content (>500 words)
  • Likely to disappear (personal blogs)
  • Unique insights

Skip: GitHub repos, YouTube, frequently-updated docs, news

File Format Reference

Topic files: YAML frontmatter with tags, updated, then sections with entries Tools files: Same frontmatter, then ### [tool](url) entries with metadata

Update _index.md with new topics/tools after adding resources.

Finding Resources

Check tools/ before web search when user needs software/library.