TanStack AI — não adotado
Decisão (dono, 03/10/2026): o web não adota o TanStack AI agora. Revisitar quando chegar à 1.0, ou se nascer uma feature de chat fora do fio da sessão. Sem ADR: nada estrutural muda.
O que é
Uma família de pacotes (@tanstack/ai, @tanstack/ai-client,
@tanstack/ai-react, MIT) para construir interfaces de chat: um ChatClient
no cliente, com streaming e fila de mensagens, e um chat() no servidor que
fala com os providers de LLM.
O que foi medido (03/10/2026)
apps/webnão tem dependência@tanstack/ai*— só React Query e Router.- Versões no dia:
@tanstack/ai0.64.0,@tanstack/ai-client0.36.1,@tanstack/ai-react0.29.4. A página do projeto marca Alpha, com versão nova quase todo dia. - Conexão própria é possível (
ConnectConnectionAdapter/SubscribeConnectionAdapteremconnection-adapters.d.tsdoai-client). Usando só o cliente, nenhuma chamada de LLM sairia do Harness, do roteador nem do metering.
Por que não
- O canal Phoenix não fala AG-UI: ele carrega
agent.delta,agent.done,agent.statusetool.call(apps/web/src/lib/session-channel.ts). Adotar exigiria um tradutor ou mudar os sete servidores conversacionais. - O clique responde no aceite, e o fim do turno vem pelo canal e pelo
log (RN-578,
ADR 0163,
acompanharTurnoPeloLogemapps/web/src/lib/session-turno.ts). - A fila de mensagens do
ChatClient(whenBusy: 'queue') conflita com a fila que mora no log (RN-673, ADR 0191). - Um assistente por conversa, contra um fio com vários agentes e destinatário explícito (RN-584, RN-631).
- A faixa de atividade e os passos do turno vêm do log (RN-460, AT-395).
- O isolamento por token da RN-639
(
SessionPage.streaming-isolado.test.tsx) correria risco. - O corte do fio e a reidratação pelo log (RN-644, RN-580) não ganham nada.
O único ganho seria trocar o store de
apps/web/src/lib/streaming-do-turno.ts.
Proibido em qualquer adoção futura
- O
chat()do servidor TanStack: ele fala direto com o provider, contornando o Harness, o roteador e o metering. - O BYOK do pacote: chave de API no navegador fere a RN-058 (o agente gasta a chave do owner do workspace, guardada criptografada pela api).
Revisitar quando
- O TanStack AI chegar à 1.0; ou
- surgir uma feature de chat fora do fio da sessão.