agentera 3.0.0-dev.5 → 3.0.0-dev.6

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 (247) hide show
  1. package/README.md +4 -3
  2. package/bundle/references/adapters/opencode.md +1 -1
  3. package/bundle/references/adapters/package-registry.yaml +0 -1
  4. package/bundle/references/adapters/package-surface-characterization.md +1 -2
  5. package/bundle/references/analysis/startup-measurement-contract.yaml +11 -11
  6. package/bundle/references/cli/audience-namespace-cli-migration.yaml +40 -26
  7. package/bundle/references/cli/bundle-skill-vocabulary.yaml +1 -29
  8. package/bundle/references/cli/coexistence-probe.yaml +9 -0
  9. package/bundle/references/cli/single-name-protocol.yaml +42 -0
  10. package/bundle/references/cli/update-channels.yaml +1 -0
  11. package/bundle/references/cli/upgrade-repair-wording.md +31 -0
  12. package/bundle/references/cli/v3-handoff-manifest.schema.yaml +98 -0
  13. package/bundle/references/cli/vocabulary.md +12 -10
  14. package/bundle/references/meta/documentation-inventory.md +9 -3
  15. package/bundle/skills/agentera/SKILL.md +14 -14
  16. package/dist/analytics/extractCorpus/cli.js +101 -0
  17. package/dist/analytics/extractCorpus/cli.js.map +1 -0
  18. package/dist/analytics/extractCorpus/copilotSessions.js +231 -0
  19. package/dist/analytics/extractCorpus/copilotSessions.js.map +1 -0
  20. package/dist/analytics/extractCorpus/core.js +357 -0
  21. package/dist/analytics/extractCorpus/core.js.map +1 -0
  22. package/dist/analytics/extractCorpus/corpus.js +132 -0
  23. package/dist/analytics/extractCorpus/corpus.js.map +1 -0
  24. package/dist/analytics/extractCorpus/cursorSessions.js +420 -0
  25. package/dist/analytics/extractCorpus/cursorSessions.js.map +1 -0
  26. package/dist/analytics/extractCorpus/filesystemSources.js +122 -0
  27. package/dist/analytics/extractCorpus/filesystemSources.js.map +1 -0
  28. package/dist/analytics/extractCorpus/index.js +9 -0
  29. package/dist/analytics/extractCorpus/index.js.map +1 -0
  30. package/dist/analytics/extractCorpus/jsonlSessions.js +185 -0
  31. package/dist/analytics/extractCorpus/jsonlSessions.js.map +1 -0
  32. package/dist/analytics/extractCorpus/sqliteSessions.js +275 -0
  33. package/dist/analytics/extractCorpus/sqliteSessions.js.map +1 -0
  34. package/dist/analytics/extractCorpus.js +2 -1790
  35. package/dist/analytics/extractCorpus.js.map +1 -1
  36. package/dist/analytics/usageStats.js +1 -1
  37. package/dist/analytics/usageStats.js.map +1 -1
  38. package/dist/cli/capabilityContext/benchmark.js +557 -0
  39. package/dist/cli/capabilityContext/benchmark.js.map +1 -0
  40. package/dist/cli/capabilityContext/bespoke.js +25 -0
  41. package/dist/cli/capabilityContext/bespoke.js.map +1 -0
  42. package/dist/cli/capabilityContext/closeout.js +230 -0
  43. package/dist/cli/capabilityContext/closeout.js.map +1 -0
  44. package/dist/cli/capabilityContext/contract.js +186 -0
  45. package/dist/cli/capabilityContext/contract.js.map +1 -0
  46. package/dist/cli/capabilityContext/evidence.js +446 -0
  47. package/dist/cli/capabilityContext/evidence.js.map +1 -0
  48. package/dist/cli/capabilityContext/index.js +4 -0
  49. package/dist/cli/capabilityContext/index.js.map +1 -0
  50. package/dist/cli/capabilityContext/orchestration.js +107 -0
  51. package/dist/cli/capabilityContext/orchestration.js.map +1 -0
  52. package/dist/cli/capabilityContext/planState.js +271 -0
  53. package/dist/cli/capabilityContext/planState.js.map +1 -0
  54. package/dist/cli/capabilityContext/progress.js +96 -0
  55. package/dist/cli/capabilityContext/progress.js.map +1 -0
  56. package/dist/cli/capabilityContext/realisera.js +174 -0
  57. package/dist/cli/capabilityContext/realisera.js.map +1 -0
  58. package/dist/cli/capabilityContext/shared.js +94 -0
  59. package/dist/cli/capabilityContext/shared.js.map +1 -0
  60. package/dist/cli/capabilityContext/slim.js +106 -0
  61. package/dist/cli/capabilityContext/slim.js.map +1 -0
  62. package/dist/cli/capabilityContext/startup.js +208 -0
  63. package/dist/cli/capabilityContext/startup.js.map +1 -0
  64. package/dist/cli/capabilityContext/types.js +43 -0
  65. package/dist/cli/capabilityContext/types.js.map +1 -0
  66. package/dist/cli/capabilityContext.js +1 -2486
  67. package/dist/cli/capabilityContext.js.map +1 -1
  68. package/dist/cli/commands/backfill.js +84 -0
  69. package/dist/cli/commands/backfill.js.map +1 -0
  70. package/dist/cli/commands/compact.js +1 -1
  71. package/dist/cli/commands/compact.js.map +1 -1
  72. package/dist/cli/commands/doctor.js +24 -7
  73. package/dist/cli/commands/doctor.js.map +1 -1
  74. package/dist/cli/commands/lint.js +4 -36
  75. package/dist/cli/commands/lint.js.map +1 -1
  76. package/dist/cli/commands/query.js +1 -1
  77. package/dist/cli/commands/query.js.map +1 -1
  78. package/dist/cli/commands/report.js +11 -2
  79. package/dist/cli/commands/report.js.map +1 -1
  80. package/dist/cli/commands/schema.js +1 -2
  81. package/dist/cli/commands/schema.js.map +1 -1
  82. package/dist/cli/commands/state/decisions.js +397 -0
  83. package/dist/cli/commands/state/decisions.js.map +1 -0
  84. package/dist/cli/commands/state/docs.js +93 -0
  85. package/dist/cli/commands/state/docs.js.map +1 -0
  86. package/dist/cli/commands/state/experiments.js +67 -0
  87. package/dist/cli/commands/state/experiments.js.map +1 -0
  88. package/dist/cli/commands/state/health.js +114 -0
  89. package/dist/cli/commands/state/health.js.map +1 -0
  90. package/dist/cli/commands/state/index.js +51 -0
  91. package/dist/cli/commands/state/index.js.map +1 -0
  92. package/dist/cli/commands/state/objective.js +68 -0
  93. package/dist/cli/commands/state/objective.js.map +1 -0
  94. package/dist/cli/commands/state/plan.js +172 -0
  95. package/dist/cli/commands/state/plan.js.map +1 -0
  96. package/dist/cli/commands/state/progress.js +47 -0
  97. package/dist/cli/commands/state/progress.js.map +1 -0
  98. package/dist/cli/commands/state/shared.js +15 -0
  99. package/dist/cli/commands/state/shared.js.map +1 -0
  100. package/dist/cli/commands/state/todo.js +121 -0
  101. package/dist/cli/commands/state/todo.js.map +1 -0
  102. package/dist/cli/commands/state.js +7 -7
  103. package/dist/cli/commands/state.js.map +1 -1
  104. package/dist/cli/commands/validate.js +32 -18
  105. package/dist/cli/commands/validate.js.map +1 -1
  106. package/dist/cli/dispatch/check.js +328 -0
  107. package/dist/cli/dispatch/check.js.map +1 -0
  108. package/dist/cli/dispatch/index.js +177 -0
  109. package/dist/cli/dispatch/index.js.map +1 -0
  110. package/dist/cli/dispatch/lifecycle.js +492 -0
  111. package/dist/cli/dispatch/lifecycle.js.map +1 -0
  112. package/dist/cli/dispatch/prime.js +100 -0
  113. package/dist/cli/dispatch/prime.js.map +1 -0
  114. package/dist/cli/dispatch/shared.js +64 -0
  115. package/dist/cli/dispatch/shared.js.map +1 -0
  116. package/dist/cli/dispatch/state.js +149 -0
  117. package/dist/cli/dispatch/state.js.map +1 -0
  118. package/dist/cli/dispatch.js +1 -1293
  119. package/dist/cli/dispatch.js.map +1 -1
  120. package/dist/cli/help.js +0 -2
  121. package/dist/cli/help.js.map +1 -1
  122. package/dist/cli/orientation.js +1 -1
  123. package/dist/cli/orientation.js.map +1 -1
  124. package/dist/core/git.js +43 -0
  125. package/dist/core/git.js.map +1 -0
  126. package/dist/hooks/common.js +8 -23
  127. package/dist/hooks/common.js.map +1 -1
  128. package/dist/hooks/compaction/apply.js +244 -0
  129. package/dist/hooks/compaction/apply.js.map +1 -0
  130. package/dist/hooks/compaction/dryRun.js +181 -0
  131. package/dist/hooks/compaction/dryRun.js.map +1 -0
  132. package/dist/hooks/compaction/index.js +23 -0
  133. package/dist/hooks/compaction/index.js.map +1 -0
  134. package/dist/hooks/compaction/parse.js +129 -0
  135. package/dist/hooks/compaction/parse.js.map +1 -0
  136. package/dist/hooks/compaction/retention.js +197 -0
  137. package/dist/hooks/compaction/retention.js.map +1 -0
  138. package/dist/hooks/compaction/status.js +243 -0
  139. package/dist/hooks/compaction/status.js.map +1 -0
  140. package/dist/hooks/compaction/types.js +6 -0
  141. package/dist/hooks/compaction/types.js.map +1 -0
  142. package/dist/hooks/compaction.js +20 -20
  143. package/dist/hooks/compaction.js.map +1 -1
  144. package/dist/hooks/cursorPreToolUse.js +1 -1
  145. package/dist/hooks/cursorPreToolUse.js.map +1 -1
  146. package/dist/hooks/sessionStart.js +4 -4
  147. package/dist/hooks/sessionStart.js.map +1 -1
  148. package/dist/hooks/sessionStop.js +3 -12
  149. package/dist/hooks/sessionStop.js.map +1 -1
  150. package/dist/hooks/validateArtifact/agentFacing.js +10 -0
  151. package/dist/hooks/validateArtifact/agentFacing.js.map +1 -0
  152. package/dist/hooks/validateArtifact/index.js +149 -0
  153. package/dist/hooks/validateArtifact/index.js.map +1 -0
  154. package/dist/hooks/validateArtifact/markdown.js +95 -0
  155. package/dist/hooks/validateArtifact/markdown.js.map +1 -0
  156. package/dist/hooks/validateArtifact/runtime.js +83 -0
  157. package/dist/hooks/validateArtifact/runtime.js.map +1 -0
  158. package/dist/hooks/validateArtifact/schema.js +455 -0
  159. package/dist/hooks/validateArtifact/schema.js.map +1 -0
  160. package/dist/hooks/validateArtifact/traversal.js +105 -0
  161. package/dist/hooks/validateArtifact/traversal.js.map +1 -0
  162. package/dist/hooks/validateArtifact/violations.js +105 -0
  163. package/dist/hooks/validateArtifact/violations.js.map +1 -0
  164. package/dist/hooks/validateArtifact.js +29 -40
  165. package/dist/hooks/validateArtifact.js.map +1 -1
  166. package/dist/migrate/v2HandoffManifest.js +333 -0
  167. package/dist/migrate/v2HandoffManifest.js.map +1 -0
  168. package/dist/registries/artifactProtocolIds.js +77 -0
  169. package/dist/registries/artifactProtocolIds.js.map +1 -0
  170. package/dist/release/releaseMetadata.js +235 -0
  171. package/dist/release/releaseMetadata.js.map +1 -0
  172. package/dist/setup/codex/agents.js +96 -0
  173. package/dist/setup/codex/agents.js.map +1 -0
  174. package/dist/setup/codex/cli.js +161 -0
  175. package/dist/setup/codex/cli.js.map +1 -0
  176. package/dist/setup/codex/configToml.js +644 -0
  177. package/dist/setup/codex/configToml.js.map +1 -0
  178. package/dist/setup/codex/constants.js +29 -0
  179. package/dist/setup/codex/constants.js.map +1 -0
  180. package/dist/setup/codex/installRoot.js +64 -0
  181. package/dist/setup/codex/installRoot.js.map +1 -0
  182. package/dist/setup/codex/state.js +270 -0
  183. package/dist/setup/codex/state.js.map +1 -0
  184. package/dist/setup/codex.js +11 -1196
  185. package/dist/setup/codex.js.map +1 -1
  186. package/dist/setup/doctor/core.js +300 -0
  187. package/dist/setup/doctor/core.js.map +1 -0
  188. package/dist/setup/doctor/diagnostics.js +247 -0
  189. package/dist/setup/doctor/diagnostics.js.map +1 -0
  190. package/dist/setup/doctor/opencode.js +281 -0
  191. package/dist/setup/doctor/opencode.js.map +1 -0
  192. package/dist/setup/doctor/report.js +474 -0
  193. package/dist/setup/doctor/report.js.map +1 -0
  194. package/dist/setup/doctor.js +9 -1296
  195. package/dist/setup/doctor.js.map +1 -1
  196. package/dist/setup/opencode.js +13 -0
  197. package/dist/setup/opencode.js.map +1 -0
  198. package/dist/setup/smokeChecks.js +1 -1
  199. package/dist/setup/smokeChecks.js.map +1 -1
  200. package/dist/state/progressCommit.js +289 -0
  201. package/dist/state/progressCommit.js.map +1 -0
  202. package/dist/state/startupAnalysis/benchmark.js +367 -0
  203. package/dist/state/startupAnalysis/benchmark.js.map +1 -0
  204. package/dist/state/startupAnalysis/contract.js +122 -0
  205. package/dist/state/startupAnalysis/contract.js.map +1 -0
  206. package/dist/state/startupAnalysis/helpers.js +332 -0
  207. package/dist/state/startupAnalysis/helpers.js.map +1 -0
  208. package/dist/state/startupAnalysis/index.js +7 -0
  209. package/dist/state/startupAnalysis/index.js.map +1 -0
  210. package/dist/state/startupAnalysis/metrics.js +334 -0
  211. package/dist/state/startupAnalysis/metrics.js.map +1 -0
  212. package/dist/state/startupAnalysis/records.js +195 -0
  213. package/dist/state/startupAnalysis/records.js.map +1 -0
  214. package/dist/state/startupAnalysis/report.js +123 -0
  215. package/dist/state/startupAnalysis/report.js.map +1 -0
  216. package/dist/state/startupAnalysis/threshold.js +500 -0
  217. package/dist/state/startupAnalysis/threshold.js.map +1 -0
  218. package/dist/state/startupAnalysis.js +2 -1952
  219. package/dist/state/startupAnalysis.js.map +1 -1
  220. package/dist/upgrade/coexistenceProbe.js +83 -0
  221. package/dist/upgrade/coexistenceProbe.js.map +1 -0
  222. package/dist/upgrade/doctor.js +41 -2
  223. package/dist/upgrade/doctor.js.map +1 -1
  224. package/dist/upgrade/migrateArtifactsV2ToV3.js +5 -83
  225. package/dist/upgrade/migrateArtifactsV2ToV3.js.map +1 -1
  226. package/dist/upgrade/nextMajorDoctor.js +16 -1
  227. package/dist/upgrade/nextMajorDoctor.js.map +1 -1
  228. package/dist/upgrade/projectIntegration.js +3 -1
  229. package/dist/upgrade/projectIntegration.js.map +1 -1
  230. package/dist/upgrade/runtimeMigration.js +13 -2
  231. package/dist/upgrade/runtimeMigration.js.map +1 -1
  232. package/dist/upgrade/v3CapabilitySurface.js +15 -0
  233. package/dist/upgrade/v3CapabilitySurface.js.map +1 -0
  234. package/dist/upgrade/versionResolution.js +8 -0
  235. package/dist/upgrade/versionResolution.js.map +1 -1
  236. package/dist/validate/appHomeContract.js +3 -3
  237. package/dist/validate/appHomeContract.js.map +1 -1
  238. package/dist/validate/selfAudit.js +62 -20
  239. package/dist/validate/selfAudit.js.map +1 -1
  240. package/dist/validate/vocabularyAuthority.js +298 -0
  241. package/dist/validate/vocabularyAuthority.js.map +1 -0
  242. package/package.json +3 -3
  243. package/bundle/references/v1-section-mapping.md +0 -47
  244. package/bundle/skills/hej/.claude-plugin/plugin.json +0 -6
  245. package/bundle/skills/hej/SKILL.md +0 -69
  246. package/bundle/skills/hej/agents/hej.toml +0 -11
  247. package/bundle/skills/hej/agents/openai.yaml +0 -8
