-
Notifications
You must be signed in to change notification settings - Fork 21
Open
Description
概述
建议使用 CLI-Anything 方案对 MatMaster 进行完全的 CLI 化,使其成为 Agent-Ready 的工具。
背景介绍
CLI-Anything 是香港大学数据科学研究所(HKUDS)开发的自动化 CLI 生成工具,能够将任何软件转换为 AI Agent 可直接使用的命令行工具。
CLI-Anything 的核心优势
- Agent-First 设计 - 生成的 CLI 专为 AI Agent 设计,提供结构化的 JSON 输出
- 自动化生成 - 通过 7 阶段方法论自动生成完整的 CLI 工具
- 实战验证 - 已成功为 11 个专业软件生成 CLI,包括 GIMP、Blender、LibreOffice 等
- 测试完备 - 总计 1,508 个测试,100% 通过率
为什么 MatMaster 需要 CLI 化
当前痛点
- Agent 无法直接使用 - MatMaster 作为材料科学计算平台,当前主要通过 GUI 或 API 交互,AI Agent 无法直接操作
- 工作流不连贯 - 用户需要手动切换多个工具和界面,缺乏统一的命令行接口
- 自动化困难 - 难以实现批处理和自动化工作流
CLI 化后的优势
- Agent 可直接调用 - AI Agent 可以通过 CLI 直接控制 MatMaster 的所有功能
- 统一接口 - 所有 Agent (ABACUS、DPA、HEA 等) 通过统一的 CLI 接口访问
- 自动化工作流 - 支持批处理、脚本化和 CI/CD 集成
- 结构化输出 - JSON 格式输出便于 Agent 解析和处理
实施方案
CLI-Anything 的 7 阶段方法论
- 🔍 Analyze (分析) - 扫描 MatMaster 源码,映射 GUI/API 操作到 CLI 命令
- 📐 Design (设计) - 设计命令组结构、状态模型、输出格式
- 🔨 Implement (实现) - 构建 Click CLI,支持 REPL、JSON 输出、撤销/重做
- 📋 Plan Tests (测试规划) - 创建单元测试和 E2E 测试计划
- 🧪 Write Tests (编写测试) - 实现全面的测试套件
- 📝 Document (文档) - 更新文档和测试结果
- 📦 Publish (发布) - 创建 setup.py,安装到 PATH
建议的 CLI 命令结构
# 安装
pip install cli-anything-matmaster
# 基本使用
cli-anything-matmaster --help
# 创建项目
cli-anything-matmaster project new --name "HEA_Analysis" --type hea
# ABACUS 计算
cli-anything-matmaster abacus run --input structure.cif --output results.json
# DPA 计算
cli-anything-matmaster dpa calculate --model dpa-model.pb --config calc.yaml
# HEA 计算
cli-anything-matmaster hea analyze --composition "FeCoNiCuMn" --temperature 300
# 数据库查询
cli-anything-matmaster mrdice query --element Fe --property band_gap
# JSON 输出 (Agent 友好)
cli-anything-matmaster --json hea analyze --composition "FeCoNiCuMn"
# 交互式 REPL
cli-anything-matmaster命令组设计建议
基于 MatMaster 的 Agent 结构,建议以下命令组:
- project - 项目管理 (创建、加载、保存)
- abacus - ABACUS 第一性原理计算
- dpa - DPA 深度势能计算
- hea - HEA 高熵合金计算
- invar - INVAR 材料分析
- mrdice - 材料数据库查询
- chembrain - 化学材料分析
- ssebrain - 固态电解质研究
- export - 结果导出和可视化
预期成果
功能层面
- 完整的 CLI 覆盖 - 所有 Agent 功能通过 CLI 访问
- Agent-Ready - AI Agent 可直接调用,无需 GUI 或 API 解析
- 自动化工作流 - 支持批处理和 CI/CD 集成
- 测试完备 - 单元测试 + E2E 测试,确保可靠性
技术层面
cli_anything.matmasterPython 包 - 可通过 pip 安装- 统一的 REPL 接口 - 支持交互式操作
- 结构化 JSON 输出 - 便于 Agent 解析
- 完整文档 - CLI 使用文档和 API 参考
生态层面
- AI Agent 集成 - Claude Code、Codex、OpenCode 等可直接使用
- 工作流自动化 - 材料科学研究的自动化流水线
- 社区贡献 - 更易于开发者贡献和扩展
实施建议
第一阶段:核心 Agent CLI 化
优先为以下 Agent 生成 CLI:
- ABACUS_agent
- DPACalculator_agent
- HEACalculator_agent
- MrDice_agent
第二阶段:扩展 Agent CLI 化
为其余 Agent 生成 CLI:
- HEA_assistant_agent
- INVAR_agent
- chembrain_agent
- ssebrain_agent
第三阶段:集成和优化
- 统一 CLI 接口
- 完善测试覆盖
- 优化性能和用户体验
参考资源
- CLI-Anything 项目: https://github.com/HKUDS/CLI-Anything
- CLI-Anything 文档: https://github.com/HKUDS/CLI-Anything/blob/main/cli-anything-plugin/HARNESS.md
- 成功案例: GIMP、Blender、LibreOffice 等 11 个专业软件
- 技术论文: CLI-Anything: Making ALL Software Agent-Native
总结
使用 CLI-Anything 方案对 MatMaster 进行 CLI 化,将使其成为真正的 Agent-Ready 工具,大幅提升 AI Agent 在材料科学领域的应用能力,推动材料科学研究的自动化和智能化。
这是一个非常有价值的 feature request,值得优先考虑实施。
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels