SuperAPI AI 工具集

agent-sort

智能体与模型

查看项目

更新于 10-15 08:34

技能介绍

用途

Agent Sort 用于在某个代码仓库需要项目专属的 ECC 安装面、而非默认全量安装时使用。其目标不是凭感觉猜测哪些组件“有用”,而是依据实际代码库中的证据对 ECC 组件进行分类。

适用场景

  • 项目只需要 ECC 的一个子集,全量安装过于嘈杂。
  • 仓库技术栈清晰,但没人愿意逐个手动挑选技能。
  • 团队希望获得可重复、由 grep 证据支撑而非主观意见的安装决策。
  • 需要将始终加载的日常工作流面与可搜索的库/参考面区分开。
  • 仓库已经漂移到错误的语言、规则或钩子集合,需要清理。

不可协商的规则

  • 以当前仓库为事实来源,而非通用偏好。
  • 每个 DAILY 决策都必须引用具体的仓库证据。
  • LIBRARY 不意味着“删除”,而是“保持可访问但不默认加载”。
  • 不安装当前仓库无法使用的钩子、规则或脚本。
  • 优先使用 ECC 原生面,不引入第二套安装系统。

输出物

按顺序产出以下工件:

  1. DAILY 清单
  2. LIBRARY 清单
  3. 安装计划
  4. 验证报告
  5. 可选的技能库路由(如果项目需要)

分类模型

仅使用两个桶:

  • DAILY:应为此仓库每次会话加载;与仓库的语言、框架、工作流或操作面强烈匹配。
  • LIBRARY:值得保留,但不值得默认加载;应通过搜索、路由技能或选择性手动使用保持可达。

证据来源

在做出任何分类前,先使用仓库本地证据:

  • 文件扩展名
  • 包管理器和锁文件
  • 框架配置
  • CI 和钩子配置
  • 构建/测试脚本
  • 导入和依赖清单
  • 明确描述技术栈的仓库文档

常用命令包括:

rg --files
rg -n "typescript|react|next|supabase|django|spring|flutter|swift"
cat package.json
cat pyproject.toml
cat Cargo.toml
cat pubspec.yaml
cat go.mod

并行审查轮次

如果可用的并行子代理,将审查拆分为以下轮次:

  • Agents:分类 agents/*
  • Skills:分类 skills/*
  • Commands:分类 commands/*
  • Rules:分类 rules/*
  • Hooks 和脚本:分类钩子面、MCP 健康检查、辅助脚本和操作系统兼容性
  • Extras:分类上下文、示例、MCP 配置、模板和指导文档

如果没有子代理,则按顺序运行相同的轮次。

核心工作流

1. 读取仓库

在分类任何内容前,先确定真实技术栈:

  • 使用的语言
  • 使用的框架
  • 主要包管理器
  • 测试栈
  • lint/format 栈
  • 部署/运行时面
  • 已存在的操作集成

2. 构建证据表

对每个候选面,记录:

  • 组件路径
  • 组件类型
  • 建议的桶
  • 仓库证据
  • 简短理由

使用此格式:

skills/frontend-patterns | skill | DAILY | 84 .tsx files, next.config.ts present | core frontend stack
skills/django-patterns   | skill | LIBRARY | no .py files, no pyproject.toml       | not active in this repo
rules/typescript/*       | rules | DAILY | package.json + tsconfig.json            | active TS repo
rules/python/*           | rules | LIBRARY | zero Python source files             | keep accessible only

3. 决定 DAILY 与 LIBRARY

提升为 DAILY 的条件:

  • 仓库明确使用匹配的技术栈
  • 组件足够通用,能帮助每次会话
  • 仓库已经依赖相应的运行时或工作流

降级为 LIBRARY 的条件:

  • 组件不在技术栈内
  • 仓库以后可能需要,但不是每天需要
  • 它增加上下文开销而没有即时相关性

4. 构建安装计划

将分类转化为行动:

  • DAILY 技能 -> 安装或保留在 .claude/skills/
  • DAILY 命令 -> 仅在仍然有用时保留为显式 shim
  • DAILY 规则 -> 仅安装匹配的语言集
  • DAILY 钩子/脚本 -> 仅保留兼容的
  • LIBRARY 面 -> 通过搜索或 skill-library 保持可访问

如果仓库已经使用选择性安装,更新该计划而不是创建另一套系统。

5. 创建可选的库路由

如果项目需要可搜索的库面,创建:

.claude/skills/skill-library/SKILL.md

该路由应包含:

  • DAILY 与 LIBRARY 的简短说明
  • 分组触发关键词
  • 库参考所在位置

不要在路由内复制每个技能正文。

6. 验证结果

计划应用后,验证:

  • 每个 DAILY 文件都存在于预期位置
  • 过时的语言规则没有被保留为活动状态
  • 不兼容的钩子没有被安装
  • 最终安装确实匹配仓库技术栈

返回紧凑报告,包含:

  • DAILY 数量
  • LIBRARY 数量
  • 移除的过时面
  • 未决问题

交接

  • 如果下一步是交互式安装或修复,交接给:configure-ecc
  • 如果下一步是重叠清理或目录审查,交接给:skill-stocktake
  • 如果下一步是更广泛的上下文裁剪,交接给:strategic-compact

输出格式

按此顺序返回结果:

STACK
- language/framework/runtime summary

DAILY
- always-loaded items with evidence

LIBRARY
- searchable/reference items with evidence

INSTALL PLAN
- what should be installed, removed, or routed

VERIFICATION
- checks run and remaining gaps