opencode-swarm-plugin@0.46.0
Minor Changes
-
e5987a7Thanks @joelhooks! - ## The Hive Remembers Everything🧠 / \ / \ "One mind to remember them all, / HIVE \ one mind to find them, / MIND \ one mind to bring them all / \ and in the context bind them." /____________\ ||| ┌────────┴┴┴────────┐ │ │ ┌────┴────┐ ┌────┴────┐ │ Learnings│ │ Sessions │ │ (manual) │ │ (indexed)│ └────┬────┘ └────┬────┘ │ │ └─────────┬─────────┘ ▼ ┌─────────────┐ │ memories │ ← Same table │ table │ ← Same vectors │ (libSQL) │ ← Same search └─────────────┘"The palest ink is better than the best memory." — Chinese Proverb
ADR-011: Hivemind Memory Unification
15 tools → 8 tools. Sessions and learnings are now unified under one namespace.
What changed:
Old Tool New Tool semantic-memory_storehivemind_storesemantic-memory_findhivemind_findsemantic-memory_gethivemind_getsemantic-memory_removehivemind_removesemantic-memory_validatehivemind_validatecass_searchhivemind_find(collection filter)cass_viewhivemind_getcass_indexhivemind_indexcass_statshivemind_statsNEW hivemind_syncWhy it matters:
- No more naming collision - External
semantic-memoryMCP was shadowing our internal tools - Unified search -
hivemind_findsearches both learnings AND sessions in one query - Collection filter -
collection: "claude"for Claude sessions,collection: "default"for learnings - Simpler mental model - Sessions ARE memories, just from a different source
Backward compatible: All old tool names (
semantic-memory_*,cass_*) still work via deprecation aliases. They'll emit warnings but won't break.Migration: None required. Old tool names continue to work. Update at your leisure.
117+ tests covering all tools, lifecycle, deprecation aliases, and integration points.
- No more naming collision - External
Patch Changes
-
e5987a7Thanks @joelhooks! - ## 🔧 Test Suite Stabilization & Global Database Path"The first step in fixing a broken window is to notice it."
— The Pragmatic Programmer___________ | PASSING | | TESTS | |___________| || ╔════╧════╗ ║ 1538 ║ ║ ✓ ✓ ✓ ║ ╚═════════╝What Changed
swarm-mail:
getDatabasePath()now ALWAYS returns global path (~/.config/swarm-tools/swarm.db)- Local project databases will be auto-migrated in a future release (placeholder warning added)
- Auto-tagger LLM tests now opt-in via
RUN_LLM_TESTS=1(prevents flaky CI)
opencode-swarm-plugin:
- Fixed type mismatches in compaction hook (HiveAdapter → MinimalHiveAdapter)
- Fixed eval capture in tool hooks (args not available in after hook)
- All 425 tests passing
Why Global Database?
Single source of truth across all projects:
- No more orphaned databases in worktrees
- Consistent swarm state regardless of working directory
- Simpler backup/restore story
⚠️ Breaking: Local Databases OrphanedExisting local databases at
{project}/.opencode/swarm.dbare NOT migrated.
They remain on disk but are no longer read. A warning is logged when detected.Tracked: Cell
mjrd8cyhvnu- Implement local-to-global DB migrationIf you have important data in local DBs, wait for migration tool or manually copy:
# Check if you have local data ls -la .opencode/swarm.dbTest Results
Package Pass Skip Fail swarm-mail 1113 29 0 opencode-swarm-plugin 425 0 0 -
Updated dependencies [
e5987a7,e5987a7,e5987a7]:- swarm-mail@1.7.0