classifier

分类器使用 AI 辅助权限决策,在 Auto 模式下自动审批写操作。

设计理念

问题

硬编码规则无法覆盖所有场景:

  • 新命令不断出现

  • 上下文影响安全性

  • 用户意图难以预测

解决方案

使用 AI 分类器判断操作是否安全:

命令 + 上下文 → 分类器 → 批准/拒绝

核心实现

分类器调用

async function classifierApprove(
  command: string,
  context: ToolContext
): Promise<PermissionResult> {
  // 1. 构建分类器 prompt
  const prompt = buildClassifierPrompt(command, context);
  
  // 2. 调用 Claude API
  const response = await anthropic.messages.create({
    model: 'claude-3-5-sonnet-20241022',
    max_tokens: 100,
    messages: [{ role: 'user', content: prompt }],
  });
  
  // 3. 解析响应
  const decision = parseClassifierResponse(response.content);
  
  return decision;
}

Classifier Prompt

响应解析

分类示例

安全操作

危险操作

不确定操作

性能优化

缓存决策

批量分类

置信度阈值

配置

决策逻辑

学习机制

用户反馈

模式学习

下一步

  • 查看 权限模式 的配置

  • 了解 Bash 权限检查 的详细规则

  • 探索 沙箱执行 的隔离机制