Skip to content

v0.6.2

Choose a tag to compare

@SeamusWaldron SeamusWaldron released this 29 May 11:41

Hydrate v0.6.2

Quality-of-life release focused on first-time install and the cross-runtime hook layer. No breaking changes; existing installs upgrade cleanly via brew upgrade hydrate.

First-time install — quick-path wizard

hydrate setup (the post-install entry point) used to dump every step's chatter to the terminal and assume the user knew what tier they were on, which runtimes they wanted, and whether they wanted a local embedder. The flow now:

  • Detects runtimes automatically — Claude Code / Codex / Vibe presence is probed up-front; you're shown a checklist of what's about to be wired, not a wall of install-hooks output.
  • Offers the local embedder in the quick path — if you're on Free tier (or unauthenticated), the wizard now asks whether to fetch the bundled Nomic embedder so retrieval works without siteengine.
  • Surfaces resolved tier + upgrade hint — the wizard ends by showing which tier the install resolved to and (for Free) a one-line hydrate auth login upgrade pointer.
  • Suppresses install-hooks chatter — what was previously ~40 lines of per-shim install output is now a single "wired N hooks" summary line; the verbose path is still available via hydrate install-hooks --verbose.
  • Silent-corruption fix — a failure mode where partial ~/.hydrate/ state (from a killed previous install) caused subsequent setup runs to no-op without surfacing the issue. The setup wrapper now detects and repairs the partial-state case.

Cross-runtime hook fixes

  • claude-precompact schema fix. Claude Code's hook schema only accepts hookSpecificOutput for PreToolUse / UserPromptSubmit / PostToolUse / PostToolBatch — not PreCompact. The shim was emitting {"hookSpecificOutput":{"hookEventName":"PreCompact",…}} on every /compact, which the validator rejected and surfaced as a schema error to the user. Recovery was unaffected (the snapshot file is read back by SessionStart), but the error noise is now gone. claude-precompact exits 0 with empty stdout; the read path is unchanged.

  • vibe-session-end shim (new). Mistral Vibe fork v2.12.1-hydrate.0 adds a session_end event that fires on clean exit / signal / parent-close. The new shim consumes it: flushes a final session import (idempotent — server upserts on (user_id, session_id)) and writes a terminal marker at ~/.hydrate/sessions/<session_id>.ended.json so the next session's SessionStart knows the previous one is fully terminated. Fail-open on every error path. Wired into hydrate vibe install automatically.

Upgrade

  • macOS / Linux (Homebrew): brew update && brew upgrade hydrate. Then run hydrate setup to pick up the new quick-path wizard (existing installs are not re-prompted).
  • macOS / Linux (install script): curl -fsSL gethydrate.dev/install | sh.
  • Windows: download Hydrate.msi from the v0.6.2 release.

If you're a forked-Vibe user, the new session_end hook only fires against the v2.12.1-hydrate.0 tag — uv tool install --force git+https://github.com/getHydrate/mistral-vibe@v2.12.1-hydrate.0.

Everything else

v0.6.0 (autonomous wiki, per-package LLM prose, handover flow) and v0.6.1 (darwin/amd64 embedder restoration) are unchanged.