feat(workflow): add workflow engine, /workflows panel, /ultracode skill

将 feat/sdk-backend 分支中 workflow 相关的 20 个 commit 压缩为单 commit:

- 工作流引擎核心:phase / agent / parallel / pipeline 编排原语(packages/workflow-engine/)
- /workflows 面板:三区焦点布局(顶部 run tabs + 左侧 phase 侧栏 + 右侧 agent 列表)
- /ultracode skill:多 agent workflow 编排入口
- 进度存储 / journal / notification 系统
- WorkflowService 生命周期管理 + SentryErrorBoundary
- 脚本沙箱:禁用 dynamic import()、JSON args 防御性归一化
- journal 与 named-workflow 路径统一在 projectRoot
- 错误处理:parallel/pipeline hooks 错误日志、failure routing、semaphore abort
- workflow 工具升级为 core 工具 + PascalCase 命名

Co-Authored-By: glm-5.1 <zai-org@claude-code-best.win>
This commit is contained in:
claude-code-best
2026-06-13 20:07:18 +08:00
parent 91cffe16e2
commit d236880bc3
106 changed files with 16127 additions and 834 deletions

View File

@@ -32,7 +32,7 @@ import { TEAM_DELETE_TOOL_NAME } from '@claude-code-best/builtin-tools/tools/Tea
import { EXECUTE_TOOL_NAME } from '@claude-code-best/builtin-tools/tools/ExecuteTool/constants.js'
import { ENTER_WORKTREE_TOOL_NAME } from '@claude-code-best/builtin-tools/tools/EnterWorktreeTool/constants.js'
import { EXIT_WORKTREE_TOOL_NAME } from '@claude-code-best/builtin-tools/tools/ExitWorktreeTool/constants.js'
import { WORKFLOW_TOOL_NAME } from '@claude-code-best/builtin-tools/tools/WorkflowTool/constants.js'
import { WORKFLOW_TOOL_NAME } from '@claude-code-best/workflow-engine'
import {
CRON_CREATE_TOOL_NAME,
CRON_DELETE_TOOL_NAME,
@@ -165,6 +165,11 @@ export const CORE_TOOLS = new Set([
LSP_TOOL_NAME, // 'LSP'
// Skills
SKILL_TOOL_NAME, // 'Skill'
// Workflow orchestration — first-class primitive /ultracode directs the
// model to call directly. Kept core (not deferred) so it's always visible
// and callable without a SearchExtraTools round-trip. Registration itself
// is still feature-gated (feature('WORKFLOW_SCRIPTS')) in tools.ts.
WORKFLOW_TOOL_NAME, // 'Workflow'
// Scheduling & monitoring
SLEEP_TOOL_NAME, // 'Sleep'
// Tool discovery (always loaded)