Public log

ruflo

Ruflo - Enterprise AI agent orchestration platform. Deploy 60+ specialized agents in coordinated swarms with self-learning, fault-tolerant consensus, vector memory, and MCP integration

npm · fingerprint a0876317d45ce6fa48388abd · repository · RSS

358tools
7recorded versions
45dtracked
changed today

What changed

Changed 2026-10-18 11:10 UTC

1 schema or annotation change with the description left byte-identical.

--- pinned/policy_status
+++ observed/policy_status
  {
    "description": "Inspect policy mode, migration state, rules, budgets, approvals, and ledger integrity. Use when diagnosing whether an installation is in compatibility, observation, or enforcement mode.",
    "inputSchema": {
-     "properties": {},
+     "properties": {
+       "full": {
+         "description": "Also replay the archived receipts to verify the complete historical ledger, not just the retained hot tail (#3164)",
+         "type": "boolean"
+       }
+     },
      "type": "object"
    },
    "name": "policy_status"

Changed 2026-10-15 11:39 UTC

7 descriptions rewritten, 3 schema or annotation changes with the description left byte-identical.

--- pinned/agent_health
+++ observed/agent_health
  {
-   "description": "Compute an agent's rolling health score (0-1) from recent task success ratio + response-latency p50/p95 + error rate. Use when native Task tool is wrong because you're running a long-lived agent (autonomous loop / hive-mind worker / federation peer) and need to detect degradation before the breaker trips it. For one-shot Task invocations there is no history to score. Pair with hooks_post-task so the scores stay current.",
+   "description": "Report measured agent_execute provider-call outcomes over the last 20 calls: API success-ratio health (0-1), error rate, and response-latency p50/p95. This does not measure task correctness. Agents with no observed calls have unknown health; registration is not proof of a running process. Native Task and hooks_post-task outcomes are not recorded here. Use when you need measured reliability for agents driven through agent_execute; native Task results are invisible to this tool, so inspect those directly.",
    "inputSchema": {
      "properties": {
        "agentId": {
--- pinned/analyze_diff
+++ observed/analyze_diff
  {
-   "description": "Analyze git diff for change risk assessment and classification Use when native `git diff` / `grep` / static analysis is wrong because you want LLM-graded change classification, reviewer recommendations, or risk scoring. For literal-text inspection, native tools are fine.",
+   "description": "Heuristically analyze git diff paths, changed lines, and one-commit subjects for risk and classification. Use when preparing a review that needs a quick evidence-based summary; inspect the diff for final judgment.",
    "inputSchema": {
      "properties": {
        "includeFileRisks": {
--- pinned/analyze_diff-classify
+++ observed/analyze_diff-classify
  {
-   "description": "Classify git diff change type Use when native `git diff` / `grep` / static analysis is wrong because you want LLM-graded change classification, reviewer recommendations, or risk scoring. For literal-text inspection, native tools are fine.",
+   "description": "Heuristically classify a git diff from changed lines, file paths, and a single-commit subject when available. Use when you need a coarse change category; inspect the diff to confirm.",
    "inputSchema": {
      "properties": {
        "ref": {
--- pinned/analyze_diff-reviewers
+++ observed/analyze_diff-reviewers
  {
-   "description": "Suggest reviewers for git diff changes Use when native `git diff` / `grep` / static analysis is wrong because you want LLM-graded change classification, reviewer recommendations, or risk scoring. For literal-text inspection, native tools are fine.",
+   "description": "Suggest reviewer roles from git diff paths and risk; does not identify people or read CODEOWNERS. Use when triaging expertise for a change, then consult CODEOWNERS to assign people.",
    "inputSchema": {
      "properties": {
        "limit": {
--- pinned/analyze_diff-risk
+++ observed/analyze_diff-risk
  {
-   "description": "Quick risk assessment for git diff Use when native `git diff` / `grep` / static analysis is wrong because you want LLM-graded change classification, reviewer recommendations, or risk scoring. For literal-text inspection, native tools are fine.",
+   "description": "Heuristically assess git diff risk from changed file paths, sizes, and status. Use when triaging which files merit closer human review; this is not a security guarantee.",
    "inputSchema": {
      "properties": {
        "ref": {
--- pinned/analyze_diff-stats
+++ observed/analyze_diff-stats
  {
-   "description": "Get quick statistics for git diff Use when native `git diff` / `grep` / static analysis is wrong because you want LLM-graded change classification, reviewer recommendations, or risk scoring. For literal-text inspection, native tools are fine.",
+   "description": "Count changed files, additions, and deletions in a git diff. Use when you need a quick size summary before inspecting the full patch.",
    "inputSchema": {
      "properties": {
        "ref": {
--- pinned/analyze_file-risk
+++ observed/analyze_file-risk
  {
-   "description": "Assess risk for a specific file change Use when native `git diff` / `grep` / static analysis is wrong because you want LLM-graded change classification, reviewer recommendations, or risk scoring. For literal-text inspection, native tools are fine.",
+   "description": "Heuristically assess risk for a file path and optional change metadata. Use when triaging a changed file for focused review; inspect the source for final judgment.",
    "inputSchema": {
      "properties": {
        "additions": {
--- pinned/memory_search
+++ observed/memory_search
  {
    "description": "Find stored memories by meaning (vector similarity), not by literal text — finds \"JWT auth pattern\" when you query \"token-based login flow\". Use when native Grep is wrong because Grep matches characters and you need to find conceptually-related entries across past sessions. Returns top-k with similarity: raw retrieval relevance, which may include lexical scoring and is not guaranteed to be cosine similarity. With smart=true, similarity is the highest raw score across query variants; rankingScore is the composite relevance score used by the ranking pipeline, not cosine similarity, probability, or confidence. Diversity can change result order.",
    "inputSchema": {
-         "description": "Minimum raw retrieval relevance 0-1 for candidate admission, applied per query before SmartRetrieval ranking; not a floor on rankingScore (default: 0.3)",
+         "description": "Minimum raw retrieval relevance 0-1 for candidate admission, applied per query before SmartRetrieval ranking; not a floor on rankingScore (default: 0.2; calibrated for the bundled embedding model, pass 0 to see every match)",
          "type": "number"
        }
      },
--- pinned/neural_predict
+++ observed/neural_predict
  {
    "description": "Make predictions using a neural model Use when nothing native trains on your workflow — Claude Code has no learning loop. Use to train SONA/MoE/EWC patterns from successful task outcomes; query via neural_predict before spawning agents. Off-path for one-shot work.",
    "inputSchema": {
+       "minSimilarity": {
+         "description": "Minimum cosine similarity for a stored pattern to count as a match (default 0.5). A softmax over a single candidate is always 1.0, so without a floor any input matched the only stored pattern with confidence 1",
+         "type": "number"
+       },
        "modelId": {
          "description": "Model ID to use",
          "type": "string"
--- pinned/workflow_create
+++ observed/workflow_create
  {
    "description": "Create a new workflow Use when native TodoWrite + sequential Bash is wrong because the work has a real dependency graph that needs persistence, retry policy, pause/resume, and step-output binding across LLM-driven steps. For a single linear todo list, native TodoWrite is fine.",
    "inputSchema": {
+               "description": "Condition steps require config.when; parallel and loop steps are not yet supported",
                "type": "object"
              },
              "name": {
-                 "parallel",
-                 "loop",
                  "wait"
                ],
                "type": "string"

Changed 2026-10-11 12:56 UTC

1 description rewritten, 1 schema or annotation change with the description left byte-identical.

--- pinned/task_update
+++ observed/task_update
  {
    "description": "Update task status or progress Use when native TodoWrite is wrong because you need cross-session task persistence, agent assignment, dependency tracking, or completion analytics in the .swarm/memory.db. For in-session checklists native TodoWrite is simpler and faster.",
    "inputSchema": {
-         "description": "New status",
+         "description": "New status: pending, in_progress, completed, failed or cancelled",
          "type": "string"
        },
        "taskId": {
--- pinned/workflow_validate
+++ observed/workflow_validate
  {
-   "description": "Structurally validate a workflow definition file (JSON) — checks it has a steps/stages/tasks array and that each step names an agent. Use when native Read is wrong because you want a parsed, structured pass/fail with error/warning lists and step/agent counts rather than eyeballing the file. For just reading the file, native Read is fine. (Basic checks today — a full workflow-schema validator is a tracked follow-up.)",
+   "description": "Structurally validate a workflow definition file (JSON) — checks it has a steps/stages/tasks array and that task steps resolve an agent. Use when native Read is wrong because you want a parsed, structured pass/fail with error/warning lists and step/agent counts rather than eyeballing the file. For just reading the file, native Read is fine. (Basic checks today — a full workflow-schema validator is a tracked follow-up.)",
    "inputSchema": {
      "properties": {
        "file": {

Changed 2026-10-09 13:33 UTC

1 schema or annotation change with the description left byte-identical.

--- pinned/session_save
+++ observed/session_save
  {
    "description": "Save current session state Use when native conversation memory is wrong because you need durable cross-session state — restoring agent definitions, swarm topology, memory store, breaker history. For in-session continuation only, no tool needed. Pair with session_save before exiting and session_restore on resume.",
    "inputSchema": {
+         "default": true,
          "description": "Include agents in session",
          "type": "boolean"
        },
+         "default": true,
          "description": "Include memory in session",
          "type": "boolean"
        },
+         "default": true,
          "description": "Include tasks in session",
          "type": "boolean"
        },

Changed 2026-10-08 13:45 UTC

9 schema or annotation changes with the description left byte-identical.

--- pinned/hive-mind_broadcast
+++ observed/hive-mind_broadcast
  {
    "description": "Broadcast message to all workers Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.",
    "inputSchema": {
+       "bootstrapSecret": {
+         "description": "Remote/HTTP callers only: operator secret (alternative to hiveToken). See ADR-476.",
+         "type": "string"
+       },
        "fromId": {
          "description": "Sender agent ID",
          "type": "string"
+       "hiveToken": {
+         "description": "Remote/HTTP callers only: hive capability token (read from the server, never returned by tools). Local stdio/CLI callers omit it. See ADR-476.",
+         "type": "string"
+       },
        "message": {
          "description": "Message to broadcast",
          "type": "string"
--- pinned/hive-mind_consensus
+++ observed/hive-mind_consensus
  {
    "description": "Propose or vote on consensus with BFT, Raft, or Quorum strategies Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.",
    "inputSchema": {
+       "bootstrapSecret": {
+         "description": "Remote/HTTP callers only: operator secret (alternative to hiveToken). See ADR-476.",
+         "type": "string"
+       },
        "hiveToken": {
-         "description": "Capability token minted by hive-mind_init (required to vote)",
+         "description": "Remote/HTTP callers only: hive capability token (read from the server, never returned by tools). Local stdio/CLI callers omit it. See ADR-476.",
          "type": "string"
        },
        "proposalId": {
--- pinned/hive-mind_init
+++ observed/hive-mind_init
  {
    "description": "Initialize the hive-mind collective Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.",
    "inputSchema": {
+       "bootstrapSecret": {
+         "description": "Operator secret (RUFLO_HIVE_BOOTSTRAP_SECRET or .claude-flow/hive-mind/bootstrap.secret). Only needed by remote/HTTP callers; local stdio/CLI callers omit it. See ADR-476.",
+         "type": "string"
+       },
        "consensus": {
          "description": "Consensus strategy. Default: raft (anti-drift). Use byzantine for f<n/3 fault tolerance.",
          "enum": [
--- pinned/hive-mind_join
+++ observed/hive-mind_join
  {
    "description": "Join an agent to the hive-mind Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.",
    "inputSchema": {
+       "bootstrapSecret": {
+         "description": "Remote/HTTP callers only: operator secret (alternative to hiveToken). See ADR-476.",
+         "type": "string"
+       },
        "hiveToken": {
-         "description": "Capability token minted by hive-mind_init",
+         "description": "Remote/HTTP callers only: hive capability token (read from the server, never returned by tools). Local stdio/CLI callers omit it. See ADR-476.",
          "type": "string"
        },
        "role": {
-       "agentId",
-       "hiveToken"
+       "agentId"
      ],
      "type": "object"
    },
--- pinned/hive-mind_leave
+++ observed/hive-mind_leave
  {
    "description": "Remove an agent from the hive-mind Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.",
    "inputSchema": {
+       "bootstrapSecret": {
+         "description": "Remote/HTTP callers only: operator secret (alternative to hiveToken). See ADR-476.",
+         "type": "string"
+       },
        "hiveToken": {
-         "description": "Capability token minted by hive-mind_init",
+         "description": "Remote/HTTP callers only: hive capability token (read from the server, never returned by tools). Local stdio/CLI callers omit it. See ADR-476.",
          "type": "string"
        }
      },
-       "agentId",
-       "hiveToken"
+       "agentId"
      ],
      "type": "object"
    },
--- pinned/hive-mind_memory
+++ observed/hive-mind_memory
  {
    "description": "Access hive shared memory Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.",
    "inputSchema": {
+       "bootstrapSecret": {
+         "description": "Remote/HTTP callers only: operator secret (alternative to hiveToken). See ADR-476.",
+         "type": "string"
+       },
+       "hiveToken": {
+         "description": "Remote/HTTP callers only: hive capability token (read from the server, never returned by tools). Local stdio/CLI callers omit it. See ADR-476.",
+         "type": "string"
+       },
        "key": {
          "description": "Memory key",
          "type": "string"
--- pinned/hive-mind_optimize-memory
+++ observed/hive-mind_optimize-memory
  {
    "description": "Compact the hive-mind shared-memory store (drops null/empty keys) and report before/after pattern counts. Use when native conversation memory is wrong because you need the queen-led collective's persisted shared state cleaned up between phases. For one-shot scratch state, no tool needed. (Pattern-quality consolidation is delegated to the intelligence pipeline — this only does the cheap structural pass for now.)",
    "inputSchema": {
+       "bootstrapSecret": {
+         "description": "Remote/HTTP callers only: operator secret (alternative to hiveToken). See ADR-476.",
+         "type": "string"
+       },
+       "hiveToken": {
+         "description": "Remote/HTTP callers only: hive capability token (read from the server, never returned by tools). Local stdio/CLI callers omit it. See ADR-476.",
+         "type": "string"
+       },
        "qualityThreshold": {
          "description": "Quality threshold for pattern retention (advisory — not enforced yet)",
          "type": "number"
--- pinned/hive-mind_shutdown
+++ observed/hive-mind_shutdown
  {
    "description": "Shutdown the hive-mind and terminate all workers Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.",
    "inputSchema": {
+       "bootstrapSecret": {
+         "description": "Remote/HTTP callers only: operator secret (alternative to hiveToken). See ADR-476.",
+         "type": "string"
+       },
        "force": {
          "default": false,
          "description": "Force immediate shutdown",
+       },
+       "hiveToken": {
+         "description": "Remote/HTTP callers only: hive capability token (read from the server, never returned by tools). Local stdio/CLI callers omit it. See ADR-476.",
+         "type": "string"
        }
      },
      "type": "object"
--- pinned/hive-mind_spawn
+++ observed/hive-mind_spawn
  {
    "description": "Spawn workers and automatically join them to the hive-mind (combines agent/spawn + hive-mind/join) Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.",
    "inputSchema": {
+       "bootstrapSecret": {
+         "description": "Remote/HTTP callers only: operator secret (alternative to hiveToken). See ADR-476.",
+         "type": "string"
+       },
        "count": {
          "default": 1,
          "description": "Number of workers to spawn (default: 1)",
+       "hiveToken": {
+         "description": "Remote/HTTP callers only: hive capability token (read from the server, never returned by tools). Local stdio/CLI callers omit it. See ADR-476.",
+         "type": "string"
+       },
        "prefix": {
          "default": "hive-worker",
          "description": "Prefix for worker IDs",

Changed 2026-10-05 14:46 UTC

4 descriptions rewritten, 12 schema or annotation changes with the description left byte-identical, 25 tools added.

--- pinned/agentdb_consolidate
+++ observed/agentdb_consolidate
  {
-   "description": "Run memory consolidation to promote entries across tiers and compress old data Use when generic memory_* tools are wrong because you need AgentDB-specific controllers (HNSW vector search, hierarchical tiers, causal-graph links, pattern store/recall, RaBitQ quantization). For simple key-value persistence, memory_store/memory_retrieve are simpler. For unrelated file work, native Read/Write are fine.",
+   "description": "Request memory consolidation. Use when checking whether AgentDB can consolidate retained memories; native file edits cannot perform controller consolidation. Currently returns unsupported when the installed controller is a no-op stub; no entries are promoted or compressed in that case.",
    "inputSchema": {
-     "properties": {
-       "maxEntries": {
-         "description": "Maximum entries to consolidate (optional)",
-         "type": "number"
-       },
-       "minAge": {
-         "description": "Minimum age in hours since store (optional)",
-         "type": "number"
-       }
-     },
+     "properties": {},
      "type": "object"
    },
    "name": "agentdb_consolidate"
--- pinned/agentdb_feedback
+++ observed/agentdb_feedback
  {
    "description": "Record task feedback for learning via LearningSystem + ReasoningBank controllers Use when generic memory_* tools are wrong because you need AgentDB-specific controllers (HNSW vector search, hierarchical tiers, causal-graph links, pattern store/recall, RaBitQ quantization). For simple key-value persistence, memory_store/memory_retrieve are simpler. For unrelated file work, native Read/Write are fine.",
    "inputSchema": {
+       "patterns": {
+         "description": "Learned patterns to retain; successful tasks with quality >= 0.9 may create reusable skills",
+         "items": {
+           "maxLength": 10000,
+           "minLength": 1,
+           "type": "string"
+         },
+         "maxItems": 100,
+         "type": "array"
+       },
        "quality": {
          "description": "Quality score (0-1)",
          "type": "number"
--- pinned/agentdb_graph-query
+++ observed/agentdb_graph-query
  {
-   "description": "Unified graph traversal across the knowledge graph (ADR-130). Dispatches to the most capable backend: graph-node native for k-hop, sql.js CTE for fallback, HNSW cosine for semantic, ruflo-graph-intelligence PageRank for pagerank mode. Use when you need structured graph traversal beyond flat memory search.",
+   "description": "Unified graph traversal across the knowledge graph (ADR-130). K-hop queries read committed graph_edges relationships through SQL; a separately populated native graph is not evidence of retained-history coverage. Inspect appliedDepth/truncated because SQL is bounded at 3 hops. maxNodesVisited bounds returned rows, not traversal work or elapsed time. Semantic and PageRank modes use their own backends. Use when you need relationship traversal beyond flat memory search.",
    "inputSchema": {
      "properties": {
        "complexityBudget": {
-         "description": "Hop depth for k-hop mode (default 2, max 5)",
+         "description": "Requested k-hop depth (default 2, max 5); SQL responses report appliedDepth and truncated when limited to 3",
          "type": "number"
        },
        "mode": {

+ tool added: federation_bbs_identity

+ tool added: federation_bbs_peer_add

+ tool added: federation_bbs_peers

+ tool added: federation_bbs_serve

+ tool added: federation_bbs_sync

--- pinned/hive-mind_consensus
+++ observed/hive-mind_consensus
  {
    "description": "Propose or vote on consensus with BFT, Raft, or Quorum strategies Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.",
    "inputSchema": {
+       "hiveToken": {
+         "description": "Capability token minted by hive-mind_init (required to vote)",
+         "type": "string"
+       },
        "proposalId": {
          "description": "Proposal ID (for vote/status)",
          "type": "string"
--- pinned/hive-mind_join
+++ observed/hive-mind_join
  {
    "description": "Join an agent to the hive-mind Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.",
    "inputSchema": {
+       "hiveToken": {
+         "description": "Capability token minted by hive-mind_init",
+         "type": "string"
+       },
        "role": {
          "description": "Agent role in hive",
          "enum": [
-       "agentId"
+       "agentId",
+       "hiveToken"
      ],
      "type": "object"
    },
--- pinned/hive-mind_leave
+++ observed/hive-mind_leave
  {
    "description": "Remove an agent from the hive-mind Use when native Task is wrong because you need queen-led collective intelligence — Byzantine-FT consensus, broadcast across many worker agents, shared memory with bounded conflict. For a single subagent, native Task is fine. Pair with swarm_init first to set topology.",
    "inputSchema": {
+       },
+       "hiveToken": {
+         "description": "Capability token minted by hive-mind_init",
+         "type": "string"
        }
      },
      "required": [
-       "agentId"
+       "agentId",
+       "hiveToken"
      ],
      "type": "object"
    },
--- pinned/hooks_intelligence_trajectory-step
+++ observed/hooks_intelligence_trajectory-step
  {
    "description": "Record step in trajectory for reinforcement learning Use when native Bash hooks (via Claude Code's settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.",
    "inputSchema": {
+         "maximum": 1,
+         "minimum": 0,
          "type": "number"
        },
        "result": {
--- pinned/hooks_post-command
+++ observed/hooks_post-command
  {
    "description": "Record command execution outcome Use when native Bash hooks (via Claude Code's settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.",
    "inputSchema": {
+       },
+       "success": {
+         "description": "Explicit execution outcome; false records a failure even without a nonzero exit code",
+         "type": "boolean"
+       },
+       "ttl": {
+         "description": "Command history lifetime in seconds (default: 30 days)",
+         "maximum": 2147483647,
+         "minimum": 1,
+         "type": "integer"
        }
      },
      "required": [
--- pinned/hooks_post-task
+++ observed/hooks_post-task
  {
    "description": "Record task completion for learning Use when native Bash hooks (via Claude Code's settings.json) are wrong because you need Ruflo-side state — pattern persistence, neural training signals, model-routing learning, cost tracking, audit chain. For one-off shell commands, plain Bash hooks are fine.",
    "inputSchema": {
+       "patterns": {
+         "description": "Learned patterns to retain; successful tasks with quality >= 0.9 may create reusable skills",
+         "items": {
+           "maxLength": 10000,
+           "minLength": 1,
+           "type": "string"
+         },
+         "maxItems": 100,
+         "type": "array"
+       },
        "quality": {
          "description": "Quality score (0-1)",
+         "maximum": 1,
+         "minimum": 0,
          "type": "number"
        },
        "storeDecisions": {
--- pinned/memory_import
+++ observed/memory_import
  {
    "description": "Import memory entries from a JSON export file (produced by memory_export) into .swarm/memory.db, re-embedding values. Use when native Read is wrong because the data must be re-stored as memory rows (with new embeddings), not just read. For importing Claude Code's own memory files use memory_import_claude. Pair with memory_export on the source.",
    "inputSchema": {
+       "dbPath": {
+         "description": "Database file to import into (defaults to the MCP memory store)",
+         "type": "string"
+       },
        "inputPath": {
          "description": "Path to the JSON export file",
          "type": "string"
--- pinned/memory_search
+++ observed/memory_search
  {
-   "description": "Find stored memories by meaning (vector similarity), not by literal text — finds \"JWT auth pattern\" when you query \"token-based login flow\". Use when native Grep is wrong because Grep matches characters and you need to find conceptually-related entries across past sessions. Backed by HNSW index over ONNX embeddings; returns top-k with similarity scores. Pair with smart=true for query expansion + MMR diversity.",
+   "description": "Find stored memories by meaning (vector similarity), not by literal text — finds \"JWT auth pattern\" when you query \"token-based login flow\". Use when native Grep is wrong because Grep matches characters and you need to find conceptually-related entries across past sessions. Returns top-k with similarity: raw retrieval relevance, which may include lexical scoring and is not guaranteed to be cosine similarity. With smart=true, similarity is the highest raw score across query variants; rankingScore is the composite relevance score used by the ranking pipeline, not cosine similarity, probability, or confidence. Diversity can change result order.",
    "inputSchema": {
      "properties": {
        "limit": {
-         "description": "Enable SmartRetrieval pipeline — query expansion, RRF fusion, recency boost, MMR diversity (default: false)",
+         "description": "Enable SmartRetrieval — query expansion, RRF fusion, recency boost, MMR diversity; preserves raw similarity and adds rankingScore (default: false)",
          "type": "boolean"
        },
        "threshold": {
-         "description": "Minimum similarity threshold 0-1 (default: 0.3)",
+         "description": "Minimum raw retrieval relevance 0-1 for candidate admission, applied per query before SmartRetrieval ranking; not a floor on rankingScore (default: 0.3)",
          "type": "number"
        }
      },
--- pinned/memory_stats
+++ observed/memory_stats
  {
    "description": "Get memory storage statistics including HNSW index status Use when native Read/Write is wrong because you need (a) cross-session retrieval by semantic similarity (vector embeddings) not by file path, (b) namespacing across projects without managing directory layout, or (c) the .swarm/memory.db audit trail. For one-shot file I/O, native Read/Write is fine.",
    "inputSchema": {
-     "properties": {},
+     "properties": {
+       "dbPath": {
+         "description": "Database file to inspect; omitted uses the MCP store default",
+         "type": "string"
+       }
+     },
      "type": "object"
    },
    "name": "memory_stats"

+ tool added: mission_create

+ tool added: mission_events

+ tool added: mission_get

+ tool added: mission_plan

+ tool added: mission_request_action

+ tool added: seraphina_guidance

--- pinned/session_export
+++ observed/session_export
  {
    "description": "Export a saved session (agents, tasks, memory snapshot) to a JSON file and/or return the payload. Use when native Write is wrong because the data is the structured session record (not a freeform file) and you want it serialized consistently for transfer/backup. For writing arbitrary content, native Write is fine. Pair with session_import on the other end.",
    "inputSchema": {
-         "description": "Include the memory snapshot (advisory — already in the saved record)",
+         "description": "Include the memory snapshot (default true)",
          "type": "boolean"
        },
        "outputPath": {
--- pinned/session_import
+++ observed/session_import
  {
-   "description": "Import a session JSON file (produced by session_export) into the local session store and optionally activate it. Use when native Read is wrong because the file is a structured session record that must be re-registered (new id, stats recomputed) rather than just read. For reading the file, native Read is fine. Pair with session_export on the source.",
+   "description": "Import a session (produced by session_export) into the local session store and optionally activate it. Pass either inputPath (a session JSON file) or data (the session record itself). Use when native Read is wrong because the file is a structured session record that must be re-registered (new id, stats recomputed) rather than just read. For reading the file, native Read is fine. Pair with session_export on the source.",
    "inputSchema": {
      "properties": {
        "activate": {
-         "description": "Make the imported session the current one (advisory)",
+         "description": "Restore the imported session into the active stores",
          "type": "boolean"
        },
+       "data": {
+         "description": "The session record itself, as written by session_export (or pass inputPath)",
+         "type": "object"
+       },
        "inputPath": {
-         "description": "Path to the session JSON file to import",
+         "description": "Path to the session JSON file to import (or pass data)",
          "type": "string"
        },
        "name": {
-     "required": [
-       "inputPath"
-     ],
      "type": "object"
    },
    "name": "session_import"
--- pinned/session_restore
+++ observed/session_restore
  {
    "description": "Restore a saved session Use when native conversation memory is wrong because you need durable cross-session state — restoring agent definitions, swarm topology, memory store, breaker history. For in-session continuation only, no tool needed. Pair with session_save before exiting and session_restore on resume.",
    "inputSchema": {
+       "restoreAgents": {
+         "description": "Restore agents (default true)",
+         "type": "boolean"
+       },
+       "restoreMemory": {
+         "description": "Restore memory (default true)",
+         "type": "boolean"
+       },
+       "restoreTasks": {
+         "description": "Restore tasks (default true)",
+         "type": "boolean"
+       },
        "sessionId": {
          "description": "Session ID to restore",
          "type": "string"
--- pinned/task_update
+++ observed/task_update
  {
    "description": "Update task status or progress Use when native TodoWrite is wrong because you need cross-session task persistence, agent assignment, dependency tracking, or completion analytics in the .swarm/memory.db. For in-session checklists native TodoWrite is simpler and faster.",
    "inputSchema": {
+       "result": {
+         "description": "Result data (e.g. the failure of a failed task)",
+         "type": "object"
+       },
        "status": {
          "description": "New status",
          "type": "string"

+ tool added: x_federation_admit

+ tool added: x_federation_channel_accept

+ tool added: x_federation_channel_create

+ tool added: x_federation_channel_grant

+ tool added: x_federation_channel_list

+ tool added: x_federation_channel_publish

+ tool added: x_federation_channel_read

+ tool added: x_federation_claims

+ tool added: x_federation_invite_mint

+ tool added: x_federation_join

+ tool added: x_federation_publish

+ tool added: x_federation_registry

+ tool added: x_federation_roster

+ tool added: x_federation_sync

Current tools

Show all 358 tool fingerprints
agent_execute
f1fffd296a18bcac
agent_health
00c4c48daf4bd9cd
agent_list
3449e1b1f9b08ea0
agent_logs
e5157232a2661ab3
agent_pool
304c34e0fe1d12f0
agent_spawn
47853c8f959fd532
agent_status
cb7dab715c679d80
agent_terminate
c578667c7cef9897
agent_update
e6d2e98ad4ad6852
agentdb_batch
569f06c4778f6e12
agentdb_causal-edge
4c0625fde99107fd
agentdb_causal-edge-delete
b36a6efac220ac7a
agentdb_causal-node-delete
a27d12f64ba7fc06
agentdb_consolidate
0c23943625b3a37f
agentdb_context-synthesize
47052287acf1df9b
agentdb_controllers
c158217c9fca6ba1
agentdb_feedback
76b4e79148933c63
agentdb_graph-pathfinder
900340fe42d4b54d
agentdb_graph-query
b87ec47f43e423ce
agentdb_health
81cdf03e13957019
agentdb_hierarchical-delete
09b1846e763124b7
agentdb_hierarchical-recall
130096faba5d1ae2
agentdb_hierarchical-store
af02fe8d55b76dd4
agentdb_pattern-search
b1f3f9967ad69695
agentdb_pattern-store
cf491d919923bbe2
agentdb_route
6e25e177be1ab81c
agentdb_semantic-route
c312519a98349a98
agentdb_session-end
0539bf836afc3b8b
agentdb_session-start
482175d27b83e5b6
agenticow_branch
7753636810e12e3e
agenticow_checkpoint
238ba2de57f7ab18
agenticow_diff
e4bb6a823e493ff2
agenticow_ingest
5a0948ac16f45833
agenticow_lineage
b98093f87072864d
agenticow_promote
bc6c951dc4f601f2
agenticow_query
baa8fdab694dca2f
agenticow_rollback
17ad5f6f15cae5c4
agenticow_speculate
9c1387c9435e456d
agenticow_status
828799499e3f8753
aidefence_analyze
741df50768c6efe6
aidefence_has_pii
9d76933328bdf23b
aidefence_is_safe
2eef16ae1839c1d4
aidefence_learn
4aec06c4e66711b6
aidefence_scan
5a4ba7e3acc54521
aidefence_stats
421e0ad68d0b00e7
analyze_diff
902251670477a8f1
analyze_diff-classify
a8e7f41563e6d28e
analyze_diff-reviewers
9217279e40fb3529
analyze_diff-risk
34fe190320c9be2c
analyze_diff-stats
4662491322a6ce1c
analyze_file-risk
f8473c1ff9c98107
autopilot_config
8d21591030bf638b
autopilot_disable
1df1f4cd1f5d1253
autopilot_enable
c8ceaed52666210b
autopilot_history
bb9f859fff7d8577
autopilot_learn
a505a674b2837131
autopilot_log
7d65ff0a4002fa6d
autopilot_predict
f4088b10347c0d6b
autopilot_progress
f6de25f0475c5790
autopilot_reset
1bd1813408b30505
autopilot_status
db7b78224ff72600
browser_act
2ddaacefcfe2a2df
browser_cookie_use
7407d86a9fc3afee
browser_session_end
d3aaa69f677b84cc
browser_session_record
8d1b21a00000037f
browser_session_replay
dfb992fe1f4d5c55
browser_template_apply
810cd288c762e330
business_pod_route_backend
0005f96ed9a48aad
business_pod_validate
5471305b481a8cef
claims_accept-handoff
b7ccf955574076f2
claims_board
416ff459d2cd5c16
claims_claim
3d07b0d7aec20ad8
claims_handoff
a77c3180992d7c88
claims_list
59e3008b49ca26e2
claims_load
3814b181f9263ca1
claims_mark-stealable
a7b9110c778a7da9
claims_rebalance
f54a656dcf8304ef
claims_release
bd4abef3c4d884ff
claims_status
b32effbaa439312e
claims_steal
4993b2d9f361eadf
claims_stealable
d270240f73ff443f
config_export
c3809659e60e75b8
config_get
eccac0b977ff2ab5
config_import
42a03c327d7d4f14
config_list
4dc5b75c95e434af
config_reset
4c35583bf4d2b530
config_set
b9202a023835527e
coordination_consensus
2c721f5231a0e3b4
coordination_load_balance
a95d3fc422dacee8
coordination_metrics
56864e94ab520d9c
coordination_node
f2310588d344c512
coordination_orchestrate
ed8926aceb9b9f0e
coordination_sync
bf1acdb2dff58431
coordination_topology
da4b4ef8d6fb712e
daa_agent_adapt
8cd18975ca548ab7
daa_agent_create
bda12db1a0cf9fcc
daa_cognitive_pattern
96b56795e7047741
daa_knowledge_share
79ae99c295379e62
daa_learning_status
9c33d9122c0ebd1a
daa_performance_metrics
694a14515a88f8ac
daa_workflow_create
c5bdf4356190af13
daa_workflow_execute
d5984b1c186493f6
embeddings_compare
1ac9bab32aee6850
embeddings_generate
0130780176155031
embeddings_hyperbolic
8290026b3e28b011
embeddings_init
9abebff4700155a7
embeddings_neural
42ed8174ee54d8de
embeddings_rabitq_build
017697158c0e6d2c
embeddings_rabitq_search
6e0dd883c1d99e14
embeddings_rabitq_status
e166d937b4129ad2
embeddings_search
4b1da4d8113a4846
embeddings_status
27588a6b1224c2b2
federation_bbs_human_join
d82b9fb1894da023
federation_bbs_identity
b748bea2bb76b721
federation_bbs_peer_add
7369ad1e91a761dc
federation_bbs_peers
d145299271790cfe
federation_bbs_publish
9cf3a9f52da07d18
federation_bbs_register
3e4f7c32747082ab
federation_bbs_serve
7e0dfa10f204176a
federation_bbs_sync
25843a5d17418673
federation_bbs_watch
8e3f05b676415a84
github_issue_track
8ae0c63716a5ae63
github_metrics
ff192126b23ad514
github_pr_manage
006a42fc5eec60a5
github_repo_analyze
81e2b26ec23dd462
github_workflow
bbf8236fa56613c9
guidance_brain
d953228ba5504844
guidance_capabilities
e85c01648c5bc820
guidance_discover
3268204287b0b3a8
guidance_quickref
5197fb4b48c543f9
guidance_recommend
ebfbe4b208249aab
guidance_workflow
ff95f9979b2ca298
hive-mind_broadcast
4456ffdcb85025e3
hive-mind_consensus
91d5919413e6e5f9
hive-mind_init
1e666c6340fa473d
hive-mind_join
e90264d87e0864a6
hive-mind_leave
e8113c8693964f36
hive-mind_memory
22748b9aaac26fb6
hive-mind_optimize-memory
200a952fcd0e49a7
hive-mind_shutdown
f1939d60c06e27ac
hive-mind_spawn
f72eba2cdf211c71
hive-mind_status
4507c47386044c3d
hooks_build-agents
f0056541a0338c94
hooks_codemod
5109a05657e5b3ff
hooks_coverage-gaps
62071f548e45c5d1
hooks_coverage-route
b44f02b5f0f6ccd7
hooks_coverage-suggest
064b26ed442d74c7
hooks_explain
e35f837a14447bf3
hooks_init
a763c1dbc699126c
hooks_intelligence
8a771e64135ced47
hooks_intelligence-reset
8ad7e2fcc0740257
hooks_intelligence_attention
592f71c47bec2b7e
hooks_intelligence_learn
f7248794d3e12acb
hooks_intelligence_pattern-search
3d81cf176addc3a2
hooks_intelligence_pattern-store
a900ae5968602398
hooks_intelligence_stats
ec8fadf19dc2d068
hooks_intelligence_trajectory-end
f89de72f92d82585
hooks_intelligence_trajectory-start
a5f23a458cfb2c0b
hooks_intelligence_trajectory-step
735fd6a40ced2cff
hooks_intelligence_unified-stats
acef04127418c904
hooks_list
0cf73f1fbecc6084
hooks_metrics
aae1dff4139c3faf
hooks_model-outcome
1c7fc8e5bca57158
hooks_model-route
33ec8c0306e199bc
hooks_model-stats
223687c37610e55e
hooks_model-verify
12962fa8827706c8
hooks_notify
bfefecff0a621083
hooks_post-command
af3a30c12bc5248a
hooks_post-edit
390acf59f0195651
hooks_post-task
65061b2826d90ab1
hooks_pre-command
9112fca1377f9790
hooks_pre-edit
44b38b06be8fd9cb
hooks_pre-task
b7f975fd9140c8d6
hooks_pretrain
90a8a0fedb4f536f
hooks_route
ac47b418d4061aae
hooks_session-end
bb9070ed9ff474d2
hooks_session-restore
198bbc7298acd4b5
hooks_session-start
c9a09af7ddb9a64b
hooks_task-completed
7f3b919f50cdba8e
hooks_teammate-idle
2fdf4b9479fe6247
hooks_transfer
da29d22d713247a2
hooks_worker-cancel
f697afdcdc6ce219
hooks_worker-detect
e91d3ca66dae007b
hooks_worker-dispatch
23278aa03aa8f03a
hooks_worker-list
38ff8e8bb786d894
hooks_worker-status
946053e858fd58fb
http_fetch
49dda0fc62af39b8
managed_agent_create
8ed42af2c9b2141f
managed_agent_events
e24e7f94be83f7d3
managed_agent_list
44cd2048389fcff8
managed_agent_prompt
4b6e07b134daac57
managed_agent_status
3d79f31f02d4f071
managed_agent_terminate
7075006cfc961a06
mcp_start
0a1db2ba7b68a9a7
mcp_status
ff5860ec510ed2ae
mcp_stop
6c127e3e7a085623
memory_bridge_status
982430194597e32b
memory_cleanup
45f23983e634d254
memory_compress
92e3977e5e11283d
memory_delete
eddf8d3e8bf02241
memory_detailed-stats
dcfab0f25b1e6726
memory_export
676ad5cef1a0f47e
memory_import
fa6e589a5b58ceaa
memory_import_claude
c092bb108c8bda17
memory_list
7d5203d39247d706
memory_migrate
da88cd110c85c774
memory_retrieve
6e1811123bc016f2
memory_search
6fade3782691e2f2
memory_search_unified
47974d9d07dd2e02
memory_stats
fe7b95f115676d36
memory_store
2483d7018a236f9e
metaharness_audit_list
5eba7264711a3313
metaharness_audit_trend
877dbcb4f2daa35c
metaharness_bench
9dcf33321f6a41cb
metaharness_drift_from_history
c8c2f43be5d1becd
metaharness_evolve
7ca8bef0e2a5511d
metaharness_flywheel
9f8d2c6e9b808e0b
metaharness_genome
b6f43621164177d4
metaharness_gepa
ce45f09ce26c55f5
metaharness_learn
a7406ba552dcab10
metaharness_mcp_scan
347d289f4417e169
metaharness_oia_audit
00d217df77a7d74e
metaharness_redblue
d2d9b783d5f7facd
metaharness_score
0121545fe93d12c6
metaharness_security_bench
e32bfa68c10ad984
metaharness_similarity
4a0eb3e0ae678661
metaharness_threat_model
bc38e6052b96772b
mission_create
0707379778ccd845
mission_events
c4f5b5a8631a07dc
mission_get
a76faa04c1a64671
mission_plan
c24fd30bbff46516
mission_request_action
4560be6d595a2ac1
neural_compress
acb174f7760805c0
neural_optimize
3774a039edf4b314
neural_patterns
452ca6aaf6b41db2
neural_predict
a3827ab8c88bd1e2
neural_status
483e677c9ad07aec
neural_train
eaff8aa9c480fcce
performance_benchmark
b768278dbe731945
performance_bottleneck
88c7022c19666f19
performance_metrics
326638794609aab7
performance_optimize
dae3ec52ff5e6514
performance_profile
63edefd192687a11
performance_report
08d6e90369009e37
policy_evaluate
73b4732410f85670
policy_status
ccbf76606008fe20
progress_check
d3c4de10a552419b
progress_summary
5ef1fefd54ef4995
progress_sync
e61f0c0c22e059df
progress_watch
429a8d8d8661c3bd
ruvllm_chat_format
115f76dcf8cbf889
ruvllm_generate_config
88eb8d43cb0f105a
ruvllm_hnsw_add
5a021efa6f6c9321
ruvllm_hnsw_create
0138520abfeb1acb
ruvllm_hnsw_route
df95d9368d513705
ruvllm_microlora_adapt
de8196e9653d2c7c
ruvllm_microlora_create
6a9e0639c2717d6b
ruvllm_sona_adapt
527985bf0ae782a9
ruvllm_sona_create
16c2e9a45b90ce40
ruvllm_status
be399f28508fd60c
seraphina_guidance
6e462542a31d1cbf
session_current
cf716f6762f9ccc9
session_delete
221755eac4e7db32
session_export
eeaf67a8bfeb6836
session_import
1e701314d5a12b0c
session_info
29db23a8c49ac9f7
session_list
bf7c0ccd1723cfd8
session_restore
5a7fdd2d0b2e9f1f
session_save
35a720bebbc16ab0
swarm_health
d7af71b365fe1b2a
swarm_init
dcde976d408b7a18
swarm_pheromone_status
38d208f89fcd8315
swarm_pheromone_update
0a2035280a8ec4c1
swarm_shutdown
f15e3f36b76394bd
swarm_status
9fdf3fd5f643deed
system_health
4c66b8cc050a8f49
system_info
d700cd5cf7b1d954
system_metrics
2d3663171bd9b38d
system_reset
5409d5dcceb96f09
system_status
a3ee44c8a33ae5e5
task_assign
d00203fefc2dc1ef
task_cancel
4d72d6383389ee40
task_complete
497cc63a367a6225
task_create
2a38bd624bfe075c
task_list
535d9d23791c0b27
task_retry
b4fcac2e7dffce43
task_status
530d03f8773cb36f
task_summary
2016f5221b30457b
task_update
95ecb3275adef938
terminal_close
7d834984919b73bd
terminal_create
d5733fe10a08fc2f
terminal_execute
9bf66dbfac384e83
terminal_history
902561591bb1d824
terminal_list
dbcc2238f923fe30
transfer_detect-pii
489950ae82642322
transfer_ipfs-resolve
078bc92df16f6f18
transfer_plugin-featured
6b7a006cac32c219
transfer_plugin-info
1b5635eb2b9de9c7
transfer_plugin-official
65f2b4b031162a68
transfer_plugin-search
79525c08d7733512
transfer_store-download
a781fd09d76debf7
transfer_store-featured
063335f1d4d8a660
transfer_store-info
0b2ad0a5ba602d2f
transfer_store-search
b615653a3c09f1a1
transfer_store-trending
dd2ce7cda8bf785a
wasm_agent_compose
8efdd6b4a28a22ba
wasm_agent_create
4a67e5309f6b5f87
wasm_agent_export
3c1907a01fd3f898
wasm_agent_files
4191aea4c8b720ff
wasm_agent_is_stopped
7f62210e030e0551
wasm_agent_list
1346917b31d09488
wasm_agent_prompt
839cd9e8de53620a
wasm_agent_reset
efb967e0491084cc
wasm_agent_state
c0bd0ede92c26584
wasm_agent_terminate
35c084c6663dc01b
wasm_agent_todos
e67a41bbd6932d4e
wasm_agent_tool
9d3253e14e717957
wasm_agent_tools
a3baac2fcbe89202
wasm_agent_turn_count
13d8055444ad123e
wasm_gallery_active
eb8a01e24bbd38ae
wasm_gallery_add_custom
6ccc9ae744d77fb4
wasm_gallery_categories
9d6b5f5510c467ed
wasm_gallery_config
84d37c7996eb87be
wasm_gallery_configure
0626fc72809a69e9
wasm_gallery_create
c96b6fb89da2ff02
wasm_gallery_export
2eeac683d9142bab
wasm_gallery_import
e8978a92bd1c722d
wasm_gallery_list
812b3f0ae987895e
wasm_gallery_list_by_category
0acfc8b42a92caf0
wasm_gallery_load_rvf
e023c9012833a29a
wasm_gallery_remove_custom
b246d0f5c977765f
wasm_gallery_search
6f8985424421c200
workflow_cancel
84a3dab8c29f80f4
workflow_create
5c9cafd7a4e11de2
workflow_delete
bd7ac0d9640239da
workflow_execute
f495fab813ed2464
workflow_list
56df36ddd3361a5f
workflow_pause
ae31386f08397c4f
workflow_resume
a05859743cffc0de
workflow_run
9f3e6a7ded4eab35
workflow_status
af5c30643b2e2447
workflow_stop
642026d053de2110
workflow_template
c8dac2efa11b1497
workflow_validate
ef34634b3a837575
x_federation_admit
047fd7a64dcad164
x_federation_channel_accept
9716daf06d64606c
x_federation_channel_create
1daafd34d32b131c
x_federation_channel_grant
12f6cd7a4b89de6d
x_federation_channel_list
8d68969a53caecc9
x_federation_channel_publish
e9bbfc4fb427afe7
x_federation_channel_read
d3d08c1934715933
x_federation_claims
4e87535ab776fe5a
x_federation_invite_mint
800e5724f7ffe6e5
x_federation_join
c3239e82bd8e5730
x_federation_publish
e934951d0344fb02
x_federation_registry
7b666a13abd5f6c6
x_federation_roster
4809450732bcf949
x_federation_sync
82083aed2bb66d49

Watch this server yourself

If you run this server, put the proxy in front of it. It pins these exact fingerprints on first connect and stops the session if they move.

npx -y mcp-pin@0.2.3 -- <your ruflo command>

Or subscribe to this page's RSS feed to be told when it changes.

Badge

mcp-pin status badge for ruflo

The badge states one fact about time and nothing else. It never claims a server is safe.

[![mcp-pin](https://mcp-pin.gautamkhosla.com/badge/64e9436dfbd00fb5.svg)](https://mcp-pin.gautamkhosla.com/servers/64e9436dfbd00fb5.html)