agentera 3.0.0-dev.2 → 3.0.0-dev.20

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 (612) hide show
  1. package/README.md +65 -6
  2. package/bundle/.agentera-npx-bundle.json +1 -1
  3. package/bundle/.codex-plugin/plugin.json +92 -0
  4. package/bundle/.cursor/agents/agentera.md +7 -0
  5. package/bundle/.cursor/hooks.json +32 -0
  6. package/bundle/.cursor-plugin/plugin.json +34 -0
  7. package/bundle/.github/hooks/postToolUse.json +9 -0
  8. package/bundle/.github/hooks/preToolUse.json +8 -0
  9. package/bundle/.github/hooks/sessionEnd.json +8 -0
  10. package/bundle/.github/hooks/sessionStart.json +8 -0
  11. package/bundle/.github/plugin/plugin.json +7 -0
  12. package/bundle/.opencode/agents/agentera.md +12 -0
  13. package/bundle/.opencode/commands/agentera.md +5 -0
  14. package/bundle/.opencode/package.json +31 -0
  15. package/bundle/.opencode/plugins/agentera.js +820 -0
  16. package/bundle/CHANGELOG.md +1108 -0
  17. package/bundle/DESIGN.md +233 -0
  18. package/bundle/LICENSE +201 -0
  19. package/bundle/README.md +141 -0
  20. package/bundle/UPGRADE.md +227 -0
  21. package/bundle/agents/openai.yaml +87 -0
  22. package/bundle/extract-corpus-parity.json +21 -0
  23. package/bundle/hooks/codex-hooks.json +31 -0
  24. package/bundle/hooks/codex-plugin-hooks.json +31 -0
  25. package/bundle/plugin.json +13 -0
  26. package/bundle/references/adapters/cursor.md +53 -42
  27. package/bundle/references/adapters/opencode.md +46 -47
  28. package/bundle/references/adapters/package-manifest-interface-model.yaml +32 -43
  29. package/bundle/references/adapters/package-registry.yaml +19 -53
  30. package/bundle/references/adapters/package-surface-characterization.md +61 -48
  31. package/bundle/references/adapters/runtime-adapter-characterization.md +44 -79
  32. package/bundle/references/adapters/runtime-adapter-registry.yaml +21 -182
  33. package/bundle/references/adapters/runtime-feature-parity.md +114 -174
  34. package/bundle/references/adapters/runtime-lifecycle-adapters.yaml +288 -0
  35. package/bundle/references/adapters/runtime-lifecycle-authority.yaml +90 -0
  36. package/bundle/references/adapters/runtime-lifecycle-operation-contract.yaml +84 -0
  37. package/bundle/references/adapters/runtime-retired-resources.yaml +33 -0
  38. package/bundle/references/analysis/benchmark.md +6 -6
  39. package/bundle/references/analysis/startup-measurement-contract.yaml +37 -26
  40. package/bundle/references/artifacts/artifact-registry-interface-model.yaml +6 -5
  41. package/bundle/references/cli/agent-ready-state-contract.yaml +26 -23
  42. package/bundle/references/cli/app-lifecycle-vocabulary.yaml +4 -4
  43. package/bundle/references/cli/audience-namespace-cli-migration.yaml +40 -26
  44. package/bundle/references/cli/bundle-skill-vocabulary.yaml +4 -32
  45. package/bundle/references/cli/capability-instruction-contract.yaml +98 -57
  46. package/bundle/references/cli/capability-instruction-structure.md +144 -0
  47. package/bundle/references/cli/capability-tool-classification.yaml +12 -12
  48. package/bundle/references/cli/coexistence-probe.yaml +13 -0
  49. package/bundle/references/cli/parity-expected-actual-template.md +30 -0
  50. package/bundle/references/cli/routing-execution-vocabulary.yaml +12 -12
  51. package/bundle/references/cli/routing-model.md +94 -0
  52. package/bundle/references/cli/single-name-protocol.yaml +42 -0
  53. package/bundle/references/cli/trigger-schema-enrichment.md +136 -0
  54. package/bundle/references/cli/update-channels.yaml +43 -7
  55. package/bundle/references/cli/upgrade-repair-wording.md +45 -0
  56. package/bundle/references/cli/v3-handoff-manifest.schema.yaml +98 -0
  57. package/bundle/references/cli/vocabulary-index.yaml +20 -15
  58. package/bundle/references/cli/vocabulary.md +342 -326
  59. package/bundle/references/meta/documentation-inventory.md +9 -3
  60. package/bundle/registry.json +14 -14
  61. package/bundle/skills/agentera/SKILL.md +136 -408
  62. package/bundle/skills/agentera/agents/audit.toml +6 -0
  63. package/bundle/skills/agentera/agents/build.toml +6 -0
  64. package/bundle/skills/agentera/agents/design.toml +6 -0
  65. package/bundle/skills/agentera/agents/discuss.toml +6 -0
  66. package/bundle/skills/agentera/agents/document.toml +6 -0
  67. package/bundle/skills/agentera/agents/optimize.toml +6 -0
  68. package/bundle/skills/agentera/agents/orchestrate.toml +6 -0
  69. package/bundle/skills/agentera/agents/plan.toml +6 -0
  70. package/bundle/skills/agentera/agents/profile.toml +6 -0
  71. package/bundle/skills/agentera/agents/research.toml +6 -0
  72. package/bundle/skills/agentera/agents/status.toml +6 -0
  73. package/bundle/skills/agentera/agents/vision.toml +6 -0
  74. package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/artifacts.yaml +10 -10
  75. package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/exit.yaml +2 -2
  76. package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/triggers.yaml +15 -6
  77. package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/validation.yaml +13 -12
  78. package/bundle/skills/agentera/capabilities/{realisera → build}/schemas/artifacts.yaml +12 -12
  79. package/bundle/skills/agentera/capabilities/{realisera → build}/schemas/exit.yaml +3 -3
  80. package/bundle/skills/agentera/capabilities/{realisera → build}/schemas/triggers.yaml +13 -3
  81. package/bundle/skills/agentera/capabilities/{realisera → build}/schemas/validation.yaml +11 -11
  82. package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/artifacts.yaml +6 -6
  83. package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/exit.yaml +5 -5
  84. package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/triggers.yaml +15 -3
  85. package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/validation.yaml +7 -7
  86. package/bundle/skills/agentera/capabilities/{resonera → discuss}/schemas/artifacts.yaml +12 -11
  87. package/bundle/skills/agentera/capabilities/{resonera → discuss}/schemas/exit.yaml +2 -2
  88. package/bundle/skills/agentera/capabilities/{resonera → discuss}/schemas/triggers.yaml +11 -3
  89. package/bundle/skills/agentera/capabilities/{resonera → discuss}/schemas/validation.yaml +9 -8
  90. package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/artifacts.yaml +10 -10
  91. package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/triggers.yaml +14 -4
  92. package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/validation.yaml +8 -8
  93. package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/artifacts.yaml +9 -9
  94. package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/exit.yaml +2 -2
  95. package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/triggers.yaml +11 -3
  96. package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/validation.yaml +9 -9
  97. package/bundle/skills/agentera/capabilities/{orkestrera → orchestrate}/schemas/artifacts.yaml +12 -11
  98. package/bundle/skills/agentera/capabilities/{orkestrera → orchestrate}/schemas/exit.yaml +7 -6
  99. package/bundle/skills/agentera/capabilities/{orkestrera → orchestrate}/schemas/triggers.yaml +16 -3
  100. package/bundle/skills/agentera/capabilities/orchestrate/schemas/validation.yaml +120 -0
  101. package/bundle/skills/agentera/capabilities/plan/schemas/artifacts.yaml +63 -0
  102. package/bundle/skills/agentera/capabilities/{planera → plan}/schemas/exit.yaml +2 -2
  103. package/bundle/skills/agentera/capabilities/{planera → plan}/schemas/triggers.yaml +15 -3
  104. package/bundle/skills/agentera/capabilities/plan/schemas/validation.yaml +89 -0
  105. package/bundle/skills/agentera/capabilities/{profilera → profile}/schemas/artifacts.yaml +2 -2
  106. package/bundle/skills/agentera/capabilities/{profilera → profile}/schemas/exit.yaml +3 -3
  107. package/bundle/skills/agentera/capabilities/{profilera → profile}/schemas/triggers.yaml +7 -3
  108. package/bundle/skills/agentera/capabilities/{profilera → profile}/schemas/validation.yaml +2 -2
  109. package/bundle/skills/agentera/capabilities/research/schemas/artifacts.yaml +24 -0
  110. package/bundle/skills/agentera/capabilities/{inspirera → research}/schemas/triggers.yaml +9 -3
  111. package/bundle/skills/agentera/capabilities/{inspirera → research}/schemas/validation.yaml +2 -2
  112. package/bundle/skills/agentera/capabilities/{hej → status}/schemas/artifacts.yaml +14 -11
  113. package/bundle/skills/agentera/capabilities/{hej → status}/schemas/triggers.yaml +12 -8
  114. package/bundle/skills/agentera/capabilities/{hej → status}/schemas/validation.yaml +5 -5
  115. package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/artifacts.yaml +8 -8
  116. package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/exit.yaml +7 -6
  117. package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/triggers.yaml +19 -5
  118. package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/validation.yaml +18 -20
  119. package/bundle/skills/agentera/capability_schema_contract.yaml +201 -38
  120. package/bundle/skills/agentera/protocol.yaml +29 -29
  121. package/bundle/skills/agentera/references/contract.md +338 -322
  122. package/bundle/skills/agentera/schemas/artifacts/changelog.yaml +4 -4
  123. package/bundle/skills/agentera/schemas/artifacts/decisions.yaml +10 -10
  124. package/bundle/skills/agentera/schemas/artifacts/design.yaml +4 -4
  125. package/bundle/skills/agentera/schemas/artifacts/docs.yaml +8 -7
  126. package/bundle/skills/agentera/schemas/artifacts/experiments.yaml +5 -5
  127. package/bundle/skills/agentera/schemas/artifacts/health.yaml +5 -5
  128. package/bundle/skills/agentera/schemas/artifacts/objective.yaml +4 -4
  129. package/bundle/skills/agentera/schemas/artifacts/plan.yaml +263 -11
  130. package/bundle/skills/agentera/schemas/artifacts/progress.yaml +20 -41
  131. package/bundle/skills/agentera/schemas/artifacts/todo.yaml +43 -24
  132. package/bundle/skills/agentera/schemas/artifacts/vision.yaml +3 -3
  133. package/dist/analytics/extractCorpus/cli.js +163 -0
  134. package/dist/analytics/extractCorpus/cli.js.map +1 -0
  135. package/dist/analytics/extractCorpus/copilotSessions.js +276 -0
  136. package/dist/analytics/extractCorpus/copilotSessions.js.map +1 -0
  137. package/dist/analytics/extractCorpus/core.js +393 -0
  138. package/dist/analytics/extractCorpus/core.js.map +1 -0
  139. package/dist/analytics/extractCorpus/corpus.js +168 -0
  140. package/dist/analytics/extractCorpus/corpus.js.map +1 -0
  141. package/dist/analytics/extractCorpus/coverageAudit.js +261 -0
  142. package/dist/analytics/extractCorpus/coverageAudit.js.map +1 -0
  143. package/dist/analytics/extractCorpus/cursorSessions.js +426 -0
  144. package/dist/analytics/extractCorpus/cursorSessions.js.map +1 -0
  145. package/dist/analytics/extractCorpus/extractCorpusParity.js +105 -0
  146. package/dist/analytics/extractCorpus/extractCorpusParity.js.map +1 -0
  147. package/dist/analytics/extractCorpus/filesystemSources.js +119 -0
  148. package/dist/analytics/extractCorpus/filesystemSources.js.map +1 -0
  149. package/dist/analytics/extractCorpus/index.js +12 -0
  150. package/dist/analytics/extractCorpus/index.js.map +1 -0
  151. package/dist/analytics/extractCorpus/jsonlSessions.js +205 -0
  152. package/dist/analytics/extractCorpus/jsonlSessions.js.map +1 -0
  153. package/dist/analytics/extractCorpus/sqliteCaps.js +44 -0
  154. package/dist/analytics/extractCorpus/sqliteCaps.js.map +1 -0
  155. package/dist/analytics/extractCorpus/sqliteSessions.js +368 -0
  156. package/dist/analytics/extractCorpus/sqliteSessions.js.map +1 -0
  157. package/dist/analytics/extractCorpus.js +2 -1790
  158. package/dist/analytics/extractCorpus.js.map +1 -1
  159. package/dist/analytics/usageStats.js +93 -27
  160. package/dist/analytics/usageStats.js.map +1 -1
  161. package/dist/bin/agentera.js +3 -1
  162. package/dist/bin/agentera.js.map +1 -1
  163. package/dist/capabilities/audit/instructions.js +4 -0
  164. package/dist/capabilities/audit/instructions.js.map +1 -0
  165. package/dist/capabilities/build/instructions.js +5 -0
  166. package/dist/capabilities/build/instructions.js.map +1 -0
  167. package/dist/capabilities/design/instructions.js +5 -0
  168. package/dist/capabilities/design/instructions.js.map +1 -0
  169. package/dist/capabilities/discuss/instructions.js +6 -0
  170. package/dist/capabilities/discuss/instructions.js.map +1 -0
  171. package/dist/capabilities/document/instructions.js +4 -0
  172. package/dist/capabilities/document/instructions.js.map +1 -0
  173. package/dist/capabilities/index.js +38 -0
  174. package/dist/capabilities/index.js.map +1 -0
  175. package/dist/capabilities/optimize/instructions.js +5 -0
  176. package/dist/capabilities/optimize/instructions.js.map +1 -0
  177. package/dist/capabilities/orchestrate/instructions.js +10 -0
  178. package/dist/capabilities/orchestrate/instructions.js.map +1 -0
  179. package/dist/capabilities/plan/instructions.js +6 -0
  180. package/dist/capabilities/plan/instructions.js.map +1 -0
  181. package/dist/capabilities/profile/instructions.js +5 -0
  182. package/dist/capabilities/profile/instructions.js.map +1 -0
  183. package/dist/capabilities/research/instructions.js +6 -0
  184. package/dist/capabilities/research/instructions.js.map +1 -0
  185. package/dist/capabilities/status/instructions.js +5 -0
  186. package/dist/capabilities/status/instructions.js.map +1 -0
  187. package/dist/capabilities/vision/instructions.js +5 -0
  188. package/dist/capabilities/vision/instructions.js.map +1 -0
  189. package/dist/cli/appContext.js +16 -17
  190. package/dist/cli/appContext.js.map +1 -1
  191. package/dist/cli/capabilityContext/benchmark.js +564 -0
  192. package/dist/cli/capabilityContext/benchmark.js.map +1 -0
  193. package/dist/cli/capabilityContext/bespoke.js +36 -0
  194. package/dist/cli/capabilityContext/bespoke.js.map +1 -0
  195. package/dist/cli/capabilityContext/build.js +190 -0
  196. package/dist/cli/capabilityContext/build.js.map +1 -0
  197. package/dist/cli/capabilityContext/closeout.js +230 -0
  198. package/dist/cli/capabilityContext/closeout.js.map +1 -0
  199. package/dist/cli/capabilityContext/contract.js +190 -0
  200. package/dist/cli/capabilityContext/contract.js.map +1 -0
  201. package/dist/cli/capabilityContext/evidence.js +456 -0
  202. package/dist/cli/capabilityContext/evidence.js.map +1 -0
  203. package/dist/cli/capabilityContext/index.js +4 -0
  204. package/dist/cli/capabilityContext/index.js.map +1 -0
  205. package/dist/cli/capabilityContext/orchestration.js +117 -0
  206. package/dist/cli/capabilityContext/orchestration.js.map +1 -0
  207. package/dist/cli/capabilityContext/planState.js +279 -0
  208. package/dist/cli/capabilityContext/planState.js.map +1 -0
  209. package/dist/cli/capabilityContext/progress.js +138 -0
  210. package/dist/cli/capabilityContext/progress.js.map +1 -0
  211. package/dist/cli/capabilityContext/shared.js +94 -0
  212. package/dist/cli/capabilityContext/shared.js.map +1 -0
  213. package/dist/cli/capabilityContext/slim.js +108 -0
  214. package/dist/cli/capabilityContext/slim.js.map +1 -0
  215. package/dist/cli/capabilityContext/startup.js +217 -0
  216. package/dist/cli/capabilityContext/startup.js.map +1 -0
  217. package/dist/cli/capabilityContext/types.js +41 -0
  218. package/dist/cli/capabilityContext/types.js.map +1 -0
  219. package/dist/cli/capabilityContext.js +1 -2420
  220. package/dist/cli/capabilityContext.js.map +1 -1
  221. package/dist/cli/commands/appHome.js +23 -0
  222. package/dist/cli/commands/appHome.js.map +1 -0
  223. package/dist/cli/commands/capability.js +3 -10
  224. package/dist/cli/commands/capability.js.map +1 -1
  225. package/dist/cli/commands/compact.js +1 -1
  226. package/dist/cli/commands/compact.js.map +1 -1
  227. package/dist/cli/commands/doctor.js +116 -96
  228. package/dist/cli/commands/doctor.js.map +1 -1
  229. package/dist/cli/commands/lint.js +16 -41
  230. package/dist/cli/commands/lint.js.map +1 -1
  231. package/dist/cli/commands/prime/bundleStatus.js +185 -0
  232. package/dist/cli/commands/prime/bundleStatus.js.map +1 -0
  233. package/dist/cli/commands/prime/collectOrientationState.js +179 -0
  234. package/dist/cli/commands/prime/collectOrientationState.js.map +1 -0
  235. package/dist/cli/commands/prime/orientationOutput.js +233 -0
  236. package/dist/cli/commands/prime/orientationOutput.js.map +1 -0
  237. package/dist/cli/commands/prime/types.js +2 -0
  238. package/dist/cli/commands/prime/types.js.map +1 -0
  239. package/dist/cli/commands/prime/v1Migration.js +39 -0
  240. package/dist/cli/commands/prime/v1Migration.js.map +1 -0
  241. package/dist/cli/commands/prime.js +11 -519
  242. package/dist/cli/commands/prime.js.map +1 -1
  243. package/dist/cli/commands/query.js +5 -2
  244. package/dist/cli/commands/query.js.map +1 -1
  245. package/dist/cli/commands/report.js +50 -14
  246. package/dist/cli/commands/report.js.map +1 -1
  247. package/dist/cli/commands/schema.js +113 -24
  248. package/dist/cli/commands/schema.js.map +1 -1
  249. package/dist/cli/commands/state/decisions.js +403 -0
  250. package/dist/cli/commands/state/decisions.js.map +1 -0
  251. package/dist/cli/commands/state/docs.js +97 -0
  252. package/dist/cli/commands/state/docs.js.map +1 -0
  253. package/dist/cli/commands/state/experiments.js +68 -0
  254. package/dist/cli/commands/state/experiments.js.map +1 -0
  255. package/dist/cli/commands/state/health.js +116 -0
  256. package/dist/cli/commands/state/health.js.map +1 -0
  257. package/dist/cli/commands/state/index.js +51 -0
  258. package/dist/cli/commands/state/index.js.map +1 -0
  259. package/dist/cli/commands/state/objective.js +69 -0
  260. package/dist/cli/commands/state/objective.js.map +1 -0
  261. package/dist/cli/commands/state/plan.js +274 -0
  262. package/dist/cli/commands/state/plan.js.map +1 -0
  263. package/dist/cli/commands/state/progress.js +47 -0
  264. package/dist/cli/commands/state/progress.js.map +1 -0
  265. package/dist/cli/commands/state/shared.js +15 -0
  266. package/dist/cli/commands/state/shared.js.map +1 -0
  267. package/dist/cli/commands/state/todo.js +121 -0
  268. package/dist/cli/commands/state/todo.js.map +1 -0
  269. package/dist/cli/commands/state/write.js +341 -0
  270. package/dist/cli/commands/state/write.js.map +1 -0
  271. package/dist/cli/commands/upgrade.js +79 -1
  272. package/dist/cli/commands/upgrade.js.map +1 -1
  273. package/dist/cli/commands/upgradeVerify.js +81 -0
  274. package/dist/cli/commands/upgradeVerify.js.map +1 -0
  275. package/dist/cli/commands/validate.js +56 -96
  276. package/dist/cli/commands/validate.js.map +1 -1
  277. package/dist/cli/commands/verify.js +13 -7
  278. package/dist/cli/commands/verify.js.map +1 -1
  279. package/dist/cli/contracts/bundleStatus.js +2 -0
  280. package/dist/cli/contracts/bundleStatus.js.map +1 -0
  281. package/dist/cli/contracts/orientationState.js +2 -0
  282. package/dist/cli/contracts/orientationState.js.map +1 -0
  283. package/dist/cli/dispatch/argvParser.js +33 -0
  284. package/dist/cli/dispatch/argvParser.js.map +1 -0
  285. package/dist/cli/dispatch/check.js +328 -0
  286. package/dist/cli/dispatch/check.js.map +1 -0
  287. package/dist/cli/dispatch/commands.js +27 -0
  288. package/dist/cli/dispatch/commands.js.map +1 -0
  289. package/dist/cli/dispatch/index.js +183 -0
  290. package/dist/cli/dispatch/index.js.map +1 -0
  291. package/dist/cli/dispatch/lifecycle.js +671 -0
  292. package/dist/cli/dispatch/lifecycle.js.map +1 -0
  293. package/dist/cli/dispatch/prime.js +104 -0
  294. package/dist/cli/dispatch/prime.js.map +1 -0
  295. package/dist/cli/dispatch/shared.js +64 -0
  296. package/dist/cli/dispatch/shared.js.map +1 -0
  297. package/dist/cli/dispatch/state.js +148 -0
  298. package/dist/cli/dispatch/state.js.map +1 -0
  299. package/dist/cli/dispatch.js +1 -957
  300. package/dist/cli/dispatch.js.map +1 -1
  301. package/dist/cli/errors.js +54 -0
  302. package/dist/cli/errors.js.map +1 -0
  303. package/dist/cli/help.js +262 -0
  304. package/dist/cli/help.js.map +1 -0
  305. package/dist/cli/orientation/attention.js +163 -0
  306. package/dist/cli/orientation/attention.js.map +1 -0
  307. package/dist/cli/orientation/corpusCoverage.js +71 -0
  308. package/dist/cli/orientation/corpusCoverage.js.map +1 -0
  309. package/dist/cli/orientation.js +194 -114
  310. package/dist/cli/orientation.js.map +1 -1
  311. package/dist/cli/planArtifacts.js +172 -0
  312. package/dist/cli/planArtifacts.js.map +1 -0
  313. package/dist/cli/planEvidence.js +158 -0
  314. package/dist/cli/planEvidence.js.map +1 -0
  315. package/dist/cli/planLifecycleState.js +34 -0
  316. package/dist/cli/planLifecycleState.js.map +1 -0
  317. package/dist/cli/prime-blob.js +68 -2
  318. package/dist/cli/prime-blob.js.map +1 -1
  319. package/dist/cli/startupCompletenessContract.js +56 -0
  320. package/dist/cli/startupCompletenessContract.js.map +1 -0
  321. package/dist/cli/stateQuery.js +17 -2
  322. package/dist/cli/stateQuery.js.map +1 -1
  323. package/dist/cli/todoMarkdown.js +33 -0
  324. package/dist/cli/todoMarkdown.js.map +1 -0
  325. package/dist/cli/todoSeverity.js +19 -0
  326. package/dist/cli/todoSeverity.js.map +1 -0
  327. package/dist/core/atomicWriter.js +21 -0
  328. package/dist/core/atomicWriter.js.map +1 -0
  329. package/dist/core/envPaths.js +21 -0
  330. package/dist/core/envPaths.js.map +1 -0
  331. package/dist/core/jsonValue.js +6 -0
  332. package/dist/core/jsonValue.js.map +1 -0
  333. package/dist/core/pyjson.js +67 -2
  334. package/dist/core/pyjson.js.map +1 -1
  335. package/dist/core/yaml.js +8 -0
  336. package/dist/core/yaml.js.map +1 -1
  337. package/dist/eval/evalSkills.js +30 -25
  338. package/dist/eval/evalSkills.js.map +1 -1
  339. package/dist/eval/semanticEval.js +43 -19
  340. package/dist/eval/semanticEval.js.map +1 -1
  341. package/dist/eval/semanticFixtures.js +16 -4
  342. package/dist/eval/semanticFixtures.js.map +1 -1
  343. package/dist/hooks/common.js +9 -26
  344. package/dist/hooks/common.js.map +1 -1
  345. package/dist/hooks/compaction/apply.js +269 -0
  346. package/dist/hooks/compaction/apply.js.map +1 -0
  347. package/dist/hooks/compaction/dryRun.js +183 -0
  348. package/dist/hooks/compaction/dryRun.js.map +1 -0
  349. package/dist/hooks/compaction/index.js +23 -0
  350. package/dist/hooks/compaction/index.js.map +1 -0
  351. package/dist/hooks/compaction/parse.js +258 -0
  352. package/dist/hooks/compaction/parse.js.map +1 -0
  353. package/dist/hooks/compaction/retention.js +202 -0
  354. package/dist/hooks/compaction/retention.js.map +1 -0
  355. package/dist/hooks/compaction/status.js +243 -0
  356. package/dist/hooks/compaction/status.js.map +1 -0
  357. package/dist/hooks/compaction/types.js +6 -0
  358. package/dist/hooks/compaction/types.js.map +1 -0
  359. package/dist/hooks/cursorPreToolUse.js +1 -1
  360. package/dist/hooks/cursorPreToolUse.js.map +1 -1
  361. package/dist/hooks/cursorSessionStart.js +10 -2
  362. package/dist/hooks/cursorSessionStart.js.map +1 -1
  363. package/dist/hooks/sessionStart.js +18 -11
  364. package/dist/hooks/sessionStart.js.map +1 -1
  365. package/dist/hooks/sessionStop.js +8 -14
  366. package/dist/hooks/sessionStop.js.map +1 -1
  367. package/dist/hooks/validateArtifact/agentFacing.js +10 -0
  368. package/dist/hooks/validateArtifact/agentFacing.js.map +1 -0
  369. package/dist/hooks/validateArtifact/index.js +151 -0
  370. package/dist/hooks/validateArtifact/index.js.map +1 -0
  371. package/dist/hooks/validateArtifact/markdown.js +146 -0
  372. package/dist/hooks/validateArtifact/markdown.js.map +1 -0
  373. package/dist/hooks/validateArtifact/runtime.js +86 -0
  374. package/dist/hooks/validateArtifact/runtime.js.map +1 -0
  375. package/dist/hooks/validateArtifact/schema.js +541 -0
  376. package/dist/hooks/validateArtifact/schema.js.map +1 -0
  377. package/dist/hooks/validateArtifact/traversal.js +106 -0
  378. package/dist/hooks/validateArtifact/traversal.js.map +1 -0
  379. package/dist/hooks/validateArtifact/violations.js +108 -0
  380. package/dist/hooks/validateArtifact/violations.js.map +1 -0
  381. package/dist/migrate/v2HandoffManifest.js +455 -0
  382. package/dist/migrate/v2HandoffManifest.js.map +1 -0
  383. package/dist/registries/artifactProtocolIds.js +77 -0
  384. package/dist/registries/artifactProtocolIds.js.map +1 -0
  385. package/dist/registries/artifactRegistry.js +62 -15
  386. package/dist/registries/artifactRegistry.js.map +1 -1
  387. package/dist/registries/capabilityContract.js +156 -12
  388. package/dist/registries/capabilityContract.js.map +1 -1
  389. package/dist/registries/evaluatorHandoffContract.js +171 -0
  390. package/dist/registries/evaluatorHandoffContract.js.map +1 -0
  391. package/dist/registries/packageRegistry.js +40 -6
  392. package/dist/registries/packageRegistry.js.map +1 -1
  393. package/dist/registries/runtimeAdapterRegistry.js +30 -21
  394. package/dist/registries/runtimeAdapterRegistry.js.map +1 -1
  395. package/dist/registries/triggerLoader.js +211 -0
  396. package/dist/registries/triggerLoader.js.map +1 -0
  397. package/dist/release/releaseMetadata.js +235 -0
  398. package/dist/release/releaseMetadata.js.map +1 -0
  399. package/dist/runtime/lifecycleAdapterContract.js +458 -0
  400. package/dist/runtime/lifecycleAdapterContract.js.map +1 -0
  401. package/dist/runtime/lifecycleAdapters.js +766 -0
  402. package/dist/runtime/lifecycleAdapters.js.map +1 -0
  403. package/dist/runtime/lifecycleAuthority.js +493 -0
  404. package/dist/runtime/lifecycleAuthority.js.map +1 -0
  405. package/dist/runtime/lifecycleOperationContract.js +113 -0
  406. package/dist/runtime/lifecycleOperationContract.js.map +1 -0
  407. package/dist/runtime/lifecycleOperations.js +635 -0
  408. package/dist/runtime/lifecycleOperations.js.map +1 -0
  409. package/dist/runtime/lifecycleOwnershipJournal.js +623 -0
  410. package/dist/runtime/lifecycleOwnershipJournal.js.map +1 -0
  411. package/dist/runtime/lifecyclePublication.js +395 -0
  412. package/dist/runtime/lifecyclePublication.js.map +1 -0
  413. package/dist/runtime/lifecycleSnapshot.js +439 -0
  414. package/dist/runtime/lifecycleSnapshot.js.map +1 -0
  415. package/dist/runtime/retiredRuntimeCleanup.js +238 -0
  416. package/dist/runtime/retiredRuntimeCleanup.js.map +1 -0
  417. package/dist/setup/codex/agents.js +96 -0
  418. package/dist/setup/codex/agents.js.map +1 -0
  419. package/dist/setup/codex/cli.js +161 -0
  420. package/dist/setup/codex/cli.js.map +1 -0
  421. package/dist/setup/codex/configToml.js +639 -0
  422. package/dist/setup/codex/configToml.js.map +1 -0
  423. package/dist/setup/codex/constants.js +29 -0
  424. package/dist/setup/codex/constants.js.map +1 -0
  425. package/dist/setup/codex/installRoot.js +64 -0
  426. package/dist/setup/codex/installRoot.js.map +1 -0
  427. package/dist/setup/codex/state.js +270 -0
  428. package/dist/setup/codex/state.js.map +1 -0
  429. package/dist/setup/codex.js +11 -1055
  430. package/dist/setup/codex.js.map +1 -1
  431. package/dist/setup/copilot.js +1 -1
  432. package/dist/setup/copilot.js.map +1 -1
  433. package/dist/setup/cursor.js +7 -5
  434. package/dist/setup/cursor.js.map +1 -1
  435. package/dist/setup/cursorSurfaces.js +67 -0
  436. package/dist/setup/cursorSurfaces.js.map +1 -0
  437. package/dist/setup/doctor/core.js +296 -0
  438. package/dist/setup/doctor/core.js.map +1 -0
  439. package/dist/setup/doctor/diagnostics.js +201 -0
  440. package/dist/setup/doctor/diagnostics.js.map +1 -0
  441. package/dist/setup/doctor/opencode.js +301 -0
  442. package/dist/setup/doctor/opencode.js.map +1 -0
  443. package/dist/setup/doctor/report.js +425 -0
  444. package/dist/setup/doctor/report.js.map +1 -0
  445. package/dist/setup/doctor.js +9 -1275
  446. package/dist/setup/doctor.js.map +1 -1
  447. package/dist/setup/opencode.js +13 -0
  448. package/dist/setup/opencode.js.map +1 -0
  449. package/dist/setup/opencodeConstants.js +2 -0
  450. package/dist/setup/opencodeConstants.js.map +1 -0
  451. package/dist/setup/smokeChecks.js +109 -0
  452. package/dist/setup/smokeChecks.js.map +1 -0
  453. package/dist/state/installRoot.js +64 -24
  454. package/dist/state/installRoot.js.map +1 -1
  455. package/dist/state/startupAnalysis/benchmark.js +371 -0
  456. package/dist/state/startupAnalysis/benchmark.js.map +1 -0
  457. package/dist/state/startupAnalysis/contract.js +126 -0
  458. package/dist/state/startupAnalysis/contract.js.map +1 -0
  459. package/dist/state/startupAnalysis/helpers.js +287 -0
  460. package/dist/state/startupAnalysis/helpers.js.map +1 -0
  461. package/dist/state/startupAnalysis/index.js +7 -0
  462. package/dist/state/startupAnalysis/index.js.map +1 -0
  463. package/dist/state/startupAnalysis/metrics.js +341 -0
  464. package/dist/state/startupAnalysis/metrics.js.map +1 -0
  465. package/dist/state/startupAnalysis/records.js +199 -0
  466. package/dist/state/startupAnalysis/records.js.map +1 -0
  467. package/dist/state/startupAnalysis/report.js +112 -0
  468. package/dist/state/startupAnalysis/report.js.map +1 -0
  469. package/dist/state/startupAnalysis/threshold.js +500 -0
  470. package/dist/state/startupAnalysis/threshold.js.map +1 -0
  471. package/dist/state/startupAnalysis.js +2 -1952
  472. package/dist/state/startupAnalysis.js.map +1 -1
  473. package/dist/state/write/assign.js +21 -0
  474. package/dist/state/write/assign.js.map +1 -0
  475. package/dist/state/write/errors.js +12 -0
  476. package/dist/state/write/errors.js.map +1 -0
  477. package/dist/state/write/explain.js +155 -0
  478. package/dist/state/write/explain.js.map +1 -0
  479. package/dist/state/write/fields.js +62 -0
  480. package/dist/state/write/fields.js.map +1 -0
  481. package/dist/state/write/index.js +11 -0
  482. package/dist/state/write/index.js.map +1 -0
  483. package/dist/state/write/input.js +22 -0
  484. package/dist/state/write/input.js.map +1 -0
  485. package/dist/state/write/lock.js +108 -0
  486. package/dist/state/write/lock.js.map +1 -0
  487. package/dist/state/write/operations.js +220 -0
  488. package/dist/state/write/operations.js.map +1 -0
  489. package/dist/state/write/serialize.js +2 -0
  490. package/dist/state/write/serialize.js.map +1 -0
  491. package/dist/state/write/transaction.js +787 -0
  492. package/dist/state/write/transaction.js.map +1 -0
  493. package/dist/state/write/validate.js +8 -0
  494. package/dist/state/write/validate.js.map +1 -0
  495. package/dist/upgrade/appContentRefresh.js +374 -0
  496. package/dist/upgrade/appContentRefresh.js.map +1 -0
  497. package/dist/upgrade/appModel.js +11 -6
  498. package/dist/upgrade/appModel.js.map +1 -1
  499. package/dist/upgrade/atomicWriter.js +2 -0
  500. package/dist/upgrade/atomicWriter.js.map +1 -0
  501. package/dist/upgrade/bundleEvidence.js +34 -0
  502. package/dist/upgrade/bundleEvidence.js.map +1 -0
  503. package/dist/upgrade/channels.js +27 -7
  504. package/dist/upgrade/channels.js.map +1 -1
  505. package/dist/upgrade/coexistenceProbe.js +105 -0
  506. package/dist/upgrade/coexistenceProbe.js.map +1 -0
  507. package/dist/upgrade/compatibility.js +52 -16
  508. package/dist/upgrade/compatibility.js.map +1 -1
  509. package/dist/upgrade/doctor.js +195 -193
  510. package/dist/upgrade/doctor.js.map +1 -1
  511. package/dist/upgrade/doctorClassifier.js +188 -0
  512. package/dist/upgrade/doctorClassifier.js.map +1 -0
  513. package/dist/upgrade/installedHooksRetirement.js +190 -0
  514. package/dist/upgrade/installedHooksRetirement.js.map +1 -0
  515. package/dist/upgrade/legacyAgentCleanup.js +183 -0
  516. package/dist/upgrade/legacyAgentCleanup.js.map +1 -0
  517. package/dist/upgrade/lifecycleUpgrade.js +427 -0
  518. package/dist/upgrade/lifecycleUpgrade.js.map +1 -0
  519. package/dist/upgrade/migrateArtifactsV1ToV2.js +568 -0
  520. package/dist/upgrade/migrateArtifactsV1ToV2.js.map +1 -0
  521. package/dist/upgrade/migrateArtifactsV2ToV3.js +273 -144
  522. package/dist/upgrade/migrateArtifactsV2ToV3.js.map +1 -1
  523. package/dist/upgrade/nextMajorDoctor.js +156 -0
  524. package/dist/upgrade/nextMajorDoctor.js.map +1 -0
  525. package/dist/upgrade/npxPlatformStatus.js +23 -0
  526. package/dist/upgrade/npxPlatformStatus.js.map +1 -0
  527. package/dist/upgrade/projectIntegration.js +259 -104
  528. package/dist/upgrade/projectIntegration.js.map +1 -1
  529. package/dist/upgrade/projectIntegrationDecision.js +141 -0
  530. package/dist/upgrade/projectIntegrationDecision.js.map +1 -0
  531. package/dist/upgrade/runtimeMigration.js +342 -89
  532. package/dist/upgrade/runtimeMigration.js.map +1 -1
  533. package/dist/upgrade/upgradeCommands.js +8 -0
  534. package/dist/upgrade/upgradeCommands.js.map +1 -1
  535. package/dist/upgrade/upgradeLock.js +54 -0
  536. package/dist/upgrade/upgradeLock.js.map +1 -0
  537. package/dist/upgrade/upgradeOrchestrator.js +170 -46
  538. package/dist/upgrade/upgradeOrchestrator.js.map +1 -1
  539. package/dist/upgrade/upgradeSnapshot.js +93 -0
  540. package/dist/upgrade/upgradeSnapshot.js.map +1 -0
  541. package/dist/upgrade/v3CapabilitySurface.js +15 -0
  542. package/dist/upgrade/v3CapabilitySurface.js.map +1 -0
  543. package/dist/upgrade/versionResolution.js +12 -4
  544. package/dist/upgrade/versionResolution.js.map +1 -1
  545. package/dist/validate/appHomeContract.js +5 -5
  546. package/dist/validate/appHomeContract.js.map +1 -1
  547. package/dist/validate/capability.js +135 -14
  548. package/dist/validate/capability.js.map +1 -1
  549. package/dist/validate/crossCapability.js +1 -1
  550. package/dist/validate/crossCapability.js.map +1 -1
  551. package/dist/validate/lifecycleAdapters/legacyPythonParity.js +93 -0
  552. package/dist/validate/lifecycleAdapters/legacyPythonParity.js.map +1 -0
  553. package/dist/validate/lifecycleAdapters/nodeFormChecks.js +481 -0
  554. package/dist/validate/lifecycleAdapters/nodeFormChecks.js.map +1 -0
  555. package/dist/validate/lifecycleAdapters/shared.js +198 -0
  556. package/dist/validate/lifecycleAdapters/shared.js.map +1 -0
  557. package/dist/validate/lifecycleAdapters.js +91 -702
  558. package/dist/validate/lifecycleAdapters.js.map +1 -1
  559. package/dist/validate/selfAudit.js +63 -21
  560. package/dist/validate/selfAudit.js.map +1 -1
  561. package/dist/validate/vocabularyAuthority.js +303 -0
  562. package/dist/validate/vocabularyAuthority.js.map +1 -0
  563. package/package.json +30 -27
  564. package/bundle/references/v1-section-mapping.md +0 -47
  565. package/bundle/skills/agentera/.claude-plugin/plugin.json +0 -27
  566. package/bundle/skills/agentera/agents/dokumentera.toml +0 -6
  567. package/bundle/skills/agentera/agents/hej.toml +0 -6
  568. package/bundle/skills/agentera/agents/inspektera.toml +0 -6
  569. package/bundle/skills/agentera/agents/inspirera.toml +0 -6
  570. package/bundle/skills/agentera/agents/optimera.toml +0 -6
  571. package/bundle/skills/agentera/agents/orkestrera.toml +0 -6
  572. package/bundle/skills/agentera/agents/planera.toml +0 -6
  573. package/bundle/skills/agentera/agents/profilera.toml +0 -6
  574. package/bundle/skills/agentera/agents/realisera.toml +0 -6
  575. package/bundle/skills/agentera/agents/resonera.toml +0 -6
  576. package/bundle/skills/agentera/agents/visionera.toml +0 -6
  577. package/bundle/skills/agentera/agents/visualisera.toml +0 -6
  578. package/bundle/skills/agentera/capabilities/dokumentera/instructions.md +0 -428
  579. package/bundle/skills/agentera/capabilities/hej/instructions.md +0 -331
  580. package/bundle/skills/agentera/capabilities/inspektera/instructions.md +0 -514
  581. package/bundle/skills/agentera/capabilities/inspirera/instructions.md +0 -280
  582. package/bundle/skills/agentera/capabilities/inspirera/schemas/artifacts.yaml +0 -24
  583. package/bundle/skills/agentera/capabilities/optimera/instructions.md +0 -437
  584. package/bundle/skills/agentera/capabilities/orkestrera/instructions.md +0 -433
  585. package/bundle/skills/agentera/capabilities/orkestrera/schemas/validation.yaml +0 -107
  586. package/bundle/skills/agentera/capabilities/planera/instructions.md +0 -368
  587. package/bundle/skills/agentera/capabilities/planera/schemas/artifacts.yaml +0 -62
  588. package/bundle/skills/agentera/capabilities/planera/schemas/validation.yaml +0 -61
  589. package/bundle/skills/agentera/capabilities/profilera/instructions.md +0 -419
  590. package/bundle/skills/agentera/capabilities/realisera/instructions.md +0 -403
  591. package/bundle/skills/agentera/capabilities/resonera/instructions.md +0 -329
  592. package/bundle/skills/agentera/capabilities/visionera/instructions.md +0 -309
  593. package/bundle/skills/agentera/capabilities/visualisera/instructions.md +0 -400
  594. package/bundle/skills/hej/.claude-plugin/plugin.json +0 -6
  595. package/bundle/skills/hej/SKILL.md +0 -69
  596. package/bundle/skills/hej/agents/hej.toml +0 -11
  597. package/bundle/skills/hej/agents/openai.yaml +0 -8
  598. package/dist/cli/commands/backfill.js +0 -84
  599. package/dist/cli/commands/backfill.js.map +0 -1
  600. package/dist/cli/commands/state.js +0 -1012
  601. package/dist/cli/commands/state.js.map +0 -1
  602. package/dist/core/git.js +0 -43
  603. package/dist/core/git.js.map +0 -1
  604. package/dist/hooks/compaction.js +0 -935
  605. package/dist/hooks/compaction.js.map +0 -1
  606. package/dist/hooks/validateArtifact.js +0 -933
  607. package/dist/hooks/validateArtifact.js.map +0 -1
  608. package/dist/state/progressCommit.js +0 -289
  609. package/dist/state/progressCommit.js.map +0 -1
  610. /package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/exit.yaml +0 -0
  611. /package/bundle/skills/agentera/capabilities/{inspirera → research}/schemas/exit.yaml +0 -0
  612. /package/bundle/skills/agentera/capabilities/{hej → status}/schemas/exit.yaml +0 -0
