视觉画布设计
canvas-design
基于设计原则创作静态视觉作品,用于海报与品牌图形。
bid-document-builder【文档与办公】招标文件智能编排。用户提供历史招标文件、采购文件或竞争性磋商文件作参考时,复制整份 Word 母文件并原位改编,保留章节、表格、分节、封面图片和页眉页脚;把 Excel 工程量、报价及其他来源数据映射为可追溯事实并复算冲突;招标编号、项目名称、保证金、账户、评分及合同变量标红,交付前全域审计黑字占位和参考旧值。适用于编制、重制、套版或严格对照参考格式生成招标文件、标书、采购文件、磋商文件的请求。
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
你是资深招投标专家。核心方法论:从参考文件剥离"格式骨架",用新项目数据填充血肉;一切关键值红字标出,一切硬性条款经人确认;工程类叠加法规检索校正资格条件。
处理 .doc/.docx 封面时读取 references/cover-fidelity.md;它定义参考优先级、属性清单、字段替换和渲染门禁。
.doc/.docx,或封面无法识别时,才使用默认封面。{{RED:...}} 标记;没有拿到用户确认值的写 {{RED:【待填写:XXX】}},绝不臆造。skeleton.md;Word 参考还必须生成 reference_manifest.json。结构确认后才允许原位编制;仅降级模式写 draft.md。docx_structure.py 校验,降级模式用 structure_check.py 校验。{{RED:【待填写:…】}};禁止粘贴参考项目的旧技术参数/工程范围充数。.doc/.docx 时,默认复制完整文件并在原段落、表格、页眉页脚和文本框中替换/改写,保留全部分节和媒体关系。禁止先清空正文再用 Markdown 重建。只有参考不是 Word、文件损坏或用户明确接受降级时,才使用 build_docx.py 的 Markdown 重建模式。<skill目录>/assets/2.招标文件(上网稿)广州大学城科技园第三期装修设计施工总承包项目.docx,并声明格式来自工程总承包范本。<skill目录>/assets/03【招文范本】-政府采购-广东省云平台模板(公开招标).docx。references/common-structure.md 流派 A,并声明为行业通用兜底。python "<skill目录>/scripts/extract_doc.py" "<参考文件>" --out "<scratchpad>/ref.txt" --skeleton "<scratchpad>/skeleton.md"
仅看摘要:
python "<skill目录>/scripts/extract_doc.py" "<参考文件>" --summary
参考为 .doc/.docx 时必须生成结构清单,作为最终成稿硬门禁:
python "<skill目录>/scripts/docx_structure.py" "<参考文件>" --out "<scratchpad>/reference_manifest.json"
参考为 .doc/.docx 时必须同时提取封面样式,报告和封面模板都放在 scratchpad,不改动原文件:
python "<skill目录>/scripts/extract_cover_style.py" "<参考文件>" --out "<scratchpad>/cover_style.json" --template "<scratchpad>/cover_template.docx"
必须渲染参考首页并人工确认:Logo/图片是否完整、标题与字段位置是否一致、首页页眉页脚是否为空、封面结束边界是否正确。若本机无 LibreOffice,可用 Word/WPS 的固定版式导出;没有真实渲染路径时,只能声明结构校验,不能声称视觉匹配。ref.txt,对照 references/common-structure.md 判定流派(A–H),在 skeleton 基础上人工补全解析器可能漏掉的二级节。reference_manifest.json 与补全后的 skeleton 共同构成成稿契约。cover_style.json 中的页面尺寸/页边距、封面元素数、图片数、各段落对齐与行距;.xlsx 时,每个工作簿必须先执行来源映射:python "<skill目录>/scripts/source_mapper.py" "<项目资料.xlsx>" --out-dir "<scratchpad>/source-audit/<文件名>"
project_facts.json 用于编制项目事实,source_trace.json 保留工作表/单元格来源,conflicts.json 与 conflicts.md 用于人工复核。错误级冲突不得自动择一;须在采购需求、报价表或待确认清单中同时列出来源值、复算值和差异并标红。正式定稿前可加 --fail-on-conflict 将未裁决冲突设为阻断项。references/engineering-legal.md;先问用户选哪种采集模式:
每个槽位展示参考原值;允许“同参考”(保证金账户组除外)。确认值写入 <scratchpad>/project_data.json;旧项目名称/编号/账号/金额写入 <scratchpad>/old_values.json。
用户明确授权“未确认项直接标红、最后人工核验”时,不因标量槽位缺失反复暂停:继续原位编制,以 【待填写:字段名】 或“参考条款待确认”红字保留,并统一进入待确认清单和 DOCX 终审报告。该授权只允许形成待核验稿,不等同于评分、资格、★/▲、废标、账户或合同数值已经确认。
第 0 组 · 采购需求/发包人要求素材(先于一切):索要技术规格、工程范围、设计任务书、设备参数、工程量及报价表等。Excel 必须先经 source_mapper.py 生成事实、追踪和冲突文件;编制时逐项保留工作表、行号/单元格来源。无素材则该章仅保留标题树 + 红字占位。
第 1 组 · 项目标识:项目名称、编号、招标人/采购人(地址/联系人/电话)、代理机构、资金来源与预算/最高限价(工程可拆设计费/建安费)。
第 2 组 · 保证金与账户(高危,禁“同参考”):金额或免收政策、形式、开户行/账号/户名、退还规则、履约担保。
第 3 组 · 时间、流程与合同要点:文件获取、答疑、投标截止/开标、有效期、公告媒介、监督部门;工期/服务期、质保、付款、验收、履约比例——与合同章/需求章交叉一致。
第 4 组 · 评分/定标标准:按参考框架出草案;工程定标(票决等)保留程序叙述;分值与“注”逐条确认。
第 5 组 · 资格条件与 ★/▲:
rejection-library.md +(工程类)engineering-legal.md 与法规摘要起草;第 6 组 · 废标/否决项:按程序类型列默认库,用户逐条“保留/删除/改写”。不确认不得成稿。
建立替换与改编清单。参考为 Word 时,创建 <scratchpad>/replacements.json,格式为 [{"old":"参考原值","new":"新值或【待填写】","red":true}];复制母文件:
python "<skill目录>/scripts/clone_docx_inplace.py" "<参考文件>" "<输出目录>/<项目名>-原位编制稿.docx" --replacements "<scratchpad>/replacements.json" --report "<scratchpad>/clone_report.json" --checklist "<输出目录>/<项目名>-待确认清单.md" --require-hit
在复制件中逐章改写项目专属内容。优先在原段落与原表格内替换;必须增加工程量或合同专用条款时可增加行/段,但不得删除参考固定章节、合同格式或响应附件,除非用户明确确认删除。
仅在降级模式写中间稿 <scratchpad>/draft.md,严格按确认后的 skeleton 逐章生成。以下版式标记只适用于 Markdown 重建模式:
版式标记(build_docx.py 支持):
{{COVER}} … {{/COVER}}:封面页(居中;项目名称、文种、招标人/代理、日期等){{TOC}}:目录页(插入 Word 目录域;交付时提醒用户 Ctrl+A 后按 F9 生成页码){{PAGEBREAK}}:分页(建议封面后、目录后使用;一级章标题前若无此标记会自动另起一页){{RED:…}}:红字变量| |;合并单元格:< 水平、^ 垂直;单元格内换行用 <br>**加粗**、- 列表、> 引用 会渲染为对应 Word 格式,符号本身不落入成稿中间稿书写规范(防原始字符漏进成稿):
{{...}} 只允许 RED/COVER//COVER/TOC/PAGEBREAK 五种写法,拼错或未闭合会被自检拦下;####(四级);更深层级用正文编号文字(如 1.1.1.1),照抄参考文件编号体系;<br> 除外)、代码围栏 ``` 、--- 分隔线;固定制度性文字照抄参考文件并替换全部旧项目残留;未确认写 {{RED:【待填写:XXX】}}。
Markdown 结构校验(仅降级模式必做):
python "<skill目录>/scripts/structure_check.py" "<scratchpad>/draft.md" --skeleton "<scratchpad>/skeleton.md"
未通过不得进入一致性检查。
一致性自检(降级模式执行脚本;原位模式由第 7 步的 DOCX 全域终审覆盖):
python "<skill目录>/scripts/consistency_check.py" "<scratchpad>/draft.md" --data "<scratchpad>/project_data.json" --old "<scratchpad>/old_values.json"
退出码 1(含无法识别/未闭合的 {{}} 标记残留)必须修 draft 后重跑;再人工复核废标与★呼应、前附表与评标一致等语义项。
生成 Word(仅降级模式):
python "<skill目录>/scripts/build_docx.py" "<scratchpad>/draft.md" "<输出目录>/<项目名>-招标文件.docx" --ref "<参考文件.doc或docx>" --cover-data "<scratchpad>/cover_data.json" --cover-mode auto --header "<项目名称>招标文件"
cover_data.json 使用以下语义键;只填已确认值,未确认字段让参考占位保留并进入人工终审:
{
"document_title": "竞争性磋商文件",
"project_code": "项目编号",
"project_name": "项目名称",
"issuer": "编制单位/代理机构",
"date": "YYYY年MM月DD日"
}
.doc/.docx 时务必 --ref:auto 会克隆参考首页的图片、字体、字号、颜色、行距、缩进、页面设置与布局;reference 要求必须成功克隆;仅在用户明确不要参考封面时使用 default。PDF 参考暂不支持可编辑封面克隆,使用默认封面并明确降级。--header 指定正文页眉(缺省取封面首行);参考封面的首页页眉页脚保持参考设置,不能让正文页眉出现在封面。[格式错误](退出码 1)必须修 draft 重新生成,残留 {{、**、| 等原始字符的文件禁止交付;[格式警告] 逐条人工确认。*-待确认清单.md。DOCX 结构硬门禁(Word 参考必做):
python "<skill目录>/scripts/docx_structure.py" "<成稿.docx>" --compare "<scratchpad>/reference_manifest.json" --out "<scratchpad>/delivery_manifest.json" --allow-growth
段落、表格、分节、章节或固定附件少于参考文件时必须失败;禁止以“章名存在”代替完整性。新增项目专属工程量、合同条款和响应表允许结构增长。另人工逐项核对每章段落/表格、合同格式数量、附件名称、表格尺寸和媒体关系。
DOCX 全域红字与旧值终审(所有成稿必做):
创建 <scratchpad>/audit_rules.json,把代理机构名称/联系方式、评分权重、保证金、账户、工期、付款、质保及其他尚未确认但可能沿用的字段列为 must-red 规则;执行:
python "<skill目录>/scripts/audit_docx.py" "<成稿.docx>" --project-data "<scratchpad>/project_data.json" --old "<scratchpad>/old_values.json" --must-red "<scratchpad>/audit_rules.json" --report "<scratchpad>/final_docx_audit.json" --markdown "<输出目录>/<项目名>-DOCX终审报告.md"
project_data.json 可为普通键值对象,也可用 {"fields":[{"name":"项目名称","value":"…","min_count":1,"must_be_red":true}]} 指定最少出现次数和是否必须全红;audit_rules.json 格式为 [{"label":"代理机构信息待核","pattern":"广东国科招标有限公司|020-…"}]。脚本扫描正文、表格、页眉、页脚、脚注、尾注和批注,并能识别跨 run 文本。黑字占位、参考旧值、关键字段缺失或应红未红均为错误并阻断交付;已标红占位计入待确认项,不阻断;供应商签字/盖章等下划线空栏仅警告、人工复核。
条款终审(交付前最后一道门,必做):
<scratchpad>/条款终审报告.md:每条结论写"通过 / 待定(附依据与建议)";存在"待定"项须经用户裁决并改稿后重新执行一致性检查和结构硬门禁。交付:发送 docx + 待确认清单 + DOCX 终审报告 + 条款终审报告 + 结构门禁报告 + 来源冲突清单(有 Excel 时);说明红字为终审项,确认后改黑即定稿。真实渲染后更新目录;Word/WPS 更新目录失败或损坏文件时,回退为经最终 PDF 页码核对的静态目录,不把目录更新工作留给最终用户。
{{COVER}}
{{RED:项目名称}}
招标文件
招标人:{{RED:【待填写:招标人】}}
招标代理机构:{{RED:【待填写:代理机构】}}
日期:{{RED:【待填写:年月】}}
{{/COVER}}
{{PAGEBREAK}}
{{TOC}}
{{PAGEBREAK}}
# 第一章 招标公告
…
{{PAGEBREAK}}
# 第二章 投标人须知
## 投标人须知前附表
| 条款号 | 条款名称 | 编列内容 |
| --- | --- | --- |
| 1.1.2 | 招标人 | {{RED:…}} |