1 analyze
Skill morning-start/agent-skills/process/agents-writer/skills/1-analyze
AI 编程助手的专业技能库,涵盖 30+ 技能,按 6 类组织
npx -y skills add morning-start/agent-skills --skill 1-analyzeAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
五维项目分析 — 从产品定位、目标用户、功能边界、安全检查、架构规划五个维度分析项目,输出结构化的项目画像,为 AGENTS.md 设计提供决策依据
SKILL.md
8.1 KB, as published. Nobody here has run it
① 五维项目分析
这是整个 AGENTS.md 创作流程的起点。跳过分析直接写,是 AGENTS.md 质量问题的第一大来源。 superpowers 的做法是:不先 brainstorming(理解问题和约束),绝不写代码。同理:不先分析项目,绝不写 AGENTS.md。
任务目标
通过五维分析框架,全面理解项目的战略和技术特征,输出结构化的项目画像,为后续的结构设计和内容撰写奠定基础。
核心原则
- 先读文档,再问用户 — README、docs/、package.json、代码结构是首选信息源
- 每个维度必须打分 — 即使信息不完整,也要给出"置信度"标记
- 不确定就标注 — 不要凭空猜测,标记为"需确认"并向用户提问
- 保持中立 — 分析是事实采集,不是价值判断
<HARD-GATE> 进入前必须完成
□ 已读取项目 README.md(至少前 50 行)
□ 已查看项目 /docs 目录(如存在)
□ 已查看 package.json / Cargo.toml / pyproject.toml 等配置文件
□ 已查看项目顶级目录结构(ls -la)
□ 已检查是否存在现有 AGENTS.md / CLAUDE.md / .cursorrules
如果以上任何一项未完成,先执行。这些信息是分析的原材料。
五维分析流程
维度 1: 产品定位分析
目的:理解项目为什么存在、解决什么问题、核心竞争力在哪。这些决定了 Agent 在工作时应该优先考虑什么。
检查清单:
- 项目的一句话描述是什么?(从 README 或用户描述中提取)
- 解决的是什么场景下的什么问题?
- 项目的目标用户/客户是谁?
- 项目的核心价值主张是什么?(比竞品好在哪)
- 项目处于什么阶段?(MVP/增长期/成熟期/维护期)
输出格式:
产品定位评分: ◐○○○○ (1/5) 至 ●●●●● (5/5)
一句话定位: [从 README 提取或用户确认]
核心价值: [该项目最独特的价值]
所处阶段: [MVP / 增长 / 成熟 / 维护]
维度 2: 目标用户分析
目的:AGENTS.md 的读者是谁?不同角色的 Agent 需要不同的行为规范。
检查清单:
- 主要的开发者画像?(个人 / 小团队 / 大团队 / 开源社区)
- 使用者是 AI Agent 还是人类开发者?还是两者混合?
- 如果是多 Agent 协作,每个 Agent 的角色是什么?
- 目标用户的编程水平?(新手 / 中级 / 高级)
- 使用场景的频率?(日常开发 / 偶发维护 / 一次性部署)
输出格式:
目标用户画像:
- 主要用户: [开发者 / 运维 / PM / 多角色]
- 团队规模: [个人 / 2-5人 / 5-20人 / 20+人]
- Agent 角色: [编码助手 / 审查助手 / 部署助手 / 全栈]
- 使用频率: [每日 / 每周 / 项目级]
维度 3: 功能边界分析
目的:定义 Agent 在项目中能做什么、不能做什么。这是 AGENTS.md 中最核心的约束部分。
检查清单:
- 项目有哪些核心功能模块?
- Agent 可以操作哪些文件/目录?
- Agent 绝对不能碰哪些文件/目录?
- Agent 可以运行哪些命令?不能运行哪些?
- Agent 可以修改哪些配置?不能修改哪些?
- Agent 可以直接生成代码还是只能提建议?
- 是否有外部 API 集成?Agent 能否调用?
输出格式:
功能边界:
✅ 允许的操作: [列表]
❌ 禁止的操作: [列表] ← 这是最重要的部分,必须明确
⚠️ 需确认的操作: [列表]
文件访问权限:
可读: [路径模式]
可写: [路径模式]
禁止访问: [路径模式]
维度 4: 安全检查分析
目的:识别项目中的安全红线,确保 AGENTS.md 包含足够的安全约束。参考 security-checklist.md 的完整清单。
检查清单:
- 项目涉及用户数据/隐私吗?(PII / 敏感数据)
- 有 API 密钥/证书/密码等凭证吗?
- 是否有部署/生产环境访问权限?
- Agent 能否访问网络?
- Agent 能否执行可能产生费用的操作?
- 是否有合规要求?(GDPR / SOC2 / HIPAA)
- 项目是否有自动化测试基础设施?
- Agent 能否修改 CI/CD 配置?
输出格式:
安全等级: [低 / 中 / 高 / 关键]
数据敏感性: [无敏感数据 / 内部数据 / 用户数据 / PII]
安全约束:
- [约束1]
- [约束2]
合规要求: [无 / GDPR / SOC2 / 其他]
维度 5: 架构规划分析
目的:理解项目的代码组织方式,让 AGENTS.md 能够指导 Agent 正确导航代码。参考 superpowers 的架构思维 — Agent 需要知道代码仓库的结构才能有效工作。
检查清单:
- 项目使用什么架构模式?(MVC / 分层 / 微服务 / 单体)
- 技术栈是什么?(语言 / 框架 / 数据库)
- 项目的包/模块如何组织?
- 构建工具/测试框架是什么?
- 是否有代码风格规范?(linter / formatter 配置)
- 项目根目录下的关键文件是什么?(docker-compose / Makefile / CI 配置)
- 测试文件放在哪里?(单元测试 / 集成测试 / E2E)
输出格式:
架构模式: [MVC / 分层 / 微服务 / 单体 / 混合]
技术栈:
语言: [语言列表]
框架: [框架列表]
数据库: [数据库列表]
构建工具: [构建工具]
测试框架: [测试框架]
关键路径:
- 源代码: [src/ 或 lib/ 等]
- 测试: [tests/ 或 __tests__/ 等]
- 配置: [config/ 或 .env 等]
- 文档: [docs/ 或 wiki/ 等]
五维评分汇总
完成五维分析后,汇总为项目画像总表:
| 维度 | 评分 (1-5) | 置信度 | 关键发现 | 需确认项 |
|---|---|---|---|---|
| 产品定位 | 高/中/低 | |||
| 目标用户 | 高/中/低 | |||
| 功能边界 | 高/中/低 | |||
| 安全检查 | 高/中/低 | |||
| 架构规划 | 高/中/低 |
置信度规则:
- 高:从项目文档中明确获取,无需确认
- 中:从文档中推断,需要用户confirm
- 低:文档不足以判断,必须向用户提问
输出:项目画像
分析阶段结束后,输出结构化的项目画像。这是后续所有阶段的输入。
# 项目画像 (project-profile.yaml)
project:
name: <项目名>
type: <应用 / 库 / 框架 / 工具 / 平台>
product:
positioning: <一句话产品定位>
target_users: <目标用户>
value_proposition: <核心价值>
stage: <项目阶段>
boundaries:
allowed: [允许的操作列表]
forbidden: [禁止的操作列表]
uncertain: [需确认的操作列表]
security:
level: <安全等级>
data_sensitivity: <数据敏感性>
constraints: [安全约束列表]
architecture:
pattern: <架构模式>
tech_stack: <技术栈摘要>
key_paths: [关键路径列表]
gates:
- <已识别的关键门禁>
与用户的交互
核心原则:先查文档,再问问题。
可以问用户的问题(仅在文档不足以判断时):
- "我读完了项目的 README,但对产品定位还有些模糊。我看到项目是做 X 的,但不太确定它的核心场景是 A 还是 B?"
- "项目中有些目录我不太确定 Agent 能否访问,比如 /deploy 目录下的配置,Agent 应该能读还是不能碰?"
- "我没找到安全检查相关的配置,项目有安全合规要求吗?比如需要处理用户敏感数据?"
不要问(可以从文档获取的):
- ❌ "项目用什么语言?" → 读 package.json / Cargo.toml
- ❌ "项目目录结构是什么?" →
ls -la看一下 - ❌ "有没有测试?" → 找 tests/ 或 tests/ 目录