关于 how
how 是帮助工程师探索代码库并解释系统实现方式的技能,适用于了解模块或子系统架构的场景。它根据问题复杂度安排只读探索,并综合发现形成工程级说明。
主要功能
- 01探索代码库并回答实现原理问题
- 02按复杂度选择探索流程
- 03通过只读子任务调查代码
- 04综合多角度发现
- 05输出架构与关键概念说明
适用场景
- 01了解陌生子系统的架构
- 02追踪跨多个文件的功能实现
- 03为工程师入职梳理系统
- 04解释某个函数或模块的工作方式
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ backnotprop/ pstack --skill how安装后在 Claude Code 中输入/how确认已加载。
附带文件references/explainer-prompt.mdreferences/explorer-prompt.md
详细介绍
How
探索代码库,以回答“X 是如何工作的?”这类问题。提供面向刚加入某个子系统的资深工程师的架构说明,内容应足以帮助他们建立可用的心智模型,但不要详尽到像带注释的源代码。
每个派生任务都是一个 Task 子 Agent,设置为 subagent_type: generalPurpose 和 readonly: true。探索者使用 pstack 设置文件中的 how explorer 行(Cursor 中为 ~/.cursor/rules/pstack-models.mdc,Claude Code 中为 ~/.claude/rules/pstack-models.md,其他运行环境中为 ~/.agents/pstack-models.md;默认值为 grok-4.7-xhigh-fast),每个讲解者使用 how explainer 行(默认值为 claude-opus-5-5-xhigh)。将 model 设置为该行的值;如果文件或该行不存在,则使用默认值。如果值为 auto 或 inherit-parent,则不设置 model。如果子 Agent 工具不接受某个模型标识符,则使用默认值并说明这一点。如果默认值也不被接受,则根据错误信息或运行环境的模型列表,选择同一系列中最接近的有效标识符。根据任务需要,并按照 poteto-mode 技能的 Subagents 部分,为每个子 Agent 选择推理级别以及快速或标准速度。
1. 评估复杂度
如果范围不明确,请说明你的理解并进行探索。用户可以纠正方向。
- 简单(单个模块、小型实用工具,或“函数 X 如何工作?”这类范围狭窄的问题):不派遣探索者。派遣一个讲解者,根据
references/explainer-prompt.md进行构建,但不包含探索者发现部分,让它在一次流程中完成探索和讲解。转到第 4 步。 - 复杂(跨多个文件或服务的子系统、跨领域功能、完整的架构概述):转到第 2 步。
如有疑问,选择简单路径。
其他运行环境。 本技能中的派遣操作使用 Cursor 的 Task 工具。在其他运行环境中,使用其子 Agent 工具:Claude Code 中的 Agent(subagent_type: general-purpose)、OpenCode 中的 task(subagent_type: general)、Codex 中的 spawn_agent。保留提示词和模型设置。省略工具不支持的参数。如果运行环境没有子 Agent 工具(例如未安装扩展的 Pi),则依次亲自执行每个角色。
2. 探索(仅复杂问题)
将问题分解为 2 到 4 个角度,每个角度对应子系统的一个不同部分。在一条消息中派遣所有探索者,并为每个探索者提供 references/explorer-prompt.md,填入其对应的角度。
3. 综合(仅复杂问题)
等待所有探索者返回结果后,派遣一个讲解者,并提供 references/explainer-prompt.md 以及所有探索者的发现。
4. 呈现
呈现讲解者的输出。可以为清晰度或上下文进行少量编辑,但不要大幅改写。
输出格式
讲解内容使用 references/explainer-prompt.md 中定义的章节,省略不适用的章节:Overview、Key Concepts、How It Works、Where Things Live、Gotchas。