返回顶部
d

describe-design描述设计

>

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 0.1.0
安全检测
已通过
1,516
下载量
免费
免费
1
收藏
概述
安装方式
版本历史

describe-design

描述设计

研究代码库并生成一份架构文档,描述功能或系统的工作方式。输出为Markdown格式文件,既适合人类阅读,也便于未来AI代理使用。

工作流程

第一阶段:范围定义

在开始探索前明确要记录的内容:

  1. 1. 询问需要记录的功能、系统或组件。
  2. 明确目标受众(开发者、AI代理或两者兼顾)。
  3. 确认代码库位置(若上下文未明确说明)。

第二阶段:初步探索

广泛探索代码库以构建心智模型。尽可能使用轻量级快速探索方法(例如在Claude Code中,可使用Haiku Explore子代理):

  1. 1. 扫描目录结构,识别关键入口点。
  2. 阅读README、配置文件及现有文档。
  3. 识别与功能相关的主要文件和模块。
  4. 构建代码库组织方式的心智模型。

向用户呈现高层级大纲:

建议大纲

  1. 1. [组件A] - 简要描述
  2. [组件B] - 简要描述
  3. [组件C] - 简要描述
  • * 我是否正确捕捉了研究范围?回复yes继续。
  • 否则,请告知我理解有误之处。

用户确认范围后,进入深度研究阶段。

第三阶段:深度研究

针对已确认大纲中的每个组件:

  1. 1. 从入口点追踪代码路径。
  2. 识别组件间的依赖关系和交互。
  3. 记录配置选项及其定义位置。
  4. 查找数据存储或持久化位置。
  5. 构建代码引用索引(文件路径 + 关键函数/类名)。

尽量依赖初步代码探索获取大部分信息。根据需要读取额外文件。若第二阶段范围发生重大变化,可启用第二个代码探索子代理。

何时停止探索

当你能做到以下事项时,即可开始起草:

  • - 追踪快乐路径 — 无间隙地追踪典型请求/操作从入口点到完成的全过程。
  • 命名边界 — 清晰说明哪些在范围内,哪些是外部内容。
  • 绘制图表 — 无需占位框即可勾勒架构。
  • 回答什么与什么通信? — 对每个组件,清楚其输入和输出。

尚未完成的迹象:

  • - 不确定性:我认为这连接到……或可能调用……
  • 未解决的引用:发现尚未检查的模块的导入/调用。
  • 缺失的连接:无法解释数据如何从组件A到达组件B。

过度探索的迹象:

  • - 读取目录中每个文件而非代表性样本。
  • 追踪到外部库或框架内部。
  • 探索不影响架构的实现细节。

第四阶段:文档起草

按照以下模板生成文档。将草稿呈现给用户审阅,并根据反馈进行迭代。若可用,使用AskUserQuestion工具就关键决策征求用户意见。

第五阶段:定稿

  1. 1. 写入前确认文件位置。 可根据仓库惯例建议路径(例如docs/architecture/、ARCHITECTURE.md),但未经用户明确确认位置,切勿写入文件。若用户预先提供了路径,则视为已确认。
  2. 将最终文档写入已确认的位置。

文档模板

以下模板提供起点。根据所记录的功能进行调整——省略不适用的部分,为独特方面添加章节,调整结构以最佳服务目标受众。

markdown

[功能/系统名称] 架构

概述

[1-2段摘要,说明该功能/系统的功能及存在原因]

架构图

mermaid
flowchart TD
A[入口点] --> B[组件]
B --> C[数据存储]

组件

[组件名称]

用途:[功能说明]

位置:path/to/file.ext

关键函数

  • - functionName() - 简要描述
  • anotherFunction() - 简要描述

交互

  • - 接收来自:[组件] 的输入
  • 发送输出至:[组件]

数据流

[描述数据如何在系统中流动,从输入到输出]

配置

[功能如何启用、禁用或配置。包含文件路径和环境变量。]

代码引用

组件文件关键符号
认证src/auth/index.tsauthenticate(), AuthConfig
缓存
src/cache/redis.ts | CacheManager, invalidate() |

术语表

术语定义
[术语][项目特定定义]

代码引用规范

使用能经受重构的稳定引用:

  • - 路径:使用相对于仓库根目录的路径(src/auth/login.ts)
  • 符号:引用函数和类名,而非行号
  • 格式:path/to/file.ext,关键符号单独列出
  • 锚点:必要时使用搜索模式(auth/中的handleAuth函数)

避免:

  • - 复制代码:切勿将代码粘贴到文档中。代码会立即过时;文档应作为指南,引导读者查阅源码。描述代码功能,然后引用查找位置。
  • 行号:每次编辑都会变化。
  • 绝对路径:仅使用相对于仓库的路径。

Mermaid图表

使用Mermaid进行架构可视化:

流程图用于组件关系:
mermaid
flowchart TD
A[客户端] --> B[API网关]
B --> C[服务]
C --> D[(数据库)]

时序图用于请求流程:
mermaid
sequenceDiagram
客户端->>API: 请求
API->>服务: 处理
服务-->>API: 响应
API-->>客户端: 结果

保持图表聚焦于所记录的具体功能。避免用无关组件过度拥挤。

写作指南

  • - 描述,绝不复制:解释代码的功能及查找位置。需要实现细节的读者将阅读实际源码——这始终是最新的。
  • 便于扫描的结构:使用标题、表格和列表实现快速导航。
  • 具体明确:包含实际文件路径、函数名和配置键。
  • 服务两类受众:为人类清晰书写;为AI使用一致结构。
  • 保持时效性:注明关于代码状态或版本的任何假设。

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 describe-design-1776339862 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 describe-design-1776339862 技能

通过命令行安装

skillhub install describe-design-1776339862

下载

⬇ 下载 describe-design v0.1.0(免费)

文件大小: 3.68 KB | 发布时间: 2026-4-17 16:05

v0.1.0 最新 2026-4-17 16:05
Initial release of describe-design skill.

- Guides users through documenting a codebase's architecture, features, or systems using structured markdown.
- Provides a clear, staged workflow: scoping, exploration, detailed research, drafting, and finalization.
- Outputs documents with Mermaid diagrams, stable code references, and a consistent template.
- Enforces best practices: no copying code, no line numbers, repository-relative paths only.
- Designed to serve both human and AI audiences with clear, searchable documentation.
- Always requires user confirmation before writing files to disk.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部