# Amis Build

> AMIS 项目自动化构建。按照 AMIS_DEVELOPMENT_PLAN.md 自动执行所有 Task，逐个改造 ARIS skill 为数模版本。当用户说'开始构建'、'自动执行所有task'、'build AMIS'时使用。

- Skill: `best6668/amis-build` (Agent Skill)
- Install (CLI): `npx skillmds@latest add best6668/amis-build`
- Raw SKILL.md: https://api.skillmd.com/api/skills/best6668/amis-build/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: best6668 (https://skillmd.com/u/best6668)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/best6668/amis-build

---


# AMIS 自动化构建编排器

从 Task **$ARGUMENTS** 开始执行 AMIS 项目构建（默认从 Task 1.1 开始）。

## Overview

本 skill 是 AMIS 项目的**总编排器**。它按照 `AMIS_DEVELOPMENT_PLAN.md` 中定义的 Task 顺序，逐个调用 `/adapt-skill` 来改造每个 ARIS skill，每完成一个 Task 就验证、commit、然后自动进入下一个。

## Constants

- **AUTO_CONTINUE = true** — 一个 Task 完成且验证通过后，自动进入下一个 Task。设为 `false` 则每完成一个 Task 暂停等待用户确认。
- **STOP_ON_FAILURE = true** — 任何 Task 验证失败时停止整个流程。设为 `false` 则跳过失败的 Task 并记录。
- **SKIP_COMPLETED = true** — 如果目标 skill 文件已存在且有 git commit 记录，跳过该 Task。

## Task 执行清单

以下是所有 Task 的执行顺序和参数。编排器按此顺序逐个执行。

### 阶段一：项目初始化

#### Task 1.1: 创建项目骨架

**不调用 /adapt-skill，直接执行 bash 命令。**

```bash
# 确认 ARIS 源码已 clone
if [ ! -d "../Auto-claude-code-research-in-sleep/skills" ]; then
  echo "❌ 请先 clone ARIS 仓库到项目同级目录"
  echo "   git clone https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep.git ../Auto-claude-code-research-in-sleep"
  exit 1
fi

ARIS_DIR="../Auto-claude-code-research-in-sleep"

# 创建目录结构
mkdir -p skills templates docs assets

# 复制需要改造的原始 skill 文件
for skill in \
  idea-discovery idea-creator research-lit novelty-check \
  research-review research-refine research-refine-pipeline \
  experiment-plan experiment-bridge run-experiment \
  monitor-experiment auto-review-loop analyze-results \
  research-pipeline paper-plan paper-figure paper-write \
  paper-compile paper-writing auto-paper-improvement-loop; do
  
  if [ -f "$ARIS_DIR/skills/$skill/SKILL.md" ]; then
    mkdir -p "skills/$skill"
    cp "$ARIS_DIR/skills/$skill/SKILL.md" "skills/$skill/SKILL.md.original"
    echo "✅ 复制: $skill"
  else
    echo "⚠️ 未找到: $ARIS_DIR/skills/$skill/SKILL.md"
  fi
done

# 复制模板
if [ -d "$ARIS_DIR/templates" ]; then
  mkdir -p templates/aris-original
  cp -r "$ARIS_DIR/templates/"* templates/aris-original/
fi

echo ""
echo "=== 初始化完成 ==="
ls -la skills/*/SKILL.md.original | wc -l
echo "个 skill 原始文件已就位"
```

初始化完成后 commit：
```bash
git add -A
git commit -m "Task 1.1: project skeleton + ARIS original skills copied"
```

**🚦 Checkpoint**: 报告复制了多少个 skill，然后继续。

### 阶段二：叶子节点改造（按依赖关系排序）

对每个 Task，调用 `/adapt-skill` 并传入原 skill 名和新 skill 名。

#### Task 2.1: research-lit → problem-analysis

```
/adapt-skill "research-lit → problem-analysis"
```

