v0.5.0-alpha.3
Pre-release
Pre-release
·
112 commits
to main
since this release
refactor: canonical SKILL.md sources with per-harness codegen (#108)
## Summary
Introduce two new shared packages and migrate the CLI to consume them:
- **`@contextbridge/harness`** — a leaf, data-only package owning the
canonical `HarnessDescriptor` shape and the registry of agent harnesses
PlanBridge knows about (claude, codex, gemini, cursor, aider, opencode,
aether). Today only claude and codex are installable + skill-renderable.
- **`@contextbridge/skills`** — canonical `sources/<name>/SKILL.md` per
the [agentskills.io
specification](https://agentskills.io/specification), with per-harness
rendering driven by the descriptor's `skillRendering` rules. Generated
outputs land at
`harnessIntegrations/<harness-id>/skills/<name>/SKILL.md`. Drift
detection (`skills:check`) runs in `just verify` and CI.
The CLI migrates to consume both packages, and
`packages/cli/src/harnesses/` is renamed to
`packages/cli/src/installers/` to resolve the naming collision — the CLI
directory holds installer machinery (`ClaudeInstaller`/`CodexInstaller`,
abstract bases) tightly coupled to `CliContext`, Commander, and
`node:fs`; the new package holds pure descriptor data.
`CodexInstaller` imports `bundledSkills` directly from
`@contextbridge/skills/codex` across the workspace boundary — `bun build
--compile` follows the `with { type: 'text' }` import and bakes the
SKILL.md content into the standalone binary.
Closes #107.