github/spec-kit · error · ExtensionError

Extension '{manifest.id}' is already installed. Use 'specify

Error message

Extension '{manifest.id}' is already installed. Use 'specify extension remove {manifest.id}' first, or retry with --force to overwrite.

What it means

Error "Extension '{manifest.id}' is already installed. Use 'specify extension remove {manifest.id}' first, or retry with --force to overwrite." thrown in github/spec-kit.

Source

Thrown at src/specify_cli/extensions/__init__.py:2089

        Raises:
            ValidationError: If manifest is invalid or priority is invalid
            CompatibilityError: If extension is incompatible
        """
        # Validate priority
        if priority < 1:
            raise ValidationError("Priority must be a positive integer (1 or higher)")

        # Load and validate manifest
        manifest_path = source_dir / "extension.yml"
        manifest = ExtensionManifest(manifest_path)

        # Check compatibility
        self.check_compatibility(manifest, speckit_version)

        # Check if already installed
        if self.registry.is_installed(manifest.id):
            if not force:
                raise ExtensionError(
                    f"Extension '{manifest.id}' is already installed. "
                    f"Use 'specify extension remove {manifest.id}' first, "
                    f"or retry with --force to overwrite."
                )

        # Reject manifests that would shadow core commands or installed extensions.
        self._validate_install_conflicts(manifest)

        # Refuse to install an extension from its own install destination — with
        # --force this would delete the source before copying it (issue #2990).
        dest_dir = self.extensions_dir / manifest.id
        try:
            same_location = source_dir.resolve(strict=False) == dest_dir.resolve(
                strict=False
            )
        except (OSError, RuntimeError):
            same_location = source_dir.absolute() == dest_dir.absolute()
        if same_location:

View on GitHub (pinned to bf88c9f9a8)

Solutions

  1. Run 'specify extension remove <id>' first, or retry the install with --force to overwrite.

When it happens

Trigger: Thrown at src/specify_cli/extensions/__init__.py:2089 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of github/spec-kit@bf88c9f9a8 (2026-08-14). Data as JSON: /api/errors/9e55ce233bedfb15. Report an issue: GitHub.