import { join } from "node:path"; import { createCursorAdapter } from "@uncaged/nerve-adapter-cursor"; import { hermesAdapter } from "@uncaged/nerve-adapter-hermes"; import { createKnowledgeExtractionWorkflow } from "./build.js"; import { resolveDashScopeProvider } from "../solve-issue/lib/provider.js"; const HOME = process.env.HOME ?? "/home/azureuser"; const NERVE_ROOT = join(HOME, ".uncaged-nerve"); const provider = await resolveDashScopeProvider(NERVE_ROOT); if (provider === null) { throw new Error("Set DASHSCOPE_API_KEY and DASHSCOPE_BASE_URL (or cfg get equivalents)"); } const CURSOR_TIMEOUT_MS = 300_000; const workflow = createKnowledgeExtractionWorkflow({ defaultAdapter: hermesAdapter, adapters: { explorer: createCursorAdapter({ type: "cursor", model: "auto", timeout: CURSOR_TIMEOUT_MS, }), }, extract: { provider }, }); export default workflow;