opencode-swarm-plugin 0.30.0 → 0.30.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/.turbo/turbo-build.log +4 -4
  2. package/CHANGELOG.md +47 -0
  3. package/README.md +3 -6
  4. package/bin/swarm.ts +151 -22
  5. package/dist/hive.d.ts.map +1 -1
  6. package/dist/index.d.ts +94 -0
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +18826 -3467
  9. package/dist/memory-tools.d.ts +209 -0
  10. package/dist/memory-tools.d.ts.map +1 -0
  11. package/dist/memory.d.ts +124 -0
  12. package/dist/memory.d.ts.map +1 -0
  13. package/dist/plugin.js +18766 -3418
  14. package/dist/schemas/index.d.ts +7 -0
  15. package/dist/schemas/index.d.ts.map +1 -1
  16. package/dist/schemas/worker-handoff.d.ts +78 -0
  17. package/dist/schemas/worker-handoff.d.ts.map +1 -0
  18. package/dist/swarm-orchestrate.d.ts +50 -0
  19. package/dist/swarm-orchestrate.d.ts.map +1 -1
  20. package/dist/swarm-prompts.d.ts +1 -1
  21. package/dist/swarm-prompts.d.ts.map +1 -1
  22. package/dist/swarm-review.d.ts +4 -0
  23. package/dist/swarm-review.d.ts.map +1 -1
  24. package/docs/planning/ADR-008-worker-handoff-protocol.md +293 -0
  25. package/package.json +3 -1
  26. package/src/hive.integration.test.ts +114 -0
  27. package/src/hive.ts +33 -22
  28. package/src/index.ts +38 -3
  29. package/src/memory-tools.test.ts +111 -0
  30. package/src/memory-tools.ts +273 -0
  31. package/src/memory.integration.test.ts +266 -0
  32. package/src/memory.test.ts +334 -0
  33. package/src/memory.ts +441 -0
  34. package/src/schemas/index.ts +18 -0
  35. package/src/schemas/worker-handoff.test.ts +271 -0
  36. package/src/schemas/worker-handoff.ts +131 -0
  37. package/src/swarm-orchestrate.ts +262 -24
  38. package/src/swarm-prompts.ts +48 -5
  39. package/src/swarm-review.ts +7 -0
  40. package/src/swarm.integration.test.ts +386 -9
@@ -1,9 +1,9 @@
1
1
  $ bun build ./src/index.ts --outdir ./dist --target node --external @electric-sql/pglite --external swarm-mail && bun build ./src/plugin.ts --outfile ./dist/plugin.js --target node --external @electric-sql/pglite --external swarm-mail && tsc
2
- Bundled 200 modules in 34ms
2
+ Bundled 811 modules in 121ms
3
3
 
4
- index.js 1.20 MB (entry point)
4
+ index.js 1.71 MB (entry point)
5
5
 
6
- Bundled 201 modules in 44ms
6
+ Bundled 812 modules in 142ms
7
7
 
8
- plugin.js 1.16 MB (entry point)
8
+ plugin.js 1.67 MB (entry point)
9
9
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,52 @@
1
1
  # opencode-swarm-plugin
2
2
 
