agentera 0.0.0 → 3.0.0-dev.1

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 (256) hide show
  1. package/README.md +6 -45
  2. package/bundle/.agentera-npx-bundle.json +4 -0
  3. package/bundle/references/adapters/cursor.md +213 -0
  4. package/bundle/references/adapters/opencode.md +530 -0
  5. package/bundle/references/adapters/package-manifest-interface-model.yaml +337 -0
  6. package/bundle/references/adapters/package-registry.yaml +247 -0
  7. package/bundle/references/adapters/package-surface-characterization.md +48 -0
  8. package/bundle/references/adapters/runtime-adapter-characterization.md +79 -0
  9. package/bundle/references/adapters/runtime-adapter-interface-model.yaml +200 -0
  10. package/bundle/references/adapters/runtime-adapter-registry.yaml +548 -0
  11. package/bundle/references/adapters/runtime-feature-parity.md +189 -0
  12. package/bundle/references/analysis/benchmark.md +267 -0
  13. package/bundle/references/analysis/startup-measurement-contract.yaml +424 -0
  14. package/bundle/references/artifacts/artifact-registry-interface-model.yaml +288 -0
  15. package/bundle/references/cli/agent-ready-state-contract.yaml +950 -0
  16. package/bundle/references/cli/app-lifecycle-vocabulary.yaml +241 -0
  17. package/bundle/references/cli/audience-namespace-cli-migration.yaml +355 -0
  18. package/bundle/references/cli/bundle-skill-vocabulary.yaml +278 -0
  19. package/bundle/references/cli/capability-instruction-contract.yaml +123 -0
  20. package/bundle/references/cli/capability-tool-classification.yaml +53 -0
  21. package/bundle/references/cli/routing-execution-vocabulary.yaml +281 -0
  22. package/bundle/references/cli/update-channels.yaml +147 -0
  23. package/bundle/references/cli/vocabulary-index.yaml +160 -0
  24. package/bundle/references/cli/vocabulary.md +566 -0
  25. package/bundle/references/meta/documentation-inventory.md +43 -0
  26. package/bundle/references/v1-section-mapping.md +47 -0
  27. package/bundle/registry.json +39 -0
  28. package/bundle/skills/agentera/.claude-plugin/plugin.json +27 -0
  29. package/bundle/skills/agentera/SKILL.md +470 -0
  30. package/bundle/skills/agentera/agents/dokumentera.toml +6 -0
  31. package/bundle/skills/agentera/agents/hej.toml +6 -0
  32. package/bundle/skills/agentera/agents/inspektera.toml +6 -0
  33. package/bundle/skills/agentera/agents/inspirera.toml +6 -0
  34. package/bundle/skills/agentera/agents/optimera.toml +6 -0
  35. package/bundle/skills/agentera/agents/orkestrera.toml +6 -0
  36. package/bundle/skills/agentera/agents/planera.toml +6 -0
  37. package/bundle/skills/agentera/agents/profilera.toml +6 -0
  38. package/bundle/skills/agentera/agents/realisera.toml +6 -0
  39. package/bundle/skills/agentera/agents/resonera.toml +6 -0
  40. package/bundle/skills/agentera/agents/visionera.toml +6 -0
  41. package/bundle/skills/agentera/agents/visualisera.toml +6 -0
  42. package/bundle/skills/agentera/capabilities/dokumentera/instructions.md +428 -0
  43. package/bundle/skills/agentera/capabilities/dokumentera/schemas/artifacts.yaml +73 -0
  44. package/bundle/skills/agentera/capabilities/dokumentera/schemas/exit.yaml +35 -0
  45. package/bundle/skills/agentera/capabilities/dokumentera/schemas/triggers.yaml +35 -0
  46. package/bundle/skills/agentera/capabilities/dokumentera/schemas/validation.yaml +139 -0
  47. package/bundle/skills/agentera/capabilities/hej/instructions.md +331 -0
  48. package/bundle/skills/agentera/capabilities/hej/schemas/artifacts.yaml +69 -0
  49. package/bundle/skills/agentera/capabilities/hej/schemas/exit.yaml +32 -0
  50. package/bundle/skills/agentera/capabilities/hej/schemas/triggers.yaml +58 -0
  51. package/bundle/skills/agentera/capabilities/hej/schemas/validation.yaml +55 -0
  52. package/bundle/skills/agentera/capabilities/inspektera/instructions.md +514 -0
  53. package/bundle/skills/agentera/capabilities/inspektera/schemas/artifacts.yaml +76 -0
  54. package/bundle/skills/agentera/capabilities/inspektera/schemas/exit.yaml +36 -0
  55. package/bundle/skills/agentera/capabilities/inspektera/schemas/triggers.yaml +38 -0
  56. package/bundle/skills/agentera/capabilities/inspektera/schemas/validation.yaml +113 -0
  57. package/bundle/skills/agentera/capabilities/inspirera/instructions.md +280 -0
  58. package/bundle/skills/agentera/capabilities/inspirera/schemas/artifacts.yaml +24 -0
  59. package/bundle/skills/agentera/capabilities/inspirera/schemas/exit.yaml +33 -0
  60. package/bundle/skills/agentera/capabilities/inspirera/schemas/triggers.yaml +34 -0
  61. package/bundle/skills/agentera/capabilities/inspirera/schemas/validation.yaml +58 -0
  62. package/bundle/skills/agentera/capabilities/optimera/instructions.md +437 -0
  63. package/bundle/skills/agentera/capabilities/optimera/schemas/artifacts.yaml +69 -0
  64. package/bundle/skills/agentera/capabilities/optimera/schemas/exit.yaml +35 -0
  65. package/bundle/skills/agentera/capabilities/optimera/schemas/triggers.yaml +39 -0
  66. package/bundle/skills/agentera/capabilities/optimera/schemas/validation.yaml +91 -0
  67. package/bundle/skills/agentera/capabilities/orkestrera/instructions.md +433 -0
  68. package/bundle/skills/agentera/capabilities/orkestrera/schemas/artifacts.yaml +64 -0
  69. package/bundle/skills/agentera/capabilities/orkestrera/schemas/exit.yaml +34 -0
  70. package/bundle/skills/agentera/capabilities/orkestrera/schemas/triggers.yaml +42 -0
  71. package/bundle/skills/agentera/capabilities/orkestrera/schemas/validation.yaml +107 -0
  72. package/bundle/skills/agentera/capabilities/planera/instructions.md +368 -0
  73. package/bundle/skills/agentera/capabilities/planera/schemas/artifacts.yaml +62 -0
  74. package/bundle/skills/agentera/capabilities/planera/schemas/exit.yaml +33 -0
  75. package/bundle/skills/agentera/capabilities/planera/schemas/triggers.yaml +34 -0
  76. package/bundle/skills/agentera/capabilities/planera/schemas/validation.yaml +61 -0
  77. package/bundle/skills/agentera/capabilities/profilera/instructions.md +419 -0
  78. package/bundle/skills/agentera/capabilities/profilera/schemas/artifacts.yaml +18 -0
  79. package/bundle/skills/agentera/capabilities/profilera/schemas/exit.yaml +34 -0
  80. package/bundle/skills/agentera/capabilities/profilera/schemas/triggers.yaml +45 -0
  81. package/bundle/skills/agentera/capabilities/profilera/schemas/validation.yaml +57 -0
  82. package/bundle/skills/agentera/capabilities/realisera/instructions.md +403 -0
  83. package/bundle/skills/agentera/capabilities/realisera/schemas/artifacts.yaml +80 -0
  84. package/bundle/skills/agentera/capabilities/realisera/schemas/exit.yaml +35 -0
  85. package/bundle/skills/agentera/capabilities/realisera/schemas/triggers.yaml +39 -0
  86. package/bundle/skills/agentera/capabilities/realisera/schemas/validation.yaml +110 -0
  87. package/bundle/skills/agentera/capabilities/resonera/instructions.md +329 -0
  88. package/bundle/skills/agentera/capabilities/resonera/schemas/artifacts.yaml +47 -0
  89. package/bundle/skills/agentera/capabilities/resonera/schemas/exit.yaml +35 -0
  90. package/bundle/skills/agentera/capabilities/resonera/schemas/triggers.yaml +46 -0
  91. package/bundle/skills/agentera/capabilities/resonera/schemas/validation.yaml +77 -0
  92. package/bundle/skills/agentera/capabilities/visionera/instructions.md +309 -0
  93. package/bundle/skills/agentera/capabilities/visionera/schemas/artifacts.yaml +57 -0
  94. package/bundle/skills/agentera/capabilities/visionera/schemas/exit.yaml +35 -0
  95. package/bundle/skills/agentera/capabilities/visionera/schemas/triggers.yaml +41 -0
  96. package/bundle/skills/agentera/capabilities/visionera/schemas/validation.yaml +74 -0
  97. package/bundle/skills/agentera/capabilities/visualisera/instructions.md +400 -0
  98. package/bundle/skills/agentera/capabilities/visualisera/schemas/artifacts.yaml +44 -0
  99. package/bundle/skills/agentera/capabilities/visualisera/schemas/exit.yaml +34 -0
  100. package/bundle/skills/agentera/capabilities/visualisera/schemas/triggers.yaml +33 -0
  101. package/bundle/skills/agentera/capabilities/visualisera/schemas/validation.yaml +80 -0
  102. package/bundle/skills/agentera/capability_schema_contract.yaml +385 -0
  103. package/bundle/skills/agentera/protocol.yaml +463 -0
  104. package/bundle/skills/agentera/references/contract.md +1039 -0
  105. package/bundle/skills/agentera/schemas/artifacts/changelog.yaml +60 -0
  106. package/bundle/skills/agentera/schemas/artifacts/decisions.yaml +461 -0
  107. package/bundle/skills/agentera/schemas/artifacts/design.yaml +55 -0
  108. package/bundle/skills/agentera/schemas/artifacts/docs.yaml +402 -0
  109. package/bundle/skills/agentera/schemas/artifacts/experiments.yaml +373 -0
  110. package/bundle/skills/agentera/schemas/artifacts/health.yaml +484 -0
  111. package/bundle/skills/agentera/schemas/artifacts/objective.yaml +399 -0
  112. package/bundle/skills/agentera/schemas/artifacts/plan.yaml +342 -0
  113. package/bundle/skills/agentera/schemas/artifacts/progress.yaml +325 -0
  114. package/bundle/skills/agentera/schemas/artifacts/todo.yaml +110 -0
  115. package/bundle/skills/agentera/schemas/artifacts/vision.yaml +262 -0
  116. package/bundle/skills/hej/.claude-plugin/plugin.json +6 -0
  117. package/bundle/skills/hej/SKILL.md +69 -0
  118. package/bundle/skills/hej/agents/hej.toml +11 -0
  119. package/bundle/skills/hej/agents/openai.yaml +8 -0
  120. package/dist/analytics/extractCorpus.js +1791 -0
  121. package/dist/analytics/extractCorpus.js.map +1 -0
  122. package/dist/analytics/usageStats.js +487 -0
  123. package/dist/analytics/usageStats.js.map +1 -0
  124. package/dist/bin/agentera.js +4 -0
  125. package/dist/bin/agentera.js.map +1 -0
  126. package/dist/cli/appContext.js +226 -0
  127. package/dist/cli/appContext.js.map +1 -0
  128. package/dist/cli/argvalidate.js +41 -0
  129. package/dist/cli/argvalidate.js.map +1 -0
  130. package/dist/cli/capabilityContext.js +2421 -0
  131. package/dist/cli/capabilityContext.js.map +1 -0
  132. package/dist/cli/commands/backfill.js +84 -0
  133. package/dist/cli/commands/backfill.js.map +1 -0
  134. package/dist/cli/commands/capability.js +44 -0
  135. package/dist/cli/commands/capability.js.map +1 -0
  136. package/dist/cli/commands/compact.js +148 -0
  137. package/dist/cli/commands/compact.js.map +1 -0
  138. package/dist/cli/commands/doctor.js +180 -0
  139. package/dist/cli/commands/doctor.js.map +1 -0
  140. package/dist/cli/commands/lint.js +179 -0
  141. package/dist/cli/commands/lint.js.map +1 -0
  142. package/dist/cli/commands/prime.js +544 -0
  143. package/dist/cli/commands/prime.js.map +1 -0
  144. package/dist/cli/commands/query.js +346 -0
  145. package/dist/cli/commands/query.js.map +1 -0
  146. package/dist/cli/commands/report.js +210 -0
  147. package/dist/cli/commands/report.js.map +1 -0
  148. package/dist/cli/commands/schema.js +306 -0
  149. package/dist/cli/commands/schema.js.map +1 -0
  150. package/dist/cli/commands/state.js +1012 -0
  151. package/dist/cli/commands/state.js.map +1 -0
  152. package/dist/cli/commands/upgrade.js +48 -0
  153. package/dist/cli/commands/upgrade.js.map +1 -0
  154. package/dist/cli/commands/validate.js +519 -0
  155. package/dist/cli/commands/validate.js.map +1 -0
  156. package/dist/cli/commands/verify.js +204 -0
  157. package/dist/cli/commands/verify.js.map +1 -0
  158. package/dist/cli/dispatch.js +958 -0
  159. package/dist/cli/dispatch.js.map +1 -0
  160. package/dist/cli/orientation.js +595 -0
  161. package/dist/cli/orientation.js.map +1 -0
  162. package/dist/cli/prime-blob.js +3 -0
  163. package/dist/cli/prime-blob.js.map +1 -0
  164. package/dist/cli/stateQuery.js +292 -0
  165. package/dist/cli/stateQuery.js.map +1 -0
  166. package/dist/cli/structured.js +18 -0
  167. package/dist/cli/structured.js.map +1 -0
  168. package/dist/core/difflib.js +274 -0
  169. package/dist/core/difflib.js.map +1 -0
  170. package/dist/core/git.js +43 -0
  171. package/dist/core/git.js.map +1 -0
  172. package/dist/core/paths.js +50 -0
  173. package/dist/core/paths.js.map +1 -0
  174. package/dist/core/pyjson.js +101 -0
  175. package/dist/core/pyjson.js.map +1 -0
  176. package/dist/core/sourceRoot.js +72 -0
  177. package/dist/core/sourceRoot.js.map +1 -0
  178. package/dist/core/toml.js +11 -0
  179. package/dist/core/toml.js.map +1 -0
  180. package/dist/core/yaml.js +25 -0
  181. package/dist/core/yaml.js.map +1 -0
  182. package/dist/eval/evalSkills.js +258 -0
  183. package/dist/eval/evalSkills.js.map +1 -0
  184. package/dist/eval/semanticEval.js +148 -0
  185. package/dist/eval/semanticEval.js.map +1 -0
  186. package/dist/eval/semanticFixtures.js +227 -0
  187. package/dist/eval/semanticFixtures.js.map +1 -0
  188. package/dist/hooks/common.js +160 -0
  189. package/dist/hooks/common.js.map +1 -0
  190. package/dist/hooks/compaction.js +935 -0
  191. package/dist/hooks/compaction.js.map +1 -0
  192. package/dist/hooks/cursorPreToolUse.js +19 -0
  193. package/dist/hooks/cursorPreToolUse.js.map +1 -0
  194. package/dist/hooks/cursorSessionStart.js +71 -0
  195. package/dist/hooks/cursorSessionStart.js.map +1 -0
  196. package/dist/hooks/sessionStart.js +209 -0
  197. package/dist/hooks/sessionStart.js.map +1 -0
  198. package/dist/hooks/sessionStop.js +212 -0
  199. package/dist/hooks/sessionStop.js.map +1 -0
  200. package/dist/hooks/validateArtifact.js +933 -0
  201. package/dist/hooks/validateArtifact.js.map +1 -0
  202. package/dist/registries/artifactRegistry.js +206 -0
  203. package/dist/registries/artifactRegistry.js.map +1 -0
  204. package/dist/registries/capabilityContract.js +310 -0
  205. package/dist/registries/capabilityContract.js.map +1 -0
  206. package/dist/registries/packageRegistry.js +641 -0
  207. package/dist/registries/packageRegistry.js.map +1 -0
  208. package/dist/registries/runtimeAdapterRegistry.js +315 -0
  209. package/dist/registries/runtimeAdapterRegistry.js.map +1 -0
  210. package/dist/setup/codex.js +1056 -0
  211. package/dist/setup/codex.js.map +1 -0
  212. package/dist/setup/copilot.js +227 -0
  213. package/dist/setup/copilot.js.map +1 -0
  214. package/dist/setup/cursor.js +127 -0
  215. package/dist/setup/cursor.js.map +1 -0
  216. package/dist/setup/doctor.js +1276 -0
  217. package/dist/setup/doctor.js.map +1 -0
  218. package/dist/state/installRoot.js +279 -0
  219. package/dist/state/installRoot.js.map +1 -0
  220. package/dist/state/progressCommit.js +289 -0
  221. package/dist/state/progressCommit.js.map +1 -0
  222. package/dist/state/startupAnalysis.js +1953 -0
  223. package/dist/state/startupAnalysis.js.map +1 -0
  224. package/dist/upgrade/appModel.js +189 -0
  225. package/dist/upgrade/appModel.js.map +1 -0
  226. package/dist/upgrade/channels.js +208 -0
  227. package/dist/upgrade/channels.js.map +1 -0
  228. package/dist/upgrade/compatibility.js +201 -0
  229. package/dist/upgrade/compatibility.js.map +1 -0
  230. package/dist/upgrade/doctor.js +373 -0
  231. package/dist/upgrade/doctor.js.map +1 -0
  232. package/dist/upgrade/migrateArtifactsV2ToV3.js +332 -0
  233. package/dist/upgrade/migrateArtifactsV2ToV3.js.map +1 -0
  234. package/dist/upgrade/runtimeMigration.js +484 -0
  235. package/dist/upgrade/runtimeMigration.js.map +1 -0
  236. package/dist/upgrade/upgradeCommands.js +36 -0
  237. package/dist/upgrade/upgradeCommands.js.map +1 -0
  238. package/dist/upgrade/upgradeOrchestrator.js +299 -0
  239. package/dist/upgrade/upgradeOrchestrator.js.map +1 -0
  240. package/dist/upgrade/versionResolution.js +179 -0
  241. package/dist/upgrade/versionResolution.js.map +1 -0
  242. package/dist/validate/appHomeContract.js +150 -0
  243. package/dist/validate/appHomeContract.js.map +1 -0
  244. package/dist/validate/capability.js +412 -0
  245. package/dist/validate/capability.js.map +1 -0
  246. package/dist/validate/crossCapability.js +145 -0
  247. package/dist/validate/crossCapability.js.map +1 -0
  248. package/dist/validate/lifecycleAdapters.js +772 -0
  249. package/dist/validate/lifecycleAdapters.js.map +1 -0
  250. package/dist/validate/selfAudit.js +107 -0
  251. package/dist/validate/selfAudit.js.map +1 -0
  252. package/package.json +28 -8
  253. package/LICENSE +0 -201
  254. package/bin/agentera.mjs +0 -50
  255. package/lib/exec.mjs +0 -116
  256. package/lib/resolve.mjs +0 -129
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/setup/doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,279 @@
1
+ import fs from "node:fs";
2
+ import path from "node:path";
3
+ import { expanduser, isFile, pathExists, resolvePath } from "../core/paths.js";
4
+ /**
5
+ * Read-only Agentera install-root classification. Faithful TypeScript port of
6
+ * `scripts/install_root.py`. Owns install-root identity and diagnostics without
7
+ * mutating durable bundle state.
8
+ */
9
+ export const BUNDLE_MARKER = ".agentera-bundle.json";
10
+ export const SETUP_EVIDENCE = [
11
+ "skills",
12
+ "skills/agentera/SKILL.md",
13
+ "registry.json",
14
+ ];
15
+ export const BUNDLE_EVIDENCE = [
16
+ "skills/agentera/SKILL.md",
17
+ "registry.json",
18
+ BUNDLE_MARKER,
19
+ ];
20
+ // Python: tuple(dict.fromkeys((*SETUP_EVIDENCE, *BUNDLE_EVIDENCE))) — order-preserving dedupe.
21
+ export const MANAGED_EVIDENCE = (() => {
22
+ const seen = new Set();
23
+ const out = [];
24
+ for (const entry of [...SETUP_EVIDENCE, ...BUNDLE_EVIDENCE]) {
25
+ if (!seen.has(entry)) {
26
+ seen.add(entry);
27
+ out.push(entry);
28
+ }
29
+ }
30
+ return out;
31
+ })();
32
+ export const SOURCE_LABELS = {
33
+ explicit: "explicit --install-root",
34
+ environment: "AGENTERA_HOME",
35
+ default: "default app home",
36
+ };
37
+ /** Mirror of `Classification.to_dict()` (asdict): plain object, already shaped. */
38
+ export function toDict(c) {
39
+ return {
40
+ source: c.source,
41
+ source_label: c.source_label,
42
+ path: c.path,
43
+ kind: c.kind,
44
+ safe_action: c.safe_action,
45
+ diagnostic: {
46
+ code: c.diagnostic.code,
47
+ severity: c.diagnostic.severity,
48
+ message: c.diagnostic.message,
49
+ evidence: c.diagnostic.evidence,
50
+ },
51
+ managed_status: c.managed_status,
52
+ stale_status: c.stale_status,
53
+ missing_evidence: c.missing_evidence,
54
+ expected_version: c.expected_version,
55
+ current_version: c.current_version,
56
+ };
57
+ }
58
+ function sourceLabel(source) {
59
+ return SOURCE_LABELS[source] ?? source;
60
+ }
61
+ export function resolveCandidate(explicitRoot, opts) {
62
+ const { env, home } = opts;
63
+ if (explicitRoot !== null && explicitRoot !== undefined) {
64
+ return [resolvePath(explicitRoot), "explicit"];
65
+ }
66
+ const configured = env.AGENTERA_HOME;
67
+ if (configured) {
68
+ return [resolvePath(configured), "environment"];
69
+ }
70
+ const def = env.AGENTERA_DEFAULT_INSTALL_ROOT;
71
+ if (def) {
72
+ return [resolvePath(def), "default"];
73
+ }
74
+ return [resolvePath(defaultAppHome(env, home, opts.platform)), "default"];
75
+ }
76
+ export function defaultAppHome(env, home, platform = process.platform) {
77
+ if (platform === "darwin") {
78
+ return path.join(expanduser(home), "Library", "Application Support", "agentera");
79
+ }
80
+ if (platform === "win32") {
81
+ const appdata = env.APPDATA;
82
+ const base = appdata
83
+ ? expanduser(appdata)
84
+ : path.join(expanduser(home), "AppData", "Roaming");
85
+ return path.join(base, "agentera");
86
+ }
87
+ const xdg = env.XDG_DATA_HOME;
88
+ const base = xdg ? expanduser(xdg) : path.join(expanduser(home), ".local", "share");
89
+ return path.join(base, "agentera");
90
+ }
91
+ function linuxDefaultAppHome(env, home) {
92
+ const xdg = env.XDG_DATA_HOME;
93
+ const base = xdg ? expanduser(xdg) : path.join(expanduser(home), ".local", "share");
94
+ return path.join(base, "agentera");
95
+ }
96
+ function macosDefaultAppHome(home) {
97
+ return path.join(expanduser(home), "Library", "Application Support", "agentera");
98
+ }
99
+ function windowsDefaultAppHome(env, home) {
100
+ const appdata = env.APPDATA;
101
+ const base = appdata
102
+ ? expanduser(appdata)
103
+ : path.join(expanduser(home), "AppData", "Roaming");
104
+ return path.join(base, "agentera");
105
+ }
106
+ export function knownPlatformDefaultAppHomes(env, home) {
107
+ return new Set([
108
+ resolvePath(linuxDefaultAppHome(env, home)),
109
+ resolvePath(macosDefaultAppHome(home)),
110
+ resolvePath(windowsDefaultAppHome(env, home)),
111
+ ]);
112
+ }
113
+ export function isForeignPlatformDefaultAppHome(candidate, opts) {
114
+ const resolved = resolvePath(candidate);
115
+ const platformDefault = resolvePath(defaultAppHome(opts.env, opts.home, opts.platform));
116
+ if (resolved === platformDefault) {
117
+ return false;
118
+ }
119
+ return knownPlatformDefaultAppHomes(opts.env, opts.home).has(resolved);
120
+ }
121
+ function classification(root, source, kind, safeAction, managedStatus, staleStatus, missingEvidence, diagnostic, opts = {}) {
122
+ return {
123
+ source,
124
+ source_label: sourceLabel(source),
125
+ path: root,
126
+ kind,
127
+ safe_action: safeAction,
128
+ diagnostic,
129
+ managed_status: managedStatus,
130
+ stale_status: staleStatus,
131
+ missing_evidence: missingEvidence,
132
+ expected_version: opts.expectedVersion ?? null,
133
+ current_version: opts.currentVersion ?? null,
134
+ };
135
+ }
136
+ function managedFresh(root, source, setupMissing, bundleMissing, expected, current) {
137
+ return classification(root, source, "managed_fresh", "use_root", "managed", "fresh", [], {
138
+ code: "install_root.managed_fresh",
139
+ severity: "info",
140
+ message: "Agentera app files are ready",
141
+ evidence: {
142
+ path: root,
143
+ source: sourceLabel(source),
144
+ expectedVersion: expected,
145
+ currentVersion: current,
146
+ missingSetupEvidence: setupMissing,
147
+ missingBundleEvidence: bundleMissing,
148
+ },
149
+ }, { expectedVersion: expected, currentVersion: current });
150
+ }
151
+ function managedStale(root, source, expected, current, missingEvidence, reason, evidence) {
152
+ return classification(root, source, "managed_stale", "preview_refresh", "managed", "stale", missingEvidence, {
153
+ code: "install_root.managed_stale",
154
+ severity: "warning",
155
+ message: "Agentera app files need repair",
156
+ evidence: { path: root, source: sourceLabel(source), reason, ...evidence },
157
+ }, { expectedVersion: expected, currentVersion: current });
158
+ }
159
+ function missingEntries(root, entries) {
160
+ return entries.filter((entry) => !pathExists(path.join(root, entry)));
161
+ }
162
+ function readBundleMarker(root) {
163
+ const marker = path.join(root, BUNDLE_MARKER);
164
+ if (!isFile(marker)) {
165
+ return null;
166
+ }
167
+ try {
168
+ const data = JSON.parse(fs.readFileSync(marker, "utf8"));
169
+ return data && typeof data === "object" && !Array.isArray(data)
170
+ ? data
171
+ : null;
172
+ }
173
+ catch {
174
+ return null;
175
+ }
176
+ }
177
+ function missingScriptCommands(script, commands) {
178
+ if (!isFile(script)) {
179
+ return [...commands];
180
+ }
181
+ let text;
182
+ try {
183
+ text = fs.readFileSync(script, "utf8");
184
+ }
185
+ catch {
186
+ return [...commands];
187
+ }
188
+ return commands.filter((command) => !text.includes(command));
189
+ }
190
+ export function classifyResolvedRoot(rootInput, opts) {
191
+ const root = resolvePath(rootInput);
192
+ const source = opts.source;
193
+ const label = sourceLabel(source);
194
+ const expected = opts.expectedVersion ?? null;
195
+ if (!pathExists(root)) {
196
+ if (source === "default") {
197
+ return classification(root, source, "missing_default", "preview_refresh", "missing", "stale", ["directory", "managed bundle evidence"], {
198
+ code: "install_root.missing_default_root",
199
+ severity: "warning",
200
+ message: "Agentera is not installed in the normal directory yet; a preview can show the repair before anything changes",
201
+ evidence: { path: root, source: label },
202
+ }, { expectedVersion: expected });
203
+ }
204
+ return classification(root, source, "missing_explicit_or_environment", "require_existing_managed_root", "missing", "not_applicable", ["directory", "managed bundle evidence"], {
205
+ code: "install_root.missing_selected_root",
206
+ severity: "error",
207
+ message: "Agentera was told to use a directory that does not exist",
208
+ evidence: { path: root, source: label },
209
+ }, { expectedVersion: expected });
210
+ }
211
+ if (isFile(root)) {
212
+ return classification(root, source, "file_valued_root", "reject_file_path", "invalid", "not_applicable", ["directory"], {
213
+ code: "install_root.file_path",
214
+ severity: "error",
215
+ message: "Agentera was told to use a file instead of a directory",
216
+ evidence: { path: root, source: label },
217
+ }, { expectedVersion: expected });
218
+ }
219
+ const setupMissing = missingEntries(root, SETUP_EVIDENCE);
220
+ const bundleMissing = missingEntries(root, BUNDLE_EVIDENCE);
221
+ const hasSetupEvidence = setupMissing.length === 0;
222
+ const hasBundleEvidence = bundleMissing.length === 0;
223
+ const presentEvidence = MANAGED_EVIDENCE.filter((entry) => pathExists(path.join(root, entry)));
224
+ const marker = readBundleMarker(root);
225
+ const current = marker?.version ?? null;
226
+ if (hasSetupEvidence && !pathExists(path.join(root, BUNDLE_MARKER))) {
227
+ return managedFresh(root, source, setupMissing, bundleMissing, expected, current);
228
+ }
229
+ if (hasBundleEvidence) {
230
+ if (expected !== null && current !== expected) {
231
+ return managedStale(root, source, expected, current, ["current bundle marker/version or required CLI command evidence"], "version_mismatch", {
232
+ expectedVersion: expected,
233
+ currentVersion: current,
234
+ markerPath: path.join(root, BUNDLE_MARKER),
235
+ });
236
+ }
237
+ // Node self-contained model: a marked bundle with current data is fresh; the
238
+ // Python CLI command-probe (scripts/agentera) no longer applies.
239
+ return managedFresh(root, source, setupMissing, bundleMissing, expected, current);
240
+ }
241
+ const managedWithoutMarker = pathExists(path.join(root, "scripts", "agentera")) &&
242
+ pathExists(path.join(root, "skills", "agentera", "SKILL.md")) &&
243
+ pathExists(path.join(root, "registry.json"));
244
+ if (managedWithoutMarker) {
245
+ return managedStale(root, source, expected, current, ["current bundle marker/version or required CLI command evidence"], "missing_marker", {
246
+ expectedVersion: expected,
247
+ currentVersion: current,
248
+ markerPath: path.join(root, BUNDLE_MARKER),
249
+ });
250
+ }
251
+ if (presentEvidence.length > 0) {
252
+ return classification(root, source, "invalid_bundle", "reject_invalid_bundle", "invalid", "unknown", ["valid bundle marker and complete managed bundle evidence"], {
253
+ code: "install_root.invalid_bundle",
254
+ severity: "error",
255
+ message: "This directory looks like a broken Agentera install",
256
+ evidence: {
257
+ path: root,
258
+ source: label,
259
+ presentEvidence,
260
+ missingSetupEvidence: setupMissing,
261
+ missingBundleEvidence: bundleMissing,
262
+ },
263
+ }, { expectedVersion: expected, currentVersion: current });
264
+ }
265
+ return classification(root, source, "unmanaged_directory", "reject_unmanaged_directory", "unmanaged", "not_applicable", ["managed bundle evidence"], {
266
+ code: "install_root.unmanaged_directory",
267
+ severity: "error",
268
+ message: "This directory already has files Agentera does not recognize",
269
+ evidence: { path: root, source: label },
270
+ }, { expectedVersion: expected });
271
+ }
272
+ export function classifyInstallRoot(explicitRoot, opts) {
273
+ const [root, source] = resolveCandidate(explicitRoot, opts);
274
+ return classifyResolvedRoot(root, { source, expectedVersion: opts.expectedVersion ?? null });
275
+ }
276
+ export function formatDiagnostic(c) {
277
+ return `${c.diagnostic.severity}: ${c.diagnostic.message} (${c.path})`;
278
+ }
279
+ //# sourceMappingURL=installRoot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"installRoot.js","sourceRoot":"","sources":["../../src/state/installRoot.ts"],"names":[],"mappings":"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"}