SLACK

Menciona @tde. Hardware que controlas hace el trabajo.

Dos apps oficiales de Slack, un pipeline durable. TDE Assistant responde menciones @tde — y todo plan de cambio se detiene en un human gate. Con Sync, eso corre en tu TDE self-hosted o en una Machine que designes. Con Enterprise, el trabajo de canal corre en un Organization runtime incluido en el plan — always-on, separado de cada laptop. TDE Triage sigue leyendo tu propio ruido localmente y convierte demandas reales en tareas revisables.

  • Sync o Enterprise
  • Human gate en cada cambio
  • 0 bot tokens en el desktop
#eng-api · threadMOCKUP

mara

@tde checkout returns 500 when the cart is empty — can you fix it?

TDE APP

change · plan waiting for approval

  1. Reproduce the empty-cart 500 in the checkout API
  2. Add a guard + regression test
  3. Open a pull request against main
Approve planReject

mara

pode aprovar

TDE APP

Plan approved — task running on your machine

CUATRO ACCIONES

Cada mención se convierte exactamente en una cosa.

La clasificación es un conjunto cerrado de cuatro políticas literales. El Assistant nunca improvisa un quinto comportamiento.

reply

Responde en el hilo

Respuestas directas a preguntas y contexto. Nunca crea tarea, nunca pide aprobación.

@tde what does the retry backoff look like in the sync worker?

read_only_run

Investiga en solo lectura

Investigación asíncrona en un harness — Claude, Codex, TDE u Ollama — forzado a solo lectura por el provider, con connectors cercados por proyecto y cero secretos en el prompt. Publica el resultado; no se crea tarea.

@tde why did the nightly build fail on the migration step?

clarify

Devuelve una pregunta

Cuando el pedido es ambiguo, recibes exactamente una pregunta de vuelta. Cero mutación en el board.

@tde can you improve the onboarding?

change

Planifica y espera por ti

Crea o actualiza una tarea por hilo con plan explícito — y queda bloqueada hasta que un humano apruebe.

@tde add rate limiting to the public API endpoints

DE LA MENCIÓN A LA RESPUESTA

Un pipeline durable. Cero puertos abiertos.

Un admin del workspace instala TDE Assistant una vez desde el link público — sin crear app, sin generar secret, sin pegar token. Cada mención @tde recorre un camino firmado, durable e idempotente hasta un runtime que solo sale hacia fuera: tu host Sync para uso personal, o el Organization runtime cuando Enterprise está activo.

¿Ningún runtime online? El evento espera de forma durable — nada se pierde y nada se inventa. Los hosts personales se reconectan con backoff; el Organization runtime de Enterprise se aprovisiona con el plan y permanece encendido para el trabajo de canal.

events.tde.sh → your machineLIVE PATH
  1. @tde en un canal

    Canales públicos y privados donde se invitó al bot. En Enterprise, cada canal puede mapearse a un proyecto; los DM siguen siendo personales y nunca usan el Organization runtime.

    @tde

  2. Evento firmado

    La Events API de Slack entrega al servicio de eventos de TDE, que valida la firma de la solicitud antes de cualquier otra cosa.

    x-slack-signature ✓

  3. Cola durable

    Cada evento se guarda con lease. Una reentrega de Slack recibe la respuesta original — nunca una tarea duplicada.

    lease · redelivery-safe

  4. WebSocket de salida

    Tu host Sync o el Organization runtime marca hacia el router. Funciona detrás de NAT con cero puertos abiertos.

    wss:// dial-out · NAT ok

  5. Clasificación semántica

    El mensaje se convierte exactamente en una de cuatro acciones: reply, read_only_run, clarify o change.

    reply · read_only_run · clarify · change

  6. Board

    Un change crea o actualiza una tarea por hilo (TDE-N), con plan explícito, bloqueada hasta que un humano apruebe — y las transiciones de etapa pueden escribir de vuelta en el hilo.

    1 task / thread · human gate

  7. Respuesta en el hilo

    La respuesta vuelve por el router. El bot token se cifra en el servidor y nunca llega a ningún desktop.

    AES-256-GCM · server-side

HUMAN GATE

El modelo nunca decide una aprobación.

Dos formas de aprobar, un gate atómico. Ambos caminos terminan en la misma comprobación del servidor — la inferencia queda estructuralmente fuera de la decisión. En Enterprise, solo los approvers configurados pasan el gate.

01

Botones con binding inmutable

Approve plan y Reject son botones de Block Kit atados a un task_id y un plan_id específicos. Un botón viejo nunca aprueba un plan más nuevo.

02

Aprobación escrita, parseada de forma determinista

Responde “approve” o “pode aprovar” en el mismo hilo. Un parser determinista fuera del camino de inferencia reconoce aprobaciones en inglés y portugués.

03

Una tarea por hilo

Un change nunca se dispersa: crea o actualiza una sola tarea, con plan de como máximo 8 pasos, y espera.

Binding inmutable

task_id: TDE-1873

plan_id: pl_09f2c4

Approve planReject

Frases que acepta el parser

approveaprovarpode aprovarrejectrejeitar

Parseadas por código determinista, fuera del modelo. El prefijo <@…> nunca se elimina — un mensaje dirigido a un humano nunca se convierte en comando.

LOS HILOS SON SESIONES

Empieza en Slack. Continúa en TDE.

Cada hilo de Slack es una sesión de agente durable en el runtime que la posee. Los follow-ups en el hilo no necesitan repetir @tde — y puedes continuar la misma conversación en el AI Chat de TDE cuando corre en tu host Sync.