3
+ ## 0.30.2
4
+
5
+ ### Patch Changes
6
+
7
+ - [`5858148`](https://github.com/joelhooks/swarm-tools/commit/5858148d5785393c0a6993a2595fba275f305707) Thanks [@joelhooks](https://github.com/joelhooks)! - chore: trigger publish workflow
8
+
9
+ ## 0.30.1
10
+
11
+ ### Patch Changes
12
+
13
+ - [`57d5600`](https://github.com/joelhooks/swarm-tools/commit/57d5600a53e148ce1d1da48b3b5a8723a5552e04) Thanks [@joelhooks](https://github.com/joelhooks)! - ## 🚦 Review Gate UX Fix + Verbose Setup
14
+
15
+ > _"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."_
16
+ > — Douglas Adams, _Mostly Harmless_
17
+
18
+ Two UX improvements that make swarm coordination feel less like shouting into the void.
19
+
20
+ ### What Changed
21
+
22
+ **Review Gate Response Fix:**
23
+
24
+ - `swarm_complete` no longer returns `success: false` when code review is pending
25
+ - Now returns `success: true` with `status: "pending_review"` or `status: "needs_changes"`
26
+ - **Why it matters**: The old format made review checkpoints look like errors. Agents would retry unnecessarily or report failures when the workflow was actually working as designed. Review gates are a feature, not a bug.
27
+
28
+ **Setup Command Verbosity:**
29
+
30
+ - Added `p.log.step()` and `p.log.success()` throughout swarm setup
31
+ - Users can now see exactly what's happening: dependency checks, git init, swarm-mail connection
32
+ - **Why it matters**: Silent setup commands feel broken. Explicit progress logs build trust and make debugging easier when setup actually does fail.
33
+
34
+ ### Why It Matters
35
+
36
+ **For Agents:**
37
+
38
+ - No more false-negative responses from review gates
39
+ - Clear workflow state (pending vs. needs changes vs. complete)
40
+ - Reduced retry loops and error noise
41
+
42
+ **For Users:**
43
+
44
+ - Setup command shows its work (not a black box)
45
+ - Review process is transparent in logs
46
+ - Easier to diagnose when things actually break
47
+
48
+ **Backward compatible:** Yes. Existing agents checking for `success: false` will still work, they just won't see false errors anymore.
49
+
3
50
  ## 0.30.0
4
51
 
5
52
  ### Minor Changes
package/README.md CHANGED
@@ -220,7 +220,8 @@ These tools significantly enhance the swarm experience:
220
220
  |------|---------|---------|
221
221
  | [CASS](https://github.com/Dicklesworthstone/coding_agent_session_search) | Historical context - queries past sessions for similar decompositions | See below |
222
222
  | [UBS](https://github.com/Dicklesworthstone/ultimate_bug_scanner) | Bug scanning - runs on subtask completion to catch issues | See below |
223
- | [semantic-memory](https://github.com/joelhooks/semantic-memory) | Learning persistence - stores patterns across sessions | Requires Ollama (see above) |
223
+
224
+ > **Note:** Semantic memory is now embedded in the plugin. No separate installation needed - just install Ollama for vector embeddings.
224
225
 
225
226
  #### Installing CASS
226
227
 
@@ -243,15 +244,11 @@ cd ultimate_bug_scanner
243
244
  pip install -e .
244
245
  ```
245
246
 
246
- #### Installing semantic-memory
247
-
248
- The `semantic-memory_check` tool verifies Ollama is ready (see installation steps above).
249
-
250
247
  **Why install these?**
251
248
 
252
249
  - **CASS** - When you run `/swarm "Add OAuth"`, the coordinator queries CASS for similar past tasks. Without it, decomposition is based only on the current task description.
253
250
  - **UBS** - Every `swarm_complete` runs UBS to scan for bugs. Without it, you lose automatic bug detection.
254
- - **semantic-memory** - Pattern maturity and anti-pattern detection persist across sessions. Without it, learning resets each session.
251
+ - **Ollama** - Enables vector similarity search for semantic memory. Without it, memory falls back to full-text search (still functional, less semantic).
255
252
 
256
253
  Run `swarm doctor` to check which dependencies are installed.
257
254
 
package/bin/swarm.ts CHANGED
@@ -35,6 +35,12 @@ import {
35
35
  ensureHiveDirectory,
36
36
  getHiveAdapter,
37
37
  } from "../src/hive";
38
+ import {
39
+ legacyDatabaseExists,
40
+ getMigrationStatus,
41
+ migrateLegacyMemories,
42
+ } from "swarm-mail";
43
+ import { getSwarmMail } from "swarm-mail";
38
44
 
39
45
  const __dirname = dirname(fileURLToPath(import.meta.url));
40
46
  const pkg = JSON.parse(
@@ -427,22 +433,13 @@ const DEPENDENCIES: Dependency[] = [
427
433
  description: "AI-powered static analysis for pre-completion bug scanning",
428
434
  },
429
435
  {
430
- name: "semantic-memory",
431
- command: "semantic-memory",
432
- checkArgs: ["stats"],
433
- required: false,
434
- install: "npm install -g semantic-memory",
435
- installType: "npm",
436
- description: "Learning persistence with vector search",
437
- },
438
- {
439
- name: "Redis",
440
- command: "redis-cli",
441
- checkArgs: ["ping"],
436
+ name: "Ollama",
437
+ command: "ollama",
438
+ checkArgs: ["--version"],
442
439
  required: false,
443
- install: "brew install redis && brew services start redis",
440
+ install: "brew install ollama && ollama pull mxbai-embed-large",
444
441
  installType: "brew",
445
- description: "Rate limiting (SQLite fallback available)",
442
+ description: "Local embeddings for semantic memory (embedded in plugin)",
446
443
  },
447
444
  ];
448
445
 
@@ -1229,8 +1226,8 @@ function getFixCommand(dep: Dependency): string | null {
1229
1226
  switch (dep.name) {
1230
1227
  case "OpenCode":
1231
1228
  return "brew install sst/tap/opencode";
1232
- case "semantic-memory":
1233
- return "npm install -g semantic-memory";
1229
+ case "Ollama":
1230
+ return "brew install ollama && ollama pull mxbai-embed-large";
1234
1231
  case "Redis":
1235
1232
  return "brew install redis && brew services start redis";
1236
1233
  case "CASS (Coding Agent Session Search)":
@@ -1382,6 +1379,7 @@ async function setup() {
1382
1379
  let isReinstall = false;
1383
1380
 
1384
1381
  // Check if already configured FIRST
1382
+ p.log.step("Checking existing configuration...");
1385
1383
  const configDir = join(homedir(), ".config", "opencode");
1386
1384
  const pluginDir = join(configDir, "plugin");
1387
1385
  const commandDir = join(configDir, "command");
@@ -1492,6 +1490,8 @@ async function setup() {
1492
1490
  }
1493
1491
  if (action === "reinstall") {
1494
1492
  isReinstall = true;
1493
+ p.log.step("Reinstalling swarm configuration...");
1494
+ p.log.message(dim(" This will check dependencies, sync skills, and update config files"));
1495
1495
  }
1496
1496
  // action === "reinstall" - fall through to full setup
1497
1497
  }
@@ -1622,11 +1622,13 @@ async function setup() {
1622
1622
  }
1623
1623
 
1624
1624
  // Check for .beads → .hive migration
1625
+ p.log.step("Checking for legacy .beads directory...");
1625
1626
  const cwd = process.cwd();
1626
1627
  const migrationCheck = checkBeadsMigrationNeeded(cwd);
1627
1628
  if (migrationCheck.needed) {
1628
- p.log.step("Legacy .beads directory detected");
1629
- p.log.message(dim(" Found: " + migrationCheck.beadsPath));
1629
+ p.log.warn("Found legacy .beads directory");
1630
+ p.log.message(dim(" Path: " + migrationCheck.beadsPath));
1631
+ p.log.message(dim(" Will rename to .hive/ and merge history"));
1630
1632
 
1631
1633
  const shouldMigrate = await p.confirm({
1632
1634
  message: "Migrate .beads to .hive? (recommended)",
@@ -1645,17 +1647,23 @@ async function setup() {
1645
1647
  try {
1646
1648
  const result = await migrateBeadsToHive(cwd);
1647
1649
  if (result.migrated) {
1648
- migrateSpinner.stop("Migration complete");
1649
- p.log.success("Renamed .beads/ → .hive/");
1650
+ migrateSpinner.stop("Renamed .beads/ → .hive/");
1651
+ p.log.success("Directory migration complete");
1650
1652
 
1651
1653
  // Merge historic beads into issues.jsonl
1654
+ migrateSpinner.start("Merging historic cells...");
1652
1655
  const mergeResult = await mergeHistoricBeads(cwd);
1653
1656
  if (mergeResult.merged > 0) {
1654
- p.log.success(`Merged ${mergeResult.merged} historic beads (${mergeResult.skipped} already present)`);
1657
+ migrateSpinner.stop("Historic cells merged");
1658
+ p.log.success(`Merged ${mergeResult.merged} cells (${mergeResult.skipped} already present)`);
1659
+ } else {
1660
+ migrateSpinner.stop("No historic cells to merge");
1655
1661
  }
1656
1662
 
1657
1663
  // Import JSONL into PGLite database
1664
+ migrateSpinner.start("Importing to database...");
1658
1665
  const importResult = await importJsonlToPGLite(cwd);
1666
+ migrateSpinner.stop("Database import complete");
1659
1667
  if (importResult.imported > 0 || importResult.updated > 0) {
1660
1668
  p.log.success(`Database: ${importResult.imported} imported, ${importResult.updated} updated`);
1661
1669
  }
@@ -1670,10 +1678,121 @@ async function setup() {
1670
1678
  } else {
1671
1679
  p.log.warn("Skipping migration - .beads will continue to work but is deprecated");
1672
1680
  }
1681
+ } else {
1682
+ p.log.message(dim(" No legacy .beads directory found"));
1683
+ }
1684
+
1685
+ // Check for legacy semantic-memory migration
1686
+ p.log.step("Checking for legacy semantic-memory database...");
1687
+ if (legacyDatabaseExists()) {
1688
+ p.log.warn("Found legacy semantic-memory database");
1689
+
1690
+ const migrationStatus = await getMigrationStatus();
1691
+ if (migrationStatus) {
1692
+ const { total, withEmbeddings } = migrationStatus;
1693
+ p.log.message(dim(` Memories: ${total} total (${withEmbeddings} with embeddings)`));
1694
+ p.log.message(dim(` Will migrate to swarm-mail unified database`));
1695
+
1696
+ const shouldMigrate = await p.confirm({
1697
+ message: "Migrate to swarm-mail database? (recommended)",
1698
+ initialValue: true,
1699
+ });
1700
+
1701
+ if (p.isCancel(shouldMigrate)) {
1702
+ p.cancel("Setup cancelled");
1703
+ process.exit(0);
1704
+ }
1705
+
1706
+ if (shouldMigrate) {
1707
+ const migrateSpinner = p.spinner();
1708
+ migrateSpinner.start("Connecting to target database...");
1709
+
1710
+ try {
1711
+ // Get swarm-mail database for this project
1712
+ const targetDb = await getSwarmMail(cwd);
1713
+ migrateSpinner.message("Migrating memories...");
1714
+
1715
+ // Run migration with progress updates
1716
+ const result = await migrateLegacyMemories({
1717
+ targetDb,
1718
+ onProgress: (msg) => {
1719
+ // Update spinner message for key milestones
1720
+ if (msg.includes("complete") || msg.includes("Progress:")) {
1721
+ migrateSpinner.message(msg.replace("[migrate] ", ""));
1722
+ }
1723
+ },
1724
+ });
1725
+
1726
+ migrateSpinner.stop("Semantic memory migration complete");
1727
+
1728
+ if (result.migrated > 0) {
1729
+ p.log.success(`Migrated ${result.migrated} memories to swarm-mail`);
1730
+ }
1731
+ if (result.skipped > 0) {
1732
+ p.log.message(dim(` Skipped ${result.skipped} (already exist)`));
1733
+ }
1734
+ if (result.failed > 0) {
1735
+ p.log.warn(`Failed to migrate ${result.failed} memories`);
1736
+ for (const error of result.errors.slice(0, 3)) {
1737
+ p.log.message(dim(` ${error}`));
1738
+ }
1739
+ if (result.errors.length > 3) {
1740
+ p.log.message(dim(` ... and ${result.errors.length - 3} more errors`));
1741
+ }
1742
+ }
1743
+ } catch (error) {
1744
+ migrateSpinner.stop("Migration failed");
1745
+ p.log.error(error instanceof Error ? error.message : String(error));
1746
+ }
1747
+ } else {
1748
+ p.log.warn("Skipping migration - legacy semantic-memory will continue to work but is deprecated");
1749
+ }
1750
+ }
1751
+ } else {
1752
+ p.log.message(dim(" No legacy semantic-memory database found"));
1753
+ }
1754
+
1755
+ // Check for legacy semantic-memory MCP server in OpenCode config
1756
+ p.log.step("Checking for legacy MCP servers...");
1757
+ const opencodeConfigPath = join(configDir, 'config.json');
1758
+ if (existsSync(opencodeConfigPath)) {
1759
+ try {
1760
+ const opencodeConfig = JSON.parse(readFileSync(opencodeConfigPath, 'utf-8'));
1761
+ if (opencodeConfig.mcpServers?.['semantic-memory']) {
1762
+ p.log.warn('Found legacy semantic-memory MCP server');
1763
+ p.log.message(dim(' Semantic memory is now embedded in the plugin'));
1764
+
1765
+ const removeMcp = await p.confirm({
1766
+ message: 'Remove from MCP servers config?',
1767
+ initialValue: true,
1768
+ });
1769
+
1770
+ if (p.isCancel(removeMcp)) {
1771
+ p.cancel('Setup cancelled');
1772
+ process.exit(0);
1773
+ }
1774
+
1775
+ if (removeMcp) {
1776
+ delete opencodeConfig.mcpServers['semantic-memory'];
1777
+ writeFileSync(opencodeConfigPath, JSON.stringify(opencodeConfig, null, 2));
1778
+ p.log.success('Removed semantic-memory from MCP servers');
1779
+ p.log.message(dim(` Updated: ${opencodeConfigPath}`));
1780
+ } else {
1781
+ p.log.warn('Keeping legacy MCP - you may see duplicate semantic-memory tools');
1782
+ }
1783
+ } else {
1784
+ p.log.message(dim(' No legacy MCP servers found'));
1785
+ }
1786
+ } catch (error) {
1787
+ p.log.message(dim(' Could not parse OpenCode config (skipping MCP check)'));
1788
+ }
1789
+ } else {
1790
+ p.log.message(dim(' No OpenCode config found (skipping MCP check)'));
1673
1791
  }
1674
1792
 
1675
1793
  // Model selection
1676
- p.log.step("Configure swarm agents...");
1794
+ p.log.step("Configuring swarm agents...");
1795
+ p.log.message(dim(" Coordinator handles orchestration, worker executes tasks"));
1677
1796
 
1678
1797
  const coordinatorModel = await p.select({
1679
1798
  message: "Select coordinator model (for orchestration/planning):",
@@ -1769,27 +1888,37 @@ async function setup() {
1769
1888
  process.exit(0);
1770
1889
  }
1771
1890
 
1891
+ p.log.success("Selected models:");
1892
+ p.log.message(dim(` Coordinator: ${coordinatorModel}`));
1893
+ p.log.message(dim(` Worker: ${workerModel}`));
1894
+
1772
1895
  p.log.step("Setting up OpenCode integration...");
1773
1896
 
1774
1897
  // Track file operation statistics
1775
1898
  const stats: FileStats = { created: 0, updated: 0, unchanged: 0 };
1776
1899
 
1777
1900
  // Create directories if needed
1901
+ p.log.step("Creating configuration directories...");
1778
1902
  const skillsDir = join(configDir, "skills");
1779
1903
  for (const dir of [pluginDir, commandDir, agentDir, swarmAgentDir, skillsDir]) {
1780
1904
  mkdirWithStatus(dir);
1781
1905
  }
1782
1906
 
1783
1907
  // Write plugin and command files
1908
+ p.log.step("Writing configuration files...");
1784
1909
  stats[writeFileWithStatus(pluginPath, getPluginWrapper(), "Plugin")]++;
1785
1910
  stats[writeFileWithStatus(commandPath, SWARM_COMMAND, "Command")]++;
1786
1911
 
1787
1912
  // Write nested agent files (swarm/planner.md, swarm/worker.md)
1788
1913
  // This is the format used by Task(subagent_type="swarm/worker")
1914
+ p.log.step("Writing agent configuration...");
1789
1915
  stats[writeFileWithStatus(plannerAgentPath, getPlannerAgent(coordinatorModel as string), "Planner agent")]++;
1790
1916
  stats[writeFileWithStatus(workerAgentPath, getWorkerAgent(workerModel as string), "Worker agent")]++;
1791
1917
 
1792
1918
  // Clean up legacy flat agent files if they exist
1919
+ if (existsSync(legacyPlannerPath) || existsSync(legacyWorkerPath)) {
1920
+ p.log.step("Cleaning up legacy agent files...");
1921
+ }
1793
1922
  rmWithStatus(legacyPlannerPath, "legacy planner");
1794
1923
  rmWithStatus(legacyWorkerPath, "legacy worker");
1795
1924
 
@@ -1 +1 @@
1
- {"version":3,"file":"hive.d.ts","sourceRoot":"","sources":["../src/hive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hive.d.ts","sourceRoot":"","sources":["../src/hive.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -34,6 +34,7 @@ import type { Plugin } from "@opencode-ai/plugin";
34
34
  * - repo-crawl:* - GitHub API tools for repository research
35
35
  * - skills:* - Agent skills discovery, activation, and execution
36
36
  * - mandate:* - Agent voting system for collaborative knowledge curation
37
+ * - semantic-memory:* - Semantic memory with vector embeddings (Ollama + PGLite)
37
38
  *
38
39
  * @param input - Plugin context from OpenCode
39
40
  * @returns Plugin hooks including tools, events, and tool execution hooks
@@ -138,6 +139,84 @@ export { swarmTools, SwarmError, DecompositionError, formatSubtaskPrompt, format
138
139
  * Note: hiveTools includes both hive_* and beads_* (legacy aliases)
139
140
  */
140
141
  export declare const allTools: {
142
+ readonly "semantic-memory_store": {
143
+ description: string;
144
+ args: {
145
+ information: import("zod").ZodString;
146
+ collection: import("zod").ZodOptional<import("zod").ZodString>;
147
+ tags: import("zod").ZodOptional<import("zod").ZodString>;
148
+ metadata: import("zod").ZodOptional<import("zod").ZodString>;
149
+ };
150
+ execute(args: {
151
+ information: string;
152
+ collection?: string | undefined;
153
+ tags?: string | undefined;
154
+ metadata?: string | undefined;
155
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
156
+ };
157
+ readonly "semantic-memory_find": {
158
+ description: string;
159
+ args: {
160
+ query: import("zod").ZodString;
161
+ limit: import("zod").ZodOptional<import("zod").ZodNumber>;
162
+ collection: import("zod").ZodOptional<import("zod").ZodString>;
163
+ expand: import("zod").ZodOptional<import("zod").ZodBoolean>;
164
+ fts: import("zod").ZodOptional<import("zod").ZodBoolean>;
165
+ };
166
+ execute(args: {
167
+ query: string;
168
+ limit?: number | undefined;
169
+ collection?: string | undefined;
170
+ expand?: boolean | undefined;
171
+ fts?: boolean | undefined;
172
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
173
+ };
174
+ readonly "semantic-memory_get": {
175
+ description: string;
176
+ args: {
177
+ id: import("zod").ZodString;
178
+ };
179
+ execute(args: {
180
+ id: string;
181
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
182
+ };
183
+ readonly "semantic-memory_remove": {
184
+ description: string;
185
+ args: {
186
+ id: import("zod").ZodString;
187
+ };
188
+ execute(args: {
189
+ id: string;
190
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
191
+ };
192
+ readonly "semantic-memory_validate": {
193
+ description: string;
194
+ args: {
195
+ id: import("zod").ZodString;
196
+ };
197
+ execute(args: {
198
+ id: string;
199
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
200
+ };
201
+ readonly "semantic-memory_list": {
202
+ description: string;
203
+ args: {
204
+ collection: import("zod").ZodOptional<import("zod").ZodString>;
205
+ };
206
+ execute(args: {
207
+ collection?: string | undefined;
208
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
209
+ };
210
+ readonly "semantic-memory_stats": {
211
+ description: string;
212
+ args: {};
213
+ execute(args: Record<string, never>, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
214
+ };
215
+ readonly "semantic-memory_check": {
216
+ description: string;
217
+ args: {};
218
+ execute(args: Record<string, never>, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
219
+ };
141
220
  readonly mandate_file: {
142
221
  description: string;
143
222
  args: {
@@ -1441,4 +1520,19 @@ export { guardrailOutput, truncateWithBoundaries, createMetrics, DEFAULT_GUARDRA
1441
1520
  * ```
1442
1521
  */
1443
1522
  export { SWARM_COMPACTION_CONTEXT, createCompactionHook } from "./compaction-hook";
1523
+ /**
1524
+ * Re-export memory module
1525
+ *
1526
+ * Includes:
1527
+ * - memoryTools - All semantic-memory tools (store, find, get, remove, validate, list, stats, check)
1528
+ * - createMemoryAdapter - Factory function for memory adapter
1529
+ * - resetMemoryCache - Cache management for testing
1530
+ *
1531
+ * Types:
1532
+ * - MemoryAdapter - Memory adapter interface
1533
+ * - StoreArgs, FindArgs, IdArgs, ListArgs - Tool argument types
1534
+ * - StoreResult, FindResult, StatsResult, HealthResult, OperationResult - Result types
1535
+ */
1536
+ export { memoryTools, createMemoryAdapter, resetMemoryCache, type MemoryAdapter, type StoreArgs, type FindArgs, type IdArgs, type ListArgs, type StoreResult, type FindResult, type StatsResult, type HealthResult, type OperationResult, } from "./memory-tools";
1537
+ export type { Memory, SearchResult, SearchOptions } from "swarm-mail";
1444
1538
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}