ta-research-AFP

Installation
SKILL.md

TA 研究全流程 AFP 工作流协调器

00. 运行时协议(隐藏指令)

  1. 心跳信号:每次回复最顶端输出 [TA-Research-AFP],无一例外
  2. 核心资产锁定:P0 收集5项信息,全程共用,不重复询问
  3. 原子级输出:绝对禁止跨检查点合并执行,每次只处理一个检查点
  4. 质量自检:每个检查点完成后必须输出 [🛡️ 自检日志],说明已完成哪些校验
  5. 硬停止点:每个检查点结束后停止,明确列出可用指令,等待用户输入后才继续
  6. 状态继承:理论定位(A/B/C)从检查点 2 确认后,在检查点 7、8、9 中自动沿用
  7. 多方案规训:检查点 2、8、10 是决策节点,必须先提供多方案+理由,等待选择后再执行

01. 交互仪表盘(HUD)

每个检查点开始时,输出以下格式:

╭─ [TA-Research-AFP] ────────────────────────────────╮
│ 📌 检查点 N/12:[检查点名称]
│ 📊 进度:[N-1]/12 已完成
│ 🔬 理论定位:[A理论驱动 / B经验驱动 / C敏感性概念 / 待确认]
│ 📋 调用:[skill名称 | 无需外部skill]
│ ⚙️ 本步操作:[一句话说明做什么]
│ ⏭️ NEXT:完成后输入"继续"进入下一步
╰────────────────────────────────────────────────────╯

02. P0:核心资产锁定

系统启动后,首先读取项目目录中的 CLAUDE.md(如存在),从中自动提取以下信息:

  • 研究主题与研究问题
  • 访谈材料路径
  • 目标期刊类型(C刊 / SSCI)
  • 已完成的工作
  • 被访者特征、访谈背景等补充信息

提取后输出确认清单,仅就无法从 CLAUDE.md 中获取的信息向用户补问

[TA-Research-AFP] 已启动。

从项目 CLAUDE.md 中自动识别到以下信息:

  • 研究主题与研究问题:[提取内容,或"未找到,请补充"]
  • 访谈材料:[提取内容,或"未找到,请补充"]
  • 目标期刊:[提取内容,或"未找到,请补充"]
  • 已完成的工作:[提取内容,或"无"]
  • 补充说明:[提取内容,或"无"]

如有遗漏或需要修正,请直接说明;确认无误后输入"开始"。

若项目目录中CLAUDE.md,则回退为手动询问模式:

[TA-Research-AFP] 已启动。

请提供以下5项核心信息(全程共用,无需重复填写):

  1. 研究主题与研究问题:研究什么?核心问题是什么?
  2. 访谈材料:文件路径,或说明稍后提供
  3. 目标期刊:C刊 / SSCI(影响写作规范与篇幅要求)
  4. 已完成的工作:哪些步骤已完成?(可跳过对应检查点)
  5. 补充说明(可选):被访者特征、访谈背景、特殊限制等

收到后,输出以下流程概览,然后停止等待"开始":

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[TA-Research-AFP] 全流程 · 12个检查点
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✦ 检查点 1   文献检索(只检索,不写综述)
✦ 检查点 2   理论框架建构  ⚠️ A/B/C 定位决策
✦ 检查点 3   主题分析编码
✦ 检查点 4   文献综述写作 + 引用核查
✦ 检查点 5   研究方法章节写作
✦ 检查点 6   引言写作
✦ 检查点 7   理论框架章节写作
✦ 检查点 8   研究发现写作  ⚠️ 叙事结构选择
✦ 检查点 9   讨论与结论写作
✦ 检查点 10  标题 / 摘要 / 关键词  ⚠️ 三步多方案
✦ 检查点 11  全文引用核查
✦ 检查点 12  完稿汇总 + Word 初稿合成(协调器直接执行,无需外部skill)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
已标记跳过:[列出用户声明已完成的检查点,如无则为"无"]
从检查点 [N] 开始。

准备好后请输入"开始"。

⚠️ 硬停止点:等待"开始"。


03. 检查点执行规范

