design-an-interface
使用并行子 agent 为模块生成多个截然不同的接口设计。当用户想要设计 API、探索接口选项、比较模块形态,或提到 "设计两次" 时使用。
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Menú
使用并行子 agent 为模块生成多个截然不同的接口设计。当用户想要设计 API、探索接口选项、比较模块形态,或提到 "设计两次" 时使用。
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Basado en la clasificación ocupacional SOC
Manage git submodules for the learning-open-code mono-repo. Use when the user wants to: (1) Add a new git submodule — auto-detect or specify the category (open-ai-skills/open-sdd/open-ai-agent/open-ai-desktop/open-knowledge/open-productivity/open-java/open-trading/open-data), record the tracking branch in .gitmodules, clone the repo, and update README.md index. (2) Sync all existing submodules to their configured branches (git fetch + checkout branch + pull). (3) Update the root README.md with an up-to-date index of all synced projects grouped by category. (4) Initialize submodules after git clone — when open-*/ directories are empty or git submodule status returns nothing, guide through the full SOP (git submodule update --init --recursive [--remote]). Trigger keywords: submodule, git submodule, 子模块, add submodule, sync submodule, update submodule, submodule branch, README index, 更新索引, clone, init, 初始化子模块, submodule init, 拉取子模块.
对开源项目进行穷尽式教学文档生成——从宏观架构到微观实现的五层分级讲解,使用 Goal Loop 算法自主驱动完整代码覆盖。所有具体教学内容生成必须激活 `.agents/skills/teach/SKILL.md`。触发条件:用户要求"完整学习某个项目"、"生成项目架构文档"、"从入口到落地讲清楚每个功能"、"代码考古"、"源码分析"、或指定一个项目目录/仓库要求全面教学。
交互式 QA 会话,用户以对话方式报告 bug 或问题,agent 将其录入 GitHub Issue。在后台探索代码库以获取上下文和领域语言。当用户想要报告 bug、做 QA、以对话方式录入 issue,或提及 "QA session" 时使用。
通过用户访谈创建包含微小提交的详细重构计划,并将其录入 GitHub Issue。当用户想要规划重构、创建重构 RFC,或将重构分解为安全的渐进步骤时使用。
从当前对话中提取 DDD 风格的通用语言词汇表,标记歧义并提出规范术语。保存到 UBIQUITOUS_LANGUAGE.md。当用户想要定义领域术语、构建词汇表、固化术语、创建通用语言,或提到 "领域模型" 或 "DDD" 时使用。
将当前对话交接给一个新的后台代理,由它立即接手继续工作。
| name | design-an-interface |
| description | 使用并行子 agent 为模块生成多个截然不同的接口设计。当用户想要设计 API、探索接口选项、比较模块形态,或提到 "设计两次" 时使用。 |
基于《软件设计的哲学》中"设计两次"的理念:你的第一个想法不太可能是最好的。生成多个截然不同的设计,然后比较。
在设计之前,先了解:
询问:"这个模块需要做什么?谁会使用它?"
使用 Task 工具同时启动 3 个以上的子 agent。每个必须产出一个截然不同的方案。
每个子 agent 的提示模板:
为以下内容设计接口:[模块描述]
需求:[收集的需求]
本次设计的约束:[为每个 agent 分配不同的约束]
- Agent 1:"最小化方法数量 — 目标是最多 1-3 个方法"
- Agent 2:"最大化灵活性 — 支持多种用例"
- Agent 3:"为最常见的情况优化"
- Agent 4:"从 [特定范式/库] 中汲取灵感"
输出格式:
1. 接口签名(类型/方法)
2. 使用示例(调用者如何使用)
3. 此设计内部隐藏了什么
4. 此方案的权衡取舍
每个设计展示:
按顺序展示设计方案,让用户在比较之前能吸收每种方案。
展示完所有设计后,从以下维度进行比较:
用文字而非表格讨论权衡取舍。突出设计之间分歧最大的地方。
通常最佳设计结合了多个方案的洞见。询问:
源自《软件设计的哲学》:
接口简洁性:更少的方法、更简单的参数 = 更容易学习和正确使用。
通用性:无需修改即可处理未来的用例。但要谨防过度泛化。
实现效率:接口形态是否允许高效的实现?还是会迫使别扭的内部实现?
深度:小接口隐藏了显著的复杂性 = 深度模块(好)。大接口但实现很薄 = 浅层模块(应避免)。