Silo

Silo tool

silo_forget

Remove knowledge from a silo. Two-step deletion: call with `query` to discover matching candidates, show them to the user, then call again with `memory_ids` set to only the ids they agreed to delete. Never pass both in one call.

Input

// Exactly ONE of query / memory_ids per call — passing both is an error.
// Step 1 — discover candidates:
{ "silo_id": "uuid | 'default'", "query": "string" }
// Step 2 — commit the user-approved subset:
{ "silo_id": "uuid | 'default'", "memory_ids": ["uuid"] }

Output

// Step 1 (query): candidates to confirm with the user
{ "status": "requires_confirmation", "query": "...",
  "matches": [{ "id": "uuid", "type": "fact",
                "content": "...", "score": 0.91 }],
  "instructions": "..." }

// Step 2 (memory_ids): committed deletion
{ "status": "forgotten", "deleted_count": 1,
  "deleted_memory_ids": ["uuid"], "not_found_ids": [] }

// Nothing matched either step:
{ "status": "no_match", "message": "..." }

Policy

Requires read_write access on the silo.

Any silo_id parameter accepts either a UUID or the reserved alias "default" see how the default alias works.