This release includes 1 security fix for security teams reviewing exposed deployments.
Topics
+2 more
Affected surfaces
ReleasePort's take
Moderate signalv0.13.0 mandates `--yes` to bypass confirmation prompts on destructive CLI operations, breaking existing scripts.
Why it matters: Scripts that automate destructive CLI commands (delete, forget --all, teleport unpack, wizard, env:generate -o) will fail unless updated to include the `--yes` flag; adopt this change before running such automation.
Summary
AI summaryConfirmation prompts now required on destructive CLI operations; add --yes to bypass.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Security | Critical |
Fixes GHSA-h67p-54hq-rp68 js-yaml DoS vulnerability by overriding to >=4.2.0 (resolved as 4.3.0). Fixes GHSA-h67p-54hq-rp68 js-yaml DoS vulnerability by overriding to >=4.2.0 (resolved as 4.3.0). Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Breaking | High |
Breaks scripts relying on unconfirmed destructive CLI operations; now requires `--yes` to bypass confirmation prompts. Breaks scripts relying on unconfirmed destructive CLI operations; now requires `--yes` to bypass confirmation prompts. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Medium |
Adds `qring has <key>` script‑friendly existence check (exit 0/1, supports `--quiet` and `--json`). Adds `qring has <key>` script‑friendly existence check (exit 0/1, supports `--quiet` and `--json`). Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Medium |
Adds Claude Code plugin as installable via marketplace (`/plugin marketplace add I4cTime/quantum_ring`). Adds Claude Code plugin as installable via marketplace (`/plugin marketplace add I4cTime/quantum_ring`). Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Medium |
Adds `--json` support to ~20 additional CLI commands, making them scriptable. Adds `--json` support to ~20 additional CLI commands, making them scriptable. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Medium |
Adds `qring doctor` one‑shot diagnostic tool (checks keyring backend, audit‑dir integrity, config validity, policy, MCP binary). Adds `qring doctor` one‑shot diagnostic tool (checks keyring backend, audit‑dir integrity, config validity, policy, MCP binary). Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Medium |
Adds shell‑completion scripts for bash, zsh, and fish generated from the live command tree. Adds shell‑completion scripts for bash, zsh, and fish generated from the live command tree. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Medium |
Adds dashboard entanglement graph (SVG node/edge view of secrets) and audit‑chain badge showing hash‑chain integrity. Adds dashboard entanglement graph (SVG node/edge view of secrets) and audit‑chain badge showing hash‑chain integrity. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Medium |
Adds tag‑driven release automation (`pnpm run release:prepare`) that bumps version, syncs manifests, updates CHANGELOG, and runs parity guard before publishing. Adds tag‑driven release automation (`pnpm run release:prepare`) that bumps version, syncs manifests, updates CHANGELOG, and runs parity guard before publishing. Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Feature | Low |
Adds CI smoke tests that verify the built `qring` binary and MCP handshake after each build. Adds CI smoke tests that verify the built `qring` binary and MCP handshake after each build. Source: granite4.1:30b@2026-07-15-audit Confidence: low |
— |
| Performance | Low |
Moves `pnpm audit` off the blocking CI path into a non‑blocking job. Moves `pnpm audit` off the blocking CI path into a non‑blocking job. Source: granite4.1:30b@2026-07-15-audit Confidence: low |
— |
| Bugfix | Medium |
Fixes `qring set <key>` hanging when piping a value (reads stdin to EOF for non‑TTY). Fixes `qring set <key>` hanging when piping a value (reads stdin to EOF for non‑TTY). Source: llm_adapter@2026-07-15 Confidence: high |
— |
| Refactor | Medium |
Centralizes CLI error handling to print one‑line messages; full stack trace available via QRING_DEBUG=1. Centralizes CLI error handling to print one‑line messages; full stack trace available via QRING_DEBUG=1. Source: granite4.1:30b@2026-07-15-audit Confidence: low |
— |
Full changelog
Dependencies
- Fixed GHSA-h67p-54hq-rp68 (js-yaml quadratic-complexity DoS, dev-scope via eslint) with a
js-yaml >=4.2.0override — resolves to 4.3.0. - Majors:
commander14→15 (CLI verified end-to-end),eslint9→10 (three findings from newly-default rules fixed in code),@types/node25→26; GitHub Actionscheckoutv7,setup-nodev6,pnpm/action-setupv6,codeql-actionv4. - Minors: in-range
pnpm updateacross prod + dev deps;vitepin 8.0.16→8.1.4.
Added
qring has <key>— script-friendly existence check (exit 0 if present, 1 if not;--quietfor exit-code-only, honors--json). Decay-aware like the MCPhas_secrettool, closing the last MCP→CLI parity gap.- Claude Code plugin is now a real installable plugin — added
claude-code-plugin/.claude-plugin/plugin.jsonand a repo-root.claude-plugin/marketplace.json, so it installs via/plugin marketplace add I4cTime/quantum_ring+/plugin install qring@q-ringinstead of file copying. Plugin components (agents/commands/skills/hooks) moved fromclaude-code-plugin/.claude/to the plugin root to match the Claude Code plugin format; hooks are wired viahooks/hooks.json(${CLAUDE_PLUGIN_ROOT}) for plugin installs and.claude/settings.jsonfor project-scoped sync installs.sync-versionsnow stamps both new manifests. CONTRIBUTING.md— dev environment, branch/commit conventions, and the list of files to keep in sync (parity doc, plugin manifests, dashboard client bundle).- Docker install instructions in the README for the MCP-server container path.
- CI smoke tests — the built
qringbinary (--version,--help) and an MCPinitializehandshake againstdist/mcp.jsnow run in CI after the build. --jsonis now honored by ~20 more commands —list,inspect,delete,import,audit,audit:verify,health,analyze,recall,check,env,validate(single/--all/--list-providers),rotate,tunnel list,hook list,approvals,scan,lintall emit{ ok: true, data: … }, making the whole read surface scriptable. Previously only 4 commands supported the advertised global flag.- Confirmation prompts on destructive operations —
delete,forget --all,teleport unpack(overwriting existing keys),wizard(regenerating existing keys), andenv:generate -o(existing file) now ask before proceeding. Pass-y/--yesto skip; non-interactive use without--yeserrors instead of silently proceeding. Breaking for scripts that relied on unconfirmedqring delete/forget --all— add--yes. - Plugin skills are now generated from a single source —
cursor-plugin/skills/*/SKILL.mdis canonical;scripts/plugin-generate-skills.mjsderives the Claude Code skills and Kiro steering files (pnpm run plugin:gen-skills). Reconciles the cosmetic drift that hand-copying had accumulated. - CI parity guard (
pnpm run check:parity+ aparityCI job) — fails when the three plugins' command/agent/skill sets diverge, doc'd MCP tool counts don't match the registered count (44), manifest versions drift frompackage.json, generated skills are stale, or the committed dashboard client bundle differs from a fresh build. - Cross-platform CI matrix (experimental, non-blocking) — macOS + Windows on Node 22, ubuntu on Node 24, and a Node 18 engines-floor leg (build + CLI smoke; vitest 4 needs Node 20+). Exercises the per-OS keyring backends for the first time.
qring doctor— one-shot install diagnosis: keyring-backend round-trip probe (the headless-Linux failure mode), audit-dir writability + hash-chain integrity,.q-ring.jsonvalidity, active policy, andqring-mcponPATH. Supports--json; exits 1 on any failed check.qring completion bash|zsh|fish— shell completion scripts generated from the live command tree, so they can never drift from the actual commands/flags.- Dashboard: entanglement graph — entangled secrets now render as an SVG node/edge graph (circular layout, up to 14 keys; falls back to the pair list beyond that), as the docs always advertised.
- Dashboard: audit-chain badge — the Audit Log card shows hash-chain integrity live (same check as
qring audit:verify), green when intact, red with the break position when tampered. - Tag-driven release automation —
pnpm run release:prepare <patch|minor|major|x.y.z>bumps the version, syncs all manifests, rolls the CHANGELOG, and runs the parity guard; pushing thev*tag then runsrelease.yml, which creates the GitHub Release (notes from the CHANGELOG) and chains the npm/MCP publish and Homebrew update viaworkflow_call. Seedocs/releasing.md. - Docs —
docs/troubleshooting.md(keyring backends, MCP connection, approval gate, policy-root pinning, scripting gotchas, AGPL FAQ), per-editor quickstarts (docs/quickstart-{claude-code,cursor,kiro}.md),docs/releasing.md, and a docs index in the README.
Changed
- CLI errors are now one-line messages instead of stack traces — a central handler catches errors thrown by any command (policy denials, keyring backend failures) and prints them in red; set
QRING_DEBUG=1for the full stack. pnpm auditmoved off the blocking CI path — it runs as a separate non-blocking job, so a freshly disclosed advisory in a transitive dependency no longer fails unrelated PRs.- npm publish now triggers on
release: published(wascreated), so draft releases can no longer publish;mcp-publisheris pinned to v1.7.9 instead oflatest; publish and Homebrew workflows gained concurrency guards.
Fixed
qring set <key>no longer hangs when the value is piped —promptSecretreads stdin to EOF when it isn't a TTY (e.g.echo "$VALUE" | qring set KEY).- Homebrew formula test asserted the string
"qring"inqring --versionoutput, which prints only the bare version —brew testwould have failed on every release. It now asserts the version string. - Status dashboard actually sends security headers —
Content-Security-Policy(default-deny, inline-only),X-Frame-Options: DENY,X-Content-Type-Options: nosniff,Referrer-Policy: no-referrer(keeps the?token=URL out of Referer headers), andCache-Control: no-storeon every response. Previously the page was CSP-compatible but no policy was enforced. Added tests for token auth (403) and the new headers.
Breaking Changes
- Destructive operations (`delete`, `forget --all`, `teleport unpack`, `wizard` regen, `env:generate -o`) now require confirmation; scripts must pass `--yes` to skip.
Security Fixes
- dep: GHSA-h67p-54hq-rp68 — fixed js-yaml quadratic‑complexity DoS by overriding to >=4.2.0 (resolved as 4.3.0)
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About I4cTime/quantum_ring
Quantum-inspired keyring for AI coding agents. Secure secrets with superposition, entanglement, tunneling, and teleportation.
Related context
Beta — feedback welcome: [email protected]