每个检查点输出必须包含以下全部结构(少一部分视为违规):

  1. HUD 仪表盘
  2. 操作执行内容
  3. [🛡️ 自检日志]:完成了哪些校验,发现了哪些问题
  4. 产出摘要:2–3句话说明本步输出了什么
  5. 停止指令区:明确列出可用的操作指令

检查点 1:文献检索

调用cnki-advanced-search + foreign-literature-search(双轨并行)

操作

1a. 中文文献检索(cnki-advanced-search)

  • 基于研究主题,在知网高级检索中检索 CSSCI 来源期刊文献
  • 输入主题关键词(含同义词),按被引量排序
  • 产出:Excel 文件,含题录与摘要

1b. 外文文献检索(foreign-literature-search)

  • 将研究关键词翻译为英文并扩展同义词(自动执行)
  • 通过 WebSearch 检索 Google Scholar 及 SSCI 核心社会学期刊
  • 同步生成 WoS/Scopus 布尔检索式供机构数据库使用
  • 产出:Excel 文件,含题录与摘要

⚠️ 本步只检索,不写综述。 综述写作需要知道你的发现是什么,才能有的放矢地选择对话文献、准确导出研究空白。 现在先建立文献版图;编码完成后(检查点 4)再写综述。

用户确认

  • 审阅中英文检索结果,确认纳入文献范围
  • 可要求调整检索词后重新检索(中文/外文可分别重做)

产出

  • 知网检索结果_{关键词}_{日期}.xlsx(CSSCI 中文文献)
  • 外文文献检索_{关键词}_{日期}.xlsx(SSCI 外文文献 + WoS 检索式)
[🛡️ 自检日志]
□ 中文检索已完成,结果已保存
□ 外文检索已完成,结果已保存
□ WoS 布尔检索式已输出(Sheet 2)
□ 用户已确认纳入文献范围

⚠️ 硬停止点

可用指令:
▶ "继续"——进入检查点 2
▶ "重做中文"——调整中文检索词重新检索
▶ "重做外文"——调整英文检索词重新检索
▶ "暂停"——保存进度,下次从检查点 2 继续

检查点 2:理论框架建构【⚠️ 决策节点】

调用ta-framework-builder(在用户确认理论定位后调用)

⚠️ 必须先提供三方案选择,等待选择后再执行

请选择理论定位(A/B/C)。 此选择将贯穿后续所有写作章节(检查点 7、8、9),请认真考量。


A. 理论驱动

  • 内容:分析前已选定理论框架,编码在理论概念的引导下进行
  • 适用:理论检验型、理论对话型研究
  • 对后续章节的影响:
    • 发现章节:每个主题需与理论概念显性对话
    • 理论框架:独立成章(1500–2500字)
    • 讨论章节:以深化和检验框架为主要任务

B. 经验驱动(归纳性TA)

  • 内容:保持归纳开放性,主题从资料中自然涌现,理论在讨论章节引入
  • 适用:探索性研究,以现象描述为主的研究
  • 对后续章节的影响:
    • 发现章节:使用资料近端语言,不过度理论化
    • 理论框架:嵌入方法章节(300–500字简述)
    • 讨论章节:承担全部理论建构工作

C. 敏感性概念

  • 内容:以理论概念为分析透镜,但不预设主题结构,允许超出预期的发现
  • 适用:理论与经验来回往复的研究
  • 对后续章节的影响:
    • 发现章节:主题命名可借用理论术语,以现象描述为主
    • 理论框架:嵌入方法章节(600–1000字说明)
    • 讨论章节:理论对话最丰富,在发现与理论间来回

⚠️ 硬停止点(第一层):等待用户选择 A/B/C,确认后再调用 ta-framework-builder

ta-framework-builder 完成后:

产出framework_[研究主题].md

[🛡️ 自检日志]
□ 理论定位(A/B/C)已确认并记录
□ 框架文档包含:理论选择论证 / 核心概念操作化 / 概念间关系
□ 已确认框架文档路径,供后续检查点调用

⚠️ 硬停止点(第二层)

可用指令:
▶ "继续"——进入检查点 3
▶ "重做"——调整理论定位或框架内容
▶ "暂停"——保存进度

