mirror of
https://github.com/claude-code-best/claude-code.git
synced 2026-06-17 22:05:50 +00:00
围绕 ultracode skill 审查 agent 系统一致性后:
- ultracode.ts: 用系统提示版完整 Workflow 编排手册替换中文精简版
- HIGH#1 isolation:'worktree': claudeCodeBackend.run() 用 createAgentWorktree +
runWithCwdOverride 包裹 runAgent + finally 清理实现真正的 cwd 隔离;slug 用
sha256(runId:agentId) 派生以匹配 cleanupStaleAgentWorktrees 清理正则
(修 runId 为 w+base36 非 UUID 导致的泄漏盲区);worktree.ts 注释同步修正
- HIGH#2 inline 持久化: 新增 persistInlineScript,WorkflowTool + service 两条
inline 路径对称持久化到 .claude/workflow-runs/<runId>/script.js,返回可复用
scriptPath(闭环 inline→编辑→scriptPath 重提迭代循环)
- HIGH#3 opt-in 分工: ultracode/WorkflowTool/effort 注明 session reminder 由
harness 注入,repo 内无 ultracode 信号,保持 feature('WORKFLOW_SCRIPTS') +
isEnabled 两层 gate,不自造注入
- 测试: 新增 persistInline.test.ts;扩展 claudeCodeBackend(isolation 4 用例)/
WorkflowTool(inline)/service(scriptPath)/ultracode(harness)
含配套 workflow engine/panel 完善与 run-state-persistence design doc。
Co-Authored-By: Claude <noreply@anthropic.com>
26 lines
965 B
TypeScript
26 lines
965 B
TypeScript
// @claude-code-best/workflow-engine
|
|
// 确定性 JS 脚本编排引擎。零核心层运行时依赖,通过端口适配与世界对话。
|
|
|
|
export * from './types.js'
|
|
export * from './constants.js'
|
|
export * from './ports.js'
|
|
export * from './agentAdapter.js'
|
|
export * from './engine/concurrency.js'
|
|
export * from './engine/script.js'
|
|
export * from './engine/journal.js'
|
|
export * from './engine/budget.js'
|
|
export * from './engine/structuredOutput.js'
|
|
export * from './engine/namedWorkflows.js'
|
|
export * from './engine/errors.js'
|
|
export * from './engine/context.js'
|
|
export * from './engine/hooks.js'
|
|
export * from './engine/runWorkflow.js'
|
|
export * from './progress/events.js'
|
|
export {
|
|
createWorkflowTool,
|
|
type WorkflowToolDescriptor,
|
|
} from './tool/WorkflowTool.js'
|
|
export { workflowInputSchema, type WorkflowInput } from './tool/schema.js'
|
|
export { persistInlineScript } from './tool/persistInline.js'
|
|
export { WORKFLOW_TOOL_NAME } from './tool/constants.js'
|