@nfinitmonkeys/llm-cortex
v0.1.0
Published
Cortex API backend for @nfinitmonkeys/brain. Implements chat + embed natively (OpenAI-compatible at cortexapi.nfinitmonkeys.com); synthesizes structuredExtract + summarize via JSON-mode chat.
Maintainers
Readme
@nfinitmonkeys/llm-cortex
Cortex API adapter for @nfinitmonkeys/brain. Implements the LLM interface natively for chat + embeddings; synthesizes structuredExtract + summarize via JSON-mode chat.
Install
npm install @nfinitmonkeys/llm-cortex @nfinitmonkeys/brainQuick start
import { Brain } from '@nfinitmonkeys/brain';
import { CortexLLM } from '@nfinitmonkeys/llm-cortex';
const llm = new CortexLLM({
apiKey: process.env.CORTEX_API_KEY!,
// baseURL defaults to https://cortexapi.nfinitmonkeys.com/v1
// defaultModel defaults to Qwen/Qwen2.5-72B-Instruct-AWQ
// defaultEmbedModel defaults to BAAI/bge-m3
});
const brain = new Brain({ vaultRoot: '~/Projects/my-clan/.brain', llm });
// Now LLM-driven brain operations work
const answer = await brain.query('what was the EV market hallucination?');Capability map
| Operation | Implementation |
|---|---|
| chat | OpenAI-compatible /v1/chat/completions via openai SDK |
| embed | OpenAI-compatible /v1/embeddings via fetch (default model: BAAI/bge-m3, 1024-dim) |
| structuredExtract | JSON-mode chat with the schema embedded in the system prompt |
| summarize | Tuned chat prompt with a target word count |
| iris | Not implemented — Cortex's Iris endpoint isn't yet exposed via this adapter. Will land in a later version when the Cortex API surface is stable. |
| vlm / tts / stt | Not implemented yet — same reason. |
For LLM operations not natively implemented, callers can use embedOrFallback, structuredExtractOrFallback, summarizeOrFallback from @nfinitmonkeys/brain which synthesize via chat.
Environment defaults
The CortexLLM constructor accepts apiKey directly, but you may also use environment variables:
CORTEX_API_KEY(required if not passed in)CORTEX_BASE_URL(optional; defaults tohttps://cortexapi.nfinitmonkeys.com/v1)CORTEX_DEFAULT_MODEL(optional)CORTEX_DEFAULT_EMBED_MODEL(optional; defaults toBAAI/bge-m3)
const llm = CortexLLM.fromEnv(); // pulls all four from process.envLicense
MIT.
