Expand description
A project’s extensions: Agent Plugins 1.0 folders in
.speccoder/extensions/<name>/ and Spec Kit’s installed extensions,
each with speccoder’s part in dev.speccoder/extension.toml. Loaded as
contributions speccoder already runs — [hooks], hosted skills, MCP
servers — plus views. One digest covers every file of an extension;
nothing of it runs, is offered or reaches a model before a person
trusted that digest (trust).
Modules§
- add
speccoder extensions addandremove: an extension’s folder copied into the project, or deleted from it. Adding runs nothing of the extension — no repository hooks, no submodules, no install scripts — and a repository is taken only at a named commit.- report
- What
speccoder extensions, Settings › Extensions, Needs You anddoctorshow: each extension with what it contributes in words, its trust, and — when it changed — what changed, widened first. - trust
- Who trusted which extension’s bytes: entries
extension:<name>in the hooks’ trust record, holding the digest, the files and the contributions the person saw — so a changed extension shows what changed and what widened. - views
- Views: an extension’s data shown by speccoder’s own widgets. A
runsource runs like an observer command — in the sandbox, speccoder’s state hidden, the checkout read-only — but with no network; afilesource is read as it is. Results are kept with the digest of what they read and shown while that holds; nothing of the extension reaches the page but data.
Structs§
- Loaded
- One extension as loaded.
- Offer
- A Spec Kit hook an extension declares.
- Server
- An
mcp.jsonstdio server, its placeholders not yet expanded.
Constants§
- DIR
- Where Agent Plugins folders live, relative to the project.
- NAMESPACE
- speccoder’s namespace in an Agent Plugins folder.
Functions§
- digest
- The digest of the files of the extension in
folder, and each file’s own, sorted. In a git checkout these are the files git tracks there — what a run’s worktree holds, so trust and runs see the same bytes; elsewhere (a folder being added) every file. - feature_
dir - The folder of
featurein the project atroot, if the format lists it. - load
- Every extension of the project at
root, by name. - offered_
at - The journey steps at which a Spec Kit hook on
eventis offered: what it follows is done, what it precedes is next. - project
- The project folder of
root: wherespeccoder.tomlis, elseroot. - relative_
to - A path a tool reported, relative to the project at
project: as given when relative and inside, stripped when absolute inside;Nonewhen it leaves the project. - resolve
argvwith./paths insidefolder(an extension’s) and the placeholdersvarsnames expanded:${NAME}→ value. Nothing else is expanded.- servers
- The stdio MCP servers of the trusted extensions of the project at
root, their placeholders expanded:${PLUGIN_ROOT}the extension’s folder,${PLUGIN_DATA}a folder of its own in speccoder’s state, the one place it may write besides the worktree. - trusted
- The usable extensions a person trusted, as they are now.