Skip to content

Releases: aannoo/hcom

v0.7.13

24 Apr 04:28

Choose a tag to compare

hcom v0.7.13

  • Headless fixes (#26 by @mmkzer0, #27, #28) — --headless now runs Claude print mode, --headless --pty starts a live background session, and macOS PTY launches no longer die on spawn.
  • Subagents can be messaged immediatelyhcom send @<subagent> works as soon as it spawns. Direct messages wake dormant subagents; broadcasts do not.
  • Subagent recovery is safer — live subagents no longer get cleaned up by mistake, and recovery no longer steals the parent session.
  • start --as is stricter (#25 by @bloodcarter) — reclaim is refused if the last session used a different tool or working directory.
  • OpenCode resumes cleanly (#23, #24 by @mmkzer0) — fixes duplicate injections, cross-session leaks, and lost agent/model context.
  • hcom status accuracy — removed hooks no longer show as installed.

Full Changelog: v0.7.12...v0.7.13

Install hcom 0.7.13

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/aannoo/hcom/releases/download/v0.7.13/hcom-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install aannoo/hcom/hcom

Download hcom 0.7.13

File Platform Checksum
hcom-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
hcom-x86_64-apple-darwin.tar.gz Intel macOS checksum
hcom-aarch64-linux-android.tar.gz Android checksum
hcom-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
hcom-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
hcom-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
hcom-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum

v0.7.12

18 Apr 10:28

Choose a tag to compare

hcom v0.7.12

  • Resume/fork by session UUID or thread name (#22 by @bloodcarter) — hcom r <uuid> and hcom f <uuid> adopt Claude, Codex, Gemini, or OpenCode sessions into hcom. Recovers cwd from the transcript and reclaims the prior hcom identity via life.stopped events. Claude /rename titles and Codex thread_name resolve the same way, with an ambiguity error when names collide. hcom r <uuid>:DEVICE walks the full chain on the target.

  • Cross-device events sub--device <id> installs the subscription on the target's kv so its local delivery loop notifies the remote agent. --on-hit, --as, and -b forward over the RPC.

  • events sub --on-hit "<text>" — sub fires its normal [hcom-events] notification and also sends the on-hit text as a real message. Caller identity is frozen at creation.

  • hcom events --remote-fetch --device <id> — one-shot query against a peer's events_v. No local DB writes; response capped at 96 KiB.

  • hcom term --clean — raw screen output, no header or line numbers.

  • RelayHealth enum — centralizes NotConfigured/Disabled/Waiting/Starting/Connected/Stale/Error across CLI, TUI, and JSON. Worker heartbeat (~1s KV tick) is the liveness signal; relay off clears runtime-health KV so stale "ok" can't leak.

  • Various fixes and polish.


Full Changelog: v0.7.11...v0.7.12

Install hcom 0.7.12

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/aannoo/hcom/releases/download/v0.7.12/hcom-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install aannoo/hcom/hcom

Download hcom 0.7.12

File Platform Checksum
hcom-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
hcom-x86_64-apple-darwin.tar.gz Intel macOS checksum
hcom-aarch64-linux-android.tar.gz Android checksum
hcom-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
hcom-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
hcom-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
hcom-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum

v0.7.11

14 Apr 18:54

Choose a tag to compare

hcom v0.7.11

  • Remote device control — launch, kill, resume, fork, term, transcript, and config work across devices via name:DEVICE addressing. hcom <tool> --device <name> --dir <path> runs agents on remote machines.

  • Relay security — XChaCha20-Poly1305 encryption, replay protection, PSK fingerprint in hcom relay status, dedicated hcom relay token command, device join/leave/reconnect events, online vs. seen device buckets. Breaking: old tokens are rejected; run hcom relay new and reshare the token.

  • Native Codex hooks — five stdin handlers replace the codex-notify binary. Codex launches receive the same automatic message delivery as Claude and Gemini.

  • Hook install respects CLAUDE_CONFIG_DIR, GEMINI_CLI_HOME, and CODEX_HOME (#19); cleanup fixes for stale Claude permissions, Codex matchers, and OpenCode path resolution.

  • hcom bundle prepare falls back to stopped snapshots when the agent's instance row is gone (#20 by @bloodcarter).

  • Various fixes and polish.


Full Changelog: v0.7.10...v0.7.11

Install hcom 0.7.11

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/aannoo/hcom/releases/download/v0.7.11/hcom-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install aannoo/hcom/hcom

Download hcom 0.7.11

File Platform Checksum
hcom-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
hcom-x86_64-apple-darwin.tar.gz Intel macOS checksum
hcom-aarch64-linux-android.tar.gz Android checksum
hcom-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
hcom-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
hcom-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
hcom-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum

v0.7.10

08 Apr 03:12

Choose a tag to compare

Full Changelog: v0.7.9...v0.7.10

Install hcom 0.7.10

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/aannoo/hcom/releases/download/v0.7.10/hcom-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install aannoo/hcom/hcom

Download hcom 0.7.10

File Platform Checksum
hcom-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
hcom-x86_64-apple-darwin.tar.gz Intel macOS checksum
hcom-aarch64-linux-android.tar.gz Android checksum
hcom-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
hcom-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
hcom-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
hcom-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum

v0.7.9

05 Apr 08:31

Choose a tag to compare

Full Changelog: v0.7.8...v0.7.9

Install hcom 0.7.9

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/aannoo/hcom/releases/download/v0.7.9/hcom-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install aannoo/hcom/hcom

Download hcom 0.7.9

File Platform Checksum
hcom-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
hcom-x86_64-apple-darwin.tar.gz Intel macOS checksum
hcom-aarch64-linux-android.tar.gz Android checksum
hcom-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
hcom-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
hcom-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
hcom-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum

v0.7.8

02 Apr 10:49

Choose a tag to compare

Hook delivery fixes, transcript improvements, and a new cargo-dist release pipeline with Homebrew support.

  • Intent tips restored in hook delivery[tip] intent=X: hints are back in the agent-facing hook context, emitted once per delivery batch so agents know whether a reply is expected.

  • Transcript parsing fixed — Gemini tool-only turns no longer collapse into silence; OpenCode synthetic assistant text is filtered; mixed Codex response_item/event_msg transcripts no longer duplicate turns.

  • OpenCode plugin content-check — Stale plugins are now detected by comparing file content against the embedded source, not just checking existence. XDG config paths and OPENCODE_CONFIG_DIR scanning restored for non-standard installs.

  • Gemini verify accepts uvx wrappers — Hook verification now checks that the command contains the expected hcom-owned suffix rather than requiring an exact match, fixing false negatives when Gemini runs via uvx.

  • Name-generation lock scoped to DB — Fixes flaky parallel test failures by deriving the instance name lock path from the actual database file rather than the global HCOM_DIR.

  • cargo-dist release pipeline — Replaces the hand-written release workflow with cargo-dist. Adds a Homebrew tap (aannoo/homebrew-hcom), shell installer, per-platform checksums, and musl Linux targets.

  • Community: agent-messaging skill (#17 by @yigitkonur) — Enhanced hcom-agent-messaging skill with tested command reference, per-tool delivery timing, scripting patterns, and intent system docs. Adds a new hcom-workflow-scripts skill.


Install hcom 0.7.8

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/aannoo/hcom/releases/download/v0.7.8/hcom-installer.sh | sh

Install prebuilt binaries via Homebrew

brew install aannoo/hcom/hcom

Install via PyPI

pip install hcom
# or
uv tool install hcom

Download hcom 0.7.8

File Platform Checksum
hcom-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
hcom-x86_64-apple-darwin.tar.xz Intel macOS checksum
hcom-aarch64-linux-android.tar.xz Android checksum
hcom-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
hcom-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
hcom-aarch64-unknown-linux-musl.tar.xz ARM64 MUSL Linux checksum
hcom-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum

v0.7.7

25 Mar 19:05

Choose a tag to compare

hcom 0.7.7

Patch release with safer binary replacement during builds, relay TLS fixes for Android/Termux, and schema-safe DB opening that repairs stamped-but-not-fully-migrated databases instead of failing or archiving user data unnecessarily.

  • Atomic binary replacement in build.sh — Replaces in-place overwrite with temp-file-plus-rename so running hcom pty processes keep their existing inode and do not crash or segfault during rebuild/install.

  • Relay TLS fix for Android/Termux — Relay MQTT TLS now uses bundled webpki-roots with native certificate fallback, fixing empty native trust stores on Android/Termux while preserving support for private brokers with local certs.

  • Schema-safe DB open and repairHcomDb::open() paths now run schema checks by default. Stamped v17 databases missing migration columns are repaired in place, and malformed launch_context JSON no longer forces unnecessary archive/reset behavior during upgrade.

Full Changelog: v0.7.6...v0.7.7

v0.7.6

20 Mar 13:57

Choose a tag to compare

Patch release with hcom update command, terminal preset canonicalization, and bug fixes for bare hcom start, update version checks, and custom terminal preset close commands.

  • hcom update command — Check for and apply updates. Detects install method (pip/uv/curl/dev) and runs the appropriate update. --check prints status; --go applies without prompting. hcom status --json now includes version info. Version checks use git ls-remote (no rate limits) with curl API fallback.

  • Terminal preset canonicalization (#13) — Requested and effective terminal presets are now stored as canonical DB fields on instances. Adds v17 DB migration. Custom terminal preset close commands are now properly invoked on kill.

  • hcom start fix — Bare hcom start (no --name) was incorrectly blocked by its own name reservation placeholder.


Full Changelog: v0.7.5...v0.7.6

v0.7.5

15 Mar 06:55

Choose a tag to compare

Patch release with event filter validation, terminal preset naming consistency, Termux codex launch fix, TUI headless launch fix, and relay worker lifecycle cleanup.

  • Event filter validationevents flag values are now validated by clap: --type, --status accept only known values; --before/--after require YYYY-MM-DD format. Invalid inputs fail fast with a clear error instead of silently producing no results.

  • Lowercase terminal preset names — All built-in terminal preset identifiers are now lowercase (terminal.app, iterm, ghostty, windows-terminal). Detection and comparison are case-insensitive. Eliminates case-mismatch bugs when preset names flow through config, detection, and launch logic.

  • Termux codex launch fix — The broken codex-cli-termux outer wrapper is bypassed by invoking the inner wrapper directly via sh, fixing tool launch in stripped RUN_COMMAND environments where the JS wrapper fails to spawn its nested shell.

  • TUI single-agent launch always headless (#11) — hcom 1 <tool> launched from the TUI now always passes --no-run-here, ensuring the agent opens in a new terminal window/tab instead of running inside the TUI's own piped subprocess.

  • Relay worker lifecycleensure_worker() centralizes relay worker start/stop/restart across all callers (daemon, send, hooks, reset, TUI). Eliminates scattered inline worker management and fixes edge cases where the worker could be left in a bad state.

  • Multi-hyphen tag resolution (#10 by @bloodcarter) — resolve_display_name now correctly resolves compound tags like vc-p0-p1-parallel-vani; previously split_once('-') only tried the first hyphen and failed.


What's Changed

  • fix: resolve_display_name handles multi-hyphen tags by @bloodcarter in #10

Full Changelog: v0.7.4...v0.7.5

v0.7.4

11 Mar 05:40

Choose a tag to compare

hcom 0.7.4

Patch release focused on event subscription reliability, terminal launch error reporting, and config initialization.

  • Event subscription hardening — SQL expressions in events sub --sql are now validated before the subscription is created, returning a clear error on invalid SQL rather than silently misbehaving. Subscription IDs are now deterministic (SHA256 of caller + filters + once-mode), so re-registering the same subscription is idempotent instead of creating duplicates.

  • macOS terminal file-open semantics — Fixed open -a <App> rewriting: app path substitution is now skipped for commands that don't pass --args, preserving the open -a Terminal {script} form that macOS requires for file-open launches. Commands that do use --args still get the absolute bundle path substituted as before.

  • AI tool terminal launch hints — When a terminal launch fails from inside a managed AI tool session, the error now includes an actionable hint. tmux failures get specific remediation steps.

  • Lazy config initializationConfig::get() now initializes from the environment on first access instead of requiring an explicit Config::init() call beforehand, eliminating a class of panics in contexts where init was missed.

  • Launch failure reporting — Improved launch status tracking across PTY, DB, and instance lifecycle to surface failures more clearly.

  • Test fixes — PTY delivery test logs now write to target/test-logs/ within the project, output goes to stdout for visibility with --nocapture, and the macOS-only command extension test is gated with #[cfg(target_os = "macos")].