当用户明确要求“推荐投稿期刊”“帮我的论文选 SCI 杂志”“这篇 manuscript 适合投哪些 journal”“期刊匹配/选刊/投稿建议”时必须使用。适用于用户提供全文、摘要、Markdown、LaTeX、PDF、Word 或混合材料的场景;本 skill 会基于 manuscript 与用户偏好,先用内置 `2023IF.xlsx` 做最小硬过滤生成候选池,再由宿主模型自主规划 Set1/Set2/Set3,并联网核验 scope / 质量 / 近 3 个月 PubMed 论文,最后输出 1 份按推荐度排序的 Markdown 选刊报告。⚠️ 不适用:用户只是想润色论文、只想翻译摘要、或只问某个单一期刊的官网信息而不需要系统选刊。
84%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Low
Low-risk findings worth noting
.bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/paper-select-journal/ 隐藏目录;用户若明确指定其他目录,才可覆盖默认值。3 的期刊;若确实保留低于 3 的例外,必须写明“为何它仍是领域内人类专家认可的稳妥选择”。.md、.txt、.tex、.pdf、.docx,也可混合提供。analysis/*.json 必须保留在当前 run 目录内;不要把 manuscript_profile.json、set2_scope_review.json、final_recommendations.json 指到 run 目录外。先初始化隐藏工作区:
python3 <skill_root>/scripts/init_workspace.py --project-root .脚本会创建 .bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/paper-select-journal/{yyyy-mm-dd-hh-mm}/,其中至少包含:
inputs/analysis/candidates/pubmed/reports/后续所有中间文件都必须留在该 run 目录内。
按用户请求和配置文件提供必要输入;缺失信息应明确列出并停止依赖该输入的步骤。
完整理解论文后,把结果写入 analysis/manuscript_profile.json。
templates/manuscript_profile.template.jsonreferences/manuscript-profile.md
最低字段:titleabstractkeywordsmanuscript_summary画像的作用是帮助 AI 理解稿件,而不是喂给固定打分公式。
如果用户偏好复杂,优先把偏好写成自然语言放进 target_journal_brief 或 notes,不要为了脚本凑很多硬编码线索。
如果确实需要保留低 IF 的人工例外期刊,只能作为后续人工补录候选,并且必须在最终报告里解释“为什么它虽然低于阈值,仍是领域内稳妥选择”。
2023IF.xlsx 做 Set1 候选池内置目录:assets/journal_catalog/2023IF.xlsx
运行:
python3 <skill_root>/scripts/shortlist_journals.py \
--workspace .bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/paper-select-journal/{yyyy-mm-dd-hh-mm} \
--profile .bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/paper-select-journal/{yyyy-mm-dd-hh-mm}/analysis/manuscript_profile.json产物:
candidates/set1_candidates.jsoncandidates/set1_candidates.md这里的脚本只做最小硬过滤:
不要把这一步输出误解为“已经按语义排好序的最终 shortlist”。 你必须读取该候选池,再结合 manuscript 自主规划真正值得进入 Set2 的期刊。
根据 candidates/set1_candidates.json 与 manuscript 画像,自主决定先核验哪些候选,并逐个联网核验:
优先使用:
把通过核验的期刊写入:
analysis/set2_scope_review.json模板:templates/scope_review.template.json
核验口径:references/journal-quality-checklist.md
运行:
python3 <skill_root>/scripts/fetch_pubmed_recent.py \
--workspace .bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/paper-select-journal/{yyyy-mm-dd-hh-mm} \
--profile .bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/paper-select-journal/{yyyy-mm-dd-hh-mm}/analysis/manuscript_profile.json \
--scope-review .bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/paper-select-journal/{yyyy-mm-dd-hh-mm}/analysis/set2_scope_review.json产物:
pubmed/recent_articles.jsonpubmed/recent_articles.md这里只提供原始证据,不负责打分或排序。脚本只做 API 调用、XML 解析和按日期整理。
你必须同时阅读:
analysis/manuscript_profile.jsonpubmed/recent_articles.json这里的“AI”指当前执行本 skill 的宿主模型本身:
也就是说,Step 4b 的规划、语义判断、Set3 去留决策和 set3_similarity_review.json 写入,都必须用当前工作环境已提供的 AI 算力原生完成。
逐个判断 Set2 期刊最近 3 个月论文与稿件在以下维度上的语义相关性:
执行时先快速浏览全部 Set2 近期论文形成比较框架,再逐刊做语义判断,最后统一决定 Set3 去留并写出可复核理由。 不要再把这一步退化成机械 token 打分或硬编码加权公式。
把结论写入:
analysis/set3_similarity_review.json模板:templates/set3_similarity_review.template.json
每个期刊至少要写:
journal_nameinclude_in_set3similarity_assessmentrelevant_articlesirrelevant_articles_countoverall_relevance_leveloverall_relevance_level 只允许:
highmediumlownone基于 analysis/set3_similarity_review.json,把最终最多 10 个期刊写入 analysis/final_recommendations.json。
templates/final_recommendations.template.jsonreferences/report-schema.md必须保留:
relevance运行:
python3 <skill_root>/scripts/render_report.py \
--workspace .bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/paper-select-journal/{yyyy-mm-dd-hh-mm} \
--final-json .bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/paper-select-journal/{yyyy-mm-dd-hh-mm}/analysis/final_recommendations.json最终输出:
reports/paper-select-journal-report.md如需 --output 覆盖默认文件名,也只能写到当前 run 目录内部,不能把最终 Markdown 报告写到隐藏工作区之外。
所有期刊写在同一个 Markdown 文件里
每个期刊使用 # 层级,下面按需用 ##、###
每个期刊都要写明:影响因子、中科院小类及分区、业内认可度、官方网站、推荐理由,以及最近 3 个月类似主题论文表格和 AI 相关性说明
scope 不匹配,再高 IF 也不要强推
有明显预警 / 垃圾期刊风险,直接淘汰
近 3 个月没有相似主题论文,不一定淘汰,但推荐度要下调
include_in_set3 为 false 的期刊,不要进入最终推荐
中科院分区无法可靠核验时,优先换成信息更透明的候选
用户未明确偏好时,自主选择最稳妥方案,不要把提问变成阻塞
<skill_root> 表示当前 skill 的真实安装目录。
不要假设用户当前工作目录里一定有 paper-select-journal/ 源码副本。
如果你已经处在 skill 根目录,也可以直接运行 python3 scripts/...。
references/manuscript-profile.md
references/journal-quality-checklist.md
references/report-schema.md
输出 Skill description 所承诺的交付物,并明确格式、路径和失败返回形式。
本 Skill 的新任务中间文件统一写入 ./.bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/{skill名}/input|output|log/。同一任务复用一个任务根目录;多 Skill 协作才创建 shared/。正式交付物不写入该目录,历史隐藏目录只允许显式兼容读取、迁移或清理。
完成后执行 Skill 已有的静态检查、脚本验证或人工复核,并记录通过标准。
保留错误证据和已完成产物;仅在输入、环境或外部依赖恢复后从最近的失败步骤重试。
遵守以下公共约束,并执行本 Skill 的专属边界。
./.bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/ 根目录;共享材料放入 shared/,Skill 专属材料放入该 Skill 的 input/、output/、log/。config.yaml:skill_info.version;公开 API、协议、目录或配置变更同步文档与 CHANGELOG.md。bensz-collect-bugs;先脱敏写入 ~/.bensz-skills/bugs/,当前任务不中断,只有用户明确要求才公开上报,禁止直接修改用户已安装的 Skill 源码。不得超出本 Skill description 和上方流程所声明的范围;不将未验证的信息伪装成确定结论。
huangwb8/ChineseResearchLaTeX
9f3332f
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.