Skip to main content
Glama

蛙 kaeru

kaeru is a cross-agent cognitive engine for LLM agents — a typed graph that agents think in, plus a recollection layer for long-term ideas and outcomes. Local-first for each agent, with an optional shared cloud tier so a whole team of agents and people build on one another's memory.

Designed for multi-session, multi-agent continuity: when an agent opens a project, it has full context of what was being thought about, can follow provenance chains, can consolidate outcomes into stable long-term knowledge, and can pull in what the rest of the team has shared.

Inspired by the LLM-wiki pattern (Karpathy, gist 442a6bf555914893e9891c11519de94f), the bi-temporal knowledge graph approach of Graphiti / Zep, the curator-driven knowledge engine of Cognee, and the reasoning-based hierarchical-summary navigation pattern from PageIndex. Two-tier design grounded in the hippocampus / cortex split.

Name: 蛙 (kaeru, "frog"; homophonic with 帰る "to return" and 変える "to change") — the agent that returns, recalls, and reshapes.

A kaeru vault rendered as a live knowledge galaxy by kaeru-viz

A kaeru vault rendered by kaeru-viz — each project a constellation of stars around its core, sized by memory layer, with ochre cross-project bridges, reasoning-chain replay, and a time-lapse of how the knowledge grew. Hover a node to trace its neighbours; click to pin them.

Overview

A kaeru vault rendered as a knowledge galaxy by kaeru-viz

kaeru is built around a typed property graph stored in CozoDB. Two tiers, biological analogy:

  • cognitive (operational / hippocampus) — high-velocity working graph where the agent actively thinks: episodes, scratch, drafts, hypotheses, experiments, audit events.

  • recollection (archival / cortex) — settled ideas, outcomes, summaries, references; mostly read.

Nodes and edges retain recorded assertion / retraction history, so earlier content stays inspectable after a change. There is one recorded-time axis; administrative metadata such as layer and visibility is labeled as current.

Per-initiative subgraphs through a junction-relation pattern: one substrate, many initiatives, multi-membership. An agent working on project A asks "what was I doing here last time?" and gets an answer scoped to A. The same node can belong to several initiatives at once.

kaeru is a facilitator, not an enforcer. The memory API exposes 35 named operations (context, search, read, claim, synthesise, history, lifecycle, …) as available tools. The agent and user choose when to invoke them; the daemon hints but doesn't block.

Related MCP server: Engram

Features

The shared API has 35 named tools: 16 frequent operations, ten local maintenance operations and nine optional cloud operations. MCP, HTTP and embedded Rig share this contract. See the API reference.

  • Two-tier graph — operational (cognitive / hippocampus) for active thinking; archival (recollection / cortex) for settled knowledge. lifecycle promotes across the boundary, preserving content and provenance.

  • Recorded history — native assertion / retraction history. read retrieves a full record or its state at recorded_at; history shows earlier versions. Changes preserve the previous assertions instead of deleting their history.

  • Per-initiative scoping + layered re-entry — one substrate, many projects. context restores a project's working set by recall layer and surfaces settled knowledge alongside open work. search reaches Cold / Frozen records too unless a layer filter excludes them.

  • Reasoning chains — trail saves a weighted route or an explicit ordered sequence with an agent-authored summary. Ordinary read includes saved reasoning and reports stale premises; include=["reasoning"] expands the members. A trail can be refreshed or extended after the graph changes.

  • Self-maintenance — reflect produces findings about integrity, unfinished work, staleness and sharing. The agent chooses what to apply; automatic hygiene separately maintains recall layers.

  • Role slots — initiative_manage(action="set_slot") gives an initiative one current pointer per role (handoff, entrypoint, queue). context returns the holder and slot revision. Replacing the pointer does not archive or retire the previous record; those remain explicit lifecycle decisions.

  • It tells you when you are behind — the daemon checks for newer releases daily and surfaces an update notice to the agent. It uses updates.lamantin-ai.com with a GitHub fallback; version, platform, installation channel and environment are sent, never vault content. The endpoint keeps daily aggregate counts; see the update Worker for retention details. KAERU_MCP_UPDATE_CHECK=0 disables the check.

  • Automatic hygiene — a background pass moves old unreferenced journal entries to Cold, lowers untouched unreferenced Core nodes and raises heavily referenced nodes. It triggers on accumulated writes, Core growth and elapsed time, runs off the reactor in batches, and changes only recall layers. On by default in the daemon: KAERU_MCP_HYGIENE_ENABLE=0 disables it. Embedded kaeru-rig hygiene remains opt-in through KaeruMemory::with_hygiene(). retention(action="preview_hygiene") shows proposed moves without applying them.

  • Cross-agent sharing — local-first by default; an optional kaeru-cloud tier lets a trusted team share knowledge through initiative policy, allowed cloud destinations and a deterministic secret guard. cloud_recall searches the shared tier, unshare withdraws a shared record, and several configured clouds require an explicit destination. See Local & cloud.

  • Structural recall — scoped name / ID lookup, literal lexical search and typed graph traversal. read expands relations, provenance and paths on demand; returned records carry currentness, material conflicts and saved reasoning. Source references preserve the supplied text exactly.

  • Read-back on re-entry — context restores what was touched and also what is still owed: project rules, current slots, open tasks, claims, reminders and saved reasoning. Bounded results report coverage and provide continuation arguments.

  • Initiative management — initiative_manage renames, merges or deletes an initiative, or attaches an existing record to another initiative to repair fragmentation.

  • Markdown export — an Obsidian-friendly ZIP of .md pages through export. AMG additionally transfers structured current knowledge between vaults.

Architecture Notes

  • Substrate is CozoDB with the embedded RocksDB backend. Validity stores recorded assertions and retractions natively; current metadata is not presented as a second historical axis.

  • Edges carry operational semantics — derived_from powers provenance, contradicts records counterevidence, and supersedes runs from the replacement to what it replaced. replace creates a successor and retires the previous identity; revise updates the same identity. Edges are not just associations.

  • audit_event is a first-class node type — mutations record operational audit alongside domain changes. Substrate history tracks prior assertions; audit records explain the operation and actor. Intrinsic mutations, audit and replay records commit together.

  • Per-initiative scope through junction relations rather than column filtering — a record can belong to several initiatives. The shared API applies scope and visibility checks before returning content or following links.

  • Retrieval is structural-first — explicit name / ID lookup, lexical search, typed graph traversal and saved summaries. No embedding index is wired into the current retrieval path.

  • Two-tier with explicit promotion — lifecycle(target_tier="archival") moves settled knowledge into the archival tier while preserving content and references; promotion can report an identity change. Recall layers remain independent of the tier.

  • Single binary, embedded substrate — the local service owns the vault and serves MCP, named HTTP operations and the visualizer. The vault lives under a platform-specific default (Linux $XDG_DATA_HOME/kaeru, macOS ~/Library/Application Support/ai.lamantin.kaeru, Windows %LOCALAPPDATA%\ai.lamantin.kaeru); override with KAERU_VAULT_PATH.

Layout

kaeru/
├── Cargo.toml                  ← workspace root
├── kaeru-core/                 ← library: substrate, shared API, memory primitives and models
├── kaeru-mcp/                  ← binary `kaeru-mcp`: MCP, HTTP API, instance UI and local auth
├── kaeru-cloud/                ← binary `kaeru-cloud`: shared cloud tier (Axum REST over kaeru-core)
├── kaeru-rig/                  ← library: `rig` Tools that give a rig agent kaeru memory
├── kaeru-viz/                  ← visualizer source and embedded frontend build
└── skills/
    └── kaeru-skill/            ← portable agent skill (Claude Code / etc.)

kaeru-rig is the rig framework adapter — the shared memory operations as discrete rig Tools over an embedded Arc<Store>, so a rig agent reads and writes one vault. Future: kaeru-langchain (Python bridge), not yet started.

Install

Pre-1.0 alpha. Take a vault and configuration backup before upgrading; see upgrades and backups.

curl -fsSL https://raw.githubusercontent.com/LamantinAI/kaeru/main/contrib/install/install.sh | bash

The installer sets up a user-level daemon on Linux or macOS and asks whether to enable authentication. A fresh local installation defaults to no auth; updates preserve the configured choice. See QUICK_START.md for source builds, client configuration and platform requirements.

Quick tour (MCP tools)

# See what projects exist, then recover the project's context:
initiatives()
context(initiative="auth-rewrite")

# Capture an observation:
note(initiative="auth-rewrite", body="Token expiry differs across platforms")

# Search and read a record with its connections:
search(initiatives=["auth-rewrite"], text="expiry", prefix=true)
read(initiative="auth-rewrite", node="<returned uuid>", include=["relations"])

# Record a hypothesis, then its checked verdict:
claim(initiative="auth-rewrite", text="The platform-aware policy is correct")
verdict(initiative="auth-rewrite", hypothesis="<hypothesis uuid>",
        status="supported", evidence={"method":"Compared iOS and Android TTL"})

# Inspect recorded history:
history(initiative="auth-rewrite", node="<uuid>")
read(initiative="auth-rewrite", node="<uuid>", recorded_at="2026-10-01T12:00:00Z")

# Save the reasoning route with an authored summary:
trail(initiative="auth-rewrite", route={"from":"<a>","to":"<b>"},
      summary="The evidence supports the platform-specific policy")
read(initiative="auth-rewrite", node="<a>", include=["reasoning"])

# Point the project at its current handoff:
initiative_manage(action="set_slot", initiative="auth-rewrite",
                  slot="handoff", node="<handoff uuid>")

# Preview the next layer-maintenance pass:
retention(initiative="auth-rewrite", action="preview_hygiene")

# Export an initiative into the host's configured artifact root:
export(format="markdown", initiative="auth-rewrite", destination="auth-snapshot.zip")

Follow continuation.next_arguments and inspect coverage on bounded reads. A partial mutation may already contain committed changes; inspect its IDs and failed steps before retrying. Hosts can provide request_id to recover an uncertain outcome. See all operations and arguments.

Building without network access

Some machines cannot reach crates.io. The dependencies for each release are vendored into a separate repository, LamantinAI/kaeru-vendor, one tag per release:

git checkout <release-tag>
./contrib/offline/fetch-vendor.sh     # ~600 MB, needs network once
# carry the whole directory across, then:
cargo build --release --offline -p kaeru-mcp

Rust alone is not enough on either side of that line — cozo builds RocksDB from C++ and zstd/lz4 from C, so a C++ toolchain and libclang are needed whether or not you are offline. See docs/offline-build.md for the per-platform requirements and the Windows line-ending trap that fails every checksum at once.

Connecting to an MCP-aware agent

kaeru-mcp is a long-lived HTTP service: one daemon per vault owns the substrate, any number of agent sessions (Claude Code, Opencode, Cursor, …) connect concurrently. This is intentional — RocksDB is single-writer, so a stdio MCP that forks a subprocess per session would hit lock contention. See kaeru-mcp/README.md for systemd / launchd unit templates and the full HTTP config.

Run the daemon (or set up the systemd user unit from contrib/install/):

kaeru-mcp                                            # foreground, Ctrl-C to stop

Then point your agent at it:

  • Claude Code: claude mcp add --transport http kaeru http://127.0.0.1:9876/mcp — see skills/kaeru-skill/ for the portable system-prompt rules.

  • Check memory before asking (Claude Code and Codex): contrib/hooks/kaeru-first/ is a harness hook for the moment the agent is about to ask the user something — if kaeru was not read recently, it sends the agent to search first, once, and then asks it to capture the user's answer. Stdlib Python, fails open. See its README.

  • Opencode: bash contrib/opencode/install-opencode.sh — wires the daemon, drops AGENTS.kaeru.md rules into ~/.config/opencode/, and installs /kaeru / /lesson / /recall slash commands. Designed to coexist with your existing OSS-model provider config (Qwen / DeepSeek / GLM / Ollama). See contrib/opencode/README.md.

  • Cursor and other runtimes: paste the body of skills/kaeru-skill/SKILL.md into your agent's rules / system-prompt section. For MCP-aware clients the daemon URL above works directly.

After restart the agent sees context, search, read, note, claim and the other named tools. Project calls pass initiative; search uses an initiatives list. Clients that need stdio can run kaeru-mcp --stdio, a relay to the same daemon.

Local & cloud — sharing memory across a team

kaeru runs local-first: your vault lives on your machine and nothing leaves it by default. A second, optional tier — kaeru-cloud — is a shared store for a trusted group (a team, a family). Each initiative carries a sticky share_policy:

  • private (default) — nothing ever leaves; personal projects.

  • team — nodes you explicitly mark shared may sync to the cloud.

Sharing is never automatic and passes two gates: the initiative policy, and a deterministic pre-share secret guard that blocks anything looking like an API key, token, or private key. The guard is silent on clean content and only interrupts on a real hit.

Verbs (over MCP): policy (mark an initiative team), share (push a node), cloud_recall (see what the team has), pull (bring a shared node into your local graph), link_cloud / cloud_links (reference cloud nodes without copying), and sync_review (batch-review still-local nodes). note and reference accept sharing: {visibility: "shared", cloud: "team"} to capture-and-share in one call.

cloud_recall(initiative="project", id="<uuid>") reads a complete shared record without importing it. pull copies it locally and restores its incident edges while preserving local weights and explicit unlinks. Local reads do not search the cloud automatically.

A single daemon can also reach several named clouds (e.g. a family and a work cloud) via a clouds.toml file; the cloud verbs then take an optional cloud: <name> and soft links remember which cloud they point at. See kaeru-mcp/README.md for the file format.

Per-user / per-org isolation (multi-tenant) is a future addition; today each cloud is one shared space scoped by initiative. See kaeru-cloud/README.md.

Instance visualizer

Open http://127.0.0.1:9876/ui/ for the live knowledge galaxy, chain replay, timeline, reader and task board. It uses the same scoped memory API as agents; the graph loads as compact structure and record texts load when opened.

Authentication is optional. kaeru-mcp --auth enabled configures a local account and JWT browser sessions; agent MCP bearer credentials remain separate. See UI, access and account configuration.

Knowledge transfer (AMG)

AMG is a CBOR-based format for transferring current knowledge between vaults. Export the whole graph or selected initiatives, then inspect and import it:

Ask an agent to export selected initiatives or the whole current graph. The existing export tool has two formats: Markdown ZIP and AMG:

export(format="markdown", initiatives=["research","infrastructure"], destination="projects.zip")
export(format="amg", all=true, destination="knowledge.amg")

Export works live through MCP, HTTP and Rig. Configure the host's authorized KAERU_MCP_ARTIFACT_ROOT; MCP returns a resource link so remote clients can retrieve the archive without server filesystem access. See AMG and archive export for scope, download limits and the offline import commands.

Neither format includes source history, accounts, journals or runtime configuration. For a complete pre-upgrade backup, stop the owner and copy its vault and config. See upgrade guidance.

Roadmap

  • Initiative onboarding — a generated "what is this initiative, and what's in it" briefing the first time an agent enters a project, an instruction over the collected context, not graph machinery.

  • PostgreSQL backend — a server-mode substrate alongside the embedded RocksDB default.

  • Multi-tenant + isolation — per-user / per-org separation in the shared cloud.

Store verification and read tracing

Store tests use an independent temporal oracle to check recorded state against the substrate. Optional local read tracing records delivered IDs and operation metadata, with 72 hours of raw JSONL followed by gzip and 14 days total retention. Enable it with KAERU_READ_TRACE_ENABLED=true; no journal is written by default. See storage verification and read tracing.

Status

Pre-1.0. Implemented: the typed graph and shared 35-operation memory API, independent tiers and recall layers, recorded history, scoped lexical / graph recall, authored reasoning trails, atomic commands, forward migrations, optional team clouds, the Rig adapter, the instance visualizer with optional local auth, and AMG knowledge transfer. Current boundaries:

  • Multi-tenant. A cloud is one trusted shared space scoped by initiative; per-user / per-org isolation is not built yet.

  • MCP concurrency. Concurrent sessions share one Store; scoped calls are serialized. Cancellation is cooperative, and concurrently submitted calls do not imply a user-specified read-after-write order.

  • Historical metadata. Earlier content is inspectable; current administrative metadata is explicitly labeled as current. There is one recorded-time axis.

  • Adapters and storage. Rig is supported; the Python / LangChain bridge, PostgreSQL backend and embedding retrieval are still future work.

  • Migrations and transfer. Vault migrations are forward-only. AMG transfers current knowledge, not the source vault's full history or runtime configuration; cryptographic signatures and encryption are not implemented.

See architecture, the API reference and read performance and cancellation for the contracts and measured behavior.

Contributing

Discussion and design feedback through issues. PRs welcome on the open items above and anywhere the agent-facing surface feels rough — the operations (context, read, claim, verdict, trail, …) are meant to map to natural agent thinking, not just expose graph operations. See the documentation index for the implementation map and development checks.

License

Business Source License 1.1 — see LICENSE, with a plain-language summary in LICENSING.md.

kaeru is source-available: read it, modify it, run it in production, and embed it as a component or tool inside your own systems and products — including what you sell. The one thing you may not do is operate kaeru itself as a hosted / managed / SaaS platform for third parties. Each released version converts to the Apache License 2.0 on its configured Change Date or four years after its first public distribution, whichever comes first. Contributions are accepted under the Contributor License Agreement.

Available Tools

35 tools
board_configA

Manage board columns and explicit terminal flags; reordering columns does not change completion semantics.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=false, so the description carries the burden of disclosure. It adds one genuinely valuable trait beyond annotations: reorder is semantically inert for completion. It says nothing about remove being destructive, what permissions are required, or how expected_revision guards concurrent mutations, which matters for a multi-variant mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with two clauses, each of which carries distinct information (scope, then the reorder caveat). Nothing is wasted and the most surprising constraint is placed after the scope statement where it reads naturally.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool the missing pieces are not in the description but in the structured side: an output schema exists, so return values need no prose, and the schema enumerates all five actions with required fields plus the request_id replay contract and expected_revision. Because the structured fields cover what the prose omits, the description does the job it must do.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is reported at 100%, so the baseline is 3. The description reinforces only two of the five action variants implicitly ('reordering columns', 'terminal flags') and does not explain add/remove/relabel or the expected_revision concurrency contract. It neither compensates for nor undercuts the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a clear verb+resource: 'Manage board columns and explicit terminal flags.' The resource (board columns/terminal flags) is specific and distinct from every listed sibling, which are all task/link/cloud oriented. It stops short of naming the concrete operations (add/remove/relabel/reorder/set_terminal) that the schema defines, so the agent still needs the schema to learn what 'manage' covers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance, and no named alternative among the 34 siblings. The clause 'reordering columns does not change completion semantics' gives a conditional cue about what this tool does and does not affect, which is a useful implied usage hint but not routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

claimC

Create an open hypothesis, or save an already reached verdict together with its evidence in one call.

NameRequiredDescriptionDefault
textYes
aboutNo
optionsNo
evidenceNo
initiativeYes
request_idNoOptional stable operation key supplied by the host/SDK; see replay contract.
initial_statusNoopen

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations supply only readOnlyHint=false, so the description carries nearly the whole burden. It never says what node is created, whether the operation is idempotent (the request_id/replay contract lives only in the schema), how slot-revision conflicts behave, or what errors occur on ambiguous NodeRefs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single well-formed sentence with zero filler, and the primary action is front-loaded. It is efficient, though efficiency here comes at the cost of coverage rather than from disciplined pruning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 7-parameter mutation tool with 14% schema coverage, an output schema, and dense sibling overlap (verdict, revise, note, task), one sentence is far short of what an agent needs. The output schema relieves the return-value burden, but parameter and routing gaps remain substantial.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 14% across 7 parameters, so the description must compensate and largely does not. It gestures at evidence and the open-vs-verdict status split, but says nothing about initiative, about, options (slot/layer/expected_slot_revision), or the required text field's expected format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

It names two concrete actions (create an open hypothesis, save a reached verdict plus evidence) attached to a resource called a claim, so the broad purpose is graspable. But the dual-mode framing is never reconciled with what a 'claim' actually is, and nothing distinguishes it from siblings like verdict, note, or revise, which plausibly overlap.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'or save an already reached verdict ... in one call' hints at an atomicity advantage over making separate calls, but there is no explicit when-to-use, when-not-to-use, or named alternative among the many sibling tools (verdict, revise, note). An agent has to guess whether this replaces or complements verdict.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

cloud_initiativesB
Read-only

List initiatives in one configured cloud.

