
Doctor
环境检查与安装向导。检查数学建模工作流所需的全部依赖是否已安装,对缺失项提供安装命令,并在用户确认后执行安装。手动触发。
Install
npx skills add jihe520/MathModelAgent --skill doctor -g -a claude-code -y- Repository
- jihe520/MathModelAgent6.3k
- Category
- Engineering
- Updated
- 9d ago
- License
- See repository
- Context cost
- Lightabout 1,420 tokens
- Runs scripts
- No, instructions only
What it does
环境检查与安装向导。检查数学建模工作流所需的全部依赖是否已安装,对缺失项提供安装命令,并在用户确认后执行安装。手动触发。
Doctor, 环境检查与安装向导
本 skill 检查完整数学建模工作流所需的所有工具是否已就绪,并帮助用户安装缺失项。本 skill 只在用户显式触发时运行,不自动执行。
检查项清单
核心工具
| 工具 | 用途 | 检测命令 |
|---|---|---|
typst | 论文编译(5writing、6verity,Typst 引擎) | command -v typst |
xelatex | 论文编译(5writing、6verity,LaTeX 引擎,中文模板必需) | command -v xelatex |
python3 | 数值计算与图表(3coding-visual) | command -v python3 |
drawio / draw.io | DrawIO 流程图导出 PDF(4drawio) | command -v drawio || command -v draw.io |
pdftoppm | PDF 转 PNG 视觉检查(6verity) | command -v pdftoppm |
mutool | PDF 转 PNG 备用(6verity) | command -v mutool |
magick | PDF 转 PNG 备用(6verity) | command -v magick |
Python 包
| 包 | 用途 |
|---|---|
numpy | 数值计算 |
scipy | 科学计算、优化求解 |
pandas | 数据处理 |
matplotlib | 图表生成 |
scikit-learn | 机器学习建模 |
openpyxl | 读写 Excel 数据附件 |
工作流程
Step 1:检测当前平台
case "$(uname -s)" in
Darwin) echo "PLATFORM=mac" ;;
Linux) echo "PLATFORM=linux" ;;
MINGW*|MSYS*|CYGWIN*) echo "PLATFORM=windows" ;;
*) echo "PLATFORM=unknown" ;;
esac
Windows 下优先使用 winget,备用 scoop 或 choco。Linux 下优先使用 apt(Debian/Ubuntu),备用 dnf(Fedora/RHEL)或 pacman(Arch)。
检测包管理器:
# Linux 发行版检测
if [ -f /etc/os-release ]; then
. /etc/os-release
echo "DISTRO=$ID"
fi
# Windows 包管理器检测(在 Git Bash / PowerShell 中)
command -v winget >/dev/null 2>&1 && echo "PKG=winget"
command -v scoop >/dev/null 2>&1 && echo "PKG=scoop"
command -v choco >/dev/null 2>&1 && echo "PKG=choco"
Step 2:检查所有工具
check_cmd() {
if command -v "$1" >/dev/null 2>&1; then
echo "OK $1 ($(command -v "$1"))"
else
echo "MISS $1"
fi
}
check_cmd typst
check_cmd xelatex
check_cmd python3 || check_cmd python # Windows 上可能是 python
command -v drawio >/dev/null 2>&1 || command -v draw.io >/dev/null 2>&1 \
&& echo "OK drawio" || echo "MISS drawio"
check_cmd pdftoppm
check_cmd mutool
check_cmd magick
