Six infra skills carry `version: 1.0.0` in frontmatter:
project-bootstrap, setup-context7, task-status-wiki, using-context7,
using-markitdown, wiki-maintainer. Bumped manually on SKILL.md edits;
semver — MAJOR breaks contract, MINOR adds, PATCH wording.
project-bootstrap gets a new Step 5.5 that writes
.wiki/concepts/bootstrap-manifest.md per project — skill + version + role
table read live from each delegated skill's frontmatter, not hardcoded.
The file is overwritten on re-bootstrap; for history, git log.
Why: when canonical layout for .wiki/ or .tasks/ changes, projects
bootstrapped under the old version drift silently. The per-project
manifest makes that drift debuggable instead of guesswork. Communication
and discovery skills (caveman family, find-skills, active-platform)
aren't versioned — their content is "good copy-paste" and snapshot
mismatch isn't a layout problem.
Wiki: .wiki/concepts/skill-versioning.md documents the convention;
index.md and log.md updated. .tasks/STATUS.md tracks (a/b/c) progress.
Setup/using split for wiki and tasks (commits b and c) follows.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- .wiki/concepts/skill-vs-plugin.md: when a bare SKILL.md suffices vs when
a plugin is required (slash commands, hooks, sub-agents, MCP via
marketplace). Concrete breakdown of `superpowers` showing why each of
its non-skill artifacts needs the plugin format.
- .wiki/index.md, log.md: linked / logged.
Backlog: project-bootstrap Step 4 has the same defect as the wiki step
(now fixed in 1cae0a2) — it creates a single flat STATUS.md and never
mentions the per-task files that task-status-wiki actually expects. Added
to .tasks/STATUS.md backlog for a conscious follow-up.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
User confirmed: invoking using-context7 in a session that needed setup
correctly delegated to setup-context7 via the Prerequisites pointer, and
the setup flow ran end-to-end. Pattern validated.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Split context7 concerns into two skills:
- using-context7 (policy, every-time): when to call, how to query well
- setup-context7 (infrastructure, one-time): install plugin, inject API
key, clean manual MCP entries, with confirmation gates
setup-context7 reuses an existing CONTEXT7_API_KEY by searching, in order:
~/.claude/settings.json → ~/.claude.json (top-level + project-scoped) →
~/.claude/settings.local.json → env. Asks the user only if nothing found.
Cross-platform (paths identical on Win/Linux/macOS; only JSON validator
differs). Phase-2 confirmation gate before any write; per-edit JSON
validation; rollback procedure documented.
using-context7 gets a small Prerequisites section pointing at
setup-context7 when MCP tools are missing.
Bonus fix: scripts/build.sh PS multi-arg bug. Comma-joined -Names didn't
split into [string[]] when build.ps1 was invoked via -File. Now the bash
side loops one PS invocation per skill.
Wiki: extended .wiki/concepts/context7-setup.md with the design rationale
(why split policy from setup) — template for future "X plugin + how to
use X" pairs. index.md and log.md updated.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Context: user previously had context7 MCP server registered manually in
three places (~/.claude/settings.json + two in ~/.claude.json), with the
CONTEXT7_API_KEY in HTTP-header form. Replaced with the official
context7@claude-plugins-official plugin.
What changed (outside the repo):
- ~/.claude/plugins/cache/.../context7/unknown/.mcp.json — added
"--api-key" CLI flag to args (Upstash docs recommend this for stdio).
- ~/.claude/settings.json — removed top-level mcpServers.context7.
- ~/.claude.json — removed top-level mcpServers.context7 and a legacy
project-scoped entry under projects[snolla-admin-ui].
Backups saved with suffix .bak-20260428-114532.
What changed in the repo (this commit):
- .wiki/concepts/context7-setup.md — new page documenting where the key
lives, the /plugin update gotcha, and the rollback path.
- .wiki/index.md, log.md — linked / logged.
- .tasks/STATUS.md — task moved to Done.
Plugin takes effect after Claude Code restart; current session still uses
the legacy HTTP transport (verified via smoke test on resolve-library-id).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>