用户控制 (最高优先级)
↓
规则层 (硬编码安全规则)
↓
模式层 (用户配置的权限模式)
↓
工具层 (工具级别的权限检查)
↓
分类器 (AI 辅助审批)// src/config/featureFlags.ts
export const FEATURE_FLAGS = {
enableSwarmMode: false,
enableSpeculativeExecution: false,
enableMCPTools: true,
enableCoordinator: false,
};用户输入 → State 更新 → UI 重渲染// 工具通过组合实现复杂功能
class AgentTool {
constructor(
private fileSystem: FileSystem,
private executor: ToolExecutor,
private coordinator: Coordinator
) {}
}// 使用 Zod 进行运行时验证
const FileEditInputSchema = z.object({
path: z.string(),
oldStr: z.string(),
newStr: z.string(),
});
type FileEditInput = z.infer<typeof FileEditInputSchema>;// 所有工具执行都包裹在 try-catch 中
try {
const result = await tool.execute(input, context);
return { success: true, result };
} catch (error) {
return { success: false, error: formatError(error) };
}entrypoints
↓
commands ←→ state
↓
query ←→ services
↓
tools ←→ services
↓
utils