@archsight/aios 1.1.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/.claude-plugin/marketplace.json +60 -0
  2. package/.claude-plugin/plugin.json +36 -0
  3. package/CHANGELOG.md +93 -30
  4. package/OPENCODE.md +23 -0
  5. package/README.md +106 -48
  6. package/RELEASE_NOTES.md +52 -0
  7. package/adapters/README.md +7 -0
  8. package/adapters/workbuddy/README.md +43 -0
  9. package/agents/README.md +6 -3
  10. package/agents/daedalus/system-prompt.md +2 -0
  11. package/agents/hestia/constraints.md +7 -0
  12. package/agents/hestia/responsibilities.md +7 -0
  13. package/agents/hestia/role.md +12 -0
  14. package/agents/hestia/system-prompt.md +23 -0
  15. package/agents/hestia/workflow.md +8 -0
  16. package/agents/plutus/constraints.md +7 -0
  17. package/agents/plutus/responsibilities.md +7 -0
  18. package/agents/plutus/role.md +12 -0
  19. package/agents/plutus/system-prompt.md +24 -0
  20. package/agents/plutus/workflow.md +8 -0
  21. package/agents/themis/constraints.md +7 -0
  22. package/agents/themis/responsibilities.md +7 -0
  23. package/agents/themis/role.md +12 -0
  24. package/agents/themis/system-prompt.md +24 -0
  25. package/agents/themis/workflow.md +8 -0
  26. package/bin/archsight-aios.mjs +605 -31
  27. package/docs/PUBLIC_DISCOVERY.md +207 -0
  28. package/docs/business-expert-guide.md +5 -3
  29. package/docs/glossary.md +11 -3
  30. package/docs/quickstart.md +18 -4
  31. package/gemini-extension.json +6 -0
  32. package/package.json +66 -34
  33. package/prompts/README.md +12 -0
  34. package/prompts/evaluation-policy.md +70 -0
  35. package/prompts/evaluations/engineering-business-basic-advisory-validation-2026-06-16.md +87 -0
  36. package/prompts/evaluations/engineering-business-basic-fixtures.json +375 -0
  37. package/prompts/evaluations/engineering-business-basic-model-output.example.json +179 -0
  38. package/prompts/evaluations/engineering-business-basic-prompts-2026-06-16.md +205 -0
  39. package/prompts/evaluations/engineering-business-basic-scorecard.json +238 -0
  40. package/prompts/evaluations/engineering-business-public-advisory-fixtures.json +422 -0
  41. package/prompts/evaluations/public-advisory-md/01-technical-bid.md +63 -0
  42. package/prompts/evaluations/public-advisory-md/02-contract.md +61 -0
  43. package/prompts/evaluations/public-advisory-md/03-daily.md +69 -0
  44. package/prompts/evaluations/public-advisory-md/04-meeting.md +48 -0
  45. package/prompts/evaluations/public-advisory-md/05-variation.md +63 -0
  46. package/prompts/evaluations/public-advisory-md/06-scheme.md +60 -0
  47. package/prompts/failure-cases.md +5 -1
  48. package/prompts/prompt-registry.md +10 -0
  49. package/runtime/agent-routing.md +36 -8
  50. package/runtime/archsight-aios.manifest.json +207 -60
  51. package/runtime/capability-registry.json +12 -2
  52. package/runtime/hermes/agent-registry.md +3 -0
  53. package/runtime/hermes/workspace-binding.md +3 -0
  54. package/runtime/skill-routing.md +16 -2
  55. package/scripts/analyze-prompt-run-results.mjs +187 -0
  56. package/scripts/build-prompt-run-pack.mjs +248 -0
  57. package/scripts/validate-prompt-fixtures.mjs +225 -0
  58. package/scripts/validate-prompt-model-outputs.mjs +201 -0
  59. package/scripts/validate-prompt-run-results.mjs +259 -0
  60. package/scripts/validate-prompt-scorecard.mjs +133 -0
  61. package/scripts/validate-skills.mjs +138 -0
  62. package/skills/README.md +16 -0
  63. package/skills/aios-commercial-contract/SKILL.md +107 -0
  64. package/skills/aios-commercial-contract/agents/openai.yaml +4 -0
  65. package/skills/aios-commercial-contract/prompts/basic-prompt.md +83 -0
  66. package/skills/aios-commercial-tender/SKILL.md +107 -0
  67. package/skills/aios-commercial-tender/agents/openai.yaml +4 -0
  68. package/skills/aios-commercial-tender/prompts/basic-prompt.md +94 -0
  69. package/skills/aios-commercial-variation/SKILL.md +106 -0
  70. package/skills/aios-commercial-variation/agents/openai.yaml +4 -0
  71. package/skills/aios-commercial-variation/prompts/basic-prompt.md +99 -0
  72. package/skills/aios-construction-daily/SKILL.md +104 -0
  73. package/skills/aios-construction-daily/agents/openai.yaml +4 -0
  74. package/skills/aios-construction-daily/prompts/basic-prompt.md +76 -0
  75. package/skills/aios-construction-meeting/SKILL.md +104 -0
  76. package/skills/aios-construction-meeting/agents/openai.yaml +4 -0
  77. package/skills/aios-construction-meeting/prompts/basic-prompt.md +78 -0
  78. package/skills/aios-construction-scheme/SKILL.md +97 -0
  79. package/skills/aios-construction-scheme/agents/openai.yaml +4 -0
  80. package/skills/aios-construction-scheme/prompts/basic-prompt.md +90 -0
  81. package/skills/aios-prompt-compare/SKILL.md +178 -0
  82. package/skills/aios-prompt-compare/agents/openai.yaml +4 -0
  83. package/skills/engineering-business-starter-kit.md +109 -0
  84. package/templates/README.md +16 -2
  85. package/templates/project-ai/.ai/ARCHSIGHT_AIOS_RULES.md +5 -4
  86. package/templates/project-ai/.ai/agent-routing.md +3 -1
  87. package/templates/project-ai/.ai/profile-detection.md +24 -0
  88. package/templates/project-ai/.ai/project-context.md +4 -1
  89. package/templates/project-ai/.ai/skills.md +31 -12
  90. package/templates/project-ai/.ai/workflows.md +7 -4
  91. package/templates/project-ai/AGENTS.md +6 -5
  92. package/templates/project-ai/AI_CODING_RULES.md +1 -1
  93. package/templates/project-ai/CLAUDE.md +6 -5
  94. package/templates/project-ai/GEMINI.md +6 -5
  95. package/templates/project-ai/OPENCODE.md +26 -0
  96. package/workflows/README.md +3 -0
  97. package/workflows/site-daily-loop.md +101 -0
