mcpField
P
ppw:cover-letter

ppw:cover-letter

github.com/lylll9436文档处理39076 次安装31 周前更新
代码仓库

关于 ppw:cover-letter

ppw:cover-letter 面向准备学术论文投稿的研究者,根据目标期刊模板和论文内容生成完整投稿信。若缺少期刊模板,它会拒绝使用通用表述代写。

主要功能

  1. 01按期刊范围撰写贡献说明
  2. 02提取论文标题与核心贡献
  3. 03生成数据与代码可用性部分
  4. 04生成利益冲突声明及作者联系信息
  5. 05缺少期刊模板时拒绝生成

适用场景

  1. 01起草 CEUS 投稿信
  2. 02根据论文内容生成完整投稿信
  3. 03准备作者联系方式和数据可用性声明

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/lylll9436/paper-polish-workflow-skill --skill ppw:cover-letter

安装后在 Claude Code 中输入/ppw:cover-letter确认已加载。

详细介绍

用途

此 Skill 通过加载目标期刊的模板,使贡献说明与期刊的范围和目标相契合;通过 Ask Strategy 收集通讯作者信息;并阅读论文(文件或粘贴的文本),提取论文标题、主要贡献和数据可用性信息,从而生成完整、可直接提交的学术投稿信。输出是一封包含所有四个必需内容块的完整信件:(1)贡献说明——明确对齐已加载模板中声明的期刊范围;(2)数据/代码可用性声明;(3)利益冲突声明;(4)通讯作者联系信息。如果未找到期刊模板,Skill 会立即拒绝——绝不会退而使用通用学术措辞,这与本项目中一贯采用的期刊感知模式一致。

触发条件

在用户请求以下内容时激活:

  • 为论文撰写、生成或起草投稿信
  • 写投稿信、生成 cover letter、帮我写投稿信

示例请求:

  • “为我投稿 CEUS 写一封投稿信”
  • “帮我写投稿信”
  • “为我的论文生成一封投稿信”
  • “写一封投稿到 CEUS 的 cover letter”
  • “帮我起草一封投稿信”
  • “帮我生成这篇论文的投稿信”

模式

模式默认行为
direct是单次生成投稿信;通过 Ask Strategy 一次性收集所有上下文
batch不支持——每封信都需要特定的论文上下文和作者信息

默认模式: direct。用户提供论文和期刊;Skill 收集任何缺失的信息,并一次性生成完整投稿信。

参考资料

必需(始终加载)

无。

叶节点提示(按条件加载)
文件加载时机
references/journals/ceus.md用户选择 CEUS 时;提供目标与范围,以及用于贡献对齐的范围关键词
加载规则
  • 指定期刊后,加载 references/journals/[journal].md。
  • 如果未找到模板:立即拒绝,并回复:“未找到 [X] 的期刊模板。可用模板:CEUS。”
  • 模板缺失时,不要使用通用表述继续处理。
  • 从已加载的模板中提取目标与范围部分——贡献说明必须直接提及该部分内容。

Ask Strategy

Skill 需要四项输入。如果触发请求或论文内容中已提供,则跳过相应问题。

  1. 目标期刊——必需;用于确定要加载的模板。如果未指定,则询问。
  2. 论文文件或文本——必需;用于提取论文标题和主要贡献。如果未提供,则询问文件路径或请用户粘贴内容。
  3. 通讯作者信息(姓名、电子邮箱、机构)——必需;如果未提供,则合并为一个问题询问。
  4. 数据/代码可用性——可选;数据集或代码是否公开可用?如果是,则询问代码仓库 URL。如果用户拒绝或不确定,默认为“数据未公开提供”。

规则:

  • 继续处理前,最多询问 3 个问题。
  • 如果可用,使用 Structured Interaction;否则改用纯文本提问。
  • 如果用户未提供通讯作者信息且拒绝提供:使用 [Corresponding Author Name]、[Email]、[Institution] 占位符。

工作流

步骤 0:工作流记忆检查
  • 读取 .planning/workflow-memory.json。如果文件不存在或为空,则跳到步骤 1。
  • 检查最近 1–2 条日志记录是否构成包含 ppw:cover-letter 的已识别模式,且该模式在日志中出现次数 >= 阈值。完整算法见 skill-conventions.md > Workflow Memory > Pattern Detection。
  • 如果发现模式,通过 AskUserQuestion 提出建议:
    • 问题:“检测到常用流程:[pattern](已出现 N 次)。是否直接以 direct 模式运行 ppw:cover-letter?”
    • 选项:“是,继续” / “否,正常继续”
  • 如果用户接受:将模式设为 direct,跳过 Ask Strategy 问题。
  • 如果用户拒绝或 AskUserQuestion 不可用:正常继续。
