agentera 3.0.0-dev.6 → 3.0.0-dev.7

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 (439) hide show
  1. package/bundle/extract-corpus-parity.json +23 -0
  2. package/bundle/references/adapters/cursor.md +10 -9
  3. package/bundle/references/adapters/opencode.md +26 -26
  4. package/bundle/references/adapters/runtime-adapter-characterization.md +1 -1
  5. package/bundle/references/adapters/runtime-adapter-registry.yaml +16 -10
  6. package/bundle/references/adapters/runtime-feature-parity.md +2 -2
  7. package/bundle/references/analysis/benchmark.md +1 -1
  8. package/bundle/references/analysis/startup-measurement-contract.yaml +7 -7
  9. package/bundle/references/artifacts/artifact-registry-interface-model.yaml +4 -3
  10. package/bundle/references/cli/agent-ready-state-contract.yaml +6 -6
  11. package/bundle/references/cli/app-lifecycle-vocabulary.yaml +4 -4
  12. package/bundle/references/cli/capability-tool-classification.yaml +12 -12
  13. package/bundle/references/cli/coexistence-probe.yaml +4 -0
  14. package/bundle/references/cli/parity-expected-actual-template.md +30 -0
  15. package/bundle/references/cli/routing-execution-vocabulary.yaml +6 -6
  16. package/bundle/references/cli/routing-model.md +96 -0
  17. package/bundle/references/cli/trigger-schema-enrichment.md +136 -0
  18. package/bundle/references/cli/update-channels.yaml +16 -1
  19. package/bundle/references/cli/upgrade-repair-wording.md +17 -3
  20. package/bundle/references/cli/vocabulary-index.yaml +17 -12
  21. package/bundle/references/cli/vocabulary.md +314 -309
  22. package/bundle/registry.json +13 -13
  23. package/bundle/skills/agentera/.claude-plugin/plugin.json +13 -13
  24. package/bundle/skills/agentera/SKILL.md +99 -415
  25. package/bundle/skills/agentera/agents/audit.toml +6 -0
  26. package/bundle/skills/agentera/agents/build.toml +6 -0
  27. package/bundle/skills/agentera/agents/design.toml +6 -0
  28. package/bundle/skills/agentera/agents/{planera.toml → discuss.toml} +3 -3
  29. package/bundle/skills/agentera/agents/{resonera.toml → document.toml} +3 -3
  30. package/bundle/skills/agentera/agents/{optimera.toml → optimize.toml} +2 -2
  31. package/bundle/skills/agentera/agents/orchestrate.toml +6 -0
  32. package/bundle/skills/agentera/agents/plan.toml +6 -0
  33. package/bundle/skills/agentera/agents/profile.toml +6 -0
  34. package/bundle/skills/agentera/agents/research.toml +6 -0
  35. package/bundle/skills/agentera/agents/status.toml +6 -0
  36. package/bundle/skills/agentera/agents/vision.toml +6 -0
  37. package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/artifacts.yaml +10 -10
  38. package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/triggers.yaml +15 -6
  39. package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/validation.yaml +9 -9
  40. package/bundle/skills/agentera/capabilities/{realisera → build}/schemas/artifacts.yaml +11 -11
  41. package/bundle/skills/agentera/capabilities/{realisera → build}/schemas/triggers.yaml +13 -3
  42. package/bundle/skills/agentera/capabilities/{realisera → build}/schemas/validation.yaml +7 -7
  43. package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/artifacts.yaml +6 -6
  44. package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/triggers.yaml +15 -3
  45. package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/validation.yaml +5 -5
  46. package/bundle/skills/agentera/capabilities/{resonera → discuss}/schemas/artifacts.yaml +6 -6
  47. package/bundle/skills/agentera/capabilities/{resonera → discuss}/schemas/triggers.yaml +11 -3
  48. package/bundle/skills/agentera/capabilities/{resonera → discuss}/schemas/validation.yaml +4 -4
  49. package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/artifacts.yaml +10 -10
  50. package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/triggers.yaml +14 -3
  51. package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/validation.yaml +8 -8
  52. package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/artifacts.yaml +8 -8
  53. package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/triggers.yaml +11 -3
  54. package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/validation.yaml +7 -7
  55. package/bundle/skills/agentera/capabilities/{orkestrera → orchestrate}/schemas/artifacts.yaml +10 -10
  56. package/bundle/skills/agentera/capabilities/{orkestrera → orchestrate}/schemas/triggers.yaml +16 -3
  57. package/bundle/skills/agentera/capabilities/{orkestrera → orchestrate}/schemas/validation.yaml +27 -27
  58. package/bundle/skills/agentera/capabilities/{planera → plan}/schemas/artifacts.yaml +8 -8
  59. package/bundle/skills/agentera/capabilities/{planera → plan}/schemas/exit.yaml +2 -2
  60. package/bundle/skills/agentera/capabilities/{planera → plan}/schemas/triggers.yaml +15 -3
  61. package/bundle/skills/agentera/capabilities/{planera → plan}/schemas/validation.yaml +3 -3
  62. package/bundle/skills/agentera/capabilities/{profilera → profile}/schemas/artifacts.yaml +2 -2
  63. package/bundle/skills/agentera/capabilities/{profilera → profile}/schemas/exit.yaml +2 -1
  64. package/bundle/skills/agentera/capabilities/{profilera → profile}/schemas/triggers.yaml +7 -3
  65. package/bundle/skills/agentera/capabilities/{profilera → profile}/schemas/validation.yaml +2 -2
  66. package/bundle/skills/agentera/capabilities/{inspirera → research}/schemas/artifacts.yaml +5 -5
  67. package/bundle/skills/agentera/capabilities/{inspirera → research}/schemas/triggers.yaml +9 -3
  68. package/bundle/skills/agentera/capabilities/{inspirera → research}/schemas/validation.yaml +2 -2
  69. package/bundle/skills/agentera/capabilities/{hej → status}/schemas/artifacts.yaml +14 -11
  70. package/bundle/skills/agentera/capabilities/{hej → status}/schemas/triggers.yaml +10 -4
  71. package/bundle/skills/agentera/capabilities/{hej → status}/schemas/validation.yaml +5 -5
  72. package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/artifacts.yaml +8 -8
  73. package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/triggers.yaml +17 -3
  74. package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/validation.yaml +7 -7
  75. package/bundle/skills/agentera/capability_schema_contract.yaml +178 -34
  76. package/bundle/skills/agentera/protocol.yaml +29 -29
  77. package/bundle/skills/agentera/references/contract.md +328 -319
  78. package/bundle/skills/agentera/schemas/artifacts/changelog.yaml +4 -4
  79. package/bundle/skills/agentera/schemas/artifacts/decisions.yaml +9 -9
  80. package/bundle/skills/agentera/schemas/artifacts/design.yaml +4 -4
  81. package/bundle/skills/agentera/schemas/artifacts/docs.yaml +8 -7
  82. package/bundle/skills/agentera/schemas/artifacts/experiments.yaml +5 -5
  83. package/bundle/skills/agentera/schemas/artifacts/health.yaml +5 -5
  84. package/bundle/skills/agentera/schemas/artifacts/objective.yaml +4 -4
  85. package/bundle/skills/agentera/schemas/artifacts/plan.yaml +5 -5
  86. package/bundle/skills/agentera/schemas/artifacts/progress.yaml +5 -5
  87. package/bundle/skills/agentera/schemas/artifacts/todo.yaml +40 -35
  88. package/bundle/skills/agentera/schemas/artifacts/vision.yaml +3 -3
  89. package/dist/analytics/extractCorpus/cli.js +49 -1
  90. package/dist/analytics/extractCorpus/cli.js.map +1 -1
  91. package/dist/analytics/extractCorpus/copilotSessions.js +47 -5
  92. package/dist/analytics/extractCorpus/copilotSessions.js.map +1 -1
  93. package/dist/analytics/extractCorpus/core.js +19 -12
  94. package/dist/analytics/extractCorpus/core.js.map +1 -1
  95. package/dist/analytics/extractCorpus/corpus.js +26 -13
  96. package/dist/analytics/extractCorpus/corpus.js.map +1 -1
  97. package/dist/analytics/extractCorpus/coverageAudit.js +261 -0
  98. package/dist/analytics/extractCorpus/coverageAudit.js.map +1 -0
  99. package/dist/analytics/extractCorpus/cursorSessions.js +6 -3
  100. package/dist/analytics/extractCorpus/cursorSessions.js.map +1 -1
  101. package/dist/analytics/extractCorpus/extractCorpusParity.js +105 -0
  102. package/dist/analytics/extractCorpus/extractCorpusParity.js.map +1 -0
  103. package/dist/analytics/extractCorpus/filesystemSources.js.map +1 -1
  104. package/dist/analytics/extractCorpus/index.js +3 -0
  105. package/dist/analytics/extractCorpus/index.js.map +1 -1
  106. package/dist/analytics/extractCorpus/jsonlSessions.js.map +1 -1
  107. package/dist/analytics/extractCorpus/sqliteCaps.js +44 -0
  108. package/dist/analytics/extractCorpus/sqliteCaps.js.map +1 -0
  109. package/dist/analytics/extractCorpus/sqliteSessions.js +98 -5
  110. package/dist/analytics/extractCorpus/sqliteSessions.js.map +1 -1
  111. package/dist/analytics/usageStats.js +19 -19
  112. package/dist/analytics/usageStats.js.map +1 -1
  113. package/dist/capabilities/audit/instructions.js +6 -0
  114. package/dist/capabilities/audit/instructions.js.map +1 -0
  115. package/dist/capabilities/build/instructions.js +6 -0
  116. package/dist/capabilities/build/instructions.js.map +1 -0
  117. package/dist/capabilities/design/instructions.js +5 -0
  118. package/dist/capabilities/design/instructions.js.map +1 -0
  119. package/dist/capabilities/discuss/instructions.js +6 -0
  120. package/dist/capabilities/discuss/instructions.js.map +1 -0
  121. package/dist/capabilities/document/instructions.js +6 -0
  122. package/dist/capabilities/document/instructions.js.map +1 -0
  123. package/dist/capabilities/index.js +24 -24
  124. package/dist/capabilities/index.js.map +1 -1
  125. package/dist/capabilities/inspirera/instructions.js +1 -1
  126. package/dist/capabilities/inspirera/instructions.js.map +1 -1
  127. package/dist/capabilities/optimize/instructions.js +6 -0
  128. package/dist/capabilities/optimize/instructions.js.map +1 -0
  129. package/dist/capabilities/orchestrate/instructions.js +6 -0
  130. package/dist/capabilities/orchestrate/instructions.js.map +1 -0
  131. package/dist/capabilities/plan/instructions.js +6 -0
  132. package/dist/capabilities/plan/instructions.js.map +1 -0
  133. package/dist/capabilities/planera/instructions.js +1 -1
  134. package/dist/capabilities/planera/instructions.js.map +1 -1
  135. package/dist/capabilities/profile/instructions.js +6 -0
  136. package/dist/capabilities/profile/instructions.js.map +1 -0
  137. package/dist/capabilities/profilera/instructions.js +1 -1
  138. package/dist/capabilities/profilera/instructions.js.map +1 -1
  139. package/dist/capabilities/realisera/instructions.js +1 -1
  140. package/dist/capabilities/realisera/instructions.js.map +1 -1
  141. package/dist/capabilities/research/instructions.js +6 -0
  142. package/dist/capabilities/research/instructions.js.map +1 -0
  143. package/dist/capabilities/resonera/instructions.js +1 -1
  144. package/dist/capabilities/resonera/instructions.js.map +1 -1
  145. package/dist/capabilities/status/instructions.js +6 -0
  146. package/dist/capabilities/status/instructions.js.map +1 -0
  147. package/dist/capabilities/vision/instructions.js +6 -0
  148. package/dist/capabilities/vision/instructions.js.map +1 -0
  149. package/dist/capabilities/visionera/instructions.js +1 -1
  150. package/dist/capabilities/visionera/instructions.js.map +1 -1
  151. package/dist/capabilities/visualisera/instructions.js +3 -4
  152. package/dist/capabilities/visualisera/instructions.js.map +1 -1
  153. package/dist/cli/appContext.js +16 -17
  154. package/dist/cli/appContext.js.map +1 -1
  155. package/dist/cli/capabilityContext/benchmark.js +23 -16
  156. package/dist/cli/capabilityContext/benchmark.js.map +1 -1
  157. package/dist/cli/capabilityContext/bespoke.js +20 -9
  158. package/dist/cli/capabilityContext/bespoke.js.map +1 -1
  159. package/dist/cli/capabilityContext/build.js +177 -0
  160. package/dist/cli/capabilityContext/build.js.map +1 -0
  161. package/dist/cli/capabilityContext/closeout.js +11 -11
  162. package/dist/cli/capabilityContext/closeout.js.map +1 -1
  163. package/dist/cli/capabilityContext/contract.js +24 -22
  164. package/dist/cli/capabilityContext/contract.js.map +1 -1
  165. package/dist/cli/capabilityContext/evidence.js +35 -25
  166. package/dist/cli/capabilityContext/evidence.js.map +1 -1
  167. package/dist/cli/capabilityContext/index.js +1 -1
  168. package/dist/cli/capabilityContext/index.js.map +1 -1
  169. package/dist/cli/capabilityContext/orchestration.js +8 -8
  170. package/dist/cli/capabilityContext/orchestration.js.map +1 -1
  171. package/dist/cli/capabilityContext/planState.js +4 -4
  172. package/dist/cli/capabilityContext/planState.js.map +1 -1
  173. package/dist/cli/capabilityContext/progress.js +9 -2
  174. package/dist/cli/capabilityContext/progress.js.map +1 -1
  175. package/dist/cli/capabilityContext/realisera.js +21 -21
  176. package/dist/cli/capabilityContext/realisera.js.map +1 -1
  177. package/dist/cli/capabilityContext/shared.js +1 -1
  178. package/dist/cli/capabilityContext/shared.js.map +1 -1
  179. package/dist/cli/capabilityContext/slim.js +4 -2
  180. package/dist/cli/capabilityContext/slim.js.map +1 -1
  181. package/dist/cli/capabilityContext/startup.js +23 -18
  182. package/dist/cli/capabilityContext/startup.js.map +1 -1
  183. package/dist/cli/capabilityContext/types.js +20 -23
  184. package/dist/cli/capabilityContext/types.js.map +1 -1
  185. package/dist/cli/capabilityContext.js +1 -1
  186. package/dist/cli/capabilityContext.js.map +1 -1
  187. package/dist/cli/commands/appHome.js +23 -0
  188. package/dist/cli/commands/appHome.js.map +1 -0
  189. package/dist/cli/commands/capability.js +2 -2
  190. package/dist/cli/commands/capability.js.map +1 -1
  191. package/dist/cli/commands/compact.js.map +1 -1
  192. package/dist/cli/commands/doctor.js +9 -107
  193. package/dist/cli/commands/doctor.js.map +1 -1
  194. package/dist/cli/commands/prime/bundleStatus.js +140 -0
  195. package/dist/cli/commands/prime/bundleStatus.js.map +1 -0
  196. package/dist/cli/commands/prime/collectOrientationState.js +156 -0
  197. package/dist/cli/commands/prime/collectOrientationState.js.map +1 -0
  198. package/dist/cli/commands/prime/orientationOutput.js +210 -0
  199. package/dist/cli/commands/prime/orientationOutput.js.map +1 -0
  200. package/dist/cli/commands/prime/routeOutput.js +50 -0
  201. package/dist/cli/commands/prime/routeOutput.js.map +1 -0
  202. package/dist/cli/commands/prime/types.js +2 -0
  203. package/dist/cli/commands/prime/types.js.map +1 -0
  204. package/dist/cli/commands/prime/v1Migration.js +39 -0
  205. package/dist/cli/commands/prime/v1Migration.js.map +1 -0
  206. package/dist/cli/commands/prime.js +11 -554
  207. package/dist/cli/commands/prime.js.map +1 -1
  208. package/dist/cli/commands/query.js +4 -1
  209. package/dist/cli/commands/query.js.map +1 -1
  210. package/dist/cli/commands/report.js +17 -9
  211. package/dist/cli/commands/report.js.map +1 -1
  212. package/dist/cli/commands/schema.js +23 -18
  213. package/dist/cli/commands/schema.js.map +1 -1
  214. package/dist/cli/commands/state/decisions.js +11 -5
  215. package/dist/cli/commands/state/decisions.js.map +1 -1
  216. package/dist/cli/commands/state/docs.js +8 -4
  217. package/dist/cli/commands/state/docs.js.map +1 -1
  218. package/dist/cli/commands/state/experiments.js +1 -0
  219. package/dist/cli/commands/state/experiments.js.map +1 -1
  220. package/dist/cli/commands/state/health.js +3 -1
  221. package/dist/cli/commands/state/health.js.map +1 -1
  222. package/dist/cli/commands/state/objective.js +1 -0
  223. package/dist/cli/commands/state/objective.js.map +1 -1
  224. package/dist/cli/commands/state/plan.js +2 -1
  225. package/dist/cli/commands/state/plan.js.map +1 -1
  226. package/dist/cli/commands/state/progress.js +1 -1
  227. package/dist/cli/commands/state/shared.js.map +1 -1
  228. package/dist/cli/commands/state/todo.js +1 -1
  229. package/dist/cli/commands/state/todo.js.map +1 -1
  230. package/dist/cli/commands/validate.js +21 -85
  231. package/dist/cli/commands/validate.js.map +1 -1
  232. package/dist/cli/commands/verify.js +1 -1
  233. package/dist/cli/commands/verify.js.map +1 -1
  234. package/dist/cli/contracts/bundleStatus.js +2 -0
  235. package/dist/cli/contracts/bundleStatus.js.map +1 -0
  236. package/dist/cli/contracts/orientationState.js +2 -0
  237. package/dist/cli/contracts/orientationState.js.map +1 -0
  238. package/dist/cli/dispatch/argvParser.js +33 -0
  239. package/dist/cli/dispatch/argvParser.js.map +1 -0
  240. package/dist/cli/dispatch/check.js +19 -19
  241. package/dist/cli/dispatch/check.js.map +1 -1
  242. package/dist/cli/dispatch/commands.js +27 -0
  243. package/dist/cli/dispatch/commands.js.map +1 -0
  244. package/dist/cli/dispatch/index.js +6 -1
  245. package/dist/cli/dispatch/index.js.map +1 -1
  246. package/dist/cli/dispatch/lifecycle.js +160 -55
  247. package/dist/cli/dispatch/lifecycle.js.map +1 -1
  248. package/dist/cli/dispatch/prime.js +31 -27
  249. package/dist/cli/dispatch/prime.js.map +1 -1
  250. package/dist/cli/dispatch/state.js +11 -16
  251. package/dist/cli/dispatch/state.js.map +1 -1
  252. package/dist/cli/help.js +41 -6
  253. package/dist/cli/help.js.map +1 -1
  254. package/dist/cli/orientation/attention.js +61 -0
  255. package/dist/cli/orientation/attention.js.map +1 -0
  256. package/dist/cli/orientation/corpusCoverage.js +71 -0
  257. package/dist/cli/orientation/corpusCoverage.js.map +1 -0
  258. package/dist/cli/orientation.js +128 -77
  259. package/dist/cli/orientation.js.map +1 -1
  260. package/dist/cli/prime-blob.js +1 -1
  261. package/dist/cli/startupCompletenessContract.js +56 -0
  262. package/dist/cli/startupCompletenessContract.js.map +1 -0
  263. package/dist/cli/stateQuery.js +9 -2
  264. package/dist/cli/stateQuery.js.map +1 -1
  265. package/dist/cli/todoSeverity.js +19 -0
  266. package/dist/cli/todoSeverity.js.map +1 -0
  267. package/dist/core/envPaths.js +21 -0
  268. package/dist/core/envPaths.js.map +1 -0
  269. package/dist/core/jsonValue.js +6 -0
  270. package/dist/core/jsonValue.js.map +1 -0
  271. package/dist/core/pyjson.js +67 -2
  272. package/dist/core/pyjson.js.map +1 -1
  273. package/dist/eval/evalSkills.js +17 -12
  274. package/dist/eval/evalSkills.js.map +1 -1
  275. package/dist/eval/semanticEval.js +43 -19
  276. package/dist/eval/semanticEval.js.map +1 -1
  277. package/dist/eval/semanticFixtures.js +16 -4
  278. package/dist/eval/semanticFixtures.js.map +1 -1
  279. package/dist/hooks/compaction/apply.js +31 -6
  280. package/dist/hooks/compaction/apply.js.map +1 -1
  281. package/dist/hooks/compaction/dryRun.js +5 -3
  282. package/dist/hooks/compaction/dryRun.js.map +1 -1
  283. package/dist/hooks/compaction/index.js +2 -2
  284. package/dist/hooks/compaction/index.js.map +1 -1
  285. package/dist/hooks/compaction/parse.js +132 -3
  286. package/dist/hooks/compaction/parse.js.map +1 -1
  287. package/dist/hooks/compaction/retention.js +3 -1
  288. package/dist/hooks/compaction/retention.js.map +1 -1
  289. package/dist/hooks/compaction/status.js +7 -9
  290. package/dist/hooks/compaction/status.js.map +1 -1
  291. package/dist/hooks/compaction/todoResolved.js +137 -0
  292. package/dist/hooks/compaction/todoResolved.js.map +1 -0
  293. package/dist/hooks/cursorSessionStart.js +10 -2
  294. package/dist/hooks/cursorSessionStart.js.map +1 -1
  295. package/dist/hooks/sessionStart.js +14 -7
  296. package/dist/hooks/sessionStart.js.map +1 -1
  297. package/dist/hooks/sessionStop.js +3 -0
  298. package/dist/hooks/sessionStop.js.map +1 -1
  299. package/dist/hooks/todoLayout.js +177 -0
  300. package/dist/hooks/todoLayout.js.map +1 -0
  301. package/dist/hooks/validateArtifact/index.js +3 -1
  302. package/dist/hooks/validateArtifact/index.js.map +1 -1
  303. package/dist/hooks/validateArtifact/markdown.js +57 -6
  304. package/dist/hooks/validateArtifact/markdown.js.map +1 -1
  305. package/dist/hooks/validateArtifact/runtime.js +6 -3
  306. package/dist/hooks/validateArtifact/runtime.js.map +1 -1
  307. package/dist/hooks/validateArtifact/schema.js +15 -11
  308. package/dist/hooks/validateArtifact/schema.js.map +1 -1
  309. package/dist/hooks/validateArtifact/traversal.js +1 -0
  310. package/dist/hooks/validateArtifact/traversal.js.map +1 -1
  311. package/dist/hooks/validateArtifact/violations.js +2 -2
  312. package/dist/hooks/validateArtifact/violations.js.map +1 -1
  313. package/dist/migrate/v2HandoffManifest.js +119 -5
  314. package/dist/migrate/v2HandoffManifest.js.map +1 -1
  315. package/dist/registries/artifactRegistry.js +23 -9
  316. package/dist/registries/artifactRegistry.js.map +1 -1
  317. package/dist/registries/capabilityContract.js +144 -1
  318. package/dist/registries/capabilityContract.js.map +1 -1
  319. package/dist/registries/evaluatorHandoffContract.js +2 -2
  320. package/dist/registries/evaluatorHandoffContract.js.map +1 -1
  321. package/dist/registries/packageRegistry.js +4 -3
  322. package/dist/registries/packageRegistry.js.map +1 -1
  323. package/dist/registries/runtimeAdapterRegistry.js +5 -4
  324. package/dist/registries/runtimeAdapterRegistry.js.map +1 -1
  325. package/dist/registries/triggerLoader.js +211 -0
  326. package/dist/registries/triggerLoader.js.map +1 -0
  327. package/dist/release/releaseMetadata.js +1 -1
  328. package/dist/release/releaseMetadata.js.map +1 -1
  329. package/dist/routing/index.js +2 -0
  330. package/dist/routing/index.js.map +1 -0
  331. package/dist/routing/routeEngine.js +189 -0
  332. package/dist/routing/routeEngine.js.map +1 -0
  333. package/dist/setup/codex/configToml.js +10 -15
  334. package/dist/setup/codex/configToml.js.map +1 -1
  335. package/dist/setup/codex/constants.js +12 -12
  336. package/dist/setup/codex/constants.js.map +1 -1
  337. package/dist/setup/cursor.js +6 -4
  338. package/dist/setup/cursor.js.map +1 -1
  339. package/dist/setup/cursorSurfaces.js +67 -0
  340. package/dist/setup/cursorSurfaces.js.map +1 -0
  341. package/dist/setup/doctor/core.js +6 -6
  342. package/dist/setup/doctor/core.js.map +1 -1
  343. package/dist/setup/doctor/diagnostics.js +16 -23
  344. package/dist/setup/doctor/diagnostics.js.map +1 -1
  345. package/dist/setup/doctor/opencode.js +32 -0
  346. package/dist/setup/doctor/opencode.js.map +1 -1
  347. package/dist/setup/doctor/report.js +27 -76
  348. package/dist/setup/doctor/report.js.map +1 -1
  349. package/dist/setup/smokeChecks.js +10 -10
  350. package/dist/setup/smokeChecks.js.map +1 -1
  351. package/dist/state/installRoot.js +49 -18
  352. package/dist/state/installRoot.js.map +1 -1
  353. package/dist/state/startupAnalysis/benchmark.js +22 -18
  354. package/dist/state/startupAnalysis/benchmark.js.map +1 -1
  355. package/dist/state/startupAnalysis/contract.js +5 -1
  356. package/dist/state/startupAnalysis/contract.js.map +1 -1
  357. package/dist/state/startupAnalysis/helpers.js +26 -71
  358. package/dist/state/startupAnalysis/helpers.js.map +1 -1
  359. package/dist/state/startupAnalysis/index.js.map +1 -1
  360. package/dist/state/startupAnalysis/metrics.js +25 -18
  361. package/dist/state/startupAnalysis/metrics.js.map +1 -1
  362. package/dist/state/startupAnalysis/records.js +13 -9
  363. package/dist/state/startupAnalysis/records.js.map +1 -1
  364. package/dist/state/startupAnalysis/report.js +26 -37
  365. package/dist/state/startupAnalysis/report.js.map +1 -1
  366. package/dist/state/startupAnalysis/threshold.js +6 -6
  367. package/dist/state/startupAnalysis/threshold.js.map +1 -1
  368. package/dist/upgrade/appContentRefresh.js +342 -0
  369. package/dist/upgrade/appContentRefresh.js.map +1 -0
  370. package/dist/upgrade/appModel.js +8 -6
  371. package/dist/upgrade/appModel.js.map +1 -1
  372. package/dist/upgrade/bundleEvidence.js +34 -0
  373. package/dist/upgrade/bundleEvidence.js.map +1 -0
  374. package/dist/upgrade/channels.js +11 -4
  375. package/dist/upgrade/channels.js.map +1 -1
  376. package/dist/upgrade/cliProbe.js +22 -0
  377. package/dist/upgrade/cliProbe.js.map +1 -0
  378. package/dist/upgrade/coexistenceProbe.js +29 -5
  379. package/dist/upgrade/coexistenceProbe.js.map +1 -1
  380. package/dist/upgrade/compatibility.js +13 -4
  381. package/dist/upgrade/compatibility.js.map +1 -1
  382. package/dist/upgrade/doctor.js +130 -187
  383. package/dist/upgrade/doctor.js.map +1 -1
  384. package/dist/upgrade/doctorClassifier.js +177 -0
  385. package/dist/upgrade/doctorClassifier.js.map +1 -0
  386. package/dist/upgrade/installedHooksRetirement.js +190 -0
  387. package/dist/upgrade/installedHooksRetirement.js.map +1 -0
  388. package/dist/upgrade/legacyAgentCleanup.js +116 -0
  389. package/dist/upgrade/legacyAgentCleanup.js.map +1 -0
  390. package/dist/upgrade/migrateArtifactsV2ToV3.js +57 -31
  391. package/dist/upgrade/migrateArtifactsV2ToV3.js.map +1 -1
  392. package/dist/upgrade/nextMajorDoctor.js +29 -9
  393. package/dist/upgrade/nextMajorDoctor.js.map +1 -1
  394. package/dist/upgrade/npxPlatformStatus.js +23 -0
  395. package/dist/upgrade/npxPlatformStatus.js.map +1 -0
  396. package/dist/upgrade/projectIntegration.js +69 -75
  397. package/dist/upgrade/projectIntegration.js.map +1 -1
  398. package/dist/upgrade/projectIntegrationDecision.js +93 -0
  399. package/dist/upgrade/projectIntegrationDecision.js.map +1 -0
  400. package/dist/upgrade/runtimeMigration.js +156 -66
  401. package/dist/upgrade/runtimeMigration.js.map +1 -1
  402. package/dist/upgrade/versionResolution.js +2 -2
  403. package/dist/upgrade/versionResolution.js.map +1 -1
  404. package/dist/validate/appHomeContract.js +1 -1
  405. package/dist/validate/appHomeContract.js.map +1 -1
  406. package/dist/validate/capability.js +124 -11
  407. package/dist/validate/capability.js.map +1 -1
  408. package/dist/validate/crossCapability.js +1 -1
  409. package/dist/validate/crossCapability.js.map +1 -1
  410. package/dist/validate/lifecycleAdapters/legacyPythonParity.js +93 -0
  411. package/dist/validate/lifecycleAdapters/legacyPythonParity.js.map +1 -0
  412. package/dist/validate/lifecycleAdapters/nodeFormChecks.js +488 -0
  413. package/dist/validate/lifecycleAdapters/nodeFormChecks.js.map +1 -0
  414. package/dist/validate/lifecycleAdapters/shared.js +198 -0
  415. package/dist/validate/lifecycleAdapters/shared.js.map +1 -0
  416. package/dist/validate/lifecycleAdapters.js +13 -723
  417. package/dist/validate/lifecycleAdapters.js.map +1 -1
  418. package/dist/validate/vocabularyAuthority.js +10 -5
  419. package/dist/validate/vocabularyAuthority.js.map +1 -1
  420. package/package.json +26 -23
  421. package/bundle/skills/agentera/agents/dokumentera.toml +0 -6
  422. package/bundle/skills/agentera/agents/hej.toml +0 -6
  423. package/bundle/skills/agentera/agents/inspektera.toml +0 -6
  424. package/bundle/skills/agentera/agents/inspirera.toml +0 -6
  425. package/bundle/skills/agentera/agents/orkestrera.toml +0 -6
  426. package/bundle/skills/agentera/agents/profilera.toml +0 -6
  427. package/bundle/skills/agentera/agents/realisera.toml +0 -6
  428. package/bundle/skills/agentera/agents/visionera.toml +0 -6
  429. package/bundle/skills/agentera/agents/visualisera.toml +0 -6
  430. /package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/exit.yaml +0 -0
  431. /package/bundle/skills/agentera/capabilities/{realisera → build}/schemas/exit.yaml +0 -0
  432. /package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/exit.yaml +0 -0
  433. /package/bundle/skills/agentera/capabilities/{resonera → discuss}/schemas/exit.yaml +0 -0
  434. /package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/exit.yaml +0 -0
  435. /package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/exit.yaml +0 -0
  436. /package/bundle/skills/agentera/capabilities/{orkestrera → orchestrate}/schemas/exit.yaml +0 -0
  437. /package/bundle/skills/agentera/capabilities/{inspirera → research}/schemas/exit.yaml +0 -0
  438. /package/bundle/skills/agentera/capabilities/{hej → status}/schemas/exit.yaml +0 -0
  439. /package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/exit.yaml +0 -0
@@ -1,244 +1,104 @@
1
1
  ---
2
2
  name: agentera
3
3
  description: >
4
- Agentera agent engine for editor runtimes. One Agentera skill with twelve
5
- capabilities; per-capability prose lives in
4
+ One agent, one CLI, many capabilities. Per-capability prose lives in
6
5
  `packages/cli/src/capabilities/<name>/instructions.ts` and the runtime serves
7
6
  it through `agentera prime --context <name> --format json`. Use this skill
8
- for /agentera, Agentera capability requests, and a complete user message
9
- exactly `hej`; bare `hej` runs the agentera prime orientation dashboard path
10
- instead of a generic greeting.
7
+ for /agentera and Agentera capability requests; bare `/agentera` runs the
8
+ agentera prime orientation dashboard path instead of a generic greeting.
11
9
  version: "3.0.0"
12
10
  spec_sections: [1, 2, 3, 4, 5, 6, 11, 13, 18, 19, 20, 22, 23]
13
11
  capabilities:
14
- - hej
15
- - visionera
16
- - resonera
17
- - inspirera
18
- - planera
19
- - realisera
20
- - optimera
21
- - inspektera
22
- - dokumentera
23
- - profilera
24
- - visualisera
25
- - orkestrera
12
+ - status
13
+ - vision
14
+ - discuss
15
+ - research
16
+ - plan
17
+ - build
18
+ - optimize
19
+ - audit
20
+ - document
21
+ - profile
22
+ - design
23
+ - orchestrate
26
24
  ---
