基于YAML配置文件自动创建企业微信微盘目录结构的智能代理系统。
"配置即文档,YAML驱动一切"
只需编写一个YAML配置文件,AI Agent就能自动完成:
- ✅ 创建微盘空间
- ✅ 构建完整的目录结构(支持多层嵌套)
- ✅ 配置访问权限
- ✅ 生成执行报告
.
├── WediskAgent.java # AI Agent核心代码
├── pom_agent.xml # Maven配置文件
├── project-config.yaml # 完整项目配置示例(银行交易系统)
├── simple-config.yaml # 简单项目配置示例(电商平台)
├── ai-project-config.yaml # AI项目配置示例(智能客服)
└── AGENT_README.md # 本文档
# 重命名pom文件
mv pom_agent.xml pom.xml
# 编译打包
mvn clean package
# 生成的可执行jar文件
# target/wedisk-agent.jar# Linux/Mac
export WEWORK_CORP_ID="your_corp_id"
export WEWORK_CORP_SECRET="your_corp_secret"
# Windows
set WEWORK_CORP_ID=your_corp_id
set WEWORK_CORP_SECRET=your_corp_secret# my-project.yaml
project_name: "我的新项目"
space_name: "项目文档空间"
creator: "ZhangSan"
description: "项目描述"
structure:
需求文档:
- 需求规格说明书
- 用户故事
设计文档:
- 架构设计
- 数据库设计
permissions:
- user_id: "LiSi"
auth_type: 3 # 3=可管理# 方式1:使用环境变量
java -jar target/wedisk-agent.jar --config my-project.yaml
# 方式2:使用命令行参数
java -jar target/wedisk-agent.jar \
--config my-project.yaml \
--corpid your_corp_id \
--secret your_corp_secret
# 方式3:使用Maven运行(开发阶段)
mvn exec:java -Dexec.mainClass="WediskAgent" -Dexec.args="--config my-project.yaml"运行完成后会生成执行报告:
wedisk_report_20260105_143022.md
# 项目基本信息
project_name: "项目名称" # 必填:项目名称
space_name: "微盘空间名称" # 必填:微盘空间名称
creator: "ZhangSan" # 必填:创建者userid
description: "项目描述" # 可选:项目描述
# 目录结构
structure:
# 第一级目录
目录名1:
# 第二级目录(可以是列表)
- 子目录1
- 子目录2
# 第一级目录(支持深层嵌套)
目录名2:
子目录A:
- 三级目录1
- 三级目录2
子目录B:
孙目录X:
- 四级目录1
- 四级目录2
# 权限配置
permissions:
- user_id: "用户ID"
auth_type: 1 # 1=可查看, 2=可编辑, 3=可管理structure:
技术文档:
- 前端开发 # 创建:技术文档/前端开发
- 后端开发 # 创建:技术文档/后端开发
- 数据库设计 # 创建:技术文档/数据库设计structure:
项目管理:
需求文档:
- 需求规格说明书 # 创建:项目管理/需求文档/需求规格说明书
- 用户故事 # 创建:项目管理/需求文档/用户故事structure:
开发文档:
前端:
React项目:
- 组件库 # 创建:开发文档/前端/React项目/组件库
- 路由配置 # 创建:开发文档/前端/React项目/路由配置
后端:
- Java服务 # 创建:开发文档/后端/Java服务
- Python服务 # 创建:开发文档/后端/Python服务project_name: "XX管理系统"
space_name: "XX管理系统文档"
creator: "ZhangSan"
description: "企业管理系统研发文档"
structure:
需求分析:
- 业务需求
- 功能需求
- 非功能需求
系统设计:
- 架构设计
- 数据库设计
- 接口设计
开发文档:
- 前端开发
- 后端开发
- 数据库脚本
测试文档:
- 测试用例
- 测试报告
部署文档:
- 部署手册
- 运维文档
permissions:
- user_id: "ProjectManager"
auth_type: 3
- user_id: "Developer1"
auth_type: 2
- user_id: "Tester1"
auth_type: 2project_name: "客户行为分析项目"
space_name: "客户行为分析"
creator: "ZhangSan"
description: "基于大数据的客户行为分析项目"
structure:
数据采集:
- 数据源文档
- 采集脚本
- 采集日志
数据处理:
- 清洗规则
- 处理脚本
- 质量报告
数据分析:
- 分析模型
- 分析报告
- 可视化图表
成果交付:
- 分析报告
- 可视化大屏
- 建议方案
permissions:
- user_id: "DataLead"
auth_type: 3
- user_id: "DataAnalyst"
auth_type: 2project_name: "APP运营推广"
space_name: "APP运营文档"
creator: "ZhangSan"
description: "移动应用运营推广文档管理"
structure:
产品规划:
- 产品路线图
- 版本规划
- 竞品分析
运营活动:
活动策划:
- 活动方案
- 活动预算
- 活动复盘
内容运营:
- 内容日历
- 文案素材
- 效果数据
用户运营:
- 用户画像
- 用户调研
- 用户反馈
数据分析:
- 日报周报
- 数据大盘
- 分析报告
permissions:
- user_id: "ProductManager"
auth_type: 3
- user_id: "OperationManager"
auth_type: 2
- user_id: "ContentEditor"
auth_type: 2当有新项目需要启动时:
- 复制模板文件
cp project-config.yaml new-project.yaml- 修改配置
vim new-project.yaml
# 修改项目名称、创建者、目录结构等- 执行创建
java -jar wedisk-agent.jar --config new-project.yaml- 检查报告
cat wedisk_report_*.md团队负责人:
- 设计目录结构,编写YAML配置
- 配置团队成员权限
- 提交到Git仓库
团队成员:
- 从Git拉取最新配置
- 运行Agent创建微盘空间
- 开始文档协作
#!/bin/bash
# 批量创建脚本
for config in configs/*.yaml; do
echo "创建项目: $config"
java -jar wedisk-agent.jar --config "$config"
sleep 2 # 避免API频率限制
done在GitLab CI / Jenkins中集成:
# .gitlab-ci.yml
create-wedisk-space:
stage: init
script:
- java -jar wedisk-agent.jar --config project-config.yaml
only:
- mainAgent执行完成后会生成Markdown格式的报告:
# 微盘空间创建报告
## 项目信息
- **项目名称**: 银行交易系统项目
- **空间名称**: 银行交易系统文档空间
- **创建者**: ZhangSan
- **创建时间**: Mon Jan 05 14:30:22 CST 2026
## 执行结果
- **状态**: ✅ 成功
- **空间ID**: `space_abc123xyz`
- **创建文件夹数**: 45
- **设置权限数**: 6
- **执行耗时**: 12.5 秒
## 目录结构
├─ 项目管理 ├─ 项目计划 ├─ 项目章程 ├─ 项目进度表 ├─ 需求文档 ├─ 需求规格说明书 ...
## 文件夹ID映射
| 路径 | File ID |
|------|---------|
| 项目管理 | `file_123` |
| 项目管理/项目计划 | `file_124` |
...
支持的环境变量:
WEWORK_CORP_ID: 企业IDWEWORK_CORP_SECRET: 应用Secret
--config <file> # YAML配置文件路径(必填)
--corpid <id> # 企业ID(可选,优先级高于环境变量)
--secret <secret> # 应用Secret(可选)Agent具有完善的错误处理机制:
- ✅ API调用失败自动重试
- ✅ 详细的错误日志
- ✅ 执行报告包含错误信息
- ✅ 非零退出码表示失败
- ✅ 批量创建时添加延迟避免API限流
- ✅ Token自动缓存
- ✅ 支持并发执行多个配置文件
错误信息:
Exception in thread "main" ... YAMLException
解决方案:
- 检查YAML缩进(使用2个空格,不要用Tab)
- 确保冒号后有空格
- 使用在线YAML验证工具检查
错误信息:
FileNotFoundException: project-config.yaml
解决方案:
- 检查文件路径是否正确
- 使用绝对路径:
--config /full/path/to/config.yaml
错误信息:
获取access_token失败: errcode=40001
解决方案:
- 检查 CorpID 和 Secret 是否正确
- 确认应用具有微盘API权限
- 检查网络连接
错误信息:
API调用失败: errcode=93003
解决方案:
- 检查用户是否在企业通讯录中
- 确认用户有创建微盘空间的权限
- 检查微盘存储空间是否已满
错误信息:
添加空间权限失败: errcode=60011
解决方案:
- 确认permissions中的user_id在通讯录中存在
- 检查userid格式是否正确
将YAML配置文件纳入Git管理:
git add project-config.yaml
git commit -m "Add wedisk space configuration"
git push不同环境使用不同配置:
configs/
├── dev-config.yaml # 开发环境
├── test-config.yaml # 测试环境
└── prod-config.yaml # 生产环境
建立配置模板库:
templates/
├── backend-project.yaml # 后端项目模板
├── frontend-project.yaml # 前端项目模板
├── data-analysis.yaml # 数据分析模板
└── ai-project.yaml # AI项目模板
按角色配置权限:
permissions:
# 管理层
- user_id: "CEO"
auth_type: 3
# 核心团队
- user_id: "TeamLead"
auth_type: 3
# 开发团队
- user_id: "Developer1"
auth_type: 2
- user_id: "Developer2"
auth_type: 2
# 相关方(只读)
- user_id: "Stakeholder"
auth_type: 1在YAML中添加注释说明:
# 项目基本信息
project_name: "银行交易系统" # 项目编号:PROJ-2026-001
space_name: "银行交易系统文档"
creator: "ZhangSan" # 项目经理
# 目录结构说明:
# - 第一级按项目阶段划分
# - 第二级按文档类型划分
# - 第三级按具体内容划分
structure:
# ... 结构定义| 对比项 | 传统手工方式 | AI Agent方式 |
|---|---|---|
| 创建时间 | 30-60分钟 | 10-20秒 |
| 出错概率 | 较高(遗漏、重复) | 极低(自动化执行) |
| 可复用性 | 低(每次手工) | 高(YAML复用) |
| 可追溯性 | 无记录 | 完整报告 |
| 团队协作 | 难以同步 | Git版本控制 |
| 批量操作 | 不现实 | 支持 |
| 标准化 | 难以统一 | 完全标准化 |
- 支持文件上传
- 支持目录克隆
- 支持增量更新(只创建新增目录)
- 支持目录删除和重命名
- 支持从现有空间导出YAML
- 集成到企业DevOps平台
- 提供Web UI界面
- 开发VS Code插件
- 提供RestAPI接口
- 根据项目类型自动生成目录结构
- 基于AI推荐最佳实践
- 自动识别重复或冗余目录
MIT License
通过企业微信微盘AI Agent,您可以:
- 10秒创建 - 完整的项目文档空间
- 零出错率 - 自动化执行,避免人为失误
- 可复用 - YAML配置可在团队间共享
- 可追溯 - 完整的执行报告
- 标准化 - 统一的目录结构规范
让文档管理回归本质,把时间花在创造价值上!