The catalog of installable items for dotcontext — commands, MCPs, external CLIs, hooks, scripts, and skills users can opt into via the marketplace TUI.
| Path | Purpose |
|---|---|
manifest.json |
The catalog itself — 21 items, 16 in the starter pack |
manifest.schema.json |
JSON Schema for catalog validation |
templates/ |
Files shipped to users on install (commands, agents, skills, scripts) |
scripts/validate-manifest.sh |
Pure-bash validator (jq optional) |
- When the user opens the TUI (
dotcontextno-args), the CLI fetchesmanifest.jsonfromhttps://raw.githubusercontent.com/goca-se/dotcontext-marketplace/main/manifest.jsonand caches it under~/.dotcontext/cache/. - When the user installs an item, dotcontext walks the bundle's
filesarray and fetches eachsrcpath from the same base URL. - The lockfile (
.context/.dotcontext-state.jsonlocal;~/.dotcontext/state.jsonglobal) records what was installed and from where.
For local development of the marketplace itself, point dotcontext at your clone:
DOTCONTEXT_MARKETPLACE_ROOT=$PWD dotcontext # in a regular terminal| Type | Description |
|---|---|
command-bundle |
A /slash-command plus any agents/skills it needs |
skill |
A .claude/skills/<name>/SKILL.md guide |
mcp |
A Model Context Protocol server entry (added to .mcp.json or ~/.claude/settings.json) |
external-cli |
A binary like gh, glab, installed via OS package manager |
hook |
A Claude Code event hook entry |
script |
A standalone script under .claude/scripts/ |
Adding an item is a single-PR workflow. See CONTRIBUTING.md for the full recipe.
In short:
- Edit
manifest.jsonto add the entry - Add template files under
templates/.claude/... make validate-manifest- PR
This repo is currently untagged. Each catalog item has its own version field. The CLI consumes the main branch by default; users can pin via the DOTCONTEXT_MARKETPLACE_BRANCH env var when running dotcontext.
A future min_cli_version field per item can gate items that depend on newer CLI features.
- This repo: what can be installed (catalog + content).
- goca-se/dotcontext: how it gets installed (the TUI, CLI, install handlers, lockfile, migration).
The split exists to keep the contribution bar low for casual catalog additions while letting the harness stay focused. See dotcontext ADR-020.