Skip to content

Add --extension flag to specify init for opting into extensions at init time #2166

@mnriem

Description

@mnriem

Summary

Currently there is no way to select which extensions to enable during specify init. The git extension is hardcoded to auto-install, and all other extensions must be added post-init via specify extension add. Before the git extension stops being enabled by default (planned for 1.0.0), users need a way to opt in at init time.

Proposed behavior

Add an --extension flag (repeatable) to specify init that accepts bundled extension names, local paths, or URLs:

# Bundled extension by name
specify init my-project --integration copilot --extension git

# Multiple extensions
specify init my-project --extension git --extension selftest

# Local path
specify init my-project --extension ./my-extensions/custom-ext

# URL
specify init my-project --extension https://example.com/extensions/my-ext.tar.gz

Acceptance criteria

  • specify init accepts --extension <value> (repeatable)
  • Accepts bundled extension names, local paths, and URLs
  • Specified extensions are installed during init
  • Works alongside existing flags (--integration, --preset, etc.)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions