@whyshu/argent-engine 0.0.0-stage → 0.6.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 (305) hide show
  1. package/MANIFEST.json +307 -0
  2. package/engine/VERSION +1 -0
  3. package/engine/agents/catalog.json +454 -0
  4. package/engine/configs/_aliases.proposed.json +651 -0
  5. package/engine/configs/_migration-plan.proposed.json +899 -0
  6. package/engine/configs/account.json +272 -0
  7. package/engine/configs/advanced.json +205 -0
  8. package/engine/configs/host.json +149 -0
  9. package/engine/configs/hr.json +27 -0
  10. package/engine/configs/notify.json +264 -0
  11. package/engine/core/cli/argent.mjs +277 -0
  12. package/engine/core/contracts/argent.contracts.json +1065 -0
  13. package/engine/core/contracts/verbs.schema.json +2539 -0
  14. package/engine/core/lib/argent-datadir.mjs +223 -0
  15. package/engine/core/lib/audit.mjs +187 -0
  16. package/engine/core/lib/claim.mjs +258 -0
  17. package/engine/core/lib/config-catalog.mjs +1172 -0
  18. package/engine/core/lib/doctor-customer.mjs +577 -0
  19. package/engine/core/lib/flow-list.mjs +138 -0
  20. package/engine/core/lib/flow-registry.mjs +48 -0
  21. package/engine/core/lib/init.mjs +247 -0
  22. package/engine/core/lib/ledger.mjs +124 -0
  23. package/engine/core/lib/license-activate.mjs +813 -0
  24. package/engine/core/lib/license-device.mjs +314 -0
  25. package/engine/core/lib/license-file.mjs +349 -0
  26. package/engine/core/lib/license-guard.mjs +123 -0
  27. package/engine/core/lib/license-ops.mjs +1645 -0
  28. package/engine/core/lib/license-verdict.mjs +133 -0
  29. package/engine/core/lib/license.mjs +577 -0
  30. package/engine/core/lib/notify/dedup.mjs +101 -0
  31. package/engine/core/lib/notify/feishu.mjs +38 -0
  32. package/engine/core/lib/notify/index.mjs +95 -0
  33. package/engine/core/lib/notify/verb.mjs +327 -0
  34. package/engine/core/lib/notify/webhook.mjs +135 -0
  35. package/engine/core/lib/notify/wecom.mjs +36 -0
  36. package/engine/core/lib/python.mjs +145 -0
  37. package/engine/core/lib/sop.mjs +116 -0
  38. package/engine/core/lib/versions.mjs +205 -0
  39. package/engine/core/mcp/client.mjs +67 -0
  40. package/engine/core/mcp/http.mjs +138 -0
  41. package/engine/core/mcp/server.mjs +702 -0
  42. package/engine/scripts/_engine_rules_probe.py +15 -0
  43. package/engine/scripts/analyze-full-day.py +568 -0
  44. package/engine/scripts/archive/feishu-bridge.js +246 -0
  45. package/engine/scripts/argent-agents.mjs +527 -0
  46. package/engine/scripts/argent-capabilities.mjs +776 -0
  47. package/engine/scripts/argent-catalog.mjs +186 -0
  48. package/engine/scripts/argent-datadir.py +62 -0
  49. package/engine/scripts/argent-doctor.mjs +624 -0
  50. package/engine/scripts/argent-env-write.mjs +302 -0
  51. package/engine/scripts/argent-schedule.mjs +620 -0
  52. package/engine/scripts/argent-setup-check.mjs +369 -0
  53. package/engine/scripts/argent-upgrade.mjs +1046 -0
  54. package/engine/scripts/base-bootstrap.sh +575 -0
  55. package/engine/scripts/billing-mode-daily.sh +12 -0
  56. package/engine/scripts/build-engine-package.mjs +123 -0
  57. package/engine/scripts/capability-packs.lock.json +484 -0
  58. package/engine/scripts/capability_pack.py +1242 -0
  59. package/engine/scripts/check-1.0-criteria.mjs +355 -0
  60. package/engine/scripts/check-agent-catalog.mjs +141 -0
  61. package/engine/scripts/check-billing-mode.sh +377 -0
  62. package/engine/scripts/check-child-sessions.mjs +83 -0
  63. package/engine/scripts/check-config-catalog.mjs +677 -0
  64. package/engine/scripts/check-docs-drift.mjs +522 -0
  65. package/engine/scripts/check-dsh-web-expose.sh +98 -0
  66. package/engine/scripts/check-judgment-drift.mjs +403 -0
  67. package/engine/scripts/check-license.mjs +199 -0
  68. package/engine/scripts/check-model-auth.py +443 -0
  69. package/engine/scripts/check-pack-closure.mjs +661 -0
  70. package/engine/scripts/check-portable-symbols.mjs +116 -0
  71. package/engine/scripts/check-preset-landing.mjs +124 -0
  72. package/engine/scripts/check-production-home.mjs +602 -0
  73. package/engine/scripts/check-role-mapping.mjs +461 -0
  74. package/engine/scripts/check-sample-redaction.mjs +320 -0
  75. package/engine/scripts/check-skill-classification.mjs +188 -0
  76. package/engine/scripts/check-sop-consistency.mjs +431 -0
  77. package/engine/scripts/check-test-env-safety.mjs +627 -0
  78. package/engine/scripts/check-version-consistency.mjs +452 -0
  79. package/engine/scripts/ci-run.sh +558 -0
  80. package/engine/scripts/config-explain.mjs +278 -0
  81. package/engine/scripts/configure-provider.rb +29 -0
  82. package/engine/scripts/customer-config-migrate.mjs +179 -0
  83. package/engine/scripts/customer-preflight.py +892 -0
  84. package/engine/scripts/customer-readiness.sh +134 -0
  85. package/engine/scripts/daily-report-inbox.py +242 -0
  86. package/engine/scripts/daily-report-reconcile.mjs +312 -0
  87. package/engine/scripts/daily-report.mjs +1310 -0
  88. package/engine/scripts/daily-report.sh +46 -0
  89. package/engine/scripts/data/lip-product-dict.json +306 -0
  90. package/engine/scripts/deliver-customer.mjs +932 -0
  91. package/engine/scripts/delivery-faces.txt +31 -0
  92. package/engine/scripts/desktop-trial.sh +146 -0
  93. package/engine/scripts/dev-window.sh +260 -0
  94. package/engine/scripts/drill-clean-machine.sh +315 -0
  95. package/engine/scripts/dsh-api-client.mjs +215 -0
  96. package/engine/scripts/dsh-backup-scope.sh +83 -0
  97. package/engine/scripts/dsh-offline-pack.mjs +77 -0
  98. package/engine/scripts/dsh-overlay-pin.sh +87 -0
  99. package/engine/scripts/dsh-plane.mjs +153 -0
  100. package/engine/scripts/dsh-portforward.py +223 -0
  101. package/engine/scripts/dsh-preflight.mjs +179 -0
  102. package/engine/scripts/dsh-release-watch-daily.sh +19 -0
  103. package/engine/scripts/dsh-release-watch.mjs +458 -0
  104. package/engine/scripts/dsh-remote-check.sh +99 -0
  105. package/engine/scripts/dsh-restart.sh +179 -0
  106. package/engine/scripts/dsh-restore.sh +111 -0
  107. package/engine/scripts/dsh-scope-rewire.mjs +803 -0
  108. package/engine/scripts/dsh-snapshot.mjs +116 -0
  109. package/engine/scripts/dsh-upgrade-readiness.mjs +165 -0
  110. package/engine/scripts/dsh-upgrade.mjs +612 -0
  111. package/engine/scripts/dsh-url.sh +86 -0
  112. package/engine/scripts/dsh-web-launch.mjs +155 -0
  113. package/engine/scripts/ensure-store-windows.py +509 -0
  114. package/engine/scripts/entitlements.py +458 -0
  115. package/engine/scripts/env_probe.py +411 -0
  116. package/engine/scripts/feishu-card.mjs +252 -0
  117. package/engine/scripts/fix-skill-frontmatter.py +209 -0
  118. package/engine/scripts/flow-auto-retry.py +454 -0
  119. package/engine/scripts/flow-requirements.json +720 -0
  120. package/engine/scripts/flow-scaffold.py +275 -0
  121. package/engine/scripts/flow-timers-plist.sh +86 -0
  122. package/engine/scripts/flow-timers.sh +182 -0
  123. package/engine/scripts/flow-trigger-wake.mjs +284 -0
  124. package/engine/scripts/flow-trigger.sh +571 -0
  125. package/engine/scripts/flow_billing.py +354 -0
  126. package/engine/scripts/flow_capability_stats.py +314 -0
  127. package/engine/scripts/flow_case.py +194 -0
  128. package/engine/scripts/flow_claim.py +497 -0
  129. package/engine/scripts/flow_config.py +1024 -0
  130. package/engine/scripts/flow_failure.py +588 -0
  131. package/engine/scripts/flow_learn.py +105 -0
  132. package/engine/scripts/flow_ledger.py +235 -0
  133. package/engine/scripts/flow_policy.py +238 -0
  134. package/engine/scripts/flow_preflight.py +339 -0
  135. package/engine/scripts/flow_registry.py +341 -0
  136. package/engine/scripts/flow_retry.py +304 -0
  137. package/engine/scripts/flow_return_to_ops.py +191 -0
  138. package/engine/scripts/flow_source.py +315 -0
  139. package/engine/scripts/flow_sources/__init__.py +53 -0
  140. package/engine/scripts/flow_sources/cases_json.py +106 -0
  141. package/engine/scripts/flow_sources/common.py +428 -0
  142. package/engine/scripts/flow_sources/feishu_base.py +273 -0
  143. package/engine/scripts/flow_stale.py +185 -0
  144. package/engine/scripts/flow_status_reconcile.py +344 -0
  145. package/engine/scripts/flow_triage.py +849 -0
  146. package/engine/scripts/flow_write_verify.py +496 -0
  147. package/engine/scripts/fulfillment.js +586 -0
  148. package/engine/scripts/gen-agent-bundles.mjs +276 -0
  149. package/engine/scripts/gen-preset-rows.mjs +259 -0
  150. package/engine/scripts/init-ml.sh +2275 -0
  151. package/engine/scripts/install-internal-role.sh +190 -0
  152. package/engine/scripts/install-license.mjs +641 -0
  153. package/engine/scripts/install-one-shot.mjs +665 -0
  154. package/engine/scripts/integration_contract.py +220 -0
  155. package/engine/scripts/integrations/wenyao/adapter.py +98 -0
  156. package/engine/scripts/integrations/xzh/adapter.py +75 -0
  157. package/engine/scripts/invoice-mapping.example.json +40 -0
  158. package/engine/scripts/invoice-table.sh +194 -0
  159. package/engine/scripts/invoice_carrier_notice.py +279 -0
  160. package/engine/scripts/invoice_fail_closeout.py +297 -0
  161. package/engine/scripts/invoice_lip_runner.py +1508 -0
  162. package/engine/scripts/invoice_lip_runner.py.bak-20260922-1710-freready +1090 -0
  163. package/engine/scripts/invoice_ready_audit.py +191 -0
  164. package/engine/scripts/invoice_runner.py +675 -0
  165. package/engine/scripts/invoice_stageb.py +516 -0
  166. package/engine/scripts/launchd/com.whyshu.argent-bridge.plist.example +42 -0
  167. package/engine/scripts/launchd/com.whyshu.fulfillment-poll.plist.example +29 -0
  168. package/engine/scripts/lease.py +377 -0
  169. package/engine/scripts/lib/agent-install.mjs +649 -0
  170. package/engine/scripts/lib/argent-datadir.mjs +16 -0
  171. package/engine/scripts/lib/argent_datadir.py +262 -0
  172. package/engine/scripts/lib/argent_filelock.py +507 -0
  173. package/engine/scripts/lib/bootcheck-wiring.mjs +510 -0
  174. package/engine/scripts/lib/cdp_ports.py +197 -0
  175. package/engine/scripts/lib/customer-env.mjs +102 -0
  176. package/engine/scripts/lib/daily-report-core.mjs +517 -0
  177. package/engine/scripts/lib/dep-declaration.mjs +81 -0
  178. package/engine/scripts/lib/deps-migrate.mjs +310 -0
  179. package/engine/scripts/lib/dsh-host-resolve.mjs +109 -0
  180. package/engine/scripts/lib/dsh-scope.mjs +500 -0
  181. package/engine/scripts/lib/dsh-snapshot-path.mjs +35 -0
  182. package/engine/scripts/lib/dsh-versions.mjs +96 -0
  183. package/engine/scripts/lib/dsh-web-probe.mjs +214 -0
  184. package/engine/scripts/lib/is-direct-run.mjs +61 -0
  185. package/engine/scripts/lib/patch-compose.mjs +241 -0
  186. package/engine/scripts/lib/patch-target.mjs +35 -0
  187. package/engine/scripts/lib/plugin-lifecycle.mjs +128 -0
  188. package/engine/scripts/lib/plugin-packages.mjs +332 -0
  189. package/engine/scripts/lib/preset-compat.mjs +127 -0
  190. package/engine/scripts/lib/preset-install.mjs +575 -0
  191. package/engine/scripts/lib/preset-mechanism.mjs +56 -0
  192. package/engine/scripts/lib/preset-sync.mjs +59 -0
  193. package/engine/scripts/lib/profile-retire.mjs +97 -0
  194. package/engine/scripts/lib/python-runtime.mjs +190 -0
  195. package/engine/scripts/lib/registry.mjs +72 -0
  196. package/engine/scripts/lib/repo-root.sh +56 -0
  197. package/engine/scripts/lib/schedule-mechanism.mjs +659 -0
  198. package/engine/scripts/lib/schedule-probe.mjs +835 -0
  199. package/engine/scripts/lib/scope-pointer.mjs +164 -0
  200. package/engine/scripts/lib/settings-panels.mjs +816 -0
  201. package/engine/scripts/lib/stdio_utf8.py +86 -0
  202. package/engine/scripts/lib/wake-auth.mjs +392 -0
  203. package/engine/scripts/lib/webdriver_ipc.py +264 -0
  204. package/engine/scripts/lib/zstd-frames.mjs +104 -0
  205. package/engine/scripts/license-e2e-drill.mjs +426 -0
  206. package/engine/scripts/license-gate.mjs +245 -0
  207. package/engine/scripts/lip_backlog.py +171 -0
  208. package/engine/scripts/lip_table.py +185 -0
  209. package/engine/scripts/local-usage.mjs +214 -0
  210. package/engine/scripts/migrate-providers.mjs +127 -0
  211. package/engine/scripts/migrate-skills.sh +65 -0
  212. package/engine/scripts/ml-oauth-setup.mjs +550 -0
  213. package/engine/scripts/ml-store-ids.json +26 -0
  214. package/engine/scripts/ml_artifact_attribution.py +333 -0
  215. package/engine/scripts/ml_capacity_probe.py +1158 -0
  216. package/engine/scripts/ml_hub_status.py +1556 -0
  217. package/engine/scripts/ml_schema_check.py +115 -0
  218. package/engine/scripts/ml_store_ids.py +139 -0
  219. package/engine/scripts/npm-publish-argent.mjs +499 -0
  220. package/engine/scripts/npm-publish-argent.sh +20 -0
  221. package/engine/scripts/orchestrator.py +13811 -0
  222. package/engine/scripts/pack-plugins.mjs +140 -0
  223. package/engine/scripts/patches/dsh-llm-deepseek--transport-diagnostics.patch +297 -0
  224. package/engine/scripts/patches/dsh-session--append-message-shape.patch +15 -0
  225. package/engine/scripts/patches/dsh-session--tool-result-block-017.patch +28 -0
  226. package/engine/scripts/patches/dsh-session-format-v0-to-v1--permission-preset-origin.patch +11 -0
  227. package/engine/scripts/patches/dsh-session-format-v3-to-v4--turn-outside-replace.patch +20 -0
  228. package/engine/scripts/patches/dsh-session-persistence-jsonl--worker-bundled-migrators.patch +39 -0
  229. package/engine/scripts/patches/dsh-tools--render-return-shape.patch +50 -0
  230. package/engine/scripts/patches/verify-bundled-migrators.mjs +79 -0
  231. package/engine/scripts/patches/verify-hardening.mjs +167 -0
  232. package/engine/scripts/patches/verify-session-migration.mjs +149 -0
  233. package/engine/scripts/patches/verify-transport-diagnostics.mjs +227 -0
  234. package/engine/scripts/plan-role-rename.mjs +125 -0
  235. package/engine/scripts/plugin-bootcheck.mjs +451 -0
  236. package/engine/scripts/plugin-composition.json +15 -0
  237. package/engine/scripts/poc-mcp-host.mjs +455 -0
  238. package/engine/scripts/poll-fulfillment.sh +293 -0
  239. package/engine/scripts/poll-invoice.sh +74 -0
  240. package/engine/scripts/profile-doctor.mjs +686 -0
  241. package/engine/scripts/provider-select.sh +70 -0
  242. package/engine/scripts/provider-switch.sh +146 -0
  243. package/engine/scripts/provider-sync-target.check.mjs +64 -0
  244. package/engine/scripts/python-runtime.sh +78 -0
  245. package/engine/scripts/query_runner.py +310 -0
  246. package/engine/scripts/release-argent.sh +574 -0
  247. package/engine/scripts/repair-unresolved-tools.mjs +178 -0
  248. package/engine/scripts/run-tests.sh +256 -0
  249. package/engine/scripts/self-sign-license.mjs +179 -0
  250. package/engine/scripts/session-health-scan.mjs +63 -0
  251. package/engine/scripts/session-repair-tool-result-content.mjs +181 -0
  252. package/engine/scripts/setup.sh +22 -0
  253. package/engine/scripts/skill-install.mjs +629 -0
  254. package/engine/scripts/sku_translate.py +148 -0
  255. package/engine/scripts/sync-plugins.sh +90 -0
  256. package/engine/scripts/sync-presets.sh +27 -0
  257. package/engine/scripts/sync-scripts.sh +445 -0
  258. package/engine/scripts/telemetry.py +873 -0
  259. package/engine/scripts/ui-copy-count.mjs +220 -0
  260. package/engine/scripts/usage-anchor.sh +136 -0
  261. package/engine/scripts/usage_report.py +531 -0
  262. package/engine/scripts/validate-preset-schema.mjs +208 -0
  263. package/engine/scripts/vertical-init.mjs +323 -0
  264. package/engine/scripts/vertical-lint.mjs +482 -0
  265. package/engine/scripts/wenyao-browser.sh +73 -0
  266. package/engine/scripts/wenyao-fixture-export.py +116 -0
  267. package/engine/scripts/wenyao-invoice-writeback.mjs +540 -0
  268. package/engine/scripts/wenyao-login.sh +34 -0
  269. package/engine/scripts/wenyao-template-map.json +292 -0
  270. package/engine/scripts/wenyao_attach.py +131 -0
  271. package/engine/scripts/wenyao_download_template.py +144 -0
  272. package/engine/scripts/wenyao_fill_template.py +568 -0
  273. package/engine/scripts/wenyao_login.py +145 -0
  274. package/engine/scripts/wenyao_portal.py +633 -0
  275. package/engine/scripts/wenyao_recon.py +230 -0
  276. package/engine/scripts/wenyao_run.py +503 -0
  277. package/engine/scripts/wenyao_shadow_diff.py +160 -0
  278. package/engine/scripts/wenyao_skill_contract.py +156 -0
  279. package/engine/scripts/wenyao_template_fetch.py +175 -0
  280. package/engine/scripts/win/dsh-web-autostart.ps1 +372 -0
  281. package/engine/scripts/ziniao-auth-probe.sh +268 -0
  282. package/engine/scripts/ziniao-keepalive.sh +216 -0
  283. package/engine/scripts/ziniao-post-upgrade-check.sh +120 -0
  284. package/engine/scripts/ziniao-windows.sh +153 -0
  285. package/engine/version.mjs +1 -0
  286. package/engine/verticals/README.md +103 -0
  287. package/engine/verticals/_engine-words.baseline.txt +237 -0
  288. package/engine/verticals/_engine-words.json +19 -0
  289. package/engine/verticals/mercadolibre/README.md +43 -0
  290. package/engine/verticals/mercadolibre/config.json +709 -0
  291. package/engine/verticals/mercadolibre/flows.json +706 -0
  292. package/engine/verticals/mercadolibre/manifest.json +538 -0
  293. package/engine/verticals/mercadolibre/migrate-machine-state.mjs +138 -0
  294. package/engine/verticals/mercadolibre/preflight.py +143 -0
  295. package/engine/verticals/mercadolibre/prompts/daily-report.failure.md +69 -0
  296. package/engine/verticals/mercadolibre/prompts/daily-report.md +47 -0
  297. package/engine/verticals/mercadolibre/prompts/daily-report.scheduled.md +79 -0
  298. package/engine/verticals/mercadolibre/prompts/full.failure.md +125 -0
  299. package/engine/verticals/mercadolibre/prompts/full.md +91 -0
  300. package/engine/verticals/mercadolibre/prompts/wenyao-invoice.failure.md +88 -0
  301. package/engine/verticals/mercadolibre/prompts/wenyao-invoice.md +64 -0
  302. package/engine/verticals/mercadolibre/prompts/xzh-invoice.failure.md +91 -0
  303. package/engine/verticals/mercadolibre/prompts/xzh-invoice.md +46 -0
  304. package/package.json +21 -4
  305. package/README.md +0 -3
@@ -0,0 +1,272 @@
1
+ {
2
+ "_doc": "配置目录 · 账号域(引擎级)。声明格式与四道门禁见 docs/Argent-宿主适配契约.md §7;读取器 = core/lib/config-catalog.mjs(唯一)。本文件**只声明**:不写任何真实值、不写密钥样例(secret 项的 default 必须为空)。",
3
+ "domain": "account",
4
+ "order": 10,
5
+ "items": [
6
+ {
7
+ "key": "account.feishu.app_id",
8
+ "label": "飞书应用 App ID",
9
+ "category": "账号",
10
+ "type": "string",
11
+ "source": "json",
12
+ "secret": false,
13
+ "required": false,
14
+ "validation": {
15
+ "pattern": "^cli_[A-Za-z0-9]+$"
16
+ },
17
+ "capability": null,
18
+ "vertical": null,
19
+ "editable": true,
20
+ "help": "推送/对话用的自建应用;保存后宿主会切换身份。",
21
+ "binding": {
22
+ "kind": "json",
23
+ "file": "config.json",
24
+ "field": "feishuAppId"
25
+ },
26
+ "todayChain": [
27
+ "json"
28
+ ]
29
+ },
30
+ {
31
+ "key": "account.feishu.app_secret",
32
+ "label": "飞书应用 App Secret",
33
+ "category": "账号",
34
+ "type": "string",
35
+ "source": "json",
36
+ "secret": true,
37
+ "required": false,
38
+ "capability": null,
39
+ "vertical": null,
40
+ "editable": true,
41
+ "help": "自建应用密钥;只在本机保存,页面只显示「已配置/未配置」。",
42
+ "binding": {
43
+ "kind": "json",
44
+ "file": "config.json",
45
+ "field": "feishuAppSecret"
46
+ },
47
+ "todayChain": [
48
+ "json"
49
+ ]
50
+ },
51
+ {
52
+ "key": "account.feishu.user_id",
53
+ "label": "飞书操作者 ID(@ 用)",
54
+ "category": "账号",
55
+ "type": "string",
56
+ "source": "envfile",
57
+ "secret": false,
58
+ "required": false,
59
+ "capability": null,
60
+ "vertical": null,
61
+ "editable": false,
62
+ "help": "流程里 @ 人的 open_id;由装机脚本写入部署文件。",
63
+ "binding": {
64
+ "kind": "envfile",
65
+ "file": "fulfillment.env",
66
+ "env": "FEISHU_USER_ID",
67
+ "vertical": "mercadolibre"
68
+ }
69
+ },
70
+ {
71
+ "key": "account.ziniao.api_key",
72
+ "label": "店铺浏览器 API Key",
73
+ "category": "账号",
74
+ "type": "string",
75
+ "source": "json",
76
+ "secret": true,
77
+ "required": false,
78
+ "capability": null,
79
+ "vertical": null,
80
+ "editable": true,
81
+ "help": "写入客户端自身的配置(不入此项);本项只反映「配没配」。",
82
+ "binding": {
83
+ "kind": "json",
84
+ "file": "config.json",
85
+ "field": "apiKey"
86
+ },
87
+ "todayChain": [
88
+ "json"
89
+ ]
90
+ },
91
+ {
92
+ "key": "account.whyshu.api_key",
93
+ "label": "问述账号令牌",
94
+ "category": "账号",
95
+ "type": "string",
96
+ "source": "envfile",
97
+ "secret": true,
98
+ "required": false,
99
+ "capability": null,
100
+ "vertical": null,
101
+ "editable": true,
102
+ "help": "账号令牌(一键登录写入此槽);余额/积分与代理 provider 都读它。",
103
+ "binding": {
104
+ "kind": "envfile",
105
+ "file": "whyshu.env",
106
+ "env": "WHYSHU_API_KEY"
107
+ }
108
+ },
109
+ {
110
+ "key": "account.carrier.user",
111
+ "label": "货代门户账号",
112
+ "category": "账号",
113
+ "type": "string",
114
+ "source": "json",
115
+ "secret": false,
116
+ "required": false,
117
+ "capability": null,
118
+ "vertical": null,
119
+ "editable": true,
120
+ "help": "货代门户登录账号(对方生产系统账号,凭据不进仓库)。",
121
+ "binding": {
122
+ "kind": "json",
123
+ "file": "config.json",
124
+ "field": "xhInvoiceUser"
125
+ },
126
+ "todayChain": [
127
+ "json"
128
+ ]
129
+ },
130
+ {
131
+ "key": "account.carrier.password",
132
+ "label": "货代门户密码",
133
+ "category": "账号",
134
+ "type": "string",
135
+ "source": "json",
136
+ "secret": true,
137
+ "required": false,
138
+ "capability": null,
139
+ "vertical": null,
140
+ "editable": true,
141
+ "help": "货代门户登录密码;留空 = 保持原值。",
142
+ "binding": {
143
+ "kind": "json",
144
+ "file": "config.json",
145
+ "field": "xhInvoicePass"
146
+ },
147
+ "todayChain": [
148
+ "json"
149
+ ]
150
+ },
151
+ {
152
+ "key": "account.portal.phone",
153
+ "label": "门户登录手机号",
154
+ "category": "账号",
155
+ "type": "string",
156
+ "source": "envfile",
157
+ "secret": false,
158
+ "required": false,
159
+ "capability": null,
160
+ "vertical": null,
161
+ "editable": false,
162
+ "help": "发票门户登录手机号(部署文件维护)。",
163
+ "binding": {
164
+ "kind": "envfile",
165
+ "file": "wenyao.env",
166
+ "env": "WENYAO_PHONE",
167
+ "vertical": "mercadolibre"
168
+ }
169
+ },
170
+ {
171
+ "key": "account.portal.password",
172
+ "label": "门户登录密码",
173
+ "category": "账号",
174
+ "type": "string",
175
+ "source": "envfile",
176
+ "secret": true,
177
+ "required": false,
178
+ "capability": null,
179
+ "vertical": null,
180
+ "editable": false,
181
+ "help": "发票门户登录密码(部署文件维护,只显示已配置)。",
182
+ "binding": {
183
+ "kind": "envfile",
184
+ "file": "wenyao.env",
185
+ "env": "WENYAO_PASSWORD",
186
+ "vertical": "mercadolibre"
187
+ }
188
+ },
189
+ {
190
+ "key": "account.browser.company",
191
+ "label": "店铺浏览器企业标识",
192
+ "category": "账号",
193
+ "type": "string",
194
+ "source": "envfile",
195
+ "secret": false,
196
+ "required": false,
197
+ "capability": null,
198
+ "vertical": null,
199
+ "editable": false,
200
+ "help": "店铺浏览器 WebDriver 档位需要的企业标识。",
201
+ "binding": {
202
+ "kind": "envfile",
203
+ "file": "ziniao-webdriver.env",
204
+ "env": "ZINIAO_WD_COMPANY",
205
+ "vertical": "mercadolibre"
206
+ }
207
+ },
208
+ {
209
+ "key": "account.browser.username",
210
+ "label": "店铺浏览器账号",
211
+ "category": "账号",
212
+ "type": "string",
213
+ "source": "envfile",
214
+ "secret": false,
215
+ "required": false,
216
+ "capability": null,
217
+ "vertical": null,
218
+ "editable": false,
219
+ "help": "店铺浏览器 WebDriver 档位的登录账号。",
220
+ "binding": {
221
+ "kind": "envfile",
222
+ "file": "ziniao-webdriver.env",
223
+ "env": "ZINIAO_WD_USERNAME",
224
+ "vertical": "mercadolibre"
225
+ }
226
+ },
227
+ {
228
+ "key": "account.browser.password",
229
+ "label": "店铺浏览器密码",
230
+ "category": "账号",
231
+ "type": "string",
232
+ "source": "envfile",
233
+ "secret": true,
234
+ "required": false,
235
+ "capability": null,
236
+ "vertical": null,
237
+ "editable": false,
238
+ "help": "店铺浏览器 WebDriver 档位的登录密码。",
239
+ "binding": {
240
+ "kind": "envfile",
241
+ "file": "ziniao-webdriver.env",
242
+ "env": "ZINIAO_WD_PASSWORD",
243
+ "vertical": "mercadolibre"
244
+ }
245
+ },
246
+ {
247
+ "key": "account.plan",
248
+ "label": "账号档位 / 已购能力",
249
+ "category": "账号",
250
+ "type": "string",
251
+ "source": "server",
252
+ "secret": false,
253
+ "required": false,
254
+ "capability": null,
255
+ "vertical": null,
256
+ "editable": false,
257
+ "help": "服务端下发的账号档位与能力集。**来源 server 为预留**:本批不做配置上云/绑账号,读取器不读它,页面按「未接入」呈现。",
258
+ "binding": null
259
+ }
260
+ ],
261
+ "entries": [
262
+ {
263
+ "id": "account.bind",
264
+ "label": "绑定账号 / 配置上云",
265
+ "category": "账号",
266
+ "kind": "action",
267
+ "action": "account.bind",
268
+ "implemented": false,
269
+ "help": "把本机配置与账号绑定(服务端存储)。整体推迟到后续批次;目录已预留 source=server。"
270
+ }
271
+ ]
272
+ }
@@ -0,0 +1,205 @@
1
+ {
2
+ "_doc": "配置目录 · 高级与诊断域(引擎级):遥测/更新通道/解释器与超时/暂停开关。多数是**逃生与诊断**面,默认值即安全态。声明格式与四道门禁见 docs/Argent-宿主适配契约.md §7。",
3
+ "domain": "advanced",
4
+ "order": 90,
5
+ "items": [
6
+ {
7
+ "key": "advanced.appointment.max_day",
8
+ "label": "预约顺延窗口(天)",
9
+ "category": "高级与诊断",
10
+ "type": "int",
11
+ "source": "env",
12
+ "secret": false,
13
+ "required": false,
14
+ "validation": {
15
+ "min": 1,
16
+ "max": 90
17
+ },
18
+ "capability": "full",
19
+ "vertical": "mercadolibre",
20
+ "editable": true,
21
+ "default": 5,
22
+ "help": "FULL 步骤4 预约时,从「平台今天+1」往后最多试到第几天。窗口越大越可能够到可约日期,代价是单票最长耗时线性增加(每天一次导航 + 最多 3 次提交)。**默认 5**(2026-10-10 由 3 提高,属**行为变更**:约 1/3 的 FULL 失败与「最近几天都被平台拒」相关,窗口=3 够不到可约日期)。⛔ 仓容满时**不会**靠加大窗口解决 —— 那是另一条链(仓容前置探测,见 docs/本机接班运行清单.md §8.72)。运维改回旧行为:设 `ARGENT_APPOINTMENT_MAX_DAY=3`。",
23
+ "binding": {
24
+ "kind": "env",
25
+ "env": "ARGENT_APPOINTMENT_MAX_DAY"
26
+ },
27
+ "todayChain": [
28
+ "env",
29
+ "default"
30
+ ],
31
+ "_chainNote": "生效链 = ① 进程 env `ARGENT_APPOINTMENT_MAX_DAY`(**优先**) ② 本声明的 `default`。**实现落点**:`scripts/flow_config.py#appointment_max_day()`(按 key 取这里的 default)→ `scripts/orchestrator.py#step4_appointment()`。Python 侧**不复制**上面的默认值:声明是这个数的唯一真源(`scripts/tests/capacity-defer-lift.test.py` 钉住「声明 default == 代码实际生效值」)。",
32
+ "_whyNotJson": "刻意**不**给 `config.json` 这一级:设置页写 json 需要 Python 侧再实现一条 json→生效 的路径(编排器不 import Node 读取器)⇒ 那才是真的第二条链。env + 声明 default 两级已满足本批需求(逃生阀 + 可声明默认值)。"
33
+ },
34
+ {
35
+ "key": "advanced.telemetry.opt_in",
36
+ "label": "诊断上报(可选)",
37
+ "category": "高级与诊断",
38
+ "type": "bool",
39
+ "source": "json",
40
+ "secret": false,
41
+ "required": false,
42
+ "capability": null,
43
+ "vertical": null,
44
+ "editable": true,
45
+ "default": false,
46
+ "help": "默认关;开启后按《数据上报说明》上报脱敏诊断。",
47
+ "binding": {
48
+ "kind": "json",
49
+ "file": "config.json",
50
+ "field": "telemetryOptIn"
51
+ },
52
+ "todayChain": [
53
+ "json"
54
+ ]
55
+ },
56
+ {
57
+ "key": "advanced.update.channel",
58
+ "label": "更新通道",
59
+ "category": "高级与诊断",
60
+ "type": "enum",
61
+ "source": "json",
62
+ "secret": false,
63
+ "required": false,
64
+ "validation": {
65
+ "enum": [
66
+ "stable",
67
+ "beta"
68
+ ]
69
+ },
70
+ "capability": null,
71
+ "vertical": null,
72
+ "editable": true,
73
+ "default": "stable",
74
+ "help": "更新通道(**保留项**):当前**没有任何代码读取**它 ⇒ 在这里改了**不生效**,也不会影响「检查更新」看到什么。待补读者(如「检查更新」按通道取版)或明确退役。",
75
+ "binding": {
76
+ "kind": "json",
77
+ "file": "config.json",
78
+ "field": "updateChannel"
79
+ },
80
+ "_note": "批 3-1(2026-10-09)如实标注:全仓 **0 个读取点** —— `updateChannel` / `ADVANCED_UPDATE_CHANNEL` 唯一出现处是**写入**白名单 plugins/argent-core/src/index.js:81(CONFIG_KEYS),没有任何读取方(`--check-update` 与插件的 checkUpdate() 都不读通道)。⇒ 如实登记为「无人读」,并在 help/_note 写明:当前无读者、页面改了不生效,待补读者或如实标注为保留项(⛔ 不许让运营以为它在起作用)。同时**撤掉**原 todayChain:['json']:该提示的前提是「同名 env/env 文件有值时会压过 json」,而本项**根本没有读者**,前提不成立(且 editable:true 让它看着像能生效,更误导)。⛔ 这不是删提示 —— 是声明与代码事实(0 读取点)一致后才消失的。"
81
+ },
82
+ {
83
+ "key": "advanced.command.timeout_sec",
84
+ "label": "子命令超时(秒)",
85
+ "category": "高级与诊断",
86
+ "type": "int",
87
+ "source": "env",
88
+ "secret": false,
89
+ "required": false,
90
+ "validation": {
91
+ "min": 1,
92
+ "max": 86400
93
+ },
94
+ "capability": null,
95
+ "vertical": null,
96
+ "editable": false,
97
+ "help": "引擎调用外部命令的默认超时;排障时可临时放大。",
98
+ "binding": {
99
+ "kind": "env",
100
+ "env": "ARGENT_CMD_TIMEOUT"
101
+ }
102
+ },
103
+ {
104
+ "key": "advanced.registry.mode",
105
+ "label": "注册表读取模式",
106
+ "category": "高级与诊断",
107
+ "type": "enum",
108
+ "source": "env",
109
+ "secret": false,
110
+ "required": false,
111
+ "validation": {
112
+ "enum": [
113
+ "merged",
114
+ "base",
115
+ "projection"
116
+ ]
117
+ },
118
+ "capability": null,
119
+ "vertical": null,
120
+ "editable": false,
121
+ "help": "诊断用:注册表按合并结果读还是只读引擎级 base。",
122
+ "binding": {
123
+ "kind": "env",
124
+ "env": "ARGENT_REGISTRY_MODE"
125
+ }
126
+ },
127
+ {
128
+ "key": "advanced.pause.poll",
129
+ "label": "暂停轮询泵",
130
+ "category": "高级与诊断",
131
+ "type": "bool",
132
+ "source": "machine",
133
+ "secret": false,
134
+ "required": false,
135
+ "capability": null,
136
+ "vertical": null,
137
+ "editable": false,
138
+ "default": false,
139
+ "help": "存在该标记文件 ⇒ 本机不再派发流程(逃生动作为落/删一个文件)。",
140
+ "binding": {
141
+ "kind": "machine",
142
+ "file": "PAUSE_POLL",
143
+ "presence": true
144
+ }
145
+ },
146
+ {
147
+ "key": "advanced.pause.invoice",
148
+ "label": "暂停发票流程",
149
+ "category": "高级与诊断",
150
+ "type": "bool",
151
+ "source": "machine",
152
+ "secret": false,
153
+ "required": false,
154
+ "capability": "invoice",
155
+ "vertical": null,
156
+ "editable": false,
157
+ "default": false,
158
+ "help": "存在该标记文件 ⇒ 发票流程停在自己的定时器里。",
159
+ "binding": {
160
+ "kind": "machine",
161
+ "file": "PAUSE_INVOICE",
162
+ "presence": true
163
+ }
164
+ },
165
+ {
166
+ "key": "advanced.pause.flow_watch",
167
+ "label": "暂停失败回路",
168
+ "category": "高级与诊断",
169
+ "type": "bool",
170
+ "source": "machine",
171
+ "secret": false,
172
+ "required": false,
173
+ "capability": null,
174
+ "vertical": null,
175
+ "editable": false,
176
+ "default": false,
177
+ "help": "存在该标记文件 ⇒ 失败回路不自动跑(隔离态下默认暂停)。",
178
+ "binding": {
179
+ "kind": "machine",
180
+ "file": "PAUSE_FLOW_WATCH",
181
+ "presence": true
182
+ }
183
+ }
184
+ ],
185
+ "entries": [
186
+ {
187
+ "id": "capability.checkUpdate",
188
+ "label": "检查更新",
189
+ "category": "高级与诊断",
190
+ "kind": "action",
191
+ "action": "capability.checkUpdate",
192
+ "implemented": true,
193
+ "help": "逐个已装能力查是否有新版本(产品不做自动更新 ⇒ 由用户点)。**已实现**(2026-10-09):复用 install-argent.mjs 的同一份比对(服务端清单 ∩ 本机 install.json),按能力过滤 + 短时缓存;有更新时可先看计划再一键更新,失败自动回滚。"
194
+ },
195
+ {
196
+ "id": "diagnostics.export",
197
+ "label": "导出诊断包",
198
+ "category": "高级与诊断",
199
+ "kind": "action",
200
+ "action": "diagnostics.export",
201
+ "implemented": false,
202
+ "help": "把版本/装配/最近失败导成一份脱敏包(密钥项按纪律不导出)。入口先声明,实现在后续批次。"
203
+ }
204
+ ]
205
+ }
@@ -0,0 +1,149 @@
1
+ {
2
+ "_doc": "配置目录 · 宿主机域(引擎级)。本域多数项是**机器事实**(source=machine / env):只读、由安装器或体检生成,页面只呈现不编辑。声明格式与四道门禁见 docs/Argent-宿主适配契约.md §7。",
3
+ "domain": "host",
4
+ "order": 30,
5
+ "items": [
6
+ {
7
+ "key": "host.data_dir",
8
+ "label": "数据目录",
9
+ "category": "宿主与机器",
10
+ "type": "path",
11
+ "source": "machine",
12
+ "secret": false,
13
+ "required": false,
14
+ "capability": null,
15
+ "vertical": null,
16
+ "editable": false,
17
+ "help": "所有本机配置/台账的落点;由内核唯一判据解析(三段链),页面只读。",
18
+ "binding": {
19
+ "kind": "machine",
20
+ "special": "dataDir"
21
+ }
22
+ },
23
+ {
24
+ "key": "host.dsh_home",
25
+ "label": "宿主 home",
26
+ "category": "宿主与机器",
27
+ "type": "path",
28
+ "source": "machine",
29
+ "secret": false,
30
+ "required": false,
31
+ "capability": null,
32
+ "vertical": null,
33
+ "editable": false,
34
+ "help": "宿主数据目录的父目录;多实例隔离靠它。",
35
+ "binding": {
36
+ "kind": "machine",
37
+ "special": "dshHome"
38
+ }
39
+ },
40
+ {
41
+ "key": "host.python",
42
+ "label": "Python 解释器",
43
+ "category": "宿主与机器",
44
+ "type": "path",
45
+ "source": "env",
46
+ "secret": false,
47
+ "required": false,
48
+ "capability": null,
49
+ "vertical": null,
50
+ "editable": false,
51
+ "help": "引擎脚本使用的解释器(venv 优先);不设则按 PATH 找。",
52
+ "binding": {
53
+ "kind": "env",
54
+ "env": "ARGENT_PY"
55
+ }
56
+ },
57
+ {
58
+ "key": "host.instance.id",
59
+ "label": "本机实例标识",
60
+ "category": "宿主与机器",
61
+ "type": "string",
62
+ "source": "machine",
63
+ "secret": false,
64
+ "required": false,
65
+ "capability": null,
66
+ "vertical": null,
67
+ "editable": false,
68
+ "help": "安装期生成的实例标识(诊断上报与实例令牌按它绑定)。",
69
+ "binding": {
70
+ "kind": "machine",
71
+ "file": "instance.json",
72
+ "field": "installId"
73
+ }
74
+ },
75
+ {
76
+ "key": "host.instance.host_hash",
77
+ "label": "主机名哈希",
78
+ "category": "宿主与机器",
79
+ "type": "string",
80
+ "source": "machine",
81
+ "secret": false,
82
+ "required": false,
83
+ "capability": null,
84
+ "vertical": null,
85
+ "editable": false,
86
+ "help": "不可逆的主机标识(上报只带哈希,不带原始主机名)。",
87
+ "binding": {
88
+ "kind": "machine",
89
+ "file": "instance.json",
90
+ "field": "hostHash"
91
+ }
92
+ },
93
+ {
94
+ "key": "host.telemetry.instance_token",
95
+ "label": "实例令牌",
96
+ "category": "宿主与机器",
97
+ "type": "string",
98
+ "source": "machine",
99
+ "secret": true,
100
+ "required": false,
101
+ "capability": null,
102
+ "vertical": null,
103
+ "editable": false,
104
+ "help": "机器自带的上报凭证(随机器走);只显示已配置/未配置。",
105
+ "binding": {
106
+ "kind": "machine",
107
+ "file": "instance-token.json",
108
+ "field": "token"
109
+ },
110
+ "todayChain": [
111
+ "machine",
112
+ "env"
113
+ ],
114
+ "_note": "批 3-1(2026-10-09)只修 binding:补 field='token'(与 scripts/telemetry.py:206-212 的实际读法一致 —— 该文件的**唯一鉴权键**就是 `token`,其余是便于人工核对的元数据,不参与鉴权)。修前缺 field ⇒ 规范读取器退化成「把整个 JSON 信封当标量」(core/lib/config-catalog.mjs:`let raw = b.field ? pickPath(doc, b.field) : doc`),实测报「期望标量,实际拿到 object(binding 的 field 写错了?)」⇒ 该项落到 missing,**机器明明有令牌(客户机 897 B)却显示「未配置」**。⛔ 本批**不动** todayChain(machine → env 的次序与逃生阀登记属批 3-5)。"
115
+ },
116
+ {
117
+ "key": "host.path.stores_json",
118
+ "label": "店铺清单文件",
119
+ "category": "宿主与机器",
120
+ "type": "path",
121
+ "source": "env",
122
+ "secret": false,
123
+ "required": false,
124
+ "capability": null,
125
+ "vertical": null,
126
+ "editable": false,
127
+ "help": "店铺映射缓存文件的位置(由体检/刷新店铺写入)。",
128
+ "binding": {
129
+ "kind": "env",
130
+ "env": "STORES_JSON"
131
+ }
132
+ },
133
+ {
134
+ "key": "host.account.binding",
135
+ "label": "机器与账号的绑定关系",
136
+ "category": "宿主与机器",
137
+ "type": "string",
138
+ "source": "server",
139
+ "secret": false,
140
+ "required": false,
141
+ "capability": null,
142
+ "vertical": null,
143
+ "editable": false,
144
+ "help": "服务端记录的「这台机器属于哪个账号」。**来源 server 为预留**:本批不做配置上云/绑账号,读取器不读它。",
145
+ "binding": null
146
+ }
147
+ ],
148
+ "entries": []
149
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "_doc": "配置目录 · 人事(HR)域(引擎级)。本批只把既有面板里那个只读字段(入口角色状态)纳入目录 —— 不新增任何 HR 配置面。声明格式与四道门禁见 docs/Argent-宿主适配契约.md §7。",
3
+ "domain": "hr",
4
+ "order": 40,
5
+ "items": [
6
+ {
7
+ "key": "hr.office.role",
8
+ "label": "HR 智能体入口状态",
9
+ "category": "人事(HR)",
10
+ "type": "string",
11
+ "source": "json",
12
+ "secret": false,
13
+ "required": false,
14
+ "capability": "hr",
15
+ "vertical": null,
16
+ "editable": false,
17
+ "help": "HR 办公的入口就是这个角色会话(角色 = DSH 预设:在 设置 →「Agent 预设」查看/切换);安装 / 升级 HR 智能体在 设置 → Argent →「我的智能体」。本页只读,如实报告入口是否仍在册。",
18
+ "binding": {
19
+ "kind": "json",
20
+ "file": "roles.json",
21
+ "field": "presets.hr-office"
22
+ },
23
+ "_note": "批 3-1(2026-10-09)声明纠正(方案 B · 按实际读取顺序如实声明):本项**只有 json 一级**,全仓不存在 HR_OFFICE_ROLE / hrOfficeRole 之类的 env 层 ⇒ 不登记 todayChain(原为 ['json'])。**7 个读取点全部只读 roles.json(唯一来源)**:plugins/argent-gateway/src/index.js:383 与 :395-399(用 roles.json#presets 覆盖源码常量,启动日志「roles.json 已应用 N 个角色映射」为证)、scripts/check-role-mapping.mjs:276 / :325 / :363、scripts/flow_preflight.py:293、scripts/customer-readiness.sh:61。⇒ 原 todayChain:['json'] 触发的「旧优先级」提示是**误报**:既然没有任何 env 级存在,就没有任何东西能压过 json,而该提示恰恰断言「env/env 文件有值时会压过它」;且本项 editable:false(页面本来就不可写)⇒ 撤掉该登记才是如实。⛔ 这不是删提示,是声明与代码事实一致后才消失的。附:hr-office 已于 2026-10-04 退役(gateway.json 无该行、presets/argent-hr-office 是墓碑),条目保留供老会话/诊断解析到 preset。|**W7.7(2026-10-14,尾巴收口)**:label 由「HR 角色入口状态」改为「HR 智能体入口状态」、help 与 `scripts/flow-requirements.json#capabilities.hr.pack.settingsPanel` 的 `hint` 去掉指向**已删页签**的措辞 —— W7.6(1cf558b)已删除「Argent 角色」页签(角色 = DSH preset,归官方「设置 → Agent 预设」区)⇒ 两处死指针改指新落点:会话身份 ⇒ 官方「Agent 预设」区;安装 / 升级 ⇒ 设置 → Argent →「我的智能体」。⛔ **只改文案**:`key` / `binding` / `editable` / 取值链与 `source` 一个字节未变。"
24
+ }
25
+ ],
26
+ "entries": []
27
+ }