步骤 1:收集上下文
  • 对于缺失的信息(期刊、论文、作者详情、数据可用性),运行 Ask Strategy。
  • 加载 references/journals/[journal].md。如果未找到:拒绝并回复“未找到 [X] 的期刊模板。可用模板:CEUS。”不要继续。
  • 如果论文以文件形式提供:使用 Read 工具加载论文;提取标题和核心贡献。
  • 如果论文以粘贴文本形式提供:从粘贴内容中提取标题和核心贡献。
  • 从已加载的期刊模板中提取 Aims & Scope 部分(贡献陈述会直接参考该部分)。
  • **记录工作流:**将 {"skill": "ppw:cover-letter", "ts": "<ISO timestamp>"} 追加到 .planning/workflow-memory.json。如果文件不存在,则创建文件并写入 []。如果日志长度 >= 50,则删除最早的条目。
步骤 2:起草信件

使用以下锁定格式:

[Date]

The Editor-in-Chief
[Editor Name]
[Journal Name]

Dear [Editor Name],

We submit our manuscript entitled "[Paper Title]" for consideration in [Journal Name].

**Contribution Statement**
[1–2 sentences explicitly referencing journal's stated scope from loaded template]

**Data and Code Availability**
[Repository URLs, or "Data are not publicly available due to [reason]."]

**Conflict of Interest**
The authors declare no conflict of interest.

**Corresponding Author**
[Name]
[Email]
[Institution]

Sincerely,
[Authors]

**贡献陈述规则:**撰写 1–2 句,明确引用期刊模板中所述的期刊范围和目标。使用针对具体期刊的表述:“本文探讨了 [X],这与 [Journal] 关注 [模板中的范围表述] 直接契合。”不要使用泛泛的表述(“本文推动了……领域的发展”)。

**数据/代码部分:**如果提供了仓库 URL,则列出这些 URL;否则写明“由于 [给出的原因;若未提供原因,则省略原因从句],数据未公开。”

**利益冲突:**始终使用标准声明“The authors declare no conflict of interest.”

**联系信息部分:**使用提供的作者详情;如果未提供,则使用方括号占位符。

步骤 3:输出
  • **文件输入:**使用 Write 工具写入 {input_filename_without_ext}_cover_letter.md。
  • **粘贴文本输入:**在对话中显示完整信件。
  • 向用户确认输出位置。

输出约定

输出格式条件
cover_letter_md位于 {input_filename_without_ext}_cover_letter.md 的 Markdown 文件文件输入
cover_letter_text在对话中显示完整信件粘贴文本输入或 Write 工具失败

必需内容部分(每封信都必须包含以下四项):

**Contribution Statement**    ← references journal scope explicitly
**Data and Code Availability** ← links or "not publicly available"
**Conflict of Interest**       ← standard declaration
**Corresponding Author**       ← name, email, institution

注意:贡献陈述必须明确引用期刊范围,不得使用泛泛的学术赞誉。

边缘情况

情况处理方式
未找到期刊模板拒绝:“未找到 [X] 的期刊模板。可用模板:CEUS。”不要使用泛泛的表述生成信件。
论文文件不存在或无法读取请用户改为粘贴论文文本或摘要
用户未提供联系信息且拒绝补充使用 [Corresponding Author Name]、[Email]、[Institution] 占位符;提醒用户提交前必须填写
数据可用性未知使用“数据可用性将在修订阶段确认。”
列出了多位通信作者询问哪位是通信作者;联系信息部分只填写一位
模板中的 Aims & Scope 部分内容较少使用模板中所有可用的范围表述;注明贡献契合度可能仅为近似判断

后备方案

情况后备方案
无法进行结构化交互按顺序以纯文本问题询问期刊名称和作者详情
Read 工具无法读取论文文件请用户粘贴摘要或关键贡献句
Write 工具失败在对话中显示完整信件;建议用户复制到 .md 文件
缺少 references/journals/ceus.md使用期刊模板缺失消息拒绝;没有模板时不要生成信件

示例

调用:“为我投稿 CEUS 撰写一封投稿信”(附带文件 my_paper.tex)

  1. 技能加载 references/journals/ceus.md,提取宗旨与范围。
  2. 技能读取 my_paper.tex,提取标题和主要贡献。
  3. 技能询问:“请提供您的姓名、邮箱和所属机构,以便填写通信信息。”
  4. 技能询问:“您的数据或代码是否公开?如果是,请提供代码仓库 URL。”
  5. 技能生成投稿信并写入 my_paper_cover_letter.md。

输出的前 8 行:

March 2026

The Editor-in-Chief
[Editor Name]
Computers, Environment and Urban Systems

Dear [Editor Name],

We submit our manuscript entitled "Spatiotemporal Analysis of Urban Heat Islands Using Remote
Sensing" for consideration in Computers, Environment and Urban Systems.

**Contribution Statement**
This paper addresses urban heat island detection and mitigation across metropolitan areas, which
aligns directly with CEUS's focus on computational approaches to understanding urban systems and
the built environment.

技能:cover-letter-skill 规范:references/skill-conventions.md

评论

支持 Markdown