27
25
 
28
26
  # agentera
29
27
 
30
- One install, one entry point, one query interface to all project state. Twelve capabilities live inside one Agentera skill.
28
+ One agent, one CLI, many capabilities. The CLI is the routing brain it owns
29
+ project memory, capability prose, routing judgment, and the worker-spec contract.
30
+ The host agent learns one contract: the CLI.
31
31
 
32
32
  ---
33
33
 
34
- ## Shared Protocol
34
+ ## Bootstrap
35
35
 
36
- All capabilities reference shared primitives defined in `protocol.yaml`:
37
-
38
- - **Confidence scale**: 0-100, five tiers with explicit boundaries
39
- - **Severity levels**: finding vocabulary and issue vocabulary
40
- - **Visual tokens**: status, severity, confidence, and trend glyphs
41
- - **Phase model**: five phases with valid transitions
42
-
43
- Capabilities import these by name. The schema contract ensures consistent usage.
44
-
45
- ---
46
-
47
- ## Capabilities
48
-
49
- | | Capability | Primary route | Purpose |
50
- |---|---|---|---|
51
- | ⌂ | hej | `/agentera status` | Orientation and routing |
52
- | ⛥ | visionera | `/agentera vision` | Define project direction |
53
- | ❈ | resonera | `/agentera discuss` | Structured deliberation |
54
- | ⬚ | inspirera | `/agentera research` | External pattern analysis |
55
- | ≡ | planera | `/agentera plan` | Planning with acceptance criteria |
56
- | ⧉ | realisera | `/agentera build` | Autonomous development |
57
- | ⎘ | optimera | `/agentera optimize` | Metric-driven optimization |
58
- | ⛶ | inspektera | `/agentera audit` | Codebase health audit |
59
- | ▤ | dokumentera | `/agentera document` | Documentation |
60
- | ♾ | profilera | `/agentera profile` | Decision profiling |
61
- | ◰ | visualisera | `/agentera design` | Visual identity system |
62
- | ⎈ | orkestrera | `/agentera orchestrate` | Multi-cycle orchestration |
63
-
64
- ---
65
-
66
- ## Routing Logic
67
-
68
- When a request arrives, route to the matching capability using the five-layer routing model from Decision 42.
69
-
70
- ### Prerequisite: Single-call installed CLI gate
71
-
72
- This gate is mandatory, but the gate and the orientation dashboard source are the same
73
- installed CLI invocation. For bare `/agentera` or bare `hej`, the first normal
74
- state-access tool call is:
36
+ Run `agentera prime` for orientation. The JSON it returns is the complete
37
+ contract — app status, state slices, attention items, next action, and the
38
+ source contract that declares what's complete and what requires fallback.
75
39
 