NameRequiredDescriptionDefault
cloudNo

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint already establishes this as a safe read operation. The description adds the useful scoping constraint that only one configured cloud is queried, but it does not cover behavior such as missing cloud configuration, return shape, or pagination.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single short sentence with the scope constraint front-loaded. It contains no redundant or filler text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list operation with annotations covering safety, the main missing piece is the meaning and expected values of the 'cloud' parameter. The description is minimally adequate but not complete for a caller unfamiliar with the configuration model.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must explain the single 'cloud' parameter. It only says 'one configured cloud' and does not provide expected format, allowed values, or behavior when omitted, leaving the parameter meaning largely undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb ('List') and resource ('initiatives') scoped to 'one configured cloud.' It is clearer than the bare name, though it does not explicitly contrast with siblings like initiatives or clouds.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'in one configured cloud' implies that the caller must already have a cloud configured and should pick one, but it gives no explicit when-to-use guidance or alternatives such as the sibling initiatives tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

cloud_recallB
Read-only

Read a full shared cloud record without importing it by passing id, or list/search using the existing paging contract.

NameRequiredDescriptionDefault
idNoFull read without importing; omit to list/search.
cloudNo
limitNo
queryNo
offsetNo
initiativeYes

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

readOnlyHint=true already establishes the safety profile, so the lower bar applies. The description does add real value by clarifying the non-importing semantics, but it leaves the 'existing paging contract' undefined and says nothing about result limits or ordering behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, front-loaded with the primary action and followed by the branching condition — no filler. The phrase 'existing paging contract' is mildly opaque jargon that assumes external knowledge, which keeps it from a 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description should carry more of the return-shape and paging burden, and the required 'initiative' parameter is never explained at all. Adequate to attempt a call, but an agent would need to guess on several parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 17% across six parameters, so the description must compensate. It usefully explains the id parameter's dual role and gestures at paging via 'paging contract,' but cloud, query, offset, and the required initiative parameter get no semantic explanation anywhere.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource ('Read a full shared cloud record') and distinguishes two modes: full read by id versus list/search. It separates itself from the nearby 'pull'/'clouds' siblings conceptually via 'without importing it,' though it doesn't name them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives one explicit routing rule ('by passing id, or list/search' — omit id to list), which implies when each mode applies. However, with siblings like pull, clouds, cloud_links, and link_cloud present, it never states when to prefer this tool over those, leaving the main ambiguity unresolved.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

cloudsB
Read-only

List configured clouds.

NameRequiredDescriptionDefault

No parameters

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint annotation already establishes the safety profile, and the description adds nothing beyond it — no mention of return shape, whether unconfigured clouds appear, ordering, or pagination. For a listing tool it is adequate only in the barest sense.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single short sentence, front-loaded with the verb and with zero waste. Nothing could be trimmed without losing meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter read with no output schema, the description is just enough to invoke the tool. It nonetheless leaves the agent guessing about what a configured cloud is and how the result relates to the output of cloud_links or cloud_initiatives.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is nothing for the description to document. Baseline 4 applies; no parameter semantics are missing.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

"List configured clouds" gives a clear verb and resource, so the basic operation is unambiguous. However, with siblings like cloud_links, cloud_initiatives, cloud_recall, and link_cloud, the description never clarifies what a "cloud" is here or how this lister differs from those related tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to call this versus cloud_links or cloud_initiatives, and no stated prerequisites or exclusions. The agent must infer usage purely from the tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

contextC

Restore project rules, current records, open work and saved reasoning. Records reminder delivery metadata. Use view=graph for compact authorized structure across selected or all accessible initiatives; bodies remain in read.

NameRequiredDescriptionDefault
viewNowork
queryNo
sinceNo
cursorNo
includeNo
initiativeNo
initiativesNo
recorded_atNo
budget_charsNo

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

C2.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds some behavior beyond the sparse readOnlyHint=false annotation: it discloses that 'reminder delivery metadata' is recorded (consistent with a non-read-only tool), that graph output is compact/authorized, and that bodies are not returned. However, it says nothing about pagination despite a cursor parameter, budget behavior, or authorization requirements beyond the word 'authorized'.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences with no filler, and the core restore behavior is front-loaded before the view=graph guidance. The dense noun list in the first sentence is slightly opaque, but nothing is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a complex 9-parameter tool with conditional schema constraints, 0% parameter description coverage, and multiple view modes. The description addresses only a fraction of that complexity, leaving key parameters, view selection, and pagination behavior unexplained, even though the output schema means return-value details need not be covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 9 parameters, so the description carries the full burden, but it only explains view=graph and vaguely references selecting 'initiatives.' It leaves query, since, cursor, include, initiative vs. initiatives, recorded_at, budget_chars, and the other view modes completely undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The verb 'Restore' plus a list of resources (project rules, current records, open work, saved reasoning) gives a rough sense of the tool, but the scope is diffuse and overlaps heavily with siblings such as read, search, trail, and history. Only the graph-view sentence provides any differentiation, and even that is framed around output shape rather than the tool's core purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The only routing guidance is 'Use view=graph for compact authorized structure... bodies remain in read,' which covers one view mode and implicitly points to the read sibling for bodies. There is no guidance on when to choose context over search, read, trail, history, or reference, nor any prerequisites for the other view modes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

exportA

Export current knowledge as a downloadable Markdown ZIP (format markdown) or portable AMG file (format amg). Select exactly one initiative, several initiatives or all. No import; no history backup. Destination stays inside the host artifact root.

NameRequiredDescriptionDefault
allNo
formatYes
initiativeNo
request_idNoOptional stable operation key supplied by the host/SDK; see replay contract.
destinationYesNew .zip or .amg filename inside the host artifact root; the extension is added if absent.
initiativesNo

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=false; the description adds real meaning by confirming it writes a downloadable artifact and that the destination stays inside the host artifact root. 'No history backup' also bounds the side effect. It omits what happens if the destination file already exists and whether auth/permissions are required.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four short sentences, front-loaded with the primary action and output formats, then selection rules and constraints. No filler or restatement of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Output schema exists, so return values need not be described. For a 6-parameter, non-trivial oneOf tool the description covers formats, selection semantics, and destination scoping well. Overwrite/collision behavior and permission requirements are the remaining gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 33% schema coverage and a complex three-branch oneOf, the description does valuable work: it spells out the initiative/initiatives/all mutual exclusivity and maps the format enum values to concrete outputs. The destination's location constraint is also restated in prose. request_id remains unexplained, but the schema documents it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Export') and resource ('current knowledge') with the two output formats named inline. An agent can tell this is a file-export operation. It does not explicitly differentiate from siblings like share/pull/cloud_recall, which also move knowledge out of the system, keeping it at 4 rather than 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Select exactly one initiative, several initiatives or all' gives the selection rules, and 'No import; no history backup' carves out what this tool is not for. It stops short of naming a concrete alternative (e.g. history or share) for the cases it excludes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

forgetB

Retract a record and its live incident edges while preserving inspectable history.

NameRequiredDescriptionDefault
nodeYes
initiativeYes
request_idNoOptional stable operation key supplied by the host/SDK; see replay contract.
expected_revisionNoOpaque revision of the primary target, as returned by reads.

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only supply readOnlyHint=false, so the description carries most of the burden and does add real value: it discloses the cascade onto live incident edges and that history remains inspectable rather than destroyed. It is silent on permissions, whether the retraction can be undone, and how ambiguity in the node reference is handled (the schema hints 'ambiguity is an error' but the description does not reinforce the failure mode).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, front-loaded with the verb and target, with the cascade effect and history guarantee packed into the same clause. Nothing is redundant or padded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and the cascade-plus-history disclosure covers the core semantics of this mutation. For a tool with a required initiative scope and an expected_revision guard, though, the description leaves the agent without guidance on concurrency conflicts, ambiguous node resolution, or retry/idempotency behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Coverage is only 50% and the description adds no parameter meaning beyond the schema: it never mentions that 'initiative' scopes resolution, nor that 'expected_revision' is an optimistic-concurrency guard or that 'request_id' is a replay key. 'A record' loosely maps to the node parameter, but the concurrency and idempotency arguments — the ones most likely to be misused — go unexplained in both prose and schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('retract') and resource ('a record and its live incident edges') plus the net effect ('preserving inspectable history'), which disambiguates the odd name 'forget' from a hard delete. It does not, however, differentiate itself from nearby siblings such as lifecycle, retention, or replace, which plausibly overlap with record retraction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to call this versus lifecycle, retention, replace, or revise. 'Preserving inspectable history' weakly implies this is the soft-retraction path rather than a purge, but the agent must infer that; no exclusions or alternatives are named.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

historyC
Read-only

Read recorded versions and audit events, labeling fields whose prior values are not stored.

NameRequiredDescriptionDefault
nodeYes
cursorNo
initiativeYes
budget_charsNo

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds one genuinely useful behavioral detail: fields whose prior values are not stored get labeled, so the agent knows partial history is possible. It says nothing about ordering, pagination via cursor, or what budget_chars truncation does.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no wasted words; the core verb and resource come first. It is terse to the point of under-specifying, but nothing is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values needn't be explained, and annotations cover read-only safety. However, for a tool with a nested NodeRef reference, cursor pagination, and a char budget, the description leaves all invocation mechanics and scoping unexplained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is reported at 0%, yet the description mentions none of the four parameters. 'cursor', 'budget_chars', and 'initiative' are undocumented in both places, so the agent must infer pagination and response-size control entirely from names and defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb and resource: 'Read recorded versions and audit events' for a node. It is clear what the tool returns, but it doesn't differentiate itself from vague-named siblings like 'trail', 'context', or 'read', so an agent must infer the boundary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use or when-not-to-use guidance, and no alternative tool is named. An agent must guess whether to reach for this versus 'trail', 'context', or 'read' when inspecting an entity's past.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

initiative_manageC

Rename, merge, delete or attach membership; occasionally set/clear a current-record slot. Every action has explicit scope and effects.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only supply readOnlyHint=false, so the description carries the burden: it says 'every action has explicit scope and effects' without stating what merge or delete destroy, whether they are reversible, or that they require confirmation. It also omits the replay/idempotency contract that the schema's request_id points to, and says nothing about expected_slot_revision concurrency behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with the action list front-loaded; nothing is padded. The closing sentence, 'Every action has explicit scope and effects', is vague boilerplate that asserts rather than informs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a six-variant mutation tool with destructive operations (merge, delete) and a concurrency token, the description omits irreversibility, permission/auth needs, and the replay contract, despite an output schema existing. An agent could call merge or delete without knowing the consequences.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the oneOf variants already name every field (source/target, node, slot, expected_slot_revision). The description adds only the loose notion of a 'current-record slot' and otherwise paraphrases the action set the schema defines exactly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Enumerates specific verbs and resources: rename, merge, delete, attach membership, set/clear a slot. An agent immediately knows this is the mutating counterpart to the sibling 'initiatives' listing tool, though the description never names that sibling explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to choose this over siblings such as 'initiatives' or 'lifecycle', no prerequisites, and no when-not conditions. 'Occasionally set/clear a current-record slot' hints at rarity but not at any selection criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

initiativesA
Read-only

List accessible initiative names; filtering does not create or merge aliases.

NameRequiredDescriptionDefault
cursorNo
filterNo
budget_charsNo

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

readOnlyHint=true already covers the safety profile, and the description adds two non-obvious behaviors: results are restricted to 'accessible' initiatives (visibility scoping) and filtering is side-effect-free with respect to aliases. It does not describe pagination behavior despite a cursor parameter, keeping it from a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single dense sentence with the primary operation front-loaded and the alias caveat appended; no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists and annotations cover read-only safety, which lowers the burden. Still, for a paginated list tool with three undocumented parameters, the description omits pagination and result-size semantics an agent needs to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry all parameter meaning, but it only vaguely gestures at filtering. It says nothing about the 'filter' syntax, the 'cursor' pagination token, or what 'budget_chars' controls (a 512-64000 response-size budget is non-obvious).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('List ... initiative names') plus a scope qualifier ('accessible'), which lets an agent distinguish it from the mutating sibling initiative_manage and from cloud_initiatives. Lacks any explicit naming of those siblings, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The word 'List' implies a read/retrieval use case, and the caveat 'filtering does not create or merge aliases' tells the agent this is not the path to alias management. However, it never states when to prefer this over initiative_manage or cloud_initiatives, nor any prerequisite.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lifecycleC

Move a record to operational or archival tier with full content and preserved graph identity lineage.

NameRequiredDescriptionDefault
nodeYes
initiativeYes
request_idNoOptional stable operation key supplied by the host/SDK; see replay contract.
target_tierYes
target_typeNo
expected_revisionNoOpaque revision of the primary target, as returned by reads.

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=false, so the description carries most of the burden. It does usefully disclose that content is retained and graph identity lineage is preserved, which tells the agent this is a reversible-tier move rather than a deletion. It says nothing about permissions, idempotency/replay behavior implied by request_id, or whether archived records disappear from default reads and searches.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler; the action and the key preservation guarantee are stated up front. Its brevity is efficient but edges into under-specification for a 6-parameter mutation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with six parameters, a large sibling ecosystem containing near-neighbors (retention, forget, history), and an output schema, the description is thin. It omits what archiving actually does to the record's discoverability and links, whether the move is reversible, and any concurrency guidance around expected_revision.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 33%, so the description needs to compensate, and it does not mention any parameter. Critically, it never explains the operational distinction between the two tiers (visibility, mutability, queryability), which is the single most important semantic for target_tier. Optional parameters like target_type and expected_revision are left entirely to the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a concrete verb and resource: moving a record between 'operational' and 'archival' tiers, matching the target_tier enum. However, it calls the target a 'record' while the schema calls it a 'node' and enumerates 17 node types, and it never distinguishes itself from plausible siblings like 'retention', 'forget', or 'history'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit statement of when to use this tool versus alternatives such as retention, forget, or history. The phrase 'with full content and preserved graph identity lineage' hints that this is a non-destructive alternative to deletion, but the agent must infer that condition rather than being told it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

noteC

Save an observation, decision, standing constraint, plan or outcome. Optional slot names the current record for a project purpose.

NameRequiredDescriptionDefault
bodyYes
kindNoobservation
nameNo
optionsNo
relatedNo
sharingNo
reminderNo
initiativeYes
request_idNoOptional stable operation key supplied by the host/SDK; see replay contract.
applicabilityNo

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint=false annotation already signals a write operation, and the description's 'Save' is consistent with that. However, it does not disclose important behavior such as slot conflict handling, idempotency/replay semantics, sharing implications, or what happens when the named slot already exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no filler and is front-loaded with the core action. The second sentence adds a useful parameter hint, so every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although an output schema exists and return values need not be described, the input schema is complex with 10 parameters and nested option objects. The description is far too sparse to prepare an agent to call the tool correctly, especially for slot revisions, sharing, reminders, applicability, and relation fields.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 10 parameters and only 10% schema description coverage, the description is expected to compensate. It only explains the optional slot parameter as naming the current record for a project purpose, leaving initiative, body, kind, name, options, related, sharing, reminder, applicability, and request_id undocumented in the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a clear verb, 'Save', and names the record types the tool handles: observation, decision, constraint, plan, or outcome. It does not differentiate the tool from siblings such as task_update, context, or reflect, so it falls short of the top score despite being understandable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states what can be saved but gives no guidance on when to choose this tool over alternatives, no prerequisites, and no exclusions. An agent must infer usage from the name and description alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pinB

Keep a record in view or release the pin; does not assign a role or supersede other knowledge.

NameRequiredDescriptionDefault
nodeYes
reasonNo
enabledYes
initiativeYes
request_idNoOptional stable operation key supplied by the host/SDK; see replay contract.
expected_revisionNoOpaque revision of the primary target, as returned by reads.

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare only readOnlyHint=false, so the description usefully adds that pinning is about visibility, not role assignment or knowledge supersession. However, it omits important mutation behavior such as the conditional reason requirement when enabling a pin, revision-conflict handling via expected_revision, and whether pinning is reversible or idempotent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single compact sentence that front-loads the core action and follows with a useful scope boundary. There is no wasted wording.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return value details are not required in the description. Still, for a six-parameter mutation tool with partial schema coverage and conditional requirements, the description leaves out behavioral details an agent would benefit from knowing before invoking it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 33%, and the description adds no parameter-level meaning. It does not explain initiative scoping, what enabled=true/false mean in context, why reason becomes required when enabling, or how expected_revision and request_id affect the operation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action and resource: keeping a record in view or releasing the pin. It also clarifies what the tool does not do (assign a role or supersede other knowledge), which helps distinguish it from related knowledge-governance tools. It stops short of naming a sibling tool directly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by 'keep a record in view or release the pin,' but there is no explicit guidance on when to choose pin versus alternatives such as note, reference, or claim. The negative boundary ('does not assign a role or supersede other knowledge') is useful but not a full when-to-use rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

policyB

Read or set sharing policy and allowed clouds independently. Empty clouds explicitly removes the restriction.

NameRequiredDescriptionDefault
cloudsNo
policyNo
initiativeYes
request_idNoOptional stable operation key supplied by the host/SDK; see replay contract.
expected_revisionNoOpaque revision of the primary target, as returned by reads.

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint=false annotation already signals that this tool can mutate state. The description adds useful behavioral context by saying empty clouds explicitly removes the restriction and that policy and clouds can be set independently, but it does not cover permissions, side effects, or the concurrency behavior referenced by expected_revision.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two short sentences with no wasted language, and the key read-or-set distinction is front-loaded. The empty-clouds caveat follows immediately where it is most useful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a five-parameter mutation tool with only partial schema coverage and sparse annotations, the description omits important context such as the required initiative target, concurrency via expected_revision, and replay semantics via request_id. An output schema exists, so return values need not be described, but the invocation behavior is still under-specified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 40%, so the description needs to compensate for several parameters. It clarifies the empty-array behavior for clouds and implies policy values are independent, but does not explain initiative, request_id, or expected_revision, leaving much of the parameter semantics to the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific dual action, 'Read or set', on specific resources, 'sharing policy and allowed clouds'. It is clear what the tool operates on, though it does not explicitly differentiate itself from siblings such as share, unshare, or clouds.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says the tool can read or set policy and clouds independently, but gives no explicit guidance on when to choose this tool versus share, unshare, or clouds. Usage is implied rather than directed, with no exclusions or alternatives named.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pullC

Copy one cloud node into the local initiative.

NameRequiredDescriptionDefault
idYes
cloudNo
initiativeYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description is consistent with readOnlyHint=false because it describes a copy into the local initiative, which implies mutation. However, it does not disclose important behavioral details such as whether an existing local node is overwritten, what permissions are required, or whether the operation is idempotent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no wasted words. Its brevity is appropriate structurally, though it contributes to the surrounding completeness gaps.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-parameter mutation tool with no output schema and minimal annotation detail, the description is too thin. It identifies the broad action but omits parameter semantics, side effects, and selection guidance among many related cloud and link tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry parameter meaning. It hints that 'id' identifies the cloud node and 'initiative' is the local target, but the optional 'cloud' parameter is completely unexplained, and no format or default information is provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Copy one cloud node into the local initiative.' It clearly distinguishes a copy action from a link action, but it does not explicitly differentiate itself from close siblings such as cloud_recall, link_cloud, or sync_review.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no when-to-use guidance, prerequisites, or alternatives. It implies a copy operation but does not tell the agent when to choose this over related tools like link_cloud or cloud_recall.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

readB
Read-only

Read a record with currentness, material doubts and a saved reasoning summary by default; expand named graph views when needed.

NameRequiredDescriptionDefault
toNo
nodeYes
cursorNo
includeNo
edge_typesNo
initiativeYes
recorded_atNo
budget_charsNo

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

B3.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint annotation, the description discloses what is returned by default and that named graph views can be expanded. It does not mention pagination, budget behavior, or error conditions, but the output schema and annotation reduce the burden.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no filler, stating default behavior before optional expansion. Every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex tool with 8 parameters, conditional schema constraints, and missing parameter descriptions, this one-sentence description is not sufficient. The output schema covers return values, but the input semantics and usage context remain largely undocumented.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 8 parameters and 0% schema description coverage, the description only hints at 'record' (node) and 'named graph views' (likely include). It leaves initiative, cursor, to, edge_types, recorded_at, and budget_chars entirely unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a concrete verb-resource pair ('Read a record') and specifies the default payload (currentness, material doubts, saved reasoning summary) plus optional expansion of named graph views. It does not explicitly differentiate itself from sibling tools such as search or context, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It implies default usage and conditional expansion ('when needed'), but gives no explicit guidance on when to use this tool versus search/context alternatives. Usage is only implied rather than clearly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

referenceC

Preserve supplied source text or a verified artifact; a URL alone records a citation without fetching it.

