<haki_memory> généré — zéro
dépendance runtime (fetch natif Node ≥ 18).
Installation
HakiClient
Promise<HealthResponse>
Promise<CaptureResponse>
events: EventInput[].Promise<ContextResponse>
Promise<TraceResponse>
Promise<TimelineResponse>
Promise<ConsolidateResponse>
Promise<ForgetResponse>
Promise<FeedbackResponse>
Promise<ResolveConflictResponse>
Promise<KeyCreatedResponse>
Promise<KeyListResponse>
Promise<KeyRevokedResponse>
snake_case (contrat B.1 et schémas de
routes) : les types exportés (EventInput, CaptureResponse,
ContextResponse…) exposent des champs comme project_id,
source_event_ids, trace_id tels quels — seules les options des
méthodes du client sont en camelCase (projectId, subjectId…).
Erreurs typées
HakiConnectionError (réseau),
HakiApiError (statusCode, errorType, field, payload).
Les deux hooks agent (haki/runtime)
buildPromptContext produit un texte identique au SDK Python (même
instruction fixe, même format - predicate: value (valid from ...; sources: ...)). captureTurn(client, { subjectId, projectId, userMsg, assistantMsg, orgId?, agentId?, threadId?, kind? }) écrit un événement
conversation.turn avec idempotency_key: "turn-" + randomUUID().
CLI haki-ts
command
Teste
/health, écrit ~/.haki/config.json.command
Scénario minuté complet, sortie 0/1.
command
Santé de l’API.
Exemple runnable
sdk/typescript/examples/basic-agent.mjs dans le dépôt — un agent
minimal complet utilisant HakiClient, buildPromptContext et
captureTurn.