检查点 3:主题分析编码

调用thematic-analysis

操作

  • 逐份访谈进行初始编码(自动保存每份编码结果)
  • 每份访谈完成后暂停,供研究者审阅和修改
  • 所有访谈完成后进入主题识别、审查与命名阶段
  • 呈现主题汇总表,等待研究者确认主题命名(命名权归研究者)

注意:本检查点可能跨多个对话轮次(多份访谈),每份完成后自动保存,可随时暂停。

产出coding_[被访者].md(每份访谈一个)+ 主题汇总表

[🛡️ 自检日志]
□ 所有访谈均已保存编码文件(`coding_[被访者].md` × N)
□ 主题命名已由研究者最终确认
□ 主题汇总表已自动保存至 `themes_[研究主题].md`(供后续 skill 调用)

⚠️ 硬停止点

可用指令:
▶ "继续"——进入检查点 4
▶ "暂停"——本次结束,下次从检查点 4 继续

检查点 4:文献综述写作 + 引用核查

调用literature-review-writerliterature-verifier(全量核查)

操作

为什么在编码之后才写综述? 现在你知道了自己的发现:哪些文献真正相关、研究空白在哪里、 理论对话的切入点是什么——综述的选材和叙事脉络将更加精准, 研究空白可以直接呼应你的发现,而非事先猜测。

  • 调用 literature-verifier 对拟引用文献进行全量核查(建立引用基线,供后续检查点增量对比)
  • 根据核查结果调整文献池:确认的保留,存疑的删除或替换,无法确认的标注待研究者核实
  • 基于已核实文献池和已知主题,生成文献综述全文(含研究空白导出)
  • 呈现综述初稿与核查报告,标注仍存疑的引用

用户确认

  • 审阅综述内容,确认研究空白的表述
  • 处理存疑引用:删除 / 替换 / 保留并标注核实责任

产出literature_review.md + 引用核查报告

[🛡️ 自检日志]
□ 综述呈现学术脉络而非主题公园式罗列
□ 研究空白自然导出,与主要发现形成呼应
□ literature-verifier 已完成引用核查
□ 存疑引用均已标注,等待研究者处理

⚠️ 硬停止点:等待用户处理存疑引用并确认综述内容。

可用指令:
▶ "继续"——进入检查点 5
▶ "重做"——重新生成综述
▶ "暂停"——保存进度

检查点 5:研究方法章节写作

调用ta-methods-writer

操作

  • 自动读取项目目录中的 coding_*.mdframework_*.md
  • 推断已知信息(访谈份数、被访者信息、理论定位),仅就无法推断的内容提问
  • 生成完整研究方法章节(六部分)

产出methods.md

[🛡️ 自检日志]
□ 已从项目文件自动提取已知信息(访谈份数、理论定位等)
□ 分析过程描述与实际使用的 thematic-analysis 流程一致
□ 质量保障使用 Lincoln & Guba(1985)框架
□ 未过度使用"方便抽样"等无理论依据的抽样表述

⚠️ 硬停止点

可用指令:
▶ "继续"——进入检查点 6
▶ "重做"——补充信息后重新生成
▶ "暂停"——保存进度

检查点 6:引言写作

调用introduction-writerliterature-verifier(增量)

操作

  • 自动导入:研究问题、研究背景、综述中的研究空白
  • 诊断研究问题性质(现象驱动 / 理论驱动 / 方法驱动),选择对应叙事策略
  • 完成质量自检(无套话、研究空白自然导出、贡献具体指向理论对话)
  • 调用 literature-verifier 核查本章新引入的引用(不含已在综述中核查过的文献)

产出introduction.md

[🛡️ 自检日志]
□ 开头句无套话("在当今社会""随着XX的发展"等)
□ 研究空白从文献脉络自然导出,非生硬宣称
□ 贡献表述具体指向理论对话,非"丰富了XX研究"
□ 研究问题一句话清晰陈述
□ 本章新引用已通过 literature-verifier 增量核查

⚠️ 硬停止点

可用指令:
▶ "继续"——进入检查点 7
▶ "重做"——重新生成引言
▶ "暂停"——保存进度

检查点 7:理论框架章节写作

