Saltar al contenido principal
Estas son las tools para la mitad de Driftless que no es documentación: Projects (el loop de cards) y Collections (el sustrato operacional). Son tools basadas en action: pasa action para elegir la operación. Las escrituras requieren el scope work:write; una API key actúa con el rol del member que la creó.

Projects y cards

driftless_project_card action:'next' es el tick del loop: devuelve la próxima card accionable más su context bundle en una sola llamada.
ToolActionsParams principalesNotas
driftless_projectlist, get, setid (omite para crear), title, goaltodavía no expone playbook_slug
driftless_project_cardlist, get, add, set, move, delete, nextproject_id, card_id, status, ownernext devuelve { card, context_bundle, project_done }
Permisos: las lecturas son de nivel member; las escrituras requieren work:write. Disponibilidad: Available. La verificación de cards es reportar y exponer: el servidor almacena el comando validate y el resultado que reportas, y nunca lo corre.
driftless_project_card action:'next' project_id:'<project-id>'
  → { card: { id, status }, context_bundle: [ ... ], project_done: false }

Collections y records

driftless_collection action:'retrieve' entrega las dos mitades de la costura a la vez: los records relevantes más el criterion de Knowledge para leer primero. Para solo el criterion, usa action:'context'.
ToolActionsParams principalesNotas
driftless_collectionlist, get, add, update, doctor, context, retrieveid, query, status, view, limit, cursorretrieve devuelve { records, nextCursor, criterion, criterion_missing }
driftless_collection_recordlist, get, add, updatecollection_id, record_id, fields, status, entity_idel status se valida contra los stages de la collection
Permisos: las lecturas son de nivel member; las escrituras requieren work:write. Disponibilidad: Available.
driftless_collection action:'retrieve' id:'<collection-id>' status:'qualified' limit:25
  → { records: [ ... ], nextCursor, criterion: [ ... ], criterion_missing: [] }

Entities

Una Entity es una identidad cross-collection a la que los records apuntan. Hace upsert idempotente sobre (kind, dedup_key): escribir el mismo par dos veces la actualiza en vez de crear un duplicado.
ToolActionsParams principalesNotas
driftless_entitylist, get, upsertkind, name, dedup_key, attributesidempotente sobre (kind, dedup_key)
Permisos: list / get son de nivel member; upsert requiere work:write. Disponibilidad: Available.
driftless_entity action:'upsert' kind:'company' name:'Acme' dedup_key:'acme.com'

Permisos

ScopeCubre
work:writeCrear y actualizar projects, cards, collections, records y entities
member (lectura)list / get / next / context / retrieve / doctor
No hay un scope separado por superficie; work:write cubre todo el plano de work y operations.

Disponibilidad

CapacidadEstado
Projects, cards y el loop de nextAvailable
Collections, records y la costura de criterionAvailable
Dedup de Entity sobre (kind, dedup_key)Available
playbook_slug en driftless_projectNot available (setéalo desde la CLI o API)
Ejecución del validate de una card en el servidorNot available (solo reportar y exponer)

Relacionado