76
40
  ```bash
77
41
  npx -y agentera prime
78
42
  ```
79
43
 
80
- Resolve `RESOLVED_AGENTERA_HOME` with the app-home precedence `AGENTERA_HOME`
81
- when set, otherwise the platform data home. Do not run `glob`, `grep`, `read`,
82
- `ls`, `python`, `doctor`, `--help`, `registry.json`,
83
- or `.agentera-bundle.json` preflight checks before this call. The CLI owns app
84
- validation, v1 detection, profile detection, artifact condensation, and the
85
- `source_contract` that tells the caller how to render the dashboard.
86
- Never combine the app-home assignment with the same shell command that expands
87
- the managed app script path; shell expansion can otherwise turn an unset
88
- `AGENTERA_HOME` into `npx -y agentera` before the assignment takes effect.
89
-
90
- If the command exits successfully, inspect the CLI-provided `bundle.status`
91
- installed-app status object. If its value is `fresh`, treat the installed app gate as passed
92
- for that briefing and render from the output. The object includes
93
- `expectedVersion`, `expectedVersionSource`, `appHome`, `managedAppRoot`,
94
- `userDataRoot`, repair commands, and approval text.
95
-
96
- ### User-facing repair wording
97
-
98
- Recovery and troubleshooting prompts must be plain enough for a non-technical
99
- user. Never ask the user to choose between technical install concepts, internal
100
- directory states, command-mode flags, or package-layout terms. Keep those as
101
- internal facts.
102
- User-facing copy must answer four questions in this order:
103
-
104
- 1. What happened: `Agentera found an old or broken local copy of itself.`
105
- 2. What the preview did: `Nothing was changed.`
106
- 3. What the recommended fix will do: `Install a fresh Agentera app copy in the normal Agentera directory.`
107
- 4. What it will not do: `It will not edit your project files, shell startup files, or unknown directories.`
108
-
109
- Use recommendation-first choices only when a choice is unavoidable. Put the safe
110
- default first and name it as the recommendation. Good labels: `Use the safe fix
111
- (Recommended)`, `Choose a different directory`, `Stop`. Bad labels: `Use platform
112
- home`, `Force old directory`, or labels that expose internal flags and app-file
113
- packaging terms.
114
- Only mention commands and paths after the plain explanation, as technical detail.
115
-
116
- If the command cannot execute because `AGENTERA_HOME` names the old default
117
- `$HOME/.agents/agentera` and `npx -y agentera` is missing,
118
- do not require a successful failed CLI invocation and do not first ask the user to
119
- unset `AGENTERA_HOME`. Tell the user: `Agentera found an old or broken local copy
120
- of itself. The safe fix is to install a fresh copy in the normal Agentera directory.`
121
- Then show this preview command and say it changes nothing:
44
+ For capability-specific startup context:
122
45
 
123
46
  ```bash
124
- npx -y agentera@latest doctor
47
+ npx -y agentera prime --context <capability> --format json
125
48
  ```
126
49
 
127
- This preview writes nothing. Because no explicit `--install-root` is supplied,
128
- upgrade can choose the normal platform app directory and preview repair for app
129
- files, managed runtime surfaces, and cleanup of the old directory. Ask for
130
- explicit approval before writes, using plain wording such as
131
- `Approve the safe Agentera repair at <directory>`. After approval, apply the same
132
- safe repair path:
50
+ This returns the capability's prose, declared read/write needs, artifact
51
+ inventory, included/missing state, and fallback commands. Use it before
52
+ reading the instructions module directly.
53
+
54
+ For static routing guidance (agentera vs native tools):
133
55
 
134
56
  ```bash
135
- npx -y agentera@latest prime
57
+ npx -y agentera prime --guidance
136
58
  ```
137
59
 
138
- After apply, retry the installed command from the platform app home reported by
139
- the upgrade output, not from the old default directory. If the command executes but
140
- fails before argparse, reports `invalid choice` for `prime`, or reports a status of
141
- `outdated`, `manual_review_needed`, missing-command, or repair-needed:
60
+ ---
142
61
 
143
- - Say `Agentera found an old or broken local copy of itself.`
144
- - Say whether the preview changed anything; preview commands change nothing.
145
- - State the safe recommendation in plain language before paths or commands.
146
- - Show the clone-free preview command from `bundle.dryRunCommand` when present:
62
+ ## Routing
147
63
 
148
- ```bash
149
- npx -y agentera@latest doctor
150
- ```
64
+ The CLI routes. The host agent follows.
151
65
 
152
- Ask for explicit approval before writes. A normal affirmative response is
153
- acceptable only when it clearly authorizes the same Agentera repair and directory.
154
- If approved, apply:
66
+ | Request shape | Route |
67
+ |---|---|
68
+ | Bare `/agentera` | Run `agentera prime`. Render the dashboard from the data returned. Follow `next_action` to suggest the next capability. |
69
+ | `/agentera <capability-name>` | Run `agentera prime --context <capability>`. Follow the capability's prose and contract. |
70
+ | `/agentera <capability-name> <topic>` | Same as above; pass `<topic>` as the user's instruction to the capability. |
71
+ | Natural language | Run `agentera prime`. Use `next_action.capability` to suggest the matching capability. If no high-confidence match, present a disambiguation prompt. |
155
72
 
156
- ```bash
157
- npx -y agentera@latest prime
158
- ```
73
+ Capability names are the routing identity: `status`, `vision`, `discuss`,
74
+ `research`, `plan`, `build`, `optimize`, `audit`, `document`, `profile`,
75
+ `design`, `orchestrate`. Plain-language triggers (`help me decide`, `what's
76
+ next`, `plan this`) match against each capability's `schemas/triggers.yaml`,
77
+ not hardcoded here.
159
78
 
160
- After apply, retry:
79
+ The full five-layer routing model (Decision 42) — Layer 1 bare `/agentera`,
80
+ Layer 2 capability/alias direct route, Layer 3 high-confidence natural-language
81
+ match, Layer 4 borderline disambiguation, Layer 5 no-match fallback to status —
82
+ is defined in [`references/cli/routing-model.md`](../../references/cli/routing-model.md).
83
+ Layers 1, 2, and 5 are implemented; Layers 3 and 4 are being built by the Trigger
84
+ Schema Enrichment and Layer 3-4 Routing plan.
161
85
 
162
- ```bash
163
- npx -y agentera prime
164
- ```
86
+ Handoff verbs:
165
87
 
