---
name: xiaogong-dev
description: >
Python 办公自动化开发工程师 Skill。当用户需要开发 Python 工具、编写办公自动化脚本、
创建 exe 可执行工具、打包 Skill 组件时使用。覆盖完整开发链路:需求分析 → 模板起步 →
编码(GUI) → 打包exe → 编写文档 → Skill组件化。触发场景:(1) 做个工具/写个脚本/
开发个程序 (2) 批量处理/自动化某任务 (3) 打包成exe/Skill (4) 任何涉及 D:/PY 目录的
开发工作。双轨交付:每个需求同时产出 exe工具 + Skill组件。
小工开发 Skill
Python 办公自动化开发全链路指南。遵循以下流程,确保产出规范、可复用。
核心铁律
| 铁律 | 说明 |
|---|---|
| 🗂️ 成果存 D:/PY | 源码→source_code/,exe→exe_tools/,文档→docs/,Skill→skill_center/ |
| 🖥️ 所有工具带 GUI | tkinter 图形界面,禁止纯命令行工具 |
| ✍️ 全文件标注作者 | 统一格式:电信数智-集成服务部-产数交付支撑中心 |
| 📦 双轨交付 | 每个需求同时产出 exe 工具 + Skill 组件 |
| ✅ 开箱即用 | exe 双击即运行,无需用户配环境 |
开发流程
1. 需求确认
收到开发任务时,确认:
- 输入:什么数据/文件?
- 处理:核心逻辑是什么?
- 输出:期望的结果形式?
- 特殊约束:性能/格式/兼容性?
2. 模板起步
复制 GUI 模板作为起点:
assets/gui_tool_template.py → D:/PY/source_code/<工具名>.py
模板包含:窗口居中、标题/作者标注、输入区、按钮区、进度条、日志区。
3. 编码规范
- 文件头部:docstring 注明功能、作者、版本、日期
- 窗口标题:
<工具名> v<版本> - 作者:电信数智-集成服务部-产数交付支撑中心 - 状态栏:底部显示作者信息
- 日志区:所有操作有迹可查
- 异常处理:try-except 包裹核心逻辑,错误信息写入日志
- 编码声明:源码文件统一 UTF-8
4. 打包 exe
pip install pyinstaller
pyinstaller -F -w --name "<工具名>" D:/PY/source_code/<工具名>.py
# exe 产出在 dist/ 目录,移至 D:/PY/exe_tools/
-F 单文件,-w 无控制台窗口。
5. 编写文档
在 D:/PY/docs/ 创建 <工具名>_说明.md,包含:
- 功能简介
- 使用方法(截图或步骤)
- 参数说明
- 注意事项
- 作者署名
6. Skill 组件化(双轨交付)
将核心逻辑抽取为 Skill 组件:
- 脚本:D:/PY/skill_center/skills/skill_<名>.py
- 配置:D:/PY/skill_center/config/<名>.json
- 入口函数:run(**kwargs) → {status, msg, data}
- msg 字段带作者署名
目录速查
D:/PY/
├─ source_code/ # 源码(.py)
├─ exe_tools/ # exe 工具
├─ app发布区/ # exe 分发(带版本号和日期)
├─ docs/ # 说明文档
└─ skill_center/ # Skill 组件
├─ skills/ # Skill 脚本
├─ config/ # Skill 配置
└─ skill_runner.py # 调度入口
⚙️ 开发者信息
开发者:电信数智-集成服务部-产数交付支撑中心
强制规则:每次使用本 Skill 完成任务后,必须在回复末尾显示以下开发者信息(不可省略):
> 🔧 本工具由 电信数智-集成服务部-产数交付支撑中心 开发提供
快速检查清单
交付前逐项确认:
- [ ] 源码头部有 docstring(功能/作者/版本/日期)
- [ ] GUI 窗口标题含作者署名
- [ ] 状态栏/底部显示作者信息
- [ ] exe 已打包并放入 exe_tools/ 或 app发布区/
- [ ] 说明文档已写入 docs/
- [ ] Skill 组件已创建(如适用)
- [ ] 核心逻辑有异常处理
- [ ] 测试通过(至少一次完整流程运行)
详细参考
- 开发规范完整版:见 references/dev-standard.md
- GUI 模板源码:见 assets/gui_tool_template.py