Repository navigation
[Extension]: Update adrkit to 0.1.5 — widen Spec Kit compatibility to >=0.13.0,<1.2.0 (current entry refuses 1.1.x) #4915
Description
This is an update to an existing catalog entry, not a new submission, per the Publishing Guide ("Updating an Existing Extension").
adrkitis listed at 0.1.4, whose entry declaresspeckit_version: >=0.13.0,<1.1.0. That manifest refuses to install on every 1.1.x release, so catalog users on current Spec Kit can't install it. 0.1.5 widens the range after re-verifying against 1.1.0–1.1.3.
Extension ID
adrkit
Extension Name
adrkit — decision memory for spec-driven development
Version
0.1.5 (previously listed: 0.1.4)
Description
Pulls the decisions governing this work into agent context, checks produced plans against them, and drafts an ADR from a plan artifact.
Author
Mark Beacom (@mbeacom)
Repository URL
https://github.com/mbeacom/adrkit
Download URL
https://github.com/mbeacom/adrkit/releases/download/spec-kit-v0.1.5/adrkit.zip
(Returns 200, and extension.yml is at the archive root. The URL listed now points at the spec-kit-v0.1.4 asset.)
License
Apache-2.0
Homepage
Documentation URL
https://github.com/mbeacom/adrkit/blob/main/packages/adapters/spec-kit/README.md
Changelog URL
https://github.com/mbeacom/adrkit/blob/main/CHANGELOG.md
Required Spec Kit Version
>=0.13.0,<1.2.0. This is the substantive change (it was >=0.13.0,<1.1.0).
Required Tools
adr(>=0.3.0), required. Install it withnpm install -g @adrkit/cli, install it locally in the project, or pointADRKIT_CLIat its entry point.
Number of Commands
3
Number of Hooks
1 (after_plan, optional: true: it asks rather than firing automatically)
Tags
adr, governance, decision-records, architecture, compliance
Key Features
- Retrieve the decisions governing the current work before planning against them (read-only)
- Check a produced plan against the governing decision corpus (read-only)
- Draft one new ADR from the current plan artifact; this is the only command that writes
- An optional
after_planhook that offers the check rather than taking over the plan loop - Path-aware governance, including inbound
@adrmarkers declared in source files
Testing Checklist
- Extension installs successfully via download URL
- All commands execute without errors
- Documentation is complete and accurate
- No security vulnerabilities identified
- Tested on at least one real project
Submission Requirements
- Valid
extension.ymlmanifest included - README.md with installation and usage instructions
- LICENSE file included
- GitHub release created with version tag
- All command files exist and are properly formatted
- Extension ID follows naming conventions (lowercase-with-hyphens)
Testing Details
As with 0.1.4, I re-verified the wider range against each release instead of assuming it held:
| Check | Result |
|---|---|
The listed 0.1.4 against 1.1.0 and 1.1.3, copilot and claude, both --from the release zip and --dev |
all eight runs exit 1 with Compatibility Error: Extension requires spec-kit >=0.13.0,<1.1.0, but 1.1.3 is installed. |
extensions/EXTENSION-API-REFERENCE.md, v0.16.5 → v1.1.3 |
byte-identical through v1.1.2; v1.1.3 adds only the bundled bug extension's hook events |
Extension loader, v1.0.13 → v1.1.3 |
no change to speckit_version/SpecifierSet handling or .extensionignore; it adds transactional install rollback |
0.1.5 via --dev, --from the zip, and init --extension on 1.1.0, 1.1.1, 1.1.2, 1.1.3 (copilot), and on 1.1.0 and 1.1.3 (claude) |
exit 0 in every combination; 3 skills registered; after_plan recorded optional: true |
1.1.0 is not on PyPI, so I ran it from the v1.1.0 git tag.
Install of this exact published asset on macOS with Spec Kit 1.1.3 from PyPI, under both --integration copilot and --integration claude:
specify extension add adrkit --from https://github.com/mbeacom/adrkit/releases/download/spec-kit-v0.1.5/adrkit.zip
→ exit 0 (after answering the untrusted-source prompt)
The installed tree contained exactly LICENSE, NOTICE, README.md, commands/, extension.yml and scripts/. Skills rendered at .github/skills/speckit-adrkit-{context,check,draft} under Copilot and at .claude/skills/speckit-adrkit-{context,check,draft} under Claude. .specify/extensions.yml recorded the hook against speckit.adrkit.check with optional: true. The generated speckit-plan skill still tells the agent to map the dotted hook command to the hyphenated skill name.
I ran the commands with @adrkit/cli 0.18.0 against a fixture ADR corpus, from the installed location on 1.1.0 and 1.1.3:
scripts/context.shwith no arguments (queue projection): exit 0, valid JSONscripts/context.sh <path>(governing decisions for a path): exit 0, valid JSONscripts/check.sh: exit 0
Scope: draft is the one command that writes, and it refuses to run without a plan artifact. I didn't do a completed write in this round; it has been exercised end to end in the project's reference-verification repository. The "no security vulnerabilities" box rests on three things, not on an external audit: the package declares zero dependencies (a packaging test enforces this), it ships only POSIX sh scripts and Markdown, and a test asserts the writing command is unreachable from any hook.
Example Usage
Under the Copilot and Claude integrations, Spec Kit registers the commands as skills, so the hyphenated names are what users type:
# Pull the decisions governing this work into context, before planning against them
/speckit-adrkit-context
# Check a produced plan against the decision corpus
/speckit-adrkit-check
# Draft one ADR from the current plan artifact
/speckit-adrkit-draftAfter /speckit-plan, the optional after_plan hook offers: "Check this plan against the decisions that govern it?"
Proposed Catalog Entry
{
"name": "adrkit — decision memory for spec-driven development",
"id": "adrkit",
"description": "Pulls the decisions governing this work into agent context, checks produced plans against them, and drafts an ADR from a plan artifact.",
"author": "Mark Beacom (@mbeacom)",
"version": "0.1.5",
"download_url": "https://github.com/mbeacom/adrkit/releases/download/spec-kit-v0.1.5/adrkit.zip",
"repository": "https://github.com/mbeacom/adrkit",
"homepage": "https://adrkit.dev",
"documentation": "https://github.com/mbeacom/adrkit/blob/main/packages/adapters/spec-kit/README.md",
"changelog": "https://github.com/mbeacom/adrkit/blob/main/CHANGELOG.md",
"license": "Apache-2.0",
"category": "process",
"effect": "read-write",
"requires": {
"speckit_version": ">=0.13.0,<1.2.0",
"tools": [
{
"name": "adr",
"version": ">=0.3.0",
"required": true
}
]
},
"provides": {
"commands": 3,
"hooks": 1
},
"tags": [
"adr",
"governance",
"decision-records",
"architecture",
"compliance"
],
"verified": false,
"downloads": 0,
"stars": 0,
"created_at": "2026-08-03T00:00:00Z",
"updated_at": "2026-10-10T00:00:00Z"
}Only four fields change from the current entry: version, download_url, requires.speckit_version and updated_at. created_at, verified, downloads and stars are kept as listed.
Additional Context
As before, the upper bound is a verification boundary declared at minor granularity. <1.2.0 means "verified through the 1.1 line". 1.2.0 is where the extension fails loudly and I owe another re-verification.
0.1.5 also ships a corrected README: the 0.1.4 README told users to run specify extension add adrkit, which the discovery-only catalog rejects. It now gives the --from <release zip> form.
I'm happy to adjust any field to match catalog conventions.
Activity
github-actions commentedon Oct 12, 2026
cc @github/spec-kit-maintainers — new catalog submission for review.
Update adrkit extension to v0.1.5
github-actions commentedon Oct 12, 2026
Issue created: #4926