166
- If `AGENTERA_HOME` names the old default `$HOME/.agents/agentera`, no explicit
167
- `--install-root` was supplied, and `npx -y agentera` is
168
- missing or out of date, treat this as safe to preview with the normal Agentera
169
- directory above. Do not first ask the user to unset `AGENTERA_HOME`; do not claim to
170
- prove where the environment value came from. If `AGENTERA_HOME` names any other
171
- missing path, file, or directory with unknown files and the single command cannot
172
- run, do not overwrite it silently or fall back to a local checkout. Say:
173
- `Agentera was told to use a directory it cannot safely use. Choose a different
174
- Agentera directory, or approve --force only after checking that directory is safe to
175
- replace.`
176
-
177
- If a leftover 1.x managed marker block (`# agentera: AGENTERA_HOME (managed)`) is
178
- reported in shell startup diagnostics, say plainly that Agentera will not edit
179
- those files. Cleanup is user-owned manual cleanup, not a repair write. Upgrade
180
- does not scan shell startup files.
181
-
182
- Only after the installed CLI succeeds, proceed to Step -1 and the routing layers
183
- below. Do not fall through to a local checkout as a workaround; the npx commands
184
- above are portable and require no local checkout.
185
-
186
- ### Step -1: Top-level CLI-first state access
187
-
188
- The `agentera` CLI is the authoritative interface to project state. Use
189
- top-level state commands for routine access. `agentera query` is reserved for
190
- advanced/custom artifact inspection when no normal command serves the needed
191
- state.
192
-
193
- Before any artifact-backed briefing, route decision, or capability state read,
194
- run the top-level command that owns the needed state. The app health gate
195
- above must have already confirmed the installed CLI is usable.
196
-
197
- Routine commands are: `prime`, `state plan`, `state progress`, `state health`,
198
- `state todo`, `state decisions`, `state docs`, `state objective`, and
199
- `state experiments`. On the npm 3.x CLI, top-level `hej`, `describe`, `gate`, and
200
- routine-state names are removed; a smaller transitional alias set still forwards
201
- with stderr deprecation — see [audience-namespace-cli-migration.yaml](references/cli/audience-namespace-cli-migration.yaml). Discovery and custom
202
- inspection remain available through `agentera schema --format json`,
203
- `state query --list-artifacts`, and `state query <artifact-name> --format json|yaml`.
204
- Structured discovery includes an artifact-location contract with mapped paths,
205
- normal read commands, and raw-access boundaries; use that contract before
206
- reading `.agentera/docs.yaml` or probing `.agentera/` for path discovery.
88
+ - `route`: user directly invoked a capability. Consent to invoke; no extra confirmation.
89
+ - `suggest`: recommend a downstream capability and wait for confirmation.
90
+ - `dispatch`: invoke another capability autonomously only when the current capability owns that orchestration flow.
91
+ - `chain`: dispatch multiple capabilities only inside an orchestrated flow.
207
92
 
208
- Do not silently bypass the CLI and read raw `.agentera/*.yaml` files first. If
209
- CLI state declares complete startup coverage, do not perform defensive raw
210
- artifact reads for normal startup. If CLI state is unavailable or incomplete,
211
- try the CLI-provided fallback commands first; use raw artifact reads only as a
212
- last-resort fallback after those paths fail or still declare incomplete state.
213
- When `agentera state plan --format json` returns
214
- `source_contract.complete_for_plan_artifact=true`, treat its `summary`,
215
- `entries`, and `source_contract` as complete for normal `PLAN.md` startup and
216
- evaluation context; do not read `.agentera/plan.yaml` merely to re-check task
217
- dependencies, acceptance criteria, evidence, overall acceptance, surprises,
218
- prior-plan archive references, or plan metadata. This no-raw-read rule is for
219
- normal read-only startup/evaluation. Raw mapped plan artifact access remains valid
220
- for writes, archives, validation, corruption diagnostics, or unavailable or
221
- incomplete CLI state after CLI fallbacks.
222
-
223
- When artifact paths are the only missing fact, prefer the CLI discovery contract:
224
- `agentera schema --format json` exposes `artifact_locations`, and
225
- `agentera state query --list-artifacts --format json` exposes the same compact records
226
- with a `names` compatibility list. Plain `state query --list-artifacts` remains the
227
- human names list. These discovery surfaces do not replace routine state commands
228
- for normal artifact content reads.
229
-
230
- For bare `/agentera` or a bare user message exactly `hej`, run `agentera prime`
231
- first and render the README-style hej dashboard from that single composite
232
- result. The CLI output is source data, not the user-facing dashboard; do not
233
- relay raw `agentera prime` lines as the final briefing. Do not run individual `state plan`, `state progress`, `state health`,
234
- `state todo`, or `state decisions` commands unless `agentera prime` fails or explicitly asks
235
- for fallback. The final response must
236
- transform source labels such as `mode:`, `profile:`, `health:`, `issues:`,
237
- `plan:`, `objective:`, `attention:`, `next_action:`, `app_home:`,
238
- `v1_migration:`, and `source_contract:` into the dashboard below; never paste
239
- those labels as the briefing.
240
-
241
- Bare `/agentera` returning-project output must include these visible markers:
93
+ Capability handoffs use glyph plus canonical name (e.g. `⧉ build`, `≡ plan`).
94
+
95
+ ---
96
+
97
+ ## Dashboard rendering
98
+
99
+ When rendering the prime dashboard for the user, transform the CLI's source
100
+ labels into the README-style layout. Do not paste raw `prime` JSON or raw
101
+ labels (`mode:`, `profile:`, `health:`, etc.) as the briefing.
242
102
 
243
103
  ```text
244
104
  ┌─┐┌─┐┌─┐┌┐┌┌┬┐┌─┐┬─┐┌─┐
@@ -246,177 +106,22 @@ Bare `/agentera` returning-project output must include these visible markers:
246
106
  ┴ ┴└─┘└─┘┘└┘ ┴ └─┘┴└─┴ ┴
247
107
 
248
108
  ─── status ─────────────────────────────
249
- [metric lines: health, issues, plan, objective, profile as available]
109
+ [metric lines: health, todo, plan, objective, profile as available]
250
110
  [1-2 sentence narrative read closing the status section]
251
111
  ─── attention ──────────────────────────
252
112
  ─── next ───────────────────────────────
253
113
  ```
254
114
 
