design-an-interface
使用并行子 agent 为模块生成多个截然不同的接口设计。当用户想要设计 API、探索接口选项、比较模块形态,或提到 "设计两次" 时使用。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
使用并行子 agent 为模块生成多个截然不同的接口设计。当用户想要设计 API、探索接口选项、比较模块形态,或提到 "设计两次" 时使用。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
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. 此方案的权衡取舍
每个设计展示:
按顺序展示设计方案,让用户在比较之前能吸收每种方案。
展示完所有设计后,从以下维度进行比较:
用文字而非表格讨论权衡取舍。突出设计之间分歧最大的地方。
通常最佳设计结合了多个方案的洞见。询问:
源自《软件设计的哲学》:
接口简洁性:更少的方法、更简单的参数 = 更容易学习和正确使用。
通用性:无需修改即可处理未来的用例。但要谨防过度泛化。
实现效率:接口形态是否允许高效的实现?还是会迫使别扭的内部实现?
深度:小接口隐藏了显著的复杂性 = 深度模块(好)。大接口但实现很薄 = 浅层模块(应避免)。