Changelog
Histórico de versões do Ringly em formato Keep a Changelog.
Formato baseado em Keep a Changelog — versionamento SemVer. Histórico completo no CHANGELOG.md do repositório.
v0.6.0 — 2026-05-26
Adicionado
- Resumo amigável no
/ringly-update— antes de pedir confirmação, o slash command agora mostra um resumo curto (≤10 linhas) do que mudou na nova versão, lido doCHANGELOG.mdempacotado e reescrito em linguagem comum. Estrutura: Novidades / Mudou / Correções / ⚠ Pode quebrar coisas. - Novo slash command
/ringly-help— mostra a saída deringly helpdireto no chat do Claude Code, com aviso visível de que comandos rodam no terminal externo. - Subcomando
ringly helptraduzido — substitui o output yargs em inglês fixo por uma versão que respeita olanguageconfigurado.
Mudado
/ringly-updateagora respeita o idioma em todas as mensagens. O JSON snapshot doringly update --checkembute o idioma resolvido (nunca “auto”), e o.mddo slash usa esse campo como fonte única de verdade.- Schema do
ringly update --checkampliado pra{current, latest, hasUpdate, reachable, language, notes}. Os 4 antigos seguem idênticos — sem breaking change.
Testes
- +30 testes novos (de 133 pra 163).
changelog.test.ts(18 cenários do parser),help.test.ts(5 cenários renderizados),update.test.ts(6 cenários dobuildNotesFor).
v0.5.2 — 2026-05-26
Mudado
- Bundle do hook ficou mais enxuto.
claudeSettings.tsvirou strictly read-only;claudeSettingsWrite.tscarrega tudo que escreve. Mesma separação aplicada aconfig.tsvsconfigWrite.ts. Resultado: o hook (caminho quente) não puxa maischmodSync/copyFileSync/readdirSync, e os warnings de tree-shake do Rollup somem.
v0.5.1 — 2026-05-26
Corrigido
ringly update --yesquebrava no Windows comspawn EINVALantes de tocar no npm. Causa: Node ≥ 20.12 recusaspawndireto de.bat/.cmdpor design (CVE-2024-27980). Fix: passashell: trueno Windows; macOS/Linux seguem comshell: false.
v0.5.0 — 2026-05-26
Mudança incompatível
- Removido o
userConfigdoplugin.json. A tela/plugin → Installed → Ringly → Configuredeixa de existir por causa de limitações conhecidas do schema oficial (sem enum,Enternão toggla boolean, sem atomic write). Toda config vai praringly config. Valores existentes empluginConfigs.ringly.optionscontinuam sendo lidos — sem migração necessária.
v0.4.0 — 2026-05-26
Adicionado
- Slash command
/ringly-updatedentro do Claude Code: detecta CLI, consulta npm, mostra diff, pede confirmação, instala, lembra do/reload-plugins. - Hook
SessionStartcom checagem de update em background, throttled a 1x/dia. Toast nativo quando há versão nova. - Subcomando
ringly update(também rodável fora do Claude Code) com modos--check(JSON) e--yes(skip prompt). - Opção
check_updates: booleannouserConfig(defaulttrue).
v0.3.0 — 2026-05-25
Mudanças incompatíveis
- Removido o sistema legacy (
legacy.ts, flags--migrate-legacy/--legacy). - Removido fallback do
~/.config/ringly/config.json. Config agora vive apenas em~/.claude/settings.json.
Segurança & robustez
- Atomic write no
settings.json(temp + atomic rename, defesa contra race conditions). - Validação de payload do hook (256 KB stdin, 500-char strings, 1024-char paths, regex no
appId). - Permissão 0600 no
settings.jsonem Unix. - GC automático de backups com mais de 7 dias.
- Rotação de log a 5 MB.
Comportamento
- Detecção de idioma reordenada:
CLAUDE_PLUGIN_OPTION_LANGUAGE→Intl.DateTimeFormat→LANG/LC_*→en-US.
v0.2.4 — 2026-05-26
Corrigido
- Falso positivo de
BLOCKED:no Windows 11 / PowerShell 5.1 (bug conhecido doIInspectablevsIDispatch). Agora usa$notifier.Setting.value__(campo intrínseco do enum .NET) em vez de passar pelo COM adapter quebrado.
v0.2.1 — 2026-05-25
Mudanças importantes
- Internacionalização completa da TUI e dos comandos CLI (
doctor,uninstall,test,init --non-interactive). - Hooks agora leem
~/.claude/settings.jsondiretamente em vez de depender de variáveis de ambiente que o Claude Code não exporta. - Filtro de eventos respeitado em todos os caminhos (antes só o caminho “rico” filtrava).
sound: falseagora silencia o fallback embedded via<audio silent="true"/>no XML.spawn EINVALno Windows corrigido notryCliBinary(shell: trueem.cmd/.bat).
v0.2.0
ringly configagora escreve nosettings.json(empluginConfigs.ringly.options) em vez do antigoconfig.jsonlocal. Backup automático com timestamp.- Novo módulo
claudeSettings.tscom merge seguro. ringly doctorganhou check separado pro plugin settings.
Veja o CHANGELOG.md completo no GitHub pra histórico anterior.
Editar no GitHub Atualizado em: 2026-05-26