MCP Server, CLI & API Reference
Connect any MCP-compatible agent — or use the CLI directly from your terminal. One platform, two interfaces, 60+ tools across every domain in the workspace.
Inicio rápido
El MCP alojado usa OAuth sobre Streamable HTTP. Comienza con la URL de Siftable; no se requiere copiar y pegar ningún token.
1. Añade la URL del MCP alojado
Añade https://siftable.io/api/v1/mcp como un servidor o conector MCP remoto. No uses el endpoint /sse retirado.
2. Completa OAuth
Elige Connect, Authenticate o Login en tu cliente y aprueba el acceso en la pantalla de consentimiento de Siftable. No añadas un encabezado Authorization a esta configuración.
{ "mcpServers": { "siftable": { "type": "http", "url": "https://siftable.io/api/v1/mcp" } } }
3. Verifica la conexión
Llama a context_current, luego lista un proyecto o tarea. Usa find_capability cuando necesites otra acción.
# Agent calls: project_list() task_list(status: "in_progress") calendar_list_events(startDate: "2026-02-17", endDate: "2026-02-23") # Agent now has your full operational context.
CLI Installation
La CLI de Siftable te ofrece toda la superficie de comandos de la terminal más un copiloto interactivo. Utiliza los mismos registros que el MCP alojado, con autenticación específica de la CLI y capacidades locales. El binario se instala como sift (con siftable y el alias de compatibilidad exf).
1. Install
npm install -g @siftable/cli # npm bun install -g @siftable/cli # bun pnpm add -g @siftable/cli # pnpm # or run without installing npx @siftable/cli <command>
2. Authenticate
The CLI uses device flow authentication — it opens your browser, you approve, and a token is stored locally.
$ sift auth login
Your verification code: ZFMV-SBGJ
Opening browser...
If the browser didn't open, visit: https://siftable.io/app/device?code=ZFMV-SBGJ
Waiting for authorization...
Logged in successfully!
3. Run your first command
$ sift projects list NAME STATUS TASKS Siftable active 12 Marketing Site active 4 Mobile App planning 0 $ sift projects context <id> # Full project context: tasks, signals, notes, members.
Every CLI command supports --json for machine-readable output. Pipe it into jq, feed it to scripts, or let agents parse it directly.
Autenticación
Usa OAuth para MCP alojado, el flujo de dispositivo para sesiones interactivas de CLI y Personal Access Tokens para automatización no interactiva o clientes MCP locales.
Flujo de dispositivo (CLI)
Ejecuta sift auth login. La CLI abre tu navegador, inicias sesión con Google y apruebas el código del dispositivo. Se genera un PAT y se guarda en ~/.config/siftable/ automáticamente. Sin tokens que copiar y pegar.
Personal Access Token (automatización y MCP local)
Para automatización no interactiva o un cliente MCP local, crea un token en Settings → Integrations → Developer / AI Clients y pásalo en el encabezado Authorization. Los tokens estáticos no pueden usar la elevación de alcance de OAuth.
Authorization: Bearer sift_pat_your_token_here
Los tokens están limitados a dominios específicos (solo tareas, solo calendario, acceso completo, etc.). Para pipelines de CI, define SIFT_TOKEN como una variable de entorno.
$ sift auth login $ sift auth status $ sift auth logout
Los alcances de los tokens y las operaciones de escritura disponibles dependen de la configuración de tu espacio de trabajo y de tu plan. Consulta Ajustes → Integraciones → Clientes de desarrollo / IA y Precios para conocer los límites actuales de tu cuenta.
Conexión MCP
El MCP alojado de Siftable usa Streamable HTTP con OAuth. El endpoint es:
https://siftable.io/api/v1/mcp
Usa esta URL con clientes remotos compatibles con OAuth, incluidos ChatGPT, Codex, Cursor, Claude, Grok e implementaciones compatibles del SDK de MCP. La guía de configuración del MCP alojado tiene los pasos específicos para cada cliente.
Tareas
| MCP Tool | CLI | Access | Description |
|---|---|---|---|
| task_list | sift tasks list |
READ | List tasks with filters: status (inbox, next_action, in_progress, waiting_for, completed, archived), phase, project, limit. |
| task_get | sift tasks get |
READ | Get a single task with full details: description, due date, priority, project, linked code. |
| task_create | sift tasks create |
WRITE | Create a task. Accepts title, description, priority (do_now, schedule, delegate, someday), project, due date. |
| task_update | sift tasks update |
WRITE | Update task fields: title, description, status, priority, due date, project assignment. |
| task_complete | sift tasks complete |
WRITE | Mark a task as completed. |
| task_delete | sift tasks delete |
DELETE | Permanently delete a task. |
$ sift tasks list --status in_progress TITLE STATUS PRIORITY DUE Ship CLI docs in_progress do_now 2026-02-27 Fix device flow auth in_progress do_now - $ sift tasks create --title "Review PR #312" --priority do_now --json {"id":"abc-123","title":"Review PR #312","status":"inbox","priority":"do_now"}
Calendario
| MCP Tool | CLI | Access | Description |
|---|---|---|---|
| calendar_list_events | sift calendar list |
READ | List events in a date range. Returns title, start/end times, location, description. Supports limit. |
| calendar_create_event | sift calendar create |
WRITE | Create a calendar event. Requires title, startTime, endTime (ISO 8601). Optional: description, location. |
| calendar_update_event | sift calendar update |
WRITE | Update an existing event's title, times, description, or location. |
| calendar_delete_event | sift calendar delete |
DELETE | Remove an event from the calendar. |
$ sift calendar list --start 2026-02-24 --end 2026-02-28 TITLE START END LOCATION Team standup Feb 25 09:00 Feb 25 09:30 Zoom Product review Feb 26 14:00 Feb 26 15:00 Conf Room B $ sift calendar create --title "Ship CLI v0.3" \ --start 2026-02-27T10:00:00Z --end 2026-02-27T10:30:00Z
Proyectos
| MCP Tool | CLI | Access | Description |
|---|---|---|---|
| project_list | sift projects list |
READ | List projects. Filter by status (planning, active, on_hold, blocked, completed). Include archived. |
| project_get_context | sift projects context |
READ | Full project context: tasks, notes, members, signals. The richest single call for understanding a project. |
| project_create | sift projects create |
WRITE | Create a project with name, summary, status, and emoji. |
| project_update | sift projects update |
WRITE | Update project name, summary, status, or emoji. |
| project_archive | sift projects archive |
WRITE | Archive a completed or inactive project. |
Conocimiento
| MCP Tool | CLI | Access | Description |
|---|---|---|---|
| note_search | sift notes search |
READ | Semantic + full-text search across notes. Filter by project. |
| note_list | sift notes list |
READ | List notes. Filter by type (note, concept, meeting, reference, daily, dataset) and project. |
| note_get | sift notes get |
READ | Get full note content by ID. |
| note_create | sift notes create |
WRITE | Create a note with title, markdown content, type, and optional project. |
| note_update | sift notes update |
WRITE | Update note title, content, or type. |
| note_delete | sift notes delete |
DELETE | Delete a note. |
Datasets
Structured datasets support grounded summaries, grouped analysis, ranking, bucketing, time-series work, import/export, schema changes, and record mutations from the same CLI and MCP-backed platform.
| Capability | CLI | Access | Description |
|---|---|---|---|
| Browse and inspect | sift datasets list, get, query, summarize |
READ | List datasets, inspect schema, query records, and get row-count and sample summaries. |
| Grounded analysis | sift datasets analyze, aggregate, compare |
READ | Generate natural-language insights, grouped metrics, and side-by-side segment comparisons. |
| Ranking and bucketing | sift datasets rank, bucket |
READ | Sort or score records, then bucket numeric or date fields into ranges with metrics per bucket. |
| Time series and plots | sift datasets timeseries, plot |
READ | Compute lag, pct-change, rolling windows, drawdown, or normalize plotting payloads from derived results. |
| Import and export | sift datasets import, export |
WRITE | Bring CSVs in, append to existing datasets, or export filtered results back to CSV. |
| Create and materialize | sift datasets create, materialize |
WRITE | Create datasets directly or turn a derived result into a new scratch dataset. |
| Schema and records | sift datasets schema, add, update-record, delete-record |
WRITE | Modify field definitions, add rows, update rows, and delete rows with explicit commands. |
| Derived workflows | sift datasets join, compute |
READ | Join dataset slices and compute derived fields before materializing or plotting the result. |
$ sift datasets list $ sift datasets summarize <dataset-id> $ sift datasets analyze <dataset-id> --focus-fields BMI,Outcome $ sift datasets aggregate <dataset-id> --group-by Outcome \ --metrics '[{"operation":"count","as":"rows"},{"operation":"avg","field":"BMI","as":"avg_bmi"}]' $ sift datasets compare <dataset-id> --segment-field Outcome \ --metrics '[{"operation":"avg","field":"Glucose","as":"avg_glucose"}]' $ sift datasets rank <dataset-id> --sorts '[{"field":"BMI","direction":"desc"}]' --limit 10 $ sift datasets bucket <dataset-id> --field Age --bucket-count 5 \ --metrics '[{"operation":"count","as":"rows"}]'
Personas
| MCP Tool | CLI | Access | Description |
|---|---|---|---|
| people_search | sift people search |
READ | Search contacts by name. Returns relationship type, company, contact info, interaction history. |
| — | sift people list |
READ | List all contacts. CLI-only convenience wrapper. |
| person_create | sift people create |
WRITE | Create a contact with name, relationship, company, and contact details. |
| person_update | sift people update |
WRITE | Update a contact's details, relationship, or company. |
| person_delete | sift people delete |
DELETE | Delete a contact. |
Code Memory
Guarda y recupera datos curados sobre tu base de código. Inspecciona el código fuente localmente con Git, rg o tu editor; Siftable no aloja la indexación ni la búsqueda de código fuente.
| MCP Tool | CLI | Access | Description |
|---|---|---|---|
| code_memory_store | sift code memory store |
WRITE | Store a fact. Categories: architecture, integration, convention, entrypoint, gotcha, ownership. Optional: file path, repository. |
| code_memory_search | sift code memory search |
READ | Semantic search over stored code facts. Filter by category or repository. |
| code_memory_list | sift code memory list |
READ | List all stored code memories. Filter by repository. |
| code_memory_delete | sift code memory delete |
DELETE | Delete a stored code memory by ID. |
Documentos
| MCP Tool | CLI | Access | Description |
|---|---|---|---|
| upload_document | sift documents upload |
WRITE | Upload a PDF, Markdown, or text file into Knowledge. Set by file path or inline content. Auto-detects type. |
Vault
Encrypted secret storage. Store API keys, credentials, OAuth tokens, SSH keys, and sensitive notes. Values are encrypted at rest and audit-logged on read.
| MCP Tool | CLI | Access | Description |
|---|---|---|---|
| vault_create | sift vault create |
WRITE | Store a new encrypted secret. Types: env_var, credential, oauth_token, ssh_key, certificate, note. |
| vault_list | sift vault list |
READ | List vault entries (metadata only — never decrypted values). Filter by type or category. |
| vault_search | sift vault search |
READ | Search vault entries by name, slug, or description. Returns metadata only. |
| vault_update | sift vault update |
WRITE | Update vault entry metadata: name, tags, category, description. |
$ sift vault create --name "Stripe API Key" --json # Interactive prompt for sensitive payload values $ sift vault list NAME TYPE CATEGORY CREATED Stripe API Key env_var payments 2026-02-25 GitHub PAT credential devtools 2026-02-20 $ sift vault materialize run --help # Approved plaintext goes only to the exact local destination. $ sift env pull --help # Pull an approved .sift/environment.yaml bundle.
Workflows
Cross-domain recipes that combine multiple tools. These patterns work identically via MCP or CLI.
Link Code to Tasks
Connect implementation work to the task that motivated it. Agents and teammates can trace why code changed.
task_create(title: "Implement device flow auth", priority: "do_now")
# ... implement the feature ...
task_link_code(taskId: "abc-123", repositoryId: "repo-456",
commitSha: "5cf5f22", filePath: "src/services/deviceAuthService.ts",
notes: "Fixed verification_uri to use /app/device")
task_complete(taskId: "abc-123")
$ sift tasks create --title "Implement device flow auth" --priority do_now $ sift code link abc-123 --repo repo-456 \ --commit 5cf5f22 --file src/services/deviceAuthService.ts $ sift tasks complete abc-123
Project Onboarding
New to a project? Pull the full context in three commands.
# 1. Get the big picture $ sift projects context <id> # 2. See what's in flight $ sift tasks list --project <id> --status in_progress # 3. Check code conventions $ sift code memory search "architecture and conventions"
End-of-Day Review
Summarize what happened today. Works great as an agent prompt or a manual check.
# Agent calls: calendar_list_events(startDate: "2026-02-26", endDate: "2026-02-26") task_list(status: "completed", limit: 20) task_list(status: "in_progress") # Agent now has: today's meetings, completed tasks, and remaining work. # It can draft a standup summary, update project status, or flag blockers.
$ sift calendar list --start 2026-02-26 --end 2026-02-26 $ sift tasks list --status completed --limit 20 --json | jq '.tasks[] | .title' $ sift tasks list --status in_progress
Store a Debug Discovery
Found a gotcha? Store it so your future self (or your agent) doesn't rediscover it the hard way.
$ sift code memory store \ --fact "Device flow verification_uri must use /app/device (SPA path), not /device (marketing homepage)" \ --category gotcha \ --file src/services/deviceAuthService.ts
Idempotencia
Las operaciones de escritura (task_create, note_create, calendar_create_event, etc.) aceptan un parámetro opcional idempotencyKey. Si reintentas una solicitud con la misma clave, Siftable devuelve el resultado original en lugar de crear un duplicado.
task_create(
title: "Review PR #247",
priority: "do_now",
idempotencyKey: "agent-run-42-task-pr247"
)
# Safe to retry. Same key = same result.
Permisos
Los tokens tienen alcance por dominio. Un token solo-calendario no puede leer tareas ni personas. Define el alcance de tus tokens al mínimo acceso que tu agente necesita.
Alcances disponibles:
tasks:read/tasks:write— Task listing, CRUD, and completioncalendar:read/calendar:write— Event listing and creationprojects:read/projects:write— Project management and contextknowledge:read/knowledge:write— Notes, search, document uploadpeople:read/people:write— Contact search and CRM updateswork:read/work:write— Agent work queue itemsorg:read— Workspace org metadatamcp:*— All MCP operations (recommended for IDE and agent use)
Las operaciones de escritura disponibles dependen del alcance de tu token y del plan actual de tu espacio de trabajo. Revisa el token que emitiste y la página de precios actual antes de depender de las escrituras en producción.
Referencia de comandos de la CLI
All 169 commands from @siftable/cli@0.5.29, generated from the oclif manifest so this page cannot drift from sift --help. Every command also accepts the global flags (--json, --token, --api-url, --workspace, --no-input).
Todos los comandos admiten también los flags globales: --json (salida JSON sin procesar), --token / SIFT_TOKEN, --api-url / SIFT_API_URL (por defecto https://siftable.io), --workspace / SIFT_WORKSPACE_ID y --no-input (desactiva las solicitudes). Los comandos destructivos requieren --confirm o -y.
General
Comandos principales y diagnósticos.
5 comandos
sift capabilitiesMuestra las capacidades de Siftable CLI y su estado de preparación
sift commandsMuestra temas de comandos para agentes y puntos de entrada de flujos de trabajo
sift doctorDiagnostica la configuración local de la CLI de Siftable sin mostrar secretos.
sift interactiveInicia el copilot de terminal de Siftable (sift interactive): un asistente de AI integrado para tus tareas, trabajo, calendario, proyectos y personas.
- Flags
--connected-models— List eligible connected models and exit--connection <value>— Select a Model Connection UUID for a gateway invocation--max-output-tokens <value>— Maximum connected-model output tokens (1-32768)--model <value>— Select an eligible connected model for a gateway invocation--prompt <value>— Invoke the selected connected model once and exit--stream— Consume selected connected-model output incrementally
sift mermaidGenera un diagrama de Mermaid en la terminal (flujo, secuencia, estado, clase, ER, C4, arquitectura, mapa mental). Lee archivos .mmd o stdin.
- Arguments
file— Path to a .mmd file (omit to read stdin)- Flags
--ascii— Use ASCII glyphs instead of Unicode box drawing--color <none|truecolor>— Color mode--height <value>— Fit into an exact N-row pane (pads/clips)--max-height <value>— Bound the diagram to N rows (no padding)--max-width <value>— Bound the diagram to N columns (no padding)--overflow <allow|clip|error>— What to do when the diagram exceeds the bounds--unicode— Use Unicode box drawing (default)--width <value>— Fit into an exact N-column pane (pads/clips)
Agentes
Alias de agentes.
6 comandos
sift agents createCrea un alias de agente
- Flags
--alias <value>— Stable alias slug, e.g. codex--capabilities <value>— Capabilities JSON object--hidden— Hide from normal user-visible lists--name <value>— Display name--operator <value>— Linked daemon/operator ID--permissions <value>— Default permissions JSON object--type <value>— Agent type
sift agents disableDesactiva un alias de agente
- Arguments
aliasrequired — Agent alias or ID
sift agents getObtén un alias de agente
- Arguments
aliasrequired — Agent alias or ID
sift agents listLista los alias de agentes
- Flags
--include-disabled— Include disabled aliases
sift agents updateActualiza un alias de agente
- Arguments
aliasrequired — Agent alias or ID- Flags
--capabilities <value>— Capabilities JSON object--hidden— Hide from normal user-visible lists--name <value>— Display name--operator <value>— Linked daemon/operator ID--permissions <value>— Default permissions JSON object--status <active|disabled>— Alias status--type <value>— Agent type--visible— Show in normal user-visible lists
sift agents workLista el trabajo asignado a un alias de agente
- Arguments
aliasrequired — Agent alias or ID- Flags
--limit <value>— Maximum results--status <value>— Work item status
Ai
5 commands
sift ai connectShow the secure browser flow for adding a non-exportable Model Connection
- Flags
--url <value>— Siftable Model Connections settings URL
sift ai invokeInvoke an eligible connected model (requires ai:invoke and ai:connections:use)
- Flags
--connection <value>— Model Connection UUID returned by sift ai list--max-output-tokens <value>— Maximum output tokens (1-32768)--model <value>— Eligible model ID returned by sift ai list--prompt <value>— Prompt text--stream— Consume and print incremental connected-model output
sift ai listList eligible connected models (requires ai:models:read)
sift ai statusShow non-secret Model Connection status (requires ai:connections:use)
- Arguments
connection— Optional Model Connection UUID
sift ai usageShow connected-model usage totals (requires ai:usage:read)
- Flags
--from <value>— ISO-8601 period start--to <value>— ISO-8601 period end
Approvals
2 commands
sift approvals requestRequest a governed action approval; this command cannot approve or consume it
- Flags
--action <value>— Governed action identifier--destination <value>— Destination binding JSON object--expires-in <value>— Approval lifetime in seconds (30-600)--operation <value>— Operation identifier--purpose <value>— Human-readable non-secret purpose--resource-id <value>— Resource identifier--resource-type <value>— Resource type identifier
sift approvals statusInspect a governed approval requested by this CLI identity
- Arguments
idrequired — Approval ID
Autenticación
Comandos de autenticación.
3 comandos
sift auth loginAutentícate con Siftable
- Flags
--scope <ai:models:read|ai:invoke|ai:usage:read|ai:connections:use|vault:metadata:read|vault:manage|vault:audit:read>— Incremental AI invocation or Vault scope to request (repeatable; management AI scopes and plaintext reveal are unavailable)
sift auth logoutElimina la autenticación guardada
sift auth statusMuestra el estado de la autenticación
Billing
4 commands
sift billing fallback decideAllow, deny, or always allow personal funding for a quoted workspace operation
- Flags
--decision <allow|deny|always_allow>--monthly-cap-micros <value>— Monthly micro-USD cap for always_allow--quote <value>— Server-issued operation quote ID
sift billing fallback policyRead or update the workspace personal-fallback policy
- Flags
--disabled— Disable and revoke personal fallback--enabled— Enable personal fallback
sift billing fallback revokeRevoke one of your active personal-fallback consents
- Arguments
consentIdrequired
sift billing fallback statusShow your active personal-fallback decisions for a workspace
Calendario
Eventos de calendario.
4 comandos
sift calendar createCrea un evento de calendario
- Flags
--description <value>— Event description--end <value>— End time (ISO 8601)--location <value>— Event location--start <value>— Start time (ISO 8601)--title <value>— Event title
sift calendar deleteElimina un evento de calendario
- Arguments
idrequired — Event ID- Flags
-y, --yes— Skip confirmation
sift calendar listLista los eventos de calendario
- Flags
--end <value>— End date (ISO 8601)--limit <value>— Maximum number of results--start <value>— Start date (ISO 8601)
sift calendar updateActualiza un evento del calendario
- Arguments
idrequired — Event ID- Flags
--description <value>— Event description--end <value>— End time (ISO 8601)--location <value>— Event location--start <value>— Start time (ISO 8601)--title <value>— Event title
Capabilities
5 commands
sift capabilities createCreate a reviewed server-brokered Vault capability
- Flags
--adapter <value>— Reviewed static adapter ID--expires-in <value>— Lifetime in seconds (300-2592000)--field <value>— Credential payload field--operation <value>— Comma-separated allowlisted operations--provider <value>— Provider ID--purpose <value>— Non-secret human-readable purpose--vault-entry <value>— Vault entry UUID
sift capabilities describeDescribe safe metadata for one Vault capability
- Arguments
idrequired — Capability metadata ID
sift capabilities executeExecute one typed operation through a Vault capability handle
- Flags
--approval <value>— Governed approval UUID when required--handle <value>— Opaque vcap_ capability handle--idempotency-key <value>— Stable 8-128 character key for safe retries--input <value>— Typed operation input JSON object--operation <value>— Allowlisted operation
sift capabilities listList safe metadata for Vault capability handles
sift capabilities revokeRevoke a Vault capability
- Arguments
idrequired — Capability metadata ID
Código
Herramientas de código.
13 comandos
sift code blameGit blame de un archivo
- Arguments
filerequired — Relative file path- Flags
--root <value>— Repository root path
sift code memory confirmConfirma un candidato de memoria de código con una razón auditable
- Arguments
idrequired — Memory ID- Flags
--reason <value>— Audit reason
sift code memory deleteElimina un dato guardado de la base de código
- Arguments
idrequired — Memory ID- Flags
-y, --yes— Skip confirmation
sift code memory detect-staleDetecta memorias de código probablemente desactualizadas y las marca como needs_review (nunca las elimina)
- Flags
--limit <value>— Maximum memories to scan--repo <value>— Repository ID
sift code memory editEdita una memoria de código directamente; el contenido anterior permanece en el registro de auditoría
- Arguments
idrequired — Memory ID- Flags
--confidence <value>— Confidence 0-1--fact <value>— Updated fact--reason <value>— Audit reason
sift code memory eventsLista los eventos de curación/linaje de solo adición para una memoria de código
- Arguments
idrequired — Memory ID- Flags
--limit <value>— Maximum number of events
sift code memory getMuestra una memoria de código con su procedencia, evidencia y ciclo de vida
- Arguments
idrequired — Memory ID
sift code memory listLista los datos guardados de la base de código
- Flags
--include-inactive— Include rejected and superseded lineage memories--lifecycle <unreviewed|confirmed|rejected|superseded|needs_review>— Filter by lifecycle state--limit <value>— Maximum number of results--repo <value>— Repository ID
sift code memory needs-reviewMarca una memoria de código como needs_review por posible desactualización o contradicción (nunca la elimina)
- Arguments
idrequired — Memory ID- Flags
--reason <value>— Audit reason--signal <value>— Staleness signal (repeatable)
sift code memory rejectRechaza una memoria de código con una razón auditable (rechazo suave; nunca la elimina)
- Arguments
idrequired — Memory ID- Flags
--reason <value>— Audit reason
sift code memory searchBusca datos guardados de la base de código
- Arguments
queryrequired — Search query- Flags
--category <architecture|integration|convention|entrypoint|gotcha|ownership>— Filter by category--include-inactive— Include rejected and superseded lineage memories--lifecycle <unreviewed|confirmed|rejected|superseded|needs_review>— Filter by lifecycle state--limit <value>— Maximum number of results--repo <value>— Repository ID
sift code memory storeGuarda un dato de la base de código
- Flags
--agent <value>— Authoring agent (marks memory as agent-authored)--category <architecture|integration|convention|entrypoint|gotcha|ownership>— Fact category--commit <value>— Source commit SHA--confidence <value>— Confidence 0-1--evidence-chunk <value>— Historical indexed chunk ID supporting the fact--fact <value>— Fact to store (1-2 sentences)--file <value>— Related file path--path <value>— Additional related path (repeatable)--reason <value>— Capture reason (required with --agent)--repo <value>— Repository ID--work-item <value>— Related agent work item ID
sift code memory supersedeReemplaza una memoria de código con un nuevo dato; la memoria antigua se conserva como linaje
- Arguments
idrequired — Memory ID to supersede- Flags
--category <architecture|integration|convention|entrypoint|gotcha|ownership>— Fact category (defaults to previous)--commit <value>— Source commit SHA--confidence <value>— Confidence 0-1--evidence-chunk <value>— Evidence chunk ID (repeatable)--fact <value>— Replacement fact--file <value>— Related file path--path <value>— Additional related path (repeatable)--reason <value>— Audit reason
Codex
Herramientas de automatización para Codex.
1 comando
sift codex daily-review collectRecopilar contexto de solo lectura de Siftable y git local para las revisiones de trabajo diarias de Codex
- Flags
--calendar-days <value>— Calendar lookahead days--limit <value>— Maximum records per source--skip-git— Skip local git summary
Contexto
1 comando
sift context currentExplica el contexto actual del principal, propietario, proyecto y checkout local
- Flags
--workspace-root <value>— Absolute local checkout root to describe (never sent as a workspace tenant ID)
Crm
6 comandos
sift crm import applyAplica solo las operaciones aprobadas de un plan de importación de CRM existente; su repetición es segura
- Arguments
planIdrequired — Durable CRM import plan UUID- Flags
--yes— Confirm canonical CRM writes without prompting
sift crm import approveAprueba todas o una selección de las operaciones pendientes de un plan de importación de CRM existente
- Arguments
planIdrequired — Durable CRM import plan UUID- Flags
--operation-id <value>— Stable operation ID to approve; repeat to approve a subset--reason <value>— Human approval reason recorded on the plan--yes— Confirm the approval without prompting
sift crm import getReanuda e inspecciona un plan de importación de CRM persistente mediante su ID de plan estable
- Arguments
planIdrequired — Durable CRM import plan UUID
sift crm import planCrea o reutiliza un plan de importación de CRM persistente a partir de un archivo CSV, TSV, XLS o XLSX sin escribir los registros canónicos en el CRM
- Arguments
filerequired — Local CSV, TSV, XLS, or XLSX source (8 MiB maximum)- Flags
--mapping-mode <manual|workspace_auto>— Manual mapping or approved workspace mapping profile--provider <generic|salesforce>— Source provider mapping
sift crm organizations convertExplica el límite controlado entre una organización de CRM y un espacio de trabajo
- Arguments
idrequired — CRM organization ID
sift crm organizations listLista solo organizaciones de CRM; se excluyen los espacios de trabajo colaborativos
- Flags
--limit <value>— Maximum number of CRM results--search <value>— Optional fuzzy search query
Datasets
Datasets estructurados.
43 comandos
sift datasets addAñadir registros a un conjunto de datos
- Arguments
idrequired — Dataset ID- Flags
--idempotency-key <value>— Caller-owned stable key for replaying this exact dataset mutation--record <value>— Record as JSON object, e.g. '{"name":"Alice","age":"30"}'--records <value>— Multiple records as JSON array
sift datasets aggregateAgregar registros de un conjunto de datos con métricas agrupadas (count, avg, sum, min, max, median, stddev, percentile, ratio)
- Arguments
idrequired — Dataset ID- Flags
--filters <value>— JSON array of filters--group-by <value>— Comma-separated field names to group by--having <value>— JSON array of having clauses [{metric, operator, value}]--limit <value>— Max rows--metrics <value>— JSON array of metrics [{operation, field, as}]--sorts <value>— JSON array of sorts
sift datasets analyzeGenera conclusiones en lenguaje natural basadas en un conjunto de datos
- Arguments
idrequired — Dataset ID- Flags
--filters <value>— JSON array of filters--focus-fields <value>— Comma-separated field names to focus analysis on--max-insights <value>— Max insights to generate--mode <descriptive|operational>— Analysis mode--signal-limit <value>— Max decision signals to return
sift datasets apply-diffAplica un plan de diferencias guardado para un conjunto de datos
- Arguments
planrequired — Path to a local diff plan or persisted diff plan ID- Flags
--yes— Confirm applying the saved diff plan without prompting
sift datasets archiveArchiva un conjunto de datos sin eliminar su tabla física
- Arguments
idrequired — Dataset ID- Flags
-y, --yes— Confirm dataset archival without prompting
sift datasets bucketAgrupa un campo numérico o de fecha en rangos con métricas por cada grupo
- Arguments
idrequired — Dataset ID- Flags
--boundaries <value>— Comma-separated boundary values (omit for auto-bucketing)--bucket-count <value>— Number of auto-buckets (default: 5)--field <value>— Field to bucket--filters <value>— JSON array of filters--metrics <value>— JSON array of metrics
sift datasets cleanupPlanifica o ejecuta la limpieza de conjuntos de datos temporales según su ciclo de vida
- Flags
--dry-run— Return a deterministic cleanup plan without deleting datasets--lifecycle <value>— Lifecycle kind to clean, e.g. scratch, benchmark, research-run--limit <value>— Maximum lifecycle datasets to inspect--now <value>— Deterministic timestamp for tests and scheduled cleanup--older-than <value>— Only include datasets older than this duration, e.g. 12h, 7d--orphaned— Include stale dataset notes that no longer have a backing dataset row--tag <value>— Lifecycle tag to clean, e.g. benchmark-y, --yes— Confirm deletion when applying cleanup with --no-dry-run
sift datasets compareCompara métricas de distintos segmentos de un campo categórico en paralelo
- Arguments
idrequired — Dataset ID- Flags
--filters <value>— JSON array of filters--limit <value>— Max segment values to compare--metrics <value>— JSON array of metrics--segment-field <value>— Categorical field to segment by--segment-values <value>— Comma-separated segment values (auto-discovers if omitted)
sift datasets computeCalcula campos derivados a partir de un conjunto de datos o de un resultado previo
- Arguments
id— Dataset ID- Flags
--computed-fields <value>— JSON array of computed fields, e.g. '[{"as":"spread","expression":"right.Close-left.Close"}]'--filters <value>— JSON array of filters--limit <value>— Maximum rows--order-by <value>— JSON array of order clauses--select <value>— Comma-separated fields to include--sorts <value>— JSON array of output sorts--source-result <value>— Inline JSON for a prior derived result--source-result-file <value>— Path to a JSON file containing a prior derived result
sift datasets contractMuestra el esquema y el contrato de capacidades de un conjunto de datos para agentes
- Arguments
idrequired — Dataset ID- Flags
--resolve <value>— Comma-separated semantic field references to resolve--template <value>— Validate contract against a built-in template
sift datasets createCrea un conjunto de datos
- Flags
--description <value>— Dataset description--fields <value>— Field definitions as JSON array, e.g. '[{"name":"age","type":"number"}]'--idempotency-key <value>— Caller-owned stable key for replaying this exact dataset mutation--lifecycle <value>— Lifecycle kind for generated datasets, e.g. scratch, benchmark, research-run--metadata <value>— Dataset metadata as JSON object--note-id <value>— Link to an existing note--run-id <value>— Lifecycle run identifier--scratch— Shortcut for --lifecycle scratch --tags scratch--tags <value>— Comma-separated lifecycle tags--title <value>— Dataset title--ttl <value>— Lifecycle TTL duration, e.g. 12h, 7d, 30d
sift datasets dedupeEncuentra registros duplicados por clave en un dataset sin modificar los datos
- Arguments
idrequired — Dataset ID- Flags
--key <value>— Field name used to group duplicates--limit <value>— Maximum records to scan in one bounded pass
sift datasets deleteElimina permanentemente un dataset y su tabla física
- Arguments
idrequired — Dataset ID- Flags
-y, --yes— Confirm dataset deletion without prompting
sift datasets delete-recordElimina un registro de un dataset
- Arguments
idrequired — Dataset IDrecord-idrequired — Record ID- Flags
--idempotency-key <value>— Caller-owned stable key for replaying this exact dataset mutation-y, --yes— Skip confirmation
sift datasets diffPrevisualiza cambios en las filas del dataset desde un archivo CSV, JSON o JSONL
- Arguments
idrequired — Dataset ID- Flags
--batch-size <value>— Records per backend batch--from-file <value>— Path to CSV, JSON, or JSONL rows to compare--persist— Persist the diff plan in Siftable for later review/apply--save-plan <value>— Write an applyable diff plan JSON file--template <sources|people|events|claims|evidence_sources|evidence_source_fragments|evidence_claims|evidence_people|evidence_organizations|evidence_places|evidence_artifacts|evidence_events|evidence_relationships|evidence_contradictions>— Built-in template name--upsert-by <value>— Field name used to match existing rows
sift datasets diff-plans listLista los planes de diff persistidos del dataset
- Flags
--dataset-id <value>— Filter by dataset ID--limit <value>— Maximum plans to return--status <draft|validated|applied|rejected|expired>— Filter by plan status
sift datasets diff-plans showMuestra un plan de diff persistido del dataset
- Arguments
idrequired — Diff plan ID
sift datasets exportExporta registros del dataset como CSV, JSON, JSONL o Markdown
- Arguments
idrequired — Dataset ID- Flags
--filters <value>— JSON array of filters--format <csv|json|jsonl|markdown>— Export format--limit <value>— Max rows to export-o, --output <value>— Output file path (writes to stdout if omitted)--sorts <value>— JSON array of sorts
sift datasets facetsMuestra resúmenes de facetas para los campos del dataset
- Arguments
idrequired — Dataset ID- Flags
--fields <value>— Comma-separated field names to facet--limit <value>— Maximum values per facet
sift datasets formula-planCalcula campos de fórmula y previsualiza actualizaciones del dataset
- Arguments
idrequired — Dataset ID- Flags
--computed-fields <value>— JSON array of computed fields, e.g. '[{"as":"score","expression":"confidence * reliability"}]'--filters <value>— JSON array of filters for compute source--limit <value>— Maximum rows to compute and plan--order-by <value>— JSON array of order clauses--save-plan <value>— Write an applyable diff plan JSON file--select <value>— Comma-separated fields to include in compute source--sorts <value>— JSON array of output sorts--target-fields <value>— Comma-separated computed field names to write; defaults to every computed field alias--template <sources|people|events|claims>— Built-in template name for validation--upsert-by <value>— Field used to match rows for update
sift datasets getObtén los detalles y el esquema del dataset
- Arguments
idrequired — Dataset ID
sift datasets impactExplica el impacto de la fórmula, el gráfico, la vista, la calidad y la materialización del dataset
- Arguments
idrequired — Dataset ID- Flags
--from-plan <value>— Persisted diff plan ID to inspect--operation <value>— Committed dataset operation ID to inspect
sift datasets importImporta filas CSV, JSON o JSONL a un dataset nuevo o existente
- Arguments
filerequired — Path to CSV, JSON, or JSONL file- Flags
--batch-size <value>— Records per backend batch--dataset-id <value>— Import into existing dataset instead of creating a new one--description <value>— Dataset description--dry-run— Validate and plan the import without writing--lifecycle <value>— Lifecycle kind for generated datasets, e.g. scratch, benchmark, research-run--metadata <value>— Dataset metadata as JSON object when creating a new dataset--run-id <value>— Lifecycle run identifier--scratch— Shortcut for --lifecycle scratch --tags scratch--tags <value>— Comma-separated lifecycle tags--template <sources|people|events|claims|evidence_sources|evidence_source_fragments|evidence_claims|evidence_people|evidence_organizations|evidence_places|evidence_artifacts|evidence_events|evidence_relationships|evidence_contradictions>— Built-in template name--title <value>— Dataset title (defaults to filename)--ttl <value>— Lifecycle TTL duration, e.g. 12h, 7d, 30d--upsert-by <value>— Field name used to update matching rows instead of creating duplicates--yes— Confirm mutating imports without prompting
sift datasets inspect-fileInspecciona la estructura de un archivo local CSV, TSV, XLS o XLSX sin crear ni modificar un conjunto de datos
- Arguments
filerequired — Path to a local CSV, TSV, XLS, or XLSX file- Flags
--delimiter <value>— Single-byte delimiter override for CSV/TSV--format <csv|tsv|xls|xlsx>— Format override when the extension is absent or wrong--header-row <value>— Zero-based header row index within the sheet grid--max-bytes <value>— Refuse files larger than this many bytes--max-cols <value>— Maximum columns returned per sheet--max-rows <value>— Maximum data rows returned per sheet--max-sheets <value>— Maximum sheets returned--sheet <value>— Inspect only this sheet; the full sheet inventory is still reported
sift datasets joinUne un dataset consigo mismo usando campos con alias como left.Close y right.Close
- Arguments
idrequired — Dataset ID- Flags
--join-keys <value>— JSON array of join keys, e.g. '[{"leftField":"Date","rightField":"Date"}]'--join-type <inner|left|right>— Join type--left-alias <value>— Left alias--left-filters <value>— JSON array of left-side filters--limit <value>— Maximum joined rows--right-alias <value>— Right alias--right-filters <value>— JSON array of right-side filters--select <value>— Comma-separated alias-scoped fields to return--sorts <value>— JSON array of sorts
sift datasets listEnumera los datasets
- Flags
--limit <value>— Maximum number of results
sift datasets lookupBusca registros del dataset mediante una coincidencia exacta de clave/valor
- Arguments
idrequired — Dataset ID- Flags
--key <value>— Field name to match--limit <value>— Maximum matching records--value <value>— Exact value to match
sift datasets materializeMaterializa un resultado derivado en un nuevo dataset temporal
- Flags
--description <value>— Dataset description--idempotency-key <value>— Caller-owned stable key for replaying this exact dataset mutation--source-result <value>— Inline JSON for a derived result--source-result-file <value>— Path to a JSON file containing a derived result--title <value>— Title of the new dataset
sift datasets pivotCrea un resumen tipo tabla dinámica a partir de métricas de datasets agrupadas
- Arguments
idrequired — Dataset ID- Flags
--cols <value>— Column field--filters <value>— JSON array of filters--limit <value>— Maximum grouped cells to request--metrics <value>— JSON metrics array; defaults to count--rows <value>— Row field
sift datasets plotValida y normaliza una carga de gráfico ligera a partir de un resultado derivado
- Flags
--chart-type <line|bar|scatter>— Chart type--series-field <value>— Optional series field--source-result <value>— Inline JSON for a derived result--source-result-file <value>— Path to a JSON file containing a derived result--x-field <value>— X-axis field--y-fields <value>— Comma-separated Y-axis fields
sift datasets profileMuestra información de perfil acotada para un dataset
- Arguments
idrequired — Dataset ID- Flags
--sample-limit <value>— Number of sample rows to include
sift datasets qualityComprueba la calidad de un conjunto de datos con métricas estructuradas de valores ausentes y observaciones de valores repetidos
- Arguments
idrequired — Dataset ID- Flags
--fields <value>— Comma-separated field names to check--repeat-threshold <value>— Minimum occurrences for a repeated value to be reported
sift datasets queryConsulta registros de un dataset
- Arguments
idrequired — Dataset ID- Flags
--cursor <value>— Pagination cursor from previous query--filters <value>— Filter conditions as JSON array, e.g. '[{"field":"status","value":"active"}]'--include-deleted— Include soft-deleted records--limit <value>— Maximum number of records--sorts <value>— Sort spec as JSON array, e.g. '[{"field":"name","direction":"asc"}]'
sift datasets rankClasifica registros de un dataset según criterios de orden o una fórmula numérica ponderada
- Arguments
idrequired — Dataset ID- Flags
--filters <value>— JSON array of filters--formula <value>— JSON formula object {weights: [{field, weight}]}--limit <value>— Max rows--sorts <value>— JSON array of sorts
sift datasets reconcileCompara dos datasets por clave sin modificar ninguno de los dos
- Arguments
leftrequired — Left dataset IDrightrequired — Right dataset ID- Flags
--left-key <value>— Left dataset key field--limit <value>— Maximum rows to scan from each dataset--right-key <value>— Right dataset key field; defaults to --left-key
sift datasets schemaModifica el esquema del dataset (añade, actualiza o elimina campos)
- Arguments
idrequired — Dataset ID- Flags
--field <value>— Field definition as JSON, e.g. '{"name":"email","type":"text"}'--field-id <value>— Field ID (required for update/delete)--idempotency-key <value>— Caller-owned stable key for replaying this exact dataset mutation--operation <add_field|update_field|delete_field>— Schema operation
sift datasets searchBusca registros del dataset en los campos de texto seleccionados
- Arguments
idrequired — Dataset IDqueryrequired — Search text- Flags
--fields <value>— Comma-separated fields to search; defaults to profile columns--filters <value>— JSON array of base filters applied to every field search--limit <value>— Maximum merged records--per-field-limit <value>— Maximum records to request per searched field
sift datasets summarizeObtén un resumen de un dataset (número de filas, campos y filas de ejemplo)
- Arguments
idrequired — Dataset ID
sift datasets templates listLista las plantillas de dataset integradas
sift datasets templates showMuestra el esquema de una plantilla de dataset integrada
- Arguments
templaterequired — Template name
sift datasets timeseriesAnaliza series temporales de datasets con lag, pct_change, ventanas móviles, drawdown, volatilidad y correlación
- Arguments
idrequired — Dataset ID- Flags
--date-field <value>— Date field name--filters <value>— JSON array of filters--limit <value>— Maximum output rows--metrics <value>— JSON array of metric definitions--order-direction <asc|desc>— Time ordering--pivot— Emit explicit pivoted output--segment-field <value>— Optional segment field--segment-values <value>— Comma-separated segment values--transforms <value>— JSON array of transform definitions
sift datasets update-recordActualizar un registro en un conjunto de datos
- Arguments
idrequired — Dataset IDrecord-idrequired — Record ID- Flags
--fields <value>— Field updates as JSON object, e.g. '{"status":"done"}'--idempotency-key <value>— Caller-owned stable key for replaying this exact dataset mutation
sift datasets validateValidar un conjunto de datos con una plantilla integrada
- Arguments
idrequired — Dataset ID- Flags
--template <sources|people|events|claims|evidence_sources|evidence_source_fragments|evidence_claims|evidence_people|evidence_organizations|evidence_places|evidence_artifacts|evidence_events|evidence_relationships|evidence_contradictions>— Built-in template name
Documentos
Subida de documentos.
1 comando
sift documents uploadSubir un documento (PDF, Markdown o texto) como nota
- Arguments
filerequired — Path to file- Flags
--project <value>— Project ID--title <value>— Note title (defaults to filename)--type <note|concept|meeting|reference|daily|dataset>— Note type
Env
Contratos de entorno declarativos y materialización gobernada de paquetes de Vault.
11 comandos
sift env checkValida el contrato de entorno para uso local o de CI
- Flags
--checkout-root <value>— Exact Git checkout root containing .sift/environment.yaml--ci— Fail non-zero when contract, example, Git, or checkout safety findings exist
sift env diffMuestra la deriva del contrato de entorno sin valores
- Flags
--checkout-root <value>— Exact Git checkout root containing .sift/environment.yaml
sift env endpoint enrollInscribe la identidad de un endpoint público sin conceder acceso a Vault
- Flags
--dedicated— Endpoint is a dedicated runner--endpoint-class <interactive_desktop|remote_vm|noninteractive_runner|shared_host|ci_runner|production_host|multi_tenant>— Explicit endpoint policy class--kill-switch— Runner has an enforced kill switch--owner <value>— personal or workspace:<uuid>--storage-tier <hardware_host_bound|systemd_managed|convenience_keyring|none>— Actual endpoint key storage tier; convenience_keyring is not hardware-backed
sift env exampleGenera un ejemplo determinista solo con nombres y marcadores de posición
- Flags
--checkout-root <value>— Exact Git checkout root containing .sift/environment.yaml--write— Write the deterministic output to .env.example instead of displaying it
sift env import applyAplica de forma atómica un plan de importación de dotenv exacto y revisado.
- Flags
--checkout-root <value>— Checkout used only to reject Sift-managed source files--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>--plan-file <value>— Reviewed value-free plan artifact--source <value>— Same explicit dotenv source used to create the plan
sift env import planCrea un plan sin valores y acotado al propietario para un origen dotenv nombrado explícitamente.
- Flags
--checkout-root <value>— Checkout used only to reject Sift-managed source files--decision <value>— Explicit per-index decision: INDEX:keep-existing|overwrite|skip|rename=NAME--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>--plan-file <value>— New local value-free plan artifact to create--project <value>— Exact owner-scoped project UUID--source <value>— Explicit dotenv source file
sift env pullDescarga un paquete de Vault gobernado exacto a un archivo de entorno de desarrollo gestionado por Sift.
- Flags
--approval-timeout <value>--checkout-root <value>— Checkout containing .sift/environment.yaml--destination <value>— Exact relative destination when the manifest declares more than one bundle--endpoint-class <development|production|ci|shared_host|policy_ineligible>— Explicit endpoint policy class; managed pulls accept development only--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>--purpose <value>--replace— Replace a changed Sift-managed file using its exact observed precondition
sift env push applyAplica de forma atómica un plan de importación de dotenv exacto y revisado.
- Flags
--checkout-root <value>— Checkout used only to reject Sift-managed source files--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>--plan-file <value>— Reviewed value-free plan artifact--source <value>— Same explicit dotenv source used to create the plan
sift env push planCrea un plan sin valores y acotado al propietario para un origen dotenv nombrado explícitamente.
- Flags
--checkout-root <value>— Checkout used only to reject Sift-managed source files--decision <value>— Explicit per-index decision: INDEX:keep-existing|overwrite|skip|rename=NAME--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>--plan-file <value>— New local value-free plan artifact to create--project <value>— Exact owner-scoped project UUID--source <value>— Explicit dotenv source file
sift env rmElimina un archivo de entorno local exacto gestionado por Sift.
- Flags
--checkout-root <value>— Exact Git checkout root containing .sift/environment.yaml--destination <value>— Exact relative destination when the manifest declares more than one bundle--yes— Confirm removal of the exact recognized managed file
sift env statusInforma el estado del entorno local sin valores.
- Flags
--checkout-root <value>— Exact Git checkout root containing .sift/environment.yaml
Eventos
Eventos de investigación basados en hechos cronológicos.
3 comandos
sift events attach-personVincular a una persona como participante en un evento de investigación existente
- Arguments
eventrequired — Existing temporal fact IDpersonrequired — Person UUID to attach- Flags
--role <value>— Participant role--yes— Confirm participant attachment without prompting
sift events createCrear un hecho cronológico de un evento de investigación con participantes
- Flags
--body <value>— Event notes/body--confidence <low|medium|high>— Confidence level--entity <value>— Participant/entity as type:uuid or type:uuid:role; repeatable--org <value>— Organization UUID participant; repeatable--person <value>— Person UUID participant; repeatable--precision <millisecond|minute|hour|day|month|year|decade|century|millennium|mega_year|era>— Temporal precision--source <value>— Source entity as type:uuid or type:uuid:role; repeatable--source-label <value>— Source/provenance label--source-note <value>— Source/provenance note--source-url <value>— Source/provenance URL--timestamp <value>— ISO timestamp--title <value>— Event title--visibility <org_public|private|restricted>— Timeline visibility--year <value>— Historical year CE--year-end <value>— Historical end year CE
sift events listListar hechos de la cronología de eventos de investigación
- Flags
--cursor <value>— Pagination cursor--end <value>— End boundary--entity <value>— Filter by entity ref type:uuid--limit <value>— Maximum events--order <asc|desc>— Sort order--person <value>— Filter by person UUID--q <value>— Text search query--start <value>— Start boundary
Evidencia
Configuración del Grafo de Evidencia y orquestación del flujo de trabajo de evidencias.
11 comandos
sift evidence diff applyAplicar un plan de diferencias revisado del Grafo de Evidencia
- Arguments
idrequired — Persisted diff plan ID- Flags
--yes— Confirm applying the reviewed diff plan without prompting
sift evidence diff impactExplicar el impacto en el Grafo de Evidencia de un plan de diferencias guardado
- Arguments
idrequired — Persisted diff plan ID, or local when using --from-file- Flags
--from-file <value>— Local diff plan JSON file to explain without API access
sift evidence diff listListar los planes de diferencias guardados del Grafo de Evidencia
- Flags
--dataset-id <value>— Filter by evidence dataset ID--limit <value>— Maximum plans to return--project <value>— Filter locally by Evidence Graph project ID when present on plans--status <draft|validated|applied|rejected|expired>— Filter by plan status
sift evidence diff showMostrar un plan de diferencias del Grafo de Evidencia con un resumen con contexto de dominio
- Arguments
idrequired — Persisted diff plan ID
sift evidence extractCrear tareas de agente (sin aplicar) para extraer candidatos del Grafo de Evidencia
- Flags
--agent <value>— Assigned agent alias--context <value>— Additional input context JSON object--context-file <value>— Additional input context JSON file--dry-run— Preview work item payload without writing--no-apply— Keep extraction in proposed/diff-first mode--pack <company-origin|family-history|investigation|compliance-evidence|account-history|codebase-history>— Evidence workflow pack--project <value>— Project ID--source-dataset <value>— Evidence sources dataset ID--targets <value>— Comma-separated extraction targets--yes— Confirm work item creation without prompting
sift evidence initCrear un proyecto de Grafo de Evidencia y tablas de trabajo basadas en conjuntos de datos
- Arguments
namerequired — Evidence Graph project name- Flags
--dry-run— Preview project/dataset creation without writing--pack <company-origin|family-history|investigation|compliance-evidence|account-history|codebase-history>— Evidence workflow pack--yes— Confirm creation without prompting
sift evidence planPlanifica un flujo de trabajo del Grafo de Evidencia antes de registrar el estado de confianza
- Arguments
goalrequired — Evidence Graph goal- Flags
--pack <company-origin|family-history|investigation|compliance-evidence|account-history|codebase-history>— Evidence workflow pack--project <value>— Existing project ID--source-dataset <value>— Existing evidence sources dataset ID
sift evidence projectSimula la línea de tiempo y la proyección de relaciones del Grafo de Evidencia
- Flags
--dry-run— Preview projection without writing--from-file <value>— Local diff plan JSON file to project from without API access--from-plan <value>— Persisted diff plan ID to project from--pack <company-origin|family-history|investigation|compliance-evidence|account-history|codebase-history>— Evidence workflow pack--project <value>— Evidence Graph project ID
sift evidence proof reportGenera un informe de prueba del Grafo de Evidencia a partir de un paquete de evidencia basado en datos
- Flags
--format <json|markdown>— Report format--from-file <value>— Evidence packet JSON file to report on--project <value>— Evidence Graph project ID for report metadata
sift evidence sources importImporta filas del registro de fuentes del Grafo de Evidencia a una tabla de fuentes basada en datos
- Arguments
filerequired — Path to CSV, JSON, or JSONL source ledger rows- Flags
--batch-size <value>— Records per backend batch--dataset-id <value>— Evidence sources dataset ID--dry-run— Validate and plan source import without writing--upsert-by <value>— Field name used to update matching source rows--yes— Confirm mutating imports without prompting
sift evidence verifyVerifica la procedencia, revisión, proyección e invariantes de citas del Grafo de Evidencia
- Flags
--from-file <value>— Evidence packet JSON file to verify--project <value>— Evidence Graph project ID for report metadata
Grants
4 commands
sift grants adaptersList reviewed local execution adapters and honest containment tiers
sift grants requestRequest a human-approved grant for a pre-registered trusted local runner
- Flags
--adapter <value>--audience <value>--credential-field <value>--cwd <value>--executable <value>— Resolved reviewed executable path--executable-digest <value>--issuer <value>--operation <value>--purpose <value>--runner-fingerprint <value>--runner-public-key <value>— PEM public-key file from the trusted local runner--scope <value>— Provider scope JSON with string values--vault-entry <value>
sift grants runRequest approval, redeem in memory, and run exactly one reviewed child process
- Flags
--adapter <github_gh|github_publish_pr|terraform_apply>--approval-timeout <value>--audience <value>--body-file <value>— PR body file for github_publish_pr--credential-field <value>--cwd <value>--issuer <value>--operation <value>--purpose <value>--scope <value>--vault-entry <value>
sift grants statusInspect safe status for an ephemeral local execution grant
- Arguments
idrequired
Gráfico
Búsqueda de entidades y sus conexiones en el grafo.
5 comandos
sift graph betweenExplica una ruta delimitada en el grafo entre dos entidades.
- Arguments
sourcerequired — Source entity reference as type:uuidtargetrequired — Target entity reference as type:uuid- Flags
--depth <value>— Maximum path depth, backend clamps to 1-5--frontier-limit <value>— Maximum links to inspect per path expansion, backend clamps to 1-1000
sift graph explainExplica una ruta delimitada en el grafo entre dos entidades.
- Arguments
sourcerequired — Source entity reference as type:uuidtargetrequired — Target entity reference as type:uuid- Flags
--depth <value>— Maximum path depth, backend clamps to 1-5--frontier-limit <value>— Maximum links to inspect per path expansion, backend clamps to 1-1000
sift graph neighborsMuestra los vecinos de una entidad en el grafo.
- Arguments
entityrequired — Entity reference as type:uuid- Flags
--depth <value>— Graph depth, backend clamps to 1-3--limit <value>— Maximum graph items, backend clamps to 1-200
sift graph previewPrevisualizar una entidad del gráfico
- Arguments
entityrequired — Entity reference as type:uuid
sift graph searchBuscar entidades vinculables para el gráfico
- Arguments
queryrequired — Search query- Flags
--limit <value>— Maximum results--types <value>— Comma-separated entity types
Notas
Notas de conocimiento.
7 comandos
sift notes bulk-deletePrevisualizar o eliminar notas de forma masiva
- Flags
--archived— Filter by archived state--confirm— Execute deletion instead of preview--ids <value>— Comma-separated note IDs--title-contains <value>— Title substring filter--title-equals <value>— Exact title filter--title-starts-with <value>— Title prefix filter--type <note|concept|meeting|reference|daily|dataset>
sift notes createCrear una nota
- Flags
--content <value>— Note content (markdown)--metadata <value>— Note metadata as JSON--metadata-file <value>— Read note metadata JSON from a file--project <value>— Project ID--title <value>— Note title--type <note|concept|meeting|reference|daily|dataset>— Note type
sift notes deleteEliminar una nota
- Arguments
idrequired — Note ID- Flags
-y, --yes— Skip confirmation
sift notes getObtener una nota con su contenido completo
- Arguments
idrequired — Note ID
sift notes listListar notas
- Flags
--archived— Filter by archived state--limit <value>— Maximum number of results--project <value>— Filter by project ID--title-contains <value>— Title substring filter--title-equals <value>— Exact title filter--title-starts-with <value>— Title prefix filter--type <note|concept|meeting|reference|daily|dataset>— Filter by note type
sift notes searchBuscar notas
- Arguments
queryrequired — Search query- Flags
--limit <value>— Maximum number of results--project <value>— Filter by project ID
sift notes updateActualizar una nota
- Arguments
idrequired — Note ID- Flags
--content <value>— Note content (markdown)--metadata <value>— Replace note metadata with this JSON object--metadata-file <value>— Read replacement note metadata JSON from a file--title <value>— Note title--type <note|concept|meeting|reference|daily|dataset>— Note type
Organizaciones
Organizaciones y empresas.
5 comandos
sift organizations bulk-deletePrevisualizar o eliminar organizaciones de forma masiva
- Flags
--confirm— Execute deletion instead of preview--contains <value>— Name substring filter--equals <value>— Exact name filter--ids <value>— Comma-separated organization IDs--relationship <value>— Filter by relationship status--starts-with <value>— Name prefix filter--type <value>— Filter by organization type
sift organizations createCrear una organización
- Flags
--domain <value>— Domain (e.g. acme.com)--industry <value>— Industry--linkedin-url <value>— LinkedIn page URL--location <value>— Location--name <value>— Organization name--notes <value>— Notes--relationship-status <value>— Relationship status (e.g. prospect, customer, partner, vendor)--type <value>— Organization type (e.g. company, nonprofit, government, school)--website <value>— Website URL
sift organizations deleteEliminar una organización
- Arguments
idrequired — Organization ID- Flags
-y, --yes— Skip confirmation
sift organizations searchBuscar organizaciones
- Arguments
query— Optional fuzzy search query- Flags
--contains <value>— Name substring filter--equals <value>— Exact name filter--limit <value>— Maximum number of results--relationship <value>— Filter by relationship status--starts-with <value>— Name prefix filter--type <value>— Filter by organization type
sift organizations updateActualizar una organización
- Arguments
idrequired — Organization ID- Flags
--domain <value>— Domain (e.g. acme.com)--industry <value>— Industry--linkedin-url <value>— LinkedIn page URL--location <value>— Location--name <value>— Organization name--notes <value>— Notes--relationship-status <value>— Relationship status--type <value>— Organization type--website <value>— Website URL
Personas
Personas y contactos.
15 comandos
sift people bulk-deletePrevisualizar o eliminar contactos de forma masiva
- Flags
--confirm— Execute deletion instead of preview--contains <value>— Name substring filter--equals <value>— Exact name filter--has-no-email— Only contacts without an email--ids <value>— Comma-separated person IDs--relationship <value>— Filter by relationshipToUser--starts-with <value>— Name prefix filter
sift people context addAñade una relación personal o de trabajo relativa al propietario.
- Arguments
personIdrequired — Person ID- Flags
--basis <value>— Why this relationship is recorded--confidence <value>— Evidence confidence from 0 to 1--context <personal|work>— Relationship context--primary— Make this the primary relationship in its context--relationship <value>— Relationship type, e.g. friend, client, mentor
sift people context listMuestra cómo el propietario actual conoce a una persona.
- Arguments
personIdrequired — Person ID
sift people context removeElimina un contexto de relación relativo al propietario.
- Arguments
personIdrequired — Person IDrelationshipIdrequired — Context relationship ID- Flags
--dry-run— Show what would be removed without writing-y, --yes— Remove without prompting
sift people createCrear un contacto
- Flags
--birth-year <value>— Birth year--birthday <value>— Birthday (YYYY-MM-DD)--company <value>— Company name (auto-links to organization if exists)--context <personal|work>— How you know this person; repeat for both contexts--email <value>— Email address--estimated-age <value>— Estimated age--job-title <value>— Job title--linkedin-url <value>— LinkedIn profile URL--location <value>— Location--mbti <value>— MBTI type (e.g. INTJ, ENFP)--name <value>— Full name--notes <value>— Notes about this person--phone <value>— Phone number--relationship <value>— Relationship to user (e.g. friend, colleague, client, mentor)--website <value>— Personal website
sift people deleteEliminar un contacto
- Arguments
idrequired — Person ID- Flags
-y, --yes— Skip confirmation
sift people enrichInvestiga información pública sobre una persona con una ejecución segura contra repeticiones.
- Arguments
idrequired — Person ID- Flags
--dataset <value>— Optional dataset ID for a reviewable reconciliation plan--dataset-upsert-by <value>— Preferred dataset identity field--idempotency-key <value>— Stable 8-128 character key for exact retries--mode <standard|ultra>— Research depth
sift people getObtener el perfil de una persona con sus rasgos y relaciones
- Arguments
idrequired — Person ID
sift people graphMostrar un gráfico de relaciones centrado en la persona
- Arguments
idrequired — Person ID- Flags
--depth <value>— Relationship graph depth--include-inactive— Include inactive relationship edges
sift people kinshipExplicar el parentesco o la distancia de relación entre dos personas
- Arguments
egoPersonIdrequired — Ego/source person IDtargetPersonIdrequired — Target person ID- Flags
--max-depth <value>— Maximum relationship depth
sift people listListar contactos
- Flags
--category <family|romantic|professional|social>— Relationship category--contains <value>— Name substring filter--context <all|personal|work>— Relationship context--equals <value>— Exact name filter--has-no-email— Only contacts without an email--limit <value>— Maximum number of results--relationship <value>— Filter by relationshipToUser--starts-with <value>— Name prefix filter
sift people relateCrea o actualiza una relación entre dos personas
- Arguments
personAIdrequired — First person IDpersonBIdrequired — Second person ID- Flags
--dry-run— Preview the relationship payload without writing--notes <value>— Relationship notes--type <value>— Relationship type, e.g. colleague, sibling, spouse, collaborator-y, --yes— Apply without prompting
sift people searchBusca contactos
- Arguments
queryrequired — Search query- Flags
--contains <value>— Name substring filter--equals <value>— Exact name filter--has-no-email— Only contacts without an email--limit <value>— Maximum number of results--relationship <value>— Filter by relationshipToUser--starts-with <value>— Name prefix filter
sift people timelineLista eventos de la cronología vinculados a una persona
- Arguments
idrequired — Person ID- Flags
--limit <value>— Maximum facts to return--order <asc|desc>— Sort order--role <value>— Filter by entity role, comma-separated
sift people updateActualiza un contacto
- Arguments
idrequired — Person ID- Flags
--birth-year <value>— Birth year--birthday <value>— Birthday (YYYY-MM-DD)--company <value>— Company name--email <value>— Email address--estimated-age <value>— Estimated age--job-title <value>— Job title--linkedin-url <value>— LinkedIn profile URL--location <value>— Location--mbti <value>— MBTI type (e.g. INTJ, ENFP)--name <value>— Full name--notes <value>— Notes about this person--phone <value>— Phone number--relationship <value>— Relationship to user--website <value>— Personal website
Proyectos
Gestión de proyectos.
7 comandos
sift projects archiveArchiva un proyecto
- Arguments
idrequired — Project ID- Flags
-y, --yes— Skip confirmation
sift projects contextObtén el contexto del proyecto (tareas, notas, señales)
- Arguments
idrequired — Project ID
sift projects createCrea un proyecto
- Flags
--emoji <value>— Single emoji--name <value>— Project name--status <planning|active|on_hold|blocked|completed>— Project status--summary <value>— Project summary
sift projects listListar proyectos
- Flags
--include-archived— Include archived projects--status <planning|active|on_hold|blocked|completed>— Filter by status
sift projects planningObtener la instantánea de planificación CSN canónica de un proyecto
- Arguments
idrequired — Project ID
sift projects planning-recomputeRecalcular la instantánea de planificación CSN canónica de un proyecto
- Arguments
idrequired — Project ID
sift projects updateActualizar un proyecto
- Arguments
idrequired — Project ID- Flags
--emoji <value>— Single emoji--name <value>— Project name--status <planning|active|on_hold|blocked|completed>— Project status--summary <value>— Project summary
Recetas
Recetas integradas para flujos de trabajo de investigación.
2 comandos
sift recipes listListar recetas integradas de flujos de trabajo de investigación
sift recipes showMostrar una receta integrada de flujo de trabajo de investigación
- Arguments
idrequired — Recipe ID
Relationships
79 commands
sift relationships actions dry-runPreview a relationship action on the server without committing it
- Arguments
idrequired — Relationship action IDentity— Relationship entity as opportunity:<uuid> or prospect:<uuid>- Flags
--entity <value>— Target as prospect:uuid or opportunity:uuid--idempotency-key <value>— Stable 8-128 character key for reproducible server-side previews--input <value>— Action input JSON object--input-file <value>— Path to action input JSON
sift relationships actions listList registered relationship actions and their commitment policies
- Flags
--approval-policy <value>— Filter by approval policy--commitment <value>— Filter by commitment class--limit <value>— Maximum results
sift relationships actions runRun any canonical relationship action with replay-safe caller identity
- Arguments
idrequired — Canonical action ID from relationships actions listentity— Relationship entity as opportunity:<uuid> or prospect:<uuid>- Flags
--entity <value>— Target as prospect:uuid or opportunity:uuid--expected-version <value>— Current collaboration version--idempotency-key <value>— Stable 8-128 character key for exact retries--input <value>— Action input JSON object--input-file <value>— Path to an action input JSON file--yes— Confirm action execution
sift relationships actions showShow one registered relationship action
- Arguments
idrequired — Relationship action ID
sift relationships briefCompose an exact, evidence-grounded relationship brief
- Arguments
subjectrequired — Subject as prospect:uuid or opportunity:uuid- Flags
--lens <value>— Relationship lens identifier
sift relationships composer approver-editCrea una revisión de aprobador atribuida y reabre la revisión de coaching.
- Arguments
idrequired — Composer session UUID- Flags
--body <value>--expected-version <value>--reason <value>--subject <value>--yes— Confirm the attributed edit
sift relationships composer bind-senderVincula una cuenta de correo electrónico activa y conectada a un borrador duradero.
- Arguments
idrequired — Composer session UUID- Flags
--expected-version <value>— Current optimistic session version--sender <value>— Connected email account UUID
sift relationships composer confirmConfirma el resumen vinculado y crea su primera revisión de borrador duradero.
- Arguments
idrequired — Composer session UUID- Flags
--expected-version <value>— Current optimistic session version--yes— Confirm brief and create draft
sift relationships composer createCrea o reanuda una sesión duradera de resumen a borrador para una relación.
- Arguments
subjectrequired — Subject as prospect:uuid or opportunity:uuid- Flags
--file <value>— JSON file with source, recommendation, brief, and ranked evidence
sift relationships composer dispatchEnvía ahora o programa un mensaje de relación gobernado, manteniendo la aprobación exacta.
- Arguments
idrequired — Composer session UUID- Flags
--at <value>— ISO-8601 time required for send_later--choice <approve_only|send_now|send_later>— Dispatch outcome--expected-version <value>— Current optimistic session version--idempotency-key <value>— Stable retry key for this exact choice and time--yes— Confirm this governed dispatch choice
sift relationships composer evaluateEvalúa el borrador duradero actual y anexa los resultados del coaching anclados a frases.
- Arguments
idrequired — Composer session UUID- Flags
--expected-version <value>— Current optimistic session version
sift relationships composer finding-actionExplica, previsualiza, acepta, rechaza o deshace un resultado de coaching atribuible.
- Arguments
idrequired — Composer session UUIDfindingrequired — Coaching finding UUID- Flags
--action <explain|preview|accept|reject|undo>--expected-version <value>— Current optimistic session version--yes— Confirm a mutating coaching decision
sift relationships composer historyMuestra el historial de coaching y decisiones de borrador (solo anexa) en el orden en que se registraron.
- Arguments
idrequired — Composer session UUID
sift relationships composer request-approvalSolicita o reanuda la aprobación para la revisión exacta del compositor; la aprobación se mantiene solo en el navegador.
- Arguments
idrequired — Composer session UUID- Flags
--expected-version <value>— Current optimistic session version--idempotency-key <value>— Stable approval-request retry key--yes— Confirm the approval request
sift relationships composer request-changesDevuelve una revisión exacta a su autor sin modificar el mensaje.
- Arguments
idrequired — Composer session UUID- Flags
--expected-version <value>--reason <value>--yes— Confirm the review interruption
sift relationships composer resolve-identityResuelve o enruta el control de duplicados plausibles en línea para un mensaje revisado.
- Arguments
idrequired — Composer session UUID- Flags
--candidate <value>— Candidate person UUID--decision <same_person|different_people|route_to_owner>--expected-version <value>--yes— Confirm the identity decision
sift relationships composer reviewContinúa un borrador duradero y aprobado por coaching hacia una revisión gobernada.
- Arguments
idrequired — Composer session UUID- Flags
--approver-user-id <value>— Optional active internal workspace member who will approve the exact message--expected-version <value>— Current optimistic session version--yes— Confirm the transition to review
sift relationships composer save-draftGuarda una nueva revisión duradera de un borrador de relación.
- Arguments
idrequired — Composer session UUID- Flags
--file <value>— JSON file with expectedVersion, subject, and bodyText
sift relationships composer showMuestra una sesión duradera del compositor de relaciones.
- Arguments
idrequired — Composer session UUID
sift relationships composer updateActualiza la intención vinculada y la evidencia clasificada antes de crear el borrador.
- Arguments
idrequired — Composer session UUID- Flags
--file <value>— JSON file with expectedVersion, brief, and evidence
sift relationships contact-plan inspectInspecciona un plan de contacto canónico de una persona sin modificar sus ciclos de vida de origen.
- Arguments
personrequired — Canonical person UUID- Flags
--from <value>— Inclusive ISO-8601 inspection window start--limit <value>— Maximum projected items--timezone <value>— IANA display timezone--to <value>— Inclusive ISO-8601 inspection window end
sift relationships diagnoses createCrea una instantánea inmutable de un diagnóstico de relación, basada en evidencia.
- Flags
--file <value>— Diagnosis JSON file--yes— Confirm immutable diagnosis creation
sift relationships diagnoses listLista las instantáneas inmutables de diagnósticos de relación.
- Flags
--limit <value>--subject-id <value>--subject-type <prospect|opportunity>
sift relationships email-accounts listLista las cuentas de remitente disponibles para los borradores de relación y los envíos gobernados.
sift relationships generated-assets draftCrea una propuesta de comunicación privada a partir de un recurso de contacto aprobado; no lo envía.
- Arguments
idrequired — Generated outreach/follow-up asset UUID- Flags
--file <value>— Exact senderAccountId, destination, optional edits, and idempotency JSON file--yes— Confirm proposal creation
sift relationships generated-assets generateGenera un recurso fundamentado a partir de versiones exactas y aprobadas del manual de estrategias y de los recursos de origen.
- Flags
--file <value>— Generation request JSON file--yes— Confirm immutable asset generation
sift relationships generated-assets listLista los recursos de relación generados con sus manifiestos y la última revisión del artefacto.
- Flags
--limit <value>--subject-id <value>--subject-type <prospect|opportunity>
sift relationships generated-assets reviewAnexa una decisión de aprobación humana a un artefacto generado.
- Arguments
idrequired — Generated asset UUID- Flags
--decision <approved|rejected|needs_changes>--reason <value>--yes— Confirm append-only review
sift relationships generated-assets review-historyLista el historial de revisión (solo anexa) para un recurso generado.
- Arguments
idrequired — Generated asset UUID
sift relationships generated-assets showMuestra un recurso generado, su manifiesto exacto y la última aprobación del artefacto.
- Arguments
idrequired — Generated asset UUID
sift relationships generated-assets usage-listLista el uso (solo anexa) y los enlaces de resultados para un recurso generado.
- Arguments
idrequired — Generated asset UUID
sift relationships generated-assets usage-recordAnexa un registro de exportación, compartido interno o enlace de resultado a un recurso generado.
- Arguments
idrequired — Generated asset UUID- Flags
--idempotency-key <value>— Stable 8-128 character retry key--kind <exported|shared_internally|outcome_linked>--outcome <value>— Stable outcome reference; required for outcome_linked--yes— Confirm append-only usage record
sift relationships handoffs listList immutable relationship outcome receipts in the onboarding queue
- Flags
--limit <value>— Maximum receipts
sift relationships handoffs showShow one immutable relationship outcome handoff receipt
- Arguments
idrequired — Outcome handoff receipt UUID
sift relationships meetings brief createRedactar un resumen de reunión con citas a partir de la evidencia de relación aprobada
- Flags
--input <value>— Exact meeting brief input JSON--input-file <value>— Path to exact meeting brief input JSON
sift relationships meetings brief showLeer el resumen de reunión con citas actual recomponiendo sus entradas exactas
- Flags
--input <value>— Exact owner, subject, approved asset, and optional meeting JSON--input-file <value>— Path to exact meeting brief input JSON
sift relationships meetings evidence captureCapturar evidencia de transcripción sujeta a consentimiento o notas manuales declaradas explícitamente
- Flags
--idempotency-key <value>— Caller-owned stable key for exact retries--input <value>— Exact meeting evidence input JSON--input-file <value>— Path to exact meeting evidence input JSON--yes— Confirm canonical evidence capture
sift relationships meetings evidence showInspeccionar un evento canónico de evidencia de reunión y sus localizadores de origen
- Arguments
idrequired — Relationship meeting evidence event UUID
sift relationships meetings proposals applyAplicar de forma atómica una propuesta de reunión aprobada tras verificar de nuevo las precondiciones
- Arguments
idrequired — Approved meeting proposal UUID- Flags
--expected-proposal-digest <value>— Exact reviewed proposal digest--yes— Confirm the persistent internal relationship-state change
sift relationships meetings proposals createCrear una propuesta inmutable con citas de evidencia para una acción de relación registrada
- Flags
--idempotency-key <value>— Caller-owned stable key for exact retries--input <value>— Exact meeting proposal input JSON--input-file <value>— Path to exact meeting proposal input JSON--yes— Confirm immutable proposal creation
sift relationships meetings proposals listListar las propuestas de relación derivadas de reuniones y su ciclo de vida de revisión
- Flags
--status <pending|approved|rejected|committed|failed|stale>— Filter by lifecycle status--subject-id <value>— Filter by subject UUID--subject-kind <prospect|opportunity>— Filter by subject kind
sift relationships meetings proposals reviewAñadir una aprobación o rechazo atribuible a una propuesta de reunión sin cambios
- Arguments
idrequired — Meeting proposal UUID- Flags
--input <value>— Exact decision, reason, and expectedProposalDigest JSON--input-file <value>— Path to exact proposal review input JSON--yes— Confirm attributable proposal review
sift relationships meetings proposals showInspeccionar una propuesta de relación derivada de una reunión, su evidencia, diferencias y plan de recuperación
- Arguments
idrequired — Meeting proposal UUID
sift relationships outcomes describeDescribir los contratos de resultados de relación en tiempo de ejecución y sus límites de seguridad
sift relationships outcomes inspectInspeccionar los resultados de relación declarados en modo Answer/C0 sin persistencia
- Flags
--input <value>— Exact InspectRelationshipOutcomeInput JSON--input-file <value>— Path to exact inspection input JSON
sift relationships outcomes interventionsMostrar el lote único y delimitado de intervenciones revisables para una instantánea
- Arguments
snapshotIdrequired — Relationship-outcome snapshot ID
sift relationships outcomes listListar instantáneas de resultados de relación con paginación por cursor delimitada
- Flags
--cursor <value>— Opaque cursor from the previous page--limit <value>— Maximum snapshots to return--projection <sales_forecast|onboarding_handoff>— Filter by projection--scope-anchor-id <value>— Filter by declared scope anchor ID--scope-anchor-kind <value>— Filter by declared scope anchor kind
sift relationships outcomes recordsListar registros exactos de instantáneas con paginación por cursor delimitada
- Arguments
snapshotIdrequired — Relationship-outcome snapshot ID- Flags
--cursor <value>— Opaque cursor from the previous page--limit <value>— Maximum records to return--posture <value>— Filter by the declared record posture--risk <value>— Filter by low, moderate, high, or unknown operational risk
sift relationships outcomes reviewRegistrar una revisión de instantánea idempotente sin ejecutar ninguna acción registrada propuesta
- Arguments
snapshotIdrequired — Relationship-outcome snapshot ID- Flags
--dry-run— Validate authority and selected interventions without recording a review--idempotency-key <value>— Caller-owned stable key for this exact review--input <value>— Exact ReviewRelationshipOutcomeSnapshotInput JSON (idempotency is injected)--input-file <value>— Path to exact snapshot review input JSON--yes— Confirm append-only review recording
sift relationships outcomes runCrear o simular una instantánea de resultados de relación C2; nunca ejecutar las acciones propuestas
- Flags
--dry-run— Validate and project without persisting a snapshot--idempotency-key <value>— Caller-owned stable key for this exact snapshot request--input <value>— Exact CreateRelationshipOutcomeSnapshotInput JSON (idempotency is injected)--input-file <value>— Path to exact snapshot input JSON--yes— Confirm C2 snapshot persistence
sift relationships outcomes showMostrar una instantánea inmutable de resultados de relación
- Arguments
snapshotIdrequired — Relationship-outcome snapshot ID
sift relationships playbook-recommendations createRegistrar una recomendación de impacto con al menos tres movimientos plausibles
- Flags
--file <value>— Recommendation JSON file--yes— Confirm immutable recommendation creation
sift relationships playbook-recommendations listListar las recomendaciones registradas del playbook de relaciones con sus movimientos alternativos
- Flags
--limit <value>--subject-id <value>--subject-type <prospect|opportunity>
sift relationships playbooks createCrear una versión de playbook de relaciones inmutable y no aprobada a partir del JSON del contrato en tiempo de ejecución
- Flags
--file <value>— Playbook version JSON file--yes— Confirm immutable version creation
sift relationships playbooks listLista las versiones inmutables del playbook de relaciones y las aprobaciones más recientes.
- Flags
--limit <value>— Maximum versions--stable-key <value>— Filter by stable playbook key
sift relationships playbooks reviewAñade una aprobación humana a una versión del playbook.
- Arguments
idrequired — Playbook version UUID- Flags
--decision <approved|rejected|needs_changes>--reason <value>— Attributable review reason--yes— Confirm append-only review
sift relationships playbooks showMuestra una versión inmutable del playbook de relaciones y su aprobación más reciente.
- Arguments
idrequired — Playbook version UUID
sift relationships proposals getInspect one relationship action proposal and its evidence
- Arguments
idrequired — Proposal ID
sift relationships proposals listList pending and historical relationship action proposals
- Flags
--enrollment <value>— Filter by enrollment ID--limit <value>— Maximum results--sequence <value>— Filter by sequence ID--status <value>— Filter by proposal status
sift relationships proposals request-approvalRequest short-lived human approval for a proposal; cannot approve or consume it
- Arguments
idrequired — Proposal ID- Flags
--idempotency-key <value>— Stable 8-128 character key for safe retries--purpose <value>— Non-secret reason shown to the human approver
sift relationships queues listList relationship team queues in the active workspace
sift relationships recommendations executeExecute an accepted, current recommendation through the canonical action runtime
- Arguments
idrequired — Recommendation UUID- Flags
--yes— Confirm canonical action execution
sift relationships recommendations listList immutable relationship recommendation snapshots
- Flags
--lens <value>— Relationship lens identifier--limit <value>— Maximum recommendations--subject <value>— Filter by prospect:uuid or opportunity:uuid
sift relationships recommendations reviewAppend an ordinary review decision to a relationship recommendation
- Arguments
idrequired — Recommendation UUID- Flags
--decision <accepted|dismissed|snoozed|needs_information>— Review decision--reason <value>— Review reason--snoozed-until <value>— Offset-aware ISO date-time, required for snoozed--yes— Confirm the append-only review
sift relationships recommendations showShow a relationship recommendation with its exact citations and gates
- Arguments
idrequired — Recommendation UUID
sift relationships sequences createCreate a supervised relationship sequence from a JSON definition
- Flags
--definition <value>— Sequence definition JSON object--definition-file <value>— Path to sequence definition JSON--idempotency-key <value>— Stable 8-128 character key for safe retries
sift relationships sequences dry-runPreview a supervised sequence on the server without committing it
- Arguments
idrequired — Sequence ID- Flags
--idempotency-key <value>— Stable 8-128 character key for reproducible server-side previews--input <value>— Dry-run input JSON object--input-file <value>— Path to dry-run input JSON
sift relationships sequences enrollEnroll a relationship target in a supervised sequence
- Arguments
idrequired — Sequence ID- Flags
--idempotency-key <value>— Stable 8-128 character key for safe retries--input <value>— Enrollment input JSON object--input-file <value>— Path to enrollment input JSON
sift relationships sequences getShow one supervised relationship sequence
- Arguments
idrequired — Sequence ID
sift relationships sequences listList supervised relationship sequences
- Flags
--limit <value>— Maximum results--status <value>— Filter by sequence status
sift relationships sequences pausePause a supervised relationship sequence
- Arguments
idrequired — Sequence ID- Flags
--idempotency-key <value>— Stable 8-128 character key for safe retries--reason <value>— Non-secret pause reason
sift relationships sequences resumeResume a supervised relationship sequence
- Arguments
idrequired — Sequence ID- Flags
--idempotency-key <value>— Stable 8-128 character key for safe retries
sift relationships sequences runsList execution evidence for a supervised relationship sequence
- Arguments
idrequired — Sequence ID- Flags
--limit <value>— Maximum results--status <value>— Filter by run status
sift relationships sequences updateUpdate a supervised relationship sequence from a JSON definition
- Arguments
idrequired — Sequence ID- Flags
--definition <value>— Sequence update JSON object--definition-file <value>— Path to sequence update JSON--idempotency-key <value>— Stable 8-128 character key for safe retries
sift relationships showShow the current relationship collaboration snapshot
- Arguments
entityrequired — Relationship entity as opportunity:<uuid> or prospect:<uuid>
sift relationships source-assets createCrea una versión inmutable y no aprobada de un source-asset anclado.
- Flags
--file <value>— Source-asset version JSON file--yes— Confirm immutable version creation
sift relationships source-assets listLista las versiones inmutables de source-assets anclados y las aprobaciones más recientes.
- Flags
--limit <value>— Maximum versions--stable-key <value>— Filter by stable source-asset key
sift relationships source-assets reviewAñade una aprobación humana a una versión de source-asset.
- Arguments
idrequired — Source-asset version UUID- Flags
--decision <approved|rejected|needs_changes>--reason <value>--yes— Confirm append-only review
sift relationships source-assets showMuestra una versión exacta e inmutable de un source-asset y su revisión más reciente.
- Arguments
idrequired — Source-asset version UUID
Investigación
Planificación y orquestación de flujos de trabajo de investigación.
4 comandos
sift research initCrea un proyecto de investigación y conjuntos de datos estándar
- Arguments
namerequired — Research project name- Flags
--dry-run— Preview project/dataset creation without writing--template <historical-research>— Research template--yes— Confirm creation without prompting
sift research planPlanifica un flujo de trabajo de investigación determinista antes de escribir datos
- Arguments
goalrequired — Research goal- Flags
--project <value>— Existing project ID--source-dataset <value>— Existing sources dataset ID
sift research runCrea trabajo de agente determinista para una receta de investigación
- Arguments
reciperequired — Research run recipe- Flags
--agent <value>— Assigned agent alias--context <value>— Additional input context JSON object--context-file <value>— Additional input context JSON file--dry-run— Preview work item payload without writing--project <value>— Project ID--source-dataset <value>— Source dataset ID--yes— Confirm work item creation without prompting
sift research statusInspecciona el contexto del proyecto de investigación y la preparación de la CLI
- Arguments
project— Project ID
Habilidades
Paquetes de habilidades de Siftable instalables.
2 comandos
sift skills installInstala un paquete de habilidades de Siftable en un directorio local de habilidades
- Arguments
idrequired — Skillpack ID- Flags
--force— Replace an existing installed skill--target <value>— Installed skills directory-y, --yes— Confirm replacing an existing skill
sift skills listLista los paquetes de habilidades de Siftable instalables
Tareas
Tareas de planificación humana.
11 comandos
sift tasks bulk-deletePrevisualiza o elimina tareas de forma masiva
- Flags
--confirm— Execute deletion instead of preview--done— Filter by completed state--ids <value>— Comma-separated task IDs--phase <draft|open|in_flight|review|blocked|done|cancelled>--title-contains <value>— Title substring filter--title-equals <value>— Exact title filter--title-starts-with <value>— Title prefix filter--when <now|today|soon|later>
sift tasks completeMarca una tarea como completada
- Arguments
idrequired — Task ID
sift tasks coupling-createCrea un vínculo de acoplamiento CSN entre tareas del mismo proyecto
- Arguments
idrequired — Source task IDtargetrequired — Target task ID- Flags
--note <value>— Optional note--strength <value>— Coupling strength (0-1)--type <info|resource>— Coupling type
sift tasks coupling-deleteElimina un vínculo de acoplamiento CSN de una tarea
- Arguments
idrequired — Task IDedgeIdrequired — Coupling edge ID- Flags
-y, --yes— Skip confirmation
sift tasks coupling-listListar bordes de acoplamiento CSN de una tarea
- Arguments
idrequired — Task ID
sift tasks createCrear una tarea de planificación humana
- Flags
--acceptance-criteria <value>— Acceptance criteria (semicolon-separated text, e.g. "tests pass; docs updated")--description <value>— Task description--due <value>— Due date (ISO 8601)--effort <trivial|small|medium|large|epic|unknown>— Effort estimate--phase <draft|open|in_flight|review|blocked|done|cancelled>— Lifecycle phase--priority <do_now|schedule|delegate|someday>— Priority level--project <value>— Project ID--scope <value>— Scope boundaries (JSON object with include/exclude arrays)--title <value>— Task title
sift tasks deleteEliminar una tarea
- Arguments
idrequired — Task ID- Flags
-y, --yes— Skip confirmation
sift tasks getObtener detalles de una tarea de planificación humana
- Arguments
idrequired — Task ID
sift tasks listListar tareas de planificación humana
- Flags
--cursor <value>— Continuation cursor from a previous page--effort <trivial|small|medium|large|epic|unknown>— Filter by effort--limit <value>— Maximum number of results--phase <draft|open|in_flight|review|blocked|done|cancelled>— Filter by phase--project <value>— Filter by project ID--status <inbox|next_action|in_progress|waiting_for|completed|archived>— Filter by status--title-contains <value>— Title substring filter--title-equals <value>— Exact title filter--title-starts-with <value>— Title prefix filter
sift tasks planning-updateActualizar los campos de planificación CSN de una tarea
- Arguments
idrequired — Task ID- Flags
--cynefin-confidence <value>— Cynefin confidence (0-1)--cynefin-domain <clear|complicated|complex|chaotic|aporetic>— Cynefin domain--cynefin-rationale <value>— Why this domain fits--cynefin-source <user|assistant|classifier>— Source of the planning classification--duration-model <value>— Duration model JSON, e.g. {"kind":"point","days":2}--reversibility <value>— Reversibility score (0-1)
sift tasks updateActualizar una tarea de planificación humana
- Arguments
idrequired — Task ID- Flags
--acceptance-criteria <value>— Acceptance criteria (semicolon-separated text, e.g. "tests pass; docs updated")--blocked-reason <value>— Reason task is blocked--description <value>— Task description--due <value>— Due date (ISO 8601)--effort <trivial|small|medium|large|epic|unknown>— Effort estimate--phase <draft|open|in_flight|review|blocked|done|cancelled>— Lifecycle phase--priority <do_now|schedule|delegate|someday>— Priority level--project <value>— Project ID--scope <value>— Scope boundaries (JSON object with include/exclude arrays)--status <inbox|next_action|in_progress|waiting_for|completed|archived>— Task status--title <value>— Task title
Línea de tiempo
Hechos y narrativas de la línea de tiempo.
4 comandos
sift timeline createCrea un hecho de la línea de tiempo escrito por el usuario
- Flags
--body <value>— Fact body or notes--confidence <low|medium|high>— Confidence level--entity <value>— Participant/entity as type:uuid or type:uuid:role; repeatable--fact-type <value>— Fact type--precision <millisecond|minute|hour|day|month|year|decade|century|millennium|mega_year|era>— Temporal precision--source-label <value>— Source/provenance label--source-note <value>— Source/provenance note--source-url <value>— Source/provenance URL--timestamp <value>— ISO timestamp--title <value>— Fact title--visibility <org_public|private|restricted>— Timeline visibility--year <value>— Historical year CE--year-end <value>— Historical end year CE
sift timeline deleteElimina un hecho de la línea de tiempo
- Arguments
idrequired — Timeline fact ID- Flags
--yes— Confirm retraction without prompting
sift timeline listLista hechos de la línea de tiempo con filtros delimitados
- Flags
--cursor <value>— Pagination cursor--end <value>— End boundary, ISO timestamp or supported historical boundary--entity <value>— Entity filter as type:uuid--entity-role <value>— Comma-separated entity roles--fact-types <value>— Comma-separated fact types--limit <value>— Maximum items to return--order <asc|desc>— Sort order--q <value>— Text search query--source-types <value>— Comma-separated source types--start <value>— Start boundary, ISO timestamp or supported historical boundary
sift timeline narrativeGenera un resumen narrativo o una explicación de los hechos de la línea de tiempo
- Flags
--action <summarize|changed_since|led_to|what_next|cross_object>— Narrative action--entity <value>— Entity scope as type:uuid--entity-roles <value>— Comma-separated entity roles--fact-type <value>— Fact type filter--limit <value>— Maximum timeline facts to include--participant <value>— Participant filter as type:uuid--prompt <value>— Question or custom narrative prompt--q <value>— Text query filter--related-entity <value>— Related entity as type:uuid--source-type <value>— Source type filter
Bóveda
Bóveda de secretos.
15 comandos
sift vault auditList Vault audit events (requires vault:audit:read)
- Flags
--limit <value>— Maximum number of results--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>
sift vault createGuarda un nuevo secreto cifrado
- Flags
--category <value>— Category--description <value>— Description--name <value>— Secret name--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>--payload <value>— JSON payload to encrypt--slug <value>— Machine-friendly identifier--tags <value>— Comma-separated tags--type <env_var|credential|oauth_token|ssh_key|certificate|note>— Entry type--url <value>— Associated URL
sift vault leases cleanLimpia un artefacto de lease local y certifica su estado como confirmado, fallido o desconocido.
- Arguments
idrequired- Flags
--checkout-root <value>— Git checkout used to prove runtime separation--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>
sift vault leases listLista los metadatos de leases de entorno y de su limpieza, sin valores asociados.
- Flags
--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>
sift vault leases revokeRevoca el uso futuro del lease, elimina el artefacto local si existe y certifica la limpieza.
- Arguments
idrequired- Flags
--checkout-root <value>— Git checkout used to prove runtime separation--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>
sift vault leases statusInspecciona el ciclo de vida de un lease de entorno sin valor.
- Arguments
idrequired- Flags
--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>
sift vault listLista las entradas de la bóveda (solo metadatos)
- Flags
--category <value>— Filter by category--limit <value>— Maximum number of results--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>--type <env_var|credential|oauth_token|ssh_key|certificate|note>— Filter by entry type
sift vault materialize environmentExtrae un paquete de Vault gobernado y exacto a un archivo de entorno de desarrollo gestionado por Sift.
- Flags
--approval-timeout <value>--checkout-root <value>— Checkout containing .sift/environment.yaml--destination <value>— Exact relative destination when the manifest declares more than one bundle--endpoint-class <development|production|ci|shared_host|policy_ineligible>— Explicit endpoint policy class; managed pulls accept development only--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>--purpose <value>--replace— Replace a changed Sift-managed file using its exact observed precondition
sift vault materialize requestRequest human approval for one destination-bound Vault materialization
- Flags
--destination <value>--entry <value>--expected-digest <value>--field <value>--materializer-digest <value>--mode <0400|0600>--nonce <value>--overwrite--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>--purpose <value>--runner-fingerprint <value>--runner-public-key <value>--tracked-exception--workspace-root <value>— Absolute local workspace root containing the destination
sift vault materialize revokeRevoca una materialización de Vault pendiente vinculada a un destino.
- Arguments
idrequired — Materialization ID- Flags
--legacy-context— Use the Personal/v0 identity of a request created with the deprecated path-shaped --workspace alias--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>
sift vault materialize runRequest approval, wait, and materialize one Vault field at the exact approved path
- Flags
--approval-timeout <value>--destination <value>— Destination path; relative paths resolve inside --workspace-root before approval--entry <value>--field <value>--mode <0400|0600>--overwrite--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>--purpose <value>--tracked-exception--workspace-root <value>— Absolute local workspace root containing the destination
sift vault materialize statusInspect safe status for a destination-bound Vault materialization
- Arguments
idrequired- Flags
--legacy-context— Use the Personal/v0 identity of a request created with the deprecated path-shaped --workspace alias--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>
sift vault searchBusca entradas en la bóveda
- Arguments
queryrequired — Search query- Flags
--limit <value>— Maximum number of results--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>
sift vault updateActualiza los metadatos de una entrada de la bóveda
- Arguments
idrequired — Vault entry ID- Flags
--category <value>— Category--description <value>— Description--name <value>— Entry name--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>--tags <value>— Comma-separated tags--url <value>— Associated URL
sift vault use leaseCrea un artefacto exacto de un paquete de entorno de corta duración fuera del worktree de Git.
- Flags
--approval-timeout <value>--checkout-root <value>— Checkout containing .sift/environment.yaml--consumer <value>— Bound consumer identifier; not a command allowlist--consumer-pid <value>— Optional already-running consumer process lifetime--destination <value>— Manifest destination used only to select one exact bundle--endpoint-class <development|production|ci|shared_host>--holder <value>— Bound holder identifier; defaults to the local runner fingerprint--owner <value>— Exact Vault owner: personal or workspace:<tenant-id>--purpose <value>--ttl <value>
Trabajo
Cola de trabajo del agente ejecutable.
25 comandos
sift work blockMarca un elemento de trabajo como bloqueado
- Arguments
idrequired — Work item ID- Flags
--artifacts <value>— Artifact refs JSON array--claim-token <value>— Claim token returned by work claim (required for lease-owned transitions)--lease <value>— Lease seconds--memory-decision <value>— Durable code-memory decision JSON (required on agent complete/review): {"decision":"store"|"skip","rationale":"...","fact"?,"category"?,"repositoryId"?,"filePath"?,"paths"?,"evidenceChunkIds"?,"sourceCommit"?,"confidence"?}--owner <value>— Claim owner identity (required for lease-owned transitions)--reason <value>— Block or failure reason--summary <value>— Result summary--verification-results <value>— Verification evidence JSON array: [{"command","exitCode","output"?}]
sift work cancelCancela un elemento de trabajo
- Arguments
idrequired — Work item ID- Flags
--artifacts <value>— Artifact refs JSON array--claim-token <value>— Claim token returned by work claim (required for lease-owned transitions)--lease <value>— Lease seconds--memory-decision <value>— Durable code-memory decision JSON (required on agent complete/review): {"decision":"store"|"skip","rationale":"...","fact"?,"category"?,"repositoryId"?,"filePath"?,"paths"?,"evidenceChunkIds"?,"sourceCommit"?,"confidence"?}--owner <value>— Claim owner identity (required for lease-owned transitions)--reason <value>— Block or failure reason--summary <value>— Result summary--verification-results <value>— Verification evidence JSON array: [{"command","exitCode","output"?}]
sift work claimReclama el siguiente elemento de trabajo de agente ejecutable disponible
- Arguments
id— Optional specific work item ID- Flags
--agent <value>— Agent alias to claim for--lease <value>— Lease seconds--owner <value>— Claim owner identity
sift work completeAprueba y completa un elemento de trabajo de agente ejecutable
- Arguments
idrequired — Work item ID- Flags
--artifacts <value>— Artifact refs JSON array--claim-token <value>— Claim token returned by work claim (required for lease-owned transitions)--lease <value>— Lease seconds--memory-decision <value>— Durable code-memory decision JSON (required on agent complete/review): {"decision":"store"|"skip","rationale":"...","fact"?,"category"?,"repositoryId"?,"filePath"?,"paths"?,"evidenceChunkIds"?,"sourceCommit"?,"confidence"?}--owner <value>— Claim owner identity (required for lease-owned transitions)--reason <value>— Block or failure reason--summary <value>— Result summary--verification-results <value>— Verification evidence JSON array: [{"command","exitCode","output"?}]
sift work contract checkValida de forma determinista un archivo de Work Contract V1 o un elemento de trabajo obtenido.
- Arguments
id— Work item ID to fetch and validate- Flags
--file <value>— Path to a Work Contract V1 JSON file
sift work createCrea un elemento de trabajo de agente ejecutable
- Flags
--acceptance-criteria <value>— Acceptance criteria JSON array or semicolon-separated text--agent <value>— Assigned agent alias--allow-deploy— Allow deployment in the authored contract--allow-migrate— Allow migrations in the authored contract--allow-network— Allow network access in the authored contract--allow-vault— Allow audited Vault access in the authored contract--allowed-actions <value>— Allowed actions JSON object--capture-applicability <conversational_capture_required|non_conversational|unclassified>— Prospective capture applicability; this does not determine study eligibility--capture-receipt <value>— Finalized capture receipt UUID to bind atomically; repeat for multi-surface handoffs--context <value>— Input context JSON object--contract <value>— Complete Work Contract V1 JSON--contract-file <value>— Path to a complete Work Contract V1 JSON file--depends-on <value>— Dependency JSON array: [{"workItemId":"<uuid>","requiredGate"?:"done"|"commands_passed"}]--dry-run— Preview the normalized payload and contract without creating work--exclude-scope <value>— Excluded workspace-relative write scope; repeat for multiple paths--profile <coding|read-only|read_only>— Author a complete Work Contract V1 using the coding or read-only profile--project <value>— Linked project ID--prompt <value>— Agent prompt or instructions--rank <value>— Queue rank--scope <value>— Included workspace-relative write scope; repeat for multiple paths--task <value>— Parent human planning task ID--title <value>— Executable work item title--verify <value>— Verification commands separated by semicolons--write-scope <value>— Write scope JSON object
sift work dependencies getGet authoritative dependencies and claimability for a work item
- Arguments
idrequired — Work item UUID
sift work dependencies setAtomically replace the authoritative dependencies for a work item
- Arguments
idrequired — Work item UUID- Flags
--depends-on <value>— Dependency JSON array; pass [] to clear dependencies
sift work dependency-policy getGet a project default work-dependency gate
- Flags
--project <value>— Project UUID
sift work dependency-policy setSet a project default work-dependency gate
- Flags
--gate <done|commands_passed>— Default gate for dependencies that omit requiredGate--project <value>— Project UUID
sift work editC2: Revise queued, unclaimed work while preserving its UUID and dependency edges. Do not use after claim or execution; wait for a queued unclaimed state or create follow-up work. Example: raise queue rank or refine acceptance criteria while the item is queued and unclaimed. Counterexample: do not change status, dependencies, or an active worker lease with this capability. Execution-contract edits supersede the active verification plan and reset verification evidence; queue-rank-only edits do not. The same Idempotency-Key and payload replays the original receipt; a different payload with that key is rejected.
- Arguments
idrequired — Work item ID- Flags
--acceptance-criteria <value>— Replacement acceptance criteria JSON array--allowed-actions <value>— Replacement allowed actions JSON object--context <value>— Replacement input context JSON object--contract <value>— Replacement Work Contract V1 JSON--contract-file <value>— Path to replacement Work Contract V1 JSON--dry-run— Show normalized diff and proof consequences without mutating--expected-revision <value>— Observed work item revision--idempotency-key <value>— Stable retry key for this exact edit--patch <value>— Editable fields as one JSON object--patch-file <value>— Path to an editable-fields JSON object--prompt <value>— Replacement prompt; use --patch for null--rank <value>— Replacement queue rank--reason <value>— Auditable reason for the revision--title <value>— Replacement title--verify <value>— Replacement verification commands as JSON array or semicolon-separated text--write-scope <value>— Replacement write scope JSON object
sift work failMarcar un elemento de trabajo como fallido
- Arguments
idrequired — Work item ID- Flags
--artifacts <value>— Artifact refs JSON array--claim-token <value>— Claim token returned by work claim (required for lease-owned transitions)--lease <value>— Lease seconds--memory-decision <value>— Durable code-memory decision JSON (required on agent complete/review): {"decision":"store"|"skip","rationale":"...","fact"?,"category"?,"repositoryId"?,"filePath"?,"paths"?,"evidenceChunkIds"?,"sourceCommit"?,"confidence"?}--owner <value>— Claim owner identity (required for lease-owned transitions)--reason <value>— Block or failure reason--summary <value>— Result summary--verification-results <value>— Verification evidence JSON array: [{"command","exitCode","output"?}]
sift work getObtener detalles de un elemento de trabajo del agente ejecutable
- Arguments
idrequired — Work item ID
sift work heartbeatExtender la concesión de un elemento de trabajo
- Arguments
idrequired — Work item ID- Flags
--artifacts <value>— Artifact refs JSON array--claim-token <value>— Claim token returned by work claim (required for lease-owned transitions)--lease <value>— Lease seconds--memory-decision <value>— Durable code-memory decision JSON (required on agent complete/review): {"decision":"store"|"skip","rationale":"...","fact"?,"category"?,"repositoryId"?,"filePath"?,"paths"?,"evidenceChunkIds"?,"sourceCommit"?,"confidence"?}--owner <value>— Claim owner identity (required for lease-owned transitions)--reason <value>— Block or failure reason--summary <value>— Result summary--verification-results <value>— Verification evidence JSON array: [{"command","exitCode","output"?}]
sift work listListar elementos de trabajo del agente ejecutable
- Flags
--agent <value>— Filter by assigned agent alias--limit <value>— Maximum results--project <value>— Filter by project ID--status <value>— Filter by status--task <value>— Filter by parent human planning task ID
sift work releaseLiberar un elemento de trabajo reclamado a la cola
- Arguments
idrequired — Work item ID- Flags
--artifacts <value>— Artifact refs JSON array--claim-token <value>— Claim token returned by work claim (required for lease-owned transitions)--lease <value>— Lease seconds--memory-decision <value>— Durable code-memory decision JSON (required on agent complete/review): {"decision":"store"|"skip","rationale":"...","fact"?,"category"?,"repositoryId"?,"filePath"?,"paths"?,"evidenceChunkIds"?,"sourceCommit"?,"confidence"?}--owner <value>— Claim owner identity (required for lease-owned transitions)--reason <value>— Block or failure reason--summary <value>— Result summary--verification-results <value>— Verification evidence JSON array: [{"command","exitCode","output"?}]
sift work requeueReturn blocked work to the queue for a fresh claim
- Arguments
idrequired — Work item ID- Flags
--artifacts <value>— Artifact refs JSON array--claim-token <value>— Claim token returned by work claim (required for lease-owned transitions)--lease <value>— Lease seconds--memory-decision <value>— Durable code-memory decision JSON (required on agent complete/review): {"decision":"store"|"skip","rationale":"...","fact"?,"category"?,"repositoryId"?,"filePath"?,"paths"?,"evidenceChunkIds"?,"sourceCommit"?,"confidence"?}--owner <value>— Claim owner identity (required for lease-owned transitions)--reason <value>— Block or failure reason--summary <value>— Result summary--verification-results <value>— Verification evidence JSON array: [{"command","exitCode","output"?}]
sift work reviewMarcar trabajo del agente ejecutable para revisión humana
- Arguments
idrequired — Work item ID- Flags
--artifacts <value>— Artifact refs JSON array--claim-token <value>— Claim token returned by work claim (required for lease-owned transitions)--lease <value>— Lease seconds--memory-decision <value>— Durable code-memory decision JSON (required on agent complete/review): {"decision":"store"|"skip","rationale":"...","fact"?,"category"?,"repositoryId"?,"filePath"?,"paths"?,"evidenceChunkIds"?,"sourceCommit"?,"confidence"?}--owner <value>— Claim owner identity (required for lease-owned transitions)--reason <value>— Block or failure reason--summary <value>— Result summary--verification-results <value>— Verification evidence JSON array: [{"command","exitCode","output"?}]
sift work revisionsList immutable, attributable work-item revision receipts and field diffs
- Arguments
idrequired — Work item ID- Flags
--limit <value>— Maximum revisions to return
sift work startMarcar un elemento de trabajo como en ejecución
- Arguments
idrequired — Work item ID- Flags
--artifacts <value>— Artifact refs JSON array--claim-token <value>— Claim token returned by work claim (required for lease-owned transitions)--lease <value>— Lease seconds--memory-decision <value>— Durable code-memory decision JSON (required on agent complete/review): {"decision":"store"|"skip","rationale":"...","fact"?,"category"?,"repositoryId"?,"filePath"?,"paths"?,"evidenceChunkIds"?,"sourceCommit"?,"confidence"?}--owner <value>— Claim owner identity (required for lease-owned transitions)--reason <value>— Block or failure reason--summary <value>— Result summary--verification-results <value>— Verification evidence JSON array: [{"command","exitCode","output"?}]
sift work verification evidenceSubmit externally executed evidence for an exact plan version and step ID
- Arguments
idrequired — Work item ID- Flags
--artifacts <value>— Artifact reference JSON array for larger logs--attempt <value>— Caller-stable attempt identity--claim-owner <value>— Active lease owner for workspace-service evidence--claim-token <value>— Opaque active lease token for workspace-service evidence--environment <value>— Execution environment label--exit-code <value>— Process exit code when applicable--outcome <passed|failed|error>— Attempt outcome--output <value>— Bounded output excerpt; secrets are redacted by the API--plan-version <value>— Active verification plan version--provenance <value>— Evidence provenance JSON object--ran-at <value>— RFC3339 execution timestamp--step <value>— Stable verification step UUID
sift work verification historyList immutable verification-plan history and coverage
- Arguments
idrequired — Work item ID
sift work verification planShow the active versioned verification plan and coverage
- Arguments
idrequired — Work item ID
sift work verification reviseCreate an audited active verification-plan revision
- Arguments
idrequired — Work item ID- Flags
--expected-version <value>— Observed active plan version--provenance <value>— Revision provenance JSON object--reason <value>— Audited revision reason--steps <value>— Verification step JSON array--steps-file <value>— Path to a verification step JSON array--yes— Confirm activation without prompting
sift work verifyDeprecated compatibility command. Hosted LLM verification is retired; use verification-command evidence.
- Arguments
idrequired — Work item ID- Flags
--history— List historical verifier runs recorded before retirement--model <value>— Deprecated; ignored because hosted verification is retired--reps <value>— Deprecated; ignored because hosted verification is retired
Worker
Ejecutores locales de trabajo.
2 comandos
sift worker dispatchCrea un plan sin coste y sin efectos externos para exactamente dos 'workers' de agente de AWS
- Flags
--max-runtime-minutes <value>— Per-worker runtime ceiling--source-sha <value>— Reviewed 40-character source Git SHA; defaults to a clean current HEAD--surface <cli|t3|codex|claude-code|mcp>— Calling control surface; does not change dispatch identity--work-item <value>— Queued Sift work-item UUID; repeat exactly twice
sift worker runReclama trabajo ejecutable, ejecuta un comando de worker local e informa sobre los artefactos que requieren revisión.
- Flags
--agent <value>— Agent alias to claim work for--command <value>— Local command to run for the claimed work item--cwd <value>— Fallback working directory for the local command--lease <value>— Lease seconds--owner <value>— Worker owner fingerprint
Espacios de trabajo
3 comandos
sift workspaces currentMuestra el espacio de trabajo Personal o colaborativo que está seleccionado.
sift workspaces listLista los espacios de trabajo colaborativos a los que tienes acceso.
sift workspaces useSelecciona un espacio de trabajo colaborativo para la detección, o Personal para anular la selección.
- Arguments
idrequired — Workspace ID, or "personal"
Copilot interactivo
El comando sift interactive inicia un copilot para la terminal que chatea, ejecuta herramientas, edita código, crea ramas de agentes en paralelo, planifica el trabajo y genera diagramas; todo desde la terminal, actuando sobre tu sistema de archivos y el gráfico de trabajo de Siftable.
$ sift interactive
Requisitos e inicio
- Se requiere Bun.
sift interactivevuelve a ejecutar Bun; si no está instalado, mostrarácurl -fsSL https://bun.sh/install | bash. - Se requiere autenticación — ya sea mediante
--token,SIFT_TOKENosift auth login. - El cerebro se ejecuta en el mismo proceso — no hay que iniciar ningún demonio aparte.
- Las escrituras se limitan a la raíz del espacio de trabajo — el ancestro más cercano a tu directorio de inicio que contenga
.git. Este es el límite que reporta/statusy el que impone la ruta de escritura nativa.
La interfaz
The composer is a full readline-capable text area. Enter submits; Shift+Enter / Ctrl+J insert a newline; submitting while the agent is busy queues your message. !command runs via bash -lc into the transcript (a bare !cd <path> changes the session directory; output clipped to ~4000 chars). Large or structured pastes become a collapsed chip; pasted images are validated, normalized, and attached. ? on an empty composer shows hotkeys.
Comandos de barra
Escribe / para abrir el menú de comandos. Los comandos ocultos se pueden seguir escribiendo, pero no aparecen en el menú.
| Command | Group | Description |
|---|---|---|
/help, /hotkeys, /status | Session | Command list, keyboard shortcuts, and current model/scope/queue status |
/cwd [path] | Session | Show or change the working directory (recomputes the workspace root) |
/copy [last|all|explorer] | Session | Copy the latest reply, whole transcript, or latest explorer report to the clipboard |
/clear, /quit | Session | Reset the transcript; exit |
/threads [clear], /compact | Session | Manage the persisted thread; force a context compaction (requires context compaction enabled) |
/model [id] [effort] | Model | Open the model picker or select a model and reasoning effort directly |
/codex [login|on|use|off|logout|status] | Model | Control the Codex (ChatGPT) engine; default subcommand is status |
/key <provider> <key>, /key vault <provider> | Model | Store a provider API key, or hydrate it from Siftable Vault |
/login | Model | Siftable device-code login from inside the TUI |
/explorer | Model | Configure the repo Explorer (context-gathering backend) |
/skills [name] | Skills | List discovered skills, or print one skill's body |
/branches | Branches | Open the parallel-agent branches hub |
/spawn <title> [--rw <globs>|--rw-any|--ro] | Branches | Start a child agent branch in its own git worktree with an access mode |
/merge, /rebase, /sendback, /reject | Branches | Land, replay, resume, or reject a child branch |
/work | Work | Open the work-queue hub (board of agents and items by status) |
/plan [objective | work [--apply] [--after SRC:DST] [--limit N] | view] | Work | Plan from an objective, or compute a precedence DAG over the agent work queue as a Mermaid graph |
/handoff <title> [--agent ..] [--files ..] [--acceptance ..] [--verify ..] | Work | Create a Siftable work item from the current context |
/proof <claim>, /remember <fact> --category <..> | Work | Gather code/test evidence; store durable code memory |
/crew [list|show|new|run], /collab | Crews | Manage and run multi-agent crews; show in-process collaboration sessions |
/mermaid [request|file.mmd|source], /view | Diagrams | Render Mermaid (NL request, file, or source) in the terminal; open the pannable viewer |
/theme, /sounds [on|off] | Appearance | Open the appearance picker; toggle UI sounds |
Modelos y motores
The model picker (/model) is two-stage: choose a model, then a reasoning effort (saved to ~/.siftable/prefs.json). The catalog includes GPT-5.6 Sol, Terra, and Luna (ChatGPT plan via the Codex engine — /codex login / /codex on select Sol by default), Claude Opus 4.8 (OpenRouter or direct Anthropic with ANTHROPIC_API_KEY), Claude Sonnet 4.6 / Haiku 4.5, Gemini 3.x Flash / Flash-Lite, GPT-5.4 mini / nano, and Morph v3 Large (apply-only). Codex drives the OpenAI codex app-server sidecar (ChatGPT device-code login). All other providers route through the bundled OpenFunction agent via <PROVIDER>_API_KEY. /key vault <provider> hydrates a key from Siftable Vault behind an approval prompt; the secret is never printed or written to disk.
Repo Explorer
/explorer configures repository context gathering before a turn. Modes: auto, off, deterministic, scout, fanout, warpgrep. Pick a scout model and budget (cheap/normal/deep). warpgrep needs MORPH_API_KEY (auto-hydrated from Vault when available). Settings persist in prefs.json.
Habilidades
Las habilidades SKILL.md se detectan (proyecto > usuario > integradas) en <root>/{.sift,.claude,.codex,.agents}/skills, ~/.claude|.codex|.agents/skills, ~/.config/sift/skills y las incluidas en el paquete. El agente puede invocar una habilidad mediante una herramienta, y se muestran hasta ~50 en su system prompt.
Atajos de teclado
Las capas superpuestas capturan primero el teclado, por lo que los atajos dependen del modo activo.
- Enter submit (queues if busy) · Shift+Enter/Ctrl+J newline · Tab complete a lone
/foo· ↑/↓ prompt history - Esc abort turn → clear draft → deselect · Ctrl+C abort → clear → deselect → quit (never copies) · Ctrl+D quit on empty draft
- Cmd/Super+A select all · Cmd+C/Ctrl+Shift+C copy selection or latest reply · Ctrl+O Explorer diagnostics · ? hotkeys
- Approval gate: y/Enter allow once · a always · b bypass-all · n/Esc deny
Aceleración nativa
Los procesos críticos para el rendimiento (compactación de contexto, memoria de hilos largos, escaneo del sistema de archivos, orquestación de fusiones y manejo de imágenes) se ejecutan mediante módulos nativos de Zig cargados vía Bun FFI, cada uno con una alternativa en TypeScript. El paquete incluye librerías precompiladas para macOS (Apple Silicon) y Linux (x64); el resto de plataformas usan la alternativa. Usa SIFT_NO_NATIVE=1 para forzar las alternativas y SIFT_CONTEXT_COMPACTION=1 para activar el medidor de tokens de contexto en tiempo real, además de la persistencia y reanudación de hilos.
Apariencia y sonido
/theme ofrece 10 esquemas (el predeterminado es "sieve" — ámbar cálido sobre carbón), que se guardan en ~/.siftable/appearance.json. /sounds activa o desactiva los efectos de sonido de la interfaz (desactivados por defecto), se guardan en ~/.siftable/sounds.json y se pueden sobrescribir con SIFT_SOUNDS.
The copilot is read-only by default; write/edit tools are scoped to the workspace root and gated by a four-way approval prompt (allow once / always / bypass-all / deny). With nothing listening, requests deny. Auto-approve environment overrides are always scrubbed at launch.
Referencia completa, incluyendo cada comando de barra, atajo de teclado, variable de entorno y archivo de configuración: docs/interactive.md en GitHub.