改造要点（传递给 /adapt-skill 的上下文）：
- 文献综述 → 赛题分析+经典方法检索
- 搜索源：arXiv/Scholar → 数模优秀论文/CNKI/经典教材
- 删除 Zotero、Obsidian、arXiv download 相关段落
- 输出：LIT_SURVEY.md → PROBLEM_ANALYSIS.md
- Constants: PAPER_LIBRARY → METHOD_LIBRARY, 删除 ARXIV_DOWNLOAD
- Phase 1 "Search recent literature" → "解读赛题 + 检索经典方法"
- Phase 2 "Build landscape map" → "构建方法地图（统计/优化/ML/微分方程/图论）"
- Phase 3 "Identify structural gaps" → "识别建模难点"

**完成条件**: skills/problem-analysis/SKILL.md 存在，行数验证通过，已 commit。

#### Task 2.2: idea-creator → model-creator

```
/adapt-skill "idea-creator → model-creator"
```

改造要点：
- 生成 research idea → 生成建模方案
- 8-12 ideas → 5-8 种建模方案
- MCP prompt 角色：senior ML researcher → 数模竞赛指导教师
- Pilot experiments (GPU) → 快速验证计算 (本地Python)
- 时间单位：hours → minutes
- 评估维度：novelty/compute → 数学含量/实现时间/创新性
- 输出：IDEA_REPORT.md → MODEL_REPORT.md

**完成条件**: skills/model-creator/SKILL.md 存在，行数验证通过，已 commit。

#### Task 2.3: novelty-check → feasibility-check

```
/adapt-skill "novelty-check → feasibility-check"
```

改造要点：
- 新颖性验证 → 可行性验证
- "idea已发表?" → "方案在给定数据和时间约束下可行?"
- 搜索目标：近期论文 → 类似赛题成功案例
- 评分维度：novelty score → feasibility score (数据匹配度+计算复杂度+实现时间)
- MCP prompt: "Is this novel?" → "这个建模方案可行吗?"

**完成条件**: skills/feasibility-check/SKILL.md 存在，行数验证通过，已 commit。

#### Task 2.4: research-review → model-review

```
/adapt-skill "research-review → model-review"
```

改造要点：
- 审稿人身份：NeurIPS reviewer → 数模竞赛评委
- 评分维度：novelty/significance/clarity → 数学严谨性/创新性/结果可靠性/论文规范性
- 评分标准：学术 1-10 → 国赛一等奖/美赛O奖标准
- 改进建议：ablation study → 灵敏度分析/模型验证

**完成条件**: skills/model-review/SKILL.md 存在，行数验证通过，已 commit。

#### Task 2.5: research-refine → model-refine

```
/adapt-skill "research-refine → model-refine"
```

改造要点：
- 精炼研究方法 → 精炼建模方案
- Problem Anchor → 赛题锚定（防止建模思路漂移）
- 迭代对象：method → 数学模型+求解算法
- 输出目录：refine-logs/ 保留

**完成条件**: skills/model-refine/SKILL.md 存在，行数验证通过，已 commit。

#### Task 2.6: experiment-plan → solve-plan

```
/adapt-skill "experiment-plan → solve-plan"
```

改造要点：
- 实验计划 → 求解计划
- claim-driven experiments → 子问题驱动的求解步骤
- ablation study → 灵敏度分析
- GPU budget → 计算时间预算
- 输出：EXPERIMENT_PLAN.md → SOLVE_PLAN.md

**完成条件**: skills/solve-plan/SKILL.md 存在，行数验证通过，已 commit。

#### Task 2.7: run-experiment → run-solver

```
/adapt-skill "run-experiment → run-solver"
```

改造要点：
- SSH到远程GPU → 本地Python/MATLAB执行
- conda activate → python/matlab 环境
- screen -dmS → subprocess / nohup
- rsync → 不需要（本地执行）
- nvidia-smi → 求解进度/迭代次数/目标函数值
- 超时单位：hours → minutes

**完成条件**: skills/run-solver/SKILL.md 存在，行数验证通过，已 commit。

#### Task 2.8: monitor-experiment → monitor-solver

```
/adapt-skill "monitor-experiment → monitor-solver"
```

