Extension skills missing repository initialization and publishing prerequisites
Opened by webframp · 4/12/2026· Shipped 4/13/2026
Description
The four extension creation skills (swamp-extension-model, swamp-extension-vault, swamp-extension-datastore, swamp-extension-driver) do not document that the extension directory must be a swamp repository before swamp extension fmt or swamp extension push will work. This causes a confusing "Not a swamp repository" error in CI/CD pipelines and during first-time publishing.
Steps to Reproduce
- Follow any extension skill to create a new extension (e.g.,
swamp-extension-datastore) - Create
manifest.yaml,deno.json, and extension code underextensions/ - Run
swamp extension fmt manifest.yaml --checkorswamp extension push manifest.yaml - Result:
FTL error Error: "Not a swamp repository: /path/to/extension" - Expected: Either the command works, or the skill documents the prerequisite
swamp repo initstep
Environment
- swamp version: 20260412.000530.0
- OS: Linux (GitHub Actions ubuntu-latest runner and local WSL2)
Affected Components
All four extension skill files under .claude/skills/:
swamp-extension-datastore/SKILL.mdswamp-extension-model/SKILL.mdswamp-extension-vault/SKILL.mdswamp-extension-driver/SKILL.mdswamp-extension-model/references/publishing.md
Gaps Identified
No
swamp repo initstep — None of the skills mention that the extension directory needs.swamp.yaml(created viaswamp repo init) beforeextension fmtorextension pushcommands work. The skills document code structure and APIs well but skip this bootstrapping step.No publishing prerequisites checklist —
publishing.mddocuments the push workflow but does not list.swamp.yamlas a required file alongsidemanifest.yaml.No CI/CD guidance — None of the skills document how to automate testing and publishing in CI pipelines. The
swamp extension fmt --checkandswamp extension pushcommands are critical CI steps but aren't mentioned in a CI context.No monorepo patterns — No guidance for repositories containing multiple extensions, where each subdirectory needs its own
swamp repo init.
Suggested Fix
The fix would involve adding a "Project Setup" or "Prerequisites" section to each extension SKILL.md that documents:
- Running
swamp repo initin the extension directory before publishing - The role of
.swamp.yamlas the repository marker file - A note in
publishing.mdlisting.swamp.yamlalongsidemanifest.yamlas required - Optional: CI/CD example showing
swamp extension fmt --checkandswamp extension pushin a pipeline
Shipped
Click a lifecycle step above to view its details.