@@ -31,7 +31,7 @@ compatibility_boundary: >-
31
31
  canonical_concept_order:
32
32
  - request_to_capability_routing
33
33
  - next_action_recommendation
34
- - orkestrera_task_assignment
34
+ - orchestrate_task_assignment
35
35
  - worker_launch
36
36
  - runtime_subagent_support
37
37
  - worker_safety_git_commit
@@ -40,7 +40,7 @@ canonical_concepts:
40
40
  definition: >-
41
41
  Agentera chooses the capability that should handle a user request, using
42
42
  direct routes, primary route aliases, trigger schemas, disambiguation, or
43
- fallback to hej.
43
+ fallback to status.
44
44
  preferred_terms:
45
45
  - Agentera router
46
46
  - request-to-capability routing
@@ -65,15 +65,15 @@ canonical_concepts:
65
65
  - force
66
66
  - chain
67
67
  - conductor handoff
68
- orkestrera_task_assignment:
68
+ orchestrate_task_assignment:
69
69
  definition: >-
70
- Orkestrera assigns approved plan work to a worker capability during an
70
+ Orchestrate assigns approved plan work to a worker capability during an
71
71
  explicitly orchestrated flow; it evaluates the result instead of implementing
72
72
  the task itself.
73
73
  preferred_terms:
74
74
  - delegate
75
75
  - delegation
76
- - Orkestrera task delegation
76
+ - Orchestrate task delegation
77
77
  - assigned plan work
78
78
  forbidden_ambiguous_shortcuts:
79
79
  - conductor
@@ -82,7 +82,7 @@ canonical_concepts:
82
82
  - orchestrator implementation
83
83
  worker_launch:
84
84
  definition: >-
85
- Realisera or Optimera starts a worker through the host runtime when an
85
+ Build or Optimize starts a worker through the host runtime when an
86
86
  implementation or measurement cycle needs isolated execution.
87
87
  preferred_terms:
88
88
  - spawn
@@ -171,9 +171,9 @@ focused_scan:
171
171
  - (retired maintainer measurement tool)
172
172
  - skills/agentera/SKILL.md
173
173
  - skills/agentera/references/contract.md
174
- - skills/agentera/capabilities/realisera/instructions.md
175
- - skills/agentera/capabilities/optimera/instructions.md
176
- - skills/agentera/capabilities/orkestrera/instructions.md
174
+ - packages/cli/src/capabilities/realisera/instructions.ts
175
+ - packages/cli/src/capabilities/optimera/instructions.ts
176
+ - packages/cli/src/capabilities/orkestrera/instructions.ts
177
177
  - tests/test_skill_dispatch_contract.py
178
178
  - tests/test_runtime_adapters.py
179
179
  - tests/test_runtime_adapter_registry.py
@@ -222,15 +222,15 @@ focused_scan:
222
222
  text: checkpoint before worktree dispatch
223
223
  classification: compatibility-preserved
224
224
  reason: The contract preserves the parseable historical checkpoint commit message string.
225
- - path: ^skills/agentera/capabilities/realisera/instructions\.md$
225
+ - path: ^packages/cli/src/capabilities/realisera/instructions\.ts$
226
226
  text: 'Step 5: Dispatch|checkpoint before worktree dispatch'
227
227
  classification: compatibility-preserved
228
228
  reason: Realisera preserves the current step heading and checkpoint commit message compatibility string.
229
- - path: ^skills/agentera/capabilities/optimera/instructions\.md$
229
+ - path: ^packages/cli/src/capabilities/optimera/instructions\.ts$
230
230
  text: checkpoint before worktree dispatch
231
231
  classification: compatibility-preserved
232
232
  reason: Optimera preserves the current checkpoint commit message compatibility string.
233
- - path: ^skills/agentera/capabilities/orkestrera/instructions\.md$
233
+ - path: ^packages/cli/src/capabilities/orkestrera/instructions\.ts$
234
234
  text: review pressure in dispatch|dispatch/evaluation context|`dispatch` and `chain` are autonomous orchestration verbs
235
235
  classification: canonical
236
236
  reason: Orkestrera capability prose uses dispatch for its explicitly owned orchestration loop.
@@ -0,0 +1,94 @@
1
+ # Five-layer routing model
2
+
3
+ Origin: Decision 76 (2026-06-30) — LLM-primary routing model. Retires the
4
+ deterministic NL routing engine and repositions the trigger schema as
5
+ LLM-readable intent documentation. Builds on the original five-layer concept
6
+ from Decision 42 (2026-05-04), redefining Layers 3-4 as LLM-native.
7
+
8
+ The Agentera routing model resolves incoming requests to a capability across
9
+ five layers. Layers 1, 2, and 5 are deterministic dispatch (bare invocation,
10
+ exact alias, no match); they are implemented and unchanged. Layers 3 and 4
11
+ cover natural-language requests. Per Decision 76, the LLM host — the AI model
12
+ that receives the user's message — owns natural-language routing natively. The
13
+ trigger schema (`description`, `disambiguates_against`, `priority`, phase
14
+ context) provides LLM-readable intent documentation the host consults; there is
15
+ no scoring engine, no confidence threshold, and no borderline band. Layer 4
16
+ (formerly borderline-band disambiguation) is dissolved into Layer 3: the LLM
17
+ resolves ambiguity natively, using `disambiguates_against` hints as advisory
18
+ context. Decision 75's request-vs-state mutual exclusivity is dissolved: request
19
+ intent and state-readiness are both advisory context the LLM consults.
20
+
21
+ ## Layer 1: Bare `/agentera` — delegate to prime
22
+
23
+ - **Input pattern**: the request is `/agentera` with no additional text.
24
+ - **Action**: delegate immediately to the status capability. Status performs
25
+ state-aware routing through the `agentera prime` composite result, which
26
+ condenses project artifacts and suggests the most useful next capability.
27
+ This is deterministic and never wrong.
28
+ - **Implementation status**: implemented and unchanged.
29
+
30
+ ## Layer 2: capability name or `/agentera <primary-alias>` — direct route
31
+
32
+ - **Input pattern**: the request text exactly matches a capability name
33
+ (case-insensitive), or exactly matches one primary alias from
34
+ `capability_schema_contract.yaml` `ROUTE_ALIASES.primary_aliases`, or begins
35
+ with a canonical capability name followed by more text (`/agentera <capability>
36
+ <topic>`).
37
+ - **Action**: route directly to that capability without evaluating natural-language
38
+ trigger descriptions. Pass any remaining text as the user's topic or instruction.
39
+ Each capability has exactly one primary alias; secondary wording stays in
40
+ capability trigger schemas below this layer.
41
+ - **Implementation status**: implemented and unchanged.
42
+
43
+ ## Layer 3: Natural language — LLM-native routing
44
+
45
+ - **Input pattern**: the request is natural language (e.g. "help me think
46
+ through this") that does not match Layer 1 or Layer 2.
47
+ - **Action**: the LLM host routes natively. It consults the trigger schema's
48
+ `description` fields (what each capability does), `disambiguates_against`
49
+ hints (how to tell near-equal capabilities apart), and `priority`
50
+ (relevance precedence) as LLM-readable intent documentation, then selects a
51
+ capability. There are no confidence scores, no thresholds, and no
52
+ weighted-average computation; the LLM reads the intent descriptions and
53
+ routes.
54
+ - **Resolving ambiguity**: when two capabilities could match a request, the
55
+ LLM host resolves the ambiguity natively, surfacing the
56
+ `disambiguates_against.hint` strings as advisory context when it asks the
57
+ user to confirm or clarify. The hints supply the words; the LLM supplies the
58
+ judgment.
59
+ - **Implementation status**: implemented — the LLM host owns this layer.
60
+ `references/cli/trigger-schema-enrichment.md` is the intent documentation
61
+ contract the host reads.
62
+
63
+ ## Layer 4: Dissolved into Layer 3
64
+
65
+ Layer 4 formerly described a borderline-band disambiguation engine that fired
66
+ when two capabilities scored within a configurable band. Decision 76 retired
67
+ that engine: ambiguity resolution is now part of Layer 3, performed natively by
68
+ the LLM host using the `disambiguates_against` hints as advisory context. There
69
+ is no separate disambiguation layer, no borderline band, and no
70
+ disambiguation-engine output schema.
71
+
72
+ ## Layer 5: No match — fallback to status
73
+
74
+ - **Input pattern**: the LLM host cannot map the request to any capability from
75
+ the trigger schema's intent descriptions.
76
+ - **Action**: route to status for orientation. Status handles status requests
77
+ and ambiguous inputs.
78
+ - **Implementation status**: implemented and unchanged.
79
+
80
+ ## Ownership boundaries
81
+
82
+ - **This document** defines what Layers 1-5 mean: their input patterns, actions,
83
+ and implementation status.
84
+ - **`skills/agentera/capability_schema_contract.yaml`** (`ENTRY_SCHEMA.fields.priority`
85
+ and `FIELD_RULES.TRIGGERS.priority`) defines trigger `priority` values
86
+ (`high`, `medium`, `low`) as an advisory relevance-precedence hint the LLM host
87
+ reads — not a scoring weight.
88
+ - **Per-capability `schemas/triggers.yaml`** owns the trigger `description`,
89
+ `priority`, and `disambiguates_against` intent documentation that the LLM host
90
+ consults for Layer 3 routing. `references/cli/trigger-schema-enrichment.md` is
91
+ the intent documentation contract; pattern matching and scoring belong to
92
+ neither, having been retired by Decision 76.
93
+ - **`skills/agentera/SKILL.md`** is the thin bootstrap routing surface per Decision
94
+ 74; it cross-references this document rather than restating the full model.
@@ -0,0 +1,42 @@
1
+ schema_version: agentera.single_name_protocol.v1
2
+ status: active_authority
3
+ decision: 58
4
+ purpose: >-
5
+ Machine-readable Decision 58 boundary: forbidden legacy protocol identifiers
6
+ and scan surfaces for the single-name protocol regression test.
7
+ human_index:
8
+ document: references/cli/vocabulary.md
9
+ forbidden_protocol_substrings:
10
+ - pattern: instruction_file
11
+ rationale: D65 renamed DIRECTORY_REQUIREMENTS and contract fields to instruction_module.
12
+ - pattern: canonical_instruction_file
13
+ rationale: Use canonical_instruction_module in capability-instruction-contract.yaml.
14
+ - pattern: legacy_instruction_file
15
+ rationale: Historical paths belong in archive or migration modules only.
16
+ - pattern: instructionPath
17
+ rationale: capabilityContract loader exposes instructionModulePath only.
18
+ forbidden_storage_protocol_markdown_artifacts:
19
+ - PROGRESS.md
20
+ - PLAN.md
21
+ - DECISIONS.md
22
+ - VISION.md
23
+ - HEALTH.md
24
+ - DOCS.md
25
+ - OBJECTIVE.md
26
+ - EXPERIMENTS.md
27
+ scan_roots:
28
+ - packages/cli/src
29
+ - skills/agentera/capability_schema_contract.yaml
30
+ - skills/agentera/protocol.yaml
31
+ - references/cli/capability-instruction-contract.yaml
32
+ - references/cli/vocabulary.md
33
+ - references/cli/vocabulary-index.yaml
34
+ - registry.json
35
+ scan_exclude_globs:
36
+ - "**/capabilities/**/instructions.ts"
37
+ - "**/migrateArtifactsV1ToV2.ts"
38
+ - "**/migrateArtifactsV2ToV3.ts"
39
+ - "**/migrateArtifacts*.ts"
40
+ - "**/*.test.ts"
41
+ - "**/test/**"
42
+ comment_line_exempt: true
@@ -0,0 +1,136 @@
1
+ # Trigger intent documentation contract
2
+
3
+ Authority for Layer 3 LLM-native capability routing. This document defines the
4
+ trigger-schema fields the LLM host consults to understand what each capability
5
+ does and how to disambiguate near-equal requests. The fields are documentation
6
+ the host reads, not inputs to a scoring engine.
7
+
8
+ - **Authority path:** `references/cli/trigger-schema-enrichment.md`
9
+ - **Schema contract:** `skills/agentera/capability_schema_contract.yaml` (the
10
+ contract loader at `packages/cli/src/registries/capabilityContract.ts` consumes it)
11
+ - **Trigger files:** `skills/agentera/capabilities/<name>/schemas/triggers.yaml`
12
+ - **Scope:** Layer 3 (LLM-native natural-language routing) of the five-layer
13
+ routing model. Layer 4 (formerly borderline-band disambiguation) is dissolved
14
+ into Layer 3. Layers 1, 2, and 5 are unchanged.
15
+
16
+ ## Decision 76 — repositioning
17
+
18
+ Decision 76 (2026-06-30) retires the deterministic NL routing engine. The LLM
19
+ host — the AI model that receives the user's message — owns natural-language
20
+ routing natively. This document is repositioned from a scoring-enrichment
21
+ contract to the **trigger intent documentation contract**: it defines the
22
+ `triggers.yaml` fields that help the LLM host understand what each capability
23
+ does and how to disambiguate near-equal requests.
24
+
25
+ The fields stay as documentation, not as scoring inputs. The LLM host reads the
26
+ descriptions and disambiguates natively; `priority` and `disambiguates_against`
27
+ are advisory hints, not scoring weights. There is no scoring algorithm, no
28
+ confidence threshold, no borderline band, and no `prime --route` output schema.
29
+ Decision 75's request-vs-state mutual exclusivity is dissolved: request intent
30
+ and state-readiness are both advisory context the LLM consults. Decision 76
31
+ supersedes Decision 75 design choices 2 (request-derived scoring as router), 4
32
+ (mutual exclusivity), and 5 (pure request-derived).
33
+
34
+ Decision 76 records the design choices and rejected alternatives (including the
35
+ tuning-the-engine and reposition-`--route` alternatives that were rejected).
36
+
37
+ ## 1. Field shape
38
+
39
+ The fields below are the LLM-readable intent documentation the host consults.
40
+ `description` and `priority` are base trigger fields required on every
41
+ `TRIGGERS` entry; `disambiguates_against` is an optional enrichment that gives
42
+ the host disambiguation words to surface when a request could match more than
43
+ one capability.
44
+
45
+ ### 1.1 `description`
46
+
47
+ - **Type:** non-empty string (required on every `TRIGGERS` entry).
48
+ - **Meaning:** the LLM-readable explanation of what this trigger entry routes to.
49
+ The LLM host reads this to decide whether a natural-language request matches
50
+ the capability's intent. Prose that names the capability's purpose and the
51
+ request shapes it owns reads better than keyword lists; write it for a reader
52
+ who has never seen the capability before.
53
+ - **Validation failure:** a missing, empty, or non-string `description` fails
54
+ validation with an error message naming the offending entry ID.
55
+
56
+ ```
57
+ TRIGGERS:
58
+ 1:
59
+ id: T2
60
+ description: >-
61
+ Audit and codebase health requests.
62
+ priority: medium
63
+ patterns:
64
+ - "check code health"
65
+ - "architecture review"
66
+ ```
67
+
68
+ ### 1.2 `disambiguates_against`
69
+
70
+ - **Type:** list of mappings. Each entry MUST contain:
71
+ - `capability` — string referencing a valid capability ID (one of the twelve
72
+ English canonical IDs enumerated by `ROUTE_ALIASES.primary_aliases` in
73
+ `capability_schema_contract.yaml`: `status`, `vision`, `discuss`, `research`,
74
+ `plan`, `build`, `optimize`, `audit`, `document`, `profile`, `design`,
75
+ `orchestrate`).
76
+ - `hint` — non-empty string distinguishing this trigger's intent from the
77
+ named capability on near-equal requests.
78
+ - **Meaning:** declares which other capabilities this trigger's intent could be
79
+ confused with, with a hint the LLM host consults when it sees a request that
80
+ could match more than one capability. The list is advisory: the LLM host
81
+ resolves ambiguity natively and MAY surface the hint when asking the user to
82
+ confirm or clarify. The hint supplies the words; the LLM supplies the
83
+ judgment.
84
+ - **Validation failure:** a `capability` value that is not one of the twelve
85
+ canonical IDs, a missing `hint`, an empty `hint`, or an entry that is not a
86
+ mapping fails validation with the offending entry ID and the constraint.
87
+
88
+ ```
89
+ disambiguates_against:
90
+ - capability: build
91
+ hint: "vision refines existing project direction; build implements code"
92
+ - capability: optimize
93
+ hint: "vision is about what to build, not tuning existing code"
94
+ ```
95
+
96
+ ### 1.3 `priority`
97
+
98
+ - **Type:** string enum `high` | `medium` | `low` (required on every `TRIGGERS`
99
+ entry).
100
+ - **Meaning:** advisory relevance-precedence hint the LLM host reads alongside
101
+ `description` when deciding which capability best fits a request. `high`
102
+ marks a capability that owns the request strongly; `low` marks a capability
103
+ that is a plausible but weaker fit. It is not a scoring weight and feeds no
104
+ weighted-average calculation; the LLM host uses it as one signal among the
105
+ intent documentation.
106
+ - **Validation failure:** a missing `priority` or a value outside `high`,
107
+ `medium`, `low` fails validation with the offending entry ID.
108
+
109
+ ```
110
+ priority: high
111
+ ```
112
+
113
+ ## 2. Defaults summary
114
+
115
+ | Field | Required | Default when absent |
116
+ | --- | --- | --- |
117
+ | `description` | required | — |
118
+ | `disambiguates_against` | optional | empty list (no explicit collisions declared) |
119
+ | `priority` | required (`TRIGGERS`) | — |
120
+
121
+ `description` and `priority` are required on every `TRIGGERS` entry and have no
122
+ default. `disambiguates_against` is optional and defaults to an empty list. The
123
+ loader at `packages/cli/src/registries/capabilityContract.ts` is the consumer of
124
+ these shapes; tests and source that need them read through the loader rather than
125
+ re-declaring the values (per the AGENTS.md rule against duplicating
126
+ contract-owned values).
127
+
128
+ ## 3. Acceptance criteria mapping
129
+
130
+ | Criterion | Section |
131
+ | --- | --- |
132
+ | `description` is a non-empty string on every `TRIGGERS` entry | §1.1 |
133
+ | `disambiguates_against` entries reference a valid capability ID and include a non-empty hint | §1.2 |
134
+ | `priority` is one of `high` / `medium` / `low` on every `TRIGGERS` entry | §1.3 |
135
+ | Document reframed as LLM-readable intent documentation; no scoring algorithm, thresholds, borderline band, or `--route` output schema | Decision 76, §1 |
136
+ | Decision artifact lists each choice, ≥1 alternative, and rationale | Decision 76 in `.agentera/decisions.yaml` |
@@ -10,12 +10,13 @@ sources:
10
10
  scope:
11
11
  includes:
12
12
  - Channel names, default selection, and resolution precedence.
13
- - npm dist-tag and git ref resolution per channel.
13
+ - npm dist-tag resolution per channel and git ref resolution for the stable line only.
14
14
  - Environment, config, and CLI override keys.
15
15
  excludes:
16
16
  - App lifecycle canonical statuses and operation verb definitions.
17
17
  - Migration orchestration phases, apply semantics, and compatibility detection.
18
18
  - Package publication, dist-tag retirement, and release approval decisions.
19
+ - uv/git install paths for the development (3.x) channel; feat/v3 is TS-only on npm.
19
20
  compatibility_boundary: >-
20
21
  Stable channel must continue resolving to 2.x until an explicit release decision
21
22
  retires it. Cross-major v2→v3 migration is never implied by default channel
@@ -32,6 +33,22 @@ channels:
32
33
  Tracks the supported 2.x release line for users who must not cross the v2→v3
33
34
  major boundary without explicit opt-in.
34
35
  distribution_major: 2
36
+ next_major:
37
+ concept: forward_successor_line
38
+ channel: development
39
+ version: "3.0.0"
40
+ announced: true
41
+ npm:
42
+ dist_tag: next
43
+ npm_only_advisory: >-
44
+ The successor line is npm-only; stable git/uvx installs remain on the
45
+ supported 2.x line until you explicitly opt in through npm.
46
+ guide_url: >-
47
+ https://github.com/jgabor/agentera/blob/main/UPGRADE.md#upgrading-v2-to-v3-development-channel-irreversible
48
+ preview_command: npx -y agentera@next upgrade --dry-run --channel development
49
+ irreversible_advisory: >-
50
+ Forward migration to the successor line is one-way; return to the prior
51
+ Python support line is permanently unsupported.
35
52
  resolution:
36
53
  npm:
37
54
  dist_tag: latest
@@ -43,16 +60,35 @@ channels:
43
60
  concept: v3_pre_release_line
44
61
  definition: >-
45
62
  Tracks 3.x alphas, betas, and release candidates for early adopters and
46
- maintainers testing the npm self-contained distribution.
63
+ maintainers testing the npm self-contained TypeScript distribution. The
64
+ feat/v3 branch and v3 CLI are npm-only; v2→v3 is a one-way upgrade through
65
+ npx @next, not through uvx or git checkout installs.
47
66
  distribution_major: 3
67
+ next_major:
68
+ concept: forward_successor_line
69
+ channel: development
70
+ version: "3.0.0"
71
+ announced: true
72
+ npm:
73
+ dist_tag: next
74
+ npm_only_advisory: >-
75
+ The v3 successor line is npm-only; opt in to v2→v3 migration through npx @next.
76
+ guide_url: >-
77
+ https://github.com/jgabor/agentera/blob/main/UPGRADE.md#upgrading-v2-to-v3-development-channel-irreversible
78
+ preview_command: npx -y agentera@next upgrade --dry-run --channel development
79
+ irreversible_advisory: >-
80
+ Forward migration to the v3 line is one-way; return to the prior
81
+ Python support line is permanently unsupported.
48
82
  resolution:
49
83
  npm:
50
84
  dist_tag: next
51
85
  update_command: npx -y agentera@next
52
86
  git:
53
- ref: feat/v3
54
- update_command: >-
55
- uvx --from git+https://github.com/jgabor/agentera@feat/v3 agentera
87
+ supported: false
88
+ reason: >-
89
+ feat/v3 has no Python packaging; development-channel CLI delivery is
90
+ npm-only. Stable-channel git/uvx remains the Python 2.x maintainer path
91
+ on @main.
56
92
  override_precedence:
57
93
  - cli_flag
58
94
  - env_var
@@ -122,8 +158,8 @@ version_resolution:
122
158
  latest_on_channel:
123
159
  resolver: npm_dist_tag_with_offline_defaults
124
160
  offline_defaults:
125
- stable: "2.7.6"
126
- development: "3.0.0-dev.2"
161
+ stable: "2.7.7"
162
+ development: "3.0.0"
127
163
  irreversibility:
128
164
  downgrade_to_v2: permanently_blocked
129
165
  supported_downgrade_lines: []
@@ -0,0 +1,45 @@
1
+ # Upgrade repair wording — v3 cursor agent skip
2
+
3
+ When `agentera upgrade --runtime cursor` (or a full runtime phase) runs against a
4
+ **project** directory, managed `.cursor/agents/*.md` descriptors are normally
5
+ copied from the active app-home bundle. On a **v3 capability-surface** project
6
+ that signal is suppressed so D65 `prime --context` bodies are not regressed to
7
+ the retired `instructions.md` read path.
8
+
9
+ ## v3 surface probe
10
+
11
+ Treat the project as v3 when **all twelve** instruction modules exist:
12
+
13
+ `packages/cli/src/capabilities/<name>/instructions.ts`
14
+
15
+ for every routed capability (`status`, `vision`, `discuss`, `research`,
16
+ `plan`, `build`, `optimize`, `audit`, `document`, `profile`,
17
+ `design`, `orchestrate`).
18
+
19
+ If any module is missing, preserve v2 upgrade behavior (copy/refresh managed
20
+ agents from the bundle).
21
+
22
+ ## Orchestrator behavior
23
+
24
+ | Orchestrator | Branch | Behavior |
25
+ | --- | --- | --- |
26
+ | TypeScript (`packages/cli/src/upgrade/runtimeMigration.ts`) | `feat/v3` | On v3 probe match, emit `skipped` `copy-agent` items for in-tree `.cursor/agents/` instead of copying from the bundle. |
27
+ | Python (`scripts/agentera_upgrade.py`) | `main` (stable) | Same probe before the cursor agent copy loop; do not schedule `copy-agent` targets under the project when the probe matches. Backport per the both-branch pattern. |
28
+
29
+ ## User-visible skip message
30
+
31
+ `v3 capability instruction modules present; in-tree .cursor/agents/ uses prime --context and is not overwritten`
32
+
33
+ ## v2 install track successor surfacing (#32)
34
+
35
+ When a **v2-classified** managed app-home (`install_track: v2`) runs the **v3 TypeScript
36
+ CLI** (`agentera doctor` / `agentera prime`), the next-major successor block must surface
37
+ the stable-line forward successor (`3.0.0` on the development channel) with the preview
38
+ command (`npx -y agentera@next upgrade --dry-run`) and the v2→v3 guide URL from
39
+ `references/cli/update-channels.yaml`. A v2 install must not be silently reported as
40
+ up to date against the v3 line.
41
+
42
+ | Surface | Branch | Behavior |
43
+ | --- | --- | --- |
44
+ | TypeScript (`packages/cli/src/upgrade/nextMajorDoctor.ts`, doctor/prime wiring) | `feat/v3` | Resolve successor from `channels.stable.next_major` for v2 installs; omit the block for v3 npm installs and feat/v3 source checkouts. |
45
+ | Python (`scripts/agentera_upgrade.py` doctor/prime writer) | `main` (stable) | Mirror the same v2-install successor block and preview command in stable-line doctor/prime output. Backport per the both-branch pattern; verify by round-trip parity with the v3 reader, not pytest in the feat/v3 worktree. |
@@ -0,0 +1,98 @@
1
+ schema_version: agentera.v3_handoff_manifest.v1
2
+ status: active_authority
3
+ purpose: >-
4
+ Contract for the v2→v3 handoff manifest written by the stable Python CLI at the
5
+ app-home root and read by the v3 TypeScript migration preflight. The manifest
6
+ lets v3 migration classify preserved user state in O(1) time instead of
7
+ scanning the entire app home.
8
+ manifest_file: v3-handoff.json
9
+ manifest_path: >-
10
+ {app_home}/v3-handoff.json where app_home is the platform data-home install
11
+ root (for example ~/.local/share/agentera on Linux).
12
+ writers:
13
+ - v2 stable Python CLI on install, upgrade apply, and doctor (refresh when stale)
14
+ readers:
15
+ - v3 TypeScript migration preflight in packages/cli/src/migrate/v2HandoffManifest.ts
16
+ performance:
17
+ reader_preflight_budget_ms: 100
18
+ note: >-
19
+ When the manifest is present and valid, the v3 reader must complete parsing
20
+ and validation within 100ms. When absent or invalid, the reader may fall
21
+ back to a full app-home scan with no time budget.
22
+ required_top_level_fields:
23
+ schema_version:
24
+ type: string
25
+ const: agentera.v3_handoff_manifest.v1
26
+ written_at:
27
+ type: string
28
+ format: iso8601_utc
29
+ description: UTC timestamp when the manifest was last written.
30
+ installed_v2_version:
31
+ type: string
32
+ min_length: 1
33
+ description: Installed Agentera suite version from the active v2 bundle marker.
34
+ app_home_path:
35
+ type: string
36
+ min_length: 1
37
+ description: Absolute resolved app-home path the writer used.
38
+ user_data_inventory:
39
+ type: array
40
+ min_items: 6
41
+ description: >-
42
+ One entry per catalog id below. Entries for paths that do not exist on disk
43
+ set exists=false; writers still emit the full catalog so v3 preflight can
44
+ trust absence without rescanning.
45
+ runtime_adapters:
46
+ type: array
47
+ items:
48
+ type: string
49
+ description: >-
50
+ Runtime adapter ids (references/adapters/runtime-adapter-registry.yaml)
51
+ that the v2 install actively uses — runtimes whose setup doctor status is
52
+ pass at write time.
53
+ user_data_inventory_catalog:
54
+ - id: benchmarks
55
+ relative_path: benchmarks
56
+ kind: directory
57
+ - id: intermediate
58
+ relative_path: intermediate
59
+ kind: directory
60
+ - id: sessions
61
+ relative_path: sessions
62
+ kind: directory
63
+ - id: history
64
+ relative_path: history
65
+ kind: directory
66
+ - id: corpus
67
+ relative_path: corpus
68
+ kind: directory
69
+ - id: profile_files
70
+ kind: profile_files
71
+ members:
72
+ - relative_path: PROFILE.md
73
+ kind: file
74
+ - relative_path: USAGE.md
75
+ kind: file
76
+ user_data_inventory_entry_shapes:
77
+ directory:
78
+ required: [id, relative_path, kind, exists]
79
+ kind_const: directory
80
+ file:
81
+ required: [id, relative_path, kind, exists]
82
+ kind_const: file
83
+ profile_files:
84
+ required: [id, kind, members]
85
+ kind_const: profile_files
86
+ members:
87
+ required: [relative_path, kind, exists]
88
+ kind_const: file
89
+ freshness:
90
+ writer_obligations:
91
+ - Refresh the manifest on every v2 upgrade apply.
92
+ - Refresh the manifest on v2 doctor when stale or missing (after warning).
93
+ stale_when_any:
94
+ - Manifest file missing.
95
+ - schema_version mismatch.
96
+ - app_home_path differs from the resolved install root.
97
+ - installed_v2_version differs from the active bundle marker version.
98
+ - written_at is older than the bundle marker mtime.
@@ -18,7 +18,7 @@ authority_order:
18
18
  - references/cli/capability-instruction-contract.yaml
19
19
  - references/cli/routing-execution-vocabulary.yaml
20
20
  - skills/agentera/SKILL.md
21
- - skills/agentera/capabilities/*/instructions.md
21
+ - packages/cli/src/capabilities/*/instructions.ts
22
22
  - the agentera CLI
23
23
  - packages/cli/src/upgrade (doctor/upgrade)
24
24
  - README.md
@@ -26,17 +26,20 @@ authority_order:
26
26
  - DESIGN.md
27
27
  - .agentera/
28
28
  normalization_rules:
29
- - rule: Internal workflows are capabilities.
30
- use: capability, twelve capabilities, capability prose, capability schemas
31
- avoid: Calling hej/realisera/etc. standalone skills, except in v1 history.
32
- - rule: The runtime surface is a skill.
33
- use: Agentera skill, single installed Agentera app
34
- avoid: twelve-skill suite for v2 behavior.
29
+ - rule: Agentera is one agent, not a team; workflows are capabilities.
30
+ use: capability, twelve capabilities, one agent with many capabilities, capability prose, capability schemas
31
+ avoid: Calling status/build/etc. standalone skills or agents; "engineering team" as a product word; except in v1 history.
32
+ - rule: The runtime install is internal transport, not a product surface.
33
+ use: single Agentera agent, capabilities (the product word); "skill" and "plugin" survive only as internal transport (the skills/ directory and plugin.json manifests host editors require)
34
+ avoid: '"Agentera skill" or "plugin" as product words; "twelve-skill suite" or "plugin suite" for the capability set.'
35
+ - rule: Agentera is the agent; the host is the harness (Decision 74).
36
+ use: host runtime, harness, host coding agent (OpenCode, Codex, Cursor, Copilot); the CLI owns routing, memory, capability prose, and the worker-spec contract
37
+ avoid: Calling host coding agents peers or extension hosts of Agentera; implying Agentera is a module loaded into the host.
35
38
  - rule: /agentera is the main invocation.
36
39
  use: /agentera, $agentera for Codex-specific docs
37
40
  avoid: /hej except as a legacy bridge.
38
41
  - rule: The CLI source and rendered dashboard are different.
39
- use: agentera hej source data, Hej dashboard rendered briefing
42
+ use: agentera prime source data, status dashboard rendered briefing
40
43
  avoid: Treating raw CLI labels as the user-facing dashboard.
41
44
  - rule: Routine state uses flat commands.
42
45
  use: agentera plan, agentera docs, agentera health
@@ -62,9 +65,9 @@ normalization_rules:
62
65
  - rule: Worker safety commits are Git-only.
63
66
  use: pre-spawn Git commit
64
67
  avoid: Non-Git checkpoint or pre-dispatch commit gate in new docs.
65
- - rule: Capability instruction files have current metadata and a runtime boundary.
66
- use: instructions.md plus emitted first_invocation_read; runtime enforcement remains false
67
- avoid: Claiming agents are policed for actual reads, or adding unsupported agentera planera commands.
68
+ - rule: Capability instruction modules have current metadata and a runtime boundary.
69
+ use: instructions.ts plus emitted prime_context first_invocation_read; runtime enforcement is true via the CLI prime command
70
+ avoid: Claiming agents are policed for actual reads, or adding unsupported agentera plan commands.
68
71
  plain_language:
69
72
  lead_with_plain_phrase:
70
73
  - use: final state sync, the plan-level freshness checkpoint
@@ -150,10 +153,12 @@ decision_44:
150
153
  boundary: Preserve capability IDs, artifact IDs, group IDs, route IDs, and test fixture IDs unless a migration is planned.
151
154
  - surface: CLI labels and exit behavior
152
155
  boundary: Preserve current command names, parseable labels, exit codes, and source-contract labels unless an explicit CLI migration is recorded.
153
- - surface: Canonical capability names
154
- boundary: Preserve hej, visionera, resonera, inspirera, planera, realisera, optimera, inspektera, dokumentera, profilera, visualisera, and orkestrera.
155
- - surface: Decision 43 aliases
156
- boundary: Preserve /agentera status, vision, discuss, research, plan, build, optimize, audit, document, profile, design, and orchestrate.
156
+ - surface: Canonical capability names (v3 surface)
157
+ boundary: >-
158
+ Preserve the Decision 43 English alias set as the binding canonical names for v3 and onward under the single-agent identity (Decision 74): status, vision, discuss, research, plan, build, optimize, audit, document, profile, design, orchestrate. Future capability additions follow the same transfer-friendly English-verb pattern (Decision 70). Per Decisions 70 and 74, the D43 alias set is the binding name set under one agent, one CLI, many capabilities; future renames require a new decision.
159
+ - surface: Legacy Swedish capability names (v2 stable only)
160
+ boundary: >-
161
+ Preserve hej, visionera, resonera, inspirera, planera, realisera, optimera, inspektera, dokumentera, profilera, visualisera, and orkestrera for the v2 stable distribution (`npx -y agentera@latest`, ships from `main`) and as historical references in archived plans, decisions, and changelogs. Out of scope for v3 surface per Decisions 70 and 74; the single-agent identity uses English capability names exclusively. Coexistence probe surfaces per-distribution naming divergence.
157
162
  - surface: Historical artifacts
158
163
  boundary: Do not rewrite old progress, changelog, archived plans, or decisions solely for vocabulary cleanup.
159
164
  - surface: Release version