TypeScript SDK
Cliente oficial de Claix en TypeScript
Endpoint
npm install claix-aiEl paquete npm claix-ai expone ClaixClient, el mismo mapa de llamadas que el SDK de Python. Las llamadas principales son client.retrieve.ask (lecturas en vivo) y client.guard.check (permitir o denegar un INSERT, UPDATE o DELETE). Ingest sigue en el mismo cliente. El cliente es async (Node.js 18+).
Las tools de CrewAI en TypeScript usan @crewai-ts/core (claix-ai/crewai). El runtime oficial de CrewAI en Python sigue en pip install 'claix-ai[crewai]'.
1. Instalación
npm install claix-ai npm install claix-ai @langchain/core zod npm install claix-ai @crewai-ts/core npm install claix-ai llamaindex
La API key va en CLAIX_API_KEY o en el constructor (apiKey). El cliente envía x-api-key.
2. Inicio rápido
import { ClaixClient } from "claix-ai";
const client = new ClaixClient();
const answers = await client.retrieve.ask("orders-agent", [
{ question: "How many orders are confirmed?", format: "int" },
]);
const decision = await client.guard.check(
"UPDATE orders SET discount = $1 WHERE id = $2",
{ params: [0.35, 90421] },
);
console.log(answers.ia_response, decision.allowed, decision.reason);3. Mapa de métodos
| Método | HTTP |
|---|---|
| client.retrieve.ask(agentName, questions) | POST /retrieve/{agent_name} |
| client.guard.check(sql, { params, connectionId }) | POST /check-sql |
| client.extract.pdf / excel / document / image / audio / text | POST /api/*-json o POST /agent/*-json |
| client.extract.jsonToExcel({ schemaId, data }) | POST /api/json-excel |
| client.context.get / ask / delete | GET /get-document, POST /document-context, DELETE /delete-document |
| client.context.replace(documentId, newContentDocumentId) | POST /replace-document |
| client.spaces.create / add / ask / removeDocument / delete | create-space, add-space, space-context, remove-document-from-space, delete-space |
| client.schemas.list / get / create / update / delete | GET /api/schemas, GET /api/get-schema, POST /api/create-schema, PUT /api/update-schema, POST /api/delete-schema |
Retrieve acepta string, int, boolean, timestamp, timestamptz, timestampz, date, json, array, array:string y array:int. Las preguntas de un documento o un espacio siguen en string, int, boolean, timestamp o array. Una denegación de Guard sigue siendo HTTP 200. connectionId solo hace falta si la cuenta tiene más de una conexión activa.