255
- Use the README-style layout from hej Step 1b: metrics first, narrative read
256
- inside `status`, then attention and next. The issues summary line uses
257
- `critical · degraded · normal · annoying` in the order prime emits them. Omit `attention` only when the source has no attention items. Always include the
258
- mandatory `⌂ hej · <status>` marker below the dashboard code fence, and ask for
259
- confirmation before invoking the suggested downstream capability. For
260
- `/agentera <capability-name>` or `/agentera <alias>`, do not assume the route
261
- word is a CLI command. The CLI command surface is state-oriented, not
262
- capability-oriented:
263
- use the supported routine state command or commands that own the capability's
264
- needed artifacts, as declared by that capability's artifact schema. For example,
265
- `resonera` reads decisions through `agentera state decisions`, not through the
266
- unsupported capability-name command `agentera resonera`. Never run unsupported
267
- capability-name commands such as `agentera resonera`, `agentera planera`, or
268
- `agentera realisera` as a bootstrap step. Shared words stay split by interface:
269
- `/agentera plan` routes to planera, while `agentera state plan` reads plan state from
270
- the CLI. When capability-specific startup context is needed, request it through
271
- `agentera prime --context <capability> --format json`. Use returned
272
- `capability_context.state.included` directly, and for
273
- `capability_context.state.missing`, run the listed
274
- `capability_context.state.fallback_commands` before raw file access. Historical
275
- v2 paths `hej --capability-context` and `--context-profile` are removed in 3.0.
276
- For normal ≡ planera execution, use
277
- `capability_context.context.planning_context.startup_contract` from
278
- `agentera prime --context planera --format json`
279
- before reading the Planera prose from
280
- `packages/cli/src/capabilities/planera/instructions.ts` (served via
281
- `capability_context.prose` from the same prime call). Read the full Planera
282
- prose only when editing Planera, resolving contradiction or ambiguity,
283
- validating detailed behavior not covered by the compact contract, or
284
- investigating benchmark/read-trigger evidence. This preserves Planera prose
285
- as detailed authority and does not add `agentera planera`; `/agentera plan`
286
- remains routing while `agentera state plan` remains plan state (top-level
287
- `agentera plan` is a migration alias).
288
- For normal DECISIONS.md context, use `agentera state decisions --format json` and its
289
- source_contract. When `complete_for_normal_deliberation_context=true`, preserve
290
- returned `missing_fields`, `compacted`, `caveats`, and `satisfaction.review_needed`
291
- instead of raw-reading `.agentera/decisions.yaml` to reconstruct missing history.
292
- Raw decision artifact access is reserved for Resonera-owned writes/repairs,
293
- artifact corruption diagnostics, or CLI defect investigation.
294
- Reading a capability's instructions module is not itself a capability invocation;
295
- invocation means routing to the capability, fetching the prose via
296
- `agentera prime --context <name> --format json`, following that prose, and using
297
- the CLI state layer first for artifact-backed state.
298
-
299
- Capability handoffs use glyph plus canonical capability name, for example
300
- `⧉ realisera` or `≡ planera`. Reserve `/agentera <alias>` wording for explicit
301
- slash-route documentation and do not use standalone slash-capability names such
302
- as `/realisera` or `/planera` as handoff labels. SG priority codes such as `SG2`
303
- are internal protocol references; do not render them in user-facing handoff
304
- labels.
305
-
306
- Handoff verbs are normative:
307
-
308
- - `route`: the user directly invoked a capability by canonical name, primary
309
- alias, or slash route. This is consent to invoke that capability; do not ask
310
- for extra handoff confirmation.
311
- - `suggest`: recommend a downstream capability and wait for user confirmation.
312
- - `handoff prompt`: ask whether to run the suggested capability. Use the native
313
- question tool for multi-choice prompts and for a single state-changing
314
- Proceed/Cancel handoff. State-changing means the proposed next step may write
315
- artifacts, edit code, run optimization or orchestration cycles, apply
316
- migrations, refresh app/runtime state, or otherwise mutate project/runtime
317
- state. Use the behavior rule first, with common examples such as ⧉ realisera,
318
- ≡ planera when creating or updating plans, ▤ dokumentera when writing docs,
319
- ⎘ optimera when running or applying optimization cycles, and ⎈ orkestrera
320
- when dispatching cycles. A single non-mutating suggestion may use a free-form
321
- prompt; clear replies such as `yes`, `start`, `do it`, or `run <capability>`
322
- confirm the named suggestion. Ambiguous replies get one clarifying question.
323
- - `dispatch`: invoke another capability autonomously only when the current
324
- capability explicitly owns that orchestration flow.
325
- - `chain`: dispatch multiple capabilities autonomously only inside an explicitly
326
- orchestrated flow; otherwise suggest the next capability and wait.
327
-
328
- The first Agentera/hej response in a fresh interaction should deliver the brief
329
- and a free-form continuation prompt, not a native question menu, unless the user
330
- explicitly asks for bounded choices or the suggested next step is a
331
- state-changing Proceed/Cancel handoff. Mid-conversation, use the runtime's
332
- native question tool only when there are at least two meaningful non-terminal
333
- next actions or a consequential Proceed/Cancel decision; state-changing
334
- capability handoffs are consequential Proceed/Cancel decisions even when there
335
- is only one suggested action. Do not count `Done` or free-form/custom answer
336
- affordances as alternatives. Current host examples are Claude Code
337
- `AskUserQuestion`, Copilot `ask_user`, Codex `request_user_input`, and OpenCode
338
- `question`. Put the recommended choice first with `(Recommended)` in its label
339
- and include `Done`. Selecting a downstream capability option is confirmation to
340
- invoke that capability; selecting `Done` stops without routing. This generic
341
- question-tool gating applies to hej and capability handoff prompts. Once a
342
- capability is invoked, that capability's own interaction rules control whether
343
- the runtime-native question tool is required.
344
-
345
- ### Step 0: V1 migration handling
346
-
347
- Do not perform separate v1 Markdown/YAML discovery before a normal prime briefing.
348
- The top-level CLI owns v1 detection. For bare `/agentera` or bare `hej`, render
349
- any `v1 artifacts detected` attention item and affected-file list from
350
- `agentera prime`; do not spend extra tool calls on `.agentera/*.md`,
351
- `.agentera/*.yaml`, or `VISION.md` globs.
352
-
353
- If the CLI reports v1 state, use the `v1_migration.dry_run_command` preview it
354
- supplies. A no-write preview is mandatory before any apply command. Tell the
355
- user the preview changes nothing, then ask before applying. Only after
356
- confirmation, run `v1_migration.apply_command`.
357
- Never infer consent from the presence of v1 artifacts.
358
- The preview command shape is
359
- `npx -y agentera@latest doctor`
360
- or, from a local checkout, `node packages/cli/dist/bin/agentera.js doctor`
361
- when supplied by the CLI.
362
- Do not replace the CLI-owned preview with manual artifact inspection,
363
- hand-written migration steps, or raw YAML reads. Only the apply step requires confirmation.
364
-
365
- The upgrade command is idempotent. It installs or updates Agentera app files,
366
- migrates legacy Markdown artifacts to YAML when detected, wires runtime config
367
- to the app home, and removes fixable outdated runtime artifacts after preview
368
- and confirmation. Package refreshes that run `npx skills remove` for legacy
369
- standalone skill entries and `npx skills add` for `/agentera` remain explicit
370
- opt-in via `--update-packages`. `npx skills update` by itself updates only the
371
- visible skill; if `/agentera` then finds missing or out-of-date app files, run
372
- the plain-language repair preview above so upgrade updates the app and cleans up
373
- the old default directory when it is recoverable.
374
-
375
- ### Layer 1: Bare `/agentera` or bare `hej` — delegate to prime
376
-
377
- If the request is `/agentera` with no additional text, or the complete user
378
- message is exactly `hej`, delegate immediately to hej. Hej performs state-aware
379
- routing through the `agentera prime` composite result, which condenses project
380
- artifacts and suggests the most useful next capability. This is deterministic
381
- and never wrong. Bare `hej` must not be handled as a generic greeting.
382
-
383
- ### Layer 2: capability name or `/agentera <primary-alias>` — direct route
384
-
385
- If the request text exactly matches a capability name (case-insensitive, e.g.,
386
- "resonera", "planera", "hej"), route directly to that capability without
387
- evaluating natural-language trigger patterns. Canonical Swedish names remain the
388
- protocol identity and bypass natural-language matching.
389
-
390
- If the request begins with a canonical capability name followed by more text, or
391
- uses `/agentera <capability-name> <topic>`, route directly to that capability and
392
- pass the remaining text as the user's topic or instruction. For example,
393
- `resonera decide whether to keep this API` invokes ❈ resonera; it must not
394
- receive a generic analysis response and must not try the unsupported CLI command
395
- `agentera resonera`.
396
-
397
- If the request text exactly matches one primary alias from
398
- `capability_schema_contract.yaml` `ROUTE_ALIASES.primary_aliases`, route directly
399
- to that alias's capability without evaluating natural-language trigger patterns.
400
- Each capability has exactly one primary alias. Secondary user wording stays in
401
- capability trigger schemas below this layer. Examples: `deliberate`,
402
- `brainstorm`, and `rubber duck` remain resonera trigger wording; `brief` and
403
- `what's next` remain hej trigger wording. These are not primary aliases.
404
-
405
- ### Layer 3: Natural language with high-confidence match
406
-
407
- If the request is natural language (e.g., "help me think through this"), evaluate capability trigger schemas and route when the schema-owned semantics produce a high-confidence match.
408
-
409
- ### Layer 4: Borderline match — disambiguation
410
-
411
- If the schema-owned routing semantics produce competing borderline matches, present a disambiguation prompt instead of silently choosing. List the matching capabilities with brief descriptions and ask the user to confirm or clarify.
412
-
413
- ### Layer 5: No match — fallback to hej
414
-
415
- If no capability matches with sufficient confidence, route to hej for orientation. Hej handles greetings, status requests, and ambiguous inputs.
416
-
417
- ### Trigger Pattern Discovery
418
-
419
- The trigger-to-capability map for Layers 3-4 is derived from each capability's `schemas/triggers.yaml`, not hardcoded here. Pattern matching, priority, thresholds, fallback, and disambiguation metadata belong to those trigger schemas and the capability schema contract. This keeps the routing layer focused on request-to-capability routing; capability directories and schemas remain the detailed Interface sources.
115
+ Metrics first, narrative read inside `status`, then attention and next. The todo
116
+ summary line uses `critical · degraded · normal · annoying` in the order prime
117
+ emits them. Omit `attention` only when the source has no attention items.
118
+ Always include the `⌂ status · <status>` marker below the dashboard, and ask
119
+ for confirmation before invoking the suggested downstream capability.
120
+
121
+ The first response in a fresh interaction delivers the brief and a free-form
122
+ continuation prompt, not a native question menu — unless the user explicitly
123
+ asks for bounded choices or the suggested next step is a state-changing
124
+ Proceed/Cancel handoff.
420
125
 
421
126
  ---
422
127
 
@@ -431,57 +136,36 @@ The trigger-to-capability map for Layers 3-4 is derived from each capability's `
431
136
 
432
137
  ---
433
138
 
434
- ## Exit signals
139
+ ## Capabilities
435
140
 
