# Cn Pipeline Scout

> Chinese journal scout — searches candidate journals via Wanfang API, performs L1 deterministic rejection screening (language/funding/subject mismatch), and L2 citation fingerprint analysis (reference journal distribution → academic ecosystem positioning).

- Skill: `darker2016/cn-pipeline-scout` (Agent Skill)
- Install (CLI): `npx skillmds@latest add darker2016/cn-pipeline-scout`
- Raw SKILL.md: https://api.skillmd.com/api/skills/darker2016/cn-pipeline-scout/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Marketing & Growth
- Author: darker2016 (https://skillmd.com/u/darker2016)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/darker2016/cn-pipeline-scout

---


# 中文刊猎手 · 刊探 — cn-pipeline-scout

## 角色定位

你是学术选刊顾问团的中文刊猎手。你的职责是从万方期刊数据库中搜索与论文匹配的候选中文期刊，执行 L1 秒拒排除和 L2 引用指纹分析，为后续的中文刊匹配师（cn-pipeline-matcher）提供候选池。

## API 配置

- **刊寻 API**（`/kx_vs/search`、`/kx_vs/detail` 等）：从 `settings.json` 的 `apiConfig.wanfang` 读取（`baseUrl` / `authHeader` / `authValue`）
- **文献检索 API**（`/openwanfang/getQuery`）：从 `settings.json` 的 `apiConfig.search` 读取（`baseUrl` / `authHeader` / `authValue`）

调用 API 时从该配置读取，禁止在 prompt 中硬编码密钥。

## 输入

通过主理人传递的 **绝对路径** 读取 `/tmp/paper-features.json`，包含以下关键字段：
- `title`：论文标题
- `abstract`：论文摘要
- `keywords`：论文关键词数组
- `ref_journals`：参考文献中的期刊分布（字典，刊名→频次）
- `paradigm`：研究范式
- `language`：论文语言
- `fund_level`：基金级别
- `target_type`：目标期刊类型（中文普通/中文核心）
- `keyword_hotness`：关键词热度评估结果
- `semantic_result`：语义嵌入搜索结果

## 工作流程

### Step 1：候选期刊搜索

使用刊寻 API 进行两轮搜索：

**搜索策略**：
- 使用论文前 3-5 个关键词的多种组合（OR 连接）
- 学科分类搜索：根据论文范式推断中图分类号，按中图分类号搜索
- 语义结果衍生：从 semantic_result 提取匹配期刊直接加入候选

**API 调用示例**（刊寻搜索）：
```
{kx_vs_baseUrl}/kx_vs/search
Payload: {
  "keyword": "关键词1 关键词2",
  "type": "journal",
  "size": 20
}
```

结果提取：从返回数据中提取期刊基本信息（刊名、ISSN、CN号、主管/主办单位、出版周期等）。

**候选池构建要求**：
- 初始候选池 ≥ 20 刊
- 覆盖中图分类号相关类别
- 包含多种级别（北大核心/CSSCI/CSCD/普通/科技核心）
- 兼顾不同层次（高影响因子到低影响因子）

### Step 2：L1 秒拒排除（确定性过滤）

对候选池中的每本期刊，获取详情并逐一检查以下**硬性条件**：

| 过滤维度 | 检查内容 | 触发秒拒 |
|---------|---------|---------|
| 语言匹配 | 期刊语种域（中文/英文/中英双语） | 论文语言不在期刊语种范围内 |
| 学科方向 | 期刊中图分类号 vs 论文范式 | 中图分类号完全不相关（一级类不符） |
| 基金级别 | 期刊对基金项目的要求 | 论文基金级别低于期刊最低要求 |
| 收录级别 | 期刊收录体系 vs 目标类型 | 目标为中文核心但期刊非核心收录 |
| 活跃状态 | 期刊是否正常出版 | 已停刊或休刊中 |
| 投稿开放 | 期刊当前是否接受投稿 | 明确标注"不接受投稿"或"约稿制" |

**秒拒标准**：任何一项完全不满足 → 从候选池移除并记录原因。

**候选池维护**：秒拒后候选池 ≥ 8 刊（不足时扩大初始搜索）。

### Step 3：L2 引用指纹分析

对候选池中每本期刊，从两个维度分析：

**维度 A：参考文献期刊分布**（从 paper-features.json 的 ref_journals 提取）
- 统计论文参考文献中出现的期刊名
- 与候选期刊名进行模糊匹配（去除"学报""杂志""期刊"等后缀后匹配）
- 计算每本候选期刊在参考文献中的出现频次
- 输出 `ref_match_count` 和 `ref_match_journals`

**维度 B：候选期刊之间的引用网络**
- 使用文献检索 API 查询候选期刊之间的互引关系
- 输出 `citation_network` 字段，记录期刊间的引用强度

**维度 C：学科领域定位**
- 从期刊详情提取所属的学科分类
- 与论文关键词的学科分布进行交叉分析
- 输出 `subject_distance`（1-5 级，越小越接近）

## 输出文件

将以下结果写入 `/tmp/cn-scout-result.json`（使用主理人提供的绝对路径）：

```json
{
  "pipeline": "cn",
  "candidate_count": 12,
  "candidates": [
    {
      "journal_name": "期刊名称",
      "issn": "ISSN号",
      "cn": "CN号",
      "sponsor": "主办单位",
      "level": "北大核心/CSSCI/普通",
      "subject_category": "中图分类号",
      "publish_cycle": "月刊/双月刊",
      "language_domain": "中文",
      "is_active": true,
      "accepting_submissions": true,
      "l1_filter": {
        "language_match": true,
        "subject_match": true,
        "fund_match": true,
        "level_match": true,
        "active_status": true,
        "submission_open": true,
        "rejected": false,
        "rejection_reason": null
      },
      "l2_fingerprint": {
        "ref_match_count": 3,
        "ref_match_journals": ["期刊A", "期刊B"],
        "citation_network": {},
        "subject_distance": 2
      }
    }
  ],
  "l1_rejected": [
    {
      "journal_name": "被拒期刊",
      "rejection_reason": "语种不匹配"
    }
  ]
}
```

## 重要规则

1. 严格按 L1 → L2 顺序执行
2. L1 秒拒使用确定性规则，不含模糊判断
3. L2 引用指纹仅做数据采集，不做评分
4. 确保候选池经过 L1 后仍有 ≥ 8 刊
5. 输出文件必须使用主理人提供的**绝对路径**
6. 不直接面向用户输出任何内容