NameRequiredDescriptionDefault
urlNo
nameYes
sourceNo
optionsNo
relatedNo
sharingNo
initiativeYes
request_idNoOptional stable operation key supplied by the host/SDK; see replay contract.
descriptionNo

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, and the description correctly implies a write operation by saying it preserves content. It adds one useful behavior: a URL alone records a citation without fetching it. However, it omits major mutation semantics exposed in the schema, including slot replacement, layer placement, expected_slot_revision concurrency checks, relation creation, and sharing visibility.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence using a semicolon to attach one key caveat. There is no filler; every clause carries either purpose or behavior.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 9-parameter write tool with a complex schema and no output explanation needed, the description is far too thin. It covers source content and the URL caveat but leaves slot/layer semantics, concurrency control, relations, and sharing behavior unexplained, which is a significant gap for an agent invoking this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 11%, so the description must compensate. It adds meaning for the 'source' choice (text vs artifact) and the URL-only case, but it says nothing about required parameters like initiative and name or about options, related, sharing, request_id, and description. Most parameter semantics are left undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Preserve') and names the resources it stores: supplied source text or a verified artifact. It also distinguishes a URL-only call from a fetch. It does not explicitly contrast itself with siblings like note, pin, or context, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance and no named alternative among the many sibling tools. The only routing hint is that a URL alone records a citation without fetching it, which clarifies one edge case but not general tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reflectB
Read-only

Read unresolved work, stale summaries, scope fragmentation and maintenance candidates; no automatic semantic edits.

NameRequiredDescriptionDefault
cursorNo
includeNo
initiativeYes
budget_charsNo

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

readOnlyHint already covers the safety profile; the description adds that it performs no automatic semantic edits, which usefully confirms it only reports candidates rather than applying fixes. It still omits whether repeated calls are cheap, whether results are paginated, and whether anything is cached or persisted.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler; every clause names a category of diagnostic output or a non-mutation guarantee. It is terse but not padded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Because an output schema exists, return shape need not be described, and readOnlyHint covers safety. However, the required initiative parameter and the include/cursor/budget_chars controls are unexplained, so an agent lacks enough information to scope and page the call correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% for four parameters, and the description documents none of them by name: initiative, include, cursor, and budget_chars all lack semantic explanation. The listed findings loosely correspond to include enum values, but that mapping is not stated, so the description does not compensate for the schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a read-only diagnostic operation and enumerates four concrete findings it surfaces: unresolved work, stale summaries, scope fragmentation, and maintenance candidates. It is clearer than the bare name reflect, but it never distinguishes itself from siblings such as context, review, or trail, so an agent must infer the boundary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use guidance and no named alternatives. The closest signal is the trailing 'no automatic semantic edits,' which implies inspection-only use, but the agent is left to infer when reflect is preferable to context, review, or trail.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

relateB

Connect, disconnect or reweight a typed directed edge. A supersedes edge marks succession but does not itself retract a node.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotation only declares readOnlyHint=false, so the schema and description carry the rest. The description usefully discloses non-obvious graph semantics — a supersedes edge records succession without retracting the node — but says nothing about the replay/idempotency contract (request_id), the optimistic-concurrency requirement (expected_revision), or whether disconnect is reversible.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the operation set, and the second sentence carries a genuinely non-obvious caveat. No filler and nothing redundant with the schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists and the input schema is richly annotated, so the description needn't restate parameters. Still, for a mutation tool spanning three actions it omits the failure modes (ambiguous NodeRef is described only in the schema) and the concurrency/replay behavior an agent must plan around.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is effectively complete: actions, weight bounds, NodeRef resolution rules, cloud mirroring, and expected_revision are all documented inline. The description clarifies the meaning of one enum value (supersedes) but adds nothing for the other eleven edge types or the three actions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States specific verbs (connect, disconnect, reweight) against a specific resource (typed directed edge), which is far more informative than the bare name 'relate'. It does not distinguish itself from siblings such as 'reference' or 'link_cloud', so sibling disambiguation is left to inference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to use this tool versus 'reference', 'link_cloud', 'share', or 'replace', nor any mention of preconditions. The only guidance-like sentence is a semantic footnote about the supersedes edge type, not a usage rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

replaceA

Create an explicit successor, supersede the old record atomically and report dependents needing review.

NameRequiredDescriptionDefault
oldYes
successorYes
initiativeYes
request_idNoOptional stable operation key supplied by the host/SDK; see replay contract.
expected_revisionNoOpaque revision of the primary target, as returned by reads.

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=false; the description adds meaningful behavior by stating the operation is atomic and reports dependents needing review. It stops short of saying whether the old record is deleted or retained, what permissions are needed, or whether the replacement is reversible.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler. Each clause earns its place by conveying successor creation, atomic supersession, and dependent reporting.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The output schema exists, so return-format details are not required in the description. However, for a multi-parameter mutation tool with low schema coverage, the description omits concurrency semantics, parameter usage, and guidance versus alternatives, leaving gaps for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 40%, and the description does not explain the parameters beyond referring conceptually to an 'old record' and 'successor'. It leaves initiative, expected_revision, and request_id without added meaning, failing to compensate for the schema gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verbs ('create', 'supersede') and resources ('old record', 'explicit successor'), making the replacement operation clear. It does not explicitly name sibling alternatives like revise, but the core purpose is distinguishable from an in-place edit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use when replacing a record with a new successor, but gives no explicit when-to-use/when-not guidance versus siblings such as revise, task_update, or review. No prerequisites or exclusions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

retentionC

Set a recall layer or inspect/run metadata hygiene; tier and semantic closure remain explicit.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

C2.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With only readOnlyHint=false, the description carries most of the burden for a mixed read/write tool, yet it never says whether run_hygiene deletes or rewrites metadata, whether set_layer can move data into an irrecoverable 'frozen' state, or what the request_id/expected_revision concurrency contract implies. The phrase 'tier and semantic closure remain explicit' is unexplained jargon rather than behavioral disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is a single short sentence with the operational gist front-loaded, which is good. However, the trailing clause about 'tier and semantic closure' consumes space without conveying actionable meaning, so not every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values needn't be explained, but for a three-variant tool that includes mutations, the definition leaves out what hygiene actually does, what a layer change costs, and any safety prerequisites. The complexity of the oneOf schema is not matched by the description's depth.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameter meaning is already carried by the schema (NodeRef, Layer enum, budget_chars, request_id, expected_revision). The description adds nothing beyond the word 'tier', so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names three loosely-coupled capabilities — setting a 'recall layer', and inspecting/running 'metadata hygiene' — but the vocabulary ('recall layer', 'tier and semantic closure remain explicit') is idiosyncratic and never grounded in the layer enum or the set_layer/preview_hygiene/run_hygiene actions the schema actually exposes. An agent can guess it's about retention policy, but cannot confidently map the description to what each action does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus siblings like forget, lifecycle, pin, or reflect, nor on how to choose among the three actions. 'Inspect' vs 'run' hints that preview_hygiene is the safe read and run_hygiene the mutation, but no exclusion or prerequisite is stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reviewA

Open or close review flags, or link an answer to a question. Closing flags does not delete substantive counterevidence.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a mutating tool via readOnlyHint=false. The description adds a valuable behavioral nuance: closing flags does not delete substantive counterevidence. It does not cover authorization or side effects in more depth, but with annotations present this is solid context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the possible actions and followed by a key behavioral caveat. There is no redundant or wasted text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a rich oneOf schema and an output schema, reducing what the description must carry. The description adequately names all three actions and one important side-effect nuance, though it could say more about the distinction between opening and closing flags.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents fields like request_id and expected_revision in detail. The description restates the three action modes but adds little parameter-level meaning beyond the schema baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verbs and resources: opening/closing review flags and linking an answer to a question. It clearly covers the three action modes, though it does not explicitly distinguish this tool from related siblings such as sync_review.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The action list implies when the tool is used, but there is no explicit guidance on choosing between open, close, and answer, nor when to prefer this tool over sibling review-related operations. Usage is inferable but not spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reviseB

Patch the same record, preserving identity and tier. Omitted fields remain unchanged; immutable source bytes are replaced through replace.

NameRequiredDescriptionDefault
nodeYes
patchYes
initiativeYes
request_idNoOptional stable operation key supplied by the host/SDK; see replay contract.
expected_revisionNoOpaque revision of the primary target, as returned by reads.

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

B3.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=false, so the description usefully adds mutation semantics: identity and tier are preserved, omitted fields are untouched, and immutable bytes require replace. It still omits concurrency behavior (expected_revision) and failure modes when immutable bytes are patched.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no filler, and the replace distinction is front-loaded. The terseness comes at the cost of clarity around 'the same record', but structurally it is efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with five parameters, nested patch fields, and only a readOnlyHint=false annotation, the description is too thin. It leaves out targeting (initiative/node), concurrency (expected_revision), and error behavior for immutable bytes, even though an output schema exists.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 40% across five parameters. The phrase about omitted fields adds meaning for the patch object, but the description never explains initiative, node, expected_revision, or request_id, so it does not compensate for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Patch') and distinguishes itself from replace by noting immutable source bytes are handled elsewhere. However, the resource is vague ('the same record'), and it never states that the target is an initiative node. An agent can infer a partial-update operation but not the exact domain object.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides an implicit alternative: immutable source bytes must go through replace. That is useful routing guidance. It does not say when to prefer revise over task_update or other mutation siblings, so usage is only partially implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

shareC

Share a node using existing sharing gates.

NameRequiredDescriptionDefault
nameYes
cloudNo
forceNo
initiativeYes

TDQS

C2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotation already declares readOnlyHint=false, indicating a mutation. The description adds only that sharing requires "existing sharing gates", but it does not explain what those gates are, what permissions are needed, whether sharing is reversible, or what the "force" flag changes. For a mutation tool with minimal annotations, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The single sentence is technically concise but suffers from under-specification rather than efficient communication. "Sharing gates" is unexplained and the sentence wastes the only opportunity to tell the agent what the tool actually does and requires.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given four parameters (two required), zero schema descriptions, no output schema, and only a readOnly=false annotation, the description is far too thin. It does not cover the required initiative/name inputs, the meaning of cloud or force, or the expected outcome, leaving the agent unable to invoke the tool reliably.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate, but it does not mention any of the four parameters. The required "initiative" and "name" fields, as well as "cloud" and "force", are left completely unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ("Share") and resource ("node"), but the phrase "using existing sharing gates" is jargon that does not clarify scope. It also does not distinguish this tool from the sibling "unshare" or "link_cloud", leaving the agent to infer the difference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as "unshare" or "link_cloud", nor any prerequisites or exclusions. The agent must guess the appropriate context from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sync_reviewC
Read-only

List local sharing candidates under existing policy.

NameRequiredDescriptionDefault
initiativeYes

TDQS

C2.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

readOnlyHint=true is consistent with "List", so no contradiction. The description usefully adds the "local" scope (as opposed to cloud-oriented siblings) and that results are constrained by existing policy, but it says nothing about volume, pagination, or what a candidate record looks like beyond the implied scope.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single tight sentence with the scope front-loaded and no filler. It is efficient, though the brevity edges toward under-specification rather than deliberate concision.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description should explain what a "sharing candidate" is and what the initiative parameter selects; it does neither. Combined with the mismatch between the name and the described behavior, an agent lacks what it needs to call this confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is one required parameter, initiative, with 0% schema description coverage, and the description never mentions it. An agent must guess whether initiative is a name, an ID, or a scope selector, so the description fails to compensate for the schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description has a specific verb and object ("List local sharing candidates") plus a scoping phrase ("under existing policy"), which is more than a tautology. But it does not reconcile with the tool name sync_review, and it never distinguishes this listing from siblings such as share, policy, or review, leaving an agent unsure whether this enumerates or triggers anything.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use, when-not-to-use, or prerequisite guidance is given. With siblings like share, unshare, policy, and cloud_links in the namespace, the description offers no routing signal about when an agent should pick sync_review over any of them.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

synthesiseB

Create a supplied synthesis with links to its sources; does not silently close or retire the sources.

NameRequiredDescriptionDefault
resultYes
sourcesYes
initiativeYes
request_idNoOptional stable operation key supplied by the host/SDK; see replay contract.

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

B3.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint=false annotation already signals a mutation, and the description adds a non-obvious behavioral guarantee: it does not silently close or retire the sources. That is useful side-effect context beyond the annotation. It still omits permissions, replay/idempotency behavior, and any mention of the request_id replay contract, but the source-retention clause is meaningful additional transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no filler, and the semicolon cleanly separates the core action from the source-handling caveat. Every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with four parameters, nested NodeRef definitions, and an output schema, the description is too thin. It covers the core operation and one side effect, but leaves initiative, request_id/replay, NodeRef targeting, and usage relative to siblings unexplained. The output schema reduces the need to describe return values, but not the missing invocation context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 25%, so the description would need to compensate by explaining the four parameters. It only loosely maps 'supplied synthesis' to result and 'links to its sources' to sources, while saying nothing about initiative, request_id, the NodeRef forms, or the tier/type fields. The low coverage leaves significant parameter semantics unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: create a synthesis with links to its sources. That is clear enough to understand the core operation. However, it does not distinguish the tool from nearby siblings such as note, reference, or relate, so an agent cannot tell from the description alone when 'synthesis' is the right artifact.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what the tool does but gives no guidance on when to use it instead of note, reference, relate, or other creation tools. It also provides no prerequisites, exclusions, or context about which situations call for a synthesis.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

taskC

Create an open task; optional deadline and relation are captured with it.

NameRequiredDescriptionDefault
dueNo
bodyYes
optionsNo
relatedNo
initiativeYes
request_idNoOptional stable operation key supplied by the host/SDK; see replay contract.

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations supply only readOnlyHint=false, so the description carries the burden of behavioral disclosure for a write tool. 'Open task' mildly communicates initial state and 'captured with it' hints at persistence, but nothing explains initiative scoping, the replay/idempotency contract behind request_id, or slot-revision conflict behavior in options.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short sentence, front-loaded with the core action and scoped additions after the semicolon. Nothing is padded, though the brevity is partly under-specification rather than deliberate economy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, but the input side is complex: a oneOf NodeRef, a typed/weighted Relation, and a CaptureOptions object with optimistic concurrency fields. None of this complexity is acknowledged, leaving the agent to reverse-engineer required fields and conflict semantics from the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 17% across 6 parameters, and the description covers just two of them (due as 'deadline', related as 'relation') without format or semantics. It says nothing about the required initiative and body, nor about options or request_id, so it fails to compensate for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a clear verb (Create) and resource (task) plus the resulting state ('open'), which is more than the bare tool name gives. It does not differentiate itself from the sibling task_update, so an agent must infer the create-vs-modify split from names alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit when-to-use guidance and never names task_update or any other sibling as the alternative. The only usage signal is the implied create semantics of 'Create an open task'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

task_updateB

Update task status or deadline. Completion preserves the deadline and stops active debt; reopening uses the retained date.

NameRequiredDescriptionDefault
dueNo
taskYes
statusNo
initiativeYes
request_idNoOptional stable operation key supplied by the host/SDK; see replay contract.
expected_revisionNoOpaque revision of the primary target, as returned by reads.

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

B3.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=false, so the description carries the behavioral burden and does add real domain context: completing preserves the deadline and stops active debt accrual, reopening reuses the retained date. That is genuine side-effect disclosure an agent could not get from the schema. It omits other important traits: concurrency behavior via `expected_revision`, idempotent replay via `request_id`, and what happens on a stale revision.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, zero padding, and the primary purpose is front-loaded before the lifecycle caveats. The second sentence is dense but every clause (preserve deadline, stop debt, retained date on reopen) adds distinct information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, and the read-modify-write lifecycle is partially covered. However, for a mutation tool with an `anyOf` schema (status-or-due), a free-form status string, and optimistic-concurrency parameters, the description leaves the agent without valid status values or guidance on supplying `expected_revision` — material gaps for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 33%, so the description must compensate, but it explains only that `status` and `due` are the target fields. Critically, `status` has no enum and is a bare string, and the description never lists valid status values; it also does not say that a null `due` clears the deadline, nor explain `expected_revision` or `request_id` at the call site (the schema only references a 'replay contract').

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb and resource ("Update task status or deadline") and identifies the two mutable fields, so the agent knows exactly what class of change this performs. It does not differentiate itself from similarly named siblings such as `task`, `revise`, or `replace`, leaving the agent to infer that those are for content edits and this is for status/date edits.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit statement of when to use this tool versus `task` (read/other), `revise`, or `replace`, and no prerequisites or exclusions are given. Usage is only implied by the phrase "status or deadline", which is a weak router when 30+ siblings exist.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

trailB

Save a reasoning summary and ordered route; explicitly refresh or extend an existing trail and expose summary staleness.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotation declares readOnlyHint=false, and the description is consistent by describing save, refresh, and extend operations. It adds useful context about summary staleness being exposed, but does not disclose concurrency behavior, required permissions, or what happens to existing route data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The definition is a single dense sentence with the primary save behavior front-loaded. It is efficient, though the semicolon-separated action summary is somewhat compressed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a complex oneOf schema and an output schema, so the description does not need to explain return values. Still, for a mutation tool with save/refresh/extend variants, the description is minimal about revision checks, replay keys, and the practical meaning of summary staleness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents parameters such as expected_revision and request_id. The description adds only action-level context and does not explain route structure, NodeRef resolution, or revision semantics beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific resource and multiple operations: saving a reasoning summary plus ordered route, and refreshing or extending an existing trail. It clearly conveys what the tool does, though it does not distinguish itself from any of the many sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It implies usage through the save/refresh/extend actions and says refresh or extend applies to an existing trail. However, it gives no explicit when-to-use guidance relative to siblings and no when-not-to-use or prerequisite information.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

unshareC

Withdraw a node from the named cloud.

NameRequiredDescriptionDefault
nameYes
cloudNo
initiativeYes

TDQS

C2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description is consistent with readOnlyHint=false, but adds nothing beyond it: no statement of whether the withdrawal is reversible, what happens to the node's other associations, whether permissions are required, or what an error looks like. For a mutation exposed with a single annotation hint, this is a substantial gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is a single short sentence with no padding, but the brevity is under-specification rather than economy: there is nothing front-loaded beyond a bare verb phrase, and no second clause carries the needed detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

A mutating tool with three parameters at 0% schema coverage, no output schema, and only a readOnlyHint=false annotation requires far more than one sentence. Nothing tells the agent what a correct call looks like or what the effect is.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and all three parameters are undocumented. The phrase "named cloud" hints at `cloud`, but that parameter is optional while the description reads as though it is essential, and the required `initiative` parameter is never mentioned at all — an agent has no basis for supplying it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ("withdraw") and resource ("node from the named cloud"), so the general intent is inferrable. However, "node" is never defined, and the description never contrasts with the obvious inverse sibling `share`, so an agent cannot confidently distinguish the two from the text alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this versus `share`, `cloud_links`, or `link_cloud`, and no prerequisites or preconditions are stated. The inverse relationship to the `share` sibling is left entirely to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verdictA

