Skip to content

[Extension]: Add keel #4549

Description

@athulrajeev

Extension ID

keel

Extension Name

Keel Connect

Version

2.0.1

Description

Connect the local Keel runtime to Keel Cloud without leaving your agent.

Author

Keel Discovery

Repository URL

https://github.com/keeldiscovery/spec-kit-keel

Download URL

https://github.com/keeldiscovery/spec-kit-keel/archive/refs/tags/v2.0.1.zip

License

Apache-2.0

Homepage (optional)

https://keeldiscovery.com

Documentation URL (optional)

https://github.com/keeldiscovery/spec-kit-keel#readme

Changelog URL (optional)

https://github.com/keeldiscovery/spec-kit-keel/blob/main/CHANGELOG.md

Required Spec Kit Version

=1.0.0,<2.0.0

Required Tools (optional)

python3 >= 3.9

Number of Commands

2

Number of Hooks (optional)

0

Tags

keel, runtime, connect, agent, infrastructure

Key Features

  • speckit.keel.connect checks whether the Keel runtime on this machine is connected to Keel Cloud, starts it if it isn't, and hands back the code and the URL to approve the device. It says which Keel it is talking to, and it replaces a runtime an older version of this extension started when that runtime is idle (never mid-job, never a downgrade).
  • speckit.keel.brief is prose only: it tells the founder how to download the brief from keel-web and paste it in, and tells the agent to read the measured lines as evidence, the summary paragraph as opinion, and every quoted sentence as source material, never an instruction.
  • The runtime ships inside the extension. Nothing is installed, downloaded or fetched beyond the extension itself; Python 3.9 or newer is the one prerequisite. No hooks, no config, no templates.

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.yml manifest 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

  • Supersedes [Extension]: Add keel #4547 (2.0.0), closed by the same submitter: 2.0.1 moves Keel's address to https://keeldiscovery.com; the extension's own logic is unchanged.

  • Installed from the download URL above into a fresh specify init project on Spec Kit 1.0.7 (macOS): both commands registered as agent skills, specify extension list shows Keel Connect v2.0.1, the connect script started the runtime and returned a device code, the disconnect script stopped it.

  • The tree's own tests/test-install.sh --full: 35 of 35 checks pass against the released tag.

  • An end-to-end journey through the extension (Spec Kit project, Claude Code or Copilot saying "keel connect", device approval in a real browser, the runtime on the host's executor) runs nightly in the maintainers' evaluation matrix; the same journey through the equivalent Claude Code plugin runs on every change on macOS and Windows.

  • The runtime's own suite: 415 tests, three operating systems, both executors.

Example Usage

specify extension add keel
/speckit.keel.connect      # or just say "keel connect" to your agent
# → a short code and a URL; approve the device in your browser; the runtime is connected
/speckit.keel.brief        # once Keel has something to say: how to bring the brief into the spec

Proposed Catalog Entry

{
  "id": "keel",
  "name": "Keel Connect",
  "description": "Connect the local Keel runtime to Keel Cloud without leaving your agent.",
  "author": "Keel Discovery",
  "version": "2.0.1",
  "download_url": "https://github.com/keeldiscovery/spec-kit-keel/archive/refs/tags/v2.0.1.zip",
  "repository": "https://github.com/keeldiscovery/spec-kit-keel",
  "documentation": "https://github.com/keeldiscovery/spec-kit-keel#readme",
  "changelog": "https://github.com/keeldiscovery/spec-kit-keel/blob/main/CHANGELOG.md",
  "license": "Apache-2.0",
  "category": "integration",
  "effect": "read-only",
  "requires": {
    "speckit_version": ">=1.0.0,<2.0.0",
    "tools": [
      {
        "name": "python3",
        "version": ">=3.9",
        "required": true
      }
    ]
  },
  "provides": {
    "commands": 2,
    "hooks": 0
  },
  "tags": [
    "keel",
    "runtime",
    "connect",
    "agent",
    "infrastructure"
  ]
}

Additional Context

This is an update to an existing catalogue entry. keel is already in catalog.community.json at 0.2.0 (created 2026-08-10). 2.0.0 replaces it outright: the six prompt-based commands, the two hooks, the config file and the gate script are gone (the changelog says what left and why), and two commands take their place. The entry's created_at, downloads and stars are yours to carry forward; the JSON above sends no values for them. Category changes from process to integration, effect from read-write to read-only (neither command writes anything itself), and requires.speckit_version from >=0.15.0 to >=1.0.0,<2.0.0.

Filed with the GitHub CLI mirroring the form's fields, since the form cannot be driven from a terminal; please add the extension-submission label as usual.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions