# Knowledge

> Extracts knowledge from Amp threads and updates project docs. Use when asked to document recent work, sync docs after an epic, summarize what changed, or update AGENTS.md from thread history.

- Skill: `hoangnb24/knowledge` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add hoangnb24/knowledge`
- Raw SKILL.md: https://api.skillmd.com/api/skills/hoangnb24/knowledge/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Research & Search
- Author: hoangnb24 (https://skillmd.com/u/hoangnb24)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/hoangnb24/knowledge

---


# Knowledge Extraction & Documentation Sync

Extracts knowledge from Amp threads and synchronizes project documentation.

## Pipeline

```
REQUEST → THREADS → TOPICS → CODE → DOCS
```

| Phase | Action | Tools |
|-------|--------|-------|
| 1. Discover | Find threads by query/time | `find_thread` |
| 2. Extract | Parallel topic extraction | `Task` + `read_thread` |
| 3. Verify | Ground topics in code | `gkg`, `finder` |
| 4. Map | Find target docs | `Read`, `Grep` |
| 5. Reconcile | Compare all sources | `Oracle` |
| 6. Apply | Surgical updates | `edit_file`, `mermaid` |

## Phase 1: Discover Threads

Start from user request:

```bash
# "Document last 2 weeks"
find_thread after:2w

# "Summarize auth work"  
find_thread "authentication"

# "What touched the SDK?"
find_thread file:packages/sdk

# Combined
find_thread "refactor" after:1w file:packages/api
```

## Phase 2: Extract Topics

Spawn parallel `Task` agents (2-3 threads each):

```
Task prompt:
"Read threads [T-xxx, T-yyy] using read_thread.
Goal: 'Extract topics, decisions, changes'

Return JSON:
{
  'topics': [{
    'name': 'topic name',
    'threads': ['T-xxx'],
    'summary': '1-2 sentences',
    'decisions': ['...'],
    'patterns': ['...'],
    'changes': ['...']
  }]
}"
```

Collect outputs → Oracle synthesizes:

```
Oracle: "Cluster these extractions. Deduplicate. 
Latest thread wins conflicts. Output unified topic list."
```

See `reference/extraction-prompts.md` for full templates.

## Phase 3: Verify Against Code

For each topic, verify claims:

```
Topic: "Added retry logic to API client"

1. finder "retry logic API client"
   → finds src/api/client.ts

2. gkg__search_codebase_definitions "retry"
   → RetryPolicy class at L45

3. gkg__get_references "RetryPolicy"
   → 12 usages across 4 files

→ Confirmed: topic matches code
```

| Claim Type | Verification |
|------------|--------------|
| "Added X" | `gkg__search_codebase_definitions "X"` |
| "Refactored Y" | `finder "Y"` → `gkg__get_references` |
| "Changed pattern" | `warpgrep "pattern implementation"` |
| "Updated config" | `gkg__repo_map` on config paths |

## Phase 4: Map to Docs

Discover existing documentation:

```bash
# Structure
gkg__repo_map on docs/, .claude/skills/, */AGENTS.md

# Find existing mentions
Grep "topic keyword" docs/
Grep "RetryPolicy" AGENTS.md
```

Read target files before updating:

```
Read docs/ARCHITECTURE.md
→ Note structure, sections, voice
→ Identify insertion point
```

See `reference/doc-mapping.md` for target file conventions.

## Phase 5: Reconcile

Oracle compares three sources:

```
Oracle prompt:
"Compare:
1. TOPICS: [extracted]
2. CODE: [verified state]  
3. DOCS: [current content]

Output:
- GAPS: topics not in docs
- STALE: docs ≠ code
- UPDATES: [{file, section, change, rationale}]"
```

## Phase 6: Apply Updates

**Text updates**:
```
Read target → edit_file with precise changes
Preserve structure and voice
```

**Architecture diagrams**:
```
mermaid with citations:
{
  "code": "flowchart LR\n  A[Client] --> B[RetryPolicy]",
  "citations": {
    "Client": "file:///src/api/client.ts#L10",
    "RetryPolicy": "file:///src/api/retry.ts#L45"
  }
}
```

**Parallel updates**: Multiple unrelated files → spawn Task per file.

## Concrete Example

User: "Document the auth refactor from last week"

```
1. find_thread "auth" after:7d
   → [T-abc, T-def, T-ghi]

2. Task agents extract (parallel):
   Agent A: T-abc → {topics: [{name: "JWT migration"}]}
   Agent B: T-def, T-ghi → {topics: [{name: "session cleanup"}]}

3. Oracle clusters:
   → "Auth Refactor" with sub-topics

4. Verify:
   gkg__search_codebase_definitions "JWTService"
   → confirmed at packages/auth/jwt.ts

5. Map docs:
   Grep "authentication" AGENTS.md
   → Section exists at line 45

6. Oracle reconciles:
   → Gap: JWT migration not documented
   → Update: AGENTS.md auth section

7. Apply:
   edit_file AGENTS.md add JWT details
   mermaid auth flow diagram
```

## Tool Quick Reference

| Goal | Tool |
|------|------|
| Find threads | `find_thread query\|after:Xd\|file:path` |
| Read thread | `read_thread` with focused goal |
| Parallel extraction | `Task` (spawn multiple) |
| Find definitions | `gkg__search_codebase_definitions` |
| Find references | `gkg__get_references` |
| Semantic search | `finder` or `warpgrep` |
| Area overview | `gkg__repo_map` |
| Synthesis | `Oracle` |
| Read doc | `Read` |
| Search docs | `Grep` |
| Update doc | `edit_file` |
| Diagram | `mermaid` with citations |

## Quality Checklist

```
- [ ] Topics verified against code (GKG)
- [ ] Existing docs read before updating
- [ ] Changes surgical, not wholesale
- [ ] Mermaid diagrams have citations
- [ ] Terminology matches existing docs
```

## Troubleshooting

**Thread not found**: Try topic keywords, widen date range

**Too many threads**: Add `file:` filter, narrow dates

**Topic ≠ code**: Code is truth; note as "planned" or "historical"

**Doc structure unclear**: Read first, match existing patterns