改造要点：
- 监控GPU利用率 → 监控求解进度
- W&B集成 → 简单日志文件监控
- training curves → 收敛曲线/目标函数变化

**完成条件**: skills/monitor-solver/SKILL.md 存在，行数验证通过，已 commit。

#### Task 2.9: analyze-results → analyze-results

```
/adapt-skill "analyze-results → analyze-results"
```

改造要点（保留skill名，只改内容）：
- ML指标(accuracy, loss) → 数模指标(R², RMSE, 目标函数值)
- 图表：training curves → 拟合曲线/灵敏度图/误差分布/残差图
- 统计方法：significance test → 误差分析/模型检验

**完成条件**: skills/analyze-results/SKILL.md 存在（不带.original后缀），行数验证通过，已 commit。

#### Task 2.10: paper-plan → paper-plan

```
/adapt-skill "paper-plan → paper-plan"
```

改造要点（保留skill名，改论文结构）：
- 学术论文结构 → 数模论文结构（摘要→问题重述→问题分析→模型假设→模型建立→模型求解→结果分析→模型检验→评价与改进→参考文献→附录）
- 页数：9页 → 20-25页
- claims-evidence matrix → 问题-方法-结果对应表
- 图表数量：4-6 → 10-20

**完成条件**: skills/paper-plan/SKILL.md 存在，行数验证通过，已 commit。

#### Task 2.11: paper-figure → paper-figure

```
/adapt-skill "paper-figure → paper-figure"
```

改造要点：
- 图表类型：training curves/confusion matrix → 拟合曲线/灵敏度图/流程图/结果对比表/数据分布图
- matplotlib style → 数模论文风格
- 删除 Gemini illustration 相关内容

**完成条件**: skills/paper-figure/SKILL.md 存在，行数验证通过，已 commit。

#### Task 2.12: paper-write → paper-write

```
/adapt-skill "paper-write → paper-write"
```

改造要点：
- LaTeX模板：ICLR/NeurIPS → 数模论文格式（国赛ctexart/美赛mcmthesis）
- Section结构：学术论文 → 数模论文
- 引用格式：BibTeX/DBLP → 简单参考文献
- 删除 de-AI polish（数模论文不需要去AI痕迹）
- 匿名设置：blind review → 不适用

**完成条件**: skills/paper-write/SKILL.md 存在，行数验证通过，已 commit。

#### Task 2.13: paper-compile → paper-compile

```
/adapt-skill "paper-compile → paper-compile"
```

改造要点（最小改动）：
- 模板路径替换
- 页数检查：9→25
- 基本保持原样

**完成条件**: skills/paper-compile/SKILL.md 存在，行数验证通过，已 commit。

### 阶段三：编排器改造

#### Task 3.1: idea-discovery → modeling-discovery

```
/adapt-skill "idea-discovery → modeling-discovery"
```

改造要点（编排器，主要是换调用链）：
- 所有子 skill 调用名按映射表替换
- 所有输出文件名替换
- Phase 0: RESEARCH_BRIEF.md → PROBLEM_BRIEF.md
- Constants 时间单位替换
- Checkpoint 提示语替换

#### Task 3.2: research-refine-pipeline → model-refine-pipeline

```
/adapt-skill "research-refine-pipeline → model-refine-pipeline"
```

#### Task 3.3: experiment-bridge → solve-bridge

```
/adapt-skill "experiment-bridge → solve-bridge"
```

#### Task 3.4: auto-review-loop → auto-optimize-loop

```
/adapt-skill "auto-review-loop → auto-optimize-loop"
```

改造要点（除了调用链，审稿 prompt 也要改）：
- 审稿人 → 数模评委
- review→fix→re-review → 评审→改模型→重新求解→再评审
- 评分标准替换

#### Task 3.5: paper-writing → paper-writing

```
/adapt-skill "paper-writing → paper-writing"
```

#### Task 3.6: auto-paper-improvement-loop → auto-paper-improvement-loop

```
/adapt-skill "auto-paper-improvement-loop → auto-paper-improvement-loop"
```

#### Task 3.7: research-pipeline → mathmodel-pipeline

