Releases: fakiho/neohive
Releases · fakiho/neohive
Release list
v6.4.1 — Agents that never get lost
What's changed
Fixes
- Removed all deprecated MCP tool names (
listen_group,listen_codex,check_messages,consume_messages,get_history,search_messages,ack_message) from guide strings, skills, hooks, and docs — agents were receiving stale instructions that caused "unknown tool" errors - Fixed broken relative
docs/link inagent-bridge/README.mdfooter - Clarified MCP troubleshooting step order: restart IDE → enable plugin → start new agent thread
Documentation
- Synced
agent-bridge/README.mdwith rootREADME.md(hero GIF, VS Code Extension section,neohive skillsCLI command, website footer link) - Reordered README sections: Features → Recommended Setup (convince first, configure second)
- Rewrote Quick Start pseudocode into actionable copy-paste prompts
- Updated MCP tools table to reflect unified
listen(withmode) andmessages(withaction) tools
Scripts
- Upgraded
scripts/bump-version.shto handle all versioned files in one command:agent-bridge/package.json+package-lock.jsondocs/documentation.md,docs/reference/configuration.mdagent-bridge/dashboard.html(full semver footer + major.minor headlines)- Accepts optional new version as argument:
bash scripts/bump-version.sh 6.5.0 - Stale-version sanity check with smart exclusions (changelogs, extension versions)
Full changelog: v6.2.2...v6.4.1
v6.3.0 — Unified next_action Response Chain
Highlights
Every MCP tool response now includes a single next_action field — one unambiguous instruction telling the AI agent exactly what to do next. This replaces 10+ scattered hint fields and creates an unbreakable action chain from tool to tool.
New
- Unified
next_actionon every tool response — replaces_listen,_nudge,hint,action_required,unread_action,you_have_messages,urgent,mode_hint,_protocol, and more with a single top-level field - Tool-specific directives — each tool sets context-aware guidance (e.g.
update_task(done)→ "Send a summary, then call listen()";lock_file→ "Edit the file, then call unlock_file()") - Coordinator-aware middleware — responsive coordinators never receive
listen()directives; middleware overrides toconsume_messages()or removes the directive entirely - Persistent listen loop —
listen()andlisten_group()loop internally on timeout instead of returningretry: true; agents cannot accidentally break out of listen mode - Managed mode awareness — agents without the floor get "do NOT respond" instead of "reply via send_message()"
- Autonomous get_work() chain — all 10 return types carry specific
next_actionvalues
Fixed
- Responsive coordinators no longer told to call
listen()bysend_message,broadcast, andcreate_task - Managed mode
next_actionno longer contradictsshould_respond: false - Autonomous
listen_group()timeout no longer sends contradictoryretry: true+next_action: get_work()
Documentation
- New
docs/reference/next-action-chain.mdwith flow diagrams for all agent types, coordinator modes, and the full tool-specific reference table
Full changelog: https://github.com/fakiho/neohive/blob/master/agent-bridge/CHANGELOG.md
v6.1.0 — Modular tools, terminal bridge, agent liveness v2
Changelog
[6.1.0] - 2026-04-04
Added
- Modular tools architecture — server-side tools split into
agent-bridge/tools/directory for maintainability; each tool file is independently loaded at startup - Terminal bridge —
terminal-bridge.jsstreams live terminal output to the dashboard with lazy-loaded xterm.js and per-agent isolation; agent status pills show real-time session state - Agent liveness detection v2 — deterministic online/offline/stale/unknown states with heartbeat epoch tracking; dead seats are auto-reclaimed on
register()and spare seats offered immediately - Listen outcome payload —
listen()returns a structured result object withoutcome,message, andagentfields for richer branching logic - Liveness sparkline + nudge UI — dashboard renders a mini activity graph per agent and one-click nudge button for unresponsive agents
- Server-side auto-nudge — coordinator receives an escalation message when a non-compliant agent misses its
listen()window - Audit log — every MCP tool call appended to
audit_log.jsonl; newlog_violationtool writes policy violations to the same log; dashboard has a dedicated Audit view - Push approval workflow —
request_push_approval/ack_pushtools add a human-in-the-loop gate before git pushes - Review gate on task completion —
update_task(status="done")can requirerequest_review+submit_reviewbefore the done event fires;review_approvedevent broadcasts on approval - Scoped rules —
add_rule/list_rulesacceptrole,provider, andagentfilters so rules are applied only to matching agents - Platform-specific default skills —
register()auto-populates the agent's skill list based on detected IDE/CLI provider (Claude Code, Cursor, Copilot, Gemini) - Token usage in profile popup — dashboard resolves the Claude session via ppid walk and displays token usage directly in the agent profile card
- VS Code extension: chat participant —
@neohivechat participant with slash commands (/task,/broadcast,/status) and a coordinator pipe for inline coordination from Copilot Chat - VS Code extension: Claude Code hooks setup — extension auto-configures
UserPromptSubmitandPostToolUsehooks on activation; version shown in status bar - Hooks system —
PostToolUsehook echoessend_messagecalls to the current chat transcript;UserPromptSubmithook injects context;enforce-listen.shstop hook escalates non-compliant agents - Self-healing watchdog — stuck tasks are automatically reclaimed after a configurable timeout; escalates to
blocked_permanentwith poison-pill after max retries;retry_countbadge shown in dashboard - Design system —
design-system.cssships design tokens (colors, radii, shadows, glassmorphism variables) consumed by the dashboard; SVG logo and favicon served as dedicated endpoints - Multi-IDE MCP setup —
neohive initupserts configs for Claude Code, Cursor, Copilot, Gemini CLI, and Codex TOML in one pass using absolute Node.js paths - Agent name config in VS Code — extension setting
neohive.agentNamewith format validation; used automatically in MCP config generation
Changed
- Tool consolidation (Phase 1) —
check_messages/consume_messagesmerged into the unifiedmessagestool with amodeparam; deprecated aliases removed for a clean API surface - Config centralization —
SERVER_CONFIGandCLI_CONFIGobjects inserver.jsreplace all scattered magic numbers (timeouts, limits, intervals) - Dashboard route dispatch — simple GET routes moved to a dispatch table; reduces deeply nested if-chains in
dashboard.js - Dashboard agent popup — redesigned as a 3-tab layout (Stats · Actions · Profile) with inline profile editing, skill tags, and stuck/unresponsive indicators (orange/red dot + badge)
- System events — dashboard renders system events as compact, color-coded icon banners instead of raw log lines
- Glassmorphism UI — header and sidebar use backdrop-filter blur; agent cards gain micro-animations on hover and status-change
- Slack-style new-messages banner — pill appears above the message list when unread messages arrive while scrolled up
Fixed
- Agent disappearance race condition —
register()now uses a file-level write lock to prevent two agents stomping onagents.jsonsimultaneously; epoch-0 liveness spam suppressed - Mobile dashboard — menu toggle restored; textarea stretches full width; inject-target dropdown populates correctly on small screens
- Dashboard scroll preservation — message list no longer jumps to top on full re-render
- MCP portability — VS Code extension uses local
node+server.jspaths to avoid published-package port conflicts - Nudge suppression — auto-nudge only injects a message when the agent has genuinely missed its window; compliant agents are skipped
[6.0.3] - 2026-04-03
Fixed
- MCP data directory — When the MCP process starts with cwd outside the repo (e.g. Cursor home) and no
NEOHIVE_DATA_DIR, resolve the hive from repo.cursor/mcp.json/ sibling config (lib/resolve-server-data-dir.js);lib/config.jsuses the same root so agents and dashboard agree. - Dashboard
projects.json— Only rewrite the projects file when the canonical list differs from on-disk data (pack(nonRedundant) !== pack(raw)), not on every load when duplicates or default-hive rows were only present in the normalized pass-through list.
[6.0.2] - 2026-04-02
Added
- Human agent mode — users can join the team as a human agent via the dashboard
- Agent card grid — overview page shows agent cards with status, active tasks, and quick actions
- Checkpoint system — save and restore agent state snapshots for resumable work
- Agent approval flow — tasks can require explicit agent approval before advancing
Fixed
- Message loss on SSE reconnect
- Token hijack race condition in
listen() - Spinlock in file-based task claiming
- Silent errors in workflow advancement
- Messages nav item flickering (switchView scope was too broad)
- Version strings synced to v6.0.0 across all files
Changed
- Dashboard full visual rebrand — amber/gold NeoHive identity with icon rail, overview page, agent bar, and toast notifications
- Full layout redesign: icon rail sidebar, overview landing page, agent status bar
[6.0.0] - 2026-04-02
Breaking — Full Rebrand & Modularization
- Renamed — data directory migrated from
.agent-bridge/→.neohive/; startup auto-migrates legacy directories - Modularization — core business logic extracted to
lib/modules (messaging,file-io,config,hooks,resolve-server-data-dir, etc.) - Security hardening — comprehensive audit: path traversal, XSS, CSRF, symlink, injection, and DoS fixes across dashboard and MCP server
- New README — professional redesign with badges, feature showcase, architecture diagram, and visual hierarchy
.agent-bridge/auto-migration — startup detects and renames legacy data directory with zero data loss
[5.3.0] - 2026-03-20
Listen System Overhaul — Zero Token Waste
- 5-minute listen timeout —
listen()andlisten_group()now block for 5 minutes (was 45s), reducing idle token overhead by 7x - fs.watch instant wake — agents wake immediately when a message arrives, zero CPU/tokens while waiting
- Fixed collectBatch bug — file path was passed as branch name to
sanitizeName(), breakinglisten_group()on all platforms - Mode-aware instructions — managed mode says
listen(), group mode sayslisten_group(), all modes say "NEVER use sleep()" - Managed mode task tracking — manager creates tasks/workflows, agents update status as they work (Tasks/Plan tabs stay current)
- check_messages warns against loops — response includes
action_requiredtelling agents to uselisten()instead - listen_codex restricted — description explicitly says "ONLY for Codex CLI, Claude/Gemini must use listen()"
[5.2.6] - 2026-03-20
Changed
- Managed mode guide updated — agents now track active tasks with
update_taskand advance workflows withadvance_workflowas they work, keeping the Tasks/Plan tabs current in real time
[5.2.5] - 2026-03-20
Fixed
- Token waste —
check_messagesresponse now includesaction_requiredfield warning agents to uselisten()instead of polling loops listen_codexdescription explicitly restricted to Codex CLI only; Claude and Gemini agents must uselisten()
[5.2.4] - 2026-03-20
Fixed
- All listen instruction strings updated to be mode-aware: managed mode instructs
listen(), group mode instructslisten_group(), all modes say "NEVER use sleep()"
[5.2.3] - 2026-03-20
Fixed
- Mode-aware listen instructions — each conversation mode now returns the correct listen command name in its guide
[5.2.2] - 2026-03-20
Fixed
- Managed mode guide corrected — agents should call
listen()(notlisten_group()) between turns in managed mode
[5.2.1] - 2026-03-20
Fixed
- Managed mode guide corrected — agents should use
listen_group()instead of sleep loops between turns
[5.2.0] - 2026-03-20
Security Hardening (50+ fixes across 5 audit rounds)
- Timing-safe LAN token comparison (
crypto.timingSafeEqual) - File permissions —
.neohive/created with0o700,.lan-tokenwith0o600 - XSS prevention —
escapeHtmlescapes 6 characters, thread panel escaped, replay export</script>escaped, null byte placeholder collision fixed - Path traversal — containment checks on
/lib/,/office/,/mods/withpath.resolve, mods asset write validated, conversation name regex - Rate limiting — per-IP API rate limit (300/min), per-IP SSE limit (5), duplicate message detection, escalation broadcast rate limited
- File locking — tasks, workflows, channels all use
withFileLock, PID-...
v6.0.3
Changelog
[6.0.3] - 2026-04-03
Fixed
- MCP data directory — When the MCP process starts with cwd outside the repo (e.g. Cursor home) and no
NEOHIVE_DATA_DIR, resolve the hive from repo.cursor/mcp.json/ sibling config (lib/resolve-server-data-dir.js);lib/config.jsuses the same root so agents and dashboard agree. - Dashboard
projects.json— Only rewrite the projects file when the canonical list differs from on-disk data (pack(nonRedundant) !== pack(raw)), not on every load when duplicates or default-hive rows were only present in the normalized pass-through list.
[5.1.0] - 2026-03-19
Major — True Autonomy Engine + Team Intelligence + Scale to 100
Built by a 4-agent team (Backend, Protocol, Tester, Coordinator) + Advisor agent, working autonomously.
Added — Autonomy Engine (v5.0)
- get_work — 9-level priority waterfall: workflow step > messages > unclaimed tasks > help requests > reviews > blocked tasks > 30s listen > prep work > idle
- verify_and_advance — confidence-gated auto-advancement (>=70 auto, 40-69 flag, <40 help)
- start_plan — one-click autonomous plan launch with parallel step activation
- retry_with_improvement — 3-attempt retry with KB skill accumulation, team escalation
- Parallel workflow steps — dependency graph with
depends_on,findReadyStepsresolver - Autonomous mode — proactive work loop guide, tiered cooldowns (0ms handoffs), 30s listen cap, relaxed send limits
Added — Team Intelligence
- Auto-role assignment — lead/quality/implementer/monitor/advisor roles based on team size
- Quality Lead — always-on checker with dedicated guide, review-retry loop, auto-approve after 2 rounds
- Monitor Agent — system health overseer at 10+ agents: idle detection, circular escalation detection, auto-intervention, failover
- Advisor Agent — strategic thinker at 5+ agents: reads all work, gives ideas, challenges assumptions
- Self-continuation — agents never ask user, find next work automatically
- Smart prompt distribution — auto-generates workflows from natural language prompts
Added — Advanced Autonomy (10 features)
- Task-level circuit breaker (blocked_permanent after 3 agent failures)
- Quality Lead instant failover (highest reputation auto-promoted)
- Context inheritance on escalation (full failure history)
- Agent circuit breaker (consecutive_rejections tracking, auto-demotion)
- Dynamic role fluidity (workload-based rebalancing)
- Skill-based task routing (agent affinity scoring)
- Work stealing (idle agents claim from busy agents)
- Checkpointing (resumable work via workspace snapshots)
- Retrospective learning (aggregate failure pattern analysis)
- Backpressure signal (queue depth warnings)
Added — Scale to 100 Agents
- Per-agent heartbeat files (zero write contention)
- Cooldown cap (3s max regardless of agent count, 0ms for handoffs)
- Byte-offset message reads (O(new_messages) not O(all))
- Exponential backoff on file locks (1ms-500ms, not 50ms busy-wait)
- isPidAlive cache (5s TTL, saves 10K syscalls/sec)
- SSE debounce (heartbeat files filtered, 2s debounce)
- Task keyword cache (30s TTL)
- Sticky roles (no churn on agent reconnect)
- Zero cooldown for channel messages + handoffs in autonomous mode
Added — Dashboard & CLI
- Plan execution view — progress bar, step cards, confidence, controls (pause/stop/skip/reassign)
- Monitor health panel — agent health grid, intervention log, system metrics
npx neohive run "prompt" --agents N— one-command autonomous execution- npm test wires v5 test suite (158+ tests on every run)
- Updated conversation templates (autonomous format with depends_on)
Stats
- server.js: 6,200+ lines, 62+ tools
- 175+ automated tests, 0 fail
- 5 conversation templates (autonomous format)
- Built in ~2 hours by autonomous agent team
[4.3.0] - 2026-03-17
Major — 3D Hub Game World, World Builder, Jukebox
Built by a 5-agent team (Architect, Builder, Tester, Optimizer, Protocol) working in parallel.
Added — 3D Hub Game Features
- World Builder — Press B in player mode to open builder panel. 16 placeable assets across 5 categories (structural, furniture, decor, tech, lighting). Grid snap, ghost preview, R to rotate, right-click delete, Ctrl+Z undo. Draggable panel, works in fullscreen.
- Jukebox — Wurlitzer 1015-style jukebox in bar area with neon glow animation. Press E to interact. 4 playlist selector with YouTube popup player. Music persists while exploring.
- Minimap — 140px radar overlay showing agent positions (color-coded by status) and player location. Only visible in fullscreen mode.
- Controls HUD — Press H to toggle keybind reference panel. Auto-shows for 4 seconds on world entry.
- Fullscreen — Dashboard fullscreen button now fullscreens only the 3D Hub (game mode), not the entire page.
Added — Character Intelligence
- Emotion system — 11 emotion presets (happy, frustrated, thinking, excited, surprised, etc.) with auto-triggers from message content. Temporary face expression changes with auto-revert.
- Social visits — Idle agents randomly walk to other agents' desks to chat (max 2 concurrent walks).
- Glance reactions — Sitting agents turn heads toward speakers when messages are sent.
- Head nods — Periodic nod animation when being visited by another agent.
- Auto coffee break — Sleeping agents walk to rest area, return to desk when active again.
- Non-blocking input overlay — Replaced browser prompt() dialogs with styled HTML overlay for click commands.
Added — Dashboard
- Respawn button — One-click respawn for dead agents. Generates resume prompt from recovery snapshot + profile + tasks + recent history.
- Respawn API —
GET /api/agents/:name/respawn-promptendpoint with full context generation. - World Builder API —
GET /api/world-layout+POST /api/world-savefor persistent world placements. - 3D-only fullscreen — Fullscreen targets 3D container when on 3D Hub tab.
Fixed
- Manager chair spawn — Stand-up now places player in front of desk (toward door), preventing wall collision.
- CSRF on 3D Hub — Added X-LTT-Request header to all office module POST requests (builder save, command menu actions).
- Respawn endpoint validation — Agent name validated (alphanumeric, max 20 chars) to prevent path traversal.
- Builder lazy-load — Dynamic import() with silent failure prevents builder issues from breaking 3D Hub.
- Jukebox popup orphan — Module-scoped reference survives overlay dismiss/reopen cycles.
- Builder drag listener leak — Stored refs removed in hidePanel().
- Jukebox prompt cleanup — dismissJukebox() called in office3dStop().
Security
- npm audit: 0 vulnerabilities
- CSRF protection verified on all mutating endpoints
- Input validation on all user-facing API parameters
- No hardcoded secrets or sensitive data in shipped package
[4.2.0] - 2026-03-17
Major — Team Intelligence, Dashboard Upgrade, Performance
Built by a 4-agent team (Architect, Tester, Protocol, Builder) working in parallel.
Added — Team Automation
- Auto-escalation — blocked tasks auto-broadcast
[ESCALATION]to team after 5 minutes. File-based dedup viatask.escalated_atfield (cross-process safe). Clears on unblock. - Stand-up meetings — config-driven periodic team check-ins (
standup_interval_hoursin config.json). File-based dedup, 5+ agent gate. Broadcasts task summary with in-progress/blocked/done counts. - Quality gates —
update_task(done)auto-broadcasts[REVIEW NEEDED](from v4.1.0, now with auto-escalation integration).
Added — Agent Intelligence
- Workload metrics — reputation tracks
task_times[](completion seconds), leaderboard showsavg_task_time_secper agent. - Smarter suggest_task — caps at 3 in-progress tasks ("finish first"), suggests blocked tasks when no pending ones, workload-aware.
- KB hints in listen_group — batch messages checked against KB keys, returns
kb_hintswith relevant entries. - Thread reply context —
listen_groupincludes_reply_contextpreview of parent message for threaded replies. - Decision overlap hints —
send_messagechecks content against logged decisions, returns_decision_hintto prevent re-debating. - Auto-status board —
update_taskauto-writes_statusto agent workspace ("Working on: X").list_agentsincludescurrent_statusfield.
Added — Dashboard
- Agent intent display — dashboard shows what each agent is currently working on (from workspace
_status) - Channel badges — messages show colored
#channelbadges - Channel filter bar — horizontal scrollable tabs to filter messages by channel
- Channel history merging —
/api/historymerges channel-specific + general history files /api/channelsendpoint — channel list with member counts for dashboard/api/decisionsendpoint — decision log display in dashboard- Decision log UI — chronological cards with topic, decision, reasoning, author
Improved — Performance & Safety
- Escalation dedup fix — replaced in-memory
_escalatedTasksSet with file-basedtask.escalated_atfield (cross-process safe for 10 agents) - Dashboard current_status API —
/api/agentsincludes workspace_statusfor agent intent board
[4.1.0] - 2026-03-17
Added — Agent Reliability & Intelligence
- Auto-recovery (crash resume) — when an agent's process dies, the server snapshots its state (active tasks, locked files, channels, workspace keys, last 5 messages) to
recovery-{name}.json. When a replacement registers with the same name, the snapshot is included in the register response with instructions to resume, not restart. 1-hour TTL, auto-deletes after load. - Quality gates —
update_task(id, "done")auto-broadcasts[REVIEW NEEDED]to all alive agents. Teams get automatic review cycles without manuall...