Sign in
Explore
Prompts · PromptTesting & SecurityReviewed

selftest

Drives a self-test of an extension's lifecycle from the catalog, simulating the developer experience.

Kind
Prompt
Works with
Claude Code, Codex, GitHub Copilot, Cursor, Windsurf / Devin, Cline
Source
github/spec-kit @ c00dc0551583
Path
extensions/selftest/commands/selftest.md
License
MIT
Jobs
Testing
InstallCopy it from the source repository, or sign in and let the assistant adapt it for your project.
# Extension Self-Test: `$ARGUMENTS`

This command drives a self-test simulating the developer experience with the `$ARGUMENTS` extension.

## Goal

Validate the end-to-end lifecycle (discovery, installation, registration) for the extension: `$ARGUMENTS`.
If `$ARGUMENTS` is empty, you must tell the user to provide an extension name, for example: `/speckit.selftest.extension linear`.

## Steps

### Step 1: Catalog Discovery Validation

Check if the extension exists in the Spec Kit catalog.
Execute this command and verify that it completes successfully and that the returned extension ID exactly matches `$ARGUMENTS`. If the command fails or the ID does not match `$ARGUMENTS`, fail the test.

```bash
specify extension info "$ARGUMENTS"
```

### Step 2: Simulate Installation

First, try to add the extension to the current workspace configuration directly. If the catalog provides the extension as `install_allowed: false` (discovery-only), this step is *expected* to fail.

```bash
specify extension add "$ARGUMENTS"
```

Then, simulate adding the extension by installing it from its catalog download URL, which should bypass the restriction.
…