@@ -0,0 +1,138 @@
1
+ #!/usr/bin/env node
2
+
3
+ import fs from "node:fs";
4
+ import path from "node:path";
5
+
6
+ const root = fs.realpathSync(process.cwd());
7
+ const errors = [];
8
+
9
+ function repoPath(...parts) {
10
+ const target = path.join(root, ...parts);
11
+ const relative = path.relative(root, target);
12
+ if (relative.startsWith("..") || path.isAbsolute(relative)) {
13
+ throw new Error(`Path traversal detected: ${target}`);
14
+ }
15
+ return target;
16
+ }
17
+
18
+ function readJson(relativePath) {
19
+ const filePath = repoPath(relativePath);
20
+ try {
21
+ return JSON.parse(fs.readFileSync(filePath, "utf8"));
22
+ } catch (error) {
23
+ errors.push(`${relativePath}: invalid JSON (${error.message})`);
24
+ return undefined;
25
+ }
26
+ }
27
+
28
+ function readText(relativePath) {
29
+ try {
30
+ return fs.readFileSync(repoPath(relativePath), "utf8");
31
+ } catch (error) {
32
+ errors.push(`${relativePath}: ${error.message}`);
33
+ return "";
34
+ }
35
+ }
36
+
37
+ function exists(relativePath) {
38
+ return fs.existsSync(repoPath(relativePath));
39
+ }
40
+
41
+ function parseFrontmatter(raw, file) {
42
+ const match = raw.match(/^---\r?\n([\s\S]*?)\r?\n---/);
43
+ if (!match) {
44
+ errors.push(`${file}: missing frontmatter`);
45
+ return {};
46
+ }
47
+
48
+ const fields = {};
49
+ for (const line of match[1].split(/\r?\n/)) {
50
+ const field = line.match(/^([A-Za-z0-9_-]+):\s*(.*)$/);
51
+ if (field) fields[field[1]] = field[2].trim();
52
+ }
53
+ return fields;
54
+ }
55
+
56
+ function check(condition, message) {
57
+ if (!condition) errors.push(message);
58
+ }
59
+
60
+ const manifest = readJson("runtime/archsight-aios.manifest.json");
61
+ const packageJson = readJson("package.json");
62
+ const geminiExtension = readJson("gemini-extension.json");
63
+ const claudePlugin = readJson(".claude-plugin/plugin.json");
64
+ const claudeMarketplace = readJson(".claude-plugin/marketplace.json");
65
+
66
+ if (manifest) {
67
+ const manifestSkillIds = new Set(manifest.skills.map((skill) => skill.id));
68
+ const skillDirs = fs
69
+ .readdirSync(repoPath("skills"), { withFileTypes: true })
70
+ .filter((entry) => entry.isDirectory() && entry.name.startsWith("aios-"))
71
+ .map((entry) => entry.name)
72
+ .sort();
73
+
74
+ check(
75
+ JSON.stringify([...manifestSkillIds].sort()) === JSON.stringify(skillDirs),
76
+ "runtime/archsight-aios.manifest.json: skills must cover repository skill directories"
77
+ );
78
+
79
+ for (const skill of manifest.skills) {
80
+ const skillFile = skill.path;
81
+ const configFile = skill.openaiConfigPath;
82
+ check(/^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(skill.id), `${skillFile}: skill id must be kebab-case`);
83
+ check(exists(skillFile), `${skillFile}: missing`);
84
+ check(exists(configFile), `${configFile}: missing`);
85
+
86
+ const raw = readText(skillFile);
87
+ const frontmatter = parseFrontmatter(raw, skillFile);
88
+ check(frontmatter.name === skill.id, `${skillFile}: frontmatter name must be ${skill.id}`);
89
+ check(Boolean(frontmatter.description), `${skillFile}: missing frontmatter description`);
90
+ }
91
+
92
+ for (const requiredAsset of manifest.requiredAssets ?? []) {
93
+ check(exists(requiredAsset), `runtime/archsight-aios.manifest.json: required asset missing ${requiredAsset}`);
94
+ }
95
+ }
96
+
97
+ if (packageJson) {
98
+ const requiredFiles = ["skills/", "scripts/", ".claude-plugin/", "gemini-extension.json", "OPENCODE.md"];
99
+ for (const requiredFile of requiredFiles) {
100
+ check(packageJson.files?.includes(requiredFile), `package.json: files must include ${requiredFile}`);
101
+ }
102
+
103
+ const requiredKeywords = ["agent-skills", "skills-sh", "gemini-cli", "claude-code", "workbuddy", "opencode", "construction-ai"];
104
+ for (const keyword of requiredKeywords) {
105
+ check(packageJson.keywords?.includes(keyword), `package.json: keywords must include ${keyword}`);
106
+ }
107
+
108
+ check(
109
+ packageJson.scripts?.["validate:skills"] === "node ./scripts/validate-skills.mjs",
110
+ "package.json: missing validate:skills script"
111
+ );
112
+ }
113
+
114
+ if (geminiExtension && packageJson) {
115
+ check(geminiExtension.name === "archsight-aios", "gemini-extension.json: name must be archsight-aios");
116
+ check(geminiExtension.version === packageJson.version, "gemini-extension.json: version must match package.json");
117
+ check(geminiExtension.contextFileName === "GEMINI.md", "gemini-extension.json: contextFileName must be GEMINI.md");
118
+ }
119
+
120
+ if (claudePlugin && packageJson) {
121
+ check(claudePlugin.name === "archsight-aios", ".claude-plugin/plugin.json: name must be archsight-aios");
122
+ check(claudePlugin.version === packageJson.version, ".claude-plugin/plugin.json: version must match package.json");
123
+ check(claudePlugin.skills === "./skills/", ".claude-plugin/plugin.json: skills must point to ./skills/");
124
+ }
125
+
126
+ if (claudeMarketplace) {
127
+ const plugin = claudeMarketplace.plugins?.find((item) => item.name === "archsight-aios");
128
+ check(Boolean(plugin), ".claude-plugin/marketplace.json: must include archsight-aios plugin");
129
+ check(plugin?.skills === "./skills/", ".claude-plugin/marketplace.json: skills must point to ./skills/");
130
+ }
131
+
132
+ if (errors.length > 0) {
133
+ console.error(`Skill validation failed with ${errors.length} error(s):`);
134
+ for (const error of errors) console.error(`- ${error}`);
135
+ process.exit(1);
136
+ }
137
+
138
+ console.log("Skill validation passed.");
package/skills/README.md CHANGED
@@ -60,3 +60,19 @@ Skill 可以继续用 `SKILL.md` 表达操作方法,但涉及确定性工具
60
60
  | `aios-knowledge` | BIM、IFC、建筑规范、审图规则和知识结构化。 |
