Automatically fetch and track changes in Claude Code's official documentation using Git-based scraping.
- 🔄 Automated Updates: 4 times daily (3:00, 9:00, 15:00, 21:00 JST)
- 📝 Pure Markdown: Direct storage from source
- 📊 Git-based Tracking: Complete change history
- 🗑️ Full Sync: Adds new docs, updates existing, removes deleted
- 🚀 TypeScript: Type-safe implementation
- ⚡ Lightweight: Minimal dependencies
1. Fetch Sources in Parallel
├── llms.txt (authoritative URL list)
└── docs_map.md (titles and structure)
2. Merge & Dedupe
├── Combine both sources
└── Remove duplicate URLs
3. Sync Local Files
├── Compare merged list with local files
└── Delete orphaned files (not in sources)
4. Fetch Each Document
├── Direct Markdown fetch (no HTML conversion)
├── Add minimal frontmatter (title, source)
└── Save to docs/en/[filename].md
5. Git Tracking
├── New files → "Added [file]"
├── Changed files → "Modified [file]"
└── Deleted files → "Deleted [file]"
┌─ llms.txt (authoritative) ─┐ ┌─ docs_map.md (titles) ─┐
│ 48 URLs │ │ 44 URLs + metadata │
└────────────┬───────────────┘ └──────────┬─────────────┘
└──────────┬─────────────────────┘
↓
[Merge & Dedupe: 48 docs]
↓
[Sync: Remove orphaned files]
↓
[Fetch: Get Markdown directly]
↓
[Git: Track all changes]
| Component | Purpose |
|---|---|
llms.txt |
Authoritative URL list (always up-to-date) |
docs_map.md |
Titles and structure (may become stale) |
mergeDocLists() |
Merge and dedupe both sources |
syncLocalFiles() |
Remove files not in merged list |
fetchDoc() |
Fetch and save individual docs |
metadata/ |
Track statistics and failures |
Runs automatically at:
- 3:00 JST (18:00 UTC)
- 9:00 JST (0:00 UTC)
- 15:00 JST (6:00 UTC)
- 21:00 JST (12:00 UTC)
Manual trigger: Actions tab → "Run workflow"
Current success rate: 100% (48/48 documents)
{
"totalDocs": 48,
"successfulFetch": 48,
"failedFetch": 0,
"deletedFiles": 0
}node-fetch- HTTP clientdotenv- Environment variables- TypeScript 5.3
- GitHub Actions
MIT
claude_code_docs_map.mdmay become stale (last observed: 2025-11-06)llms.txtis treated as the authoritative source for URLs- Subdirectory paths (e.g.,
sdk/migration-guide.md) are supported
Unofficial tool. Not affiliated with Claude Code or Anthropic.
Made with ❤️ for the Claude Code community