01

Un hilo, una sesión

El contexto del hilo lleva hasta 30 mensajes; una sesión corre hasta 30 turnos.

02

La misma conversación en ambas superficies

Abre la sesión en el AI Chat de TDE y sigue — mismo historial, mismo agente, misma máquina.

03

Idempotente por construcción

Si Slack reentrega un evento, recibe la respuesta original — nunca una tarea duplicada.

La vista real de tarea de My Loop, mostrando una tarea creada por Slack con su plan y actividad.

TDE TRIAGE

Tu propia bandeja, triada en tu propia máquina.

La segunda app es un Bot local. Cada 15 minutos consulta tus DM, mensajes de grupo y canales con tu user token — guardado en el vault local cifrado de TDE, nunca en un servidor — y juzga qué es una demanda real.

El board real de My Loop donde las demandas triadas de Slack llegan como tareas en la etapa Context.

01

Token local, vault local

Tu user token vive en ~/.tde/secrets.db, cifrado con una clave en el keyring del sistema. Nunca sale de la máquina.

02

Las demandas se convierten en tareas

Los pedidos reales caen en la etapa Context de My Loop; los mensajes nuevos del mismo hilo se convierten en comentarios o notificaciones, nunca tareas duplicadas.

03

Borradores, nunca posts

Triage nunca escribe en Slack. La skill slack-triage, aprovisionada automáticamente, produce un borrador de respuesta para revisión humana.

04

Presupuestos rígidos

50 mensajes por conversación y 10 llamadas de IA por corrida — pasado eso, una heurística determinista toma el control. La primera conexión nunca tria el backlog del canal.

slack:C08…/1722Context

Customer asks how licensing works on air-gapped machines

Borrador listo para revisión — nunca publicado solo

DOS APPS, UN OAUTH

Assistant y Triage, lado a lado.

Instalar el Assistant en un workspace hace backfill y vincula automáticamente identidades Triage existentes — y viceversa. Un solo OAuth cubre ambos.

AspectoTDE AssistantTDE Triage
IdentidadApp bot del workspace, instalada una vez por un adminTu propio usuario de Slack, conectado vía QR en TDE Browser
TokenBot token cifrado en el servidor (AES-256-GCM); nunca llega a un desktopUser token en el vault local cifrado; nunca llega a un servidor
RuntimeSync: tu TDE self-hosted o Machine elegida. Enterprise: Organization runtime incluido en el planBot local por polling, cada 15 minutos
DisparadorMención @tde en un canal donde se invitó al bot; /tde tasks lista cards abiertasCron; lee tus propios DM, mensajes de grupo y canales
Visible en SlackSí — responde en el hilo como el botNo — nunca publica, solo borradores para tu revisión

MODELO DE SEGURIDAD

Escrito para el revisor paranoico.

La versión honesta, no la de folleto.

01

El bot token nunca viaja

Cifrado en el servidor con AES-256-GCM y AAD por team. Ningún desktop lo guarda.

02

Firmas verificadas en el borde

Cada evento se valida contra la firma de solicitud de Slack antes de tocar el pipeline.

03

Project fence, siempre

El enrutamiento canal→proyecto y las cercas de MCP/sandbox mantienen cada run dentro de un proyecto. Relinkear un canal nunca mezcla dos empresas en el mismo prompt.

04

Roles en Enterprise

Sync personal autoriza al usuario vinculado. Enterprise permite que miembros del workspace pidan; solo approvers configurados aprueban mutaciones. Los DM nunca usan el Organization runtime.

05

El texto es dato, no instrucción

El contenido de Slack se trata como dato, una postura explícita anti prompt-injection. El prefijo <@…> nunca se elimina.

06

Solo lectura falla cerrado

Las investigaciones corren en harnesses forzados a solo lectura por el provider, con connectors vinculados al proyecto y sin secretos en el prompt.

07

Una primaria, cercada

Sync personal mantiene un único Assistant host. El Organization runtime de Enterprise posee el tráfico de canales de la org — las laptops de la misma licencia no compiten por esos eventos.

¿Necesito crear una app de Slack?

No. TDE Assistant es una app distribuida: un admin del workspace la instala una vez desde el link público. Nunca creas app, generas secret ni pegas token — e instalar no exige TDE Desktop ni licencia.

Sync o Enterprise — ¿qué ejecuta @tde?

Con Sync, @tde corre en tu TDE self-hosted o en una Machine comprada definida como Assistant host. Con Enterprise, las menciones de canal corren en un Organization runtime incluido en el plan (always-on). Los DM siguen siendo personales y nunca usan ese runtime.

¿Puedo enviar DM al bot?

Los DM permanecen en la ruta Sync personal cuando están habilitados en tu cuenta — nunca se enrutan al Organization runtime. El trabajo del equipo está pensado para canales donde se invitó al bot.

¿Y si tengo varias máquinas?

Conecta tantos devices Sync como quieras; un Assistant host personal es autoritativo. Enterprise añade un Organization runtime separado para canales de la org — no reemplaza tu flota de laptops.

¿Está disponible /tde tasks?

Sí. En canales donde el Assistant está instalado, /tde tasks lista cards abiertas del Board de ese canal. Las transiciones de etapa también pueden escribir de vuelta en el hilo de origen.

TDE PARA SLACK

Pon un runtime que controlas detrás de tus menciones.

Instala TDE, conecta Slack una vez, y cada @tde se convierte en trabajo accountable detrás de un human gate — en tu host Sync o en el Organization runtime incluido con Enterprise.