RFC-005 Phase 2: workflow-utils — 适配新 Role 签名 + 提取 createRole 通用方法 #269
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
目标
更新
@uncaged/nerve-workflow-utils中所有 role creator,适配新签名,提取通用的createRole(agent, identity, extract)方法。变更范围
packages/workflow-utils/src/role-*.ts具体任务
更新
role-types.ts:CliPromptFn和LlmPromptFn签名从(threadId: string)改为(ctx: ThreadContext)— 让 prompt 构造函数能访问完整上下文isDryRun适配(dryRun 移到哪取决于 Phase 1 最终决定)LlmExtractor类型提取通用
createRole<M>(agent: AgentFn, identity, extract: LlmExtractor): Role<M>重构 4 个 role creator 适配
(ctx: ThreadContext)签名:createCursorRole— 内部构造 AgentFn(调用 cursor-agent CLI)createHermesRole— 内部构造 AgentFn(调用 hermes CLI)createLlmRole— 内部构造 AgentFn(调用 LLM API)createReActRole— 内部构造 AgentFn(ReAct loop)所有 role creator 的
llmExtract尾部模式统一收敛到createRole内部pnpm run check+pnpm run build通过验证步骤
createRole通用方法已实现并导出createXxxRole均使用新签名(ctx: ThreadContext)llmExtract逻辑不再重复出现在每个 role creator 中LlmExtractor类型已导出pnpm run build通过pnpm testRef: #267