Changelog
Ringly release notes in Keep a Changelog format.
Format based on Keep a Changelog — SemVer versioning. Full history in the CHANGELOG.md of the repository.
v0.6.0 — 2026-05-26
Added
- Friendly summary inside
/ringly-update— before asking for confirmation, the slash command now shows a short summary (≤10 lines) of what changed in the new version, read from the packagedCHANGELOG.mdand rewritten in plain language. Structure: What’s new / Changes / Fixes / ⚠ Breaking changes. - New
/ringly-helpslash command — shows theringly helpoutput straight inside the Claude Code chat, with a visible warning that commands run in the external terminal. - Translated
ringly helpsubcommand — replaces yargs’ hardcoded-English output with a version that honors the configuredlanguage.
Changed
/ringly-updatenow respects the language across every message it writes itself. Theringly update --checkJSON snapshot embeds the resolved language (never “auto”), and the slash command’s.mduses that field as the single source of truth.ringly update --checkschema extended to{current, latest, hasUpdate, reachable, language, notes}. The 4 old fields are identical — no breaking change.
Tests
- +30 new tests (from 133 to 163).
changelog.test.ts(18 parser scenarios),help.test.ts(5 rendered-help scenarios),update.test.ts(6buildNotesForscenarios).
v0.5.2 — 2026-05-26
Changed
- Leaner hook bundle.
claudeSettings.tsis now strictly read-only;claudeSettingsWrite.tscarries everything that writes. Same separation applied toconfig.tsvsconfigWrite.ts. Result: the hook (hot path) no longer pulls inchmodSync/copyFileSync/readdirSync, and Rollup tree-shake warnings are gone.
v0.5.1 — 2026-05-26
Fixed
ringly update --yeswas failing on Windows withspawn EINVALbefore npm even started. Root cause: Node ≥ 20.12 refuses to spawn.bat/.cmddirectly by design (CVE-2024-27980). Fix: passesshell: trueon Windows; macOS/Linux still useshell: false.
v0.5.0 — 2026-05-26
Breaking change
- Removed
userConfigfromplugin.json. The/plugin → Installed → Ringly → Configurescreen no longer exists due to known limitations of the official schema (no enum support,Enterdoesn’t toggle booleans, no atomic write). All config moves toringly config. Existing values underpluginConfigs.ringly.optionskeep being read — no migration needed.
v0.4.0 — 2026-05-26
Added
/ringly-updateslash command inside Claude Code: detects the CLI, queries npm, shows the diff, asks for confirmation, installs, reminds about/reload-plugins.SessionStarthook with background update check, throttled to 1x/day. Native toast when a new version is available.ringly updatesubcommand (also usable outside Claude Code) with--check(JSON) and--yes(skip prompt) modes.check_updates: booleanoption inuserConfig(defaulttrue).
v0.3.0 — 2026-05-25
Breaking changes
- Removed the legacy system (
legacy.ts,--migrate-legacy/--legacyflags). - Removed the
~/.config/ringly/config.jsonfallback. Config now lives only in~/.claude/settings.json.
Security & robustness
- Atomic write on
settings.json(temp + atomic rename, defense against race conditions). - Hook payload validation (256 KB stdin, 500-char strings, 1024-char paths, regex on
appId). settings.jsonset to mode 0600 on Unix.- Automatic GC of backups older than 7 days.
- Log rotation at 5 MB.
Behavior
- Locale detection reordered:
CLAUDE_PLUGIN_OPTION_LANGUAGE→Intl.DateTimeFormat→LANG/LC_*→en-US.
v0.2.4 — 2026-05-26
Fixed
- False-positive
BLOCKED:on Windows 11 / PowerShell 5.1 (knownIInspectablevsIDispatchbug). Now uses$notifier.Setting.value__(intrinsic .NET enum field) instead of going through the broken COM adapter.
v0.2.1 — 2026-05-25
Important changes
- Full internationalization of the TUI and CLI commands (
doctor,uninstall,test,init --non-interactive). - Hooks now read
~/.claude/settings.jsondirectly instead of depending on environment variables Claude Code doesn’t export. - Event filter respected on every path (previously only the “rich” path filtered).
sound: falsenow silences the embedded fallback via<audio silent="true"/>in the XML.spawn EINVALon Windows fixed intryCliBinary(shell: trueon.cmd/.bat).
v0.2.0
ringly confignow writes tosettings.json(underpluginConfigs.ringly.options) instead of the old localconfig.json. Automatic timestamped backup.- New
claudeSettings.tsmodule with safe merge. ringly doctorgained a separate check for plugin settings.
See the full CHANGELOG.md on GitHub for earlier history.
Edit on GitHub Last updated: 2026-05-26