Copiez ce fichier dans votre projet — c'est une intégration fonctionnelle complète.
typescript
// elysea.ts — intégration complète ELYSEA CERVEAU
import { createElyseaClient, type PipelineResult } from '@elysea/core';
const elysea = createElyseaClient({
baseUrl: process.env.ELYSEA_BASE_URL!,
auth: {
apiKey: process.env.ELYSEA_API_KEY!,
apiSecret: process.env.ELYSEA_API_SECRET!,
},
appId: process.env.ELYSEA_APP_ID!,
countryCode: 'FR',
region: 'EU',
});
type Message = { role: 'user' | 'assistant'; content: string };
export async function chat(
userJwt: string,
message: string,
history: Message[] = [],
): Promise<PipelineResult> {
// 1. Résoudre l'identité — jamais l'email, jamais les données réelles
const { coreUserId } = await elysea.identity.resolve({ userJwt });
// 2. Appel pipeline cognitif — éthique gravée, pas configurée
const result = await elysea.pipeline.run({
userInput: message,
coreUserId,
conversationHistory: history,
});
// result.response → réponse canon-conforme, prête à afficher
// result.posture → posture runtime (present_neutral, firm_safety…)
// result.guardianAction → 'pass'|'warn'|'block' (si block : errorCode + errorMessage)
// result.canonConformance → true si conforme aux canons ELYSÉA
return result;
}
// Utilisation dans votre handler API :
// const result = await chat(req.headers.authorization, req.body.message, history);
// res.json({ reply: result.response });