---
name: use-my-pkm
description: Access and work with the user's personal knowledge management vault using $MY_PKM_PATH environment variable. Use when the user asks to work with their PKM system, notes, Kanban board, inbox items, or knowledge vault. Supports reading/writing notes, managing Kanban tasks, organizing inbox, navigating the vault structure via progressive disclosure, and semantic search via qmd (BM25 + vector + reranking). Also use when the user asks to search, find, or look up notes by meaning/concept.
private: true
---

# Use My PKM — LLM Wiki

Work with Boss's personal knowledge wiki (LLM Wiki pattern, Karpathy-style).

## Vault Location

**Path**: `$MY_PKM_PATH` (environment variable). Always reference via the env var, never hardcode.

## Source of Truth

**Read `$MY_PKM_PATH/CLAUDE.md` first.** It is the authoritative schema for this vault and contains:

- Hybrid search strategy (qmd + progressive disclosure, hard rules, when to use which)
- Three-layer architecture (raw/inbox → wiki → schema)
- Wiki category map (`wiki/people/`, `projects/`, `concepts/`, `work/`, `research/`, `personal/`, `learning/`, `career/`)
- Core rules: naming, quick capture, compounding principle, voice input, 200-line index limit
- Pointers to detailed references under `raw/assets/lt-memory/`:
  - `workflows.md` — ingest / query / lint workflows
  - `page-types.md` — YAML frontmatter templates per page type
  - `kanban-rules.md` — editing `my-kanban.md`
  - `cross-referencing.md` — linking + progressive disclosure rules
  - `search-infrastructure.md` — qmd internals
  - `pitfalls.md` — known gotchas

Do **not** duplicate any of that here. When Boss asks about vault structure, page types, workflows, or conventions, read the relevant file — don't rely on guesses.

## Skill-Specific Additions (not in CLAUDE.md)

These are the only rules that belong in this skill, because they are about how *external callers* (Claude Code sessions invoked from outside `$MY_PKM_PATH`, Jarvis VI, tmux teams) interact with the vault.

### 1. Bootstrap on first invocation

Before any PKM operation in a session:

1. `ls "$MY_PKM_PATH"` — verify top-level structure is reachable
2. `Read "$MY_PKM_PATH/CLAUDE.md"` — load the schema
3. If the task needs more detail (workflows, page types, kanban, pitfalls), read the matching file under `$MY_PKM_PATH/raw/assets/lt-memory/`

### 2. qmd commands (for quick reference)

```bash
qmd search "keyword"          # BM25 (fast, exact)
qmd vsearch "concept"         # Pure vector
qmd query "augmented terms"   # Hybrid + reranking (DEFAULT — use this)
qmd update && qmd embed       # Rebuild after bulk file ops
```

Full search protocol (hybrid, hard rules, when to switch methods) is in `$MY_PKM_PATH/CLAUDE.md`. Follow it.

### 3. PKM backlog vs project backlog (disambiguation)

- Default "add to backlog" → PKM Kanban Backlog column (`$MY_PKM_PATH/my-kanban.md`)
- If Boss mentions a project name or the task is clearly technical → that project's own backlog
- Ambiguous → ask

### 4. Self-update rule (this SKILL.md)

If `$MY_PKM_PATH/CLAUDE.md` changes in a way that affects how external callers should interact with the vault (new env var convention, new bootstrap step, new disambiguation rule), update **this skill** to match. **Never duplicate CLAUDE.md content into this skill** — just add pointers. The project CLAUDE.md is the single source of truth; this skill exists only to tell callers how to find and load it.

### 5. What NOT to put in this skill

- Vault directory listing (grows over time; goes stale → read fresh with `ls`)
- Page type frontmatter templates (→ `raw/assets/lt-memory/page-types.md`)
- Search protocol details (→ `$MY_PKM_PATH/CLAUDE.md`)
- Ingest/query/lint workflow steps (→ `raw/assets/lt-memory/workflows.md`)
- Kanban editing rules (→ `raw/assets/lt-memory/kanban-rules.md`)
- Naming / cross-referencing / voice-input / compounding principle (→ `$MY_PKM_PATH/CLAUDE.md`)

If you catch yourself about to write any of the above into this file, stop and add a pointer instead.
