adjust-length
**作用**: 尝试通过排版微调或受控语义改写逼近目标页数。它是专家快捷入口;普通自然语言如“把正文压到 8 页,尽量不要改语义”也应能触发同类任务。
**作用**: 对当前 LaTeX 项目执行完整的视觉排版优化(VTO)闭环
> /plugin marketplace add OpenRaiser/PaperFit > /plugin install paperfit@paperfit-vto
How it fires
How this command gets triggered: by you, by Claude, or both.
/fix-layoutContext preview
What this command does when you run it.
**作用**: 对当前 LaTeX 项目执行完整的视觉排版优化(VTO)闭环
**作用**: 对当前 LaTeX 项目执行完整的视觉排版优化(VTO)闭环
**防呆约束**:
可执行脚本在 **`paperfit-cli` 包内**;在**论文项目根目录**执行,勿假设仓库里自带可运行的 `scripts/`:页图用 `paperfit render <pdf> --output data/pages`,其它用 `paperfit run scripts/<文件> [参数…]`;无全局命令时用 `npx paperfit-cli …` 或 `python3 "$(paperfit root)/scripts/…"`。
/fix-layout
也可以由普通自然语言触发,例如:
用 PaperFit 修复当前论文的排版问题 把这篇论文排到投稿状态,优先修视觉问题 把正文压到 9 页,尽量不要改正文含义
首选直接运行:
paperfit runtime --state data/state.json run-round main.tex --template <TEMPLATE> --target-pages <N>
若还未初始化,再先执行:
paperfit runtime --state data/state.json init-task main.tex --template <TEMPLATE> --target-pages <N>
如果要直接分析原始报告,应读取:
{
"page_count": 60,
"pages": [
{
"page_image": "data/pages/xxx.png",
"columns": {
"left": {"max_void_ratio": 0.0},
"right": {"max_void_ratio": 0.0}
},
"a5_candidates": []
}
]
}不要写:
data["by_page"]
除非你读的是 `data/state.json` 的 `cv_signals_summary`。
0. **画像(推荐)**:若用户尚未建立 `data/paperfit-portrait.yaml`,可在内部先执行画像构建或刷新;不要把这一步强制变成用户必须再次输入 `/paperfit` 的动作。若已存在画像,**每轮门禁结束或本轮 tex/pdf 更新后**执行 `paperfit run scripts/paperfit_portrait.py refresh` 刷新扫描项与 `state.task.portrait_*`。 1. 识别主 `.tex` 文件(`data/benchmarks/case/*.tex`) 2. 初始化或加载 `state.json`(优先使用 `paperfit runtime --state data/state.json init-task main.tex ...`;双栏论文补 `--column-type double`;若已由 `/paperfit` 写入栏型,以 `state.json` / 画像为准) 3. 每轮优先执行 `paperfit runtime --state data/state.json run-round main.tex --template <TEMPLATE> --target-pages <N>`,统一完成轮次推进、日志解析、crossrefs 提取、页图检查、缺陷摘要推导与 gatekeeper 回写;若需拆步排障,再退回 `start-round` / `mark-compile` / `mark-render` / `gatekeeper` 4. 若是**双栏任务**且本轮已生成页图,再执行 `detect_column_void` + `paperfit runtime --state data/state.json ingest-column-void data/reports/column_void_rN.json` 写入机检摘要 5. 规则引擎检测编译日志错误 6. 排版侦探基于 VTO 分类体系检测视觉缺陷(合并 `machine_signals` 与 VLM) 7. 代码外科医生执行修复 8. 重新编译 → 质量门禁验收(诊断报告用 `config/diagnostic_report.template.md`) 9. 迭代至 DONE 或达到最大轮次
若 Claude 内部工具报这类错误:
不要继续尝试内部任务工具,直接执行 shell 命令:
paperfit runtime --state data/state.json run-round main.tex --template <TEMPLATE> --target-pages <N>
如果缺少 `main.tex` / `template` / `target_pages`,先从 `data/paperfit-portrait.yaml` 或 `data/state.json` 读取,再继续。
Vision-in-the-Loop Academic Typesetting Agent System PaperFit 是面向 Claude Code、Codex、Cursor 的 LaTeX 论文排版 Agent System。你只需要在论文项目根目录描述目标,PaperFit 会自动完成编译、页图渲染、视觉诊断、源码修复与最终验收。 为什么需要 · 核心能力 · 效果展示 · 快速开始 · 安装 · 使用方法 · 工作流 · 架构
Repo: OpenRaiser/PaperFit
**作用**: 尝试通过排版微调或受控语义改写逼近目标页数。它是专家快捷入口;普通自然语言如“把正文压到 8 页,尽量不要改语义”也应能触发同类任务。
**作用**: 仅执行视觉检测,输出诊断报告,不修改源文件。它是专家快捷入口,对应的普通自然语言请求如“检查这篇论文的视觉排版问题”“先做诊断不要改源码”也应能触发同类任务。
**作用**: 将论文从原模板迁移至目标模板,自动处理图表尺寸、页数、宏兼容性等问题。它是专家快捷入口;普通自然语言如“把这篇论文迁移到 CVPR 模板”也应能触发同类任务。
**作用**: 读取当前状态、视觉重点和修复计划,给出本轮应该先处理什么;若用户明确指定优先顺序,可将该顺序写入 `next_actions` 供后续 `/fix-layout` 直接遵循。
**作用**: 恢复最近一次 PaperFit 自动写回前的备份版本,优先回滚主 `.tex`,必要时一并恢复 `data/state.json`。
**作用**: `/paperfit` 是 Claude Code 中的 PaperFit 主入口。用户可以直接用自然语言描述任务,例如排版分析、完整修复、模板迁移、长度调整、局部表格修复、视觉检查或状态查询。Agent 负责解析意图、识别主 `.tex`、判断是否需要画像、并自动进入对应的 PaperFit 子流程。