Features · Specs 006–010
Agent Adapters & CLI
These five features turned the deterministic packages from Core Foundation into an actual product: a real binary, a real setup flow, and real content for coding agents to install and run.
006 · Agent Adapter Layer
What it is: The Adapter interface,
a Registry, and the first working adapter (Claude
Code).
Why it exists: misterspec needed one, generic way to materialize its canonical Skills into any coding agent's own integration location, without inventing a bespoke installation mechanism per agent — see Multi-Agent Skill Integration for the five more adapters built on this exact interface later.
Example — the shape every adapter shares:
type Adapter interface {
ID() string
Name() string
TargetPath() string
Install(ctx context.Context, req InstallRequest) (InstallResult, error)
}
007 · Project Bootstrap
What it is: internal/bootstrap —
Inspect, Bootstrap, Verify.
Why it exists: Composes 001's project detection, 005's template installation, and 006's adapter registry into one atomic "set up a new project" operation — rejecting an already-initialized target or an unknown agent ID before writing anything.
Example — 008's own init command
(below) is this feature's real, only caller:
misterspec init --agent claude-code --dir ./my-project
# internally: bootstrap.Bootstrap(root, "claude-code")
008 · CLI (Cobra) & the internal Command Tree
What it is: The first real binary
(cmd/misterspec), Cobra-based, exposing every
deterministic operation as a stable, machine-readable JSON
command under a hidden internal tree, plus the
public init command.
Why it exists: Turns 001-007's own Go packages into something an agent can actually invoke — see the full Command Reference for every command this feature (and its later additions) registered.
Example — the public surface stays minimal;
internal is hidden but still fully callable by name:
misterspec --help # shows only "init", "--version", "--update"
misterspec internal status # still works — just not advertised
(Specs 001–010 shipped as the framework's original MVP; the
public surface has grown once since, deliberately, when
Spec 030 added --version and --update
— see the Command Reference.)
009 · Canonical Skills Content
What it is: The ten kit/skills/<name>/SKILL.md
files — mister-knowledge-base,
mister-constitution, mister-program,
mister-features, mister-specify,
mister-plan, mister-tasks,
mister-implement, mister-analyze, and
(added by Spec 029) mister-wrap-up.
Why it exists: This is the actual content a
coding agent reads and follows — see the full
Spec-Driven Workflow for what each
one does and when it runs. Authoring real, multi-file Skill
content also surfaced a real bug: internal/installer
only ever listed a source directory's immediate children, never
descending into a <skill-name>/SKILL.md
subdirectory — fixed here, backward-compatible.
Example — every Skill's own frontmatter shape:
---
name: mister-implement
description: Implement one executable Task against the real codebase, then verify it.
---
010 · Interactive init TUI
What it is: A Bubble Tea-based interactive
flow (Inspect → Warning → Agent Selection → Preview → Installing
→ Success/Error), reusing 007's Bootstrap/
Inspect and 006's Registry entirely
unmodified.
Why it exists: Running misterspec
init with no --agent flag in a real terminal
should feel guided, not require memorizing flags — while the
exact same non-interactive path (--agent claude-code)
keeps working byte-for-byte for scripts and CI.
Example (non-interactive, unchanged by this feature):
misterspec init --agent claude-code --dir ./my-project