- workflow-generator → generate-workflow
- sense-generator → generate-sense
- Delete gitea-issue-solver (replaced by solve-issue)
小橘 🍊(NEKO Team)
24 lines
725 B
TypeScript
24 lines
725 B
TypeScript
import type { LlmProvider } from "@uncaged/nerve-workflow-utils";
|
|
import { createCursorRole } from "@uncaged/nerve-workflow-utils";
|
|
import { plannerPrompt } from "./prompt.js";
|
|
import { z } from "zod";
|
|
|
|
export const plannerMetaSchema = z.object({
|
|
senseName: z.string().describe("kebab-case sense name from the plan"),
|
|
});
|
|
export type PlannerMeta = z.infer<typeof plannerMetaSchema>;
|
|
|
|
export type BuildPlannerDeps = {
|
|
provider: LlmProvider;
|
|
cwd: string;
|
|
};
|
|
|
|
export function buildPlannerRole({ provider, cwd }: BuildPlannerDeps) {
|
|
return createCursorRole<PlannerMeta>({
|
|
cwd,
|
|
mode: "ask",
|
|
prompt: async (threadId) => plannerPrompt({ threadId }),
|
|
extract: { provider, schema: plannerMetaSchema },
|
|
});
|
|
}
|