Merge pull request 'docs: add CHANGELOG.md (Keep a Changelog) — Unreleased → 1.4.0' (#107) from docs/changelog into main
CI / Tests (py3.12 / windows-latest) (push) Successful in 24s
CI / Tests (py3.12 / ubuntu-latest) (push) Successful in 12s
CI / Tests (py3.13 / ubuntu-latest) (push) Successful in 12s
CI / Catalog signature (push) Successful in 7s
CI / Lint (ruff) (push) Successful in 7s
CI / Tests (py3.10 / ubuntu-latest) (push) Successful in 12s
CI / Tests (py3.12 / windows-latest) (push) Successful in 24s
CI / Tests (py3.12 / ubuntu-latest) (push) Successful in 12s
CI / Tests (py3.13 / ubuntu-latest) (push) Successful in 12s
CI / Catalog signature (push) Successful in 7s
CI / Lint (ruff) (push) Successful in 7s
CI / Tests (py3.10 / ubuntu-latest) (push) Successful in 12s
This commit was merged in pull request #107.
This commit is contained in:
@@ -0,0 +1,89 @@
|
|||||||
|
# Changelog
|
||||||
|
|
||||||
|
All notable changes to **BetterClaudeConfig** are recorded here. The format is
|
||||||
|
based on [Keep a Changelog](https://keepachangelog.com/), and this project
|
||||||
|
follows [Semantic Versioning](https://semver.org/): breaking changes bump the
|
||||||
|
major, new features bump the minor, fixes bump the patch.
|
||||||
|
|
||||||
|
**When you open a PR, add a line under `[Unreleased]`.** At release time, that
|
||||||
|
section is renamed to the new version + date and a fresh `[Unreleased]` is
|
||||||
|
started.
|
||||||
|
|
||||||
|
## [Unreleased] — targeting 1.4.0
|
||||||
|
|
||||||
|
> ⚠️ **Using the `ssh-mcp` server?** Upstream `ssh-mcp` shipped a **breaking
|
||||||
|
> v2**: it removed the `--password`, `--sudoPassword`, `--suPassword` and
|
||||||
|
> `--disableSudo` command-line flags, and it now reads a `config.toml` sidecar
|
||||||
|
> file that overrides your command-line arguments. A config written for v1
|
||||||
|
> crashes on v2's startup. This release adds tools to detect and fix that.
|
||||||
|
> **BetterClaudeConfig itself has no breaking changes** — your existing configs
|
||||||
|
> keep working; nothing is changed without your click.
|
||||||
|
|
||||||
|
### Added
|
||||||
|
- **ssh-mcp v2 flag migration.** Detects the credential flags v2 removed and
|
||||||
|
one-click-moves each into the environment variable ssh-mcp now reads
|
||||||
|
(`--password` → `SSH_MCP_PASSWORD`; `--sudoPassword` / `--suPassword` →
|
||||||
|
`SSH_MCP_SUDO_PASSWORD`). Also flags `--maxChars=none`, whose meaning changed
|
||||||
|
between versions.
|
||||||
|
- **Sidecar-config awareness.** When a server reads a separate config file
|
||||||
|
(ssh-mcp's `config.toml`), BCC shows where that file actually lives on your
|
||||||
|
platform and warns when your command-line args are **inert** because the file
|
||||||
|
takes precedence — including when a file sits at the wrong, documented-but-
|
||||||
|
unused path.
|
||||||
|
- **In-app sidecar editor.** Edit that external config from inside BCC —
|
||||||
|
pick-lists for known fields, a raw-text fallback — written atomically with a
|
||||||
|
timestamped backup and locked to `0600`. No dropping to a terminal.
|
||||||
|
- **Live hot-reload.** External changes to a sidecar (or to your Claude config)
|
||||||
|
now surface without restarting BCC.
|
||||||
|
- **Version pinning for `npx` servers.** Spots servers launched with `-y` /
|
||||||
|
`@latest` that resolve a fresh version every run, shows the version currently
|
||||||
|
resolved, and offers a one-click **Pin to this version** — with a drift note
|
||||||
|
when a pin has fallen behind.
|
||||||
|
- **Permission pre-flight.** Warns when a credential-bearing config is readable
|
||||||
|
by other users on the machine and offers a one-click fix to `0600`/`0700`.
|
||||||
|
- **Light theme + system-following** (the dark theme is preserved exactly).
|
||||||
|
- **"Move to environment variable."** Convert a plaintext secret in a config
|
||||||
|
into a `${VAR}` reference in place — offered only on clients that actually
|
||||||
|
expand references, so it can't silently break a Claude Desktop config.
|
||||||
|
- **Cross-client foundation.** Claude Desktop and Claude Code now flow through a
|
||||||
|
single adapter — groundwork for supporting more clients.
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- The update checker is now **visible** — a persistent banner plus a Help-menu
|
||||||
|
item — instead of being buried in the About dialog.
|
||||||
|
- Config writes share one atomic-write path; the temp file is created `0600`, so
|
||||||
|
a secret is never briefly world-readable mid-write.
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Loading a config with a non-object server value no longer crashes, and named
|
||||||
|
server sets survive an external-change merge.
|
||||||
|
- Project profiles that share a directory basename are disambiguated, so you
|
||||||
|
can't accidentally edit the wrong `.mcp.json`.
|
||||||
|
|
||||||
|
### Internal / maintainer
|
||||||
|
- Signed-catalog core and a maintainer-only **Catalog Console** (review + sign),
|
||||||
|
with hardening of the review gate and a split of the signing keys. No
|
||||||
|
user-facing catalog browser ships yet.
|
||||||
|
|
||||||
|
## [1.3.0] — 2026-07-12
|
||||||
|
Named server sets, Claude Code project `.mcp.json` discovery, structural schema
|
||||||
|
lint, and UX polish (Ctrl+S to save, enable-all / disable-all).
|
||||||
|
|
||||||
|
## [1.2.1] — 2026-07-12
|
||||||
|
First shipped binaries: app-icon fix, a batch of audit fixes, and Windows
|
||||||
|
process-tree cleanup on spawn-tests.
|
||||||
|
|
||||||
|
## [1.2.0] — 2026-07-08
|
||||||
|
Server log viewer, duplicate-name conflict handling, a Restart-Claude button,
|
||||||
|
stale-file protection, an About dialog, and a notify-only update checker.
|
||||||
|
|
||||||
|
## [1.1.0] — 2026-07-04
|
||||||
|
Backup / restore UI and secret masking.
|
||||||
|
|
||||||
|
## [1.0.1] — 2026-06-29
|
||||||
|
## [1.0.0] — 2026-06-29
|
||||||
|
Initial releases: the core `mcpServers` editor with the lenient paste/repair
|
||||||
|
pipeline that tolerates malformed JSON.
|
||||||
|
|
||||||
|
<!-- Backfill for 1.0.0–1.3.0 is summarised from release notes; the Unreleased
|
||||||
|
section onward is maintained per-PR. -->
|
||||||
Reference in New Issue
Block a user