```
/adapt-skill "research-pipeline → mathmodel-pipeline"
```

改造要点（总入口编排器）：
- 整条链路的所有 skill 名替换
- Workflow 1→1.5→2→3 的描述替换
- 删除 Workflow 4 (rebuttal) 相关内容

### 阶段四：新增 Skill

#### Task 4.1: 新建 data-preprocessing

**不调用 /adapt-skill（没有原始文件），直接创建。**

参考 skills/analyze-results/SKILL.md 的格式，创建 skills/data-preprocessing/SKILL.md。

功能：读取赛题数据 → 基本统计 → 缺失值处理 → 异常值检测 → EDA可视化 → 输出 DATA_REPORT.md + cleaned data。

用 `cat << 'HEREDOC'` 分段写入，确保 150+ 行。

#### Task 4.2: 新建 sensitivity-analysis

参考 skills/analyze-results/SKILL.md 格式。

功能：对模型参数做扰动 → 计算灵敏度指标 → 生成灵敏度图表 → 输出 SENSITIVITY_REPORT.md。

#### Task 4.3: 新建 model-validation

功能：交叉验证 → 残差分析 → 误差分析 → 稳定性测试 → 输出 VALIDATION_REPORT.md。

#### Task 4.4: 新建 problem-decomposer

功能：读取赛题 → 识别子问题 → 分析子问题间的依赖关系 → 建议求解顺序 → 输出 PROBLEM_DECOMPOSITION.md。

### 阶段五：模板和文档

#### Task 5.1: 创建 PROBLEM_BRIEF_TEMPLATE.md
#### Task 5.2: 创建数模论文 LaTeX 模板
#### Task 5.3: 创建 README.md

## Pipeline 执行逻辑

```python
# 伪代码：编排器的执行逻辑
tasks = [1.1, 2.1, 2.2, ..., 5.3]  # 上面列出的所有 Task

for task in tasks:
    # 检查是否已完成
    if SKIP_COMPLETED and task_already_done(task):
        print(f"⏭️ Task {task} 已完成，跳过")
        continue
    
    # 执行 Task
    print(f"🔧 开始 Task {task}")
    if task == 1.1:
        run_bash_init()
    elif task.startswith("4."):
        create_new_skill(task)
    else:
        run_adapt_skill(task)
    
    # 验证
    if not verify_task(task):
        if STOP_ON_FAILURE:
            print(f"❌ Task {task} 验证失败，停止")
            break
        else:
            print(f"⚠️ Task {task} 验证失败，跳过")
            continue
    
    # Checkpoint
    if not AUTO_CONTINUE:
        user_input = wait_for_user()
        if user_input == "stop":
            break
    
    print(f"✅ Task {task} 完成，进入下一个")
```

## Key Rules

- **大文件处理**：如果 Write 工具因文件过大失败，立即用 Bash (`cat << 'EOF' > file`) 分段写入。不要询问用户——直接执行。
- **一次一个 Task。** 不要并行执行多个 Task。
- **每个 Task 必须验证通过才能进入下一个。** 验证失败则停止（STOP_ON_FAILURE=true）或跳过。
- **调用 /adapt-skill 时，必须传递完整的改造要点。** 不要只说"改造 X 为 Y"——要告诉 /adapt-skill 具体改什么。
- **新建 skill（阶段四）不走 /adapt-skill**，直接用 bash 分段写入。
- **每完成一个 Task 就 commit。** 这样出问题可以 git revert 回退到上一个正确状态。
- **如果某个 skill 改造后行数严重不足（<70%），不要试图修补——回退到 .bak 重新来过。**

## Composing

本 skill 是开发阶段使用的，不是最终产品的一部分。构建完成后：

```
skills/ 目录下应该有 20+ 个改造完成的 SKILL.md
templates/ 目录下应该有数模论文模板
docs/ 目录下应该有使用文档

用户可以：
cp -r skills/* ~/.claude/skills/
然后在 Claude Code 中使用：
/mathmodel-pipeline "赛题描述" — data: data.csv
```

