Skip to content
2 changes: 1 addition & 1 deletion plugins/actionlint/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
"name": "actionlint",
"version": "0.7.0",
"version": "0.7.1",
"description": "Lint GitHub Actions workflow files on edit via actionlint, surfacing findings as advisory context.",
"author": {
"name": "Melodic Software",
Expand Down
16 changes: 16 additions & 0 deletions plugins/actionlint/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,22 @@
All notable changes to the `actionlint` plugin are documented here. Format follows
[Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this plugin uses semantic versioning.

## [0.7.1]

### Fixed

- **Headless reconfigure recipe now preserves install scope (#1406).** The `claude plugin
uninstall` → `claude plugin install ... --config` recipe in `skills/setup/SKILL.md` defaulted
both halves to `-s user`. When this plugin is installed at `project` or `local` scope, that
silently uninstalled a separate user-scope record while the effective project/local install kept
loading, and the reinstall landed at a scope that does not load. Both commands now carry
`-s <scope>`, sourced from what `claude plugin list` reports for this plugin — the same fix
already applied to `session-flow` and `rate-limit-guard` in #1393.
The recipe also now requires the reinstall to re-supply **every** key whose value should
stay non-default, not only the key being changed: uninstalling drops the stored
`pluginConfigs` entry, so an omitted key silently falls back to its manifest default.
Record the current values before uninstalling.

## [0.7.0]

### Added
Expand Down
14 changes: 11 additions & 3 deletions plugins/actionlint/skills/setup/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,17 @@ Run `check`, then for each FAIL point at the resolution — this skill installs
time). Headless: current official docs document `--config` only as a
`claude plugin install` flag that sets manifest-declared options; its
behavior against an already-installed plugin is undocumented, and in
practice the reliable headless path is `claude plugin uninstall actionlint`
then `claude plugin install actionlint@<marketplace> --config actionlint_enabled=true`;
this skill never writes user settings or `pluginConfigs`.
practice the reliable headless path is `claude plugin uninstall actionlint -s <scope>`
then `claude plugin install actionlint@<marketplace> -s <scope> --config actionlint_enabled=true`;
Comment thread
kyle-sexton marked this conversation as resolved.
this skill never writes user settings or `pluginConfigs`. Both commands default to
`-s user` — pass the scope `claude plugin list` reports for this plugin (`user`, `project`,
or `local`), and run from that project's directory for a `project`/`local` scope. Defaulting
instead uninstalls a separate user-scope record while the effective install stays in place,
so the reinstall lands at a scope that does not load. Uninstalling also drops the stored
`pluginConfigs` entry, so the reinstall must re-supply **every** key whose value should stay
non-default — both `actionlint_enabled` and `stdin_read_timeout`, not only the key being
changed. Record the current values before uninstalling; afterwards there is nothing left to
read them from.

After pointing at a remediation, re-run the relevant `check` probe and report its actual
result — never claim resolved on the reader's report that they installed something.
Expand Down
2 changes: 1 addition & 1 deletion plugins/ai-briefing/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
"name": "ai-briefing",
"version": "0.6.1",
"version": "0.6.2",
"description": "Build source-backed AI-industry briefings from official vendor publications, configured RSS/Atom feeds, GitHub releases, reputable secondary reporting, and user-supplied URLs. Deduplicate, rank, and present results as markdown or optional HTML/PPTX decks, with repository-owned profile, audience, and brand configuration. Automated X/Twitter collection is disabled; Playwright is used only for deterministic local rendering.",
"author": {
"name": "Melodic Software",
Expand Down
12 changes: 12 additions & 0 deletions plugins/ai-briefing/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,18 @@
All notable changes to the `ai-briefing` plugin are documented here. Format follows
[Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this plugin uses semantic versioning.

## [0.6.2]

### Fixed

- **Headless reconfigure recipe now preserves install scope (#1406).** The `claude plugin
uninstall` → `claude plugin install ... --config` recipe in `skills/setup/SKILL.md` defaulted
both halves to `-s user`. When this plugin is installed at `project` or `local` scope, that
silently uninstalled a separate user-scope record while the effective project/local install kept
loading, and the reinstall landed at a scope that does not load. Both commands now carry
`-s <scope>`, sourced from what `claude plugin list` reports for this plugin — the same fix
applied to the other affected plugins in this release wave.

## [0.6.1]

### Changed
Expand Down
9 changes: 7 additions & 2 deletions plugins/ai-briefing/skills/setup/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,13 @@ anything.
changes the stored value; this skill never writes `pluginConfigs`.
- **Headless:** `claude plugin install ... --config active_profile=<name>` seeds the value on a
*fresh install only* and is ignored once the plugin is installed, so reconfiguring headlessly
means `claude plugin uninstall ai-briefing` then `claude plugin install
ai-briefing@<marketplace> --config active_profile=<name>`.
means `claude plugin uninstall ai-briefing -s <scope>` then `claude plugin install
ai-briefing@<marketplace> -s <scope> --config active_profile=<name>`. Both commands default
to `-s user` — pass the scope `claude plugin list` reports for this plugin, and run from that
project's directory for a `project`/`local` scope. Defaulting instead uninstalls a separate
user-scope record while the effective install stays in place, so the reinstall lands at a
scope that does not load. `active_profile` is this plugin's only `userConfig` key, so the
reinstall has nothing else to re-supply.
- **Neither, for a one-off:** a per-run `--profile <name>` selects a different profile without
touching stored config.
2. **`sources.md`** — FAIL if the resolved profile has no `sources.md`: `/ai-briefing:generate`
Expand Down
2 changes: 1 addition & 1 deletion plugins/bash-format/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
"name": "bash-format",
"version": "0.6.2",
"version": "0.6.3",
"description": "Auto-format and lint shell scripts on edit via shfmt + ShellCheck, using the consuming repo's own .editorconfig and .shellcheckrc.",
"author": {
"name": "Melodic Software",
Expand Down
12 changes: 12 additions & 0 deletions plugins/bash-format/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,18 @@
All notable changes to the `bash-format` plugin are documented here. Format follows
[Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this plugin uses semantic versioning.

## [0.6.3]

### Fixed

- **Headless reconfigure recipe now preserves install scope (#1406).** The `claude plugin
uninstall` → `claude plugin install ... --config` recipe in `skills/setup/SKILL.md` defaulted
both halves to `-s user`. When this plugin is installed at `project` or `local` scope, that
silently uninstalled a separate user-scope record while the effective project/local install kept
loading, and the reinstall landed at a scope that does not load. Both commands now carry
`-s <scope>`, sourced from what `claude plugin list` reports for this plugin — the same fix
already applied to `session-flow` and `rate-limit-guard` in #1393.

## [0.6.2]

### Changed
Expand Down
11 changes: 8 additions & 3 deletions plugins/bash-format/skills/setup/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,9 +90,14 @@ Run `check`, then for each FAIL point at the resolution — this skill installs
the repo in — but this skill does not write it. `.editorconfig` is cross-cutting (it governs
every editor and tool in the repo), so the choice and the edit belong to the consumer.
- toggle off: direct to `/plugin configure bash-format` (interactive, any
time). Headless: `--config` only applies on a fresh install (ignored once installed), so reconfigure via `claude plugin uninstall bash-format` then
`claude plugin install bash-format@<marketplace> --config bash_format_enabled=true`;
this skill never writes user settings or `pluginConfigs`.
time). Headless: `--config` only applies on a fresh install (ignored once installed), so
reconfigure via `claude plugin uninstall bash-format -s <scope>` then
`claude plugin install bash-format@<marketplace> -s <scope> --config bash_format_enabled=true`;
this skill never writes user settings or `pluginConfigs`. Both commands default to `-s user` —
pass the scope `claude plugin list` reports for this plugin, and run from that project's
directory for a `project`/`local` scope. Defaulting instead uninstalls a separate user-scope
record while the effective install stays in place, so the reinstall lands at a scope that
does not load.

After pointing at a remediation, re-run the relevant `check` probe and report its actual
result — never claim resolved on the reader's report that they installed something.
Expand Down
2 changes: 1 addition & 1 deletion plugins/biome-format/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
"name": "biome-format",
"version": "0.5.1",
"version": "0.5.2",
"description": "Auto-format and lint JS/TS/JSX/JSON on edit via Biome, only when a biome.json governs the repo — using the consuming repo's own Biome config.",
"author": {
"name": "Melodic Software",
Expand Down
12 changes: 12 additions & 0 deletions plugins/biome-format/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,18 @@
All notable changes to the `biome-format` plugin are documented here. Format follows
[Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this plugin uses semantic versioning.

## [0.5.2]

### Fixed

- **Headless reconfigure recipe now preserves install scope (#1406).** The `claude plugin
uninstall` → `claude plugin install ... --config` recipe in `skills/setup/SKILL.md` defaulted
both halves to `-s user`. When this plugin is installed at `project` or `local` scope, that
silently uninstalled a separate user-scope record while the effective project/local install kept
loading, and the reinstall landed at a scope that does not load. Both commands now carry
`-s <scope>`, sourced from what `claude plugin list` reports for this plugin — the same fix
already applied to `session-flow` and `rate-limit-guard` in #1393.

## [0.5.1]

### Changed
Expand Down
11 changes: 8 additions & 3 deletions plugins/biome-format/skills/setup/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,9 +77,14 @@ command's exit code alone. For everything else `apply` only points:
- missing `jq` / Bash: platform install instructions from the README Requirements section;
this skill never installs system packages.
- toggle off: direct to `/plugin configure biome-format` (interactive, any
time). Headless: `--config` only applies on a fresh install (ignored once installed), so reconfigure via `claude plugin uninstall biome-format` then
`claude plugin install biome-format@<marketplace> --config biome_format_enabled=true`;
this skill never writes user settings or `pluginConfigs`.
time). Headless: `--config` only applies on a fresh install (ignored once installed), so
reconfigure via `claude plugin uninstall biome-format -s <scope>` then
`claude plugin install biome-format@<marketplace> -s <scope> --config biome_format_enabled=true`;
this skill never writes user settings or `pluginConfigs`. Both commands default to `-s user` —
pass the scope `claude plugin list` reports for this plugin, and run from that project's
directory for a `project`/`local` scope. Defaulting instead uninstalls a separate user-scope
record while the effective install stays in place, so the reinstall lands at a scope that
does not load.
- no Biome config: offer to create a minimal `biome.json` in the repository root only when
explicitly asked — the plugin imposes no rules of its own.

Expand Down
2 changes: 1 addition & 1 deletion plugins/claude-ops/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
"name": "claude-ops",
"version": "0.21.0",
"version": "0.21.1",
"description": "Claude Code operations toolkit. Seven skills: observability (read locally captured telemetry — OTEL store, collector, hook-event JSONL, ccusage — with trend reports and store pruning), known-issues (search known Claude product GitHub bugs, check service health, maintain a persistent tracked-issue registry), changelog (ingest Claude Code changelog entries and integrate them into the current repo), plugins (bring a machine's plugin fleet current on demand — marketplace refresh, effective-scope updates including in-repo project/local installs, new-plugin install per policy, scope-divergence detection and explicit convergence), morning-brief (read-only gh-based operator morning view — queue-label counts, merge-ready PRs, parked decisions with their RECOMMENDED lines, and loop-lane telemetry freshness), lanes (start/restart/stop/status loop lanes as named background Claude Code sessions seeded from canonical prompt files, with per-lane model/effort and a repo-pull + marketplace-refresh launch step), and a re-runnable setup action that settles where the known-issues registry lives. Plus a family of seven advisory *-audit telemetry-emitter hooks (API errors, config changes, instruction loads, permission denials, pre-compaction, skill usage, tool failures) that emit the shared hook-telemetry envelope, and a reference sink that maps envelopes into the hook-events.jsonl the observability skill reads.",
"author": {
"name": "Melodic Software",
Expand Down
16 changes: 16 additions & 0 deletions plugins/claude-ops/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,22 @@
All notable changes to the `claude-ops` plugin are documented here. Format follows
[Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this plugin uses semantic versioning.

## [0.21.1]

### Fixed

- **Headless reconfigure recipe now preserves install scope (#1406).** The `claude plugin
uninstall` → `claude plugin install ... --config` recipe in `skills/setup/SKILL.md` defaulted
both halves to `-s user`. When this plugin is installed at `project` or `local` scope, that
silently uninstalled a separate user-scope record while the effective project/local install kept
loading, and the reinstall landed at a scope that does not load. Both commands now carry
`-s <scope>`, sourced from what `claude plugin list` reports for this plugin — the same fix
already applied to `session-flow` and `rate-limit-guard` in #1393.
The recipe also now requires the reinstall to re-supply **every** key whose value should
stay non-default, not only the key being changed: uninstalling drops the stored
`pluginConfigs` entry, so an omitted key silently falls back to its manifest default.
Record the current values before uninstalling.

## [0.21.0]

### Added
Expand Down
16 changes: 13 additions & 3 deletions plugins/claude-ops/skills/setup/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,9 +67,19 @@ verify-and-route:
`.claude/observability`). State the tradeoff and let the reader pick — do not prompt.
- **Reconfiguring a personal option:** `/plugin configure claude-ops` (interactive, any time).
Headless: `--config` only applies on a fresh install (ignored once installed), so reconfigure via
`claude plugin uninstall claude-ops` then
`claude plugin install claude-ops@<marketplace> --config registry_dir=<path>`; this skill never
writes user settings or `pluginConfigs`.
`claude plugin uninstall claude-ops -s <scope>` then
`claude plugin install claude-ops@<marketplace> -s <scope> --config registry_dir=<path>`; this
skill never writes user settings or `pluginConfigs`. Both commands default to `-s user` — pass
the scope `claude plugin list` reports for this plugin, and run from that project's directory
for a `project`/`local` scope. Defaulting instead uninstalls a separate user-scope record while
the effective install stays in place, so the reinstall lands at a scope that does not load.
Uninstalling also drops the stored `pluginConfigs` entry, so the reinstall must re-supply
**every** key whose value should stay non-default — this plugin declares fourteen, and a
reinstall that passes only `registry_dir` silently resets the other thirteen (the seven
`*_audit_enabled` toggles, `instructions_loaded_audit_log_session_start`, `install_new`,
`skill_usage_dir`, `skill_usage_git_exclude`, `skill_usage_scope`, `stdin_read_timeout`) to
their manifest defaults. Record the current values before uninstalling; afterwards there is
nothing left to read them from.

After any reconfiguration, rerun `check` and report both observed effective destinations — never claim
an unobserved change. Re-running `apply` when both destinations are contained (or defaulted) changes
Expand Down
2 changes: 1 addition & 1 deletion plugins/desktop-notification/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
"name": "desktop-notification",
"version": "0.5.1",
"version": "0.5.2",
"description": "Alert you when Claude Code needs input — an audible terminal bell, an OSC 9 terminal notification, and an OS-native toast (macOS/Linux) on permission and idle prompts.",
"author": {
"name": "Melodic Software",
Expand Down
16 changes: 16 additions & 0 deletions plugins/desktop-notification/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,22 @@
All notable changes to the `desktop-notification` plugin are documented here. Format follows
[Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this plugin uses semantic versioning.

## [0.5.2]

### Fixed

- **Headless reconfigure recipe now preserves install scope (#1406).** The `claude plugin
uninstall` → `claude plugin install ... --config` recipe in `skills/setup/SKILL.md` defaulted
both halves to `-s user`. When this plugin is installed at `project` or `local` scope, that
silently uninstalled a separate user-scope record while the effective project/local install kept
loading, and the reinstall landed at a scope that does not load. Both commands now carry
`-s <scope>`, sourced from what `claude plugin list` reports for this plugin — the same fix
already applied to `session-flow` and `rate-limit-guard` in #1393.
The recipe also now requires the reinstall to re-supply **every** key whose value should
stay non-default, not only the key being changed: uninstalling drops the stored
`pluginConfigs` entry, so an omitted key silently falls back to its manifest default.
Record the current values before uninstalling.

## [0.5.1]

### Changed
Expand Down
13 changes: 10 additions & 3 deletions plugins/desktop-notification/skills/setup/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,9 +71,16 @@ nothing and writes nothing, so every remediation is a pointer the user acts on:
Guidance only — the user runs it.
- **a toggle is off** — direct to `/plugin configure desktop-notification` (interactive,
any time). Headless: `--config` only applies on a fresh install (ignored once
installed), so reconfigure via `claude plugin uninstall desktop-notification` then
`claude plugin install desktop-notification@<marketplace> --config <key>=true`; these
options are user-scoped, so this skill never writes user settings or `pluginConfigs`.
installed), so reconfigure via `claude plugin uninstall desktop-notification -s <scope>` then
`claude plugin install desktop-notification@<marketplace> -s <scope> --config <key>=true`.
Both commands default to `-s user` — pass the install scope `claude plugin list` reports for
this plugin, and run from that project's directory for a `project`/`local` scope. Defaulting
instead uninstalls a separate user-scope record while the effective install stays in place, so
the reinstall lands at a scope that does not load. Uninstalling also drops the stored
`pluginConfigs` entry, so the reinstall must re-supply **every** one of the four toggles whose
value should stay non-default, not only the one being flipped; record the current values before
uninstalling, because afterwards there is nothing left to read them from. These options are
personal `userConfig` values, so this skill never writes user settings or `pluginConfigs`.

After the user reports acting on any system-tool remediation, re-run the relevant `check`
probe and report its actual result — never claim resolved on the user's say-so alone.
Expand Down
2 changes: 1 addition & 1 deletion plugins/disk-hygiene/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
"name": "disk-hygiene",
"version": "0.9.3",
"version": "0.9.4",
"description": "Context-aware disk hygiene for arbitrary directory trees: inventories orphaned and temporary artifacts, classifies evidence into review tiers, and offers exact-path cleanup only after a fresh safety preview and explicit per-tier approval. The target is read-only by default; OS-managed paths, links and mount points, VCS-tracked content, changed entries, and live-handle uncertainty fail closed.",
"author": {
"name": "Melodic Software",
Expand Down
Loading
Loading