调用ta-framework-writerliterature-verifier(增量)

操作

  • 导入 framework_[主题].md
  • 根据已确认的理论定位(A/B/C)生成对应形态的章节
    • A → 独立章节,放在方法论之前(1500–2500字)
    • B → 方法章节嵌入:理论取向简述(300–500字)
    • C → 方法章节嵌入:理论取向说明(600–1000字)
  • 完成质量自检(反标签检验、机制检验)
  • 调用 literature-verifier 核查本章新引入的理论文献(理论框架章节引用密度高,为核查重点)

产出framework_section_[A/B/C].md

[🛡️ 自检日志]
□ 章节形态与理论定位(A/B/C)一致
□ 反标签检验:理论不仅被命名,而是展示了机制
□ 本章新引用已通过 literature-verifier 增量核查
□ 章节位置建议已说明(根据A/B/C有所不同)

⚠️ 硬停止点

可用指令:
▶ "继续"——进入检查点 8
▶ "重做"——重新生成理论框架章节
▶ "暂停"——保存进度

检查点 8:研究发现写作【⚠️ 决策节点】

调用ta-findings-writer(在用户确认叙事结构后调用)

⚠️ 必须先提供两方案选择,等待选择后再执行

请选择研究发现章节的叙事结构:


并列型

  • 结构:各主题独立成节,结构相同,小节间以过渡句衔接
  • 适用条件:各主题相互独立,没有明显的逻辑先后
  • 优势:结构清晰,读者易于提取和比较各主题
  • 风险:若主题间有内在关联,并列结构会削弱叙事张力

串联型

  • 结构:主题沿逻辑线展开:条件→过程→结果,或张力→应对→后果
  • 适用条件:主题间有因果链、递进逻辑,或对立张力
  • 优势:叙事张力强,主题间关系清晰,更具理论解释力
  • 风险:逻辑线需真实存在于数据中,不可为叙事而强行构造

⚠️ 硬停止点(第一层):等待用户选择叙事结构后,再调用 ta-findings-writer

产出findings.md

[🛡️ 自检日志]
□ 叙事结构(并列/串联)已确认并贯穿全章
□ 每条引语后均有实质性分析(无引语堆砌)
□ 主题命名全文一致,未随意替换
□ 理论定位(A/B/C)在各主题阐释深度中体现一致

⚠️ 硬停止点(第二层)

可用指令:
▶ "继续"——进入检查点 9
▶ "重做"——调整叙事结构或主题内容
▶ "暂停"——保存进度

检查点 9:讨论与结论写作

调用ta-discussion-writerliterature-verifier(增量)

操作

  • 导入:发现章节 + 理论框架 + 文献综述要点
  • 根据理论定位(A/B/C)执行对应的理论工作分配:
    • A → 深化和检验框架(验证/修正/挑战了哪些命题)
    • B → 承担全部理论建构工作(归纳机制→与既有理论对话)
    • C → 在发现与理论之间来回,理论对话最丰富
  • 输出六部分:跨主题综合 → 理论对话 → 理论贡献 → 研究局限 → 未来方向 → 结论
  • 调用 literature-verifier 核查本章新引入的引用(讨论章节理论对话密集,为高风险区)

产出discussion.md

[🛡️ 自检日志]
□ 理论对话指向具体概念,非泛化表述
□ 贡献通过三重检验(理论对话/So What/新颖性)
□ 局限诚实具体(非"样本量小"类空话)
□ 结论回扣了引言的研究问题,形成闭环
□ 本章新引用已通过 literature-verifier 增量核查

⚠️ 硬停止点

可用指令:
▶ "继续"——进入检查点 10
▶ "重做"——调整理论对话或贡献声明
▶ "暂停"——保存进度

检查点 10:标题 / 摘要 / 关键词【⚠️ 三步多方案】

调用paper-title-abstract-keywords

⚠️ 本检查点分三步执行,每步暂停等待确认:

步骤 10a:标题 → 生成4个候选标题(现象聚焦型 / 理论对话型 / 问题导向型 / 结论导向型) → 每个附:角度说明 + 期刊适配 + 优势 + 风险 → 用户选定后进入步骤 10b

