Skip to content

[Extension]: Update of Charter #4404

Description

@Huljo

Extension ID

charter

Extension Name

Charter

Version

0.6.1

Description

This is an update to an existing entry

Updates version metadata and changelog to reflect the current release state of the Charter extension.

Changed extension.yml: Bumped version from 0.5.1 to 0.6.1.

This issue was created following instructions in the doc

Author

Fyloss

Repository URL

https://github.com/Fyloss/spec-kit-charter

Download URL

https://github.com/Fyloss/spec-kit-charter/archive/refs/tags/v0.6.1.zip

License

MIT

Homepage (optional)

https://github.com/Fyloss/spec-kit-charter

Documentation URL (optional)

https://github.com/Fyloss/spec-kit-charter/blob/master/README.md

Changelog URL (optional)

https://github.com/Fyloss/spec-kit-charter/blob/master/CHANGELOG.md

Required Spec Kit Version

= 0.11.9

Required Tools (optional)

Number of Commands

5

Number of Hooks (optional)

1

Tags

constitution, governance, modular, fragments, registry

Key Features

  • Centralize shared rules as reusable fragments in a registry (local directory or git repo)
  • Select fragments per project: mandatory, recommended, and optional
  • Compose a final constitution by assembling selected fragments + project-specific rules
  • Track changes: detect when fragments are modified locally vs. updated in the registry
  • Support monorepos: sub-constitutions scope rules to specific packages

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

Tested on:

  • macOS 26 with Spec Kit v0.12.0
  • Linux Ubuntu 24 with Spec Kit v0.12.0

Test project: local basic NextJs app (front + back)

Test scenarios:

  1. Installed extension
specify extension add charter --from https://github.com/Fyloss/spec-kit-charter/archive/refs/tags/v0.3.1.zip
  1. Configured settings
/speckit.charter.config
  • Pick a registry location
  • Select constitution fragments

Output: Generated config.yml + state.yml files in .specify/charter

  1. Run composition
    /speckit.charter.compose
    Output: new .specify/memory/constitution.md file with selected fragments (using /speckit.constitution command to preserve compatibility with Spec kit hooks and metadata)

  2. Verified outputs
    .specify/memory/constitution.md now have all selected fragments.

Example Usage

#### 1. Set Up a Registry

Create a fragment registry (local directory or git repo):

.charter/
├── manifest.yml
├── fragments/
│   ├── global/
│   │   ├── compliance.md
│   │   └── code-quality.md
│   └── languages/
│       └── typescript/
│           └── standards.md
└── sub-constitutions/
    ├── package-auth.md
    └── package-api.md


Create `manifest.yml`:


version: 1
name: "My Organization Charter Registry"
mandatory_fragments:
  - "global/compliance"
recommended_fragments:
  - "global/code-quality"


You can skip step 2 entirely. If no configuration exists yet, running
`/speckit.charter.compose` directly will perform the configuration inline:

#### Compose the constitution (express mode)

/speckit.charter.compose


The combined flow:

1. **Asks for the registry value** (proposing the current/default `.charter`) —
   first input
2. Shows the fragment list and asks for your **selection** — second input
3. Displays the composition summary (no confirmation prompt)
4. Proceeds automatically to generate the constitution

### Other commands

| Command | Description |
|---------|-------------|
| `/speckit.charter.compose update` | Update all fragments from registry |
| `/speckit.charter.compose update <name>` | Update a single fragment |
| `/speckit.charter.add <name>` | Add a new fragment from the registry |
| `/speckit.charter.remove <name>` | Remove a fragment from the composition |
| `/speckit.charter.restore` | Restore constitution to last backup |

Proposed Catalog Entry

{
  "charter": {
    "name": "Charter",
    "id": "charter",
    "description": "Constitution Composer from shared fragment registries",
    "author": "Fyloss",
    "version": "0.6.1",
    "download_url": "https://github.com/Fyloss/spec-kit-charter/archive/refs/tags/v0.6.1.zip",
    "repository": "https://github.com/Fyloss/spec-kit-charter",
    "homepage": "https://github.com/Fyloss/spec-kit-charter",
    "license": "MIT",
    "requires": {
      "speckit_version": ">=0.11.9"
    },
    "provides": {
      "commands": 5
    },
    "tags": ["constitution", "governance", "modular", "fragments", "registry"],
    "verified": false,
    "downloads": 38,
    "stars": 7,
    "created_at": "2026-07-01T00:00:00Z",
    "updated_at": "2026-09-02T04:00:00Z"
  }
}

Additional Context

No response

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

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions