tag-synclisted
Install: claude install-skill voxpelli/vp-claude
# Tag Sync
Fetch tags from Raindrop, curate the top N by usage, characterize each with
a one-line description, and write or sync the vocabulary file. Follows the
vendor-sync pattern: registry (vocabulary file) -> fetch from external
(Raindrop API) -> diff against local -> preview -> apply after approval.
The output file at `~/.claude/references/raindrop-tags.md` is consumed by
`/session-bookmarks` when selecting tags for new bookmarks.
## Arguments
- `/tag-sync` — sync existing vocabulary (or create if no file exists)
- `/tag-sync 100` — set tag count to 100, then sync/create
- `/tag-sync --reset` — force full recreation (re-characterize + re-cluster all)
## Edge Cases
- **Raindrop MCP unavailable** — report error and exit. Do not write a partial file.
- **`find_tags` returns fewer than `tag_count`** — use all available tags. Store
the actual count in frontmatter so the next sync has a realistic target.
- **`ai-bookmarked` not in top N** — always inject it regardless of rank. It is
listed in `mandatory_tags` frontmatter.
- **No bookmarks found for a tag** (characterization step) — infer from tag name
alone. Flag with `*` in preview: `*auto-inferred from name`.
- **`~/.claude/references/` directory missing** — create it before writing.
- **Vocabulary fetched today, no explicit args** — warn: "Vocabulary was
already synced today. Pass a count or `--reset` to force." Do not re-fetch.
- **User declines all changes** — report "No changes made" and exit.
## Workflow