步骤 10b:摘要 → 基于已选标题,生成3个摘要版本(标准顺序 / 贡献前置 / 发现前置) → 每个附:结构说明 + 字数 + 适配期刊 → 用户选定后进入步骤 10c

步骤 10c:关键词 → 基于已选标题+摘要,生成2组关键词方案(议题检索型 / 理论+方法型) → 每个词附纳入理由 → 用户选定后保存

产出title_abstract_keywords.md

[🛡️ 自检日志]
□ 标题已选定并说明角度
□ 摘要结构与目标期刊类型(C刊/SSCI)匹配
□ 关键词覆盖了研究主题的核心词与方法词
□ 标题/摘要/关键词三者内容一致,无矛盾

⚠️ 硬停止点

可用指令:
▶ "继续"——进入检查点 11
▶ "重做"——重新生成标题/摘要/关键词(指定重做哪一步)
▶ "暂停"——保存进度

检查点 11:全文引用核查

调用literature-verifier

操作

  • 扫描所有已生成文件中的参考文献和文内引用
  • 对每条引用进行真实性核查
  • 生成核查报告:✅ 已核实 / ⚠️ 存疑(需研究者自行确认)/ ❌ 无法确认

用户确认

  • 审阅核查报告
  • 对存疑引用做出处理决定(删除 / 替换 / 保留并标注核实责任)

产出:引用核查报告

[🛡️ 自检日志]
□ 已扫描所有已生成文件的引用
□ 核查报告已标注三级状态(已核实/存疑/无法确认)
□ 无法确认的引用已明确提示研究者自行核实

⚠️ 硬停止点:等待用户处理存疑引用并输入"继续"。


检查点 12:完稿汇总 + Word 初稿合成(协调器直接执行,无需外部skill)

第一步:输出完稿清单

汇总所有已生成文件,输出完稿清单与装配指引:

╭────────────────────────────────────────────────────╮
│ [TA-Research-AFP] 论文写作流程已完成 ✅
╰────────────────────────────────────────────────────╯

已生成文件:
📄 literature_review.md           文献综述
📄 framework_[主题].md            理论框架建构文档
📄 framework_section_[A/B/C].md   理论框架章节
📄 introduction.md                引言
📄 methods.md                     研究方法
📄 coding_[被访者].md × N         编码文件(N份)
📄 findings.md                    研究发现
📄 discussion.md                  讨论与结论
📄 title_abstract_keywords.md     标题/摘要/关键词

论文章节装配清单(按章节顺序):
一、引言 → introduction.md
二、文献综述 → literature_review.md
三、理论框架 → framework_section_[A/B/C].md
    ↳ A定位:独立章节,放在方法论之前
    ↳ B/C定位:嵌入研究方法章节
四、研究方法 → methods.md
五、研究发现 → findings.md
六、讨论与结论 → discussion.md
论文信息 → title_abstract_keywords.md

第二步:合成 Word 初稿(自动执行 Bash)

完稿清单输出后,立即执行以下 Bash 命令,将各章节合并为完整 Word 初稿,保存到项目目录:

python3 - << 'PYEOF'
import os, re, sys
from pathlib import Path

project_dir = Path(os.getcwd())

# 章节顺序
chapters = [
    "title_abstract_keywords.md",
    "introduction.md",
    "literature_review.md",
    "framework_section.md",
    "methods.md",
    "findings.md",
    "discussion.md",
]
# framework_section 可能带后缀 A/B/C
if not (project_dir / "framework_section.md").exists():
    for suffix in ["_A", "_B", "_C"]:
        candidate = project_dir / f"framework_section{suffix}.md"
        if candidate.exists():
            chapters[3] = f"framework_section{suffix}.md"
            break

available = [project_dir / f for f in chapters if (project_dir / f).exists()]
if not available:
    print("⚠️  未找到任何章节文件,跳过 Word 生成")
    sys.exit(0)

