@deepstorm/cli 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +72 -0
- package/dist/agents/reef-inspect-figma.md +77 -0
- package/dist/agents/reef-review-backend.md.tmpl +112 -0
- package/dist/agents/reef-review-frontend.md.tmpl +78 -0
- package/dist/agents/reef-review-infra.md +47 -0
- package/dist/agents/reef-review-security.md.tmpl +80 -0
- package/dist/agents/reef-scope-analysis.md +64 -0
- package/dist/build-registry.js +375 -0
- package/dist/cli.js +8581 -0
- package/dist/config-schema.json +133 -0
- package/dist/env-examples/context7.env-example +19 -0
- package/dist/env-examples/feishu-wiki.env-example +16 -0
- package/dist/env-examples/figma.env-example +16 -0
- package/dist/env-examples/github.env-example +20 -0
- package/dist/env-examples/jira.env-example +20 -0
- package/dist/hooks/mcp-hook.sh +77 -0
- package/dist/hooks/reef-auto-format.sh.tmpl +72 -0
- package/dist/hooks/reef-block-dangerous.sh +70 -0
- package/dist/hooks/reef-hooks.json +72 -0
- package/dist/hooks/reef-intent-detect.sh +129 -0
- package/dist/hooks/reef-protect-files.sh +55 -0
- package/dist/hooks/reef-run-tests.sh +84 -0
- package/dist/hooks/reef-scope-check.sh +386 -0
- package/dist/hooks/reef-scope-ci.sh +28 -0
- package/dist/hooks/reef-scope-gate.sh +115 -0
- package/dist/hooks/reef-scope-pre-commit.sh.tmpl +28 -0
- package/dist/hooks/reef-scope-setup.sh +204 -0
- package/dist/hooks/reef-scope-split.sh +203 -0
- package/dist/hooks/sweep-hooks.json +14 -0
- package/dist/hooks/sweep-mcp-hook.sh +77 -0
- package/dist/hooks/tide-hooks.json +14 -0
- package/dist/hooks/tide-session-preload.sh +17 -0
- package/dist/mcp/code-hosting/github.json +20 -0
- package/dist/mcp/design-tools/figma.json +19 -0
- package/dist/mcp/docs-reference/context7.json +28 -0
- package/dist/mcp/e2e-testing/playwright.json +13 -0
- package/dist/mcp/knowledge-base/feishu-wiki.json +19 -0
- package/dist/mcp/project-management/jira.json +27 -0
- package/dist/mcp-skills/deepflow-mcp-feishu-wiki-read/SKILL.md +65 -0
- package/dist/mcp-skills/deepflow-mcp-feishu-wiki-write/SKILL.md +63 -0
- package/dist/mcp-skills/deepflow-mcp-figma-read/SKILL.md +98 -0
- package/dist/mcp-skills/deepflow-mcp-github-read/SKILL.md +62 -0
- package/dist/mcp-skills/deepflow-mcp-github-write/SKILL.md +63 -0
- package/dist/mcp-skills/deepflow-mcp-jira-read/SKILL.md +80 -0
- package/dist/mcp-skills/deepflow-mcp-jira-write/SKILL.md +74 -0
- package/dist/mcp-skills/deepflow-mcp-playwright-read/SKILL.md +79 -0
- package/dist/mcp-skills/deepstorm-mcp-feishu-wiki-read/SKILL.md +65 -0
- package/dist/mcp-skills/deepstorm-mcp-feishu-wiki-write/SKILL.md +63 -0
- package/dist/mcp-skills/deepstorm-mcp-figma-read/SKILL.md +98 -0
- package/dist/mcp-skills/deepstorm-mcp-github-read/SKILL.md +62 -0
- package/dist/mcp-skills/deepstorm-mcp-github-write/SKILL.md +63 -0
- package/dist/mcp-skills/deepstorm-mcp-jira-read/SKILL.md +80 -0
- package/dist/mcp-skills/deepstorm-mcp-jira-write/SKILL.md +74 -0
- package/dist/mcp-skills/deepstorm-mcp-playwright-read/SKILL.md +79 -0
- package/dist/registry.json +818 -0
- package/dist/skills/atoll-ops/SKILL.md +46 -0
- package/dist/skills/reef-commit/SKILL.md +127 -0
- package/dist/skills/reef-gen-backend/SKILL.md.tmpl +87 -0
- package/dist/skills/reef-gen-backend/variants/java/steps.md +28 -0
- package/dist/skills/reef-gen-backend/variants/python/steps.md +70 -0
- package/dist/skills/reef-gen-frontend/SKILL.md.tmpl +83 -0
- package/dist/skills/reef-gen-frontend/variants/angular/steps.md +30 -0
- package/dist/skills/reef-harden/EXAMPLES.md +89 -0
- package/dist/skills/reef-harden/SKILL.md +136 -0
- package/dist/skills/reef-pr/SKILL.md +97 -0
- package/dist/skills/reef-review/SKILL.md.tmpl +107 -0
- package/dist/skills/reef-scope/SKILL.md +134 -0
- package/dist/skills/reef-start/SKILL.md.tmpl +562 -0
- package/dist/skills/reef-start/references/jira-start-subagent.md +60 -0
- package/dist/skills/reef-style-backend/SKILL.md.tmpl +134 -0
- package/dist/skills/reef-style-backend/fragments/java/ai/spring-ai/examples/chat-client.md +96 -0
- package/dist/skills/reef-style-backend/fragments/java/ai/spring-ai/examples/rag.md +94 -0
- package/dist/skills/reef-style-backend/fragments/java/ai/spring-ai/examples/structured-output.md +62 -0
- package/dist/skills/reef-style-backend/fragments/java/ai/spring-ai/examples/tool-calling.md +68 -0
- package/dist/skills/reef-style-backend/fragments/java/ai/spring-ai/quick-reference.md +220 -0
- package/dist/skills/reef-style-backend/fragments/java/api-spec/quick-reference.md +148 -0
- package/dist/skills/reef-style-backend/fragments/java/db-migration/liquibase/examples/database-migration.md +131 -0
- package/dist/skills/reef-style-backend/fragments/java/db-migration/liquibase/quick-reference.md +103 -0
- package/dist/skills/reef-style-backend/fragments/java/dependency-management/quick-reference.md +119 -0
- package/dist/skills/reef-style-backend/fragments/java/exception-handling/examples/error-code-enum.md +101 -0
- package/dist/skills/reef-style-backend/fragments/java/exception-handling/quick-reference.md +181 -0
- package/dist/skills/reef-style-backend/fragments/java/framework/spring-boot/examples/controller.md +95 -0
- package/dist/skills/reef-style-backend/fragments/java/framework/spring-boot/examples/dto-mapper.md +121 -0
- package/dist/skills/reef-style-backend/fragments/java/framework/spring-boot/examples/infrastructure.md +179 -0
- package/dist/skills/reef-style-backend/fragments/java/framework/spring-boot/examples/service-entity.md +202 -0
- package/dist/skills/reef-style-backend/fragments/java/framework/spring-boot/examples/testing.md +107 -0
- package/dist/skills/reef-style-backend/fragments/java/framework/spring-boot/quick-reference.md +83 -0
- package/dist/skills/reef-style-backend/fragments/java/orm/hibernate/quick-reference.md +150 -0
- package/dist/skills/reef-style-backend/fragments/java/security-redlines/quick-reference.md +197 -0
- package/dist/skills/reef-style-backend/fragments/java/test/data-jpa-test/examples/user-repository-test.md +69 -0
- package/dist/skills/reef-style-backend/fragments/java/test/data-jpa-test/quick-reference.md +101 -0
- package/dist/skills/reef-style-backend/fragments/java/test/junit5/examples/user-service-test.md +61 -0
- package/dist/skills/reef-style-backend/fragments/java/test/junit5/quick-reference.md +100 -0
- package/dist/skills/reef-style-backend/fragments/java/test/spring-mvc-test/examples/user-controller-test.md +61 -0
- package/dist/skills/reef-style-backend/fragments/java/test/spring-mvc-test/quick-reference.md +85 -0
- package/dist/skills/reef-style-backend/fragments/java/test/spring-service-test/examples/user-service-integration-test.md +56 -0
- package/dist/skills/reef-style-backend/fragments/java/test/spring-service-test/quick-reference.md +83 -0
- package/dist/skills/reef-style-backend/fragments/python/alembic-migration/quick-reference.md +77 -0
- package/dist/skills/reef-style-backend/fragments/python/api-spec/quick-reference.md +164 -0
- package/dist/skills/reef-style-backend/fragments/python/dependency-management/quick-reference.md +139 -0
- package/dist/skills/reef-style-backend/fragments/python/exception-handling/quick-reference.md +177 -0
- package/dist/skills/reef-style-backend/fragments/python/fastapi-quick-reference/quick-reference.md +101 -0
- package/dist/skills/reef-style-backend/fragments/python/langchain/quick-reference.md +135 -0
- package/dist/skills/reef-style-backend/fragments/python/pytest-testing/quick-reference.md +111 -0
- package/dist/skills/reef-style-backend/fragments/python/ruff-mypy-toolchain/quick-reference.md +83 -0
- package/dist/skills/reef-style-backend/fragments/python/security-redlines/quick-reference.md +207 -0
- package/dist/skills/reef-style-backend/fragments/python/sqlalchemy-orm/quick-reference.md +91 -0
- package/dist/skills/reef-style-backend/variants/java/examples/code-wrapping.md +227 -0
- package/dist/skills/reef-style-backend/variants/java/examples/contributor-pattern.md +97 -0
- package/dist/skills/reef-style-backend/variants/java/quick-reference.md +117 -0
- package/dist/skills/reef-style-backend/variants/python/examples/crud-router.md +71 -0
- package/dist/skills/reef-style-backend/variants/python/examples/pydantic-schema.md +45 -0
- package/dist/skills/reef-style-backend/variants/python/examples/pytest-fixture.md +60 -0
- package/dist/skills/reef-style-backend/variants/python/examples/sqlalchemy-model.md +31 -0
- package/dist/skills/reef-style-backend/variants/python/quick-reference.md +111 -0
- package/dist/skills/reef-style-frontend/SKILL.md.tmpl +70 -0
- package/dist/skills/reef-style-frontend/fragments/css/tailwind/quick-reference.md +79 -0
- package/dist/skills/reef-style-frontend/fragments/test/vitest/examples/testing.md +150 -0
- package/dist/skills/reef-style-frontend/fragments/test/vitest/quick-reference.md +141 -0
- package/dist/skills/reef-style-frontend/fragments/ts-config/strict/quick-reference.md +112 -0
- package/dist/skills/reef-style-frontend/fragments/ui-lib/primeng/examples/ui-components.md +134 -0
- package/dist/skills/reef-style-frontend/fragments/ui-lib/primeng/quick-reference.md +66 -0
- package/dist/skills/reef-style-frontend/variants/angular/examples/code-wrapping.md +252 -0
- package/dist/skills/reef-style-frontend/variants/angular/examples/component-types-pipes.md +56 -0
- package/dist/skills/reef-style-frontend/variants/angular/examples/entity-types.md +100 -0
- package/dist/skills/reef-style-frontend/variants/angular/examples/forms-layer.md +119 -0
- package/dist/skills/reef-style-frontend/variants/angular/examples/service-routing.md +95 -0
- package/dist/skills/reef-style-frontend/variants/angular/quick-reference.md +100 -0
- package/dist/skills/reef-testcase/SKILL.md +138 -0
- package/dist/skills/reef-testcase/references/coverage-dimensions.md +99 -0
- package/dist/skills/reef-testcase/references/test-case-template.md +63 -0
- package/dist/skills/sweep-init/SKILL.md +286 -0
- package/dist/skills/sweep-init/scripts/flow-selector.mjs +305 -0
- package/dist/skills/sweep-plan/SKILL.md.tmpl +312 -0
- package/dist/skills/sweep-plan/references/test-flow-template.md +46 -0
- package/dist/skills/sweep-run/SKILL.md +437 -0
- package/dist/skills/sweep-run/scripts/env-manager.mjs +208 -0
- package/dist/skills/sweep-run/scripts/flow-parser.mjs +329 -0
- package/dist/skills/sweep-run/scripts/flow-selector.mjs +483 -0
- package/dist/skills/sweep-run/scripts/mcp-manager.mjs +208 -0
- package/dist/skills/sweep-run/scripts/spec-compiler.mjs +303 -0
- package/dist/skills/tide-discuss/SKILL.md.tmpl +449 -0
- package/dist/skills/tide-discuss/references/checklists.md +88 -0
- package/dist/skills/tide-discuss/references/data-format.md +237 -0
- package/dist/skills/tide-discuss/references/prd-template.md +134 -0
- package/dist/skills/tide-discuss/references/publish-flow.md +167 -0
- package/dist/skills/tide-discuss/references/role-prompts.md +105 -0
- package/package.json +38 -0
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deepflow-mcp-feishu-wiki-read
|
|
3
|
+
description: Use when you need to search and read Feishu wiki documents — search PRDs, read document content, extract requirement context. References knowledge_base domain in the capability mapping.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# 飞书知识库读取操作指南
|
|
7
|
+
|
|
8
|
+
本指南说明如何通过飞书知识库 MCP 搜索和读取文档内容。使用前请确保 `.env` 中已配置 `DEEPFLOW_FEISHU_TOKEN`。
|
|
9
|
+
|
|
10
|
+
> **领域能力:** `knowledge_base` — 知识管理
|
|
11
|
+
> **服务标识:** `feishu-wiki`
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 环境要求
|
|
16
|
+
|
|
17
|
+
- `.env` 文件须包含 `DEEPFLOW_FEISHU_TOKEN=your_token`
|
|
18
|
+
- Token 从飞书开放平台 > 应用凭证获取
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 常用操作
|
|
23
|
+
|
|
24
|
+
### 搜索文档
|
|
25
|
+
|
|
26
|
+
按关键词搜索飞书知识库文档,返回匹配的文档列表和摘要。
|
|
27
|
+
|
|
28
|
+
**示例场景:**
|
|
29
|
+
- 搜索 PRD 文档:搜索与当前 Issue 相关的需求文档
|
|
30
|
+
- 搜索技术方案:搜索关于特定功能的讨论文档
|
|
31
|
+
|
|
32
|
+
### 读取文档内容
|
|
33
|
+
|
|
34
|
+
获取指定文档的完整内容,支持 Markdown 格式输出。
|
|
35
|
+
|
|
36
|
+
**使用方式:**
|
|
37
|
+
- 从 Issue 描述中提取的文档链接
|
|
38
|
+
- 使用搜索结果的文档 ID
|
|
39
|
+
|
|
40
|
+
### 提取 PRD 上下文
|
|
41
|
+
|
|
42
|
+
读取到的文档内容中提取以下信息:
|
|
43
|
+
|
|
44
|
+
1. **需求背景和目标** — 为什么做、解决什么问题
|
|
45
|
+
2. **功能范围定义** — 做什么,不做什么
|
|
46
|
+
3. **验收标准** — 如何验证
|
|
47
|
+
4. **关键决策记录** — 重要的技术/产品决策及理由
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 降级处理
|
|
52
|
+
|
|
53
|
+
`knowledge_base.available === false` 时:
|
|
54
|
+
1. 告知用户未检测到知识库服务
|
|
55
|
+
2. 询问用户是否手动提供 PRD 内容
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## 常见错误
|
|
60
|
+
|
|
61
|
+
| 错误 | 原因 | 处理 |
|
|
62
|
+
|------|------|------|
|
|
63
|
+
| Token 错误 | Token 未配置或无效 | 检查 `.env` 中 `DEEPFLOW_FEISHU_TOKEN` |
|
|
64
|
+
| 文档不存在 | 链接错误或已被删除 | 确认文档链接正确 |
|
|
65
|
+
| 无权限 | Token 无权访问该文档 | 确认机器人已被加入目标知识库 |
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deepflow-mcp-feishu-wiki-write
|
|
3
|
+
description: Use when you need to create or update Feishu wiki documents — push PRD, update document content. References knowledge_base domain in the capability mapping.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# 飞书知识库写入操作指南
|
|
7
|
+
|
|
8
|
+
本指南说明如何通过飞书知识库 MCP 创建和更新文档。使用前请确保 `.env` 中已配置 `DEEPFLOW_FEISHU_TOKEN`。
|
|
9
|
+
|
|
10
|
+
> **领域能力:** `knowledge_base` — 知识管理
|
|
11
|
+
> **服务标识:** `feishu-wiki`
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 环境要求
|
|
16
|
+
|
|
17
|
+
- `.env` 文件须包含 `DEEPFLOW_FEISHU_TOKEN=your_token`
|
|
18
|
+
- Token 从飞书开放平台 > 应用凭证获取
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 常用操作
|
|
23
|
+
|
|
24
|
+
### 创建文档
|
|
25
|
+
|
|
26
|
+
在指定知识库或目录下创建新文档,需提供:
|
|
27
|
+
- 标题
|
|
28
|
+
- 正文(Markdown 格式)
|
|
29
|
+
- 目标知识库或目录
|
|
30
|
+
|
|
31
|
+
**典型场景:** 将 PRD 推送到知识库,方便团队查阅。
|
|
32
|
+
|
|
33
|
+
### 更新文档
|
|
34
|
+
|
|
35
|
+
修改已有文档的内容。
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## 多 Provider 选择
|
|
40
|
+
|
|
41
|
+
| 场景 | 处理方式 |
|
|
42
|
+
|------|---------|
|
|
43
|
+
| 唯一 provider | 自动推送,无需用户选择 |
|
|
44
|
+
| 多个 provider | 展示可用列表,用户选择后持久化 |
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## 降级处理
|
|
49
|
+
|
|
50
|
+
`knowledge_base.available === false` 时:
|
|
51
|
+
1. 跳过知识库写入操作
|
|
52
|
+
2. 在 checklist 中记录为 skipped
|
|
53
|
+
3. 告知用户未检测到知识库服务,跳过 PRD 推送
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## 常见错误
|
|
58
|
+
|
|
59
|
+
| 错误 | 原因 | 处理 |
|
|
60
|
+
|------|------|------|
|
|
61
|
+
| Token 错误 | Token 未配置或无效 | 检查 `.env` |
|
|
62
|
+
| 文档不存在 | 链接错误或已被删除 | 确认目标文档存在 |
|
|
63
|
+
| 无权限 | Token 无权操作该文档 | 确认机器人权限 |
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deepflow-mcp-figma-read
|
|
3
|
+
description: Use when you need to read Figma design data — get file info, read node tree, get components and styles, export images. References design_tools domain in the capability mapping.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Figma 设计稿读取操作指南
|
|
7
|
+
|
|
8
|
+
本指南说明如何通过 Figma MCP 读取设计稿数据。使用前请确保 `.env` 中已配置 `DEEPFLOW_FIGMA_TOKEN`。
|
|
9
|
+
|
|
10
|
+
> **领域能力:** `design_tools` — 设计工具
|
|
11
|
+
> **服务标识:** `figma`
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 环境要求
|
|
16
|
+
|
|
17
|
+
- `.env` 文件须包含 `DEEPFLOW_FIGMA_TOKEN=your_token`
|
|
18
|
+
- Token 从 Figma > Settings > Personal Access Tokens 生成
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 运行时能力确认
|
|
23
|
+
|
|
24
|
+
操作前先确认 Figma MCP 是否可用:
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
检查 `.claude/settings.json` → `deepflow.mcpCapabilities` 中 design_tools.available === true
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## 设计链接识别
|
|
33
|
+
|
|
34
|
+
### 从 Issue Design 字段获取(推荐)
|
|
35
|
+
|
|
36
|
+
从 Issue MCP 返回的数据中查找设计相关字段(如 Jira 的 `customfield_10032`),提取其中的 URL。
|
|
37
|
+
|
|
38
|
+
从 URL 中提取:
|
|
39
|
+
|
|
40
|
+
| 参数 | 说明 |
|
|
41
|
+
|------|------|
|
|
42
|
+
| `fileKey` | 文件标识,从 URL path 获取 |
|
|
43
|
+
| `nodeId` | 节点标识,从 URL query(`node-id` 参数)获取 |
|
|
44
|
+
|
|
45
|
+
### 从 Issue 描述回退
|
|
46
|
+
|
|
47
|
+
Design 字段不存在或为空时,回退到 Issue 描述中正则匹配设计工具链接。
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 常用操作
|
|
52
|
+
|
|
53
|
+
### 文件操作
|
|
54
|
+
|
|
55
|
+
| 操作 | 说明 |
|
|
56
|
+
|------|------|
|
|
57
|
+
| 获取文件信息 | 获取元数据:名称、版本、最后修改时间 |
|
|
58
|
+
| 读取文件内容 | 获取完整节点树结构 |
|
|
59
|
+
| 获取节点 | 获取指定节点的详细信息和样式属性 |
|
|
60
|
+
| 获取图片 | 导出节点为 PNG/JPEG/SVG |
|
|
61
|
+
| 获取文件版本 | 文件历史版本列表 |
|
|
62
|
+
|
|
63
|
+
### 组件和样式
|
|
64
|
+
|
|
65
|
+
| 操作 | 说明 |
|
|
66
|
+
|------|------|
|
|
67
|
+
| 获取本地组件 | 文件中所有本地组件及其属性 |
|
|
68
|
+
| 获取团队组件 | 团队组件库中的组件 |
|
|
69
|
+
| 获取样式 | TextStyle、ColorStyle、EffectStyle |
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## 设计数据分析
|
|
74
|
+
|
|
75
|
+
设计数据获取后,可派遣子代理进行分析:
|
|
76
|
+
|
|
77
|
+
1. 保存原始 JSON 到 `openspec/changes/{change}/design-data/raw-{slug}.json`
|
|
78
|
+
2. 如有图片资源则下载到 `openspec/changes/{change}/design-assets/`
|
|
79
|
+
3. 子代理输出结构化摘要:布局结构、关键 UI 元素、交互流程、响应式信息
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## 降级处理
|
|
84
|
+
|
|
85
|
+
`design_tools.available === false` 时:
|
|
86
|
+
1. 告知用户未检测到设计工具服务
|
|
87
|
+
2. 跳过设计稿获取
|
|
88
|
+
3. 不影响其他工作流
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## 常见错误
|
|
93
|
+
|
|
94
|
+
| 错误 | 原因 | 处理 |
|
|
95
|
+
|------|------|------|
|
|
96
|
+
| `Invalid token` | Token 无效或过期 | 在 Figma 设置中重新生成 |
|
|
97
|
+
| `File not found` | 链接错误或无访问权限 | 确认 URL 正确,检查分享权限 |
|
|
98
|
+
| `Node not found` | Node ID 错误 | 确认节点 ID 存在于当前文件版本 |
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deepflow-mcp-github-read
|
|
3
|
+
description: Use when you need to read GitHub data — browse repository files, list branches, search code, view Issues and Pull Requests. References code-hosting domain in the capability mapping.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# GitHub 读取操作指南
|
|
7
|
+
|
|
8
|
+
本指南说明如何通过 GitHub MCP 读取仓库数据。使用前请确保 `.env` 中已配置 `DEEPFLOW_GITHUB_TOKEN`。
|
|
9
|
+
|
|
10
|
+
> **领域能力:** `code-hosting` — 代码托管
|
|
11
|
+
> **服务标识:** `github`
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 环境要求
|
|
16
|
+
|
|
17
|
+
- `.env` 文件须包含 `DEEPFLOW_GITHUB_TOKEN=your_token`
|
|
18
|
+
- Token 从 https://github.com/settings/tokens 生成,至少需要 `repo` 和 `read:org` 权限
|
|
19
|
+
- 需要本地 Docker 环境
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## 常用操作
|
|
24
|
+
|
|
25
|
+
### 仓库浏览
|
|
26
|
+
|
|
27
|
+
| 操作 | 说明 |
|
|
28
|
+
|------|------|
|
|
29
|
+
| 查看仓库详情 | 元信息:描述、语言、Star 数、License |
|
|
30
|
+
| 查看文件内容 | 指定路径的文件内容 |
|
|
31
|
+
| 列出分支 | 仓库所有分支列表 |
|
|
32
|
+
|
|
33
|
+
### 代码搜索
|
|
34
|
+
|
|
35
|
+
| 操作 | 说明 |
|
|
36
|
+
|------|------|
|
|
37
|
+
| 搜索代码 | 在仓库范围内搜索代码片段 |
|
|
38
|
+
| 搜索 Issue/PR | 按关键词、状态、作者搜索 |
|
|
39
|
+
|
|
40
|
+
### Issue 和 PR 查看
|
|
41
|
+
|
|
42
|
+
| 操作 | 说明 |
|
|
43
|
+
|------|------|
|
|
44
|
+
| 获取 PR 详情 | 描述、变更文件列表、评论、检查状态 |
|
|
45
|
+
| 获取 Issue 详情 | Issue 描述和全部评论 |
|
|
46
|
+
| 列出 Issue/PR | 按状态、标签、Assignee 筛选 |
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## 降级处理
|
|
51
|
+
|
|
52
|
+
`code-hosting.available === false` 时,降级为使用 `gh` CLI 命令替代。
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## 常见错误
|
|
57
|
+
|
|
58
|
+
| 错误 | 原因 | 处理 |
|
|
59
|
+
|------|------|------|
|
|
60
|
+
| `Resource not accessible` | Token 权限不足 | 检查 Token 的 scope |
|
|
61
|
+
| `Not Found` | 仓库不存在或无权限 | 确认仓库名和权限 |
|
|
62
|
+
| Docker 错误 | Docker 未启动 | 确认 Docker 正在运行 |
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deepflow-mcp-github-write
|
|
3
|
+
description: Use when you need to write to GitHub — create/update Issues, create Pull Requests, submit comments, create/update files. References code-hosting domain in the capability mapping.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# GitHub 写入操作指南
|
|
7
|
+
|
|
8
|
+
本指南说明如何通过 GitHub MCP 创建和修改仓库内容。使用前请确保 `.env` 中已配置 `DEEPFLOW_GITHUB_TOKEN`。
|
|
9
|
+
|
|
10
|
+
> **领域能力:** `code-hosting` — 代码托管
|
|
11
|
+
> **服务标识:** `github`
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 环境要求
|
|
16
|
+
|
|
17
|
+
- `.env` 文件须包含 `DEEPFLOW_GITHUB_TOKEN=your_token`
|
|
18
|
+
- Token 从 https://github.com/settings/tokens 生成,至少需要 `repo` 权限
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 常用操作
|
|
23
|
+
|
|
24
|
+
### Issue 管理
|
|
25
|
+
|
|
26
|
+
| 操作 | 说明 |
|
|
27
|
+
|------|------|
|
|
28
|
+
| 创建 Issue | 附带标题、描述、标签、Assignee |
|
|
29
|
+
| 更新 Issue | 修改标题、描述、标签、状态 |
|
|
30
|
+
| 关闭/重新打开 | 管理 Issue 生命周期 |
|
|
31
|
+
| 添加评论 | 在 Issue 上回复 |
|
|
32
|
+
|
|
33
|
+
### Pull Request
|
|
34
|
+
|
|
35
|
+
| 操作 | 说明 |
|
|
36
|
+
|------|------|
|
|
37
|
+
| 创建 PR | 指定源/目标分支、标题、描述,支持 Draft PR |
|
|
38
|
+
| 更新 PR 描述 | 修改 PR 描述 |
|
|
39
|
+
| 合并 PR | merge/squash/rebase |
|
|
40
|
+
| 添加 Review Comment | 在 PR 上提交 Review 评论 |
|
|
41
|
+
|
|
42
|
+
### 文件操作
|
|
43
|
+
|
|
44
|
+
| 操作 | 说明 |
|
|
45
|
+
|------|------|
|
|
46
|
+
| 创建文件 | 在指定路径创建新文件 |
|
|
47
|
+
| 更新文件 | 修改已有文件内容 |
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 降级处理
|
|
52
|
+
|
|
53
|
+
`code-hosting.available === false` 时,降级为使用 `gh` CLI 命令替代。
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## 常见错误
|
|
58
|
+
|
|
59
|
+
| 错误 | 原因 | 处理 |
|
|
60
|
+
|------|------|------|
|
|
61
|
+
| `Resource not accessible` | Token 权限不足 | 检查 Token 的 scope 配置 |
|
|
62
|
+
| `Not Found` | 仓库不存在或无权限 | 确认仓库名和权限 |
|
|
63
|
+
| `Conflict` | 合并冲突/分支已存在 | 先解决冲突或检查分支状态 |
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deepflow-mcp-jira-read
|
|
3
|
+
description: Use when you need to read Jira Issue data — get issue details, search issues, extract custom fields. References issue_tracker domain in the capability mapping.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Jira Issue 读取操作指南
|
|
7
|
+
|
|
8
|
+
本指南说明如何通过 Jira MCP 读取 Issue 数据。使用前请确保 `.env` 中已配置 `DEEPFLOW_JIRA_TOKEN`。
|
|
9
|
+
|
|
10
|
+
> **领域能力:** `issue_tracker` — 项目管理
|
|
11
|
+
> **服务标识:** `jira`
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 环境要求
|
|
16
|
+
|
|
17
|
+
- `.env` 文件须包含 `DEEPFLOW_JIRA_TOKEN=your_token`
|
|
18
|
+
- Token 从 https://id.atlassian.com/manage/api-tokens 生成
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 运行时能力确认
|
|
23
|
+
|
|
24
|
+
操作前先确认 Jira MCP 是否可用:
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
检查 `.claude/settings.json` → `deepflow.mcpCapabilities` 中 issue_tracker.available === true(providers 包含 jira)
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## 常用操作
|
|
33
|
+
|
|
34
|
+
### 解析 Issue 标识
|
|
35
|
+
|
|
36
|
+
| 输入格式 | 示例 | 提取方式 |
|
|
37
|
+
|---------|------|---------|
|
|
38
|
+
| 完整 URL | `https://<instance>.atlassian.net/browse/LC-1234` | 从 URL path 提取 `LC-1234` |
|
|
39
|
+
| 完整编号 | `LC-1234` | 直接使用 |
|
|
40
|
+
| 纯数字 | `1234` | 需结合项目前缀 |
|
|
41
|
+
|
|
42
|
+
### 获取 Issue 详情
|
|
43
|
+
|
|
44
|
+
调用 Jira MCP 的获取 Issue 工具,传入解析后的 Issue Key。
|
|
45
|
+
|
|
46
|
+
**提取的元数据结构:**
|
|
47
|
+
|
|
48
|
+
```json
|
|
49
|
+
{
|
|
50
|
+
"key": "LC-1234",
|
|
51
|
+
"title": "Issue 摘要",
|
|
52
|
+
"url": "https://<instance>.atlassian.net/browse/LC-1234",
|
|
53
|
+
"type": "Story",
|
|
54
|
+
"status": "In Progress",
|
|
55
|
+
"description": "Issue 描述正文"
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### 提取自定义字段
|
|
60
|
+
|
|
61
|
+
从返回数据中查找设计工具关联字段(如 `customfield_10032`),提取其中的 Figma/Figma 链接。
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## 降级处理
|
|
66
|
+
|
|
67
|
+
`issue_tracker.available === false` 时:
|
|
68
|
+
|
|
69
|
+
1. 告知用户未检测到 Issue 跟踪服务
|
|
70
|
+
2. 请求用户手动粘贴 Issue 摘要和描述
|
|
71
|
+
3. 从用户提供的信息提取所需元数据
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## 常见错误
|
|
76
|
+
|
|
77
|
+
| 错误 | 原因 | 处理 |
|
|
78
|
+
|------|------|------|
|
|
79
|
+
| `Authentication failed` | Token 无效 | 检查 `.env` 中 `DEEPFLOW_JIRA_TOKEN` |
|
|
80
|
+
| `Issue not found` | Key 错误或无权限 | 确认 Key 正确,检查项目访问权限 |
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deepflow-mcp-jira-write
|
|
3
|
+
description: Use when you need to create, update, transition, or comment on Jira Issues. References issue_tracker domain in the capability mapping.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Jira Issue 写入操作指南
|
|
7
|
+
|
|
8
|
+
本指南说明如何通过 Jira MCP 创建和修改 Issue。使用前请确保 `.env` 中已配置 `DEEPFLOW_JIRA_TOKEN`。
|
|
9
|
+
|
|
10
|
+
> **领域能力:** `issue_tracker` — 项目管理
|
|
11
|
+
> **服务标识:** `jira`
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 环境要求
|
|
16
|
+
|
|
17
|
+
- `.env` 文件须包含 `DEEPFLOW_JIRA_TOKEN=your_token`
|
|
18
|
+
- Token 从 https://id.atlassian.com/manage/api-tokens 生成
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 常用操作
|
|
23
|
+
|
|
24
|
+
### 创建 Issue
|
|
25
|
+
|
|
26
|
+
调用 Jira MCP 的创建 Issue 工具,需提供:
|
|
27
|
+
|
|
28
|
+
| 字段 | 说明 | 示例 |
|
|
29
|
+
|------|------|------|
|
|
30
|
+
| 项目 Key | 项目标识 | `PROJ` |
|
|
31
|
+
| Issue 类型 | Story/Task/Bug/Sub-task | `Task` |
|
|
32
|
+
| 摘要(Summary) | 标题 | `用户登录功能优化` |
|
|
33
|
+
| 描述(Description) | Markdown 正文 | 详细描述 |
|
|
34
|
+
| 父任务(可选) | Sub-task 的父级 | `PROJ-123` |
|
|
35
|
+
|
|
36
|
+
### 更新 Issue 字段
|
|
37
|
+
|
|
38
|
+
调用 Jira MCP 的更新 Issue 工具,可更新:摘要、描述、优先级、经办人、标签。
|
|
39
|
+
|
|
40
|
+
### 状态流转(Transition)
|
|
41
|
+
|
|
42
|
+
1. **先查询**:调用 Jira MCP 获取可用的 transitions 列表
|
|
43
|
+
2. **再流转**:选择目标 transition 执行
|
|
44
|
+
|
|
45
|
+
常见流转路径:`To Do → In Progress → In Review → Done`
|
|
46
|
+
|
|
47
|
+
### 添加评论
|
|
48
|
+
|
|
49
|
+
调用 Jira MCP 的添加评论工具,支持 Markdown 格式。
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## 多 Provider 选择
|
|
54
|
+
|
|
55
|
+
当 `issue_tracker.available === true` 且有多个 provider 时,展示可用列表供用户选择。
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## 降级处理
|
|
60
|
+
|
|
61
|
+
`issue_tracker.available === false` 时:
|
|
62
|
+
1. 跳过 Issue 创建/更新操作
|
|
63
|
+
2. 在 checklist 中记录为 skipped
|
|
64
|
+
3. 提示用户手动在 Jira 中操作
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## 常见错误
|
|
69
|
+
|
|
70
|
+
| 错误 | 原因 | 处理 |
|
|
71
|
+
|------|------|------|
|
|
72
|
+
| `Authentication failed` | Token 无效 | 检查 `.env` |
|
|
73
|
+
| `Transition not allowed` | 该状态流转在当前工作流中不允许 | 先查询可用的 transitions 列表 |
|
|
74
|
+
| `Field not on screen` | Jira 项目配置限制 | 确认字段在 project workflow 中可见 |
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deepflow-mcp-playwright-read
|
|
3
|
+
description: Use when you need to perform browser automation — navigate pages, click elements, fill forms, extract content, take screenshots. References e2e-testing domain in the capability mapping.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Playwright MCP 浏览器操作指南
|
|
7
|
+
|
|
8
|
+
本指南说明如何通过 Playwright MCP 操作浏览器执行 E2E 测试步骤。使用前请确保 DeepFlow 安装时已选择 Playwright MCP 服务,连接地址已硬编码在 `.mcp.json` 中(默认 `http://localhost:54321/sse`)。
|
|
9
|
+
|
|
10
|
+
> **领域能力:** `browser-automation` — 端到端测试
|
|
11
|
+
> **服务标识:** `playwright`
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 环境要求
|
|
16
|
+
|
|
17
|
+
- Playwright MCP 连接地址已硬编码在 `.mcp.json` 的 `deepflow-playwright` 服务中(默认 `http://localhost:54321/sse`)
|
|
18
|
+
- 确保 Playwright MCP 进程已在本地运行(默认端口 54321)
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 运行时能力确认
|
|
23
|
+
|
|
24
|
+
操作前先确认 Playwright MCP 是否可用:
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
检查 `.claude/settings.json` → `deepflow.mcpCapabilities` 中 browser-automation.available === true(providers 包含 playwright)
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## 常用操作
|
|
33
|
+
|
|
34
|
+
### 页面导航
|
|
35
|
+
|
|
36
|
+
```text
|
|
37
|
+
使用 Playwright MCP 的 navigate 工具,传入目标 URL
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### 元素交互
|
|
41
|
+
|
|
42
|
+
| 操作 | 工具 | 参数 |
|
|
43
|
+
|------|------|------|
|
|
44
|
+
| 点击 | click | selector(CSS 选择器) |
|
|
45
|
+
| 填写 | fill | selector + value |
|
|
46
|
+
| 选择 | selectOption | selector + value |
|
|
47
|
+
| 悬停 | hover | selector |
|
|
48
|
+
|
|
49
|
+
### 内容提取
|
|
50
|
+
|
|
51
|
+
```text
|
|
52
|
+
使用 evaluate 或 textContent 工具,通过选择器提取页面文本内容
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### 截图
|
|
56
|
+
|
|
57
|
+
```text
|
|
58
|
+
使用 screenshot 工具,可指定全页截图或视口截图
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## 降级处理
|
|
64
|
+
|
|
65
|
+
`browser-automation.available === false` 时:
|
|
66
|
+
|
|
67
|
+
1. 告知用户未检测到浏览器自动化服务
|
|
68
|
+
2. 提示用户运行 `deepflow setup` 并选择 Playwright MCP
|
|
69
|
+
3. 或手动配置 `.mcp.json` 中的 `deepflow-playwright` 服务
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## 常见错误
|
|
74
|
+
|
|
75
|
+
| 错误 | 原因 | 处理 |
|
|
76
|
+
|------|------|------|
|
|
77
|
+
| `Connection refused` | Playwright MCP 未启动 | 检查 `.mcp.json` 中 `deepflow-playwright` 的 `url` 配置,启动 Playwright MCP 服务 |
|
|
78
|
+
| `Element not found` | 选择器不匹配 | 使用浏览器 DevTools 检查正确选择器 |
|
|
79
|
+
| `Timeout` | 页面加载慢 | 增加等待时间或使用 waitForSelector |
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deepstorm-mcp-feishu-wiki-read
|
|
3
|
+
description: Use when you need to search and read Feishu wiki documents — search PRDs, read document content, extract requirement context. References knowledge_base domain in the capability mapping.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# 飞书知识库读取操作指南
|
|
7
|
+
|
|
8
|
+
本指南说明如何通过飞书知识库 MCP 搜索和读取文档内容。使用前请确保 `.env` 中已配置 `DEEPSTORM_FEISHU_TOKEN`。
|
|
9
|
+
|
|
10
|
+
> **领域能力:** `knowledge_base` — 知识管理
|
|
11
|
+
> **服务标识:** `feishu-wiki`
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 环境要求
|
|
16
|
+
|
|
17
|
+
- `.env` 文件须包含 `DEEPSTORM_FEISHU_TOKEN=your_token`
|
|
18
|
+
- Token 从飞书开放平台 > 应用凭证获取
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 常用操作
|
|
23
|
+
|
|
24
|
+
### 搜索文档
|
|
25
|
+
|
|
26
|
+
按关键词搜索飞书知识库文档,返回匹配的文档列表和摘要。
|
|
27
|
+
|
|
28
|
+
**示例场景:**
|
|
29
|
+
- 搜索 PRD 文档:搜索与当前 Issue 相关的需求文档
|
|
30
|
+
- 搜索技术方案:搜索关于特定功能的讨论文档
|
|
31
|
+
|
|
32
|
+
### 读取文档内容
|
|
33
|
+
|
|
34
|
+
获取指定文档的完整内容,支持 Markdown 格式输出。
|
|
35
|
+
|
|
36
|
+
**使用方式:**
|
|
37
|
+
- 从 Issue 描述中提取的文档链接
|
|
38
|
+
- 使用搜索结果的文档 ID
|
|
39
|
+
|
|
40
|
+
### 提取 PRD 上下文
|
|
41
|
+
|
|
42
|
+
读取到的文档内容中提取以下信息:
|
|
43
|
+
|
|
44
|
+
1. **需求背景和目标** — 为什么做、解决什么问题
|
|
45
|
+
2. **功能范围定义** — 做什么,不做什么
|
|
46
|
+
3. **验收标准** — 如何验证
|
|
47
|
+
4. **关键决策记录** — 重要的技术/产品决策及理由
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 降级处理
|
|
52
|
+
|
|
53
|
+
`knowledge_base.available === false` 时:
|
|
54
|
+
1. 告知用户未检测到知识库服务
|
|
55
|
+
2. 询问用户是否手动提供 PRD 内容
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## 常见错误
|
|
60
|
+
|
|
61
|
+
| 错误 | 原因 | 处理 |
|
|
62
|
+
|------|------|------|
|
|
63
|
+
| Token 错误 | Token 未配置或无效 | 检查 `.env` 中 `DEEPSTORM_FEISHU_TOKEN` |
|
|
64
|
+
| 文档不存在 | 链接错误或已被删除 | 确认文档链接正确 |
|
|
65
|
+
| 无权限 | Token 无权访问该文档 | 确认机器人已被加入目标知识库 |
|