[PRIORITY][DECISION POINT]
【免费下载链接】ag-kit项目地址: https://gitcode.com/GitHub_Trending/an/ag-kit
Question:[Clear question]
Why This Matters:
- [Architectural consequence]
- [Affects: cost/complexity/timeline/scale]
Options:| Option | Pros | Cons | Best For | |--------|------|------|----------| | A | [+] | [-] | [Use case] |
If Not Specified:[Default + rationale]
dynamic-questioning.md 的「动态问题模板」进一步按优先级分栏组织输出: ```markdown Based on your request for [DOMAIN] [FEATURE]: ## 🔴 CRITICAL (Blocking Decisions) ### 1. **[DECISION POINT]** **Question:** [Clear, specific question] **Why This Matters:** - [Explain architectural consequence] - [Affects: cost / complexity / timeline / scale] **Options:** | Option | Pros | Cons | Best For | |--------|------|------|----------| | A | [Advantage] | [Disadvantage] | [Use case] | | B | [Advantage] | [Disadvantage] | [Use case] | **If Not Specified:** [Default choice + rationale] ## 🟡 HIGH-LEVERAGE (Affects Implementation) ### 2. **[DECISION POINT]** [Same format] ## 🟢 NICE-TO-HAVE (Edge Cases) ### 3. **[DECISION POINT]** [Same format]核心要点:每个问题必须带 Options(含权衡)与 If Not Specified(默认值)。前者让用户看清后果,后者保证用户即使不回答,Agent 也能按合理默认值继续推进,不会卡死。
3.6 完整示例:Instagram 克隆的需求澄清
dynamic-questioning.md 提供了一个端到端的生成示例,展示从「Build an Instagram clone」到结构化提问的完整过程:
STEP 1(解析):领域 = 社交;功能 = 图片分享、点赞/评论互动、用户主页;隐含 = Feed、关注、认证;规模 = 可能很高(社交应用易爆红)。
STEP 2(决策点分类):
- 阻塞性:存储策略、认证方式、Feed 类型;
- 高杠杆:实时通知、数据模型复杂度;
- 可延后:数据分析、高级搜索、Reels/视频。
STEP 3(按优先级生成问题):
- P0:存储策略、Feed 算法、认证方式;
- P1:实时通知(WebSocket vs 轮询)、媒体处理(客户端 vs 服务端优化);
- P2:Story/Reels(功能蔓延,延到 v2)、DM/聊天(独立子系统,延到 v2)。
**STEP 4(格式化输出)**中,Photo Storage Strategy 一题的完整演示:
### 1. **Photo Storage Strategy** **Question:** Where will user photos be stored and served? **Why This Matters:** - Affects: Monthly hosting costs, page load speed, CDN complexity - High-volume social apps: 1000 users × 10 photos × 2MB = 20GB storage **Options:** | Option | Cost model | Speed | Complexity | Best For | |--------|-----------|-------|------------|----------| | **Cloudinary** | Per-tier subscription | Fast (CDN) | Low | MVP, rapid launch | | **AWS S3 + CloudFront** | Pay per GB stored/served | Fast (CDN) | Medium | Production, cost-optimized | | **Supabase Storage** | Free tier + usage | Medium | Low | Small scale, simple | | **Local Storage** | Server cost | Slow | Low | Development only | **If Not Specified:** Cloudinary (balanced for MVP)注意其中的量化计算(20GB 存储估算)——问题之所以有力,是因为它把架构后果变成了可计算的数字,这正是「问题揭示后果」原则的落地。
3.7 迭代提问(Iterative Questioning)
需求澄清不是一次性动作,dynamic-questioning.md 定义了三个轮次:
- 第一轮(3-5 问):聚焦阻塞决策,不拿到答案不继续;
- 第二轮(初始实现后):随着模式浮现追问,例如「这个功能隐含了 [X],边缘情况 [Y] 现在处理还是延后?」「我们用了模式 A,功能 B 是否沿用同一模式?」
- 第三轮(优化期):功能跑通后追问,「性能瓶颈在 [X],现在优化还是可接受?」「重构 [Y] 提升可维护性,还是原样发布?」
四、原则化沟通:进度、错误、完成三件套
除了提问本身,SKILL.md 还规定了 Agent 在整个协作周期内的沟通规范,统称 PRINCIPLE-BASED(基于原则),核心信条是「Transparency builds trust(透明建立信任)」。
4.1 进度看板(Status Board)
状态必须可见、可行动,统一使用表格 + 状态图标:
| Agent | Status | Current Task | Progress |
|---|---|---|---|
| [Agent Name] | ✅🔄⏳❌⚠️ | [Task description] | [% or count] |
图标语义表:
| 图标 | 含义 | 用法 |
|---|---|---|
| ✅ | 已完成 | 任务成功结束 |
| 🔄 | 运行中 | 正在执行 |
| ⏳ | 等待中 | 被阻塞,等待依赖 |
| ❌ | 出错 | 失败,需要关注 |
| ⚠️ | 警告 | 潜在问题,不阻塞 |
4.2 错误处理模式(Error Response Pattern)
SKILL.md 的原则是「错误是清晰沟通的机会」,标准响应路径:
1. Acknowledge the error 2. Explain what happened (user-friendly) 3. Offer specific solutions with trade-offs 4. Ask user to choose or provide alternative并按错误类别预置了应对策略:
| 类别 | 应对策略 |
|---|---|
| 端口冲突 | 提供替代端口或关闭现有占用 |
| 依赖缺失 | 自动安装或征求许可 |
| 构建失败 | 展示具体错误 + 建议修复 |
| 错误信息不明确 | 请用户提供截图、控制台输出等细节 |
4.3 完成消息结构(Completion Structure)
任务收尾同样有固定四段结构:
1. Success confirmation (celebrate briefly) 2. Summary of what was done (concrete) 3. How to verify/test (actionable) 4. Next steps suggestion (proactive)即:简短庆祝成功 → 具体总结做了什么 → 给出可操作的验证方式 → 主动建议下一步。
4.4 沟通五原则
| 原则 | 实现方式 |
|---|---|
| 简洁(Concise) | 不堆砌无关细节,直击要点 |
| 可视化(Visual) | 用 emoji(✅🔄⏳❌)方便快速扫读 |
| 具体(Specific) | 说「大约 2 分钟」,不说「等一会儿」 |
| 给备选(Alternatives) | 卡住时提供多条路径 |
| 主动(Proactive) | 完成后主动建议下一步 |
五、反模式清单(AVOID)
SKILL.md 明确列出五类必须避免的行为,每一类都附带「为什么」:
| 反模式 | 为什么有害 |
|---|---|
| 理解之前就跳向解决方案 | 在错误的问题上浪费时间 |
| 不问就假设需求 | 产出错误的结果 |
| 第一版过度工程化 | 推迟价值交付 |
| 忽略约束 | 产出不可用的方案 |
| 使用「I think(我觉得)」式表述 | 不确定就该问,而不是猜 |
反模式与动态提问原则是一体两面:假设是提问的反面。凡是说「I think」,都应改写为一个带权衡的提问。
六、在 AG Kit 中的完整调用链
brainstorming技能并不是孤立存在的,从仓库源码可以还原出它在 AG Kit 运行时中的完整调用链。
6.1 与/brainstorm工作流的协作
.agents/workflows/brainstorm.md 是触发该技能的斜杠命令,其 frontmatter 明确声明了依赖关系:
--- name: brainstorm description: Structured brainstorming for projects and features. Explores multiple options before implementation. version: 1.0.0 requires_agents: project-planner requires_skills: brainstorming artifact_outputs: discovery-notes, decision-summary ---/brainstorm的行为流程是:理解目标(问题/用户/约束)→ 生成至少 3 个方案(各带利弊,可考虑非常规解法)→ 对比并给出带理由的推荐。其输出格式与 brainstorming 技能的问题模板风格一致(✅ Pros / ❌ Cons / 📊 Effort),且声明了产出物discovery-notes(探索笔记)与decision-summary(决策摘要)。
6.2 与 project-planner 代理的协作
.agents中有四个代理在 skills 字段声明依赖brainstorming:project-planner、product-manager、product-owner,另在 .agents/manifest.json 中可见更多引用。以 .agents/agent/project-planner.md 为例:
--- name: project-planner description: Smart project planning agent. Breaks down user requests into tasks... version: 1.0.0 skills: clean-code, app-builder, plan-writing, brainstorming ---该代理在「PHASE 0: CONTEXT CHECK」中规定:请求不清晰时「Ask Socratic questions (Phase 0)」——这正是 brainstorming 技能在规划链路中的落点。在 .agents/ARCHITECTURE.md 的 Quick Reference 中也写明「Plan →project-planner→ brainstorming, plan-writing」。
6.3 运行时加载协议
从 .agents/rules/core-protocol.md 可知技能的加载是有顺序的:Agent 激活 → 检查 frontmatter 的skills:字段 → 读取对应SKILL.md(作为索引)→ 只读取与请求匹配的章节(选择性读取以节省 token)。优先级为 P0 工作区规则 > P1 代理定义 > P2 SKILL.md。此外,应用技能前必须声明:📚 Using skill: @brainstorming...,让用户可验证当前生效的知识。
6.4 可执行的验证方式
SKILL.md 属于托管组件,对它的改动会受到 AG Kit 注册表校验的约束。若想验证brainstorming技能的注册状态与依赖关系,可在仓库根目录运行:
# 校验组件注册表与完整性锁(涉及 skills 的 frontmatter、路径与依赖) python .agents/scripts/generate_manifest.py --check python .agents/scripts/dependency_graph.py --check # 校验 AG Kit 自洽性(版本、注册表、记忆、链接、引用) python .agents/scripts/validate_kit.py # Antigravity 集成与契约校验 npm run check:agents npm run check:antigravity npm run test:antigravity【免费下载链接】ag-kit项目地址: https://gitcode.com/GitHub_Trending/an/ag-kit
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考