agentera 3.0.0-dev.4 → 3.0.0-dev.41
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.
- package/LICENSE +201 -0
- package/README.md +79 -22
- package/bundle/.agentera-npx-bundle.json +1 -1
- package/bundle/CHANGELOG.md +1261 -0
- package/bundle/DESIGN.md +229 -0
- package/bundle/LICENSE +201 -0
- package/bundle/README.md +136 -0
- package/bundle/UPGRADE.md +201 -0
- package/bundle/extract-corpus-parity.json +21 -0
- package/bundle/fixtures/routing/hybrid-corpus.yaml +154 -0
- package/bundle/references/adapters/package-manifest-interface-model.yaml +42 -252
- package/bundle/references/adapters/package-publication.json +43 -0
- package/bundle/references/adapters/package-registry.yaml +20 -188
- package/bundle/references/adapters/package-surface-characterization.md +59 -48
- package/bundle/references/adapters/runtime-lifecycle-adapters.yaml +74 -0
- package/bundle/references/adapters/runtime-lifecycle-authority.yaml +62 -0
- package/bundle/references/adapters/runtime-lifecycle-operation-contract.yaml +84 -0
- package/bundle/references/adapters/runtime-retired-resources.yaml +97 -0
- package/bundle/references/analysis/benchmark.md +10 -6
- package/bundle/references/analysis/evidence-tier-authority.yaml +518 -0
- package/bundle/references/analysis/startup-measurement-contract.yaml +37 -26
- package/bundle/references/analysis/verification-policy.yaml +143 -0
- package/bundle/references/artifacts/artifact-registry-interface-model.yaml +20 -10
- package/bundle/references/artifacts/glossary-entry-contract.yaml +1254 -0
- package/bundle/references/artifacts/state-storage-authority.yaml +2930 -0
- package/bundle/references/artifacts/verbosity-budget-authority.yaml +42 -0
- package/bundle/references/cli/agent-ready-state-contract.yaml +133 -71
- package/bundle/references/cli/app-lifecycle-vocabulary.yaml +7 -8
- package/bundle/references/cli/audience-namespace-cli-migration.yaml +73 -33
- package/bundle/references/cli/bundle-skill-vocabulary.yaml +12 -49
- package/bundle/references/cli/capability-instruction-contract.yaml +96 -58
- package/bundle/references/cli/capability-instruction-structure.md +144 -0
- package/bundle/references/cli/capability-tool-classification.yaml +14 -14
- package/bundle/references/cli/coexistence-probe.yaml +13 -0
- package/bundle/references/cli/hybrid-route-contract.yaml +416 -0
- package/bundle/references/cli/parity-expected-actual-template.md +30 -0
- package/bundle/references/cli/prime-consumer-compatibility.yaml +701 -0
- package/bundle/references/cli/routing-execution-vocabulary.yaml +16 -38
- package/bundle/references/cli/routing-model.md +139 -0
- package/bundle/references/cli/single-name-protocol.yaml +42 -0
- package/bundle/references/cli/trigger-schema-enrichment.md +140 -0
- package/bundle/references/cli/update-channels.yaml +35 -2
- package/bundle/references/cli/upgrade-repair-wording.md +25 -0
- package/bundle/references/cli/v3-handoff-manifest.schema.yaml +97 -0
- package/bundle/references/cli/vocabulary-index.yaml +23 -18
- package/bundle/references/cli/vocabulary.md +341 -328
- package/bundle/references/meta/documentation-inventory.md +10 -3
- package/bundle/registry.json +14 -14
- package/bundle/skills/agentera/SKILL.md +202 -408
- package/bundle/skills/agentera/capabilities/audit/schemas/artifacts.yaml +84 -0
- package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/exit.yaml +2 -2
- package/bundle/skills/agentera/capabilities/audit/schemas/triggers.yaml +25 -0
- package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/validation.yaml +37 -18
- package/bundle/skills/agentera/capabilities/build/schemas/artifacts.yaml +102 -0
- package/bundle/skills/agentera/capabilities/{realisera → build}/schemas/exit.yaml +6 -5
- package/bundle/skills/agentera/capabilities/build/schemas/triggers.yaml +27 -0
- package/bundle/skills/agentera/capabilities/build/schemas/validation.yaml +176 -0
- package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/artifacts.yaml +12 -12
- package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/exit.yaml +5 -5
- package/bundle/skills/agentera/capabilities/design/schemas/triggers.yaml +16 -0
- package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/validation.yaml +7 -7
- package/bundle/skills/agentera/capabilities/discuss/schemas/artifacts.yaml +51 -0
- package/bundle/skills/agentera/capabilities/{resonera → discuss}/schemas/exit.yaml +2 -2
- package/bundle/skills/agentera/capabilities/discuss/schemas/triggers.yaml +20 -0
- package/bundle/skills/agentera/capabilities/discuss/schemas/validation.yaml +144 -0
- package/bundle/skills/agentera/capabilities/document/schemas/artifacts.yaml +80 -0
- package/bundle/skills/agentera/capabilities/document/schemas/triggers.yaml +16 -0
- package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/validation.yaml +18 -18
- package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/artifacts.yaml +17 -17
- package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/exit.yaml +2 -2
- package/bundle/skills/agentera/capabilities/optimize/schemas/triggers.yaml +16 -0
- package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/validation.yaml +9 -9
- package/bundle/skills/agentera/capabilities/orchestrate/schemas/artifacts.yaml +76 -0
- package/bundle/skills/agentera/capabilities/{orkestrera → orchestrate}/schemas/exit.yaml +9 -7
- package/bundle/skills/agentera/capabilities/orchestrate/schemas/triggers.yaml +23 -0
- package/bundle/skills/agentera/capabilities/orchestrate/schemas/validation.yaml +121 -0
- package/bundle/skills/agentera/capabilities/plan/schemas/artifacts.yaml +66 -0
- package/bundle/skills/agentera/capabilities/{planera → plan}/schemas/exit.yaml +2 -2
- package/bundle/skills/agentera/capabilities/plan/schemas/triggers.yaml +23 -0
- package/bundle/skills/agentera/capabilities/plan/schemas/validation.yaml +121 -0
- package/bundle/skills/agentera/capabilities/profile/schemas/artifacts.yaml +23 -0
- package/bundle/skills/agentera/capabilities/{profilera → profile}/schemas/exit.yaml +6 -5
- package/bundle/skills/agentera/capabilities/profile/schemas/triggers.yaml +20 -0
- package/bundle/skills/agentera/capabilities/profile/schemas/validation.yaml +115 -0
- package/bundle/skills/agentera/capabilities/research/schemas/artifacts.yaml +24 -0
- package/bundle/skills/agentera/capabilities/research/schemas/triggers.yaml +16 -0
- package/bundle/skills/agentera/capabilities/{inspirera → research}/schemas/validation.yaml +2 -2
- package/bundle/skills/agentera/capabilities/status/schemas/artifacts.yaml +73 -0
- package/bundle/skills/agentera/capabilities/status/schemas/triggers.yaml +22 -0
- package/bundle/skills/agentera/capabilities/{hej → status}/schemas/validation.yaml +5 -5
- package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/artifacts.yaml +16 -16
- package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/exit.yaml +7 -6
- package/bundle/skills/agentera/capabilities/vision/schemas/triggers.yaml +23 -0
- package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/validation.yaml +18 -20
- package/bundle/skills/agentera/capability_schema_contract.yaml +200 -37
- package/bundle/skills/agentera/protocol.yaml +31 -31
- package/bundle/skills/agentera/references/contract.md +387 -329
- package/bundle/skills/agentera/route-phrases.yaml +81 -0
- package/bundle/skills/agentera/schemas/artifacts/changelog.yaml +5 -4
- package/bundle/skills/agentera/schemas/artifacts/decisions.yaml +40 -22
- package/bundle/skills/agentera/schemas/artifacts/design.yaml +5 -4
- package/bundle/skills/agentera/schemas/artifacts/docs.yaml +15 -19
- package/bundle/skills/agentera/schemas/artifacts/experiments.yaml +145 -14
- package/bundle/skills/agentera/schemas/artifacts/glossary.yaml +82 -0
- package/bundle/skills/agentera/schemas/artifacts/health.yaml +58 -21
- package/bundle/skills/agentera/schemas/artifacts/objective.yaml +22 -8
- package/bundle/skills/agentera/schemas/artifacts/plan.yaml +419 -33
- package/bundle/skills/agentera/schemas/artifacts/progress.yaml +143 -53
- package/bundle/skills/agentera/schemas/artifacts/todo.yaml +343 -31
- package/bundle/skills/agentera/schemas/artifacts/vision.yaml +3 -3
- package/dist/analytics/extractCorpus/cli.js +191 -0
- package/dist/analytics/extractCorpus/cli.js.map +1 -0
- package/dist/analytics/extractCorpus/copilotSessions.js +276 -0
- package/dist/analytics/extractCorpus/copilotSessions.js.map +1 -0
- package/dist/analytics/extractCorpus/core.js +393 -0
- package/dist/analytics/extractCorpus/core.js.map +1 -0
- package/dist/analytics/extractCorpus/corpus.js +168 -0
- package/dist/analytics/extractCorpus/corpus.js.map +1 -0
- package/dist/analytics/extractCorpus/coverageAudit.js +261 -0
- package/dist/analytics/extractCorpus/coverageAudit.js.map +1 -0
- package/dist/analytics/extractCorpus/cursorSessions.js +426 -0
- package/dist/analytics/extractCorpus/cursorSessions.js.map +1 -0
- package/dist/analytics/extractCorpus/evidenceTiers.js +604 -0
- package/dist/analytics/extractCorpus/evidenceTiers.js.map +1 -0
- package/dist/analytics/extractCorpus/extractCorpusParity.js +106 -0
- package/dist/analytics/extractCorpus/extractCorpusParity.js.map +1 -0
- package/dist/analytics/extractCorpus/filesystemSources.js +119 -0
- package/dist/analytics/extractCorpus/filesystemSources.js.map +1 -0
- package/dist/analytics/extractCorpus/index.js +15 -0
- package/dist/analytics/extractCorpus/index.js.map +1 -0
- package/dist/analytics/extractCorpus/jsonlSessions.js +205 -0
- package/dist/analytics/extractCorpus/jsonlSessions.js.map +1 -0
- package/dist/analytics/extractCorpus/sqliteCaps.js +44 -0
- package/dist/analytics/extractCorpus/sqliteCaps.js.map +1 -0
- package/dist/analytics/extractCorpus/sqliteSessions.js +368 -0
- package/dist/analytics/extractCorpus/sqliteSessions.js.map +1 -0
- package/dist/analytics/extractCorpus/tierReader.js +109 -0
- package/dist/analytics/extractCorpus/tierReader.js.map +1 -0
- package/dist/analytics/extractCorpus.js +2 -1790
- package/dist/analytics/extractCorpus.js.map +1 -1
- package/dist/analytics/glossaryAdviceResolution.js +167 -0
- package/dist/analytics/glossaryAdviceResolution.js.map +1 -0
- package/dist/analytics/glossaryInputAcquisition.js +320 -0
- package/dist/analytics/glossaryInputAcquisition.js.map +1 -0
- package/dist/analytics/personalGlossaryAdmission.js +134 -0
- package/dist/analytics/personalGlossaryAdmission.js.map +1 -0
- package/dist/analytics/personalGlossaryProfile.js +220 -0
- package/dist/analytics/personalGlossaryProfile.js.map +1 -0
- package/dist/analytics/profileSignals.js +212 -0
- package/dist/analytics/profileSignals.js.map +1 -0
- package/dist/analytics/usageStats.js +169 -41
- package/dist/analytics/usageStats.js.map +1 -1
- package/dist/audit/terminologyDrift.js +282 -0
- package/dist/audit/terminologyDrift.js.map +1 -0
- package/dist/bin/agentera.js +3 -1
- package/dist/bin/agentera.js.map +1 -1
- package/dist/capabilities/audit/instructions.js +17 -0
- package/dist/capabilities/audit/instructions.js.map +1 -0
- package/dist/capabilities/build/instructions.js +57 -0
- package/dist/capabilities/build/instructions.js.map +1 -0
- package/dist/capabilities/design/instructions.js +5 -0
- package/dist/capabilities/design/instructions.js.map +1 -0
- package/dist/capabilities/discuss/instructions.js +30 -0
- package/dist/capabilities/discuss/instructions.js.map +1 -0
- package/dist/capabilities/document/instructions.js +12 -0
- package/dist/capabilities/document/instructions.js.map +1 -0
- package/dist/capabilities/index.js +39 -0
- package/dist/capabilities/index.js.map +1 -0
- package/dist/capabilities/optimize/instructions.js +15 -0
- package/dist/capabilities/optimize/instructions.js.map +1 -0
- package/dist/capabilities/orchestrate/instructions.js +41 -0
- package/dist/capabilities/orchestrate/instructions.js.map +1 -0
- package/dist/capabilities/plan/instructions.js +33 -0
- package/dist/capabilities/plan/instructions.js.map +1 -0
- package/dist/capabilities/profile/instructions.js +71 -0
- package/dist/capabilities/profile/instructions.js.map +1 -0
- package/dist/capabilities/research/instructions.js +6 -0
- package/dist/capabilities/research/instructions.js.map +1 -0
- package/dist/capabilities/status/instructions.js +12 -0
- package/dist/capabilities/status/instructions.js.map +1 -0
- package/dist/capabilities/status/startupInstructions.js +39 -0
- package/dist/capabilities/status/startupInstructions.js.map +1 -0
- package/dist/capabilities/vision/instructions.js +5 -0
- package/dist/capabilities/vision/instructions.js.map +1 -0
- package/dist/cli/appContext.js +30 -23
- package/dist/cli/appContext.js.map +1 -1
- package/dist/cli/argvalidate.js.map +1 -1
- package/dist/cli/capabilityContext/benchmark.js +565 -0
- package/dist/cli/capabilityContext/benchmark.js.map +1 -0
- package/dist/cli/capabilityContext/bespoke.js +45 -0
- package/dist/cli/capabilityContext/bespoke.js.map +1 -0
- package/dist/cli/capabilityContext/build.js +244 -0
- package/dist/cli/capabilityContext/build.js.map +1 -0
- package/dist/cli/capabilityContext/closeout.js +235 -0
- package/dist/cli/capabilityContext/closeout.js.map +1 -0
- package/dist/cli/capabilityContext/contract.js +214 -0
- package/dist/cli/capabilityContext/contract.js.map +1 -0
- package/dist/cli/capabilityContext/evidence.js +465 -0
- package/dist/cli/capabilityContext/evidence.js.map +1 -0
- package/dist/cli/capabilityContext/index.js +4 -0
- package/dist/cli/capabilityContext/index.js.map +1 -0
- package/dist/cli/capabilityContext/orchestration.js +133 -0
- package/dist/cli/capabilityContext/orchestration.js.map +1 -0
- package/dist/cli/capabilityContext/planState.js +261 -0
- package/dist/cli/capabilityContext/planState.js.map +1 -0
- package/dist/cli/capabilityContext/progress.js +143 -0
- package/dist/cli/capabilityContext/progress.js.map +1 -0
- package/dist/cli/capabilityContext/projectVerification.js +410 -0
- package/dist/cli/capabilityContext/projectVerification.js.map +1 -0
- package/dist/cli/capabilityContext/shared.js +100 -0
- package/dist/cli/capabilityContext/shared.js.map +1 -0
- package/dist/cli/capabilityContext/slim.js +153 -0
- package/dist/cli/capabilityContext/slim.js.map +1 -0
- package/dist/cli/capabilityContext/startup.js +278 -0
- package/dist/cli/capabilityContext/startup.js.map +1 -0
- package/dist/cli/capabilityContext/types.js +56 -0
- package/dist/cli/capabilityContext/types.js.map +1 -0
- package/dist/cli/capabilityContext.js +1 -2420
- package/dist/cli/capabilityContext.js.map +1 -1
- package/dist/cli/commands/appHome.js +23 -0
- package/dist/cli/commands/appHome.js.map +1 -0
- package/dist/cli/commands/capability.js +3 -10
- package/dist/cli/commands/capability.js.map +1 -1
- package/dist/cli/commands/compact.js +41 -12
- package/dist/cli/commands/compact.js.map +1 -1
- package/dist/cli/commands/doctor.js +34 -99
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/durability.js +82 -0
- package/dist/cli/commands/durability.js.map +1 -0
- package/dist/cli/commands/entityMigrate.js +132 -0
- package/dist/cli/commands/entityMigrate.js.map +1 -0
- package/dist/cli/commands/glossaryAdvice.js +139 -0
- package/dist/cli/commands/glossaryAdvice.js.map +1 -0
- package/dist/cli/commands/lint.js +26 -43
- package/dist/cli/commands/lint.js.map +1 -1
- package/dist/cli/commands/personalGlossary.js +177 -0
- package/dist/cli/commands/personalGlossary.js.map +1 -0
- package/dist/cli/commands/prime/briefOrientation.js +808 -0
- package/dist/cli/commands/prime/briefOrientation.js.map +1 -0
- package/dist/cli/commands/prime/buildExecutionRequest.js +165 -0
- package/dist/cli/commands/prime/buildExecutionRequest.js.map +1 -0
- package/dist/cli/commands/prime/bundleStatus.js +191 -0
- package/dist/cli/commands/prime/bundleStatus.js.map +1 -0
- package/dist/cli/commands/prime/collectEntityOrientation.js +291 -0
- package/dist/cli/commands/prime/collectEntityOrientation.js.map +1 -0
- package/dist/cli/commands/prime/collectOrientationState.js +178 -0
- package/dist/cli/commands/prime/collectOrientationState.js.map +1 -0
- package/dist/cli/commands/prime/orientationOutput.js +377 -0
- package/dist/cli/commands/prime/orientationOutput.js.map +1 -0
- package/dist/cli/commands/prime/types.js +2 -0
- package/dist/cli/commands/prime/types.js.map +1 -0
- package/dist/cli/commands/prime/v1Migration.js +39 -0
- package/dist/cli/commands/prime/v1Migration.js.map +1 -0
- package/dist/cli/commands/prime.js +96 -556
- package/dist/cli/commands/prime.js.map +1 -1
- package/dist/cli/commands/profileGrounding.js +56 -0
- package/dist/cli/commands/profileGrounding.js.map +1 -0
- package/dist/cli/commands/query.js +77 -52
- package/dist/cli/commands/query.js.map +1 -1
- package/dist/cli/commands/report.js +96 -24
- package/dist/cli/commands/report.js.map +1 -1
- package/dist/cli/commands/route.js +142 -0
- package/dist/cli/commands/route.js.map +1 -0
- package/dist/cli/commands/schema.js +258 -105
- package/dist/cli/commands/schema.js.map +1 -1
- package/dist/cli/commands/state/decisions.js +388 -0
- package/dist/cli/commands/state/decisions.js.map +1 -0
- package/dist/cli/commands/state/docs.js +71 -0
- package/dist/cli/commands/state/docs.js.map +1 -0
- package/dist/cli/commands/state/experimentRecords.js +152 -0
- package/dist/cli/commands/state/experimentRecords.js.map +1 -0
- package/dist/cli/commands/state/experiments.js +15 -0
- package/dist/cli/commands/state/experiments.js.map +1 -0
- package/dist/cli/commands/state/get.js +130 -0
- package/dist/cli/commands/state/get.js.map +1 -0
- package/dist/cli/commands/state/health.js +15 -0
- package/dist/cli/commands/state/health.js.map +1 -0
- package/dist/cli/commands/state/index.js +17 -0
- package/dist/cli/commands/state/index.js.map +1 -0
- package/dist/cli/commands/state/list.js +195 -0
- package/dist/cli/commands/state/list.js.map +1 -0
- package/dist/cli/commands/state/objective.js +26 -0
- package/dist/cli/commands/state/objective.js.map +1 -0
- package/dist/cli/commands/state/plan.js +15 -0
- package/dist/cli/commands/state/plan.js.map +1 -0
- package/dist/cli/commands/state/planTasks.js +155 -0
- package/dist/cli/commands/state/planTasks.js.map +1 -0
- package/dist/cli/commands/state/plans.js +155 -0
- package/dist/cli/commands/state/plans.js.map +1 -0
- package/dist/cli/commands/state/progress.js +14 -0
- package/dist/cli/commands/state/progress.js.map +1 -0
- package/dist/cli/commands/state/shared.js +15 -0
- package/dist/cli/commands/state/shared.js.map +1 -0
- package/dist/cli/commands/state/todo.js +43 -0
- package/dist/cli/commands/state/todo.js.map +1 -0
- package/dist/cli/commands/state/write.js +425 -0
- package/dist/cli/commands/state/write.js.map +1 -0
- package/dist/cli/commands/upgrade.js +146 -4
- package/dist/cli/commands/upgrade.js.map +1 -1
- package/dist/cli/commands/upgradeVerify.js +119 -0
- package/dist/cli/commands/upgradeVerify.js.map +1 -0
- package/dist/cli/commands/validate.js +173 -210
- package/dist/cli/commands/validate.js.map +1 -1
- package/dist/cli/commands/verify.js +24 -8
- package/dist/cli/commands/verify.js.map +1 -1
- package/dist/cli/contracts/bundleStatus.js +2 -0
- package/dist/cli/contracts/bundleStatus.js.map +1 -0
- package/dist/cli/contracts/orientationState.js +2 -0
- package/dist/cli/contracts/orientationState.js.map +1 -0
- package/dist/cli/dispatch/argvParser.js +33 -0
- package/dist/cli/dispatch/argvParser.js.map +1 -0
- package/dist/cli/dispatch/check.js +390 -0
- package/dist/cli/dispatch/check.js.map +1 -0
- package/dist/cli/dispatch/commands.js +27 -0
- package/dist/cli/dispatch/commands.js.map +1 -0
- package/dist/cli/dispatch/index.js +234 -0
- package/dist/cli/dispatch/index.js.map +1 -0
- package/dist/cli/dispatch/lifecycle.js +698 -0
- package/dist/cli/dispatch/lifecycle.js.map +1 -0
- package/dist/cli/dispatch/prime.js +140 -0
- package/dist/cli/dispatch/prime.js.map +1 -0
- package/dist/cli/dispatch/shared.js +64 -0
- package/dist/cli/dispatch/shared.js.map +1 -0
- package/dist/cli/dispatch/state.js +141 -0
- package/dist/cli/dispatch/state.js.map +1 -0
- package/dist/cli/dispatch.js +1 -995
- package/dist/cli/dispatch.js.map +1 -1
- package/dist/cli/errors.js +53 -0
- package/dist/cli/errors.js.map +1 -0
- package/dist/cli/help.js +356 -30
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/migrationRequired.js +89 -0
- package/dist/cli/migrationRequired.js.map +1 -0
- package/dist/cli/orientation/attention.js +72 -0
- package/dist/cli/orientation/attention.js.map +1 -0
- package/dist/cli/orientation/corpusCoverage.js +103 -0
- package/dist/cli/orientation/corpusCoverage.js.map +1 -0
- package/dist/cli/orientation.js +443 -172
- package/dist/cli/orientation.js.map +1 -1
- package/dist/cli/planArtifacts.js +351 -0
- package/dist/cli/planArtifacts.js.map +1 -0
- package/dist/cli/planEvidence.js +158 -0
- package/dist/cli/planEvidence.js.map +1 -0
- package/dist/cli/planLifecycleState.js +36 -0
- package/dist/cli/planLifecycleState.js.map +1 -0
- package/dist/cli/planTaskIndex.js +12 -0
- package/dist/cli/planTaskIndex.js.map +1 -0
- package/dist/cli/prime-blob.js +70 -2
- package/dist/cli/prime-blob.js.map +1 -1
- package/dist/cli/profileAcquisition.js +168 -0
- package/dist/cli/profileAcquisition.js.map +1 -0
- package/dist/cli/startupCompletenessContract.js +60 -0
- package/dist/cli/startupCompletenessContract.js.map +1 -0
- package/dist/cli/stateQuery.js +63 -10
- package/dist/cli/stateQuery.js.map +1 -1
- package/dist/cli/structured.js.map +1 -1
- package/dist/cli/todoMarkdown.js +47 -0
- package/dist/cli/todoMarkdown.js.map +1 -0
- package/dist/cli/todoReadinessSelection.js +192 -0
- package/dist/cli/todoReadinessSelection.js.map +1 -0
- package/dist/cli/todoSeverity.js +19 -0
- package/dist/cli/todoSeverity.js.map +1 -0
- package/dist/core/atomicWriter.js +21 -0
- package/dist/core/atomicWriter.js.map +1 -0
- package/dist/core/difflib.js.map +1 -1
- package/dist/core/envPaths.js +21 -0
- package/dist/core/envPaths.js.map +1 -0
- package/dist/core/jsonValue.js +6 -0
- package/dist/core/jsonValue.js.map +1 -0
- package/dist/core/paths.js.map +1 -1
- package/dist/core/pyjson.js +67 -2
- package/dist/core/pyjson.js.map +1 -1
- package/dist/core/shell.js +5 -0
- package/dist/core/shell.js.map +1 -0
- package/dist/core/skillIdentity.js +24 -0
- package/dist/core/skillIdentity.js.map +1 -0
- package/dist/core/sourceRoot.js.map +1 -1
- package/dist/core/text.js +11 -0
- package/dist/core/text.js.map +1 -0
- package/dist/core/toml.js.map +1 -1
- package/dist/core/yaml.js +8 -0
- package/dist/core/yaml.js.map +1 -1
- package/dist/eval/evalSkills.js +30 -25
- package/dist/eval/evalSkills.js.map +1 -1
- package/dist/eval/hybridRouteEvaluation.js +156 -0
- package/dist/eval/hybridRouteEvaluation.js.map +1 -0
- package/dist/eval/semanticEval.js +43 -19
- package/dist/eval/semanticEval.js.map +1 -1
- package/dist/eval/semanticFixtures.js +16 -4
- package/dist/eval/semanticFixtures.js.map +1 -1
- package/dist/hooks/common.js +10 -27
- package/dist/hooks/common.js.map +1 -1
- package/dist/hooks/compaction/apply.js +447 -0
- package/dist/hooks/compaction/apply.js.map +1 -0
- package/dist/hooks/compaction/dryRun.js +185 -0
- package/dist/hooks/compaction/dryRun.js.map +1 -0
- package/dist/hooks/compaction/index.js +23 -0
- package/dist/hooks/compaction/index.js.map +1 -0
- package/dist/hooks/compaction/parse.js +326 -0
- package/dist/hooks/compaction/parse.js.map +1 -0
- package/dist/hooks/compaction/retention.js +203 -0
- package/dist/hooks/compaction/retention.js.map +1 -0
- package/dist/hooks/compaction/status.js +361 -0
- package/dist/hooks/compaction/status.js.map +1 -0
- package/dist/hooks/compaction/types.js +6 -0
- package/dist/hooks/compaction/types.js.map +1 -0
- package/dist/hooks/cursorPreToolUse.js +1 -1
- package/dist/hooks/cursorPreToolUse.js.map +1 -1
- package/dist/hooks/cursorSessionStart.js +14 -21
- package/dist/hooks/cursorSessionStart.js.map +1 -1
- package/dist/hooks/projectHookInput.js +26 -0
- package/dist/hooks/projectHookInput.js.map +1 -0
- package/dist/hooks/sessionStart.js +55 -170
- package/dist/hooks/sessionStart.js.map +1 -1
- package/dist/hooks/sessionStop.js +12 -26
- package/dist/hooks/sessionStop.js.map +1 -1
- package/dist/hooks/validateArtifact/agentFacing.js +10 -0
- package/dist/hooks/validateArtifact/agentFacing.js.map +1 -0
- package/dist/hooks/validateArtifact/index.js +151 -0
- package/dist/hooks/validateArtifact/index.js.map +1 -0
- package/dist/hooks/validateArtifact/markdown.js +146 -0
- package/dist/hooks/validateArtifact/markdown.js.map +1 -0
- package/dist/hooks/validateArtifact/runtime.js +86 -0
- package/dist/hooks/validateArtifact/runtime.js.map +1 -0
- package/dist/hooks/validateArtifact/schema.js +547 -0
- package/dist/hooks/validateArtifact/schema.js.map +1 -0
- package/dist/hooks/validateArtifact/traversal.js +108 -0
- package/dist/hooks/validateArtifact/traversal.js.map +1 -0
- package/dist/hooks/validateArtifact/violations.js +108 -0
- package/dist/hooks/validateArtifact/violations.js.map +1 -0
- package/dist/migrate/v2HandoffManifest.js +455 -0
- package/dist/migrate/v2HandoffManifest.js.map +1 -0
- package/dist/registries/artifactProtocolIds.js +79 -0
- package/dist/registries/artifactProtocolIds.js.map +1 -0
- package/dist/registries/artifactRegistry.js +224 -62
- package/dist/registries/artifactRegistry.js.map +1 -1
- package/dist/registries/artifactSchemaProjection.js +46 -0
- package/dist/registries/artifactSchemaProjection.js.map +1 -0
- package/dist/registries/capabilityContract.js +141 -12
- package/dist/registries/capabilityContract.js.map +1 -1
- package/dist/registries/evaluatorHandoffContract.js +171 -0
- package/dist/registries/evaluatorHandoffContract.js.map +1 -0
- package/dist/registries/evidenceTierContract.js +372 -0
- package/dist/registries/evidenceTierContract.js.map +1 -0
- package/dist/registries/glossaryAdviceContract.js +79 -0
- package/dist/registries/glossaryAdviceContract.js.map +1 -0
- package/dist/registries/glossaryCaveatContract.js +68 -0
- package/dist/registries/glossaryCaveatContract.js.map +1 -0
- package/dist/registries/glossaryConsumerContractValidation.js +788 -0
- package/dist/registries/glossaryConsumerContractValidation.js.map +1 -0
- package/dist/registries/glossaryEntryContract.js +757 -0
- package/dist/registries/glossaryEntryContract.js.map +1 -0
- package/dist/registries/glossaryTermIdentity.js +18 -0
- package/dist/registries/glossaryTermIdentity.js.map +1 -0
- package/dist/registries/glossaryTermOccurrence.js +21 -0
- package/dist/registries/glossaryTermOccurrence.js.map +1 -0
- package/dist/registries/hybridRoute.js +203 -0
- package/dist/registries/hybridRoute.js.map +1 -0
- package/dist/registries/hybridRouteReceipt.js +221 -0
- package/dist/registries/hybridRouteReceipt.js.map +1 -0
- package/dist/registries/packageRegistry.js +90 -230
- package/dist/registries/packageRegistry.js.map +1 -1
- package/dist/registries/todoReadinessContract.js +449 -0
- package/dist/registries/todoReadinessContract.js.map +1 -0
- package/dist/registries/triggerLoader.js +175 -0
- package/dist/registries/triggerLoader.js.map +1 -0
- package/dist/registries/verbosityBudgetContract.js +206 -0
- package/dist/registries/verbosityBudgetContract.js.map +1 -0
- package/dist/release/releaseMetadata.js +319 -0
- package/dist/release/releaseMetadata.js.map +1 -0
- package/dist/runtime/lifecycleAdapterContract.js +458 -0
- package/dist/runtime/lifecycleAdapterContract.js.map +1 -0
- package/dist/runtime/lifecycleAdapters.js +778 -0
- package/dist/runtime/lifecycleAdapters.js.map +1 -0
- package/dist/runtime/lifecycleAuthority.js +454 -0
- package/dist/runtime/lifecycleAuthority.js.map +1 -0
- package/dist/runtime/lifecycleOperationContract.js +114 -0
- package/dist/runtime/lifecycleOperationContract.js.map +1 -0
- package/dist/runtime/lifecycleOperations.js +635 -0
- package/dist/runtime/lifecycleOperations.js.map +1 -0
- package/dist/runtime/lifecycleOwnershipJournal.js +623 -0
- package/dist/runtime/lifecycleOwnershipJournal.js.map +1 -0
- package/dist/runtime/lifecyclePublication.js +416 -0
- package/dist/runtime/lifecyclePublication.js.map +1 -0
- package/dist/runtime/lifecycleSnapshot.js +439 -0
- package/dist/runtime/lifecycleSnapshot.js.map +1 -0
- package/dist/runtime/nativeResourceCleanup.js +317 -0
- package/dist/runtime/nativeResourceCleanup.js.map +1 -0
- package/dist/setup/codex/cli.js +130 -0
- package/dist/setup/codex/cli.js.map +1 -0
- package/dist/setup/codex/configToml.js +558 -0
- package/dist/setup/codex/configToml.js.map +1 -0
- package/dist/setup/codex/constants.js +14 -0
- package/dist/setup/codex/constants.js.map +1 -0
- package/dist/setup/codex/installRoot.js +64 -0
- package/dist/setup/codex/installRoot.js.map +1 -0
- package/dist/setup/codex/state.js +252 -0
- package/dist/setup/codex/state.js.map +1 -0
- package/dist/setup/codex.js +9 -1055
- package/dist/setup/codex.js.map +1 -1
- package/dist/setup/opencode.js +21 -0
- package/dist/setup/opencode.js.map +1 -0
- package/dist/setup/opencodeConstants.js +2 -0
- package/dist/setup/opencodeConstants.js.map +1 -0
- package/dist/setup/sharedSkill.js +46 -0
- package/dist/setup/sharedSkill.js.map +1 -0
- package/dist/setup/smokeChecks.js +24 -53
- package/dist/setup/smokeChecks.js.map +1 -1
- package/dist/state/archiveDiscovery.js +581 -0
- package/dist/state/archiveDiscovery.js.map +1 -0
- package/dist/state/archivePublication.js +226 -0
- package/dist/state/archivePublication.js.map +1 -0
- package/dist/state/archiveRecovery.js +238 -0
- package/dist/state/archiveRecovery.js.map +1 -0
- package/dist/state/archiveReplay.js +54 -0
- package/dist/state/archiveReplay.js.map +1 -0
- package/dist/state/canonicalMigrationRecord.js +37 -0
- package/dist/state/canonicalMigrationRecord.js.map +1 -0
- package/dist/state/changelog.js +222 -0
- package/dist/state/changelog.js.map +1 -0
- package/dist/state/decisionEntities.js +368 -0
- package/dist/state/decisionEntities.js.map +1 -0
- package/dist/state/decisionLegacyValidation.js +216 -0
- package/dist/state/decisionLegacyValidation.js.map +1 -0
- package/dist/state/decisionMigrationProvenance.js +200 -0
- package/dist/state/decisionMigrationProvenance.js.map +1 -0
- package/dist/state/decisionOverlay.js +255 -0
- package/dist/state/decisionOverlay.js.map +1 -0
- package/dist/state/decisionRevision.js +257 -0
- package/dist/state/decisionRevision.js.map +1 -0
- package/dist/state/decisionRevisionMigration.js +90 -0
- package/dist/state/decisionRevisionMigration.js.map +1 -0
- package/dist/state/directRetrieval.js +324 -0
- package/dist/state/directRetrieval.js.map +1 -0
- package/dist/state/durability.js +325 -0
- package/dist/state/durability.js.map +1 -0
- package/dist/state/entityCutover.js +294 -0
- package/dist/state/entityCutover.js.map +1 -0
- package/dist/state/entityCutoverGit.js +128 -0
- package/dist/state/entityCutoverGit.js.map +1 -0
- package/dist/state/entityGlossaryAuthority.js +14 -0
- package/dist/state/entityGlossaryAuthority.js.map +1 -0
- package/dist/state/entityListProjection.js +188 -0
- package/dist/state/entityListProjection.js.map +1 -0
- package/dist/state/entityListRuntimeRegistry.js +50 -0
- package/dist/state/entityListRuntimeRegistry.js.map +1 -0
- package/dist/state/entityMigrationCausality.js +99 -0
- package/dist/state/entityMigrationCausality.js.map +1 -0
- package/dist/state/entityMigrationIdentity.js +6 -0
- package/dist/state/entityMigrationIdentity.js.map +1 -0
- package/dist/state/entityMigrationPreview.js +884 -0
- package/dist/state/entityMigrationPreview.js.map +1 -0
- package/dist/state/entityPublicationContext.js +807 -0
- package/dist/state/entityPublicationContext.js.map +1 -0
- package/dist/state/entityRetrievalHelp.js +476 -0
- package/dist/state/entityRetrievalHelp.js.map +1 -0
- package/dist/state/entityStorage.js +897 -0
- package/dist/state/entityStorage.js.map +1 -0
- package/dist/state/exactReplacementRecovery.js +19 -0
- package/dist/state/exactReplacementRecovery.js.map +1 -0
- package/dist/state/experimentArchive.js +64 -0
- package/dist/state/experimentArchive.js.map +1 -0
- package/dist/state/experimentIdentity.js +203 -0
- package/dist/state/experimentIdentity.js.map +1 -0
- package/dist/state/healthEntities.js +263 -0
- package/dist/state/healthEntities.js.map +1 -0
- package/dist/state/healthEntityValidation.js +19 -0
- package/dist/state/healthEntityValidation.js.map +1 -0
- package/dist/state/healthRepair.js +70 -0
- package/dist/state/healthRepair.js.map +1 -0
- package/dist/state/installRoot.js +64 -24
- package/dist/state/installRoot.js.map +1 -1
- package/dist/state/legacyEntityCutoverEvidence.js +66 -0
- package/dist/state/legacyEntityCutoverEvidence.js.map +1 -0
- package/dist/state/legacyIdentity.js +48 -0
- package/dist/state/legacyIdentity.js.map +1 -0
- package/dist/state/legacySummaryRecord.js +7 -0
- package/dist/state/legacySummaryRecord.js.map +1 -0
- package/dist/state/listAccounting.js +55 -0
- package/dist/state/listAccounting.js.map +1 -0
- package/dist/state/listClassification.js +18 -0
- package/dist/state/listClassification.js.map +1 -0
- package/dist/state/listCursor.js +43 -0
- package/dist/state/listCursor.js.map +1 -0
- package/dist/state/listRetrieval.js +782 -0
- package/dist/state/listRetrieval.js.map +1 -0
- package/dist/state/migrationSourceBinding.js +31 -0
- package/dist/state/migrationSourceBinding.js.map +1 -0
- package/dist/state/objectiveExperimentEntities.js +323 -0
- package/dist/state/objectiveExperimentEntities.js.map +1 -0
- package/dist/state/planEntities.js +531 -0
- package/dist/state/planEntities.js.map +1 -0
- package/dist/state/planIdentity.js +48 -0
- package/dist/state/planIdentity.js.map +1 -0
- package/dist/state/planRetrieval.js +314 -0
- package/dist/state/planRetrieval.js.map +1 -0
- package/dist/state/planTaskRetrieval.js +295 -0
- package/dist/state/planTaskRetrieval.js.map +1 -0
- package/dist/state/progressEntities.js +513 -0
- package/dist/state/progressEntities.js.map +1 -0
- package/dist/state/progressGlossaryCaveat.js +169 -0
- package/dist/state/progressGlossaryCaveat.js.map +1 -0
- package/dist/state/progressPublicationOrder.js +20 -0
- package/dist/state/progressPublicationOrder.js.map +1 -0
- package/dist/state/projectRoot.js +63 -0
- package/dist/state/projectRoot.js.map +1 -0
- package/dist/state/projectionPolicy.js +191 -0
- package/dist/state/projectionPolicy.js.map +1 -0
- package/dist/state/retrievalAuthority.js +157 -0
- package/dist/state/retrievalAuthority.js.map +1 -0
- package/dist/state/safeProjectFile.js +156 -0
- package/dist/state/safeProjectFile.js.map +1 -0
- package/dist/state/startupAnalysis/benchmark.js +433 -0
- package/dist/state/startupAnalysis/benchmark.js.map +1 -0
- package/dist/state/startupAnalysis/contract.js +126 -0
- package/dist/state/startupAnalysis/contract.js.map +1 -0
- package/dist/state/startupAnalysis/helpers.js +287 -0
- package/dist/state/startupAnalysis/helpers.js.map +1 -0
- package/dist/state/startupAnalysis/index.js +7 -0
- package/dist/state/startupAnalysis/index.js.map +1 -0
- package/dist/state/startupAnalysis/metrics.js +341 -0
- package/dist/state/startupAnalysis/metrics.js.map +1 -0
- package/dist/state/startupAnalysis/records.js +199 -0
- package/dist/state/startupAnalysis/records.js.map +1 -0
- package/dist/state/startupAnalysis/report.js +112 -0
- package/dist/state/startupAnalysis/report.js.map +1 -0
- package/dist/state/startupAnalysis/threshold.js +513 -0
- package/dist/state/startupAnalysis/threshold.js.map +1 -0
- package/dist/state/startupAnalysis.js +2 -1952
- package/dist/state/startupAnalysis.js.map +1 -1
- package/dist/state/startupProjection.js +499 -0
- package/dist/state/startupProjection.js.map +1 -0
- package/dist/state/stateMode.js +86 -0
- package/dist/state/stateMode.js.map +1 -0
- package/dist/state/stateStorageAuthority.js +48 -0
- package/dist/state/stateStorageAuthority.js.map +1 -0
- package/dist/state/summaryEntityRead.js +26 -0
- package/dist/state/summaryEntityRead.js.map +1 -0
- package/dist/state/summaryMigrationProvenance.js +67 -0
- package/dist/state/summaryMigrationProvenance.js.map +1 -0
- package/dist/state/summarySourceRowAuthority.js +37 -0
- package/dist/state/summarySourceRowAuthority.js.map +1 -0
- package/dist/state/todoDocsEntities.js +986 -0
- package/dist/state/todoDocsEntities.js.map +1 -0
- package/dist/state/todoDocsEntityValidation.js +159 -0
- package/dist/state/todoDocsEntityValidation.js.map +1 -0
- package/dist/state/todoReconciliationActivation.js +63 -0
- package/dist/state/todoReconciliationActivation.js.map +1 -0
- package/dist/state/todoReconciliationTransaction.js +554 -0
- package/dist/state/todoReconciliationTransaction.js.map +1 -0
- package/dist/state/write/assign.js +21 -0
- package/dist/state/write/assign.js.map +1 -0
- package/dist/state/write/candidateMutation.js +270 -0
- package/dist/state/write/candidateMutation.js.map +1 -0
- package/dist/state/write/errors.js +12 -0
- package/dist/state/write/errors.js.map +1 -0
- package/dist/state/write/experimentPublication.js +193 -0
- package/dist/state/write/experimentPublication.js.map +1 -0
- package/dist/state/write/explain.js +333 -0
- package/dist/state/write/explain.js.map +1 -0
- package/dist/state/write/fields.js +62 -0
- package/dist/state/write/fields.js.map +1 -0
- package/dist/state/write/glossaryPublication.js +264 -0
- package/dist/state/write/glossaryPublication.js.map +1 -0
- package/dist/state/write/grammar.js +271 -0
- package/dist/state/write/grammar.js.map +1 -0
- package/dist/state/write/helpers.js +30 -0
- package/dist/state/write/helpers.js.map +1 -0
- package/dist/state/write/index.js +13 -0
- package/dist/state/write/index.js.map +1 -0
- package/dist/state/write/input.js +368 -0
- package/dist/state/write/input.js.map +1 -0
- package/dist/state/write/lock.js +838 -0
- package/dist/state/write/lock.js.map +1 -0
- package/dist/state/write/mutation.js +235 -0
- package/dist/state/write/mutation.js.map +1 -0
- package/dist/state/write/operations.js +170 -0
- package/dist/state/write/operations.js.map +1 -0
- package/dist/state/write/planEvaluation.js +129 -0
- package/dist/state/write/planEvaluation.js.map +1 -0
- package/dist/state/write/planPublication.js +180 -0
- package/dist/state/write/planPublication.js.map +1 -0
- package/dist/state/write/runtimeOperations.js +65 -0
- package/dist/state/write/runtimeOperations.js.map +1 -0
- package/dist/state/write/serialize.js +2 -0
- package/dist/state/write/serialize.js.map +1 -0
- package/dist/state/write/transaction.js +53 -0
- package/dist/state/write/transaction.js.map +1 -0
- package/dist/state/write/validate.js +8 -0
- package/dist/state/write/validate.js.map +1 -0
- package/dist/upgrade/appContentRefresh.js +384 -0
- package/dist/upgrade/appContentRefresh.js.map +1 -0
- package/dist/upgrade/appModel.js +8 -6
- package/dist/upgrade/appModel.js.map +1 -1
- package/dist/upgrade/atomicWriter.js +2 -0
- package/dist/upgrade/atomicWriter.js.map +1 -0
- package/dist/upgrade/bundleEvidence.js +34 -0
- package/dist/upgrade/bundleEvidence.js.map +1 -0
- package/dist/upgrade/channels.js +12 -7
- package/dist/upgrade/channels.js.map +1 -1
- package/dist/upgrade/coexistenceProbe.js +105 -0
- package/dist/upgrade/coexistenceProbe.js.map +1 -0
- package/dist/upgrade/compatibility.js +56 -20
- package/dist/upgrade/compatibility.js.map +1 -1
- package/dist/upgrade/doctor.js +197 -191
- package/dist/upgrade/doctor.js.map +1 -1
- package/dist/upgrade/doctorClassifier.js +188 -0
- package/dist/upgrade/doctorClassifier.js.map +1 -0
- package/dist/upgrade/installedHooksRetirement.js +197 -0
- package/dist/upgrade/installedHooksRetirement.js.map +1 -0
- package/dist/upgrade/legacyAgentCleanup.js +283 -0
- package/dist/upgrade/legacyAgentCleanup.js.map +1 -0
- package/dist/upgrade/lifecycleUpgrade.js +114 -0
- package/dist/upgrade/lifecycleUpgrade.js.map +1 -0
- package/dist/upgrade/migrateArtifactsV2ToV3.js +363 -137
- package/dist/upgrade/migrateArtifactsV2ToV3.js.map +1 -1
- package/dist/upgrade/migrationPublication.js +123 -0
- package/dist/upgrade/migrationPublication.js.map +1 -0
- package/dist/upgrade/nextMajorDoctor.js +156 -0
- package/dist/upgrade/nextMajorDoctor.js.map +1 -0
- package/dist/upgrade/npxPlatformStatus.js +23 -0
- package/dist/upgrade/npxPlatformStatus.js.map +1 -0
- package/dist/upgrade/projectIntegration.js +142 -171
- package/dist/upgrade/projectIntegration.js.map +1 -1
- package/dist/upgrade/projectIntegrationDecision.js +51 -0
- package/dist/upgrade/projectIntegrationDecision.js.map +1 -0
- package/dist/upgrade/runtimeMigration.js +336 -281
- package/dist/upgrade/runtimeMigration.js.map +1 -1
- package/dist/upgrade/upgradeCommands.js +9 -0
- package/dist/upgrade/upgradeCommands.js.map +1 -1
- package/dist/upgrade/upgradeLock.js +86 -0
- package/dist/upgrade/upgradeLock.js.map +1 -0
- package/dist/upgrade/upgradeOrchestrator.js +217 -56
- package/dist/upgrade/upgradeOrchestrator.js.map +1 -1
- package/dist/upgrade/v3CapabilitySurface.js +15 -0
- package/dist/upgrade/v3CapabilitySurface.js.map +1 -0
- package/dist/upgrade/versionResolution.js +12 -4
- package/dist/upgrade/versionResolution.js.map +1 -1
- package/dist/validate/appHomeContract.js +5 -9
- package/dist/validate/appHomeContract.js.map +1 -1
- package/dist/validate/capability.js +144 -14
- package/dist/validate/capability.js.map +1 -1
- package/dist/validate/crossCapability.js +15 -9
- package/dist/validate/crossCapability.js.map +1 -1
- package/dist/validate/selfAudit.js +73 -36
- package/dist/validate/selfAudit.js.map +1 -1
- package/dist/validate/v1LegacyCruft.js +141 -0
- package/dist/validate/v1LegacyCruft.js.map +1 -0
- package/dist/validate/vocabularyAuthority.js +305 -0
- package/dist/validate/vocabularyAuthority.js.map +1 -0
- package/package.json +46 -27
- package/bundle/references/adapters/cursor.md +0 -213
- package/bundle/references/adapters/opencode.md +0 -530
- package/bundle/references/adapters/runtime-adapter-characterization.md +0 -79
- package/bundle/references/adapters/runtime-adapter-interface-model.yaml +0 -200
- package/bundle/references/adapters/runtime-adapter-registry.yaml +0 -548
- package/bundle/references/adapters/runtime-feature-parity.md +0 -189
- package/bundle/references/v1-section-mapping.md +0 -47
- package/bundle/skills/agentera/.claude-plugin/plugin.json +0 -27
- package/bundle/skills/agentera/agents/dokumentera.toml +0 -6
- package/bundle/skills/agentera/agents/hej.toml +0 -6
- package/bundle/skills/agentera/agents/inspektera.toml +0 -6
- package/bundle/skills/agentera/agents/inspirera.toml +0 -6
- package/bundle/skills/agentera/agents/optimera.toml +0 -6
- package/bundle/skills/agentera/agents/orkestrera.toml +0 -6
- package/bundle/skills/agentera/agents/planera.toml +0 -6
- package/bundle/skills/agentera/agents/profilera.toml +0 -6
- package/bundle/skills/agentera/agents/realisera.toml +0 -6
- package/bundle/skills/agentera/agents/resonera.toml +0 -6
- package/bundle/skills/agentera/agents/visionera.toml +0 -6
- package/bundle/skills/agentera/agents/visualisera.toml +0 -6
- package/bundle/skills/agentera/capabilities/dokumentera/instructions.md +0 -428
- package/bundle/skills/agentera/capabilities/dokumentera/schemas/artifacts.yaml +0 -73
- package/bundle/skills/agentera/capabilities/dokumentera/schemas/triggers.yaml +0 -35
- package/bundle/skills/agentera/capabilities/hej/instructions.md +0 -331
- package/bundle/skills/agentera/capabilities/hej/schemas/artifacts.yaml +0 -69
- package/bundle/skills/agentera/capabilities/hej/schemas/triggers.yaml +0 -58
- package/bundle/skills/agentera/capabilities/inspektera/instructions.md +0 -514
- package/bundle/skills/agentera/capabilities/inspektera/schemas/artifacts.yaml +0 -76
- package/bundle/skills/agentera/capabilities/inspektera/schemas/triggers.yaml +0 -38
- package/bundle/skills/agentera/capabilities/inspirera/instructions.md +0 -280
- package/bundle/skills/agentera/capabilities/inspirera/schemas/artifacts.yaml +0 -24
- package/bundle/skills/agentera/capabilities/inspirera/schemas/triggers.yaml +0 -34
- package/bundle/skills/agentera/capabilities/optimera/instructions.md +0 -437
- package/bundle/skills/agentera/capabilities/optimera/schemas/triggers.yaml +0 -39
- package/bundle/skills/agentera/capabilities/orkestrera/instructions.md +0 -433
- package/bundle/skills/agentera/capabilities/orkestrera/schemas/artifacts.yaml +0 -64
- package/bundle/skills/agentera/capabilities/orkestrera/schemas/triggers.yaml +0 -42
- package/bundle/skills/agentera/capabilities/orkestrera/schemas/validation.yaml +0 -107
- package/bundle/skills/agentera/capabilities/planera/instructions.md +0 -368
- package/bundle/skills/agentera/capabilities/planera/schemas/artifacts.yaml +0 -62
- package/bundle/skills/agentera/capabilities/planera/schemas/triggers.yaml +0 -34
- package/bundle/skills/agentera/capabilities/planera/schemas/validation.yaml +0 -61
- package/bundle/skills/agentera/capabilities/profilera/instructions.md +0 -419
- package/bundle/skills/agentera/capabilities/profilera/schemas/artifacts.yaml +0 -18
- package/bundle/skills/agentera/capabilities/profilera/schemas/triggers.yaml +0 -45
- package/bundle/skills/agentera/capabilities/profilera/schemas/validation.yaml +0 -57
- package/bundle/skills/agentera/capabilities/realisera/instructions.md +0 -403
- package/bundle/skills/agentera/capabilities/realisera/schemas/artifacts.yaml +0 -80
- package/bundle/skills/agentera/capabilities/realisera/schemas/triggers.yaml +0 -39
- package/bundle/skills/agentera/capabilities/realisera/schemas/validation.yaml +0 -110
- package/bundle/skills/agentera/capabilities/resonera/instructions.md +0 -329
- package/bundle/skills/agentera/capabilities/resonera/schemas/artifacts.yaml +0 -47
- package/bundle/skills/agentera/capabilities/resonera/schemas/triggers.yaml +0 -46
- package/bundle/skills/agentera/capabilities/resonera/schemas/validation.yaml +0 -77
- package/bundle/skills/agentera/capabilities/visionera/instructions.md +0 -309
- package/bundle/skills/agentera/capabilities/visionera/schemas/triggers.yaml +0 -41
- package/bundle/skills/agentera/capabilities/visualisera/instructions.md +0 -400
- package/bundle/skills/agentera/capabilities/visualisera/schemas/triggers.yaml +0 -33
- package/bundle/skills/hej/.claude-plugin/plugin.json +0 -6
- package/bundle/skills/hej/SKILL.md +0 -69
- package/bundle/skills/hej/agents/hej.toml +0 -11
- package/bundle/skills/hej/agents/openai.yaml +0 -8
- package/dist/cli/commands/backfill.js +0 -84
- package/dist/cli/commands/backfill.js.map +0 -1
- package/dist/cli/commands/state.js +0 -1012
- package/dist/cli/commands/state.js.map +0 -1
- package/dist/core/git.js +0 -43
- package/dist/core/git.js.map +0 -1
- package/dist/hooks/compaction.js +0 -935
- package/dist/hooks/compaction.js.map +0 -1
- package/dist/hooks/validateArtifact.js +0 -933
- package/dist/hooks/validateArtifact.js.map +0 -1
- package/dist/registries/runtimeAdapterRegistry.js +0 -315
- package/dist/registries/runtimeAdapterRegistry.js.map +0 -1
- package/dist/setup/copilot.js +0 -227
- package/dist/setup/copilot.js.map +0 -1
- package/dist/setup/cursor.js +0 -127
- package/dist/setup/cursor.js.map +0 -1
- package/dist/setup/doctor.js +0 -1297
- package/dist/setup/doctor.js.map +0 -1
- package/dist/state/progressCommit.js +0 -289
- package/dist/state/progressCommit.js.map +0 -1
- package/dist/upgrade/migrateArtifactsV1ToV2.js +0 -571
- package/dist/upgrade/migrateArtifactsV1ToV2.js.map +0 -1
- package/dist/validate/lifecycleAdapters.js +0 -772
- package/dist/validate/lifecycleAdapters.js.map +0 -1
- /package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/exit.yaml +0 -0
- /package/bundle/skills/agentera/capabilities/{inspirera → research}/schemas/exit.yaml +0 -0
- /package/bundle/skills/agentera/capabilities/{hej → status}/schemas/exit.yaml +0 -0
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
import fs from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { resolvePath } from "../core/paths.js";
|
|
4
|
+
import { resolveSourceRoot } from "../core/sourceRoot.js";
|
|
5
|
+
import { loadYamlMappingFile } from "../core/yaml.js";
|
|
6
|
+
import { APP_MANUAL_REVIEW_NEEDED, APP_MIGRATION_NEEDED, APP_OUTDATED, APP_REPAIR_NEEDED, APP_UP_TO_DATE, } from "../upgrade/doctor.js";
|
|
7
|
+
import { validateGlossaryEntryContract } from "../registries/glossaryEntryContract.js";
|
|
8
|
+
/**
|
|
9
|
+
* Validate vocabulary authority YAML contracts (Decision 54 lifecycle status
|
|
10
|
+
* vocabulary, Decision 57 first_invocation_read, update channels, index order).
|
|
11
|
+
* Emits the same delegated validate envelope shape as lifecycle-adapters.
|
|
12
|
+
*/
|
|
13
|
+
const EXPECTED_STATUSES = [
|
|
14
|
+
"up_to_date",
|
|
15
|
+
"outdated",
|
|
16
|
+
"repair_needed",
|
|
17
|
+
"migration_needed",
|
|
18
|
+
"manual_review_needed",
|
|
19
|
+
"ready_to_apply",
|
|
20
|
+
"applied",
|
|
21
|
+
"no_changes_needed",
|
|
22
|
+
];
|
|
23
|
+
const EXPECTED_VERBS = ["install", "repair", "update", "migrate", "upgrade", "refresh"];
|
|
24
|
+
const EXPECTED_LIFECYCLE_CONSUMERS = ["doctor", "status", "upgrade", "docs", "tests"];
|
|
25
|
+
const EXPECTED_CHANNELS = ["stable", "development"];
|
|
26
|
+
const EXPECTED_CHANNEL_CONSUMERS = ["upgrade", "doctor", "prime", "docs", "tests"];
|
|
27
|
+
function rootDefault() {
|
|
28
|
+
return resolveSourceRoot();
|
|
29
|
+
}
|
|
30
|
+
function authorityPath(root, relative) {
|
|
31
|
+
return path.join(root, relative);
|
|
32
|
+
}
|
|
33
|
+
function canonicalStatuses(authority) {
|
|
34
|
+
return new Set(Object.keys(authority.canonical_statuses));
|
|
35
|
+
}
|
|
36
|
+
function rejectedLifecycleStatusValues(authority) {
|
|
37
|
+
const statuses = authority.canonical_statuses;
|
|
38
|
+
const verbs = authority.operation_verbs;
|
|
39
|
+
const deprecated = Object.values(statuses).flatMap((entry) => {
|
|
40
|
+
const aliases = entry.deprecated_aliases;
|
|
41
|
+
return Array.isArray(aliases) ? aliases : [];
|
|
42
|
+
});
|
|
43
|
+
const nonLifecycleVerbs = Object.entries(verbs)
|
|
44
|
+
.filter(([, entry]) => entry.lifecycle_allowed === false)
|
|
45
|
+
.map(([name]) => name);
|
|
46
|
+
return new Set([...deprecated, ...nonLifecycleVerbs].map(String));
|
|
47
|
+
}
|
|
48
|
+
function validateLifecycleAuthority(root) {
|
|
49
|
+
const errors = [];
|
|
50
|
+
const p = authorityPath(root, "references/cli/app-lifecycle-vocabulary.yaml");
|
|
51
|
+
let authority;
|
|
52
|
+
try {
|
|
53
|
+
authority = loadYamlMappingFile(p); // cast: YAML parse IO boundary
|
|
54
|
+
}
|
|
55
|
+
catch (exc) {
|
|
56
|
+
return [`app-lifecycle-vocabulary.yaml: ${exc.message}`];
|
|
57
|
+
}
|
|
58
|
+
if (!Array.isArray(authority.canonical_status_order) || authority.canonical_status_order.length === 0) {
|
|
59
|
+
errors.push("app-lifecycle-vocabulary.yaml: canonical_status_order is required");
|
|
60
|
+
}
|
|
61
|
+
else if (JSON.stringify(authority.canonical_status_order) !== JSON.stringify([...EXPECTED_STATUSES])) {
|
|
62
|
+
errors.push("app-lifecycle-vocabulary.yaml: canonical_status_order drifted from Decision 54 pin");
|
|
63
|
+
}
|
|
64
|
+
const statusKeys = Object.keys(authority.canonical_statuses);
|
|
65
|
+
if (JSON.stringify(statusKeys) !== JSON.stringify([...EXPECTED_STATUSES])) {
|
|
66
|
+
errors.push("app-lifecycle-vocabulary.yaml: canonical_statuses keys drifted from Decision 54 pin");
|
|
67
|
+
}
|
|
68
|
+
for (const status of EXPECTED_STATUSES) {
|
|
69
|
+
const entry = authority.canonical_statuses[status];
|
|
70
|
+
if (!entry || !String(entry.concept ?? "").trim() || !String(entry.definition ?? "").trim()) {
|
|
71
|
+
errors.push(`app-lifecycle-vocabulary.yaml: canonical status '${status}' is incomplete`);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
const aliasToStatus = new Map();
|
|
75
|
+
for (const [status, raw] of Object.entries(authority.canonical_statuses)) {
|
|
76
|
+
for (const alias of raw.deprecated_aliases) {
|
|
77
|
+
aliasToStatus.set(alias, status);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
const expectedAliases = {
|
|
81
|
+
fresh: "up_to_date",
|
|
82
|
+
stale: "outdated",
|
|
83
|
+
refresh_required: "repair_needed",
|
|
84
|
+
fixed: "applied",
|
|
85
|
+
noop: "no_changes_needed",
|
|
86
|
+
};
|
|
87
|
+
for (const [alias, status] of Object.entries(expectedAliases)) {
|
|
88
|
+
if (aliasToStatus.get(alias) !== status) {
|
|
89
|
+
errors.push(`app-lifecycle-vocabulary.yaml: deprecated alias '${alias}' must map to '${status}'`);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
const doctorAllowed = new Set(authority.consumers.doctor.may_emit_statuses);
|
|
93
|
+
const observed = [
|
|
94
|
+
APP_UP_TO_DATE,
|
|
95
|
+
APP_OUTDATED,
|
|
96
|
+
APP_REPAIR_NEEDED,
|
|
97
|
+
APP_MIGRATION_NEEDED,
|
|
98
|
+
APP_MANUAL_REVIEW_NEEDED,
|
|
99
|
+
];
|
|
100
|
+
for (const status of observed) {
|
|
101
|
+
if (!canonicalStatuses(authority).has(status)) {
|
|
102
|
+
errors.push(`doctor constant '${status}' is not a canonical lifecycle status`);
|
|
103
|
+
}
|
|
104
|
+
else if (!doctorAllowed.has(status)) {
|
|
105
|
+
errors.push(`doctor consumer may not emit canonical status '${status}'`);
|
|
106
|
+
}
|
|
107
|
+
else if (rejectedLifecycleStatusValues(authority).has(status)) {
|
|
108
|
+
errors.push(`doctor constant '${status}' is a rejected lifecycle alias or verb`);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
if (!Array.isArray(authority.consumer_order) || authority.consumer_order.length === 0) {
|
|
112
|
+
errors.push("app-lifecycle-vocabulary.yaml: consumer_order is required");
|
|
113
|
+
}
|
|
114
|
+
else if (JSON.stringify(authority.consumer_order) !== JSON.stringify([...EXPECTED_LIFECYCLE_CONSUMERS])) {
|
|
115
|
+
errors.push("app-lifecycle-vocabulary.yaml: consumer_order drifted from Decision 54 pin");
|
|
116
|
+
}
|
|
117
|
+
const allowedStatuses = new Set(EXPECTED_STATUSES);
|
|
118
|
+
const allowedVerbs = new Set(EXPECTED_VERBS);
|
|
119
|
+
for (const consumer of EXPECTED_LIFECYCLE_CONSUMERS) {
|
|
120
|
+
const entry = authority.consumers[consumer];
|
|
121
|
+
if (!entry) {
|
|
122
|
+
errors.push(`app-lifecycle-vocabulary.yaml: missing consumer '${consumer}'`);
|
|
123
|
+
continue;
|
|
124
|
+
}
|
|
125
|
+
if (entry.may_define_new_statuses !== false) {
|
|
126
|
+
errors.push(`app-lifecycle-vocabulary.yaml: consumer '${consumer}' must not define new statuses`);
|
|
127
|
+
}
|
|
128
|
+
for (const status of entry.may_emit_statuses ?? []) {
|
|
129
|
+
if (!allowedStatuses.has(status)) {
|
|
130
|
+
errors.push(`app-lifecycle-vocabulary.yaml: consumer '${consumer}' emits unknown status '${status}'`);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
for (const verb of entry.may_use_verbs ?? []) {
|
|
134
|
+
if (!allowedVerbs.has(verb)) {
|
|
135
|
+
errors.push(`app-lifecycle-vocabulary.yaml: consumer '${consumer}' uses unknown verb '${verb}'`);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
const delegation = authority.docs_delegation;
|
|
140
|
+
if (delegation?.document !== "references/cli/vocabulary.md" ||
|
|
141
|
+
delegation?.required_anchor !== "App lifecycle status vocabulary" ||
|
|
142
|
+
delegation?.authority_path !== "references/cli/app-lifecycle-vocabulary.yaml") {
|
|
143
|
+
errors.push("app-lifecycle-vocabulary.yaml: docs_delegation contract drifted");
|
|
144
|
+
}
|
|
145
|
+
return errors;
|
|
146
|
+
}
|
|
147
|
+
function validateUpdateChannelsAuthority(root) {
|
|
148
|
+
const errors = [];
|
|
149
|
+
const p = authorityPath(root, "references/cli/update-channels.yaml");
|
|
150
|
+
let authority;
|
|
151
|
+
try {
|
|
152
|
+
authority = loadYamlMappingFile(p); // cast: YAML parse IO boundary
|
|
153
|
+
}
|
|
154
|
+
catch (exc) {
|
|
155
|
+
return [`update-channels.yaml: ${exc.message}`];
|
|
156
|
+
}
|
|
157
|
+
if (authority.default_channel !== "stable") {
|
|
158
|
+
errors.push("update-channels.yaml: default_channel must be stable");
|
|
159
|
+
}
|
|
160
|
+
if (JSON.stringify(authority.channel_order) !== JSON.stringify([...EXPECTED_CHANNELS])) {
|
|
161
|
+
errors.push("update-channels.yaml: channel_order drifted");
|
|
162
|
+
}
|
|
163
|
+
const stable = authority.channels.stable;
|
|
164
|
+
const development = authority.channels.development;
|
|
165
|
+
if (!stable || !development) {
|
|
166
|
+
errors.push("update-channels.yaml: stable and development channels are required");
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
const stableNpm = stable.resolution?.npm;
|
|
170
|
+
const devNpm = development.resolution?.npm;
|
|
171
|
+
if (stableNpm?.dist_tag !== "latest" || devNpm?.dist_tag !== "next") {
|
|
172
|
+
errors.push("update-channels.yaml: npm dist_tag pins drifted");
|
|
173
|
+
}
|
|
174
|
+
if (!String(stableNpm?.update_command ?? "").includes("@latest")) {
|
|
175
|
+
errors.push("update-channels.yaml: stable npm update_command must reference @latest");
|
|
176
|
+
}
|
|
177
|
+
if (!String(devNpm?.update_command ?? "").includes("@next")) {
|
|
178
|
+
errors.push("update-channels.yaml: development npm update_command must reference @next");
|
|
179
|
+
}
|
|
180
|
+
if (development.resolution?.git && development.resolution.git) {
|
|
181
|
+
const devGit = development.resolution.git;
|
|
182
|
+
if (devGit.supported !== false) {
|
|
183
|
+
errors.push("update-channels.yaml: development git resolution must be unsupported");
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
if (!Array.isArray(authority.consumer_order)) {
|
|
188
|
+
errors.push("update-channels.yaml: consumer_order is required");
|
|
189
|
+
}
|
|
190
|
+
else if (JSON.stringify(authority.consumer_order) !== JSON.stringify([...EXPECTED_CHANNEL_CONSUMERS])) {
|
|
191
|
+
errors.push("update-channels.yaml: consumer_order drifted");
|
|
192
|
+
}
|
|
193
|
+
const delegation = authority.docs_delegation;
|
|
194
|
+
if (delegation?.document !== "references/cli/vocabulary.md" ||
|
|
195
|
+
delegation?.required_anchor !== "Update channels" ||
|
|
196
|
+
delegation?.authority_path !== "references/cli/update-channels.yaml") {
|
|
197
|
+
errors.push("update-channels.yaml: docs_delegation contract drifted");
|
|
198
|
+
}
|
|
199
|
+
return errors;
|
|
200
|
+
}
|
|
201
|
+
function validateInstructionContract(root) {
|
|
202
|
+
const errors = [];
|
|
203
|
+
const p = authorityPath(root, "references/cli/capability-instruction-contract.yaml");
|
|
204
|
+
let authority;
|
|
205
|
+
try {
|
|
206
|
+
authority = loadYamlMappingFile(p); // cast: YAML parse IO boundary
|
|
207
|
+
}
|
|
208
|
+
catch (exc) {
|
|
209
|
+
return [`capability-instruction-contract.yaml: ${exc.message}`];
|
|
210
|
+
}
|
|
211
|
+
const firstRead = authority.first_invocation_read;
|
|
212
|
+
if (!firstRead) {
|
|
213
|
+
errors.push("capability-instruction-contract.yaml: first_invocation_read block is required");
|
|
214
|
+
return errors;
|
|
215
|
+
}
|
|
216
|
+
const allowed = firstRead.allowed_values;
|
|
217
|
+
if (!allowed || typeof allowed.prime_context !== "object") {
|
|
218
|
+
errors.push("capability-instruction-contract.yaml: first_invocation_read.allowed_values.prime_context is required");
|
|
219
|
+
}
|
|
220
|
+
else {
|
|
221
|
+
const meaning = String(allowed.prime_context.meaning ?? "");
|
|
222
|
+
if (!meaning.includes("agentera prime --context")) {
|
|
223
|
+
errors.push("capability-instruction-contract.yaml: prime_context obligation must reference agentera prime --context");
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
if (firstRead.default_rule !== "prime_context") {
|
|
227
|
+
errors.push("capability-instruction-contract.yaml: first_invocation_read.default_rule must be prime_context");
|
|
228
|
+
}
|
|
229
|
+
const cliMeta = authority.current_state?.cli_metadata;
|
|
230
|
+
if (cliMeta?.field !== "first_invocation_read") {
|
|
231
|
+
errors.push("capability-instruction-contract.yaml: cli_metadata.field must be first_invocation_read");
|
|
232
|
+
}
|
|
233
|
+
const delegation = authority.docs_delegation;
|
|
234
|
+
if (delegation?.document !== "references/cli/vocabulary.md" ||
|
|
235
|
+
delegation?.required_anchor !== "Capability instruction contract" ||
|
|
236
|
+
delegation?.authority_path !== "references/cli/capability-instruction-contract.yaml") {
|
|
237
|
+
errors.push("capability-instruction-contract.yaml: docs_delegation contract drifted");
|
|
238
|
+
}
|
|
239
|
+
return errors;
|
|
240
|
+
}
|
|
241
|
+
function validateVocabularyIndex(root) {
|
|
242
|
+
const errors = [];
|
|
243
|
+
const p = authorityPath(root, "references/cli/vocabulary-index.yaml");
|
|
244
|
+
let index;
|
|
245
|
+
try {
|
|
246
|
+
index = loadYamlMappingFile(p); // cast: YAML parse IO boundary
|
|
247
|
+
}
|
|
248
|
+
catch (exc) {
|
|
249
|
+
return [`vocabulary-index.yaml: ${exc.message}`];
|
|
250
|
+
}
|
|
251
|
+
const order = index.authority_order;
|
|
252
|
+
if (!Array.isArray(order)) {
|
|
253
|
+
return ["vocabulary-index.yaml: authority_order is required"];
|
|
254
|
+
}
|
|
255
|
+
const lifecycleIdx = order.indexOf("references/cli/app-lifecycle-vocabulary.yaml");
|
|
256
|
+
const channelsIdx = order.indexOf("references/cli/update-channels.yaml");
|
|
257
|
+
const bundleIdx = order.indexOf("references/cli/bundle-skill-vocabulary.yaml");
|
|
258
|
+
if (lifecycleIdx < 0 || channelsIdx < 0 || bundleIdx < 0) {
|
|
259
|
+
errors.push("vocabulary-index.yaml: authority_order missing required vocabulary authorities");
|
|
260
|
+
}
|
|
261
|
+
else if (!(lifecycleIdx < channelsIdx && channelsIdx < bundleIdx)) {
|
|
262
|
+
errors.push("vocabulary-index.yaml: authority_order must place lifecycle before channels before bundle");
|
|
263
|
+
}
|
|
264
|
+
const vocabularyMd = authorityPath(root, "references/cli/vocabulary.md");
|
|
265
|
+
if (!fs.existsSync(vocabularyMd)) {
|
|
266
|
+
errors.push("references/cli/vocabulary.md: missing vocabulary prose delegation surface");
|
|
267
|
+
return errors;
|
|
268
|
+
}
|
|
269
|
+
const vocabulary = fs.readFileSync(vocabularyMd, "utf8");
|
|
270
|
+
const lifecycleSection = vocabulary.split("### App lifecycle status vocabulary")[1]?.split("### Update channels", 1)[0] ?? "";
|
|
271
|
+
if (!lifecycleSection.includes("references/cli/app-lifecycle-vocabulary.yaml") ||
|
|
272
|
+
!lifecycleSection.includes("machine-readable authority")) {
|
|
273
|
+
errors.push("references/cli/vocabulary.md: app lifecycle section must delegate to YAML authority");
|
|
274
|
+
}
|
|
275
|
+
const channelsSection = vocabulary.split("### Update channels")[1]?.split("### Bundle and SKILL.md vocabulary", 1)[0] ?? "";
|
|
276
|
+
if (!channelsSection.includes("references/cli/update-channels.yaml") ||
|
|
277
|
+
!channelsSection.includes("machine-readable authority")) {
|
|
278
|
+
errors.push("references/cli/vocabulary.md: update channels section must delegate to YAML authority");
|
|
279
|
+
}
|
|
280
|
+
return errors;
|
|
281
|
+
}
|
|
282
|
+
export function validateVocabularyAuthority(root = rootDefault()) {
|
|
283
|
+
const resolved = resolvePath(root);
|
|
284
|
+
return [
|
|
285
|
+
...validateLifecycleAuthority(resolved),
|
|
286
|
+
...validateUpdateChannelsAuthority(resolved),
|
|
287
|
+
...validateInstructionContract(resolved),
|
|
288
|
+
...validateVocabularyIndex(resolved),
|
|
289
|
+
...validateGlossaryEntryContract(authorityPath(resolved, "references/artifacts/glossary-entry-contract.yaml")),
|
|
290
|
+
];
|
|
291
|
+
}
|
|
292
|
+
export function vocabularyAuthorityMain(opts = {}) {
|
|
293
|
+
const root = resolvePath(opts.root ?? rootDefault());
|
|
294
|
+
const out = opts.out ?? ((line) => process.stdout.write(line + "\n"));
|
|
295
|
+
const errors = validateVocabularyAuthority(root);
|
|
296
|
+
if (errors.length > 0) {
|
|
297
|
+
out("vocabulary authority validation failed:");
|
|
298
|
+
for (const error of errors)
|
|
299
|
+
out(`- ${error}`);
|
|
300
|
+
return 1;
|
|
301
|
+
}
|
|
302
|
+
out("vocabulary authority ok");
|
|
303
|
+
return 0;
|
|
304
|
+
}
|
|
305
|
+
//# sourceMappingURL=vocabularyAuthority.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vocabularyAuthority.js","sourceRoot":"","sources":["../../../../../home/jgabor/git/agentera.release-publish-dev40/packages/cli/src/validate/vocabularyAuthority.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,24 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agentera",
|
|
3
|
-
"version": "3.0.0-dev.
|
|
4
|
-
"description": "
|
|
5
|
-
"type": "module",
|
|
6
|
-
"license": "Apache-2.0",
|
|
7
|
-
"author": "Jonathan Gabor",
|
|
8
|
-
"homepage": "https://github.com/jgabor/agentera",
|
|
9
|
-
"repository": {
|
|
10
|
-
"type": "git",
|
|
11
|
-
"url": "git+https://github.com/jgabor/agentera.git",
|
|
12
|
-
"directory": "packages/cli"
|
|
13
|
-
},
|
|
3
|
+
"version": "3.0.0-dev.41",
|
|
4
|
+
"description": "One CLI, many capabilities: project state, artifact validation, and capability routing for AI coding agents",
|
|
14
5
|
"keywords": [
|
|
15
6
|
"agentera",
|
|
16
7
|
"agents",
|
|
17
8
|
"cli",
|
|
18
9
|
"orchestration"
|
|
19
10
|
],
|
|
20
|
-
"
|
|
21
|
-
|
|
11
|
+
"homepage": "https://github.com/jgabor/agentera",
|
|
12
|
+
"license": "Apache-2.0",
|
|
13
|
+
"author": "Jonathan Gabor",
|
|
14
|
+
"repository": {
|
|
15
|
+
"type": "git",
|
|
16
|
+
"url": "git+https://github.com/jgabor/agentera.git",
|
|
17
|
+
"directory": "packages/cli"
|
|
22
18
|
},
|
|
23
19
|
"bin": {
|
|
24
20
|
"agentera": "dist/bin/agentera.js"
|
|
@@ -27,23 +23,38 @@
|
|
|
27
23
|
"dist",
|
|
28
24
|
"bundle"
|
|
29
25
|
],
|
|
30
|
-
"
|
|
31
|
-
"build": "tsc -p tsconfig.json",
|
|
32
|
-
"prepack": "tsc -p tsconfig.json && node scripts/copy-bundle.mjs",
|
|
33
|
-
"test": "vitest run",
|
|
34
|
-
"test:watch": "vitest",
|
|
35
|
-
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
36
|
-
"bundle:data": "node scripts/copy-bundle.mjs",
|
|
37
|
-
"publish:dev": "npm run build && npm run bundle:data && npm publish --tag next"
|
|
38
|
-
},
|
|
39
|
-
"agentera": {
|
|
40
|
-
"suiteVersion": "2.7.6",
|
|
41
|
-
"gitRef": "v3.0.0-dev.4"
|
|
42
|
-
},
|
|
26
|
+
"type": "module",
|
|
43
27
|
"publishConfig": {
|
|
44
28
|
"access": "public",
|
|
45
29
|
"tag": "next"
|
|
46
30
|
},
|
|
31
|
+
"scripts": {
|
|
32
|
+
"build": "node scripts/build-package.mjs",
|
|
33
|
+
"prepack": "node scripts/reject-direct-prepack.mjs",
|
|
34
|
+
"test": "pnpm run test:source",
|
|
35
|
+
"test:source": "node scripts/verify-lane.mjs source",
|
|
36
|
+
"test:stress": "node scripts/verify-lane.mjs stress",
|
|
37
|
+
"test:performance": "node scripts/verify-lane.mjs performance",
|
|
38
|
+
"test:performance:integration": "node test/integration/performanceOwner.integration.mjs",
|
|
39
|
+
"test:watch": "vp test watch --config vite.config.ts",
|
|
40
|
+
"verify:package": "node scripts/verify-lane.mjs package",
|
|
41
|
+
"verify:generated-overlap": "node scripts/verify-generated-overlap.mjs",
|
|
42
|
+
"generated:cleanup": "node scripts/build-package.mjs --cleanup",
|
|
43
|
+
"pack:dry-run": "node scripts/pack-package.mjs --dry-run",
|
|
44
|
+
"release:prepare": "node scripts/publication-transaction.mjs prepare development",
|
|
45
|
+
"verify:targeted": "node scripts/verify-lane.mjs policy targeted",
|
|
46
|
+
"verify:precommit": "node scripts/verify-lane.mjs policy precommit",
|
|
47
|
+
"verify:fast": "node scripts/verify-lane.mjs policy fast",
|
|
48
|
+
"verify:local": "node scripts/verify-lane.mjs policy local",
|
|
49
|
+
"verify:merge": "node scripts/verify-lane.mjs policy merge",
|
|
50
|
+
"verify:scheduled": "node scripts/verify-lane.mjs policy scheduled",
|
|
51
|
+
"verify:release": "node scripts/verify-lane.mjs policy release",
|
|
52
|
+
"lint": "vp lint",
|
|
53
|
+
"fmt": "vp fmt",
|
|
54
|
+
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
55
|
+
"bundle:data": "node scripts/build-package.mjs",
|
|
56
|
+
"publish:dev": "set -a; [ -f ../../.env ] && . ../../.env; set +a; node scripts/publication-transaction.mjs publish development --authorize"
|
|
57
|
+
},
|
|
47
58
|
"dependencies": {
|
|
48
59
|
"smol-toml": "^1.3.1",
|
|
49
60
|
"yaml": "^2.8.3"
|
|
@@ -51,6 +62,14 @@
|
|
|
51
62
|
"devDependencies": {
|
|
52
63
|
"@types/node": "^22.10.0",
|
|
53
64
|
"typescript": "^5.7.2",
|
|
54
|
-
"
|
|
65
|
+
"vite": "^6.3.5",
|
|
66
|
+
"vite-plus": "^0.1.22"
|
|
67
|
+
},
|
|
68
|
+
"engines": {
|
|
69
|
+
"node": ">=22"
|
|
70
|
+
},
|
|
71
|
+
"agentera": {
|
|
72
|
+
"suiteVersion": "3.0.0",
|
|
73
|
+
"gitRef": "46aef0efa1bb70793cb79786a6363062c2b8cf1c"
|
|
55
74
|
}
|
|
56
75
|
}
|
|
@@ -1,213 +0,0 @@
|
|
|
1
|
-
# Cursor adapter reference
|
|
2
|
-
|
|
3
|
-
Agentera v1 ships Cursor as two registry identities:
|
|
4
|
-
|
|
5
|
-
| Identity | Host | Support status |
|
|
6
|
-
| -------- | ---- | -------------- |
|
|
7
|
-
| `cursor` | Cursor IDE (Composer / Agent) | supported |
|
|
8
|
-
| `cursor-agent` | Cursor Agent CLI (`cursor-agent`, `agent`) | degraded |
|
|
9
|
-
|
|
10
|
-
Decision 63 owns v1 scope. Cloud agents are unsupported. Bare text `hej` routing
|
|
11
|
-
stays metadata-only like Claude, Copilot, and Codex.
|
|
12
|
-
|
|
13
|
-
## Quick install
|
|
14
|
-
|
|
15
|
-
**Local plugin (no Marketplace listing required)**
|
|
16
|
-
|
|
17
|
-
```bash
|
|
18
|
-
git clone https://github.com/jgabor/agentera.git ~/.cursor/plugins/local/agentera
|
|
19
|
-
# or: ln -s /path/to/agentera ~/.cursor/plugins/local/agentera
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
Restart Cursor or run **Developer: Reload Window**. The plugin root must contain
|
|
23
|
-
`.cursor-plugin/plugin.json`. Agentera is not published to the Cursor Marketplace
|
|
24
|
-
yet; use this manual local path or Cursor's local plugin loading UI instead.
|
|
25
|
-
|
|
26
|
-
The plugin loads skills, managed capability agents, and plugin hooks. When you open
|
|
27
|
-
a project that is not an Agentera install root, `sessionStart` exports
|
|
28
|
-
`AGENTERA_HOME` from the plugin checkout (including a plugin-root fallback when env
|
|
29
|
-
and project walk-up do not resolve a managed root).
|
|
30
|
-
|
|
31
|
-
**Portable skill plus project upgrade**
|
|
32
|
-
|
|
33
|
-
```bash
|
|
34
|
-
npx skills add jgabor/agentera -g -a cursor --skill agentera -y
|
|
35
|
-
uvx --from git+https://github.com/jgabor/agentera agentera upgrade --project "$PWD" --runtime cursor --yes
|
|
36
|
-
uvx --from git+https://github.com/jgabor/agentera agentera doctor --runtime cursor
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
Use the plugin path for a user-global install. Use upgrade when you need
|
|
40
|
-
project-committed `.cursor/hooks.json` and `.cursor/agents/` copies. Both paths can
|
|
41
|
-
be combined.
|
|
42
|
-
|
|
43
|
-
From a clone, replace `uvx … agentera` with `uv run scripts/agentera`. User-facing
|
|
44
|
-
install steps also live in [`README.md`](../../README.md) and
|
|
45
|
-
[`UPGRADE.md`](../../UPGRADE.md).
|
|
46
|
-
|
|
47
|
-
## Repo-native surfaces
|
|
48
|
-
|
|
49
|
-
This repository dogfoods committed Cursor surfaces:
|
|
50
|
-
|
|
51
|
-
- `.cursor/hooks.json` — sessionStart env export, preToolUse hard gate, postToolUse advisory validation
|
|
52
|
-
- `.cursor/agents/*.md` — twelve managed capability descriptors
|
|
53
|
-
- `.cursor-plugin/plugin.json` — marketplace submission-ready manifest
|
|
54
|
-
|
|
55
|
-
Hooks resolve helper scripts through `uv run hooks/...` from the project root.
|
|
56
|
-
`sessionStart` exports `AGENTERA_HOME` through Cursor hook JSON (`env`) before
|
|
57
|
-
subsequent hook executions run.
|
|
58
|
-
|
|
59
|
-
## AGENTERA_HOME wiring
|
|
60
|
-
|
|
61
|
-
Primary path: `hooks/cursor_session_start.py` resolves the install root from
|
|
62
|
-
`AGENTERA_HOME`, project walk-up, or the plugin/checkout root (`hooks/` parent)
|
|
63
|
-
when the hook runs from a plugin install, then returns
|
|
64
|
-
`{"env": {"AGENTERA_HOME": "<root>"}}` plus optional `additional_context` from
|
|
65
|
-
the shared session digest.
|
|
66
|
-
|
|
67
|
-
Fallback: `scripts/setup_cursor.py` reports persistent shell configuration only
|
|
68
|
-
when live shell-tool smoke proves session env does not propagate to CLI
|
|
69
|
-
subprocesses. Agentera does not write shell rc files by default.
|
|
70
|
-
|
|
71
|
-
## Artifact validation
|
|
72
|
-
|
|
73
|
-
| Surface | Behavior | Claim status |
|
|
74
|
-
| ------- | -------- | ------------ |
|
|
75
|
-
| IDE `preToolUse` (Write/Edit) | Deny invalid reconstructable artifact candidates | Verified after live preToolUse Write smoke (2026-05-24) |
|
|
76
|
-
| IDE `postToolUse` (Write/Edit) | Advisory validation through shared `validate_artifact.py` | Active |
|
|
77
|
-
| CLI | Degraded; depends on workspace hook install and env propagation | Follows IDE smoke evidence only |
|
|
78
|
-
|
|
79
|
-
Live preToolUse Write smoke passed on 2026-05-24 with invalid-block and valid-allow
|
|
80
|
-
cases recorded in `.agentera/smoke-cursor-pretooluse-evidence.txt`. Conditional
|
|
81
|
-
hard-gate claims for reconstructable IDE Write and Edit candidates are verified;
|
|
82
|
-
release tagging and marketplace publication remain blocked pending broader release
|
|
83
|
-
closeout.
|
|
84
|
-
|
|
85
|
-
## Subagent dispatch
|
|
86
|
-
|
|
87
|
-
IDE: managed descriptors under `.cursor/agents/` with `<!-- agentera: managed -->`
|
|
88
|
-
ownership markers. Upgrade refreshes Agentera-owned targets and preserves unknown
|
|
89
|
-
collisions.
|
|
90
|
-
|
|
91
|
-
CLI: host-managed `cursor-agent` print mode; no separate TOML descriptor install.
|
|
92
|
-
Eval coverage targets `cursor-agent` first.
|
|
93
|
-
|
|
94
|
-
## Upgrade and doctor
|
|
95
|
-
|
|
96
|
-
```bash
|
|
97
|
-
uv run scripts/agentera upgrade --runtime cursor --dry-run
|
|
98
|
-
uv run scripts/agentera doctor --runtime cursor
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
Upgrade copies managed hooks, agents, and plugin metadata into target projects
|
|
102
|
-
with the same ownership protections used for OpenCode and Codex.
|
|
103
|
-
|
|
104
|
-
Doctor reports helper access, hook presence, and managed agent alignment.
|
|
105
|
-
|
|
106
|
-
## Eval
|
|
107
|
-
|
|
108
|
-
```bash
|
|
109
|
-
uv run scripts/eval_skills.py --runtime cursor-agent --skill hej --dry-run
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
Print mode uses `cursor-agent -p --output-format json --force`. Harnesses apply
|
|
113
|
-
bounded timeouts because some CLI builds hang after completion.
|
|
114
|
-
|
|
115
|
-
## Unsupported in v1
|
|
116
|
-
|
|
117
|
-
- Cloud agents (no project hook or managed-agent guarantees)
|
|
118
|
-
- Bare `hej` prompt rewrite routing
|
|
119
|
-
- Session compaction injection beyond shared hook helpers
|
|
120
|
-
- Separate cursor-agent hook install distinct from IDE workspace surfaces
|
|
121
|
-
|
|
122
|
-
## Profilera session corpus (Section 22)
|
|
123
|
-
|
|
124
|
-
Profilera mines five canonical record types from host session data. This section
|
|
125
|
-
maps each record type to Cursor IDE local storage on disk.
|
|
126
|
-
|
|
127
|
-
### Probe paths
|
|
128
|
-
|
|
129
|
-
| Path | Purpose |
|
|
130
|
-
| ---- | ------- |
|
|
131
|
-
| `~/.cursor/projects/` | Root directory for workspace-scoped Cursor state |
|
|
132
|
-
| `~/.cursor/projects/<project-slug>/agent-transcripts/<session-id>/*.jsonl` | Agent session transcripts (Composer / Agent) |
|
|
133
|
-
| `~/.cursor/projects/<project-slug>/repo.json` | Workspace metadata (`id` UUID); slug mapping is primary for project scoping |
|
|
134
|
-
| `~/.config/cursor/chats/<md5(project-path)>/<session-id>/store.db` | Cursor Agent CLI chat store (gap-fill when JSONL absent) |
|
|
135
|
-
|
|
136
|
-
Override the projects root with `--cursor-projects-dir`, the CLI chats root with
|
|
137
|
-
`--cursor-chats-dir`, or disable both Cursor runtimes with `--no-cursor` on
|
|
138
|
-
`scripts/extract_corpus.py` and `agentera stats refresh`.
|
|
139
|
-
|
|
140
|
-
Project slug convention: absolute project path segments joined with `-`, lowercased
|
|
141
|
-
(for example `/home/user/git/agentera` → `home-user-git-agentera`). CLI workspace
|
|
142
|
-
hashes use `md5(absolute-project-path)` hex (same string Cursor uses under
|
|
143
|
-
`~/.config/cursor/chats/`). When `--project-root` is supplied, extraction prefers
|
|
144
|
-
matching slugs and workspace hashes over unrelated stores.
|
|
145
|
-
|
|
146
|
-
### Transcript JSONL shape
|
|
147
|
-
|
|
148
|
-
Each line is a JSON object:
|
|
149
|
-
|
|
150
|
-
```json
|
|
151
|
-
{"role": "user", "message": {"content": [{"type": "text", "text": "..."}]}}
|
|
152
|
-
{"role": "assistant", "message": {"content": [{"type": "text", "text": "..."}, {"type": "tool_use", "name": "grep", "input": {"pattern": "..."}}]}}
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
Roles are `user` or `assistant`. `message.content` is a list of blocks. Text blocks
|
|
156
|
-
use `type: "text"`. Tool blocks use `type: "tool_use"` with `name` and `input`.
|
|
157
|
-
|
|
158
|
-
### Cursor Agent CLI `store.db` shape
|
|
159
|
-
|
|
160
|
-
Runtime id `cursor-agent` reads SQLite stores at
|
|
161
|
-
`~/.config/cursor/chats/<workspace-hash>/<session-id>/store.db`. Each store has:
|
|
162
|
-
|
|
163
|
-
| Table | Purpose |
|
|
164
|
-
| ----- | ------- |
|
|
165
|
-
| `blobs` | JSON message payloads keyed by content hash (`role`, `content`, optional tool blocks) |
|
|
166
|
-
| `meta` | Session metadata (`agentId`, model, mode) |
|
|
167
|
-
|
|
168
|
-
JSON blobs use `role` values such as `user`, `assistant`, and `tool`. User content is
|
|
169
|
-
often a plain string; assistant content is a list that may include `text` and
|
|
170
|
-
`tool-call` items (`toolName`, `args`). Sessions that already have IDE JSONL under
|
|
171
|
-
`agent-transcripts/<same-session-id>/` are skipped (gap-fill only).
|
|
172
|
-
|
|
173
|
-
### Portable record families
|
|
174
|
-
|
|
175
|
-
| Family | Cursor source | Status |
|
|
176
|
-
| ------ | ------------- | ------ |
|
|
177
|
-
| Decision history | `history_prompt` from decision-rich user text blocks | Yes (local JSONL) |
|
|
178
|
-
| Conversation exchanges | `conversation_turn` from user/assistant lines | Yes (local JSONL) |
|
|
179
|
-
| Tool usage | `tool_call` from `tool_use` / `tool-call` blocks | Yes (bounded args) |
|
|
180
|
-
| Instruction documents | Project `AGENTS.md` via shared `--project-root` scan | Yes (filesystem) |
|
|
181
|
-
| Project config signals | Project manifests via shared `--project-root` scan | Yes (filesystem) |
|
|
182
|
-
|
|
183
|
-
### Degradation and privacy
|
|
184
|
-
|
|
185
|
-
Extraction is read-only and local-only. Runtime status uses the shared
|
|
186
|
-
`runtime_statuses` vocabulary (`ok`, `missing`, `sparse`, `degraded`, `skipped`).
|
|
187
|
-
Diagnostics report counts and bounded reasons only; raw transcript text must not
|
|
188
|
-
appear in errors, smoke output, or test assertions.
|
|
189
|
-
|
|
190
|
-
| Condition | Status | Reason |
|
|
191
|
-
| --------- | ------ | ------ |
|
|
192
|
-
| Store path disabled (`--no-cursor`) | `skipped` | `disabled` |
|
|
193
|
-
| `~/.cursor/projects` or `~/.config/cursor/chats` absent | `missing` | `store_absent` |
|
|
194
|
-
| No `*.jsonl` under `agent-transcripts` / no gap-fill `store.db` | `sparse` | `no_candidate_files` / `no_matching_records` |
|
|
195
|
-
| Permission denied | `degraded` | `store_locked` |
|
|
196
|
-
| Invalid JSONL lines | `degraded` | `schema_divergent` |
|
|
197
|
-
| Candidates present but no normalized records | `sparse` | `no_matching_records` |
|
|
198
|
-
|
|
199
|
-
### Gaps
|
|
200
|
-
|
|
201
|
-
- Numeric or opaque project directory names (no slug) skip filesystem project-path
|
|
202
|
-
inference; `--project-root` mapping still scopes extraction when the slug matches.
|
|
203
|
-
- Cloud agent sessions do not write local `agent-transcripts` in v1.
|
|
204
|
-
- `cursor-agent` `store.db` sessions that already have IDE JSONL transcripts are skipped
|
|
205
|
-
to avoid duplicate corpus records; gap-fill covers chat-only CLI sessions.
|
|
206
|
-
- Binary or non-JSON blobs in `store.db` degrade with bounded diagnostics and do not
|
|
207
|
-
leak transcript text.
|
|
208
|
-
|
|
209
|
-
## Source of truth
|
|
210
|
-
|
|
211
|
-
RuntimeAdapter records live in
|
|
212
|
-
`references/adapters/runtime-adapter-registry.yaml`. Parity comparisons belong in
|
|
213
|
-
`references/adapters/runtime-feature-parity.md`.
|