436
- All capabilities use the exit vocabulary defined by `protocol.yaml` `EXIT_SIGNALS`. Capability `schemas/exit.yaml` files reference that protocol authority; the routing layer does not maintain a separate exit-signal table.
141
+ | | Capability | Primary route | Purpose |
142
+ |---|---|---|---|
143
+ | ⌂ | status | `/agentera status` | Orientation and routing |
144
+ | ⛥ | vision | `/agentera vision` | Define project direction |
145
+ | ❈ | discuss | `/agentera discuss` | Structured deliberation |
146
+ | ⬚ | research | `/agentera research` | External pattern analysis |
147
+ | ≡ | plan | `/agentera plan` | Planning with acceptance criteria |
148
+ | ⧉ | build | `/agentera build` | Autonomous development |
149
+ | ⎘ | optimize | `/agentera optimize` | Metric-driven optimization |
150
+ | ⛶ | audit | `/agentera audit` | Codebase health audit |
151
+ | ▤ | document | `/agentera document` | Documentation |
152
+ | ♾ | profile | `/agentera profile` | Decision profiling |
153
+ | ◰ | design | `/agentera design` | Visual identity system |
154
+ | ⎈ | orchestrate | `/agentera orchestrate` | Multi-cycle orchestration |
437
155
 
438
156
  ---
439
157
 
440
- ## Cross-skill integration
441
-
442
- The twelve-skill suite is collapsed into one Agentera skill. Each capability's schemas define cross-capability artifact references using stable IDs. Cross-capability routing is handled through capability trigger schemas described in the Routing Logic section. Capabilities read from and write to the same artifact store (`.agentera/` for agent-facing, project root for human-facing), so inter-capability data flows through shared artifacts, not direct invocation.
158
+ ## Artifact path resolution
443
159
 
444
- ### Artifact path resolution
445
-
446
- Before reading or writing any artifact, check if `.agentera/docs.yaml` exists. If it has an Artifact Mapping section, use the path specified for each canonical filename. If `.agentera/docs.yaml` doesn't exist or has no mapping for a given artifact, use the default layout:
160
+ Before reading or writing any artifact, check if `.agentera/docs.yaml` exists.
161
+ If it has an Artifact Mapping section, use the path specified for each canonical
162
+ filename. If `.agentera/docs.yaml` doesn't exist or has no mapping for a given
163
+ artifact, use the default layout:
447
164
 
448
165
  - Human-facing artifacts at the project root: `TODO.md`, `CHANGELOG.md`, `DESIGN.md`
449
166
  - Agent-facing artifacts in `.agentera/` as YAML: `progress.yaml`, `decisions.yaml`, `health.yaml`, `plan.yaml`, `docs.yaml`, `vision.yaml`, `objective.yaml`, `experiments.yaml`
450
167
 
451
- ---
452
-
453
- ## Directory Structure
454
-
455
- ```
456
- skills/agentera/
457
- SKILL.md # This file (routing stub + capability table)
458
- protocol.yaml # Shared primitives
459
- capability_schema_contract.yaml # Self-referential schema contract
460
- capabilities/
461
- hej/
462
- schemas/
463
- triggers.yaml
464
- artifacts.yaml
465
- validation.yaml
466
- exit.yaml
467
- resonera/
468
- schemas/
469
- triggers.yaml
470
- artifacts.yaml
471
- validation.yaml
472
- exit.yaml
473
- ... (12 capabilities total, each with schemas/ only)
474
- packages/cli/src/capabilities/<name>/instructions.ts # Per-capability prose (D65)
475
- ```
476
-
477
- Validate any capability against the contract through the canonical CLI:
478
-
479
- ```bash
480
- npx -y agentera check validate capability <name-or-path>
481
- ```
482
-
483
- Self-validate the contract:
484
-
485
- ```bash
486
- npx -y agentera check validate capability-contract --format json
487
- ```
168
+ Do not silently bypass the CLI and read raw `.agentera/*.yaml` files first. If
169
+ CLI state declares complete coverage, do not perform defensive raw artifact
170
+ reads. Use raw artifact reads only as a last-resort fallback after CLI
171
+ fallback commands fail or declare incomplete state.
@@ -0,0 +1,6 @@
1
+ # agentera_managed: true
2
+ name = "audit"
3
+ description = "Codebase health audit."
4
+ developer_instructions = """
5
+ You are the Agentera audit capability subagent. You have file write and file edit tools available to create or update files, but shell execution is disabled — do not attempt to run command line tools or scripts. Run `agentera prime --context audit --format json` to fetch the authoritative instructions as a JSON capsule (the `prose` field carries the full Markdown body). Stay within the dispatched capability task, use the Agentera CLI state seam first, and preserve Agentera artifact safety rails.
6
+ """
@@ -0,0 +1,6 @@
1
+ # agentera_managed: true
2
+ name = "build"
3
+ description = "Autonomous development execution."
4
+ developer_instructions = """
5
+ You are the Agentera build capability subagent. You have full file write, file edit, and shell execution tools available — use them to implement code changes, run tests, and commit results. Run `agentera prime --context build --format json` to fetch the authoritative instructions as a JSON capsule (the `prose` field carries the full Markdown body). Stay within the dispatched capability task, use the Agentera CLI state seam first, and preserve Agentera artifact safety rails.
6
+ """
@@ -0,0 +1,6 @@
1
+ # agentera_managed: true
2
+ name = "design"
3
+ description = "Visual identity and design systems."
4
+ developer_instructions = """
5
+ You are the Agentera design capability subagent. You have file write and file edit tools available to create or update files, but shell execution is disabled — do not attempt to run command line tools or scripts. Run `agentera prime --context design --format json` to fetch the authoritative instructions as a JSON capsule (the `prose` field carries the full Markdown body). Stay within the dispatched capability task, use the Agentera CLI state seam first, and preserve Agentera artifact safety rails.
6
+ """
@@ -1,6 +1,6 @@
1
1
  # agentera_managed: true
2
- name = "planera"
3
- description = "Planning with acceptance criteria."
2
+ name = "discuss"
3
+ description = "Structured deliberation and decision support."
4
4
  developer_instructions = """
5
- You are the Agentera planera capability subagent. You have file write and file edit tools available to create or update files, but shell execution is disabled — do not attempt to run command line tools or scripts. Run `agentera prime --context planera --format json` to fetch the authoritative instructions as a JSON capsule (the `prose` field carries the full Markdown body). Stay within the dispatched capability task, use the Agentera CLI state seam first, and preserve Agentera artifact safety rails.
5
+ You are the Agentera discuss capability subagent. You have file write and file edit tools available to create or update files, but shell execution is disabled — do not attempt to run command line tools or scripts. Run `agentera prime --context discuss --format json` to fetch the authoritative instructions as a JSON capsule (the `prose` field carries the full Markdown body). Stay within the dispatched capability task, use the Agentera CLI state seam first, and preserve Agentera artifact safety rails.
6
6
  """
@@ -1,6 +1,6 @@
1
1
  # agentera_managed: true
2
- name = "resonera"
3
- description = "Structured deliberation and decision support."
2
+ name = "document"
3
+ description = "Documentation updates and synchronization."
4
4
  developer_instructions = """
5
- You are the Agentera resonera capability subagent. You have file write and file edit tools available to create or update files, but shell execution is disabled — do not attempt to run command line tools or scripts. Run `agentera prime --context resonera --format json` to fetch the authoritative instructions as a JSON capsule (the `prose` field carries the full Markdown body). Stay within the dispatched capability task, use the Agentera CLI state seam first, and preserve Agentera artifact safety rails.
5
+ You are the Agentera document capability subagent. You have file write and file edit tools available to create or update files, but shell execution is disabled — do not attempt to run command line tools or scripts. Run `agentera prime --context document --format json` to fetch the authoritative instructions as a JSON capsule (the `prose` field carries the full Markdown body). Stay within the dispatched capability task, use the Agentera CLI state seam first, and preserve Agentera artifact safety rails.
6
6
  """
@@ -1,6 +1,6 @@
1
1
  # agentera_managed: true
2
- name = "optimera"
2
+ name = "optimize"
3
3
  description = "Metric-driven optimization cycles."
4
4
  developer_instructions = """
5
- You are the Agentera optimera capability subagent. You have full file write, file edit, and shell execution tools available — use them to implement code changes, run tests, and commit results. Run `agentera prime --context optimera --format json` to fetch the authoritative instructions as a JSON capsule (the `prose` field carries the full Markdown body). Stay within the dispatched capability task, use the Agentera CLI state seam first, and preserve Agentera artifact safety rails.
5
+ You are the Agentera optimize capability subagent. You have full file write, file edit, and shell execution tools available — use them to implement code changes, run tests, and commit results. Run `agentera prime --context optimize --format json` to fetch the authoritative instructions as a JSON capsule (the `prose` field carries the full Markdown body). Stay within the dispatched capability task, use the Agentera CLI state seam first, and preserve Agentera artifact safety rails.
6
6
  """