Skip to content

feat: publish tablespec as a Claude Code / Codex plugin marketplace - #20

Merged
dmautz1 merged 6 commits into
DocumentDrivenDX:mainfrom
morficus:feat/plugin-marketplace
Aug 31, 2026
Merged

dmautz1 merged 6 commits into
DocumentDrivenDX:mainfrom
morficus:feat/plugin-marketplace

Conversation

@morficus

@morficus morficus commented Aug 29, 2026 •

Copy link
Copy Markdown
Contributor

What this does

Publishes the tablespec agent skill as a Claude Code and Codex plugin, following the layout DocumentDrivenDX/helix already uses:

/plugin marketplace add https://github.com/DocumentDrivenDX/tablespec
/plugin install tablespec@tablespec

skills/tablespec/SKILL.md is the published skill; .agents/skills/tablespec and .claude/skills/tablespec are symlinks into it. Its text was rewritten to read correctly outside this repo. Three manifests declare the plugin at 0.0.3.

Before tagging a release

Bump version in all three manifests to match the tag. Claude Code refreshes an installed plugin only when plugin.json declares a new version, so a stale manifest ships nothing and reports no error. The new version-guard job fails the tag push when they disagree, and tests/docs/test_plugin_manifests.py keeps them consistent at PR time.

What this does not do

  • No behavior change. Nothing under src/ or apps/ changed, and no dependency file changed.
  • No release, no new runtime dependency, no hooks/hooks.json.

Verification

claude plugin validate . passes. A fresh clone of this branch installs at 0.0.3 with one skill. The guard exits 1 on a mismatched tag. make test reports 3700 passed and 120 skipped.

The GitHub clone path stays untested until merge. If "source": "./" fails there, switch to the url form.

🤖 Generated with Claude Code

morficus and others added 5 commits August 29, 2026 18:11
…l targets

Move .agents/skills/tablespec to skills/tablespec as the source of truth for
the forthcoming Claude Code / Codex plugin. .agents/skills/tablespec and
.claude/skills/tablespec become symlinks to it (helix pattern), so the skill
also autoloads in Claude Code sessions inside this repo.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Rewrite the frontmatter description as a UMF/tablespec trigger instead of a
repo-local one, make DDx bead references conditional on a .ddx/ directory, and
drop wording that assumed the tablespec repo is the working directory. Technical
content (bootstrap composition, happy path, formats, dialects, testing) is
unchanged. Codex openai.yaml metadata updated to match.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…t test

Publish tablespec as a single-plugin marketplace: .claude-plugin/plugin.json,
.claude-plugin/marketplace.json (source "./"), and .codex-plugin/plugin.json,
all at version 0.0.3. tests/docs/test_plugin_manifests.py keeps the three
versions mutually consistent, pins the marketplace catalog shape, checks the
skill frontmatter stays install-agnostic, and verifies the .agents/.claude
install-target symlinks resolve to skills/tablespec.

Install: /plugin marketplace add https://github.com/DocumentDrivenDX/tablespec
         /plugin install tablespec@tablespec

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…gin install

Add a version-guard job to release.yml that fails the release when
.claude-plugin/plugin.json, .claude-plugin/marketplace.json, or
.codex-plugin/plugin.json declare a version other than the pushed tag, and
make build depend on it. Document the plugin install in README, the
skills/ + manifest layout in CLAUDE.md, and the manifest-bump step in the
deployment checklist (v2.3).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…ll docs, test hardening

- SKILL.md: add a "Getting tablespec" block (index-url install, CLI, docs
  URL) and split contributor-only guidance into a "When contributing to
  tablespec itself" section so the skill reads correctly for plugin users in
  their own repos.
- README: replace the incorrect /tablespec claim with /tablespec:tablespec,
  add the scripted claude CLI form and Codex install commands.
- openai.yaml: align short_description with the Codex manifest; new contract
  test pins skill-level Codex metadata to .codex-plugin/plugin.json.
- test_plugin_manifests: allow pre-release versions matching the v*.*.*
  release trigger, assert Codex description equals the Claude one, require
  SKILL.md to open with frontmatter.
- deployment checklist: refresh Last Updated.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@morficus
morficus force-pushed the feat/plugin-marketplace branch from fdb4c12 to bbffe85 Compare August 29, 2026 22:30
@morficus
morficus marked this pull request as ready for review August 29, 2026 22:30
@morficus
morficus marked this pull request as draft August 29, 2026 22:32
@morficus
morficus force-pushed the feat/plugin-marketplace branch from bbffe85 to 7055070 Compare August 29, 2026 22:35
@morficus
morficus marked this pull request as ready for review August 29, 2026 22:55
@dmautz1
dmautz1 merged commit 6022aeb into DocumentDrivenDX:main Aug 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants