diff --git a/workflows/sense-generator/build.ts b/workflows/sense-generator/build.ts index d0a6a62..e9f31c4 100644 --- a/workflows/sense-generator/build.ts +++ b/workflows/sense-generator/build.ts @@ -14,27 +14,19 @@ export type BuildSenseGeneratorDeps = { nerveYaml: string; }; -export function buildSenseGenerator(deps: BuildSenseGeneratorDeps): WorkflowDefinition { +export function buildSenseGenerator({ + provider, + nerveRoot, + sensesDir, + senseExamples, + nerveYaml, +}: BuildSenseGeneratorDeps): WorkflowDefinition { return { name: "sense-generator", roles: { - planner: buildPlannerRole({ - provider: deps.provider, - cwd: deps.nerveRoot, - senseExamples: deps.senseExamples, - nerveYaml: deps.nerveYaml, - }), - coder: buildCoderRole({ - provider: deps.provider, - cwd: deps.nerveRoot, - sensesDir: deps.sensesDir, - nerveRoot: deps.nerveRoot, - }), - tester: buildTesterRole({ - provider: deps.provider, - sensesDir: deps.sensesDir, - nerveRoot: deps.nerveRoot, - }), + planner: buildPlannerRole({ provider, cwd: nerveRoot, senseExamples, nerveYaml }), + coder: buildCoderRole({ provider, cwd: nerveRoot, sensesDir, nerveRoot }), + tester: buildTesterRole({ provider, sensesDir, nerveRoot }), }, moderator, }; diff --git a/workflows/sense-generator/roles/coder/index.ts b/workflows/sense-generator/roles/coder/index.ts index 90a019b..28d4eb9 100644 --- a/workflows/sense-generator/roles/coder/index.ts +++ b/workflows/sense-generator/roles/coder/index.ts @@ -11,12 +11,11 @@ export type BuildCoderDeps = { nerveRoot: string; }; -export function buildCoderRole(deps: BuildCoderDeps) { +export function buildCoderRole({ provider, cwd, sensesDir, nerveRoot }: BuildCoderDeps) { return createCursorRole({ - cwd: deps.cwd, + cwd, mode: "default", - prompt: async (threadId) => - coderPrompt({ threadId, sensesDir: deps.sensesDir, nerveRoot: deps.nerveRoot }), - extract: { provider: deps.provider, schema: coderMetaSchema }, + prompt: async (threadId) => coderPrompt({ threadId, sensesDir, nerveRoot }), + extract: { provider, schema: coderMetaSchema }, }); } diff --git a/workflows/sense-generator/roles/planner/index.ts b/workflows/sense-generator/roles/planner/index.ts index 1376b74..8734c07 100644 --- a/workflows/sense-generator/roles/planner/index.ts +++ b/workflows/sense-generator/roles/planner/index.ts @@ -11,12 +11,11 @@ export type BuildPlannerDeps = { nerveYaml: string; }; -export function buildPlannerRole(deps: BuildPlannerDeps) { +export function buildPlannerRole({ provider, cwd, senseExamples, nerveYaml }: BuildPlannerDeps) { return createCursorRole({ - cwd: deps.cwd, + cwd, mode: "ask", - prompt: async (threadId) => - plannerPrompt({ threadId, senseExamples: deps.senseExamples, nerveYaml: deps.nerveYaml }), - extract: { provider: deps.provider, schema: plannerMetaSchema }, + prompt: async (threadId) => plannerPrompt({ threadId, senseExamples, nerveYaml }), + extract: { provider, schema: plannerMetaSchema }, }); } diff --git a/workflows/sense-generator/roles/tester/index.ts b/workflows/sense-generator/roles/tester/index.ts index 2d5e1d7..900bf83 100644 --- a/workflows/sense-generator/roles/tester/index.ts +++ b/workflows/sense-generator/roles/tester/index.ts @@ -10,10 +10,9 @@ export type BuildTesterDeps = { nerveRoot: string; }; -export function buildTesterRole(deps: BuildTesterDeps) { +export function buildTesterRole({ provider, sensesDir, nerveRoot }: BuildTesterDeps) { return createHermesRole({ - prompt: async (threadId) => - testerPrompt({ threadId, sensesDir: deps.sensesDir, nerveRoot: deps.nerveRoot }), - extract: { provider: deps.provider, schema: testerMetaSchema }, + prompt: async (threadId) => testerPrompt({ threadId, sensesDir, nerveRoot }), + extract: { provider, schema: testerMetaSchema }, }); }