word-fillter-438c-sdd
当用户提到「GJB 438C」「438C-2021」「5.11」「软件设计说明」「SDD」「概要设计」「详细设计」「CSCI 体系结构」「CSCI 详细设计」并需要生成或填写软件设计说明 .docx 时触发。基于 GJB 438C-2021 [5.11] `[11][SDD] 软件设计说明-438C-2021.docx`,严格按真实 Word 模板的锚点段落和表格表头定位,支持封面字段填写、正文段落替换、4.3/5 动态子节插入、引用文档表与需求追踪表填充,并在生成后标记 Word 目录字段为待刷新。
DeepseekModel
官方收录技能
质量 优秀 · 78
v1.0.0
获取
https://deepseekmodel.com/api/download.php?id=cmoments-gjb438c-docskill-skills-word-fillter-438c-sdd-skill-md&format=skill
下载 .skill
标准格式,含 system_prompt 与 model_config,导入任意 Agent 框架即可使用
.skill 文件中 system_prompt 字段的实际内容。
name word-fillter-438c-sdd description 当用户提到「GJB 438C」「438C-2021」「5.11」「软件设计说明」「SDD」「概要设计」「详细设计」「CSCI 体系结构」「CSCI 详细设计」并需要生成或填写软件设计说明 .docx 时触发。基于 GJB 438C-2021 [5.11] `[11][SDD] 软件设计说明-438C-2021.docx`,严格按真实 Word 模板的锚点段落和表格表头定位,支持封面字段填写、正文段落替换、4.3/5 动态子节插入、引用文档表与需求追踪表填充,并在生成后标记 Word 目录字段为待刷新。 GJB 438C SDD 严格填写 使用本 Skill 填写 GJB 438C-2021 [5.11] 软件设计说明(SDD)。模板文件为 documents/[11][SDD] 软件设计说明-438C-2021.docx 。 何时使用 当用户需要基于 [11][SDD] 软件设计说明-438C-2021.docx 生成或修改 GJB 438C-2021 软件设计说明(SDD)时使用本 Skill。 设计原则 严格模式 :模板锚点、命中数、原型段落、表头任何一项不符合预期都直接报错,不做静默跳过、不做兜底、不猜测模板结构。 只改内容 :脚本只读取/写入 JSON 中的 content 与 rows ,不修改模板的 id 、 name 、 type 、 columns 、 replacement_pattern 、 locator_rows 等结构字段。 JSON 驱动 :所有可填写内容通过 templates/config.json 与 templates/project.json 配置,脚本不硬编码业务内容。 目录刷新 :脚本只写入标题并标记 w:updateFields ,目录的实际刷新发生在 Word 首次打开文档时。 当前模板的严格规则 以下规则基于 documents/[11][SDD] 软件设计说明-438C-2021.docx 的实际扫描结果, 不是 通用 438C 模板约定,与 SRS 模板的封面锚点也不同: 外部型号+产品名称 必须在模板中精确出现 1 次(封面表格第 1 行)。 软件需求规格说明 必须在封面区域精确出现 1 次(模板封面书写为 SRS 标题,脚本将其替换为 document.title ,例如「软件设计说明」)。 产品型号-XXXX 必须精确出现 1 次(封面表格第 2 行)。 文档标识号:TN/x-DO-DS-V{N.xx}; 、 标题: 、 软件名称: 、 软件缩写: 、 软件版本号。 各精确出现 1 次(1.1 标识的 Normal Indent 段落块)。 本 SDD 模板封面 没有 XXXXXXXX公司 、 XXXX年XX月XX日 、 密 级: 内部 、 阶 段: 、 版 次: A 版 等锚点;这些字段不会出现在 config.json ,也不会在生成时被替换。 4.3 接口设计 是动态章节父节点,使用模板中的 4.3.X (接口的唯一标识符) 作为插入原型,从 4.3.2 起按 subsections 顺序克隆插入。 5 CSCI详细设计 是动态章节父节点,使用模板中的 5.X (软件单元的唯一标识符,或者一组软件单元的标志符) 作为插入原型,从 5.1 起按 subsections 顺序克隆插入。 4.3.X 、 5.X 原型段及其后的模板示例说明文字会被一并删除,再按 subsections 重新生成;4.3.1(接口标识和接口图)和第 5 章引言段保留并由 content 字段决定其文字。 引用文档表(第 2 章)、需求正向追踪表与逆向追踪表(第 6 章)按 locator_rows 精确匹配表头;行数不够时按数据行原型克隆扩行。 模板「表 X-X」题注由脚本按章号重写: 表2-X 引用文件 → 表2-1 引用文件 、 表X-X 需求的正向追踪性 → 表6-1 需求的正向追踪性 、 表X-X需求的逆向追踪性 → 表6-2需求的逆向追踪性 。 与 SRS 模板的关键差异 封面锚点每个仅出现 1 次(SRS 大多为 2 次)。 封面没有 XXXXXXXX公司 、 密级 、 阶段 、 版次 、 日期 等字段,不要在 config.json 里给 SDD 加这些字段并期望被写入封面。 封面正文写错了文档标题(写作「软件需求规格说明」),脚本默认将其替换为 document.title ;若 document.title 与封面锚点完全相同(例如仍填写 软件需求规格说明 ),脚本仍会按 1 次精确命中替换。 第 1 章「范围」标题在模板里是 Normal 段落,不是 Heading 1 ;脚本据此调整了题注号编排逻辑,不会把第 2 章的 表2-X 误编为 表1-X 。 动态章节父节点为 4.3 和 5 ,不是 SRS 的 3.1 / 3.2 / 3.3 / 3.4 。 目录结构 documents/[11][SDD] 软件设计说明-438C-2021.docx :SDD 模板文档 templates/config.json :封面与标识配置(仅 project.name/short_name/version 与 document.id/title 会被写入模板) templates/project.json :章节内容、动态子节、表格数据 scripts/main.py :命令行入口(推荐) scripts/process.py :免参数入口 scripts/strict_word_filler/ :严格填充运行时 loader.py :解析 JSON、构造 BuildPlan 、调用模板规则 docx_ops.py :Word 段落 / 表格 / 题注 / 目录刷新操作 template_rules.py :SDD 模板锚点、动态章节规则、模式覆盖 models.py : BuildPlan 等数据类 errors.py : StrictTemplateError / StrictDataError pipeline.py :CLI 入口 JSON 规则 config.json config.json 沿用 SRS 三段式结构( project 、 document 、 content ),脚本只读取下列字段的 content : project.name :外部型号+产品名称(写入封面表格第 1 行第 1 段) project.short_name :项目简称(与「产品型号-」前缀拼接写入封面表格第 2 行) project.version :版本号(写入 1.1 标识块的「软件版本号:…。」) document.id :文档标识号(写入 1.1 标识块的「文档标识号:…;」) document.title :文档标题(同时写入封面「软件需求规格说明」位置和 1.1 标识块的「标题:…」) project.company 、 project.department 、 document.classification 、 document.phase 、 document.date 、 content.* 仅为兼容 SRS 命令行参数保留,SDD 模板里没有对应锚点, 不会 被写入文档。 project.json 顶层 structure 中的每个章节按章号( "1" 、 "2" 、…、 "7" )组织。 章节可选字段: replacement_pattern + content :将该章正文里的占位段替换为 content (多行用 \n\n 分段)。 placeholders :章节下的固定子节列表(如 1.1/1.2/1.3、4.1/4.2),每个 placeholder 同样支持 replacement_pattern + content ,并可在 subsections 中定义更深层子节。 tables :严格表格填充定义(见下)。 动态章节父节点 4.3 和 5 必须作为顶层 structure 条目(不能放在某个章节的 placeholders 里),结构为: "4.3" : { "title" : "接口设计" , "type" : "content_generation" , "content" : "<4.3.1 接口标识和接口图 段的正文>" , "subsections" : { "4.3.2" : { "name" : "<接口标题>" , "content" : "<接口正文,多行用 \n\n>" } , "4.3.3" : { "name" : "..." , "content" : "..." } } } 脚本会把模板里 4.3.X 原型段及其后的所有示例说明删除,再按 subsections 顺序生成 4.3.2 、 4.3.3 、… 每个子节都使用原型段的样式。 content 会替换 4.3 章节首段的文本(模板中是 4.3.1 的正文)。 表格填充( tables 数组,每项): table_id :脚本内部使用的表名(仅用于错误信息) locator_rows :按从上到下顺序匹配模板表头行的精确文本(每个单元格必须完全一致) data_start_row :模板里第一行数据行的索引(0 基,从表头之下开始计数) preserve_tail_rows :模板末尾需要原样保留的行数(例如正向追踪表尾部的「若存在一对多则此形式表达」示例行) columns :列名列表, 必须 与每个 rows 项的键完全一致 rows :数据行数组,每行的字段集合必须严格等于 columns 不允许在 subsections 中给一个既没有 replacement_pattern 又不是动态章节的子节随便塞内容;脚本会报错。 工作流 修改 templates/config.json 中 project.* 与 document.* 的 content 。 修改 templates/project.json 中各章节的 content 、 subsections 、 tables.rows : 第 1 章(范围)使用 placeholders 数组。 第 2 章(引用文档)使用 tables 。 第 3 章(CSCI 级设计决策)使用 replacement_pattern + content 。 第 4 章(CSCI 体系结构设计)使用 placeholders (4.1、4.2),4.3 作为顶层动态章节。 第 4.3 章(接口设计)作为顶层 structure.4.3 动态章节,含 subsections 。 第 5 章(CSCI 详细设计)作为顶层 structure.5 动态章节,含 subsections 。 第 6 章(需求可追踪性)使用 tables (正向 + 逆向)。 第 7 章(注释)使用 replacement_pattern + content 。 运行生成脚本(见下)。 在 Word 中打开输出文件,按 F9 或右键「更新域」刷新目录与题注。 运行 安装依赖(首次): pip install -r scripts/requirements.txt 生成文档(推荐,使用命令行入口): python scripts/main.py \ --template "documents/[11][SDD] 软件设计说明-438C-2021.docx" \ --config "templates/config.json" \ --project "templates/project.json" \ --output "output/[11][SDD] 软件设计说明-438C-2021-filled.docx" 或使用免参数入口: cd scripts python process.py 已知约束 目录不是静态文本,脚本只负责写入标题并标记字段更新;首次打开 Word 时应刷新目录(F9 或「更新域」)。 模板里第 1 章标题「范围」是 Normal 段落而非 Heading 1 ,因此 Word 自动生成的 TOC 默认不会列出「1 范围」这条目,但章节下的 1.1/1.2/1.3 子节会照常出现;这是模板本身的行为,脚本不强行修正。 题注号编排以题注文字中显式给出的章号为准(例如 表2-X 编为 表2-1 ), 表X-X 形式则按当前 Heading 1 章号编排。 这套实现是针对当前模板定制的严格版本,不是通用任意 .docx 模板引擎。
Agent 识别该技能的关键词,点击任意一个即可复制。
该技能未提供触发词。
下载的 .skill 包内含以下字段。
| 字段 | 说明 |
|---|---|
| format | 格式标识(skill/v1) |
| skill_id | 技能唯一 ID |
| name | 技能名称 |
| version | 版本号 |
| description | 技能描述 |
| category | 所属分类(数组) |
| trigger_words | 触发词列表 |
| tags | 标签列表 |
| source | 来源标识 |
| source_url | 来源链接(本页地址) |
| exported_at | 导出时间(每次下载生成) |
| system_prompt | 系统提示词正文 |
| model_config | 模型参数:provider / model / temperature / max_tokens / top_p |
| examples | 示例 |
| install_guide | 各平台导入说明(Coze / Dify / Claude / 自定义框架) |