maxine-1520/openair_proposal/write-proposal
Claude Code and agent skill by maxine-1520/openair_proposal
- community
Checking that the SKILL.md file is still in the repository.
科研申报书全流程撰写编排skill。当用户要求撰写申报书、申请书、项目申报、开题报告、proposal writing,或提到"帮我写申报书""从零开始写申报书""编排申报书各部分"等需求时触发。此skill不直接撰写内容,而是编排9个section-level skill的执行顺序、管理依赖关系、协调迭代修订,是申报书撰写的总指挥。即使用户只是说"开始写申报书"而没有指定具体section,也应使用此skill来规划整体流程。当9个子skill中的任何一个完成撰写后,也会回调本skill来更新状态和日志。
Install
npx vskill@latest install maxine-1520/openair_proposal/write-proposalSKILL.md
科研申报书全流程撰写编排
这个skill做什么
编排科研申报书各部分的撰写顺序,管理section之间的依赖关系,协调迭代修订。不直接撰写内容,而是作为总指挥调度以下9个section-level skill:
| 序号 | Skill名称 | 输出文件 | 对应section | |
|---|---|---|---|---|
| S1 | write-research-purpose | 1-研究目的与意义.md | 立项依据-研究目的与意义 | |
| S2 | write-literature-review | 2-国内外研究现状.md | 立项依据-国内外研究现状分析和发展趋势 | |
| S3 | write-application-prospects | 3-应用前景与学术价值.md | 立项依据-应用前景和学术价值+行业企业实际问题 | |
| S4 | write-references | 4-参考文献.md | 立项依据-参考文献(文献调研) | |
| S5 | write-research-foundation | 5-研究基础与条件.md | 现有研究基础、条件、手段以及指导教师情况 | |
| S6 | write-research-objectives | 6-研究目标与内容.md | 研究方案-研究目标、研究内容和拟解决的关键问题 | |
| S7 | write-research-methods | 7-研究方法.md | 研究方案-拟采取的研究方法 | |
| S8 | write-feasibility | 8-可行性分析.md | 研究方案-可行性分析 | |
| S9 | write-innovation-plan | 9-创新点与计划.md | 研究方案-特色创新点+计划+预期成果 |
另有 write-key-problems 可与 S6 协同使用,提供关键问题部分的深度论证。
两种调用入口
本skill有两种被调用的方式,行为不同:
入口A:用户直接调用
用户通过对话触发(如"开始写申报书""继续写申报书"等)。
执行流程:
- 读取
<output_path>/proposal-state.json,如不存在则进入初始化流程 - 读取
<output_path>/proposal-log.md,如不存在则创建 - 向用户展示当前状态和进度
- 根据当前Phase,建议下一步操作
- 按用户确认的方向推进
入口B:子skill回调
某个子skill(S1-S9)完成撰写后回调本skill。
执行流程:
- 接收子skill传入的完成信息(section编号、完成状态、工作摘要)
- 更新
<output_path>/proposal-state.json中对应section的状态 - 向
<output_path>/proposal-log.md追加一条日志记录 - 基于依赖关系,向用户给出下一步建议(继续迭代当前阶段 or 推进到下一个阶段)
输出路径与文件管理
初始化:确认输出路径
首次调用时(或 proposal-state.json 不存在时),必须向用户确认输出路径:
确认后,在输出路径下创建以下结构:
子skill的输出规范
每个子skill完成撰写后,必须将内容写入 <output_path>/<对应文件名>.md。文件写入后才算该section完成。
状态管理
状态文件:proposal-state.json
状态值说明
| 状态值 | 含义 | |
|---|---|---|
not_started | 尚未开始撰写 | |
in_progress | 正在撰写中 | |
draft_done | 初稿完成,已写入输出文件 | |
revised | 经过修订,非首次撰写 | |
finalized | 已定稿,不再修改 |
Phase 与 section 的对应
| Phase | 涉及section | Phase完成条件 | |
|---|---|---|---|
| 0 | S4 | S4至少 draft_done | |
| 1 | S2, S1, S4 | S1和S2至少 draft_done | |
| 2 | S3, S4 | S3至少 draft_done | |
| 3 | S6 | S6至少 draft_done | |
| 4 | S7, S4 | S7至少 draft_done | |
| 5 | S9, S8, S5 | S5/S8/S9至少 draft_done | |
| 6 | 全部 | 全部section finalized |
状态更新规则
子skill回调时,按以下规则更新状态:
- 将对应section的
status更新为传入的状态值 - 将
iteration加1 - 将
last_updated更新为当前时间 - 根据Phase完成条件,判断是否推进
current_phase - 将整个文件的
last_updated更新为当前时间
日志管理
日志文件:proposal-log.md
日志追加规则
每次子skill回调时,追加一条日志记录,包含:
- 时间戳:当前日期时间
- Phase和阶段描述
- 调用的skill名称和编号
- 工作摘要:一句话概括做了什么(由子skill传入)
- 产出文件:输出的文件名
- 状态变更:section的状态变化
日志格式
执行前:信息收集
在首次启动(proposal-state.json 不存在)时,按以下顺序收集信息:
第一步:确认输出路径
向用户确认申报书输出目录。如用户未指定,建议默认路径。
第二步:收集项目信息
向用户收集以下基础信息,未提供的逐项询问:
必需信息:
- 研究主题与方向:项目研究什么?属于什么学科领域?
- 核心研究问题:要解决的核心问题是什么?
- 申报类型与级别:国自然青基/面上、省重点研发、研创项目等
- 项目执行期限:如"2027年1月-2029年12月"
重要信息(有则收集,没有后续补充):
- 已有材料:开题报告、文献综述、相关论文、前期成果等文件路径
- 研究方法初步思路:打算用什么技术路线
- 申请人/团队信息:用于S5和S8
- 指导教师信息:姓名、职称、研究方向、代表性成果
第三步:创建状态文件和日志文件
将收集到的信息写入 proposal-state.json,创建空的 proposal-log.md。
依赖关系与执行顺序
依赖图
执行阶段
每个Phase的执行规范
Phase 0:前期准备
目标:建立文献基础,明确研究定位。
执行步骤:
- 阅读用户提供的所有已有材料
- 调用
write-referencesskill,启动文献调研 - 配合
academic-searchskill 进行文献检索 - 整理初步文献列表,建立引用编号体系
产出:4-参考文献.md
Phase 1:立项依据核心(迭代)
目标:完成"为什么要做这个研究"的论证。
执行步骤:
- 调用
write-literature-reviewskill →2-国内外研究现状.md - 调用
write-research-purposeskill →1-研究目的与意义.md - 迭代检查:S1与S2的逻辑一致性
- 可能需要回到S4补充文献
Phase 2:价值论证
执行步骤:
- 调用
write-application-prospectsskill →3-应用前景与学术价值.md - 检查S3与S1/S2的铺垫关系
Phase 3:研究方案纲领
执行步骤:
- 调用
write-research-objectivesskill →6-研究目标与内容.md - 可配合
write-key-problemsskill - 回溯修订:对S1/S2/S3做最终修订
Phase 4:研究方法
执行步骤:
- 调用
write-research-methodsskill →7-研究方法.md - 确认S4文献引用覆盖
Phase 5:收尾
执行步骤(可并行):
- 调用
write-innovation-planskill →9-创新点与计划.md - 调用
write-feasibilityskill →8-可行性分析.md - 调用
write-research-foundationskill →5-研究基础与条件.md
Phase 6:全文审查
审查清单:
| 检查项 | 涉及section | |
|---|---|---|
| S1核心问题 → S6目标 → S7方法 → S9创新点 | S1→S6→S7→S9 | |
| S2不足 → S6内容 → S7方法 | S2→S6→S7 | |
| S3价值 → S9成果 | S3→S9 | |
| S4引用 ↔ 正文引用标记 | S4↔全文 | |
| S5前期成果 → S6内容 | S5→S6 | |
| S7条件需求 → S5/S8条件 | S7→S5/S8 | |
| 全文术语一致性 | 全文 | |
| 总字数 | 全文 |
下一步建议逻辑
子skill回调后,根据当前状态和依赖关系给出建议。建议规则:
建议优先级
- 迭代当前阶段:如果当前Phase的section刚完成初稿,建议先检查是否需要迭代(如Phase 1中S2完成后应检查S1是否需要调整)
- 推进到下一阶段:如果当前Phase所有section至少 draft_done,建议推进
- 补充前置依赖:如果某个section的前置依赖未完成,建议先完成依赖
- 用户自由选择:列出当前可执行的选项,让用户决定
建议输出格式
迭代修订规范
何时触发迭代
- Phase内迭代:S1↔S2之间的互相修订(Phase 1)
- 跨Phase回溯:后续Phase发现前置section需要调整
- 用户反馈:用户对某个section提出修改意见
迭代修订原则
- 向后传播优先:修改了某个section后,检查后续依赖section是否需要调整
- 最小修改:尽量只修改受影响的部分
- 状态更新:每次修订后,将对应section状态更新为
revised,iteration加1
断点续写
如果会话中断,通过以下方式恢复:
- 读取
proposal-state.json,确认当前Phase和各section状态 - 读取
proposal-log.md,确认最后的工作内容 - 读取已完成的section文件内容
- 从中断处继续
注意事项
- 不要跳过Phase 0:文献调研是整个申报书的基础
- S1和S2互为迭代:强行一次性写完任何一个都可能导致逻辑不一致
- S4是持续性任务:每个Phase都可能需要补充新文献
- S5高度个性化:必须基于申请人真实信息
- S6是核心枢纽:承上启下,值得花最多时间打磨
- S7技术含量最高:数学公式和算法设计直接影响评审判断
- 全文审查不可省略:各section分开撰写容易产生不一致
- 尊重用户节奏:每个Phase完成后与用户确认再继续
- 每次状态变更都写日志:保证断点续写的完整性
- 子skill最后一步必须回调本skill:确保状态和日志始终最新
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/write-proposal/SKILL.md
Popularity
- Repository stars
- 50
- Repository forks
- 2
- 7-day trend score
- 20
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/maxine-1520/openair_proposal/write-proposal)