v0.6.0
Added
-
karajan-rag doctor [ruta](KJR-TSK-0126, roadmap 0.6.0):
diagnóstico de entorno e índice sin efectos — node, peers opcionales
(@lancedb/lancedb,@huggingface/transformers,pg), CLIs de IA en
PATH, variables de entorno relevantes, config del proyecto
(válida/ausente/inválida) y estado del índice (fingerprint, ficheros,
chunks). Cada ✗/⚠ incluye el comando exacto para arreglarlo; exit code
1 solo con errores.runDoctorChecks(puro, deps inyectables) y
runDoctorCommanden el barrel. -
SDK embebible
createRag()(KJR-TSK-0125, roadmap 0.6.0): fachada
programática para frameworks (Astro/Next/Fastify/workers) sin CLI —
{index, query, status, close}con los mismos defaults ADR-005 que los
subcomandos easy. Acepta backends por nombre (lancedb/pgvector/
in-memory) o instancias inyectadas de store/embedder.statussin
índice ypgvectorsinPG_URLfallan con instrucción exacta.
Ejemplos copiables por framework en docs/easy-rag.md → sección SDK. -
Factory
createOllamaClient(KJR-TSK-0124, roadmap 0.6.0): una
configuración compartida (baseUrl,model,embedModel) produce las
tres piezas contra el mismo proceso Ollama —adapter(generación
blocking víaPOST /api/generate, sin depender del binario),
streamAdapter(NDJSON existente) yembedder(OpenAI-compatible
existente). RAG 100% local con un solo endpoint. -
Adapter
anthropicHTTP (KJR-TSK-0123, roadmap 0.6.0):
runAnthropiccontra la Messages API (/v1/messages, headers
x-api-key+anthropic-version: 2023-06-01) sin SDK, con modelo por
defectoclaude-opus-4-8, fetch inyectable ystop_reason/usage
expuestos enproviderMeta(unrefusalomax_tokenses decisión
del caller, sin fallbacks silenciosos). Complemento arunClaudeCli
para entornos sin shell (Cloud Run, workers). Proveedor público: entra
en el nivelpublicde la sensitivity policy junto a openai. -
Adapter
openaiHTTP (KJR-TSK-0122, roadmap 0.6.0):runOpenAi
contra Chat Completions públicas sin SDK (fetch inyectable, errores
HTTP explícitos,baseUrlconfigurable para gateways compatibles).
Proveedor público: entra en el nivelpublicde la sensitivity
policy por defecto — nunca recibe contenido confidential/internal.