Releases: aannoo/hcom
v0.7.13
hcom v0.7.13
- Headless fixes (#26 by @mmkzer0, #27, #28) —
--headlessnow runs Claude print mode,--headless --ptystarts a live background session, and macOS PTY launches no longer die on spawn. - Subagents can be messaged immediately —
hcom 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 --asis 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 statusaccuracy — 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 | shInstall prebuilt binaries via Homebrew
brew install aannoo/hcom/hcomDownload 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
hcom v0.7.12
-
Resume/fork by session UUID or thread name (#22 by @bloodcarter) —
hcom r <uuid>andhcom f <uuid>adopt Claude, Codex, Gemini, or OpenCode sessions into hcom. Recoverscwdfrom the transcript and reclaims the prior hcom identity vialife.stoppedevents. Claude/renametitles and Codexthread_nameresolve the same way, with an ambiguity error when names collide.hcom r <uuid>:DEVICEwalks 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-bforward 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'sevents_v. No local DB writes; response capped at 96 KiB. -
hcom term --clean— raw screen output, no header or line numbers. -
RelayHealthenum — centralizesNotConfigured/Disabled/Waiting/Starting/Connected/Stale/Erroracross CLI, TUI, and JSON. Worker heartbeat (~1s KV tick) is the liveness signal;relay offclears 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 | shInstall prebuilt binaries via Homebrew
brew install aannoo/hcom/hcomDownload 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
hcom v0.7.11
-
Remote device control — launch, kill, resume, fork, term, transcript, and config work across devices via
name:DEVICEaddressing.hcom <tool> --device <name> --dir <path>runs agents on remote machines. -
Relay security — XChaCha20-Poly1305 encryption, replay protection, PSK fingerprint in
hcom relay status, dedicatedhcom relay tokencommand, device join/leave/reconnect events, online vs. seen device buckets. Breaking: old tokens are rejected; runhcom relay newand reshare the token. -
Native Codex hooks — five stdin handlers replace the
codex-notifybinary. Codex launches receive the same automatic message delivery as Claude and Gemini. -
Hook install respects
CLAUDE_CONFIG_DIR,GEMINI_CLI_HOME, andCODEX_HOME(#19); cleanup fixes for stale Claude permissions, Codex matchers, and OpenCode path resolution. -
hcom bundle preparefalls 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 | shInstall prebuilt binaries via Homebrew
brew install aannoo/hcom/hcomDownload 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
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 | shInstall prebuilt binaries via Homebrew
brew install aannoo/hcom/hcomDownload 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
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 | shInstall prebuilt binaries via Homebrew
brew install aannoo/hcom/hcomDownload 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
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_msgtranscripts 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_DIRscanning 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 | shInstall prebuilt binaries via Homebrew
brew install aannoo/hcom/hcomInstall via PyPI
pip install hcom
# or
uv tool install hcomDownload 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
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 runninghcom ptyprocesses 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-rootswith 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 repair —
HcomDb::open()paths now run schema checks by default. Stampedv17databases missing migration columns are repaired in place, and malformedlaunch_contextJSON no longer forces unnecessary archive/reset behavior during upgrade.
Full Changelog: v0.7.6...v0.7.7
v0.7.6
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 updatecommand — Check for and apply updates. Detects install method (pip/uv/curl/dev) and runs the appropriate update.--checkprints status;--goapplies without prompting.hcom status --jsonnow includes version info. Version checks usegit 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 startfix — Barehcom start(no--name) was incorrectly blocked by its own name reservation placeholder.
Full Changelog: v0.7.5...v0.7.6
v0.7.5
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 validation —
eventsflag values are now validated by clap:--type,--statusaccept only known values;--before/--afterrequireYYYY-MM-DDformat. 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-termuxouter wrapper is bypassed by invoking the inner wrapper directly viash, fixing tool launch in strippedRUN_COMMANDenvironments 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 lifecycle —
ensure_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_namenow correctly resolves compound tags likevc-p0-p1-parallel-vani; previouslysplit_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
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 --sqlare 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 theopen -a Terminal {script}form that macOS requires for file-open launches. Commands that do use--argsstill 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 initialization —
Config::get()now initializes from the environment on first access instead of requiring an explicitConfig::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")].