This release includes 1 security fix for security teams reviewing exposed deployments.
Affected surfaces
Summary
AI summaryWrite-guard enforcement hooks for Claude Code ensure every file change is persisted before the next edit.
Full changelog
0.3.12 - 2026-04-07
Added
- Write-guard enforcement hooks for Claude Code. PostToolUse increments a write-debt counter after Edit/Write; PreToolUse blocks further edits until the agent calls
iranti_write. Ensures every file change is persisted to shared memory before the next edit. - Codex CLI per-turn protocol reminder. UserPromptSubmit hook injects the attend/write/checkpoint protocol into every Codex turn via
.codex/hooks.json. Auto-enables thecodex_hooksfeature flag during setup. - Auto-scaffolded hook scripts.
iranti claude-setupnow writes three hook JS files (write-guard, edit-tracker, protocol-reminder) into.claude/and configures PreToolUse/PostToolUse/UserPromptSubmit insettings.local.json. Existing projects auto-upgrade on next setup run.
Fixed
- UV_HANDLE_CLOSING assertion crash on Windows. Replaced async
process.stdout.write()with synchronousfs.writeSync(1, ...)in the Claude Code SessionStart hook, preventing a libuv assertion failure when Node exits before the write completes. - Postgres-backed rate limiter. Added
DatabaseRateLimiterclass selected viaIRANTI_RATE_LIMIT_BACKEND=db, replacing in-memory rate limiting for multi-instance deployments. - Timing-safe API key comparison. Legacy API key validation now uses constant-time comparison to prevent timing side-channels.
- Trust proxy configuration. Express
trust proxysetting added so rate limiting works correctly behind reverse proxies. - Compact provenance field fix. Corrected provenance formatting in
hostMemoryFormatting.ts.
Changed
- Improved npm discoverability. Added MCP-related keywords, homepage, and repository fields to
package.json.
Security Fixes
- Timing‑safe API key comparison using constant‑time validation to prevent timing side‑channels
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 nfemmanuel/iranti
Persistent shared memory for AI coding agents. Stores facts as `entity/key/value` triples with hybrid semantic search, task checkpoints, and conflict resolution — shared across Claude Code, Codex CLI, and GitHub Copilot.
Related context
Related tools
Beta — feedback welcome: [email protected]