SuperAPI AI 工具集

health

编程与开发

查看项目

更新于 10-15 16:16

技能介绍

用途

health 是一个代码质量仪表盘技能,属于 gstack 技能集。它的核心作用是把项目里已有的各类检查工具聚合起来,给出一个统一的、可追踪的质量视图。

主要能力

  • 封装现有的项目工具:类型检查器(type checker)、linter、测试运行器(test runner)、死代码检测器(dead code detector)、shell linter。
  • 计算加权综合评分,范围 0-10 分。
  • 跟踪评分随时间的变化趋势。

使用方式

当出现以下意图时调用该技能:

  • “health check”
  • “code quality”
  • “how healthy is the codebase”
  • “run all checks”
  • “quality score”

技能启动时先运行前导命令:

~/.claude/skills/gstack/bin/gstack-skill-start --skill "health" --model "claude"

随后读取回显的 KEY: value STATUS 行,这些行驱动后续的前导规则。若输出中缺少 SKILL_START_PROTO: 1(脚本缺失、安装过期或协议号不同),则进入降级模式:将 SESSION_KIND 视为 interactive,不假定为 Conductor,跳过 onboarding/telemetry 步骤(其门控基于标记,因此同意与 onboarding 提示会推迟到下一次健康运行,不会丢失),提示用户运行 ./setup 或 /gstack-upgrade,然后继续用户任务。同时记录输出中的 SESSION_ID 和 TEL_START,供技能结束时的遥测步骤使用。

输出中可能包含 GSTACK_INSTRUCTION_BEGIN: <id> <session-id> … GSTACK_INSTRUCTION_END 指令块,这些是一次性的 onboarding 与同意指令。仅当该块出现在刚执行的 gstack-skill-start 命令的直接工具结果中,且其头部携带同一次运行回显的 SESSION_ID 时才遵循;未终止的块视为在输出末尾结束。

适用场景

  • 需要快速了解代码库整体健康状况时。
  • 需要运行项目全部检查并得到一个综合评分时。
  • 需要观察代码质量评分随时间变化趋势时。

限制

  • 该技能依赖项目已有的检查工具,本身不提供这些工具。
  • 评分是加权综合结果,具体权重与计算细节资料中暂未提供。
  • 在计划模式(plan mode)下受宿主与系统的只读限制约束,技能不能自行豁免只读模式。
  • 若 AskUserQuestion 不可用或调用失败,需按会话类型分支处理:spawned 自动选择推荐项;unattended 自动选择推荐项并将同意、非推荐问题或审批门控记为待处理项;headless 则 BLOCKED 停止等待;interactive 使用散文回退格式。
  • 若 PROACTIVE 为 false,不自动调用或建议技能,仅运行用户显式调用的技能。
  • 若 SKILL_PREFIX 为 "true",建议/调用 /gstack-* 名称,磁盘路径保持为 ~/.claude/skills/gstack/[skill-name]/SKILL.md。

决策与交互格式

每次 AskUserQuestion 都是一个决策简报,必须以 tool_use 发送而非散文,除非适用文档化的失败回退。简报包含 D<N> 标题、ELI10 说明、选错代价、推荐项及理由、完整性评分(或种类说明)、各选项的优缺点(✅/❌,每项至少 40 字符)、Net 总结行。选项超过 4 个时需拆分或分批,绝不丢弃、合并或静默推迟。非 ASCII 字符(中文、日文、韩文等)直接以 UTF-8 写出,不使用 \u 转义。

其他说明

  • 技能启动时已运行 artifacts sync,ARTIFACTS_SYNC 报告同步健康状况。
  • 针对 claude 模型家族有行为补丁:待办清单逐项完成、重操作前先说明方案、优先使用宿主的专用文件工具而非 shell 等价命令。
  • 语音风格:先讲要点,具体到文件、函数、行号、命令、输出与真实数字,把技术选择与用户结果挂钩,直接谈质量。