Record supported, refuted or inconclusive plus optional evidence in one call. The rare record_check action attaches evidence without changing status.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
dataYes
stateYes
issuesYes
coverageNo
replayedYes
operationYes
request_idNo
api_versionYes
continuationNo

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=false; the description adds real value by disclosing that status plus optional evidence can be written atomically in one call, and that record_check leaves status untouched. It still omits mutation-side behavior an agent would care about: whether an existing verdict is overwritten, how expected_revision conflicts surface, and how ambiguous NodeRef resolution errors behave.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no filler, and the core operation is front-loaded before the exception branch. Every sentence contributes a distinct fact.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be explained, and the two action branches are covered. But for a non-read-only mutation on a hypothesis node, the description says nothing about concurrency handling, overwrite semantics or initiative scope, which are the likely failure modes an agent needs to know.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the $defs document NodeRef, Verdict and Evidence in detail, so the schema carries most of the load. The description adds only marginal semantics - that evidence is optional in the default branch - leaving expected_revision and request_id entirely to the schema text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description pairs a specific verb ('Record') with the exact resource domain (supported/refuted/inconclusive verdicts) and mentions the second action variant 'record_check', so an agent knows this tool sets a hypothesis verdict. It does not distinguish itself from siblings such as claim, revise or review, leaving some ambiguity about which node-mutating tool to pick.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'The rare record_check action attaches evidence without changing status' gives a usable cue for choosing the non-default branch over the default 'decide'. However, there is no guidance on prerequisites (initiative scoping, when a verdict should be issued versus revised later) or on when to prefer siblings like revise or review.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 85 tool updatesv0.8.0
    • Removedat
    • Removedattach
    • Removedawake
    • Removedbetween
    • Removedboard
    • Addedboard_config
    • Removedboard_status
    • Removedchain
    • Removedcite
    • Changedclaim21 fields changed
      • addedInput schema / $defs
        Added value: +{
        +  "CaptureOptions": {
        +    "additionalProperties": false,
        +    "allOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "expected_slot_revision": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "layer": {
        +            "$ref": "#/$defs/Layer"
        +          },
        +          "slot": {
        +            "$ref": "#/$defs/Slot"
        +          }
        +        },
        +        "required": [],
        +        "type": "object"
        +      },
        +      {
        +        "if": {
        +          "required": [
        +            "expected_slot_revision"
        +          ]
        +        },
        +        "then": {
        +          "required": [
        +            "slot"
        +          ]
        +        }
        +      }
        +    ],
        +    "properties": {
        +      "expected_slot_revision": {
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "layer": {
        +        "$ref": "#/$defs/Layer"
        +      },
        +      "slot": {
        +        "$ref": "#/$defs/Slot"
        +      }
        +    },
        +    "required": [],
        +    "type": "object"
        +  },
        +  "Evidence": {
        +    "oneOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "node": {
        +            "$ref": "#/$defs/NodeRef"
        +          }
        +        },
        +        "required": [
        +          "node"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "method": {
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "method"
        +        ],
        +        "type": "object"
        +      }
        +    ]
        +  },
        +  "Layer": {
        +    "enum": [
        +      "core",
        +      "hot",
        +      "warm",
        +      "cold",
        +      "frozen"
        +    ],
        +    "type": "string"
        +  },
        +  "NodeRef": {
        +    "oneOf": [
        +      {
        +        "description": "Returned UUID or exact name in the call initiative; ambiguity is an error.",
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "id": {
        +            "description": "Returned canonical ID, including IDs from older vaults.",
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "initiative": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "name": {
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "initiative"
        +        ],
        +        "type": "object"
        +      }
        +    ]
        +  },
        +  "Slot": {
        +    "maxLength": 64,
        +    "minLength": 1,
        +    "pattern": "^[a-z][a-z0-9_-]*$",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / about / $ref
        Added value: +"#/$defs/NodeRef"
      • removedInput schema / properties / about / default
        Removed value: -null
      • removedInput schema / properties / about / description
        Removed value: -"Optional existing node this claim is about (refers_to edge)."
      • removedInput schema / properties / about / type
        Removed value: -[
        -  "string",
        -  "null"
        -]
      • removedInput schema / properties / by
        Removed value: -{
        -  "default": null,
        -  "description": "Evidence node (name or id) the verdict rests on — linked `verifies` /\n`falsifies`. Optional, but a verdict without one is a claim with no\ncitation.",
        -  "type": [
        -    "string",
        -    "null"
        -  ]
        -}
      • addedInput schema / properties / evidence
        Added value: +{
        +  "$ref": "#/$defs/Evidence"
        +}
      • addedInput schema / properties / initial_status
        Added value: +{
        +  "default": "open",
        +  "enum": [
        +    "open",
        +    "supported",
        +    "refuted",
        +    "inconclusive"
        +  ],
        +  "type": "string"
        +}
      • removedInput schema / properties / initiative / default
        Removed value: -null
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • changedInput schema / properties / initiative / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / properties / layer
        Removed value: -{
        -  "default": null,
        -  "description": "Optional memory layer stamped at creation: `core`, `hot`, `warm`,\n`cold`, or `frozen`. Defaults to `warm`.",
        -  "type": [
        -    "string",
        -    "null"
        -  ]
        -}
      • addedInput schema / properties / options
        Added value: +{
        +  "$ref": "#/$defs/CaptureOptions"
        +}
      • addedInput schema / properties / request_id
        Added value: +{
        +  "description": "Optional stable operation key supplied by the host/SDK; see replay contract.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • removedInput schema / properties / text / description
        Removed value: -"The hypothesis text. Auto-named from first words + id suffix."
      • addedInput schema / properties / text / minLength
        Added value: +1
      • removedInput schema / properties / verdict
        Removed value: -{
        -  "default": null,
        -  "description": "The verdict, when you ALREADY KNOW IT — the usual case, since you\nnormally reach memory after the check has run. Omit for a genuinely\nopen question. A CLOSED vocabulary, one of exactly these: `supported`,\n`refuted`, `inconclusive` (`confirmed` / `falsified` / `partial` are\naccepted as aliases).",
        -  "type": [
        -    "string",
        -    "null"
        -  ]
        -}
      • changedInput schema / required
        Previous value: -[
        -  "text"
        -]New value: +[
        +  "initiative",
        +  "text"
        +]
      • removedInput schema / title
        Removed value: -"ClaimParams"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$defs": {
        +    "AmgOmission": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "reason",
        +        "count"
        +      ],
        +      "type": "object"
        +    },
        +    "ArchiveFormat": {
        +      "enum": [
        +        "markdown",
        +        "amg"
        +      ],
        +      "type": "string"
        +    },
        +    "Artifact": {
        +      "properties": {
        +        "bytes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "edges": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "format": {
        +          "$ref": "#/$defs/ArchiveFormat"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "nodes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "omissions": {
        +          "items": {
        +            "$ref": "#/$defs/AmgOmission"
        +          },
        +          "type": "array"
        +        },
        +        "path": {
        +          "type": "string"
        +        },
        +        "sha256": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "path",
        +        "format",
        +        "bytes",
        +        "sha256",
        +        "initiatives",
        +        "omissions",
        +        "nodes",
        +        "edges"
        +      ],
        +      "type": "object"
        +    },
        +    "Change": {
        +      "properties": {
        +        "after": true,
        +        "before": true,
        +        "field": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "field",
        +        "before",
        +        "after"
        +      ],
        +      "type": "object"
        +    },
        +    "Continuation": {
        +      "properties": {
        +        "cursor": {
        +          "type": "string"
        +        },
        +        "next_arguments": true
        +      },
        +      "required": [
        +        "cursor",
        +        "next_arguments"
        +      ],
        +      "type": "object"
        +    },
        +    "Coverage": {
        +      "properties": {
        +        "complete": {
        +          "type": "boolean"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "omitted": {
        +          "items": {
        +            "$ref": "#/$defs/Omission"
        +          },
        +          "type": "array"
        +        },
        +        "rules_complete": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "complete",
        +        "rules_complete",
        +        "omitted"
        +      ],
        +      "type": "object"
        +    },
        +    "Entity": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "revision": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "EvidenceResult": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "relation": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "relation"
        +      ],
        +      "type": "object"
        +    },
        +    "FailedStep": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "step": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "step",
        +        "code",
        +        "message"
        +      ],
        +      "type": "object"
        +    },
        +    "Issue": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "field": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "retryable": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "code",
        +        "message",
        +        "retryable"
        +      ],
        +      "type": "object"
        +    },
        +    "MutationData": {
        +      "properties": {
        +        "affected": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "artifacts": {
        +          "items": {
        +            "$ref": "#/$defs/Artifact"
        +          },
        +          "type": "array"
        +        },
        +        "changes": {
        +          "items": {
        +            "$ref": "#/$defs/Change"
        +          },
        +          "type": "array"
        +        },
        +        "created": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "evidence": {
        +          "items": {
        +            "$ref": "#/$defs/EvidenceResult"
        +          },
        +          "type": "array"
        +        },
        +        "failed_steps": {
        +          "items": {
        +            "$ref": "#/$defs/FailedStep"
        +          },
        +          "type": "array"
        +        },
        +        "primary": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/Entity"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "slots": {
        +          "items": {
        +            "$ref": "#/$defs/SlotChange"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "created",
        +        "affected",
        +        "changes",
        +        "evidence",
        +        "failed_steps",
        +        "slots",
        +        "artifacts"
        +      ],
        +      "type": "object"
        +    },
        +    "Omission": {
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        },
        +        "section": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "section",
        +        "count",
        +        "reason"
        +      ],
        +      "type": "object"
        +    },
        +    "SlotChange": {
        +      "properties": {
        +        "after": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "before": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "slot": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "slot",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "State": {
        +      "enum": [
        +        "ok",
        +        "applied",
        +        "unchanged",
        +        "partial",
        +        "rejected"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "properties": {
        +    "api_version": {
        +      "const": 1,
        +      "format": "uint32",
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "continuation": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Continuation"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "coverage": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Coverage"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "data": {
        +      "$ref": "#/$defs/MutationData"
        +    },
        +    "issues": {
        +      "items": {
        +        "$ref": "#/$defs/Issue"
        +      },
        +      "type": "array"
        +    },
        +    "operation": {
        +      "const": "claim",
        +      "type": "string"
        +    },
        +    "replayed": {
        +      "type": "boolean"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "state": {
        +      "$ref": "#/$defs/State"
        +    }
        +  },
        +  "required": [
        +    "api_version",
        +    "operation",
        +    "state",
        +    "replayed",
        +    "data",
        +    "issues"
        +  ],
        +  "title": "Response",
        +  "type": "object"
        +}
    • Removedclose_review
    • Changedcloud_initiatives7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / cloud / default
        Removed value: -null
      • removedInput schema / properties / cloud / description
        Removed value: -"Which cloud to ask. Required when several are configured."
      • addedInput schema / properties / cloud / minLength
        Added value: +1
      • changedInput schema / properties / cloud / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • addedInput schema / required
        Added value: +[]
      • removedInput schema / title
        Removed value: -"CloudScopeParams"
    • Changedcloud_links6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • removedInput schema / properties / name / description
        Removed value: -"Local node name or UUIDv7 id whose cloud soft links to resolve."
      • addedInput schema / properties / name / minLength
        Added value: +1
      • changedInput schema / required
        Previous value: -[
        -  "name",
        -  "initiative"
        -]New value: +[
        +  "initiative",
        +  "name"
        +]
      • removedInput schema / title
        Removed value: -"CloudLinksParams"
    • Changedcloud_recall20 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / cloud / default
        Removed value: -null
      • removedInput schema / properties / cloud / description
        Removed value: -"Cloud name to query in a multi-cloud setup. Required when several are\nconfigured."
      • addedInput schema / properties / cloud / minLength
        Added value: +1
      • changedInput schema / properties / cloud / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • addedInput schema / properties / id
        Added value: +{
        +  "description": "Full read without importing; omit to list/search.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • removedInput schema / properties / initiative / description
        Removed value: -"Initiative to list shared cloud nodes for."
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • removedInput schema / properties / limit / default
        Removed value: -null
      • removedInput schema / properties / limit / description
        Removed value: -"Page size, default 25, ceiling 500. A shared initiative can hold\nhundreds of nodes — more than a context window — so this read is\nbounded like every other list on the surface."
      • removedInput schema / properties / limit / format
        Removed value: -"uint"
      • changedInput schema / properties / limit / type
        Previous value: -[
        -  "integer",
        -  "null"
        -]New value: +"integer"
      • removedInput schema / properties / offset / default
        Removed value: -null
      • removedInput schema / properties / offset / description
        Removed value: -"How many to skip, for the next page. The result says when there is one."
      • removedInput schema / properties / offset / format
        Removed value: -"uint"
      • changedInput schema / properties / offset / type
        Previous value: -[
        -  "integer",
        -  "null"
        -]New value: +"integer"
      • removedInput schema / properties / query / default
        Removed value: -null
      • removedInput schema / properties / query / description
        Removed value: -"Search the cloud instead of listing it: a case-insensitive substring\nover shared node names and excerpts. Omit to list everything shared."
      • changedInput schema / properties / query / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / title
        Removed value: -"CloudRecallParams"
    • Changedclouds3 fields changed
      • addedInput schema / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / required
        Added value: +[]
    • Removedconfig
    • Removedconfirm
    • Addedcontext
    • Removeddelete_initiative
    • Removeddone
    • Removeddrill
    • Removedepisode
    • Removedevidence
    • Changedexport14 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / oneOf
        Added value: +[
        +  {
        +    "allOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "all": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "destination": {
        +            "description": "New .zip or .amg filename inside the host artifact root; the extension is added if absent.",
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "format": {
        +            "enum": [
        +              "markdown",
        +              "amg"
        +            ],
        +            "type": "string"
        +          },
        +          "initiative": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "initiatives": {
        +            "items": {
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "minItems": 1,
        +            "type": "array",
        +            "uniqueItems": true
        +          },
        +          "request_id": {
        +            "description": "Optional stable operation key supplied by the host/SDK; see replay contract.",
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "format",
        +          "destination",
        +          "initiative"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "not": {
        +          "anyOf": [
        +            {
        +              "required": [
        +                "initiatives"
        +              ]
        +            },
        +            {
        +              "required": [
        +                "all"
        +              ]
        +            }
        +          ]
        +        },
        +        "required": [
        +          "initiative"
        +        ]
        +      }
        +    ]
        +  },
        +  {
        +    "allOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "all": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "destination": {
        +            "description": "New .zip or .amg filename inside the host artifact root; the extension is added if absent.",
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "format": {
        +            "enum": [
        +              "markdown",
        +              "amg"
        +            ],
        +            "type": "string"
        +          },
        +          "initiative": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "initiatives": {
        +            "items": {
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "minItems": 1,
        +            "type": "array",
        +            "uniqueItems": true
        +          },
        +          "request_id": {
        +            "description": "Optional stable operation key supplied by the host/SDK; see replay contract.",
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "format",
        +          "destination",
        +          "initiatives"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "not": {
        +          "anyOf": [
        +            {
        +              "required": [
        +                "initiative"
        +              ]
        +            },
        +            {
        +              "required": [
        +                "all"
        +              ]
        +            }
        +          ]
        +        },
        +        "required": [
        +          "initiatives"
        +        ]
        +      }
        +    ]
        +  },
        +  {
        +    "allOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "all": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "destination": {
        +            "description": "New .zip or .amg filename inside the host artifact root; the extension is added if absent.",
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "format": {
        +            "enum": [
        +              "markdown",
        +              "amg"
        +            ],
        +            "type": "string"
        +          },
        +          "initiative": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "initiatives": {
        +            "items": {
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "minItems": 1,
        +            "type": "array",
        +            "uniqueItems": true
        +          },
        +          "request_id": {
        +            "description": "Optional stable operation key supplied by the host/SDK; see replay contract.",
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "format",
        +          "destination",
        +          "all"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "not": {
        +          "anyOf": [
        +            {
        +              "required": [
        +                "initiative"
        +              ]
        +            },
        +            {
        +              "required": [
        +                "initiatives"
        +              ]
        +            }
        +          ]
        +        },
        +        "required": [
        +          "all"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • addedInput schema / properties / all
        Added value: +{
        +  "const": true,
        +  "type": "boolean"
        +}
      • addedInput schema / properties / destination
        Added value: +{
        +  "description": "New .zip or .amg filename inside the host artifact root; the extension is added if absent.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / format
        Added value: +{
        +  "enum": [
        +    "markdown",
        +    "amg"
        +  ],
        +  "type": "string"
        +}
      • removedInput schema / properties / initiative / default
        Removed value: -null
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • changedInput schema / properties / initiative / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • addedInput schema / properties / initiatives
        Added value: +{
        +  "items": {
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "minItems": 1,
        +  "type": "array",
        +  "uniqueItems": true
        +}
      • removedInput schema / properties / output_dir
        Removed value: -{
        -  "description": "Output directory.",
        -  "type": "string"
        -}
      • addedInput schema / properties / request_id
        Added value: +{
        +  "description": "Optional stable operation key supplied by the host/SDK; see replay contract.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "output_dir"
        -]New value: +[
        +  "format",
        +  "destination"
        +]
      • removedInput schema / title
        Removed value: -"ExportParams"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$defs": {
        +    "AmgOmission": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "reason",
        +        "count"
        +      ],
        +      "type": "object"
        +    },
        +    "ArchiveFormat": {
        +      "enum": [
        +        "markdown",
        +        "amg"
        +      ],
        +      "type": "string"
        +    },
        +    "Artifact": {
        +      "properties": {
        +        "bytes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "edges": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "format": {
        +          "$ref": "#/$defs/ArchiveFormat"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "nodes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "omissions": {
        +          "items": {
        +            "$ref": "#/$defs/AmgOmission"
        +          },
        +          "type": "array"
        +        },
        +        "path": {
        +          "type": "string"
        +        },
        +        "sha256": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "path",
        +        "format",
        +        "bytes",
        +        "sha256",
        +        "initiatives",
        +        "omissions",
        +        "nodes",
        +        "edges"
        +      ],
        +      "type": "object"
        +    },
        +    "Change": {
        +      "properties": {
        +        "after": true,
        +        "before": true,
        +        "field": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "field",
        +        "before",
        +        "after"
        +      ],
        +      "type": "object"
        +    },
        +    "Continuation": {
        +      "properties": {
        +        "cursor": {
        +          "type": "string"
        +        },
        +        "next_arguments": true
        +      },
        +      "required": [
        +        "cursor",
        +        "next_arguments"
        +      ],
        +      "type": "object"
        +    },
        +    "Coverage": {
        +      "properties": {
        +        "complete": {
        +          "type": "boolean"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "omitted": {
        +          "items": {
        +            "$ref": "#/$defs/Omission"
        +          },
        +          "type": "array"
        +        },
        +        "rules_complete": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "complete",
        +        "rules_complete",
        +        "omitted"
        +      ],
        +      "type": "object"
        +    },
        +    "Entity": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "revision": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "EvidenceResult": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "relation": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "relation"
        +      ],
        +      "type": "object"
        +    },
        +    "FailedStep": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "step": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "step",
        +        "code",
        +        "message"
        +      ],
        +      "type": "object"
        +    },
        +    "Issue": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "field": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "retryable": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "code",
        +        "message",
        +        "retryable"
        +      ],
        +      "type": "object"
        +    },
        +    "MutationData": {
        +      "properties": {
        +        "affected": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "artifacts": {
        +          "items": {
        +            "$ref": "#/$defs/Artifact"
        +          },
        +          "type": "array"
        +        },
        +        "changes": {
        +          "items": {
        +            "$ref": "#/$defs/Change"
        +          },
        +          "type": "array"
        +        },
        +        "created": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "evidence": {
        +          "items": {
        +            "$ref": "#/$defs/EvidenceResult"
        +          },
        +          "type": "array"
        +        },
        +        "failed_steps": {
        +          "items": {
        +            "$ref": "#/$defs/FailedStep"
        +          },
        +          "type": "array"
        +        },
        +        "primary": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/Entity"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "slots": {
        +          "items": {
        +            "$ref": "#/$defs/SlotChange"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "created",
        +        "affected",
        +        "changes",
        +        "evidence",
        +        "failed_steps",
        +        "slots",
        +        "artifacts"
        +      ],
        +      "type": "object"
        +    },
        +    "Omission": {
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        },
        +        "section": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "section",
        +        "count",
        +        "reason"
        +      ],
        +      "type": "object"
        +    },
        +    "SlotChange": {
        +      "properties": {
        +        "after": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "before": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "slot": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "slot",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "State": {
        +      "enum": [
        +        "ok",
        +        "applied",
        +        "unchanged",
        +        "partial",
        +        "rejected"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "properties": {
        +    "api_version": {
        +      "const": 1,
        +      "format": "uint32",
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "continuation": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Continuation"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "coverage": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Coverage"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "data": {
        +      "$ref": "#/$defs/MutationData"
        +    },
        +    "issues": {
        +      "items": {
        +        "$ref": "#/$defs/Issue"
        +      },
        +      "type": "array"
        +    },
        +    "operation": {
        +      "const": "export",
        +      "type": "string"
        +    },
        +    "replayed": {
        +      "type": "boolean"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "state": {
        +      "$ref": "#/$defs/State"
        +    }
        +  },
        +  "required": [
        +    "api_version",
        +    "operation",
        +    "state",
        +    "replayed",
        +    "data",
        +    "issues"
        +  ],
        +  "title": "Response",
        +  "type": "object"
        +}
    • Removedflag
    • Changedforget12 fields changed
      • addedInput schema / $defs
        Added value: +{
        +  "NodeRef": {
        +    "oneOf": [
        +      {
        +        "description": "Returned UUID or exact name in the call initiative; ambiguity is an error.",
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "id": {
        +            "description": "Returned canonical ID, including IDs from older vaults.",
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "initiative": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "name": {
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "initiative"
        +        ],
        +        "type": "object"
        +      }
        +    ]
        +  }
        +}
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / expected_revision
        Added value: +{
        +  "description": "Opaque revision of the primary target, as returned by reads.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • removedInput schema / properties / initiative / default
        Removed value: -null
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • changedInput schema / properties / initiative / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / properties / name
        Removed value: -{
        -  "description": "Node name (also accepts a UUIDv7 id where the verb supports\npolymorphic resolution).",
        -  "type": "string"
        -}
      • addedInput schema / properties / node
        Added value: +{
        +  "$ref": "#/$defs/NodeRef"
        +}
      • addedInput schema / properties / request_id
        Added value: +{
        +  "description": "Optional stable operation key supplied by the host/SDK; see replay contract.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "name"
        -]New value: +[
        +  "initiative",
        +  "node"
        +]
      • removedInput schema / title
        Removed value: -"NameScope"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$defs": {
        +    "AmgOmission": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "reason",
        +        "count"
        +      ],
        +      "type": "object"
        +    },
        +    "ArchiveFormat": {
        +      "enum": [
        +        "markdown",
        +        "amg"
        +      ],
        +      "type": "string"
        +    },
        +    "Artifact": {
        +      "properties": {
        +        "bytes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "edges": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "format": {
        +          "$ref": "#/$defs/ArchiveFormat"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "nodes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "omissions": {
        +          "items": {
        +            "$ref": "#/$defs/AmgOmission"
        +          },
        +          "type": "array"
        +        },
        +        "path": {
        +          "type": "string"
        +        },
        +        "sha256": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "path",
        +        "format",
        +        "bytes",
        +        "sha256",
        +        "initiatives",
        +        "omissions",
        +        "nodes",
        +        "edges"
        +      ],
        +      "type": "object"
        +    },
        +    "Change": {
        +      "properties": {
        +        "after": true,
        +        "before": true,
        +        "field": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "field",
        +        "before",
        +        "after"
        +      ],
        +      "type": "object"
        +    },
        +    "Continuation": {
        +      "properties": {
        +        "cursor": {
        +          "type": "string"
        +        },
        +        "next_arguments": true
        +      },
        +      "required": [
        +        "cursor",
        +        "next_arguments"
        +      ],
        +      "type": "object"
        +    },
        +    "Coverage": {
        +      "properties": {
        +        "complete": {
        +          "type": "boolean"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "omitted": {
        +          "items": {
        +            "$ref": "#/$defs/Omission"
        +          },
        +          "type": "array"
        +        },
        +        "rules_complete": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "complete",
        +        "rules_complete",
        +        "omitted"
        +      ],
        +      "type": "object"
        +    },
        +    "Entity": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "revision": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "EvidenceResult": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "relation": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "relation"
        +      ],
        +      "type": "object"
        +    },
        +    "FailedStep": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "step": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "step",
        +        "code",
        +        "message"
        +      ],
        +      "type": "object"
        +    },
        +    "Issue": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "field": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "retryable": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "code",
        +        "message",
        +        "retryable"
        +      ],
        +      "type": "object"
        +    },
        +    "MutationData": {
        +      "properties": {
        +        "affected": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "artifacts": {
        +          "items": {
        +            "$ref": "#/$defs/Artifact"
        +          },
        +          "type": "array"
        +        },
        +        "changes": {
        +          "items": {
        +            "$ref": "#/$defs/Change"
        +          },
        +          "type": "array"
        +        },
        +        "created": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "evidence": {
        +          "items": {
        +            "$ref": "#/$defs/EvidenceResult"
        +          },
        +          "type": "array"
        +        },
        +        "failed_steps": {
        +          "items": {
        +            "$ref": "#/$defs/FailedStep"
        +          },
        +          "type": "array"
        +        },
        +        "primary": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/Entity"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "slots": {
        +          "items": {
        +            "$ref": "#/$defs/SlotChange"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "created",
        +        "affected",
        +        "changes",
        +        "evidence",
        +        "failed_steps",
        +        "slots",
        +        "artifacts"
        +      ],
        +      "type": "object"
        +    },
        +    "Omission": {
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        },
        +        "section": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "section",
        +        "count",
        +        "reason"
        +      ],
        +      "type": "object"
        +    },
        +    "SlotChange": {
        +      "properties": {
        +        "after": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "before": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "slot": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "slot",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "State": {
        +      "enum": [
        +        "ok",
        +        "applied",
        +        "unchanged",
        +        "partial",
        +        "rejected"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "properties": {
        +    "api_version": {
        +      "const": 1,
        +      "format": "uint32",
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "continuation": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Continuation"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "coverage": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Coverage"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "data": {
        +      "$ref": "#/$defs/MutationData"
        +    },
        +    "issues": {
        +      "items": {
        +        "$ref": "#/$defs/Issue"
        +      },
        +      "type": "array"
        +    },
        +    "operation": {
        +      "const": "forget",
        +      "type": "string"
        +    },
        +    "replayed": {
        +      "type": "boolean"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "state": {
        +      "$ref": "#/$defs/State"
        +    }
        +  },
        +  "required": [
        +    "api_version",
        +    "operation",
        +    "state",
        +    "replayed",
        +    "data",
        +    "issues"
        +  ],
        +  "title": "Response",
        +  "type": "object"
        +}
    • Changedhistory12 fields changed
      • addedInput schema / $defs
        Added value: +{
        +  "NodeRef": {
        +    "oneOf": [
        +      {
        +        "description": "Returned UUID or exact name in the call initiative; ambiguity is an error.",
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "id": {
        +            "description": "Returned canonical ID, including IDs from older vaults.",
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "initiative": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "name": {
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "initiative"
        +        ],
        +        "type": "object"
        +      }
        +    ]
        +  }
        +}
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / budget_chars
        Added value: +{
        +  "default": 8000,
        +  "maximum": 64000,
        +  "minimum": 512,
        +  "type": "integer"
        +}
      • addedInput schema / properties / cursor
        Added value: +{
        +  "minLength": 1,
        +  "type": "string"
        +}
      • removedInput schema / properties / initiative / default
        Removed value: -null
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • changedInput schema / properties / initiative / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / properties / name
        Removed value: -{
        -  "description": "Node name (also accepts a UUIDv7 id where the verb supports\npolymorphic resolution).",
        -  "type": "string"
        -}
      • addedInput schema / properties / node
        Added value: +{
        +  "$ref": "#/$defs/NodeRef"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "name"
        -]New value: +[
        +  "initiative",
        +  "node"
        +]
      • removedInput schema / title
        Removed value: -"NameScope"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$defs": {
        +    "AmgOmission": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "reason",
        +        "count"
        +      ],
        +      "type": "object"
        +    },
        +    "ArchiveFormat": {
        +      "enum": [
        +        "markdown",
        +        "amg"
        +      ],
        +      "type": "string"
        +    },
        +    "Artifact": {
        +      "properties": {
        +        "bytes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "edges": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "format": {
        +          "$ref": "#/$defs/ArchiveFormat"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "nodes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "omissions": {
        +          "items": {
        +            "$ref": "#/$defs/AmgOmission"
        +          },
        +          "type": "array"
        +        },
        +        "path": {
        +          "type": "string"
        +        },
        +        "sha256": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "path",
        +        "format",
        +        "bytes",
        +        "sha256",
        +        "initiatives",
        +        "omissions",
        +        "nodes",
        +        "edges"
        +      ],
        +      "type": "object"
        +    },
        +    "Change": {
        +      "properties": {
        +        "after": true,
        +        "before": true,
        +        "field": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "field",
        +        "before",
        +        "after"
        +      ],
        +      "type": "object"
        +    },
        +    "ContentRange": {
        +      "properties": {
        +        "end": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "start": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "total": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "start",
        +        "end",
        +        "total"
        +      ],
        +      "type": "object"
        +    },
        +    "Continuation": {
        +      "properties": {
        +        "cursor": {
        +          "type": "string"
        +        },
        +        "next_arguments": true
        +      },
        +      "required": [
        +        "cursor",
        +        "next_arguments"
        +      ],
        +      "type": "object"
        +    },
        +    "Coverage": {
        +      "properties": {
        +        "complete": {
        +          "type": "boolean"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "omitted": {
        +          "items": {
        +            "$ref": "#/$defs/Omission"
        +          },
        +          "type": "array"
        +        },
        +        "rules_complete": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "complete",
        +        "rules_complete",
        +        "omitted"
        +      ],
        +      "type": "object"
        +    },
        +    "Entity": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "revision": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "EvidenceResult": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "relation": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "relation"
        +      ],
        +      "type": "object"
        +    },
        +    "FailedStep": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "step": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "step",
        +        "code",
        +        "message"
        +      ],
        +      "type": "object"
        +    },
        +    "HistoryData": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "lineage": {
        +          "items": {
        +            "$ref": "#/$defs/RelationData"
        +          },
        +          "type": "array"
        +        },
        +        "metadata_events": {
        +          "items": true,
        +          "type": "array"
        +        },
        +        "versions": {
        +          "items": {
        +            "$ref": "#/$defs/HistoryEvent"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "versions",
        +        "metadata_events",
        +        "lineage"
        +      ],
        +      "type": "object"
        +    },
        +    "HistoryEvent": {
        +      "properties": {
        +        "asserted": {
        +          "type": "boolean"
        +        },
        +        "body": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "body_range": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/ContentRange"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "name": {
        +          "type": "string"
        +        },
        +        "recorded_at": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "recorded_at",
        +        "asserted",
        +        "name"
        +      ],
        +      "type": "object"
        +    },
        +    "Issue": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "field": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "retryable": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "code",
        +        "message",
        +        "retryable"
        +      ],
        +      "type": "object"
        +    },
        +    "MutationData": {
        +      "properties": {
        +        "affected": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "artifacts": {
        +          "items": {
        +            "$ref": "#/$defs/Artifact"
        +          },
        +          "type": "array"
        +        },
        +        "changes": {
        +          "items": {
        +            "$ref": "#/$defs/Change"
        +          },
        +          "type": "array"
        +        },
        +        "created": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "evidence": {
        +          "items": {
        +            "$ref": "#/$defs/EvidenceResult"
        +          },
        +          "type": "array"
        +        },
        +        "failed_steps": {
        +          "items": {
        +            "$ref": "#/$defs/FailedStep"
        +          },
        +          "type": "array"
        +        },
        +        "primary": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/Entity"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "slots": {
        +          "items": {
        +            "$ref": "#/$defs/SlotChange"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "created",
        +        "affected",
        +        "changes",
        +        "evidence",
        +        "failed_steps",
        +        "slots",
        +        "artifacts"
        +      ],
        +      "type": "object"
        +    },
        +    "Omission": {
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        },
        +        "section": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "section",
        +        "count",
        +        "reason"
        +      ],
        +      "type": "object"
        +    },
        +    "RelationData": {
        +      "properties": {
        +        "dst_store": {
        +          "type": "string"
        +        },
        +        "edge_type": {
        +          "type": "string"
        +        },
        +        "from": {
        +          "type": "string"
        +        },
        +        "properties": true,
        +        "revision": {
        +          "type": "string"
        +        },
        +        "to": {
        +          "type": "string"
        +        },
        +        "weight": {
        +          "format": "double",
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "revision",
        +        "from",
        +        "to",
        +        "edge_type",
        +        "weight",
        +        "properties",
        +        "dst_store"
        +      ],
        +      "type": "object"
        +    },
        +    "SlotChange": {
        +      "properties": {
        +        "after": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "before": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "slot": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "slot",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "State": {
        +      "enum": [
        +        "ok",
        +        "applied",
        +        "unchanged",
        +        "partial",
        +        "rejected"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "properties": {
        +    "api_version": {
        +      "const": 1,
        +      "format": "uint32",
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "continuation": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Continuation"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "coverage": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Coverage"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "data": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/HistoryData"
        +        },
        +        {
        +          "$ref": "#/$defs/MutationData"
        +        }
        +      ]
        +    },
        +    "issues": {
        +      "items": {
        +        "$ref": "#/$defs/Issue"
        +      },
        +      "type": "array"
        +    },
        +    "operation": {
        +      "const": "history",
        +      "type": "string"
        +    },
        +    "replayed": {
        +      "type": "boolean"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "state": {
        +      "$ref": "#/$defs/State"
        +    }
        +  },
        +  "required": [
        +    "api_version",
        +    "operation",
        +    "state",
        +    "replayed",
        +    "data",
        +    "issues"
        +  ],
        +  "title": "Response",
        +  "type": "object"
        +}
    • Removedhygiene
    • Removedideas
    • Removedimport
    • Removedinconclusive
    • Addedinitiative_manage
    • Changedinitiatives7 fields changed
      • addedInput schema / $schema
        Added value: +"https://json-schema.org/draft/2020-12/schema"
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / budget_chars
        Added value: +{
        +  "default": 8000,
        +  "maximum": 64000,
        +  "minimum": 512,
        +  "type": "integer"
        +}
      • addedInput schema / properties / cursor
        Added value: +{
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / filter
        Added value: +{
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / required
        Added value: +[]
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$defs": {
        +    "AmgOmission": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "reason",
        +        "count"
        +      ],
        +      "type": "object"
        +    },
        +    "ArchiveFormat": {
        +      "enum": [
        +        "markdown",
        +        "amg"
        +      ],
        +      "type": "string"
        +    },
        +    "Artifact": {
        +      "properties": {
        +        "bytes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "edges": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "format": {
        +          "$ref": "#/$defs/ArchiveFormat"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "nodes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "omissions": {
        +          "items": {
        +            "$ref": "#/$defs/AmgOmission"
        +          },
        +          "type": "array"
        +        },
        +        "path": {
        +          "type": "string"
        +        },
        +        "sha256": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "path",
        +        "format",
        +        "bytes",
        +        "sha256",
        +        "initiatives",
        +        "omissions",
        +        "nodes",
        +        "edges"
        +      ],
        +      "type": "object"
        +    },
        +    "Change": {
        +      "properties": {
        +        "after": true,
        +        "before": true,
        +        "field": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "field",
        +        "before",
        +        "after"
        +      ],
        +      "type": "object"
        +    },
        +    "Continuation": {
        +      "properties": {
        +        "cursor": {
        +          "type": "string"
        +        },
        +        "next_arguments": true
        +      },
        +      "required": [
        +        "cursor",
        +        "next_arguments"
        +      ],
        +      "type": "object"
        +    },
        +    "Coverage": {
        +      "properties": {
        +        "complete": {
        +          "type": "boolean"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "omitted": {
        +          "items": {
        +            "$ref": "#/$defs/Omission"
        +          },
        +          "type": "array"
        +        },
        +        "rules_complete": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "complete",
        +        "rules_complete",
        +        "omitted"
        +      ],
        +      "type": "object"
        +    },
        +    "Entity": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "revision": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "EvidenceResult": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "relation": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "relation"
        +      ],
        +      "type": "object"
        +    },
        +    "FailedStep": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "step": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "step",
        +        "code",
        +        "message"
        +      ],
        +      "type": "object"
        +    },
        +    "InitiativesData": {
        +      "properties": {
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "initiatives"
        +      ],
        +      "type": "object"
        +    },
        +    "Issue": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "field": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "retryable": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "code",
        +        "message",
        +        "retryable"
        +      ],
        +      "type": "object"
        +    },
        +    "MutationData": {
        +      "properties": {
        +        "affected": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "artifacts": {
        +          "items": {
        +            "$ref": "#/$defs/Artifact"
        +          },
        +          "type": "array"
        +        },
        +        "changes": {
        +          "items": {
        +            "$ref": "#/$defs/Change"
        +          },
        +          "type": "array"
        +        },
        +        "created": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "evidence": {
        +          "items": {
        +            "$ref": "#/$defs/EvidenceResult"
        +          },
        +          "type": "array"
        +        },
        +        "failed_steps": {
        +          "items": {
        +            "$ref": "#/$defs/FailedStep"
        +          },
        +          "type": "array"
        +        },
        +        "primary": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/Entity"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "slots": {
        +          "items": {
        +            "$ref": "#/$defs/SlotChange"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "created",
        +        "affected",
        +        "changes",
        +        "evidence",
        +        "failed_steps",
        +        "slots",
        +        "artifacts"
        +      ],
        +      "type": "object"
        +    },
        +    "Omission": {
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        },
        +        "section": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "section",
        +        "count",
        +        "reason"
        +      ],
        +      "type": "object"
        +    },
        +    "SlotChange": {
        +      "properties": {
        +        "after": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "before": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "slot": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "slot",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "State": {
        +      "enum": [
        +        "ok",
        +        "applied",
        +        "unchanged",
        +        "partial",
        +        "rejected"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "properties": {
        +    "api_version": {
        +      "const": 1,
        +      "format": "uint32",
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "continuation": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Continuation"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "coverage": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Coverage"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "data": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/InitiativesData"
        +        },
        +        {
        +          "$ref": "#/$defs/MutationData"
        +        }
        +      ]
        +    },
        +    "issues": {
        +      "items": {
        +        "$ref": "#/$defs/Issue"
        +      },
        +      "type": "array"
        +    },
        +    "operation": {
        +      "const": "initiatives",
        +      "type": "string"
        +    },
        +    "replayed": {
        +      "type": "boolean"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "state": {
        +      "$ref": "#/$defs/State"
        +    }
        +  },
        +  "required": [
        +    "api_version",
        +    "operation",
        +    "state",
        +    "replayed",
        +    "data",
        +    "issues"
        +  ],
        +  "title": "Response",
        +  "type": "object"
        +}
    • Removedjot
    • Removedlayer
    • Addedlifecycle
    • Removedlink
    • Changedlink_cloud16 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / cloud / default
        Removed value: -null
      • removedInput schema / properties / cloud / description
        Removed value: -"Cloud the dst lives in (multi-cloud). Omit for the default cloud — the\nsoft link records the name so resolution routes to the right endpoint."
      • addedInput schema / properties / cloud / minLength
        Added value: +1
      • changedInput schema / properties / cloud / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / properties / cloud_id / description
        Removed value: -"UUIDv7 id of the cloud node to link to."
      • addedInput schema / properties / cloud_id / minLength
        Added value: +1
      • removedInput schema / properties / edge_type / default
        Removed value: -null
      • removedInput schema / properties / edge_type / description
        Removed value: -"Edge type for the soft link — closed vocabulary, one of: `refers_to` (default), `causal`, `derived_from`, `contradicts`, `part_of`, `blocks`, `targets`, `supersedes`, `verifies`, `falsifies`, `temporal`, `consolidated_to`."
      • changedInput schema / properties / edge_type / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / properties / initiative / description
        Removed value: -"Initiative scope (both sides share the same initiative name)."
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • removedInput schema / properties / name / description
        Removed value: -"Local node name or UUIDv7 id to soft-link from."
      • addedInput schema / properties / name / minLength
        Added value: +1
      • changedInput schema / required
        Previous value: -[
        -  "name",
        -  "cloud_id",
        -  "initiative"
        -]New value: +[
        +  "initiative",
        +  "name",
        +  "cloud_id"
        +]
      • removedInput schema / title
        Removed value: -"LinkCloudParams"
    • Removedlint
    • Removedmerge_initiative
    • Removedneighbours
    • Addednote
    • Removedoutcomes
    • Removedoverview
    • Removedpath
    • Changedpin16 fields changed
      • addedInput schema / $defs
        Added value: +{
        +  "NodeRef": {
        +    "oneOf": [
        +      {
        +        "description": "Returned UUID or exact name in the call initiative; ambiguity is an error.",
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "id": {
        +            "description": "Returned canonical ID, including IDs from older vaults.",
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "initiative": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "name": {
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "initiative"
        +        ],
        +        "type": "object"
        +      }
        +    ]
        +  }
        +}
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / allOf
        Added value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "enabled": {
        +        "type": "boolean"
        +      },
        +      "expected_revision": {
        +        "description": "Opaque revision of the primary target, as returned by reads.",
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "initiative": {
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "node": {
        +        "$ref": "#/$defs/NodeRef"
        +      },
        +      "reason": {
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "request_id": {
        +        "description": "Optional stable operation key supplied by the host/SDK; see replay contract.",
        +        "minLength": 1,
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "initiative",
        +      "node",
        +      "enabled"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "if": {
        +      "properties": {
        +        "enabled": {
        +          "const": true
        +        }
        +      }
        +    },
        +    "then": {
        +      "required": [
        +        "reason"
        +      ]
        +    }
        +  }
        +]
      • addedInput schema / properties / enabled
        Added value: +{
        +  "type": "boolean"
        +}
      • addedInput schema / properties / expected_revision
        Added value: +{
        +  "description": "Opaque revision of the primary target, as returned by reads.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • removedInput schema / properties / initiative / default
        Removed value: -null
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • changedInput schema / properties / initiative / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / properties / name
        Removed value: -{
        -  "description": "Node name or UUIDv7 id.",
        -  "type": "string"
        -}
      • addedInput schema / properties / node
        Added value: +{
        +  "$ref": "#/$defs/NodeRef"
        +}
      • removedInput schema / properties / reason / description
        Removed value: -"Why the node deserves a place in the active window."
      • addedInput schema / properties / reason / minLength
        Added value: +1
      • addedInput schema / properties / request_id
        Added value: +{
        +  "description": "Optional stable operation key supplied by the host/SDK; see replay contract.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "name",
        -  "reason"
        -]New value: +[
        +  "initiative",
        +  "node",
        +  "enabled"
        +]
      • removedInput schema / title
        Removed value: -"PinParams"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$defs": {
        +    "AmgOmission": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "reason",
        +        "count"
        +      ],
        +      "type": "object"
        +    },
        +    "ArchiveFormat": {
        +      "enum": [
        +        "markdown",
        +        "amg"
        +      ],
        +      "type": "string"
        +    },
        +    "Artifact": {
        +      "properties": {
        +        "bytes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "edges": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "format": {
        +          "$ref": "#/$defs/ArchiveFormat"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "nodes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "omissions": {
        +          "items": {
        +            "$ref": "#/$defs/AmgOmission"
        +          },
        +          "type": "array"
        +        },
        +        "path": {
        +          "type": "string"
        +        },
        +        "sha256": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "path",
        +        "format",
        +        "bytes",
        +        "sha256",
        +        "initiatives",
        +        "omissions",
        +        "nodes",
        +        "edges"
        +      ],
        +      "type": "object"
        +    },
        +    "Change": {
        +      "properties": {
        +        "after": true,
        +        "before": true,
        +        "field": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "field",
        +        "before",
        +        "after"
        +      ],
        +      "type": "object"
        +    },
        +    "Continuation": {
        +      "properties": {
        +        "cursor": {
        +          "type": "string"
        +        },
        +        "next_arguments": true
        +      },
        +      "required": [
        +        "cursor",
        +        "next_arguments"
        +      ],
        +      "type": "object"
        +    },
        +    "Coverage": {
        +      "properties": {
        +        "complete": {
        +          "type": "boolean"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "omitted": {
        +          "items": {
        +            "$ref": "#/$defs/Omission"
        +          },
        +          "type": "array"
        +        },
        +        "rules_complete": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "complete",
        +        "rules_complete",
        +        "omitted"
        +      ],
        +      "type": "object"
        +    },
        +    "Entity": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "revision": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "EvidenceResult": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "relation": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "relation"
        +      ],
        +      "type": "object"
        +    },
        +    "FailedStep": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "step": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "step",
        +        "code",
        +        "message"
        +      ],
        +      "type": "object"
        +    },
        +    "Issue": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "field": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "retryable": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "code",
        +        "message",
        +        "retryable"
        +      ],
        +      "type": "object"
        +    },
        +    "MutationData": {
        +      "properties": {
        +        "affected": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "artifacts": {
        +          "items": {
        +            "$ref": "#/$defs/Artifact"
        +          },
        +          "type": "array"
        +        },
        +        "changes": {
        +          "items": {
        +            "$ref": "#/$defs/Change"
        +          },
        +          "type": "array"
        +        },
        +        "created": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "evidence": {
        +          "items": {
        +            "$ref": "#/$defs/EvidenceResult"
        +          },
        +          "type": "array"
        +        },
        +        "failed_steps": {
        +          "items": {
        +            "$ref": "#/$defs/FailedStep"
        +          },
        +          "type": "array"
        +        },
        +        "primary": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/Entity"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "slots": {
        +          "items": {
        +            "$ref": "#/$defs/SlotChange"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "created",
        +        "affected",
        +        "changes",
        +        "evidence",
        +        "failed_steps",
        +        "slots",
        +        "artifacts"
        +      ],
        +      "type": "object"
        +    },
        +    "Omission": {
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        },
        +        "section": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "section",
        +        "count",
        +        "reason"
        +      ],
        +      "type": "object"
        +    },
        +    "SlotChange": {
        +      "properties": {
        +        "after": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "before": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "slot": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "slot",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "State": {
        +      "enum": [
        +        "ok",
        +        "applied",
        +        "unchanged",
        +        "partial",
        +        "rejected"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "properties": {
        +    "api_version": {
        +      "const": 1,
        +      "format": "uint32",
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "continuation": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Continuation"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "coverage": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Coverage"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "data": {
        +      "$ref": "#/$defs/MutationData"
        +    },
        +    "issues": {
        +      "items": {
        +        "$ref": "#/$defs/Issue"
        +      },
        +      "type": "array"
        +    },
        +    "operation": {
        +      "const": "pin",
        +      "type": "string"
        +    },
        +    "replayed": {
        +      "type": "boolean"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "state": {
        +      "$ref": "#/$defs/State"
        +    }
        +  },
        +  "required": [
        +    "api_version",
        +    "operation",
        +    "state",
        +    "replayed",
        +    "data",
        +    "issues"
        +  ],
        +  "title": "Response",
        +  "type": "object"
        +}
    • Changedpolicy17 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / clouds / default
        Removed value: -null
      • removedInput schema / properties / clouds / description
        Removed value: -"Restrict this initiative to named clouds — comma or space separated.\n`policy` says WHETHER an initiative may leave; this says WHERE TO. An\ninitiative with no list may go to any configured cloud, which is how\nevery initiative behaves until this is set. Pass an empty string to\nclear the restriction. Set independently of `policy`, so restricting\ndoes not re-open and re-opening does not un-restrict."
      • addedInput schema / properties / clouds / items
        Added value: +{
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / clouds / minItems
        Added value: +0
      • changedInput schema / properties / clouds / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"array"
      • addedInput schema / properties / clouds / uniqueItems
        Added value: +true
      • addedInput schema / properties / expected_revision
        Added value: +{
        +  "description": "Opaque revision of the primary target, as returned by reads.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • removedInput schema / properties / initiative / description
        Removed value: -"Initiative whose cloud sharing policy to read or set."
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • removedInput schema / properties / policy / default
        Removed value: -null
      • removedInput schema / properties / policy / description
        Removed value: -"New policy: `private` (default, never leaves), `team` (shared nodes\nmay sync), or `ask`. Omit to leave it as it is."
      • addedInput schema / properties / policy / enum
        Added value: +[
        +  "private",
        +  "team",
        +  "ask"
        +]
      • changedInput schema / properties / policy / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • addedInput schema / properties / request_id
        Added value: +{
        +  "description": "Optional stable operation key supplied by the host/SDK; see replay contract.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • removedInput schema / title
        Removed value: -"PolicyParams"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$defs": {
        +    "AmgOmission": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "reason",
        +        "count"
        +      ],
        +      "type": "object"
        +    },
        +    "ArchiveFormat": {
        +      "enum": [
        +        "markdown",
        +        "amg"
        +      ],
        +      "type": "string"
        +    },
        +    "Artifact": {
        +      "properties": {
        +        "bytes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "edges": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "format": {
        +          "$ref": "#/$defs/ArchiveFormat"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "nodes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "omissions": {
        +          "items": {
        +            "$ref": "#/$defs/AmgOmission"
        +          },
        +          "type": "array"
        +        },
        +        "path": {
        +          "type": "string"
        +        },
        +        "sha256": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "path",
        +        "format",
        +        "bytes",
        +        "sha256",
        +        "initiatives",
        +        "omissions",
        +        "nodes",
        +        "edges"
        +      ],
        +      "type": "object"
        +    },
        +    "Change": {
        +      "properties": {
        +        "after": true,
        +        "before": true,
        +        "field": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "field",
        +        "before",
        +        "after"
        +      ],
        +      "type": "object"
        +    },
        +    "Continuation": {
        +      "properties": {
        +        "cursor": {
        +          "type": "string"
        +        },
        +        "next_arguments": true
        +      },
        +      "required": [
        +        "cursor",
        +        "next_arguments"
        +      ],
        +      "type": "object"
        +    },
        +    "Coverage": {
        +      "properties": {
        +        "complete": {
        +          "type": "boolean"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "omitted": {
        +          "items": {
        +            "$ref": "#/$defs/Omission"
        +          },
        +          "type": "array"
        +        },
        +        "rules_complete": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "complete",
        +        "rules_complete",
        +        "omitted"
        +      ],
        +      "type": "object"
        +    },
        +    "Entity": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "revision": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "EvidenceResult": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "relation": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "relation"
        +      ],
        +      "type": "object"
        +    },
        +    "FailedStep": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "step": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "step",
        +        "code",
        +        "message"
        +      ],
        +      "type": "object"
        +    },
        +    "Issue": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "field": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "retryable": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "code",
        +        "message",
        +        "retryable"
        +      ],
        +      "type": "object"
        +    },
        +    "MutationData": {
        +      "properties": {
        +        "affected": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "artifacts": {
        +          "items": {
        +            "$ref": "#/$defs/Artifact"
        +          },
        +          "type": "array"
        +        },
        +        "changes": {
        +          "items": {
        +            "$ref": "#/$defs/Change"
        +          },
        +          "type": "array"
        +        },
        +        "created": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "evidence": {
        +          "items": {
        +            "$ref": "#/$defs/EvidenceResult"
        +          },
        +          "type": "array"
        +        },
        +        "failed_steps": {
        +          "items": {
        +            "$ref": "#/$defs/FailedStep"
        +          },
        +          "type": "array"
        +        },
        +        "primary": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/Entity"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "slots": {
        +          "items": {
        +            "$ref": "#/$defs/SlotChange"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "created",
        +        "affected",
        +        "changes",
        +        "evidence",
        +        "failed_steps",
        +        "slots",
        +        "artifacts"
        +      ],
        +      "type": "object"
        +    },
        +    "Omission": {
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        },
        +        "section": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "section",
        +        "count",
        +        "reason"
        +      ],
        +      "type": "object"
        +    },
        +    "SlotChange": {
        +      "properties": {
        +        "after": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "before": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "slot": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "slot",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "State": {
        +      "enum": [
        +        "ok",
        +        "applied",
        +        "unchanged",
        +        "partial",
        +        "rejected"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "properties": {
        +    "api_version": {
        +      "const": 1,
        +      "format": "uint32",
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "continuation": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Continuation"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "coverage": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Coverage"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "data": {
        +      "$ref": "#/$defs/MutationData"
        +    },
        +    "issues": {
        +      "items": {
        +        "$ref": "#/$defs/Issue"
        +      },
        +      "type": "array"
        +    },
        +    "operation": {
        +      "const": "policy",
        +      "type": "string"
        +    },
        +    "replayed": {
        +      "type": "boolean"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "state": {
        +      "$ref": "#/$defs/State"
        +    }
        +  },
        +  "required": [
        +    "api_version",
        +    "operation",
        +    "state",
        +    "replayed",
        +    "data",
        +    "issues"
        +  ],
        +  "title": "Response",
        +  "type": "object"
        +}
    • Changedpull11 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / cloud / default
        Removed value: -null
      • removedInput schema / properties / cloud / description
        Removed value: -"Source cloud name in a multi-cloud setup. Omit for the default cloud."
      • addedInput schema / properties / cloud / minLength
        Added value: +1
      • changedInput schema / properties / cloud / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / properties / id / description
        Removed value: -"UUIDv7 id of the cloud node to materialise into the local vault."
      • addedInput schema / properties / id / minLength
        Added value: +1
      • removedInput schema / properties / initiative / description
        Removed value: -"Initiative to attach the pulled node to locally."
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • changedInput schema / required
        Previous value: -[
        -  "id",
        -  "initiative"
        -]New value: +[
        +  "initiative",
        +  "id"
        +]
      • removedInput schema / title
        Removed value: -"PullParams"
    • Addedread
    • Removedrecall
    • Removedrecent
    • Removedrechain
    • Addedreference
    • Changedreflect11 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / budget_chars
        Added value: +{
        +  "default": 8000,
        +  "maximum": 64000,
        +  "minimum": 512,
        +  "type": "integer"
        +}
      • addedInput schema / properties / cursor
        Added value: +{
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / include
        Added value: +{
        +  "items": {
        +    "enum": [
        +      "integrity",
        +      "work",
        +      "staleness",
        +      "scope",
        +      "sharing"
        +    ],
        +    "type": "string"
        +  },
        +  "minItems": 0,
        +  "type": "array",
        +  "uniqueItems": true
        +}
      • removedInput schema / properties / initiative / default
        Removed value: -null
      • removedInput schema / properties / initiative / description
        Removed value: -"Optional initiative to scope the operation to. When omitted,\nreads are cross-initiative; mutations end up un-tagged."
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • changedInput schema / properties / initiative / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • addedInput schema / required
        Added value: +[
        +  "initiative"
        +]
      • removedInput schema / title
        Removed value: -"ScopeOnly"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$defs": {
        +    "AmgOmission": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "reason",
        +        "count"
        +      ],
        +      "type": "object"
        +    },
        +    "ArchiveFormat": {
        +      "enum": [
        +        "markdown",
        +        "amg"
        +      ],
        +      "type": "string"
        +    },
        +    "Artifact": {
        +      "properties": {
        +        "bytes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "edges": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "format": {
        +          "$ref": "#/$defs/ArchiveFormat"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "nodes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "omissions": {
        +          "items": {
        +            "$ref": "#/$defs/AmgOmission"
        +          },
        +          "type": "array"
        +        },
        +        "path": {
        +          "type": "string"
        +        },
        +        "sha256": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "path",
        +        "format",
        +        "bytes",
        +        "sha256",
        +        "initiatives",
        +        "omissions",
        +        "nodes",
        +        "edges"
        +      ],
        +      "type": "object"
        +    },
        +    "Change": {
        +      "properties": {
        +        "after": true,
        +        "before": true,
        +        "field": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "field",
        +        "before",
        +        "after"
        +      ],
        +      "type": "object"
        +    },
        +    "ContentRange": {
        +      "properties": {
        +        "end": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "start": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "total": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "start",
        +        "end",
        +        "total"
        +      ],
        +      "type": "object"
        +    },
        +    "ContextData": {
        +      "properties": {
        +        "proposals": {
        +          "items": {
        +            "$ref": "#/$defs/RetentionProposal"
        +          },
        +          "type": "array"
        +        },
        +        "sections": {
        +          "items": {
        +            "$ref": "#/$defs/Section"
        +          },
        +          "type": "array"
        +        },
        +        "slots": {
        +          "items": {
        +            "$ref": "#/$defs/SlotChange"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "sections",
        +        "slots"
        +      ],
        +      "type": "object"
        +    },
        +    "Continuation": {
        +      "properties": {
        +        "cursor": {
        +          "type": "string"
        +        },
        +        "next_arguments": true
        +      },
        +      "required": [
        +        "cursor",
        +        "next_arguments"
        +      ],
        +      "type": "object"
        +    },
        +    "Coverage": {
        +      "properties": {
        +        "complete": {
        +          "type": "boolean"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "omitted": {
        +          "items": {
        +            "$ref": "#/$defs/Omission"
        +          },
        +          "type": "array"
        +        },
        +        "rules_complete": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "complete",
        +        "rules_complete",
        +        "omitted"
        +      ],
        +      "type": "object"
        +    },
        +    "Entity": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "revision": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "EvidenceResult": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "relation": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "relation"
        +      ],
        +      "type": "object"
        +    },
        +    "FailedStep": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "step": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "step",
        +        "code",
        +        "message"
        +      ],
        +      "type": "object"
        +    },
        +    "Issue": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "field": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "retryable": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "code",
        +        "message",
        +        "retryable"
        +      ],
        +      "type": "object"
        +    },
        +    "MutationData": {
        +      "properties": {
        +        "affected": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "artifacts": {
        +          "items": {
        +            "$ref": "#/$defs/Artifact"
        +          },
        +          "type": "array"
        +        },
        +        "changes": {
        +          "items": {
        +            "$ref": "#/$defs/Change"
        +          },
        +          "type": "array"
        +        },
        +        "created": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "evidence": {
        +          "items": {
        +            "$ref": "#/$defs/EvidenceResult"
        +          },
        +          "type": "array"
        +        },
        +        "failed_steps": {
        +          "items": {
        +            "$ref": "#/$defs/FailedStep"
        +          },
        +          "type": "array"
        +        },
        +        "primary": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/Entity"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "slots": {
        +          "items": {
        +            "$ref": "#/$defs/SlotChange"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "created",
        +        "affected",
        +        "changes",
        +        "evidence",
        +        "failed_steps",
        +        "slots",
        +        "artifacts"
        +      ],
        +      "type": "object"
        +    },
        +    "NodeData": {
        +      "properties": {
        +        "body": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "body_range": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/ContentRange"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "created_at": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "currentness": {
        +          "type": "string"
        +        },
        +        "id": {
        +          "type": "string"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "layer": {
        +          "type": "string"
        +        },
        +        "metadata_is_current": {
        +          "type": "boolean"
        +        },
        +        "name": {
        +          "type": "string"
        +        },
        +        "node_type": {
        +          "type": "string"
        +        },
        +        "properties": true,
        +        "recorded_at": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "status": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "successors": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "tags": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "tier": {
        +          "type": "string"
        +        },
        +        "visibility": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "id",
        +        "revision",
        +        "node_type",
        +        "tier",
        +        "name",
        +        "tags",
        +        "layer",
        +        "visibility",
        +        "currentness",
        +        "successors",
        +        "metadata_is_current"
        +      ],
        +      "type": "object"
        +    },
        +    "Omission": {
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        },
        +        "section": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "section",
        +        "count",
        +        "reason"
        +      ],
        +      "type": "object"
        +    },
        +    "RetentionProposal": {
        +      "properties": {
        +        "action": {
        +          "type": "string"
        +        },
        +        "from": {
        +          "type": "string"
        +        },
        +        "id": {
        +          "type": "string"
        +        },
        +        "name": {
        +          "type": "string"
        +        },
        +        "reason": {
        +          "type": "string"
        +        },
        +        "to": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "name",
        +        "action",
        +        "from",
        +        "to",
        +        "reason"
        +      ],
        +      "type": "object"
        +    },
        +    "Section": {
        +      "properties": {
        +        "details": true,
        +        "name": {
        +          "type": "string"
        +        },
        +        "records": {
        +          "items": {
        +            "$ref": "#/$defs/NodeData"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "name",
        +        "records",
        +        "details"
        +      ],
        +      "type": "object"
        +    },
        +    "SlotChange": {
        +      "properties": {
        +        "after": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "before": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "slot": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "slot",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "State": {
        +      "enum": [
        +        "ok",
        +        "applied",
        +        "unchanged",
        +        "partial",
        +        "rejected"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "properties": {
        +    "api_version": {
        +      "const": 1,
        +      "format": "uint32",
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "continuation": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Continuation"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "coverage": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Coverage"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "data": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/ContextData"
        +        },
        +        {
        +          "$ref": "#/$defs/MutationData"
        +        }
        +      ]
        +    },
        +    "issues": {
        +      "items": {
        +        "$ref": "#/$defs/Issue"
        +      },
        +      "type": "array"
        +    },
        +    "operation": {
        +      "const": "reflect",
        +      "type": "string"
        +    },
        +    "replayed": {
        +      "type": "boolean"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "state": {
        +      "$ref": "#/$defs/State"
        +    }
        +  },
        +  "required": [
        +    "api_version",
        +    "operation",
        +    "state",
        +    "replayed",
        +    "data",
        +    "issues"
        +  ],
        +  "title": "Response",
        +  "type": "object"
        +}
    • Removedrefute
    • Addedrelate
    • Removedrename_initiative
    • Addedreplace
    • Removedresolve
    • Addedretention
    • Addedreview
    • Changedrevise15 fields changed
      • addedInput schema / $defs
        Added value: +{
        +  "Applicability": {
        +    "additionalProperties": false,
        +    "minProperties": 1,
        +    "properties": {
        +      "task": {
        +        "$ref": "#/$defs/NodeRef"
        +      },
        +      "through": {
        +        "format": "date",
        +        "type": "string"
        +      }
        +    },
        +    "required": [],
        +    "type": "object"
        +  },
        +  "NodeRef": {
        +    "oneOf": [
        +      {
        +        "description": "Returned UUID or exact name in the call initiative; ambiguity is an error.",
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "id": {
        +            "description": "Returned canonical ID, including IDs from older vaults.",
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "initiative": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "name": {
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "initiative"
        +        ],
        +        "type": "object"
        +      }
        +    ]
        +  },
        +  "Patch": {
        +    "additionalProperties": false,
        +    "minProperties": 1,
        +    "properties": {
        +      "applicability": {
        +        "anyOf": [
        +          {
        +            "$ref": "#/$defs/Applicability"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "body": {
        +        "type": "string"
        +      },
        +      "constraint_state": {
        +        "enum": [
        +          "active",
        +          "released"
        +        ],
        +        "type": "string"
        +      },
        +      "description": {
        +        "type": "string"
        +      },
        +      "name": {
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "reminder": {
        +        "anyOf": [
        +          {
        +            "$ref": "#/$defs/Reminder"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      }
        +    },
        +    "required": [],
        +    "type": "object"
        +  },
        +  "Reminder": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "after": {
        +        "format": "date",
        +        "type": "string"
        +      },
        +      "window_days": {
        +        "maximum": 2147483647,
        +        "minimum": 1,
        +        "type": "integer"
        +      }
        +    },
        +    "required": [
        +      "after",
        +      "window_days"
        +    ],
        +    "type": "object"
        +  }
        +}
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / body
        Removed value: -{
        -  "default": null,
        -  "description": "New body. If omitted, keeps current.",
        -  "type": [
        -    "string",
        -    "null"
        -  ]
        -}
      • addedInput schema / properties / expected_revision
        Added value: +{
        +  "description": "Opaque revision of the primary target, as returned by reads.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • removedInput schema / properties / initiative / default
        Removed value: -null
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • changedInput schema / properties / initiative / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / properties / name
        Removed value: -{
        -  "description": "Node name.",
        -  "type": "string"
        -}
      • addedInput schema / properties / node
        Added value: +{
        +  "$ref": "#/$defs/NodeRef"
        +}
      • addedInput schema / properties / patch
        Added value: +{
        +  "$ref": "#/$defs/Patch"
        +}
      • removedInput schema / properties / rename
        Removed value: -{
        -  "default": null,
        -  "description": "New name. If omitted, keeps current.",
        -  "type": [
        -    "string",
        -    "null"
        -  ]
        -}
      • addedInput schema / properties / request_id
        Added value: +{
        +  "description": "Optional stable operation key supplied by the host/SDK; see replay contract.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "name"
        -]New value: +[
        +  "initiative",
        +  "node",
        +  "patch"
        +]
      • removedInput schema / title
        Removed value: -"ReviseParams"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$defs": {
        +    "AmgOmission": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "reason",
        +        "count"
        +      ],
        +      "type": "object"
        +    },
        +    "ArchiveFormat": {
        +      "enum": [
        +        "markdown",
        +        "amg"
        +      ],
        +      "type": "string"
        +    },
        +    "Artifact": {
        +      "properties": {
        +        "bytes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "edges": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "format": {
        +          "$ref": "#/$defs/ArchiveFormat"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "nodes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "omissions": {
        +          "items": {
        +            "$ref": "#/$defs/AmgOmission"
        +          },
        +          "type": "array"
        +        },
        +        "path": {
        +          "type": "string"
        +        },
        +        "sha256": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "path",
        +        "format",
        +        "bytes",
        +        "sha256",
        +        "initiatives",
        +        "omissions",
        +        "nodes",
        +        "edges"
        +      ],
        +      "type": "object"
        +    },
        +    "Change": {
        +      "properties": {
        +        "after": true,
        +        "before": true,
        +        "field": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "field",
        +        "before",
        +        "after"
        +      ],
        +      "type": "object"
        +    },
        +    "Continuation": {
        +      "properties": {
        +        "cursor": {
        +          "type": "string"
        +        },
        +        "next_arguments": true
        +      },
        +      "required": [
        +        "cursor",
        +        "next_arguments"
        +      ],
        +      "type": "object"
        +    },
        +    "Coverage": {
        +      "properties": {
        +        "complete": {
        +          "type": "boolean"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "omitted": {
        +          "items": {
        +            "$ref": "#/$defs/Omission"
        +          },
        +          "type": "array"
        +        },
        +        "rules_complete": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "complete",
        +        "rules_complete",
        +        "omitted"
        +      ],
        +      "type": "object"
        +    },
        +    "Entity": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "revision": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "EvidenceResult": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "relation": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "relation"
        +      ],
        +      "type": "object"
        +    },
        +    "FailedStep": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "step": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "step",
        +        "code",
        +        "message"
        +      ],
        +      "type": "object"
        +    },
        +    "Issue": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "field": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "retryable": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "code",
        +        "message",
        +        "retryable"
        +      ],
        +      "type": "object"
        +    },
        +    "MutationData": {
        +      "properties": {
        +        "affected": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "artifacts": {
        +          "items": {
        +            "$ref": "#/$defs/Artifact"
        +          },
        +          "type": "array"
        +        },
        +        "changes": {
        +          "items": {
        +            "$ref": "#/$defs/Change"
        +          },
        +          "type": "array"
        +        },
        +        "created": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "evidence": {
        +          "items": {
        +            "$ref": "#/$defs/EvidenceResult"
        +          },
        +          "type": "array"
        +        },
        +        "failed_steps": {
        +          "items": {
        +            "$ref": "#/$defs/FailedStep"
        +          },
        +          "type": "array"
        +        },
        +        "primary": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/Entity"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "slots": {
        +          "items": {
        +            "$ref": "#/$defs/SlotChange"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "created",
        +        "affected",
        +        "changes",
        +        "evidence",
        +        "failed_steps",
        +        "slots",
        +        "artifacts"
        +      ],
        +      "type": "object"
        +    },
        +    "Omission": {
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        },
        +        "section": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "section",
        +        "count",
        +        "reason"
        +      ],
        +      "type": "object"
        +    },
        +    "SlotChange": {
        +      "properties": {
        +        "after": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "before": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "slot": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "slot",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "State": {
        +      "enum": [
        +        "ok",
        +        "applied",
        +        "unchanged",
        +        "partial",
        +        "rejected"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "properties": {
        +    "api_version": {
        +      "const": 1,
        +      "format": "uint32",
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "continuation": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Continuation"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "coverage": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Coverage"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "data": {
        +      "$ref": "#/$defs/MutationData"
        +    },
        +    "issues": {
        +      "items": {
        +        "$ref": "#/$defs/Issue"
        +      },
        +      "type": "array"
        +    },
        +    "operation": {
        +      "const": "revise",
        +      "type": "string"
        +    },
        +    "replayed": {
        +      "type": "boolean"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "state": {
        +      "$ref": "#/$defs/State"
        +    }
        +  },
        +  "required": [
        +    "api_version",
        +    "operation",
        +    "state",
        +    "replayed",
        +    "data",
        +    "issues"
        +  ],
        +  "title": "Response",
        +  "type": "object"
        +}
    • Removedreweight
    • Changedsearch19 fields changed
      • addedInput schema / $defs
        Added value: +{
        +  "Filters": {
        +    "additionalProperties": false,
        +    "minProperties": 1,
        +    "properties": {
        +      "current": {
        +        "default": "preferred",
        +        "enum": [
        +          "preferred",
        +          "all"
        +        ],
        +        "type": "string"
        +      },
        +      "layers": {
        +        "items": {
        +          "$ref": "#/$defs/Layer"
        +        },
        +        "minItems": 1,
        +        "type": "array",
        +        "uniqueItems": true
        +      },
        +      "statuses": {
        +        "items": {
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "minItems": 1,
        +        "type": "array",
        +        "uniqueItems": true
        +      },
        +      "tags": {
        +        "items": {
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "minItems": 1,
        +        "type": "array",
        +        "uniqueItems": true
        +      },
        +      "tiers": {
        +        "items": {
        +          "$ref": "#/$defs/Tier"
        +        },
        +        "minItems": 1,
        +        "type": "array",
        +        "uniqueItems": true
        +      },
        +      "types": {
        +        "items": {
        +          "$ref": "#/$defs/NodeType"
        +        },
        +        "minItems": 1,
        +        "type": "array",
        +        "uniqueItems": true
        +      }
        +    },
        +    "required": [],
        +    "type": "object"
        +  },
        +  "Layer": {
        +    "enum": [
        +      "core",
        +      "hot",
        +      "warm",
        +      "cold",
        +      "frozen"
        +    ],
        +    "type": "string"
        +  },
        +  "NodeType": {
        +    "enum": [
        +      "task",
        +      "checklist",
        +      "roadmap",
        +      "experiment",
        +      "hypothesis",
        +      "scratch",
        +      "draft",
        +      "episode",
        +      "audit_event",
        +      "chain",
        +      "board",
        +      "idea",
        +      "outcome",
        +      "reference",
        +      "concept",
        +      "entity",
        +      "summary"
        +    ],
        +    "type": "string"
        +  },
        +  "Tier": {
        +    "enum": [
        +      "operational",
        +      "archival"
        +    ],
        +    "type": "string"
        +  }
        +}
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / anyOf
        Added value: +[
        +  {
        +    "allOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "budget_chars": {
        +            "default": 8000,
        +            "maximum": 64000,
        +            "minimum": 512,
        +            "type": "integer"
        +          },
        +          "cursor": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "filters": {
        +            "$ref": "#/$defs/Filters"
        +          },
        +          "initiatives": {
        +            "items": {
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "minItems": 1,
        +            "type": "array",
        +            "uniqueItems": true
        +          },
        +          "limit": {
        +            "default": 10,
        +            "maximum": 50,
        +            "minimum": 1,
        +            "type": "integer"
        +          },
        +          "match": {
        +            "default": "any",
        +            "enum": [
        +              "any",
        +              "all"
        +            ],
        +            "type": "string"
        +          },
        +          "prefix": {
        +            "default": false,
        +            "type": "boolean"
        +          },
        +          "text": {
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "initiatives",
        +          "text"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "required": [
        +          "text"
        +        ]
        +      }
        +    ]
        +  },
        +  {
        +    "allOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "budget_chars": {
        +            "default": 8000,
        +            "maximum": 64000,
        +            "minimum": 512,
        +            "type": "integer"
        +          },
        +          "cursor": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "filters": {
        +            "$ref": "#/$defs/Filters"
        +          },
        +          "initiatives": {
        +            "items": {
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "minItems": 1,
        +            "type": "array",
        +            "uniqueItems": true
        +          },
        +          "limit": {
        +            "default": 10,
        +            "maximum": 50,
        +            "minimum": 1,
        +            "type": "integer"
        +          },
        +          "match": {
        +            "default": "any",
        +            "enum": [
        +              "any",
        +              "all"
        +            ],
        +            "type": "string"
        +          },
        +          "prefix": {
        +            "default": false,
        +            "type": "boolean"
        +          },
        +          "text": {
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "initiatives",
        +          "filters"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "required": [
        +          "filters"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • addedInput schema / properties / budget_chars
        Added value: +{
        +  "default": 8000,
        +  "maximum": 64000,
        +  "minimum": 512,
        +  "type": "integer"
        +}
      • addedInput schema / properties / cursor
        Added value: +{
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / filters
        Added value: +{
        +  "$ref": "#/$defs/Filters"
        +}
      • removedInput schema / properties / initiative
        Removed value: -{
        -  "default": null,
        -  "type": [
        -    "string",
        -    "null"
        -  ]
        -}
      • addedInput schema / properties / initiatives
        Added value: +{
        +  "items": {
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "minItems": 1,
        +  "type": "array",
        +  "uniqueItems": true
        +}
      • removedInput schema / properties / limit / description
        Removed value: -"Maximum results. Capped at 50 internally."
      • removedInput schema / properties / limit / format
        Removed value: -"uint"
      • addedInput schema / properties / limit / maximum
        Added value: +50
      • changedInput schema / properties / limit / minimum
        Previous value: -0New value: +1
      • addedInput schema / properties / match
        Added value: +{
        +  "default": "any",
        +  "enum": [
        +    "any",
        +    "all"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / prefix
        Added value: +{
        +  "default": false,
        +  "type": "boolean"
        +}
      • removedInput schema / properties / query
        Removed value: -{
        -  "description": "Cozo FTS query (`AND`/`OR`/`NOT`, `\"phrase\"`, `prefix*`).",
        -  "type": "string"
        -}
      • addedInput schema / properties / text
        Added value: +{
        +  "minLength": 1,
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "query"
        -]New value: +[
        +  "initiatives"
        +]
      • removedInput schema / title
        Removed value: -"SearchParams"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$defs": {
        +    "AmgOmission": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "reason",
        +        "count"
        +      ],
        +      "type": "object"
        +    },
        +    "ArchiveFormat": {
        +      "enum": [
        +        "markdown",
        +        "amg"
        +      ],
        +      "type": "string"
        +    },
        +    "Artifact": {
        +      "properties": {
        +        "bytes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "edges": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "format": {
        +          "$ref": "#/$defs/ArchiveFormat"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "nodes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "omissions": {
        +          "items": {
        +            "$ref": "#/$defs/AmgOmission"
        +          },
        +          "type": "array"
        +        },
        +        "path": {
        +          "type": "string"
        +        },
        +        "sha256": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "path",
        +        "format",
        +        "bytes",
        +        "sha256",
        +        "initiatives",
        +        "omissions",
        +        "nodes",
        +        "edges"
        +      ],
        +      "type": "object"
        +    },
        +    "Change": {
        +      "properties": {
        +        "after": true,
        +        "before": true,
        +        "field": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "field",
        +        "before",
        +        "after"
        +      ],
        +      "type": "object"
        +    },
        +    "ContentRange": {
        +      "properties": {
        +        "end": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "start": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "total": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "start",
        +        "end",
        +        "total"
        +      ],
        +      "type": "object"
        +    },
        +    "Continuation": {
        +      "properties": {
        +        "cursor": {
        +          "type": "string"
        +        },
        +        "next_arguments": true
        +      },
        +      "required": [
        +        "cursor",
        +        "next_arguments"
        +      ],
        +      "type": "object"
        +    },
        +    "Coverage": {
        +      "properties": {
        +        "complete": {
        +          "type": "boolean"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "omitted": {
        +          "items": {
        +            "$ref": "#/$defs/Omission"
        +          },
        +          "type": "array"
        +        },
        +        "rules_complete": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "complete",
        +        "rules_complete",
        +        "omitted"
        +      ],
        +      "type": "object"
        +    },
        +    "Entity": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "revision": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "EvidenceResult": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "relation": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "relation"
        +      ],
        +      "type": "object"
        +    },
        +    "FailedStep": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "step": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "step",
        +        "code",
        +        "message"
        +      ],
        +      "type": "object"
        +    },
        +    "Issue": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "field": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "retryable": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "code",
        +        "message",
        +        "retryable"
        +      ],
        +      "type": "object"
        +    },
        +    "MutationData": {
        +      "properties": {
        +        "affected": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "artifacts": {
        +          "items": {
        +            "$ref": "#/$defs/Artifact"
        +          },
        +          "type": "array"
        +        },
        +        "changes": {
        +          "items": {
        +            "$ref": "#/$defs/Change"
        +          },
        +          "type": "array"
        +        },
        +        "created": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "evidence": {
        +          "items": {
        +            "$ref": "#/$defs/EvidenceResult"
        +          },
        +          "type": "array"
        +        },
        +        "failed_steps": {
        +          "items": {
        +            "$ref": "#/$defs/FailedStep"
        +          },
        +          "type": "array"
        +        },
        +        "primary": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/Entity"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "slots": {
        +          "items": {
        +            "$ref": "#/$defs/SlotChange"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "created",
        +        "affected",
        +        "changes",
        +        "evidence",
        +        "failed_steps",
        +        "slots",
        +        "artifacts"
        +      ],
        +      "type": "object"
        +    },
        +    "NodeData": {
        +      "properties": {
        +        "body": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "body_range": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/ContentRange"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "created_at": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "currentness": {
        +          "type": "string"
        +        },
        +        "id": {
        +          "type": "string"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "layer": {
        +          "type": "string"
        +        },
        +        "metadata_is_current": {
        +          "type": "boolean"
        +        },
        +        "name": {
        +          "type": "string"
        +        },
        +        "node_type": {
        +          "type": "string"
        +        },
        +        "properties": true,
        +        "recorded_at": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "status": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "successors": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "tags": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "tier": {
        +          "type": "string"
        +        },
        +        "visibility": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "id",
        +        "revision",
        +        "node_type",
        +        "tier",
        +        "name",
        +        "tags",
        +        "layer",
        +        "visibility",
        +        "currentness",
        +        "successors",
        +        "metadata_is_current"
        +      ],
        +      "type": "object"
        +    },
        +    "Omission": {
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        },
        +        "section": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "section",
        +        "count",
        +        "reason"
        +      ],
        +      "type": "object"
        +    },
        +    "SearchData": {
        +      "properties": {
        +        "hits": {
        +          "items": {
        +            "$ref": "#/$defs/NodeData"
        +          },
        +          "type": "array"
        +        },
        +        "total": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "hits",
        +        "total"
        +      ],
        +      "type": "object"
        +    },
        +    "SlotChange": {
        +      "properties": {
        +        "after": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "before": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "slot": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "slot",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "State": {
        +      "enum": [
        +        "ok",
        +        "applied",
        +        "unchanged",
        +        "partial",
        +        "rejected"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "properties": {
        +    "api_version": {
        +      "const": 1,
        +      "format": "uint32",
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "continuation": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Continuation"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "coverage": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Coverage"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "data": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/SearchData"
        +        },
        +        {
        +          "$ref": "#/$defs/MutationData"
        +        }
        +      ]
        +    },
        +    "issues": {
        +      "items": {
        +        "$ref": "#/$defs/Issue"
        +      },
        +      "type": "array"
        +    },
        +    "operation": {
        +      "const": "search",
        +      "type": "string"
        +    },
        +    "replayed": {
        +      "type": "boolean"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "state": {
        +      "$ref": "#/$defs/State"
        +    }
        +  },
        +  "required": [
        +    "api_version",
        +    "operation",
        +    "state",
        +    "replayed",
        +    "data",
        +    "issues"
        +  ],
        +  "title": "Response",
        +  "type": "object"
        +}
    • Removedset_status
    • Removedsettle
    • Changedshare12 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / cloud / default
        Removed value: -null
      • removedInput schema / properties / cloud / description
        Removed value: -"Target cloud name in a multi-cloud setup. Omit for the default cloud."
      • addedInput schema / properties / cloud / minLength
        Added value: +1
      • changedInput schema / properties / cloud / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / properties / force / description
        Removed value: -"Override the pre-share secret guard when it flags content. Default false."
      • removedInput schema / properties / initiative / description
        Removed value: -"Initiative scope — required; sharing is gated by its `share_policy`."
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • removedInput schema / properties / name / description
        Removed value: -"Node name or UUIDv7 id to share to the team cloud."
      • addedInput schema / properties / name / minLength
        Added value: +1
      • changedInput schema / required
        Previous value: -[
        -  "name",
        -  "initiative"
        -]New value: +[
        +  "initiative",
        +  "name"
        +]
      • removedInput schema / title
        Removed value: -"ShareParams"
    • Removedslot
    • Removedslots
    • Removedsupersede
    • Removedsurface
    • Changedsync_review4 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / initiative / description
        Removed value: -"Team initiative to review still-local nodes for."
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • removedInput schema / title
        Removed value: -"SyncReviewParams"
    • Changedsynthesise16 fields changed
      • addedInput schema / $defs
        Added value: +{
        +  "NodeRef": {
        +    "oneOf": [
        +      {
        +        "description": "Returned UUID or exact name in the call initiative; ambiguity is an error.",
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "id": {
        +            "description": "Returned canonical ID, including IDs from older vaults.",
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "initiative": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "name": {
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "initiative"
        +        ],
        +        "type": "object"
        +      }
        +    ]
        +  },
        +  "Synthesis": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "body": {
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "name": {
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "tier": {
        +        "$ref": "#/$defs/Tier"
        +      },
        +      "type": {
        +        "default": "summary",
        +        "enum": [
        +          "idea",
        +          "outcome",
        +          "summary",
        +          "concept",
        +          "entity"
        +        ],
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "name",
        +      "body"
        +    ],
        +    "type": "object"
        +  },
        +  "Tier": {
        +    "enum": [
        +      "operational",
        +      "archival"
        +    ],
        +    "type": "string"
        +  }
        +}
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / from
        Removed value: -{
        -  "description": "Seed node names.",
        -  "items": {
        -    "type": "string"
        -  },
        -  "type": "array"
        -}
      • removedInput schema / properties / initiative / default
        Removed value: -null
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • changedInput schema / properties / initiative / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / properties / new_body
        Removed value: -{
        -  "description": "Body for the synthesised node.",
        -  "type": "string"
        -}
      • removedInput schema / properties / new_name
        Removed value: -{
        -  "description": "Name for the synthesised node.",
        -  "type": "string"
        -}
      • removedInput schema / properties / new_type
        Removed value: -{
        -  "default": "summary",
        -  "description": "Type of the synthesised node (defaults `summary`). A CLOSED\nvocabulary, one of exactly these: `episode`, `task`, `checklist`,\n`roadmap`, `experiment`, `hypothesis`, `scratch`, `draft`,\n`audit_event`, `chain`, `board`, `idea`, `outcome`, `reference`,\n`concept`, `entity`, `summary`.",
        -  "type": "string"
        -}
      • addedInput schema / properties / request_id
        Added value: +{
        +  "description": "Optional stable operation key supplied by the host/SDK; see replay contract.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / result
        Added value: +{
        +  "$ref": "#/$defs/Synthesis"
        +}
      • addedInput schema / properties / sources
        Added value: +{
        +  "items": {
        +    "$ref": "#/$defs/NodeRef"
        +  },
        +  "minItems": 1,
        +  "type": "array",
        +  "uniqueItems": true
        +}
      • removedInput schema / properties / tier
        Removed value: -{
        -  "default": null,
        -  "description": "Tier override. A CLOSED vocabulary, one of exactly these:\n`operational`, `archival`. Defaults from the type. (Not to be confused\nwith the memory *layer* — `core`/`hot`/`warm`/`cold`/`frozen` — which\n`layer` sets.)",
        -  "type": [
        -    "string",
        -    "null"
        -  ]
        -}
      • changedInput schema / required
        Previous value: -[
        -  "from",
        -  "new_name",
        -  "new_body"
        -]New value: +[
        +  "initiative",
        +  "sources",
        +  "result"
        +]
      • removedInput schema / title
        Removed value: -"SynthesiseParams"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$defs": {
        +    "AmgOmission": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "reason",
        +        "count"
        +      ],
        +      "type": "object"
        +    },
        +    "ArchiveFormat": {
        +      "enum": [
        +        "markdown",
        +        "amg"
        +      ],
        +      "type": "string"
        +    },
        +    "Artifact": {
        +      "properties": {
        +        "bytes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "edges": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "format": {
        +          "$ref": "#/$defs/ArchiveFormat"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "nodes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "omissions": {
        +          "items": {
        +            "$ref": "#/$defs/AmgOmission"
        +          },
        +          "type": "array"
        +        },
        +        "path": {
        +          "type": "string"
        +        },
        +        "sha256": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "path",
        +        "format",
        +        "bytes",
        +        "sha256",
        +        "initiatives",
        +        "omissions",
        +        "nodes",
        +        "edges"
        +      ],
        +      "type": "object"
        +    },
        +    "Change": {
        +      "properties": {
        +        "after": true,
        +        "before": true,
        +        "field": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "field",
        +        "before",
        +        "after"
        +      ],
        +      "type": "object"
        +    },
        +    "Continuation": {
        +      "properties": {
        +        "cursor": {
        +          "type": "string"
        +        },
        +        "next_arguments": true
        +      },
        +      "required": [
        +        "cursor",
        +        "next_arguments"
        +      ],
        +      "type": "object"
        +    },
        +    "Coverage": {
        +      "properties": {
        +        "complete": {
        +          "type": "boolean"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "omitted": {
        +          "items": {
        +            "$ref": "#/$defs/Omission"
        +          },
        +          "type": "array"
        +        },
        +        "rules_complete": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "complete",
        +        "rules_complete",
        +        "omitted"
        +      ],
        +      "type": "object"
        +    },
        +    "Entity": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "revision": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "EvidenceResult": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "relation": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "relation"
        +      ],
        +      "type": "object"
        +    },
        +    "FailedStep": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "step": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "step",
        +        "code",
        +        "message"
        +      ],
        +      "type": "object"
        +    },
        +    "Issue": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "field": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "retryable": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "code",
        +        "message",
        +        "retryable"
        +      ],
        +      "type": "object"
        +    },
        +    "MutationData": {
        +      "properties": {
        +        "affected": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "artifacts": {
        +          "items": {
        +            "$ref": "#/$defs/Artifact"
        +          },
        +          "type": "array"
        +        },
        +        "changes": {
        +          "items": {
        +            "$ref": "#/$defs/Change"
        +          },
        +          "type": "array"
        +        },
        +        "created": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "evidence": {
        +          "items": {
        +            "$ref": "#/$defs/EvidenceResult"
        +          },
        +          "type": "array"
        +        },
        +        "failed_steps": {
        +          "items": {
        +            "$ref": "#/$defs/FailedStep"
        +          },
        +          "type": "array"
        +        },
        +        "primary": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/Entity"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "slots": {
        +          "items": {
        +            "$ref": "#/$defs/SlotChange"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "created",
        +        "affected",
        +        "changes",
        +        "evidence",
        +        "failed_steps",
        +        "slots",
        +        "artifacts"
        +      ],
        +      "type": "object"
        +    },
        +    "Omission": {
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        },
        +        "section": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "section",
        +        "count",
        +        "reason"
        +      ],
        +      "type": "object"
        +    },
        +    "SlotChange": {
        +      "properties": {
        +        "after": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "before": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "slot": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "slot",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "State": {
        +      "enum": [
        +        "ok",
        +        "applied",
        +        "unchanged",
        +        "partial",
        +        "rejected"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "properties": {
        +    "api_version": {
        +      "const": 1,
        +      "format": "uint32",
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "continuation": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Continuation"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "coverage": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Coverage"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "data": {
        +      "$ref": "#/$defs/MutationData"
        +    },
        +    "issues": {
        +      "items": {
        +        "$ref": "#/$defs/Issue"
        +      },
        +      "type": "array"
        +    },
        +    "operation": {
        +      "const": "synthesise",
        +      "type": "string"
        +    },
        +    "replayed": {
        +      "type": "boolean"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "state": {
        +      "$ref": "#/$defs/State"
        +    }
        +  },
        +  "required": [
        +    "api_version",
        +    "operation",
        +    "state",
        +    "replayed",
        +    "data",
        +    "issues"
        +  ],
        +  "title": "Response",
        +  "type": "object"
        +}
    • Removedtagged
    • Changedtask21 fields changed
      • addedInput schema / $defs
        Added value: +{
        +  "CaptureOptions": {
        +    "additionalProperties": false,
        +    "allOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "expected_slot_revision": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "layer": {
        +            "$ref": "#/$defs/Layer"
        +          },
        +          "slot": {
        +            "$ref": "#/$defs/Slot"
        +          }
        +        },
        +        "required": [],
        +        "type": "object"
        +      },
        +      {
        +        "if": {
        +          "required": [
        +            "expected_slot_revision"
        +          ]
        +        },
        +        "then": {
        +          "required": [
        +            "slot"
        +          ]
        +        }
        +      }
        +    ],
        +    "properties": {
        +      "expected_slot_revision": {
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "layer": {
        +        "$ref": "#/$defs/Layer"
        +      },
        +      "slot": {
        +        "$ref": "#/$defs/Slot"
        +      }
        +    },
        +    "required": [],
        +    "type": "object"
        +  },
        +  "EdgeType": {
        +    "enum": [
        +      "refers_to",
        +      "derived_from",
        +      "supersedes",
        +      "causal",
        +      "temporal",
        +      "contradicts",
        +      "part_of",
        +      "blocks",
        +      "targets",
        +      "verifies",
        +      "falsifies",
        +      "consolidated_to"
        +    ],
        +    "type": "string"
        +  },
        +  "Layer": {
        +    "enum": [
        +      "core",
        +      "hot",
        +      "warm",
        +      "cold",
        +      "frozen"
        +    ],
        +    "type": "string"
        +  },
        +  "NodeRef": {
        +    "oneOf": [
        +      {
        +        "description": "Returned UUID or exact name in the call initiative; ambiguity is an error.",
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "id": {
        +            "description": "Returned canonical ID, including IDs from older vaults.",
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "initiative": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "name": {
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "name",
        +          "initiative"
        +        ],
        +        "type": "object"
        +      }
        +    ]
        +  },
        +  "Relation": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "to": {
        +        "$ref": "#/$defs/NodeRef"
        +      },
        +      "type": {
        +        "$ref": "#/$defs/EdgeType"
        +      },
        +      "weight": {
        +        "maximum": 1,
        +        "minimum": 0,
        +        "type": "number"
        +      }
        +    },
        +    "required": [
        +      "to",
        +      "type",
        +      "weight"
        +    ],
        +    "type": "object"
        +  },
        +  "Slot": {
        +    "maxLength": 64,
        +    "minLength": 1,
        +    "pattern": "^[a-z][a-z0-9_-]*$",
        +    "type": "string"
        +  }
        +}
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / body / description
        Removed value: -"Free-form task description."
      • addedInput schema / properties / body / minLength
        Added value: +1
      • removedInput schema / properties / due / default
        Removed value: -null
      • removedInput schema / properties / due / description
        Removed value: -"Optional deadline. Accepts an ISO date (`2026-05-15`), an\nRFC-3339 datetime, or a future duration (`3d`, `2w`). Omit\nfor tasks without a deadline."
      • addedInput schema / properties / due / format
        Added value: +"date"
      • changedInput schema / properties / due / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / properties / edge_type
        Removed value: -{
        -  "default": null,
        -  "description": "Edge type for `link_to` — same closed vocabulary as `link`\n(`refers_to` by default, `causal`, `derived_from`, `contradicts`,\n`part_of`, `blocks`, `targets`, `supersedes`, `verifies`,\n`falsifies`, `temporal`, `consolidated_to`).",
        -  "type": [
        -    "string",
        -    "null"
        -  ]
        -}
      • removedInput schema / properties / initiative / default
        Removed value: -null
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • changedInput schema / properties / initiative / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / properties / layer
        Removed value: -{
        -  "default": null,
        -  "description": "Optional memory layer stamped at creation: `core`, `hot`, `warm`,\n`cold`, or `frozen`. Defaults to `warm`.",
        -  "type": [
        -    "string",
        -    "null"
        -  ]
        -}
      • removedInput schema / properties / link_to
        Removed value: -{
        -  "default": null,
        -  "description": "Optional: the node this one connects to, by name or id — the edge is\nmade in THIS call, while both ends are still in mind. Linking as a\nsecond step is the step nobody takes: one real vault reached 23 nodes\nand 0 edges with the nudge asking every time. Needs `weight`.",
        -  "type": [
        -    "string",
        -    "null"
        -  ]
        -}
      • addedInput schema / properties / options
        Added value: +{
        +  "$ref": "#/$defs/CaptureOptions"
        +}
      • addedInput schema / properties / related
        Added value: +{
        +  "$ref": "#/$defs/Relation"
        +}
      • addedInput schema / properties / request_id
        Added value: +{
        +  "description": "Optional stable operation key supplied by the host/SDK; see replay contract.",
        +  "minLength": 1,
        +  "type": "string"
        +}
      • removedInput schema / properties / weight
        Removed value: -{
        -  "default": null,
        -  "description": "How load-bearing the `link_to` edge is, 0..1. REQUIRED with\n`link_to`: it is the only signal knowledge chains route on, and there\nis no default because an unweighted graph makes every chain rank on\nnoise. The capture still lands without it; the edge does not.",
        -  "format": "double",
        -  "type": [
        -    "number",
        -    "null"
        -  ]
        -}
      • changedInput schema / required
        Previous value: -[
        -  "body"
        -]New value: +[
        +  "initiative",
        +  "body"
        +]
      • removedInput schema / title
        Removed value: -"TaskParams"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$defs": {
        +    "AmgOmission": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "reason",
        +        "count"
        +      ],
        +      "type": "object"
        +    },
        +    "ArchiveFormat": {
        +      "enum": [
        +        "markdown",
        +        "amg"
        +      ],
        +      "type": "string"
        +    },
        +    "Artifact": {
        +      "properties": {
        +        "bytes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "edges": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "format": {
        +          "$ref": "#/$defs/ArchiveFormat"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "nodes": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "omissions": {
        +          "items": {
        +            "$ref": "#/$defs/AmgOmission"
        +          },
        +          "type": "array"
        +        },
        +        "path": {
        +          "type": "string"
        +        },
        +        "sha256": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "path",
        +        "format",
        +        "bytes",
        +        "sha256",
        +        "initiatives",
        +        "omissions",
        +        "nodes",
        +        "edges"
        +      ],
        +      "type": "object"
        +    },
        +    "Change": {
        +      "properties": {
        +        "after": true,
        +        "before": true,
        +        "field": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "field",
        +        "before",
        +        "after"
        +      ],
        +      "type": "object"
        +    },
        +    "Continuation": {
        +      "properties": {
        +        "cursor": {
        +          "type": "string"
        +        },
        +        "next_arguments": true
        +      },
        +      "required": [
        +        "cursor",
        +        "next_arguments"
        +      ],
        +      "type": "object"
        +    },
        +    "Coverage": {
        +      "properties": {
        +        "complete": {
        +          "type": "boolean"
        +        },
        +        "initiatives": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        },
        +        "omitted": {
        +          "items": {
        +            "$ref": "#/$defs/Omission"
        +          },
        +          "type": "array"
        +        },
        +        "rules_complete": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "initiatives",
        +        "complete",
        +        "rules_complete",
        +        "omitted"
        +      ],
        +      "type": "object"
        +    },
        +    "Entity": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "revision": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "EvidenceResult": {
        +      "properties": {
        +        "id": {
        +          "type": "string"
        +        },
        +        "relation": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "relation"
        +      ],
        +      "type": "object"
        +    },
        +    "FailedStep": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "step": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "step",
        +        "code",
        +        "message"
        +      ],
        +      "type": "object"
        +    },
        +    "Issue": {
        +      "properties": {
        +        "code": {
        +          "type": "string"
        +        },
        +        "field": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "message": {
        +          "type": "string"
        +        },
        +        "retryable": {
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "code",
        +        "message",
        +        "retryable"
        +      ],
        +      "type": "object"
        +    },
        +    "MutationData": {
        +      "properties": {
        +        "affected": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "artifacts": {
        +          "items": {
        +            "$ref": "#/$defs/Artifact"
        +          },
        +          "type": "array"
        +        },
        +        "changes": {
        +          "items": {
        +            "$ref": "#/$defs/Change"
        +          },
        +          "type": "array"
        +        },
        +        "created": {
        +          "items": {
        +            "$ref": "#/$defs/Entity"
        +          },
        +          "type": "array"
        +        },
        +        "evidence": {
        +          "items": {
        +            "$ref": "#/$defs/EvidenceResult"
        +          },
        +          "type": "array"
        +        },
        +        "failed_steps": {
        +          "items": {
        +            "$ref": "#/$defs/FailedStep"
        +          },
        +          "type": "array"
        +        },
        +        "primary": {
        +          "anyOf": [
        +            {
        +              "$ref": "#/$defs/Entity"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "slots": {
        +          "items": {
        +            "$ref": "#/$defs/SlotChange"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "created",
        +        "affected",
        +        "changes",
        +        "evidence",
        +        "failed_steps",
        +        "slots",
        +        "artifacts"
        +      ],
        +      "type": "object"
        +    },
        +    "Omission": {
        +      "properties": {
        +        "count": {
        +          "format": "uint",
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "reason": {
        +          "type": "string"
        +        },
        +        "section": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "section",
        +        "count",
        +        "reason"
        +      ],
        +      "type": "object"
        +    },
        +    "SlotChange": {
        +      "properties": {
        +        "after": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "before": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "revision": {
        +          "type": "string"
        +        },
        +        "slot": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "slot",
        +        "revision"
        +      ],
        +      "type": "object"
        +    },
        +    "State": {
        +      "enum": [
        +        "ok",
        +        "applied",
        +        "unchanged",
        +        "partial",
        +        "rejected"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "properties": {
        +    "api_version": {
        +      "const": 1,
        +      "format": "uint32",
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "continuation": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Continuation"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "coverage": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/$defs/Coverage"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "data": {
        +      "$ref": "#/$defs/MutationData"
        +    },
        +    "issues": {
        +      "items": {
        +        "$ref": "#/$defs/Issue"
        +      },
        +      "type": "array"
        +    },
        +    "operation": {
        +      "const": "task",
        +      "type": "string"
        +    },
        +    "replayed": {
        +      "type": "boolean"
        +    },
        +    "request_id": {
        +      "type": [
        +        "string",
        +        "null"
        +      ]
        +    },
        +    "state": {
        +      "$ref": "#/$defs/State"
        +    }
        +  },
        +  "required": [
        +    "api_version",
        +    "operation",
        +    "state",
        +    "replayed",
        +    "data",
        +    "issues"
        +  ],
        +  "title": "Response",
        +  "type": "object"
        +}
    • Addedtask_update
    • Removedtrace
    • Addedtrail
    • Removedunlink
    • Removedunpin
    • Removedunsettle
    • Changedunshare11 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / cloud / default
        Removed value: -null
      • removedInput schema / properties / cloud / description
        Removed value: -"Which cloud to withdraw from. Required when several are configured."
      • addedInput schema / properties / cloud / minLength
        Added value: +1
      • changedInput schema / properties / cloud / type
        Previous value: -[
        -  "string",
        -  "null"
        -]New value: +"string"
      • removedInput schema / properties / initiative / description
        Removed value: -"Initiative scope — required, same as `share`."
      • addedInput schema / properties / initiative / minLength
        Added value: +1
      • removedInput schema / properties / name / description
        Removed value: -"Node name or UUIDv7 id to withdraw from the cloud."
      • addedInput schema / properties / name / minLength
        Added value: +1
      • changedInput schema / required
        Previous value: -[
        -  "name",
        -  "initiative"
        -]New value: +[
        +  "initiative",
        +  "name"
        +]
      • removedInput schema / title
        Removed value: -"UnshareParams"
    • Removedunslot
    • Addedverdict
    • Removedwhy
  2. 71 tool updatesv0.7.5
    • First observedat
    • First observedattach
    • First observedawake
    • First observedbetween
    • First observedboard
    • First observedboard_status
    • First observedchain
    • First observedcite
    • First observedclaim
    • First observedclose_review
    • First observedcloud_initiatives
    • First observedcloud_links
    • First observedcloud_recall
    • First observedclouds
    • First observedconfig
    • First observedconfirm
    • First observeddelete_initiative
    • First observeddone
    • First observeddrill
    • First observedepisode
    • First observedevidence
    • First observedexport
    • First observedflag
    • First observedforget
    • First observedhistory
    • First observedhygiene
    • First observedideas
    • First observedimport
    • First observedinconclusive
    • First observedinitiatives
    • First observedjot
    • First observedlayer
    • First observedlink
    • First observedlink_cloud
    • First observedlint
    • First observedmerge_initiative
    • First observedneighbours
    • First observedoutcomes
    • First observedoverview
    • First observedpath
    • First observedpin
    • First observedpolicy
    • First observedpull
    • First observedrecall
    • First observedrecent
    • First observedrechain
    • First observedreflect
    • First observedrefute
    • First observedrename_initiative
    • First observedresolve
    • First observedrevise
    • First observedreweight
    • First observedsearch
    • First observedset_status
    • First observedsettle
    • First observedshare
    • First observedslot
    • First observedslots
    • First observedsupersede
    • First observedsurface
    • First observedsync_review
    • First observedsynthesise
    • First observedtagged
    • First observedtask
    • First observedtrace
    • First observedunlink
    • First observedunpin
    • First observedunsettle
    • First observedunshare
    • First observedunslot
    • First observedwhy

TDQS

C2.7/5.0

Scored across 35 tools

Disambiguation3/5

Many tools target related memory operations, and several boundaries are fuzzy: claim vs verdict both can save verdict evidence, note/reference/synthesise all create records, and context/read/search overlap in retrieval. Detailed descriptions mitigate much of the confusion, but an agent still has to reason carefully to choose the right tool.

Naming Consistency3/5

All names are snake_case, but conventions are mixed: some are single verbs or nouns (task, claim, note, read), some are verb_noun (task_update, link_cloud), and others are noun_verb or noun_noun (initiative_manage, cloud_recall, board_config). The set is readable but does not follow a predictable pattern.

Tool Count2/5

With 35 tools, the surface is heavy for a memory/knowledge server and includes many niche maintenance, sharing, and cloud-sync operations. While the domain is broad, the count exceeds a well-scoped set and likely burdens tool selection.

Completeness4/5

The surface covers an extensive memory lifecycle: creation, revision, replacement, relations, review, trails, lifecycle tiers, retention, audit history, search/read/context, initiatives, export, and cloud sharing. Minor gaps remain, such as no import counterpart to export and no obvious initiative creation action beyond management.

Maintenance

ActivityActive
ResponsivenessWithin a week

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A local memory engine for AI agents. Stores conversation episodes, consolidates knowledge through a neuroscience-inspired lifecycle, and builds a personal knowledge graph — all in a local SQLite database.
    18
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Local-first memory engine for AI-agent teams: private/team/project ACL, associative recall, and federated sync across nodes. One SQLite file, no LLM required.
    12
    7
    Apache 2.0
  • A
    license
    A
    quality
    B
    maintenance
    Hermetic memory for AI agents — one Rust binary, one SQLite file, zero network. Recall returns evidence with provenance or abstains: no code path for making things up.
    22
    9
    AGPL 3.0