61
61
  | `aios-structural` | 结构力学、荷载、边界条件、FEM 和确定性求解链路评审。 |
62
62
  | `aios-runtime` | Prompt、Context、Memory、MCP/Tool、RAG/GraphRAG 和多 Agent Runtime 设计。 |
63
+ | `aios-prompt-compare` | Prompt / Skill 效果对比:对同一输入分别评估弱提示词、便携强提示词和真实 Skill 触发结果,判断是否应沉淀为 Skill。 |
64
+
65
+ 工程业务管理技能包 (Engineering Project Management):
66
+
67
+ 工程业务管理场景可直接参考 [工程业务管理基础技能包](engineering-business-starter-kit.md)。该基础包提供 L0-L1 级通用提示词 / Skill 模板能力:把工程资料整理成矩阵、清单、台账和人工复核问题;不承诺系统建设、自动审批、专业结论或替代签审。
68
+
69
+ | Skill | 用途 |
70
+ | --- | --- |
71
+ | `aios-commercial-tender` | 工程招投标响应证据链,用于提取评分点、资格条件、废标风险、资料缺口和人工复核事项。 |
72
+ | `aios-commercial-contract` | 工程分包、采购和补充协议履约证据链,用于提取节点、责任边界、付款条件和合同资料缺口。 |
73
+ | `aios-construction-daily` | 现场施工日报证据链,用于提取管理摘要、异常、问题台账、计划偏差和需补充确认事项。 |
74
+ | `aios-construction-meeting` | 工程现场会议待办闭环,用于将会议讨论转化为责任人、期限、争议点和下次追踪清单。 |
75
+ | `aios-commercial-variation` | 工程变更签证资料链审查,用于梳理联系单、纪要、图纸变更、合同流程和资料断点。 |
76
+ | `aios-construction-scheme` | 专项施工方案证据链辅审,用于提取危险源、交底要点、规范核验点、计算书缺口和专家复核事项。 |
77
+
78
+ 工程业务管理 Skill 只处理建筑工程资料抽取、证据链整理、风险提示和人工复核分流,不替代法务、造价、监理、安全、项目经理、总工或专家签审。涉及规范、制度、结构计算、质量安全、金额、工期索赔或责任归属时,必须输出 `Claim / Evidence / Tool Result / Decision`;没有工具或人工证据时只能标注 `Need verify` 或 `Hold for human`。
@@ -0,0 +1,107 @@
1
+ ---
2
+ name: aios-commercial-contract
3
+ description: 工程合同履约证据链工作流。用于从工程分包、采购、租赁和补充协议中抽取履约节点、付款条件、责任边界、资料缺口和需人工复核的风险。
4
+ ---
5
+
6
+ # AIOS Contract
7
+
8
+ ## 目标
9
+
10
+ 以 Argus(风险审查官)的方式审查工程合同资料,把合同文本转化为可追踪的履约节点、付款条件、责任边界和证据缺口。
11
+
12
+ 本 Skill 不输出最终法律意见、违约责任归属或商务结算结论;它只做工程管理证据链整理和风险提示,并把需法务、商务、项目经理或业主确认的事项显式标出。
13
+
14
+ ## AIOS 适用性
15
+
16
+ 本 Skill 仅用于建筑工程项目中的合同履约管理、采购/分包资料整理、补充协议复核和现场执行交接。
17
+
18
+ - 工程项目合同、采购合同、分包合同、租赁协议、补充协议和履约台账,启用 AIOS 行业增强。
19
+ - 普通非建筑合同、通用法务审查或 HR / 行政合同,不使用本 Skill。
20
+ - 任务只需要普通文本摘要时,优先使用宿主工具的通用能力,不强行引入工程证据链。
21
+
22
+ ## 输入
23
+
24
+ 优先收集:
25
+
26
+ - 合同、补充协议、招标/报价文件、会议纪要和往来函件。
27
+ - 资料来源清单:文件名、版本、日期、页码、章节、行号或可定位段落。
28
+ - 项目类型、合同类型、地区、标段、承包范围和关键里程碑。
29
+ - 用户指定的重点问题,例如付款、工期、质量、验收、违约、争议解决或资料缺失。
30
+
31
+ ## 基础版模式
32
+
33
+ 用于工程业务资料处理、项目复核辅助、部门工作流整理或模板沉淀时,按本节收口。可复制的基础提示词见 `prompts/basic-prompt.md`。
34
+
35
+ 最小可用输入:
36
+
37
+ - 脱敏后的工程合同、分包合同、采购合同、租赁合同、补充协议或合同摘要。
38
+ - 文件名、版本、日期、章节 / 页码 / 条款标题。
39
+ - 用户要复核的问题,例如履约节点、付款条件、空白字段、责任边界或资料缺口。
40
+ - 人工复核岗位,例如法务、商务、项目经理、造价、财务或合同经办。
41
+
42
+ 基础输出优先级:
43
+
44
+ 1. 先输出合同基本信息和空白字段优先核对表。
45
+ 2. 把合同转成关键履约节点、付款和结算条件、责任和违约风险提示。
46
+ 3. 所有金额、期限、责任方、验收、付款、违约条款必须带原文依据位置或原文关键词。
47
+ 4. 输出只作为履约管理辅助,不构成法律意见、违约定性、索赔或结算结论。
48
+
49
+ ## Capability 与证据
50
+
51
+ - 所有抽取结论必须带 `Evidence`,至少包括来源文件、页码/章节/行号或原文短摘。
52
+ - 涉及法律、地方制度、招采规则、工程规范或合同示范文本适用性时,优先调用或要求 `knowledge.norm_lookup`;没有工具结果时标注 `Need verify`。
53
+ - 多 Agent 冲突、工具结果缺失或资料互相矛盾时,按 `governance/arbitration-protocol.md` 输出 `Claim / Evidence / Tool Result / Decision`。
54
+
55
+ ## 工作流
56
+
57
+ 1. 建立 Source Map:列出输入文件、版本、日期和可引用定位方式。
58
+ 2. 识别合同事实:合同类型、双方主体、范围、金额、工期、质量目标、验收方式和争议解决条款。
59
+ 3. 抽取履约节点:把触发条件、期限、责任方、交付物和验收材料拆成表格。
60
+ 4. 抽取付款和结算条件:区分预付款、进度款、结算、质保金、发票、验收和资料前置条件。
61
+ 5. 建立责任边界:列出甲方、乙方、分包、供应商、监理、设计或总包的明确义务。
62
+ 6. 标注风险和缺口:只标“建议复核 / Need verify”,不得把缺失资料推断成违约事实。
63
+ 7. 对规范、制度或示范文本适用性发起 `knowledge.norm_lookup` 调用计划;没有 Tool Result 时保留为待核验。
64
+ 8. 输出人工复核分流:法务、商务、项目经理、技术负责人或业主代表。
65
+
66
+ ## 输出格式
67
+
68
+ 默认输出:
69
+
70
+ 1. 结论
71
+ 2. Source Map
72
+ 3. 合同基本事实
73
+ 4. 履约节点表
74
+ 5. 付款与结算条件
75
+ 6. 责任边界与风险提示
76
+ 7. 待补充资料
77
+ 8. Arbitration
78
+
79
+ 履约节点条目格式:
80
+
81
+ ```text
82
+ 节点:
83
+ 触发条件:
84
+ 期限:
85
+ 责任方:
86
+ 交付物:
87
+ Evidence:
88
+ 需复核:
89
+ ```
90
+
91
+ Arbitration 条目格式:
92
+
93
+ ```text
94
+ Claim:
95
+ Evidence:
96
+ Tool Result:
97
+ Decision:Proceed / Need verify / Hold for human
98
+ 人工复核岗位:
99
+ ```
100
+
101
+ ## 约束
102
+
103
+ - 不输出最终法律意见、违约定性、索赔金额或结算金额。
104
+ - 不把合同外事实写成合同义务。
105
+ - 不在没有原文定位时给出确定结论。
106
+ - 不替代法务、商务、造价、项目经理或业主代表签审。
107
+ - 对金额、日期和期限保持原单位、原币种和原表达;换算必须标注来源和假设。
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "AIOS Contract"
3
+ short_description: "整理工程合同履约节点、责任边界和证据链风险"
4
+ default_prompt: "当任务涉及建筑工程合同、分包、采购、租赁或补充协议履约资料时,使用该技能抽取履约节点、付款条件、责任边界、原文证据和人工复核事项;不得输出最终法律或结算结论。"
@@ -0,0 +1,83 @@
1
+ # 合同条款与履约节点基础提示词
2
+
3
+ ## 适用场景
4
+
5
+ 用于工程分包合同、采购合同、租赁合同、补充协议等文本的条款提取、履约节点清单、付款结算条件和风险提示。
6
+
7
+ ## 使用边界
8
+
9
+ - 输出为合同文本分析辅助,不构成法律意见。
10
+ - 不判断最终责任归属,不替代法务、商务、造价、财务或项目负责人复核。
11
+ - 不把资料未提及事项写成违约或不合格。
12
+ - 合同中项目名称、主体、金额、期限等为空白时,必须标为“需补充确认”,不能用常识补全。
13
+
14
+ ## 资料输入区
15
+
16
+ ```text
17
+ 在这里粘贴脱敏后的合同条款、协议片段或合同摘要。
18
+ ```
19
+
20
+ ## 提示词
21
+
22
+ 请基于以上合同资料,帮助项目管理人员提取可执行的履约信息和需复核事项。
23
+
24
+ 要求:
25
+
26
+ 1. 只基于资料文本输出,不补充合同外事实。
27
+ 2. 对金额、期限、责任、验收、付款、违约、争议解决等条款优先提取。
28
+ 3. 每个关键节点都要给出原文依据位置或原文关键词,便于人工回查。
29
+ 4. 对不明确或资料缺失处标为“需补充确认”。
30
+ 5. 风险提示使用“建议复核”,不要写成确定法律结论。
31
+ 6. 如果合同样本存在大量空白字段,先输出“空白字段优先核对表”,再进入履约节点提取。
32
+
33
+ 请按以下格式输出:
34
+
35
+ ### 资料来源 / Source Map
36
+
37
+ | 序号 | 资料名称 / 片段 | 版本 / 日期 | 章节 / 页码 / 条款 | 当前用途 | 可信度 / 缺口 |
38
+ |---:|---|---|---|---|---|
39
+
40
+ ### 一、合同基本信息
41
+
42
+ | 项目 | 内容 | 原文依据 | 需确认事项 |
43
+ |---|---|---|---|
44
+
45
+ ### 二、空白字段优先核对表
46
+
47
+ | 序号 | 空白 / 不明确字段 | 可能影响 | 建议确认对象 |
48
+ |---:|---|---|---|
49
+
50
+ ### 三、关键履约节点
51
+
52
+ | 序号 | 节点 | 触发条件 | 时间 / 期限 | 责任方 | 原文依据位置 | 需准备资料 | 复核提示 |
53
+ |---:|---|---|---|---|---|---|---|
54
+
55
+ ### 四、付款和结算条款
56
+
57
+ | 序号 | 条款事项 | 金额 / 比例 / 条件 | 原文依据 | 需确认事项 |
58
+ |---:|---|---|---|---|
59
+
60
+ ### 五、责任和违约风险提示
61
+
62
+ | 序号 | 风险点 | 原文依据 | 可能影响 | 建议复核岗位 |
63
+ |---:|---|---|---|---|
64
+
65
+ ### 六、待补充资料清单
66
+
67
+ 列出为了后续履约管理仍需补充或核对的资料。
68
+
69
+ ### 七、可沉淀为部门模板的字段
70
+
71
+ 列出后续可固化为合同履约模板的字段,例如节点、触发条件、期限、责任方、资料、复核岗位、状态。
72
+
73
+ ### 八、不能下结论的事项
74
+
75
+ 列出当前资料不足以支持的结论,例如法律意见、违约定性、违约责任、责任归属结论、索赔金额、结算金额、结算金额结论、税务结论。
76
+
77
+ ## 验证检查项
78
+
79
+ - 是否能生成履约节点表。
80
+ - 是否把付款、验收、违约、争议等关键条款提取清楚。
81
+ - 是否保留法律和商务复核边界。
82
+ - 是否避免把提示写成法律结论。
83
+ - 是否把合同空白项和资料缺口明确列出来。
@@ -0,0 +1,107 @@
1
+ ---
2
+ name: aios-commercial-tender
3
+ description: 工程招投标响应证据链工作流。用于从招标文件、评分办法、资格条件和技术标要求中抽取废标风险、评分点、响应矩阵、资料清单和人工复核事项。
4
+ ---
5
+
6
+ # AIOS Tender
7
+
8
+ ## 目标
9
+
10
+ 以 Mason(工程总工)的方式组织工程招投标资料解析,把招标文件转化为可执行的响应矩阵、废标风险清单、资格资料清单和技术标准备路径。
11
+
12
+ 本 Skill 不替代投标负责人、法务、商务、造价或招标代理复核;不输出中标概率、围标串标判断或最终投标决策。
13
+
14
+ ## AIOS 适用性
15
+
16
+ 本 Skill 仅用于建筑工程、设计咨询、施工总承包、专业分包、材料设备采购和运维改造等工程招投标场景。
17
+
18
+ - 招标公告、招标文件、评分办法、技术标准、答疑澄清和投标文件目录,启用 AIOS 行业增强。
19
+ - 普通商业采购、招聘、行政采购或非工程投标,不使用本 Skill。
20
+ - 只需要普通文件摘要时,优先使用宿主工具通用能力。
21
+
22
+ ## 输入
23
+
24
+ 优先收集:
25
+
26
+ - 招标文件、评分办法、资格预审文件、答疑澄清、图纸清单、技术标准和合同条款。
27
+ - 文件版本、发出日期、页码、章节、条款编号和附件编号。
28
+ - 企业已有资料:资质、业绩、人员证书、设备、财务、信用、类似项目案例。
29
+ - 用户关注点:废标项、评分点、技术标目录、资料缺口、响应难点。
30
+
31
+ ## 基础版模式
32
+
33
+ 用于工程业务资料处理、项目复核辅助、部门工作流整理或模板沉淀时,按本节收口。可复制的基础提示词见 `prompts/basic-prompt.md`。
34
+
35
+ 最小可用输入:
36
+
37
+ - 脱敏招标文件片段、评分办法、技术标要求,或 AI 标书工具试用后的人工检查问题清单。
38
+ - 文件名、版本、日期、章节 / 页码 / 条款标题。
39
+ - 用户要复核的问题,例如评分点响应、废标风险、资料缺口或技术标目录。
40
+ - 人工复核岗位,例如投标负责人、经营人员、技术负责人、法务或造价。
41
+
42
+ 基础输出优先级:
43
+
44
+ 1. 先判断输入类型:真实招标文件 / 评分办法、AI 生成技术标后的人工检查问题清单、工具咨询或混合资料。
45
+ 2. 若缺少真实招标原文,明确写出“缺少可验证招标依据”,只输出问题回应矩阵和响应矩阵模板,不输出真实读标结论。
46
+ 3. 输出 AI 技术标复核问题回应矩阵、评分点响应矩阵、资料缺口和人工复核事项。
47
+ 4. 废标、资格条件和评分分值缺证据时标为 `Need verify`,不得补猜。
48
+
49
+ ## Capability 与证据
50
+
51
+ - 每个废标风险、评分点和资格条件必须带原文定位。
52
+ - 涉及法规、地方交易规则、规范标准或政策适用性时,调用或要求 `knowledge.norm_lookup`;没有 Tool Result 时标注 `Need verify`。
53
+ - 评分预测只能基于明确评分办法和已提供资料;缺资料不得脑补。
54
+ - 冲突、澄清版本不一致或关键证据缺失时输出 `Decision: Hold for human`。
55
+
56
+ ## 工作流
57
+
58
+ 1. 建立 Source Map:列出招标资料、答疑澄清、版本和定位方式。
59
+ 2. 抽取项目基本事实:招标范围、工期、质量目标、资质要求、投标截止、保证金和评标办法。
60
+ 3. 标出废标/否决项:原文条件、触发风险、所需证明材料和责任人。
61
+ 4. 抽取资格条件:资质、业绩、人员、证书、财务、信用、联合体和设备要求。
62
+ 5. 建立评分点响应矩阵:评分项、分值、响应材料、企业已有证据、缺口、负责人。
63
+ 6. 生成技术标目录建议:只基于招标文件要求和工程类型,不额外扩展无关章节。
64
+ 7. 标注澄清和人工复核事项:法务、商务、技术、造价、投标负责人。
65
+
66
+ ## 输出格式
67
+
68
+ 默认输出:
69
+
70
+ 1. 结论
71
+ 2. Source Map
72
+ 3. 项目和资料概览
73
+ 4. 废标 / 否决风险清单
74
+ 5. 资格条件和证明材料清单
75
+ 6. 评分点响应矩阵
76
+ 7. 技术标目录建议
77
+ 8. 人工复核与澄清问题
78
+ 9. Arbitration
79
+
80
+ 响应矩阵条目格式:
81
+
82
+ ```text
83
+ 评分项:
84
+ 分值:
85
+ 响应材料:
86
+ 已有证据:
87
+ 缺口:
88
+ Evidence:
89
+ Decision:
90
+ ```
91
+
92
+ Arbitration 条目格式:
93
+
94
+ ```text
95
+ Claim:
96
+ Evidence:
97
+ Tool Result:
98
+ Decision:Proceed / Need verify / Hold for human
99
+ ```
100
+
101
+ ## 约束
102
+
103
+ - 不输出中标概率、最终投标决策或违法合规结论。
104
+ - 不把未提供的企业资质、业绩或证书当作已具备。
105
+ - 不忽略答疑澄清版本;版本冲突必须标注。
106
+ - 不替代投标负责人、法务、商务、造价或技术负责人审核。
107
+ - 对废标项使用保守口径:缺证据时标 `Need verify`,不直接判定废标。
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "AIOS Tender"
3
+ short_description: "解析工程招投标文件、评分点和响应矩阵"
4
+ default_prompt: "当任务涉及建筑工程招标文件、评分办法或投标响应准备时,使用该技能抽取废标风险、资格条件、评分点、资料缺口和人工复核事项;不得输出中标概率或最终投标决策。"
@@ -0,0 +1,94 @@
1
+ # 招标文件解析与技术标响应矩阵基础提示词
2
+
3
+ ## 适用场景
4
+
5
+ 用于脱敏招标文件、评分办法、技术标要求、资格条件、答疑澄清、AI 生成技术标后的人工检查问题清单的初步解析,生成问题回应矩阵、评分点响应矩阵、废标风险占位、资格资料清单和人工复核事项。
6
+
7
+ ## 使用边界
8
+
9
+ - 仅用于投标文件准备辅助,不提供具体项目评标结论。
10
+ - 不替代投标负责人、经营人员、法务人员、造价人员或专家判断。
11
+ - 如资料未提及,应写为“需补充确认”,不能推定为满足或不满足。
12
+ - 如果输入只是 AI 标书工具试用后的人工检查问题、业务需求汇总、经验总结或工具介绍,而不是招标文件 / 评分办法原文,必须先说明“缺少可验证招标依据”,不要假装已经完成读标。
13
+ - 只有输入包含真实招标原文和评分办法时,才输出具体废标项、资格条件和评分分值。
14
+
15
+ ## 资料输入区
16
+
17
+ ```text
18
+ 在这里粘贴脱敏后的招标文件片段、评分办法、技术标要求、资格条件、答疑澄清,或 AI 生成技术标后的人工检查问题清单。
19
+ ```
20
+
21
+ ## 提示词
22
+
23
+ 请基于以上资料,按施工企业投标文件准备的视角进行结构化解析。
24
+
25
+ 要求:
26
+
27
+ 1. 先判断输入类型:A. 真实招标文件 / 评分办法;B. AI 生成技术标后的人工检查问题清单;C. 工具咨询或经验汇总;D. 混合资料。
28
+ 2. 只使用资料中明确出现的信息;资料没有写明的内容标为“需补充确认”。
29
+ 3. 不给出中标概率、评标结论、串标规避建议或工具采购承诺。
30
+ 4. 区分废标风险、资格条件、评分点、技术标响应要求、格式要求和用户关心问题。
31
+ 5. 每一条关键判断都要写清资料依据位置,例如章节名、页码、条款标题、原文关键词或用户问题原句。
32
+ 6. 输出内容要便于投标负责人复核和分工。
33
+
34
+ 请按以下格式输出:
35
+
36
+ ### 资料来源 / Source Map
37
+
38
+ | 序号 | 资料名称 / 片段 | 版本 / 日期 | 章节 / 页码 / 条款 | 当前用途 | 可信度 / 缺口 |
39
+ |---:|---|---|---|---|---|
40
+
41
+ ### 一、输入类型和资料状态判断
42
+
43
+ | 项目 | 判断 | 资料依据 | 不能直接下结论的原因 |
44
+ |---|---|---|---|
45
+
46
+ 如果不是招标文件 / 评分办法原文,请在本节明确写出:`缺少可验证招标依据,以下只能作为问题回应和矩阵模板,不作为真实读标结论。`
47
+
48
+ ### 二、AI 技术标复核问题回应矩阵
49
+
50
+ | 序号 | 人工检查问题 / 关注点 | 当前可回答程度 | 更稳的回答口径 | 需要的资料 / 工具 | 人工复核岗位 |
51
+ |---:|---|---|---|---|---|
52
+
53
+ ### 三、废标或重大响应风险清单
54
+
55
+ | 序号 | 风险事项 | 原文依据 | 可能影响 | 建议复核责任 |
56
+ |---:|---|---|---|---|
57
+
58
+ 如输入不是招标原文,本节只输出“需招标原文确认”的占位清单,不编造具体废标条款。
59
+
60
+ ### 四、资格条件和证明材料清单
61
+
62
+ | 序号 | 条件 | 所需证明材料 | 资料状态 | 需补充确认 |
63
+ |---:|---|---|---|---|
64
+
65
+ ### 五、评分点响应矩阵
66
+
67
+ | 序号 | 评分点 / 要求 | 分值或权重 | 原文依据位置 | 建议响应内容 | 对应技术标章节 | 责任岗位 | 复核提示 |
68
+ |---:|---|---:|---|---|---|---|---|
69
+
70
+ 如果资料仅包含评分点结构或用户问题,请把“分值或权重”和“原文依据位置”标为需补充确认。
71
+
72
+ ### 六、技术标目录建议
73
+
74
+ 请给出一个目录草案,并标注每个章节主要响应哪些评分点。
75
+
76
+ ### 七、人工复核提醒
77
+
78
+ 列出必须由投标负责人、经营人员、技术负责人、法务或造价确认的事项。
79
+
80
+ ### 八、可沉淀为部门模板的字段
81
+
82
+ 列出后续可固化为经营中心模板的字段,例如资料类型、评分点、响应章节、依据位置、责任岗位、复核状态。
83
+
84
+ ### 九、不能下结论的事项
85
+
86
+ 列出当前资料不足以支持的结论,例如真实读标、废标判断、资格满足、评分预测、中标概率、保证中标、工具采购建议。
87
+
88
+ ## 验证检查项
89
+
90
+ - 是否先判断资料类型和可验证程度。
91
+ - 是否生成可执行的回应矩阵和响应矩阵,而不是泛泛建议。
92
+ - 是否把缺失信息标成“需补充确认”。
93
+ - 是否避免替代评标或承诺结果。
94
+ - 是否在缺少真实招标文件时明确提示验证不足。
@@ -0,0 +1,106 @@
1
+ ---
2
+ name: aios-commercial-variation
3
+ description: 工程变更签证证据链审查工作流。用于整理联系单、会议纪要、图纸变更、现场记录和合同条款,检查变更签证资料链完整性和人工复核风险。
4
+ ---
5
+
6
+ # AIOS Variation
7
+
8
+ ## 目标
9
+
10
+ 以 Argus(风险审查官)的方式审查工程变更和签证资料链,识别事实依据、合同/流程依据、资料断点、争议风险和人工复核岗位。
11
+
12
+ 本 Skill 不输出签证成立、索赔成立、责任归属、最终金额或结算结论;它只提供证据链完整性检查和风险分流。
13
+
14
+ ## AIOS 适用性
15
+
16
+ 本 Skill 仅用于建筑工程现场变更、签证、索赔线索、联系单、图纸变更、会议决议和现场条件变化资料。
17
+
18
+ - 设计变更、现场签证、工程联系单、会议纪要、停工窝工、材料替代、施工条件变化和工程量变化,启用 AIOS 行业增强。
19
+ - 普通办公流程、非工程合同变更或通用问题追踪,不使用本 Skill。
20
+ - 只需要通用摘要时,优先使用宿主工具的通用能力。
21
+
22
+ ## 输入
23
+
24
+ 优先收集:
25
+
26
+ - 变更/签证事项描述、工程联系单、会议纪要、图纸变更、现场照片说明、施工日志、监理通知和合同条款。
27
+ - 资料版本、日期、签发主体、签收主体、页码、章节、图号、联系单编号和签认状态。
28
+ - 用户关注点:资料是否闭合、是否需发函、是否有合同依据、是否存在时效风险。
29
+
30
+ ## 基础版模式
31
+
32
+ 用于工程业务资料处理、项目复核辅助、部门工作流整理或模板沉淀时,按本节收口。可复制的基础提示词见 `prompts/basic-prompt.md`。
33
+
34
+ 最小可用输入:
35
+
36
+ - 脱敏后的签证单、联系单、会议纪要、合同条款、现场记录、照片说明、图纸变更说明,或公开行业样表字段。
37
+ - 文件名、编号、日期、签发 / 签收主体、页码、章节、图号或签认状态。
38
+ - 用户要复核的问题,例如资料链是否完整、缺哪些附件、是否需要补资料或发函。
39
+ - 人工复核岗位,例如经营、造价、项目经理、合同、法务、资料员或业主代表。
40
+
41
+ 基础输出优先级:
42
+
43
+ 1. 先判断资料链完整度:完整、部分线索、仅方法演示。
44
+ 2. 区分事实记录、合同依据、过程线索、正式依据待确认和缺失资料。
45
+ 3. 公开样表只能提供字段结构,不代表项目事实。
46
+ 4. 不判断最终金额、责任归属、签证成立或索赔成立。
47
+
48
+ ## Capability 与证据
49
+
50
+ - 每个事实链节点必须带 `Evidence`:来源文件、日期、编号、页码/章节/行号和签认状态。
51
+ - 涉及合同示范文本、地方签证流程、规范或政策适用性时,调用或要求 `knowledge.norm_lookup`;没有 Tool Result 时标注 `Need verify`。
52
+ - 涉及工程量、造价、工期索赔和责任归属时必须 `Hold for human`,交给造价、法务、项目经理或业主代表复核。
53
+ - 资料链冲突按 `Claim / Evidence / Tool Result / Decision` 仲裁。
54
+
55
+ ## 工作流
56
+
57
+ 1. 建立 Source Map:按时间顺序列出联系单、纪要、图纸、日志、照片、通知和合同条款。
58
+ 2. 定义变更事项:变更对象、发生原因、涉及范围、影响类型和当前状态。
59
+ 3. 建立事实链:事件发生、提出、确认、指令、实施、验收、计量和结算资料是否齐全。
60
+ 4. 建立合同/流程链:合同条款、通知时限、签认主体、审批路径和资料要求。
61
+ 5. 查找断点:缺签认、缺图号、缺工程量、缺照片、缺通知、超时、主体不一致、版本冲突。
62
+ 6. 输出风险分流:资料补正、发函、商务测算、法务判断、技术复核、业主确认。
63
+ 7. 标注不能判断的事项:金额、工期、责任和最终成立条件。
64
+
65
+ ## 输出格式
66
+
67
+ 默认输出:
68
+
69
+ 1. 结论
70
+ 2. Source Map
71
+ 3. 变更 / 签证事项摘要
72
+ 4. 资料链完整性清单
73
+ 5. 合同和流程依据对照
74
+ 6. 资料断点与合规风险
75
+ 7. 多岗位复核建议
76
+ 8. Arbitration
77
+
78
+ 资料链条目格式:
79
+
80
+ ```text
81
+ 节点:
82
+ 资料:
83
+ 签发 / 签收:
84
+ 状态:
85
+ Evidence:
86
+ 缺口:
87
+ Decision:
88
+ ```
89
+
90
+ Arbitration 条目格式:
91
+
92
+ ```text
93
+ Claim:
94
+ Evidence:
95
+ Tool Result:
96
+ Decision:Proceed / Need verify / Hold for human
97
+ 人工复核岗位:
98
+ ```
99
+
100
+ ## 约束
101
+
102
+ - 不输出签证成立、索赔成立、责任归属、最终金额或结算结论。
103
+ - 不把未签认资料写成已确认事实。
104
+ - 不忽略合同通知时限、签收主体和版本冲突。
105
+ - 不用单一会议纪要替代完整资料链。
106
+ - 缺少原始证据时必须标注 `Need verify`,不得补猜。
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "AIOS Variation"
3
+ short_description: "审查工程变更签证资料链和风险断点"
4
+ default_prompt: "当任务涉及工程变更、签证、联系单、图纸变更或索赔线索时,使用该技能整理事实链、合同流程链、资料断点和人工复核岗位;不得输出成立、责任或金额终局结论。"