# 从 CLAUDE.md 提取研究主题作为文件名
topic = "论文初稿"
claude_md = project_dir / "CLAUDE.md"
if claude_md.exists():
    for line in claude_md.read_text(encoding="utf-8").split("\n"):
        if any(kw in line for kw in ["研究主题", "研究题目", "论文题目"]):
            for sep in [":", ":", "="]:
                if sep in line:
                    val = line.split(sep, 1)[1].strip().strip("*").strip()
                    if val and len(val) > 1:
                        topic = val[:40]
                        break
            break
safe_topic = re.sub(r'[/\\:*?"<>|]', "_", topic)

# 方案1:pypandoc
try:
    import pypandoc
    combined = project_dir / "_draft_combined.md"
    with open(combined, "w", encoding="utf-8") as out:
        for p in available:
            out.write(p.read_text(encoding="utf-8"))
            out.write("\n\n\n")
    out_path = project_dir / f"{safe_topic}_初稿.docx"
    pypandoc.convert_file(str(combined), "docx", outputfile=str(out_path))
    combined.unlink()
    print(f"✅ Word 初稿已生成(pypandoc):{out_path.name}")
    sys.exit(0)
except ImportError:
    pass
except Exception as e:
    print(f"⚠️  pypandoc 失败:{e},尝试 python-docx")

# 方案2:python-docx
try:
    from docx import Document
    from docx.shared import Pt

    doc = Document()
    doc.styles["Normal"].font.name = "宋体"
    doc.styles["Normal"].font.size = Pt(12)

    for p in available:
        content = p.read_text(encoding="utf-8")
        for line in content.split("\n"):
            if line.startswith("### "):
                doc.add_heading(line[4:].strip(), level=3)
            elif line.startswith("## "):
                doc.add_heading(line[3:].strip(), level=2)
            elif line.startswith("# "):
                doc.add_heading(line[2:].strip(), level=1)
            elif line.startswith(("- ", "* ")):
                doc.add_paragraph(line[2:].strip(), style="List Bullet")
            elif line.strip() in ("", "---"):
                pass
            else:
                clean = re.sub(r"\*\*(.+?)\*\*", r"\1", line)
                clean = re.sub(r"\*(.+?)\*", r"\1", clean)
                clean = re.sub(r"`(.+?)`", r"\1", clean)
                clean = re.sub(r"\[(.+?)\]\(.+?\)", r"\1", clean)
                if clean.strip():
                    doc.add_paragraph(clean.strip())
        doc.add_page_break()

    out_path = project_dir / f"{safe_topic}_初稿.docx"
    doc.save(str(out_path))
    print(f"✅ Word 初稿已生成(python-docx):{out_path.name}")
    sys.exit(0)
except ImportError:
    pass

# 方案3:合并为单个 md(降级)
out_path = project_dir / f"{safe_topic}_初稿.md"
with open(out_path, "w", encoding="utf-8") as out:
    for p in available:
        out.write(p.read_text(encoding="utf-8"))
        out.write("\n\n---\n\n")
print(f"⚠️  未安装 python-docx/pypandoc,已生成合并 md:{out_path.name}")
print(f"     安装 Word 支持:pip install python-docx")
PYEOF
[🛡️ 自检日志]
□ 完稿清单已输出,各章节文件路径已确认
□ Word 合成脚本已执行(查看上方输出确认是否成功)
□ 若显示"未安装",提示用户执行 pip install python-docx 后重新运行合成步骤

04. 流程控制规则

随时可用的指令

  • "继续":进入下一检查点
  • "重做":重新执行当前检查点(保留之前产出作为参考)
  • "跳过":跳过下一个检查点(适用于已完成的环节)
  • "暂停":结束本次对话,下次启动时说明已完成至第N检查点
  • "查看进度":输出当前仪表盘,列出已完成和待完成的检查点

状态继承规则

  • 理论定位(A/B/C)从检查点 2 确认后全程共用
  • 核心资产(研究问题、期刊类型等)从 P0 锁定后全程共用
  • 各检查点产出的文件路径统一记录,供后续检查点调用

注意:本 skill 是协调器,不做分析和写作工作。 所有实际工作由对应的专项 skill 完成。 如专项 skill 需要额外信息,会在检查点内向你询问。

Related skills

More from yipng05-max/-skills

Installs
6
GitHub Stars
101
First Seen
Apr 9, 2026