package/README.md CHANGED
@@ -17,10 +17,11 @@ npx -y agentera@next upgrade --dry-run --channel development
17
17
  Run those from a project root. `prime` reports `project_integration.recommendation`
18
18
  (`stay` or `upgrade`) and suggested commands for the current repo.
19
19
 
20
- Full preview instructions, highlights, and migration paths:
21
- [repository README — Agentera 3.0 preview](../../README.md#agentera-30-preview).
20
+ Full preview instructions, channels, and migration paths: [`UPGRADE.md`](../../UPGRADE.md).
22
21
 
23
- Upgrade channels and v2→v3 opt-in: [`UPGRADE.md`](../../UPGRADE.md).
22
+ ## Editor runtime installs
23
+
24
+ Agentera ships a skill bundle for supported editor runtimes (Claude Code, OpenCode, Cursor, Copilot CLI, Codex CLI). Install steps and parity details live in the [repository README — Internals](../../README.md#internals) and [`references/adapters/runtime-feature-parity.md`](../../references/adapters/runtime-feature-parity.md).
24
25
 
25
26
  ## Package layout
26
27
 
@@ -56,7 +56,7 @@ OpenCode skill search paths:
56
56
  - Global install: `npx skills add jgabor/agentera -g -a opencode --skill agentera -y`
57
57
  - Project install: symlink or copy `skills/agentera/` into `.opencode/skills/agentera/` or `.agents/skills/agentera/`
58
58
 
59
- The temporary `skills/hej/` entry point is a v1 upgrade bridge, not a new-install target. Each Agentera skill entry file already contains YAML frontmatter with `name` and `description`, which matches OpenCode's frontmatter requirements exactly. The OpenCode plugin adds one prompt transformation: when the complete user message is exactly bare text `hej`, `chat.message` rewrites it to load the bundled `agentera` skill and route through the `agentera hej` dashboard path. The match is exact except for OpenCode's CLI-added single trailing newline transport artifact, and does not apply to `/hej`, `Hej`, `hej there`, attachments, or other message parts.
59
+ Each Agentera skill entry file contains YAML frontmatter with `name` and `description`, which matches OpenCode's frontmatter requirements exactly. The OpenCode plugin adds one prompt transformation: when the complete user message is exactly bare text `hej`, `chat.message` rewrites it to load the bundled `agentera` skill and route through the `agentera prime` dashboard path. The match is exact except for OpenCode's CLI-added single trailing newline transport artifact, and does not apply to `Hej`, `hej there`, attachments, or other message parts.
60
60
 
61
61
  **OpenCode frontmatter validation** requires: `name` (1-64 chars, lowercase alphanumeric with single hyphens), `description` (1-1024 chars). Agentera entry point names are lowercase, matching the validation regex `^[a-z0-9]+(-[a-z0-9]+)*$`.
62
62
 
@@ -233,7 +233,6 @@ records:
233
233
  - .claude-plugin/marketplace.json
234
234
  - .opencode/plugins/agentera.js
235
235
  - skills/agentera/SKILL.md
236
- - skills/hej/SKILL.md
237
236
  - registry.json
238
237
  index_targets:
239
238
  - references/adapters/package-surface-characterization.md
@@ -17,7 +17,7 @@ The current version-bearing surfaces are:
17
17
  | `plugin.json` | version-bearing surface and runtime package manifest | root Copilot manifest `version` matches the suite version. |
18
18
  | `.github/plugin/plugin.json` | version-bearing surface and runtime package manifest | repository Copilot manifest `version` matches the suite version. |
19
19
  | `.codex-plugin/plugin.json` | version-bearing surface and runtime package manifest | Codex manifest `version` matches the suite version. |
20
- | `.claude-plugin/marketplace.json` | version-bearing surface and runtime package manifest | `metadata.version` and every plugin entry version, including the legacy `hej` bridge, match the suite version. |
20
+ | `.claude-plugin/marketplace.json` | version-bearing surface and runtime package manifest | `metadata.version` and the bundled `agentera` plugin entry version match the suite version. |
21
21
  | `.opencode/plugins/agentera.js` | version-bearing surface | `AGENTERA_VERSION` matches the registry suite version and drives the OpenCode command marker file `.agentera-version`. |
22
22
 
23
23
  `.opencode/package.json` is intentionally not version-bearing. Its current behavior is runtime package manifest behavior only: it keeps `type: "module"`, `main`/`exports` pointing at `./plugins/agentera.js`, `dependencies["@opencode-ai/plugin"] == "1.14.33"`, and an `agentera` npm-loadable plugin metadata block, but it has no top-level `name` or `version` field.
@@ -44,5 +44,4 @@ Write gating is preserved: `--update-packages` changes package items from `skipp
44
44
  | `.agentera/docs.yaml` `version_files` includes version-bearing surfaces and excludes `.opencode/package.json`. | version-bearing surface | `preserve` | Keep `.opencode/package.json` out of version checks because it is a runtime package manifest, not a suite version surface. |
45
45
  | `.opencode/package.json` is force-included and bundled, but it is not in docs `version_files`. | runtime package manifest | `preserve` | Keep packaging it without treating it as version-bearing. |
46
46
  | Upgrade package commands are represented as argv lists for Claude Code and OpenCode only; Codex and Copilot have runtime manifests but no package-manager command entries. | package-manager command surface | `preserve` | Keep command planning limited to currently managed package runtimes. |
47
- | `.claude-plugin/marketplace.json` carries a `hej` legacy bridge version alongside `agentera`. | version-bearing surface | `defer` | Keep the legacy bridge version aligned until a separate legacy-bridge removal or marketplace simplification task exists. |
48
47
  | Live package-manager behavior is not characterized by this task. | package-manager command surface | `defer` | Keep tests mocked; do not introduce live `npx skills` execution. |
@@ -362,17 +362,17 @@ privacy_boundary:
362
362
  - canonical_event_class
363
363
  - salted_non_reconstructable_hash
364
364
  canonical_artifact_labels:
365
- TODO.md: TODO.md
366
- CHANGELOG.md: CHANGELOG.md
367
- DESIGN.md: DESIGN.md
368
- PLAN.md: PLAN.md
369
- PROGRESS.md: PROGRESS.md
370
- DOCS.md: DOCS.md
371
- DECISIONS.md: DECISIONS.md
372
- HEALTH.md: HEALTH.md
373
- VISION.md: VISION.md
374
- OBJECTIVE.md: OBJECTIVE.md
375
- EXPERIMENTS.md: EXPERIMENTS.md
365
+ todo: todo
366
+ changelog: changelog
367
+ design: design
368
+ plan: plan
369
+ progress: progress
370
+ docs: docs
371
+ decisions: decisions
372
+ health: health
373
+ vision: vision
374
+ objective: objective
375
+ experiments: experiments
376
376
  AGENTS.md: AGENTS.md
377
377
  SKILL.md: SKILL.md
378
378
  AGENTERA_ARTIFACTS: AGENTERA_ARTIFACTS
@@ -204,9 +204,10 @@ prime_hej_schema_migration_boundary:
204
204
  prime_absorbs_hej:
205
205
  status: target
206
206
  hej_cli: >-
207
- Top-level `hej` is removed from the public parser after the alias period.
208
- `agentera hej` prints one stderr deprecation naming `prime` and delegates
209
- during Phase 1–2.
207
+ Top-level `hej` is removed from the npm 3.x public parser and dispatch.
208
+ During Phase 1–2, `agentera hej` printed one stderr deprecation naming
209
+ `prime` and delegated; Phase 3 on the development channel rejects the
210
+ command with an unsupported-target envelope.
210
211
  hej_skill_route: >-
211
212
  Bare `hej` in the Agentera skill still routes to orientation, but the installed
212
213
  CLI gate calls `agentera prime` and renders from that composite result.
@@ -225,8 +226,9 @@ prime_hej_schema_migration_boundary:
225
226
  status: target
226
227
  canonical: agentera schema [--format json|yaml]
227
228
  alias: >-
228
- `agentera describe` prints one stderr deprecation naming `schema` and delegates
229
- during Phase 1–2.
229
+ Top-level `describe` is removed from the npm 3.x public parser and dispatch.
230
+ During Phase 1–2, `agentera describe` printed one stderr deprecation naming
231
+ `schema` and delegated.
230
232
  discovery_ownership: >-
231
233
  `schema` owns runtime CLI/schema introspection formerly on `describe`, including
232
234
  command tree, audience tags, artifact locations, and linked contract sections.
@@ -260,7 +262,9 @@ plan_routing_distinction:
260
262
  is not a CLI command and does not read `.agentera/plan.yaml` by itself.
261
263
  state_read:
262
264
  invocation: agentera state plan
263
- legacy_alias: agentera plan
265
+ legacy_alias: >-
266
+ Top-level `agentera plan` was removed on the npm 3.x CLI in Phase 3; use
267
+ `agentera state plan`.
264
268
  surface: CLI routine state read
265
269
  meaning: >-
266
270
  Read-only access to the active plan artifact summary, tasks, acceptance
@@ -275,8 +279,8 @@ plan_routing_distinction:
275
279
  for Planera remains `agentera prime --context planera --format json`.
276
280
  agent_guidance: >-
277
281
  Use `/agentera plan` when the user wants planning work routed to Planera; use
278
- `agentera state plan` (or legacy `agentera plan`) when the agent needs plan
279
- artifact state; use `agentera planera` for capability routing guidance; use
282
+ `agentera state plan` when the agent needs plan artifact state; use
283
+ `agentera planera` for capability routing guidance; use
280
284
  `agentera prime --context planera` for bounded Planera startup context.
281
285
  migration_phases:
282
286
  phase_1:
@@ -295,15 +299,18 @@ migration_phases:
295
299
  - Record measurement evidence for JSON surface moves.
296
300
  phase_3:
297
301
  name: remove_deprecated_top_level_parsers
302
+ status: shipped_on_development_channel
298
303
  actions:
299
304
  - >-
300
- Remove `hej`, public `describe`, and `gate` from top-level parser help.
305
+ Remove `hej`, public `describe`, and `gate` from top-level parser help
306
+ and dispatch on the npm 3.x CLI.
301
307
  - >-
302
- Remove other deprecated top-level parsers except documented capability and
303
- lifecycle names and the Phase 1–2 alias set until post-major cleanup.
308
+ Remove routine-state top-level parsers (`plan`, `progress`, `health`,
309
+ `todo`, `decisions`, `docs`, `objective`, `experiments`) from help and
310
+ dispatch on the npm 3.x CLI.
304
311
  - >-
305
- Deferred final removal of all routine-state top-level aliases after one
306
- minor alias release.
312
+ Keep a transitional stderr-alias set (`validate`, `compact`, `verify`,
313
+ `stats`, `lint`, `query`) until post-cutover cleanup.
307
314
  alias_policy:
308
315
  stderr_format: one-line deprecation naming the canonical command
309
316
  delegation: forward to canonical handler with unchanged JSON/text envelopes
@@ -334,22 +341,29 @@ command_tree_target:
334
341
  - report [user]
335
342
  - check [maintainer]
336
343
 
337
- deprecated_top_level_aliases:
338
- # Command aliases that emit stderr deprecation warnings
339
- - { legacy: hej, canonical: prime }
340
- - { legacy: describe, canonical: schema }
341
- - { legacy: plan, canonical: "state plan" }
342
- - { legacy: progress, canonical: "state progress" }
343
- - { legacy: health, canonical: "state health" }
344
- - { legacy: todo, canonical: "state todo" }
345
- - { legacy: decisions, canonical: "state decisions" }
346
- - { legacy: docs, canonical: "state docs" }
347
- - { legacy: objective, canonical: "state objective" }
348
- - { legacy: experiments, canonical: "state experiments" }
344
+ removed_top_level_commands:
345
+ # Phase 3 on npm 3.x: removed from help and dispatch (unsupported_target)
346
+ - hej
347
+ - describe
348
+ - gate
349
+ - plan
350
+ - progress
351
+ - health
352
+ - todo
353
+ - decisions
354
+ - docs
355
+ - objective
356
+ - experiments
357
+
358
+ transitional_stderr_aliases:
359
+ # Still delegate with one-line stderr deprecation on npm 3.x
349
360
  - { legacy: query, canonical: "state query" }
350
361
  - { legacy: compact, canonical: "check compact" }
351
- - { legacy: gate, canonical: "check compact" }
352
362
  - { legacy: verify, canonical: "check verify" }
353
363
  - { legacy: stats, canonical: report }
354
364
  - { legacy: lint, canonical: "check lint" }
355
365
  - { legacy: validate, canonical: "check validate" }
366
+
367
+ # Superseded by `removed_top_level_commands` and `transitional_stderr_aliases`
368
+ # for npm 3.x Phase 3 (empty list retained for contract migration readers).
369
+ deprecated_top_level_aliases: []
@@ -14,7 +14,7 @@ scope:
14
14
  - Package and distribution metadata that names the suite package shape.
15
15
  - Runtime hook packaging prose and metadata for plugin-shipped hooks.
16
16
  - Historical references to the removed `bundle-status` command.
17
- - Current and legacy references to `skills/agentera/SKILL.md` and v1 skill entry files.
17
+ - Current references to `skills/agentera/SKILL.md`.
18
18
  excludes:
19
19
  - Routing and execution vocabulary collapse work.
20
20
  - Capability instruction-file rename work.
@@ -32,8 +32,6 @@ canonical_concept_order:
32
32
  - removed_bundle_status_command
33
33
  - agentera_routing_entry
34
34
  - skill_entry_file
35
- - v1_skill_entry_file
36
- - legacy_hej_bridge
37
35
  canonical_concepts:
38
36
  agentera_app_files:
39
37
  definition: >-
@@ -119,32 +117,6 @@ canonical_concepts:
119
117
  - SKILL.md
120
118
  - skill file
121
119
  - skill entry
122
- v1_skill_entry_file:
123
- definition: >-
124
- A historical standalone v1 skill entry file or path retained in migration
125
- notes, tests, stale-path checks, and compatibility fixtures.
126
- allowed_terms:
127
- - v1 skill entry file
128
- - v1 standalone skill entry file
129
- - "historical v1 `SKILL.md` file"
130
- - v1 skill path
131
- forbidden_ambiguous_shortcuts:
132
- - SKILL.md
133
- - v1 SKILL.md
134
- - old skill file
135
- legacy_hej_bridge:
136
- definition: >-
137
- The temporary v1 `/hej` bridge or exact bare `hej` compatibility path that
138
- guides users toward `/agentera` and the v2 upgrade path.
139
- allowed_terms:
140
- - legacy hej bridge
141
- - "legacy `/hej` bridge"
142
- - v1 hej bridge
143
- - "bare `hej` compatibility path"
144
- forbidden_ambiguous_shortcuts:
145
- - hej skill
146
- - legacy skill
147
- - old hej
148
120
  classification_order:
149
121
  - canonical_concept
150
122
  - compatibility_identifier
@@ -0,0 +1,9 @@
1
+ # v2/v3 coexistence doctor warning contract (both CLI lines).
2
+ schema_version: agentera.coexistenceProbe.v1
3
+ section_header: Coexistence
4
+ warning:
5
+ headline: "v3 detected alongside v2; pick one line"
6
+ resolutions:
7
+ - complete v3 migration
8
+ - uninstall v3
9
+ - stay on v2 explicitly
@@ -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
@@ -37,6 +37,7 @@ channels:
37
37
  concept: forward_successor_line
38
38
  channel: development
39
39
  version: "3.0.0"
40
+ announced: false
40
41
  npm:
41
42
  dist_tag: next
42
43
  npm_only_advisory: >-
@@ -0,0 +1,31 @@
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 (`hej`, `visionera`, `resonera`, `inspirera`,
16
+ `planera`, `realisera`, `optimera`, `inspektera`, `dokumentera`, `profilera`,
17
+ `visualisera`, `orkestrera`).
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`
@@ -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.
@@ -51,11 +51,13 @@ examples. Diagnostics should state object, state, cause, and fix.
51
51
 
52
52
  | Term | Definition | Common sources |
53
53
  | --- | --- | --- |
54
- | Agentera | The open protocol for turning AI agents into engineering teams through shared project state, roles, decisions, and verification. | `README.md`, `.agentera/vision.yaml`, `skills/agentera/SKILL.md` |
55
- | Agentera v2 | The current architecture: one Agentera skill, one `/agentera` entry point, twelve capabilities, YAML project state, and CLI-first access. | `README.md`, `UPGRADE.md`, `.agentera/decisions.yaml` |
56
- | Agentera skill | The runtime-loaded Agentera skill at `skills/agentera/`. It contains the routing entry and twelve capabilities. | `skills/agentera/SKILL.md` |
54
+ | Agentera | An opinionated mobile-first coding agent. One product brand across the monorepo (`@agentera/mobile`, `@agentera/web`, `@agentera/cli`). Structured `.agentera/` project state makes sessions compound. | `README.md`, `.agentera/vision.yaml` |
55
+ | Product surface | A shipped user-facing package in the monorepo: `@agentera/mobile` (primary app), `@agentera/web` (site and docs), `@agentera/cli` (agent runtime and state CLI). | `README.md`, `AGENTS.md`, `packages/*/README.md` |
56
+ | @agentera/mobile | The flagship mobile/web app package at `packages/mobile`. SvelteKit, Cursor SDK, Cloudflare Worker. | `packages/mobile/README.md`, `packages/mobile/DESIGN.md` |
57
+ | Agentera skill | Internal runtime-loaded skill at `skills/agentera/`. Contains the routing entry and twelve capabilities. Contributor and editor-integration surface, not the primary product headline. | `skills/agentera/SKILL.md` |
57
58
  | Capability | A routed behavioral unit inside the Agentera skill, with the prose module `packages/cli/src/capabilities/<name>/instructions.ts` plus `triggers.yaml`, `artifacts.yaml`, `validation.yaml`, and `exit.yaml`. | `AGENTS.md`, `skills/agentera/capabilities/*`, `packages/cli/src/capabilities/*` |
58
- | Shared protocol | The primitive vocabulary in `protocol.yaml`: confidence, severity, decision labels, exits, visual tokens, glyphs, and phases. | `skills/agentera/protocol.yaml` |
59
+ | Capability alias | User-facing English name in the mobile app (e.g. `brief`, `discuss`) mapped to internal `-era` IDs (e.g. `hej`, `resonera`). Documented in `packages/mobile/README.md`; schemas retain internal IDs. | `packages/mobile/README.md`, `.agentera/decisions.yaml` |
60
+ | Shared protocol | Internal primitive vocabulary in `protocol.yaml`: confidence, severity, decision labels, exits, visual tokens, glyphs, and phases. | `skills/agentera/protocol.yaml` |
59
61
  | Capability schema contract | The executable contract for capability schema groups, stable IDs, priorities, deprecations, and primitive references. | `skills/agentera/capability_schema_contract.yaml` |
60
62
  | Project state | Structured files that preserve intent, decisions, plans, progress, health, docs, design, and session continuity. | `README.md`, `.agentera/docs.yaml` |
61
63
  | Project history | Durable history kept in files so future agents do not reconstruct history from chat residue. | `README.md`, `.agentera/progress.yaml` |
@@ -201,12 +203,12 @@ ambiguous-term sweep remain separate follow-up work.
201
203
  | Severity band policy | TODO.md severity bands are header-only allowed for Degraded (⇉), Normal (→), and Annoying (⇢); Critical (⇶) is enforced and must contain at least one `- [type]` item. Authority: `skills/agentera/schemas/artifacts/todo.yaml` CONVENTION TC6; executable rule in `packages/cli/src/hooks/validateArtifact.ts` `validateMdItems`. |
202
204
  | Agent-facing artifact | A structured YAML artifact under `.agentera/`, such as `.agentera/progress.yaml`. |
203
205
  | Global artifact | A user-level artifact outside a project, such as `PROFILE.md` or `USAGE.md`. |
204
- | Canonical artifact name | Display identifier such as `VISION.md`, `PROGRESS.md`, or `DOCS.md`; not always a literal path. |
206
+ | Canonical artifact name | Protocol `artifact_id` such as `plan`, `progress`, or `docs`; human-facing Markdown filenames such as `TODO.md` are `display_name` values, not protocol identity. |
205
207
  | Resolved artifact path | The actual path after consulting `.agentera/docs.yaml` mapping or the default layout. |
206
- | Artifact mapping | `.agentera/docs.yaml` rows that map canonical names to project-local paths and producers. |
208
+ | Artifact mapping | `.agentera/docs.yaml` rows that map `artifact_id` values to project-local paths and producers. |
207
209
  | ArtifactRegistry | The registry interface model for artifact IDs, display names, default paths, producers, consumers, type, scope, and special cases. |
208
210
  | `artifact_id` | Machine identifier such as `progress`, `health`, `docs`, or `objective`. |
209
- | `display_name` | Human-readable canonical name, usually the v1-style Markdown name. |
211
+ | `display_name` | Human-readable filename label such as `VISION.md` or `TODO.md`; registry-owned, not protocol identity. |
210
212
  | `default_path` | Registry-owned path used when no docs mapping overrides it. |
211
213
  | `local_role` | Capability relationship to an artifact: `produces`, `consumes`, or `produces_and_consumes`. |
212
214
  | Docs override boundary | `docs.yaml` may override paths for known display names; it must not redefine canonical identity facts. |
@@ -440,7 +442,7 @@ references, generic plain language, and ambiguous current prose.
440
442
  Use this prose as guidance only: current conceptual docs should say the object
441
443
  they mean, such as Agentera app files, suite package, plugin-shipped hooks,
442
444
  removed `bundle-status` command, Agentera routing entry point, skill entry file,
443
- v1 skill entry file, or legacy hej bridge. Preserve shipped identifiers and
445
+ historical v1 skill entry paths (post-3.0 removed from the repo tree). Preserve shipped identifiers and
444
446
  literal paths such as `.agentera-bundle.json`, `bundle.status`,
445
447
  `activeBundleRoot`, `--only bundle`, and `skills/agentera/SKILL.md` unless an
446
448
  explicit compatibility migration is in scope.
@@ -490,8 +492,8 @@ Visualisera owns visual identity in `DESIGN.md`. Protocol owns token meanings in
490
492
 
491
493
  | Phrase | Use |
492
494
  | --- | --- |
493
- | “The open protocol for turning AI agents into engineering teams.” | Product identity. |
494
- | “One install, one entry point, one query interface to all project state.” | v2 app-home promise. |
495
+ | “Opinionated mobile-first coding agent.” | Product identity. |
496
+ | “One install, one entry point, one query interface to all project state.” | CLI state-access promise (internals/contributor docs). |
495
497
  | “Continuity lives in files, not memory.” | Realisera/project-state principle. |
496
498
  | “The conversation preserves reasoning; the artifact preserves the plan.” | Planera boundary. |
497
499
  | “Planera owns WHAT and WHY; realisera owns HOW.” | Planning/building boundary. |
@@ -4,7 +4,14 @@ Maintainer inventory of repository documentation, workpapers, and legacy surface
4
4
  Authoritative Agentera docs live under `references/`, `skills/agentera/`, and root
5
5
  guides — not under `docs/`.
6
6
 
7
- **Last reviewed:** 2026-05-23
7
+ **Last reviewed:** 2026-06-05
8
+
9
+ ## Design docs under `docs/`
10
+
11
+ | Path | Topic |
12
+ | ---- | ----- |
13
+ | `docs/packaging/v3-packaging.md` | v3 CLI npm/Bun distribution contract |
14
+ | `docs/consolidation/monorepo-plan.md` | Product pivot, `@agentera/*` package layout, migration checklist (D67) |
8
15
 
9
16
  ## Authority stack
10
17
 
@@ -17,7 +24,7 @@ guides — not under `docs/`.
17
24
  | Benchmark contract | `references/analysis/startup-measurement-contract.yaml` |
18
25
  | Benchmark runbook | `references/analysis/benchmark.md` |
19
26
  | JSON surface budgets | `scripts/json_output_surface_manifest.yaml` |
20
- | Project drafts | `docs/` (gitignored except `docs/README.md`) |
27
+ | Project drafts | `docs/` (gitignored except `docs/README.md`, `docs/packaging/`, `docs/consolidation/`) |
21
28
 
22
29
  ## `docs/` policy
23
30
 
@@ -40,4 +47,3 @@ Live JSON enforcement uses `scripts/json_output_surface_manifest.yaml` only.
40
47
 
41
48
  - Replace live `SPEC.md` references in `UPGRADE.md`, hooks, adapter docs, `contract.md`
42
49
  - Refresh or drop assertions against pre-migration characterization snapshots
43
- - Agentera 3.0: remove `skills/hej/` bridge and `references/v1-section-mapping.md`
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  name: agentera
3
3
  description: >
4
- The open protocol for turning AI agents into engineering teams. One Agentera
5
- skill with twelve capabilities; per-capability prose lives in
4
+ Agentera agent engine for editor runtimes. One Agentera skill with twelve
5
+ capabilities; per-capability prose lives in
6
6
  `packages/cli/src/capabilities/<name>/instructions.ts` and the runtime serves
7
7
  it through `agentera prime --context <name> --format json`. Use this skill
8
8
  for /agentera, Agentera capability requests, and a complete user message
@@ -196,9 +196,10 @@ above must have already confirmed the installed CLI is usable.
196
196
 
197
197
  Routine commands are: `prime`, `state plan`, `state progress`, `state health`,
198
198
  `state todo`, `state decisions`, `state docs`, `state objective`, and
199
- `state experiments`. Top-level aliases for legacy commands remain during migration with stderr deprecation; see [audience-namespace-cli-migration.yaml](references/cli/audience-namespace-cli-migration.yaml) for the full list. Discovery and custom
200
- inspection remain available through `agentera schema --format json`
201
- (with legacy `describe` alias),
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`,
202
203
  `state query --list-artifacts`, and `state query <artifact-name> --format json|yaml`.
203
204
  Structured discovery includes an artifact-location contract with mapped paths,
204
205
  normal read commands, and raw-access boundaries; use that contract before
@@ -361,15 +362,14 @@ when supplied by the CLI.
361
362
  Do not replace the CLI-owned preview with manual artifact inspection,
362
363
  hand-written migration steps, or raw YAML reads. Only the apply step requires confirmation.
363
364
 
364
- The upgrade command is idempotent. It installs or updates Agentera app files
365
- when invoked through `uvx`, migrates v1 artifacts, wires runtime config to that
366
- app home, and removes fixable outdated v1 runtime artifacts.
367
- The artifacts phase migrates supported v1 Markdown files to YAML with backups
368
- after preview and confirmation. Package refreshes that run `npx skills remove`
369
- for v1 skill entries and `npx skills add` for `/agentera` remain explicit opt-in
370
- via `--update-packages`. `npx skills update` by itself updates only the visible
371
- skill; if `/agentera` then finds missing or out-of-date app files, run the
372
- plain-language repair preview above so upgrade updates the app and cleans up
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
373
  the old default directory when it is recoverable.
374
374
 
375
375
  ### Layer 1: Bare `/agentera` or bare `hej` — delegate to prime