Commit Graph

5 Commits

Author SHA1 Message Date
caoqianming 647d92f532 proposal+ppt: 路径用 <skill_dir>, 补 spec_lock 模板与 --spec 覆盖度检查
按代码评审建议改的 5 项:

1. 所有脚本/资源路径改成相对 <skill_dir> (load_skill 头里的绝对路径),
   不再假设 cwd 是 zcbot 仓库根。proposal+ppt 的 SKILL.md / icons.md /
   INDEX.md 都改了。

2. quality_check.py REQUIRED_SECTIONS 给 key_rd 补上 11_team /
   12_budget / 13_appendix —— 之前模板有但检查没到, 缺团队/预算/附件
   也会显示结构完整。

3. 新增 templates/spec_lock.md, 把"八条对齐"固化成可复制字段
   (含考核指标矩阵表 + TODO 列表 + 引文清单), 阶段二/三都从这里读。

4. quality_check.py 加 --spec <spec_lock.md> 选项, 解析 spec 中的
   考核指标矩阵, 关键词模糊匹配 sections, 提示哪些指南指标在正文
   未充分覆盖。SKILL.md 阶段三命令同步。

5. SKILL.md 新增"阶段零: 摄取素材", 用 run_python + pypdf/python-docx/
   openpyxl 把 PDF/DOCX/XLSX 转成 source/*.md, 不再要新脚本。同时
   把 spec_lock 字段引用改写到模板。

顺带:
- proposal SKILL.md 明确 7 类基金里只有 3 类 (key_rd/major_project/
  nsfc_joint_fund) 有完整章节模板, 其它 4 类复用骨架, 差异查 fund_types.md
- ppt SKILL.md 阶段三命令路径错误 (python scripts/quality_check.py)
  顺带修了
2026-05-07 16:05:44 +08:00
caoqianming d1f39f05f5 proposal skill 精简: 2888 -> 1712 行 (-41%)
- 删 references/typography.md (90% 已被 render_docx.py 吸收, 剩下进 SKILL 硬规则)
- 删 references/section_templates.md (与 templates/ 大量重叠, 4 个核心 pattern 折进 SKILL "章节骨架速查")
- fund_types.md / review_redlines.md / citation_gbt7714.md / budget_rules.md
  全部去散文留骨架: 表格 / 清单 / 示例 优先, 解释性段落只留必要的
- templates/{key_rd,major_project,nsfc_joint_fund}.md 删冗长写作提示, 只留章节骨架 + 字数预算 + 必填字段
- 脚本逻辑不动, render_docx.py 仅去 docstring 中的 typography.md 引用
2026-05-07 15:32:07 +08:00
caoqianming bb9e92bb84 让 <task_dir> 真正落地: 产物收敛到 workspace/tasks/<id>/
之前 SKILL.md 反复说 <task_dir>/spec_lock.md / <task_dir>/sections/,但代码里没把
task_dir 暴露给 agent,只给了 cwd——导致 spec_lock.md 落到 skills/proposal/、
sections/ 落到 repo 根。两者被 .gitignore 通配规则盖住,问题被掩盖。

- main.py system prompt 里显式注入 task_dir 绝对路径 + 强约束(只写 task_dir,不写
  cwd / skills/ / repo 根)。SKILL 里的 <task_dir> 占位符明确指向这个值。
- skills/proposal/SKILL.md + skills/ppt/SKILL.md 的「工作目录约定」前面加一句解释
  <task_dir> 来自 system prompt。
- .gitignore 删掉 sections/ slides/ spec_lock.md 这三条无锚 bandaid——workspace/
  已经覆盖正确路径下的产物;repo 根再写错了要靠 git status 立刻报红,不再靠 ignore
  兜底。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 14:18:35 +08:00
caoqianming 2b1e2143f1 proposal skill v2: 6 类基金分型 + 3 套章节模板 + 渐进披露
参考重大专项任务书 / NSFC 联合基金 2026 / 重点研发"区块链"申报书
3 份真实 docx,从 80 行 SKILL.md 拆成 13 文件 (~2.6k 行):
- references/{fund_types,section_templates,review_redlines,citation_gbt7714,budget_rules,typography}.md
- templates/{key_rd,major_project,nsfc_joint_fund}.md
- scripts/{render_docx,word_count,quality_check}.py

核心补强:任务书/申报书/申请书结构差异、字数预算硬约束、考核指标
量化要求、间接费用台阶比例、GB/T 7714 文献规范、字体行距等排版硬规则。
2026-05-07 08:50:19 +08:00
caoqianming 3a66849953 Initial import: zcbot personal task agent
DESIGN.md / PROGRESS.md 落地 Phase 1-3:
- core/: LiteLLM 封装 + ReAct loop + 会话持久化 + Anthropic skill registry
- tools/: read/write/edit/glob/grep/shell/run_python/load_skill (Hybrid 范式)
- skills/coding | proposal: WHY+WHAT 风格 SKILL.md
- skills/ppt: 完整渐进披露 (SKILL + 4 references + 3 scripts)
  · 借鉴 hugohe3/ppt-master 的两阶段 + spec lock 思路
  · MSO_SHAPE 图标体系 + 安全区 + 越界检测
  · 默认商务红主题 (#C00000 / #E15554 / #FFC107)
- config/models/: DeepSeek V4 flash/pro 档案

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 11:02:59 +08:00