@a5c-ai/babysitter-sdk 5.0.1-staging.ff407b73 → 5.1.1-staging.00ceebd28cf2
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/README.md +7 -6
- package/dist/blueprints/index.d.ts.map +1 -0
- package/dist/blueprints/marketplace.d.ts.map +1 -0
- package/dist/{plugins → blueprints}/marketplace.js +92 -10
- package/dist/blueprints/marketplaceHelpers.d.ts.map +1 -0
- package/dist/blueprints/migrations.d.ts.map +1 -0
- package/dist/{plugins → blueprints}/migrations.js +31 -9
- package/dist/blueprints/packageReader.d.ts.map +1 -0
- package/dist/{plugins → blueprints}/paths.d.ts +1 -0
- package/dist/blueprints/paths.d.ts.map +1 -0
- package/dist/{plugins → blueprints}/paths.js +6 -1
- package/dist/blueprints/registry.d.ts.map +1 -0
- package/dist/{plugins → blueprints}/types.d.ts +20 -14
- package/dist/blueprints/types.d.ts.map +1 -0
- package/dist/{plugins → blueprints}/types.js +8 -7
- package/dist/breakpoints/evaluator.js +1 -1
- package/dist/breakpoints/proven-verification.d.ts +6 -6
- package/dist/breakpoints/proven-verification.d.ts.map +1 -1
- package/dist/breakpoints/proven-verification.js +9 -9
- package/dist/cli/commands/detectExistingRun.d.ts +14 -0
- package/dist/cli/commands/detectExistingRun.d.ts.map +1 -0
- package/dist/cli/commands/detectExistingRun.js +89 -0
- package/dist/cli/commands/harness/install.d.ts +1 -1
- package/dist/cli/commands/harness/install.js +1 -1
- package/dist/cli/commands/hooks/log.d.ts.map +1 -1
- package/dist/cli/commands/hooks/log.js +4 -1
- package/dist/cli/commands/instructions.d.ts.map +1 -1
- package/dist/cli/commands/instructions.js +25 -45
- package/dist/cli/commands/mcpServe.d.ts +1 -1
- package/dist/cli/commands/mcpServe.js +3 -3
- package/dist/cli/commands/plugin/marketplaceCommands.js +4 -4
- package/dist/cli/commands/plugin/packageCommands.js +4 -4
- package/dist/cli/commands/plugin/registryCommands.js +2 -2
- package/dist/cli/commands/plugin/shared.d.ts +1 -1
- package/dist/cli/commands/plugin/shared.d.ts.map +1 -1
- package/dist/cli/commands/plugin/shared.js +1 -1
- package/dist/cli/commands/runIterate.d.ts +3 -1
- package/dist/cli/commands/runIterate.d.ts.map +1 -1
- package/dist/cli/commands/runIterate.js +101 -1
- package/dist/cli/commands/runIterateHelpers.d.ts.map +1 -1
- package/dist/cli/commands/runIterateHelpers.js +3 -0
- package/dist/cli/commands/session/associate.js +1 -1
- package/dist/cli/commands/session/checkIteration.d.ts.map +1 -1
- package/dist/cli/commands/session/checkIteration.js +0 -22
- package/dist/cli/commands/session/common.js +1 -1
- package/dist/cli/commands/session/init.d.ts.map +1 -1
- package/dist/cli/commands/session/init.js +2 -1
- package/dist/cli/commands/session/iterationMessage.d.ts.map +1 -1
- package/dist/cli/commands/session/iterationMessage.js +4 -0
- package/dist/cli/commands/session/resume.d.ts.map +1 -1
- package/dist/cli/commands/session/resume.js +3 -2
- package/dist/cli/commands/session/update.d.ts +0 -1
- package/dist/cli/commands/session/update.d.ts.map +1 -1
- package/dist/cli/commands/session/update.js +0 -12
- package/dist/cli/commands/skill/remoteDiscovery.js +1 -1
- package/dist/cli/commands/skill.js +1 -1
- package/dist/cli/main/argFlagParsers.d.ts.map +1 -1
- package/dist/cli/main/argFlagParsers.js +12 -0
- package/dist/cli/main/argFlags.d.ts.map +1 -1
- package/dist/cli/main/argFlags.js +0 -3
- package/dist/cli/main/argPositionals.d.ts.map +1 -1
- package/dist/cli/main/argPositionals.js +8 -1
- package/dist/cli/main/dispatchHarness.d.ts.map +1 -1
- package/dist/cli/main/dispatchHarness.js +1 -0
- package/dist/cli/main/dispatchRunSession.d.ts.map +1 -1
- package/dist/cli/main/dispatchRunSession.js +52 -4
- package/dist/cli/main/program.d.ts.map +1 -1
- package/dist/cli/main/program.js +7 -4
- package/dist/cli/main/runAssignProcess.d.ts +3 -0
- package/dist/cli/main/runAssignProcess.d.ts.map +1 -0
- package/dist/cli/main/runAssignProcess.js +172 -0
- package/dist/cli/main/runCommands.d.ts +2 -1
- package/dist/cli/main/runCommands.d.ts.map +1 -1
- package/dist/cli/main/runCommands.js +4 -1
- package/dist/cli/main/runCreate.d.ts +1 -0
- package/dist/cli/main/runCreate.d.ts.map +1 -1
- package/dist/cli/main/runCreate.js +235 -27
- package/dist/cli/main/runInspection.d.ts.map +1 -1
- package/dist/cli/main/runInspection.js +39 -4
- package/dist/cli/main/runState.d.ts +2 -1
- package/dist/cli/main/runState.d.ts.map +1 -1
- package/dist/cli/main/runState.js +12 -2
- package/dist/cli/main/runSupport.d.ts.map +1 -1
- package/dist/cli/main/runSupport.js +13 -2
- package/dist/cli/main/types.d.ts +2 -1
- package/dist/cli/main/types.d.ts.map +1 -1
- package/dist/cli/main/ui.d.ts.map +1 -1
- package/dist/cli/main/ui.js +16 -0
- package/dist/cli/main/usage.d.ts.map +1 -1
- package/dist/cli/main/usage.js +21 -18
- package/dist/cli/render/events/index.d.ts.map +1 -1
- package/dist/cli/render/events/index.js +5 -0
- package/dist/cli/render/events/processAssigned.d.ts +3 -0
- package/dist/cli/render/events/processAssigned.d.ts.map +1 -0
- package/dist/cli/render/events/processAssigned.js +22 -0
- package/dist/cli/render/events/runFailed.js +1 -1
- package/dist/cli/render/events/runHalted.d.ts +3 -0
- package/dist/cli/render/events/runHalted.d.ts.map +1 -0
- package/dist/cli/render/events/runHalted.js +15 -0
- package/dist/cli/render/statusBadge.d.ts +1 -1
- package/dist/cli/render/statusBadge.d.ts.map +1 -1
- package/dist/cli/render/statusBadge.js +1 -0
- package/dist/config/defaults.js +1 -1
- package/dist/config/envContract.d.ts +142 -0
- package/dist/config/envContract.d.ts.map +1 -0
- package/dist/config/envContract.js +230 -0
- package/dist/config/index.d.ts +1 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +6 -1
- package/dist/cost/index.js +1 -1
- package/dist/cost/journal.d.ts +1 -0
- package/dist/cost/journal.d.ts.map +1 -1
- package/dist/cost/journal.js +21 -0
- package/dist/cost/types.d.ts +10 -0
- package/dist/cost/types.d.ts.map +1 -1
- package/dist/harness/BaseAdapter.d.ts.map +1 -1
- package/dist/harness/BaseAdapter.js +1 -0
- package/dist/harness/adapterFallbackMetadata.d.ts +3 -0
- package/dist/harness/adapterFallbackMetadata.d.ts.map +1 -0
- package/dist/harness/{amuxFallbackMetadata.js → adapterFallbackMetadata.js} +36 -4
- package/dist/harness/{amuxMetadata.d.ts → adapterMetadata.d.ts} +11 -11
- package/dist/harness/adapterMetadata.d.ts.map +1 -0
- package/dist/harness/{amuxMetadata.js → adapterMetadata.js} +35 -35
- package/dist/harness/adapters/claude-code.d.ts +3 -9
- package/dist/harness/adapters/claude-code.d.ts.map +1 -1
- package/dist/harness/adapters/claude-code.js +6 -11
- package/dist/harness/adapters/codex.d.ts +1 -1
- package/dist/harness/adapters/codex.js +3 -3
- package/dist/harness/adapters/cursor.d.ts +1 -1
- package/dist/harness/adapters/cursor.js +3 -3
- package/dist/harness/adapters/gemini-cli.d.ts +1 -1
- package/dist/harness/adapters/gemini-cli.js +3 -3
- package/dist/harness/adapters/github-copilot.d.ts +1 -1
- package/dist/harness/adapters/github-copilot.js +3 -3
- package/dist/harness/adapters/hermes.d.ts +7 -0
- package/dist/harness/adapters/hermes.d.ts.map +1 -0
- package/dist/harness/adapters/hermes.js +32 -0
- package/dist/harness/adapters/index.d.ts +1 -0
- package/dist/harness/adapters/index.d.ts.map +1 -1
- package/dist/harness/adapters/index.js +3 -1
- package/dist/harness/adapters/oh-my-pi.d.ts +1 -1
- package/dist/harness/adapters/oh-my-pi.js +3 -3
- package/dist/harness/adapters/openclaw.d.ts +1 -1
- package/dist/harness/adapters/openclaw.js +3 -3
- package/dist/harness/adapters/opencode.d.ts +1 -1
- package/dist/harness/adapters/opencode.js +3 -3
- package/dist/harness/adapters/pi.d.ts +1 -1
- package/dist/harness/adapters/pi.js +3 -3
- package/dist/harness/customAdapter.d.ts.map +1 -1
- package/dist/harness/customAdapter.js +1 -18
- package/dist/harness/derivePromptContext.d.ts +11 -11
- package/dist/harness/derivePromptContext.d.ts.map +1 -1
- package/dist/harness/derivePromptContext.js +5 -5
- package/dist/harness/discovery.d.ts +6 -6
- package/dist/harness/discovery.d.ts.map +1 -1
- package/dist/harness/discovery.js +9 -9
- package/dist/harness/externalAgentDiscovery.d.ts +56 -0
- package/dist/harness/externalAgentDiscovery.d.ts.map +1 -0
- package/dist/harness/externalAgentDiscovery.js +294 -0
- package/dist/harness/hooks/externalAgentEffect.d.ts +24 -0
- package/dist/harness/hooks/externalAgentEffect.d.ts.map +1 -0
- package/dist/harness/hooks/externalAgentEffect.js +258 -0
- package/dist/harness/hooks/promptContexts.d.ts +8 -3
- package/dist/harness/hooks/promptContexts.d.ts.map +1 -1
- package/dist/harness/hooks/promptContexts.js +67 -144
- package/dist/harness/hooks/runState.d.ts +2 -1
- package/dist/harness/hooks/runState.d.ts.map +1 -1
- package/dist/harness/hooks/runState.js +10 -1
- package/dist/harness/hooks/sessionBinding.d.ts.map +1 -1
- package/dist/harness/hooks/sessionBinding.js +10 -2
- package/dist/harness/hooks/stopHookContinuation.d.ts +9 -0
- package/dist/harness/hooks/stopHookContinuation.d.ts.map +1 -1
- package/dist/harness/hooks/stopHookContinuation.js +75 -1
- package/dist/harness/hooks/stopHookHandler.d.ts.map +1 -1
- package/dist/harness/hooks/stopHookHandler.js +228 -36
- package/dist/harness/hooks/stopHookRecovery.d.ts +34 -0
- package/dist/harness/hooks/stopHookRecovery.d.ts.map +1 -0
- package/dist/harness/hooks/stopHookRecovery.js +173 -0
- package/dist/harness/hooks/utils.d.ts +5 -1
- package/dist/harness/hooks/utils.d.ts.map +1 -1
- package/dist/harness/hooks/utils.js +18 -8
- package/dist/harness/index.d.ts +2 -0
- package/dist/harness/index.d.ts.map +1 -1
- package/dist/harness/index.js +5 -1
- package/dist/harness/install.d.ts +19 -23
- package/dist/harness/install.d.ts.map +1 -1
- package/dist/harness/install.js +115 -31
- package/dist/harness/installSupport.d.ts.map +1 -1
- package/dist/harness/installSupport.js +12 -11
- package/dist/harness/registry.d.ts +1 -0
- package/dist/harness/registry.d.ts.map +1 -1
- package/dist/harness/registry.js +73 -69
- package/dist/harness/types.d.ts +3 -1
- package/dist/harness/types.d.ts.map +1 -1
- package/dist/harness/unified/adapter.d.ts +5 -5
- package/dist/harness/unified/adapter.d.ts.map +1 -1
- package/dist/harness/unified/adapter.js +39 -8
- package/dist/harness/unified/capabilities.d.ts +19 -5
- package/dist/harness/unified/capabilities.d.ts.map +1 -1
- package/dist/harness/unified/capabilities.js +31 -7
- package/dist/harness/unified/discovery.d.ts +1 -1
- package/dist/harness/unified/discovery.js +2 -2
- package/dist/harness/unified/promptContext.d.ts +1 -1
- package/dist/harness/unified/promptContext.js +2 -2
- package/dist/harness/unified/subprocess.d.ts +5 -5
- package/dist/harness/unified/subprocess.js +7 -7
- package/dist/hooks/dispatcher.d.ts +2 -2
- package/dist/hooks/dispatcher.d.ts.map +1 -1
- package/dist/hooks/dispatcher.js +56 -15
- package/dist/hooks/types.d.ts +6 -2
- package/dist/hooks/types.d.ts.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -4
- package/dist/logging/runLogger.d.ts.map +1 -1
- package/dist/logging/runLogger.js +2 -0
- package/dist/mcp/index.js +3 -3
- package/dist/mcp/tools/discovery.d.ts.map +1 -1
- package/dist/mcp/tools/discovery.js +31 -21
- package/dist/mcp/tools/runs.d.ts.map +1 -1
- package/dist/mcp/tools/runs.js +65 -25
- package/dist/mcp/tools/sessions.d.ts.map +1 -1
- package/dist/mcp/tools/sessions.js +48 -34
- package/dist/mcp/tools/tasks.d.ts.map +1 -1
- package/dist/mcp/tools/tasks.js +86 -36
- package/dist/mcp/transport/index.js +1 -1
- package/dist/mcp/util/registerTool.d.ts +9 -0
- package/dist/mcp/util/registerTool.d.ts.map +1 -0
- package/dist/mcp/util/registerTool.js +7 -0
- package/dist/processLibrary/active.d.ts.map +1 -1
- package/dist/processLibrary/active.js +21 -2
- package/dist/processLibrary/chaining.d.ts +18 -0
- package/dist/processLibrary/chaining.d.ts.map +1 -0
- package/dist/processLibrary/chaining.js +37 -0
- package/dist/processLibrary/forkJoin.d.ts +51 -0
- package/dist/processLibrary/forkJoin.d.ts.map +1 -0
- package/dist/processLibrary/forkJoin.js +63 -0
- package/dist/processLibrary/templates.d.ts +45 -0
- package/dist/processLibrary/templates.d.ts.map +1 -0
- package/dist/processLibrary/templates.js +164 -0
- package/dist/processLibrary/versioning.d.ts +56 -0
- package/dist/processLibrary/versioning.d.ts.map +1 -0
- package/dist/processLibrary/versioning.js +142 -0
- package/dist/prompts/capabilityCollector.d.ts.map +1 -1
- package/dist/prompts/capabilityCollector.js +24 -15
- package/dist/prompts/compose.d.ts.map +1 -1
- package/dist/prompts/compose.js +15 -2
- package/dist/prompts/context.d.ts +2 -2
- package/dist/prompts/context.d.ts.map +1 -1
- package/dist/prompts/context.js +4 -11
- package/dist/prompts/contextShared.d.ts.map +1 -1
- package/dist/prompts/contextShared.js +21 -7
- package/dist/prompts/continuityOverlay.js +1 -1
- package/dist/prompts/index.d.ts +6 -3
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +9 -6
- package/dist/prompts/inspector.d.ts +25 -0
- package/dist/prompts/inspector.d.ts.map +1 -0
- package/dist/prompts/inspector.js +43 -0
- package/dist/prompts/parts/criticalRules.d.ts.map +1 -1
- package/dist/prompts/parts/criticalRules.js +15 -2
- package/dist/prompts/parts/hostTools.d.ts +6 -0
- package/dist/prompts/parts/hostTools.d.ts.map +1 -0
- package/dist/prompts/parts/hostTools.js +40 -0
- package/dist/prompts/parts/index.d.ts +3 -0
- package/dist/prompts/parts/index.d.ts.map +1 -1
- package/dist/prompts/parts/index.js +7 -1
- package/dist/prompts/parts/longTermMemory.d.ts +3 -0
- package/dist/prompts/parts/longTermMemory.d.ts.map +1 -0
- package/dist/prompts/parts/longTermMemory.js +23 -0
- package/dist/prompts/parts/runCreation.d.ts.map +1 -1
- package/dist/prompts/parts/runCreation.js +25 -4
- package/dist/prompts/parts/safetyReversibility.d.ts +3 -0
- package/dist/prompts/parts/safetyReversibility.d.ts.map +1 -0
- package/dist/prompts/parts/safetyReversibility.js +34 -0
- package/dist/prompts/parts/taskKinds.d.ts.map +1 -1
- package/dist/prompts/parts/taskKinds.js +11 -3
- package/dist/prompts/strata.d.ts +12 -1
- package/dist/prompts/strata.d.ts.map +1 -1
- package/dist/prompts/strata.js +36 -1
- package/dist/prompts/templateRenderer.d.ts.map +1 -1
- package/dist/prompts/templateRenderer.js +114 -22
- package/dist/prompts/templates/breakpoint-handling.md +5 -2
- package/dist/prompts/templates/coding-philosophy.md +1 -0
- package/dist/prompts/templates/commands/assimilate.md +1 -1
- package/dist/prompts/templates/commands/blueprints.md +67 -0
- package/dist/prompts/templates/commands/cleanup.md +38 -10
- package/dist/prompts/templates/commands/contrib.md +1 -1
- package/dist/prompts/templates/commands/doctor.md +3 -4
- package/dist/prompts/templates/commands/forever.md +1 -1
- package/dist/prompts/templates/commands/project-install.md +1 -1
- package/dist/prompts/templates/commands/retrospect.md +1 -1
- package/dist/prompts/templates/commands/user-install.md +1 -1
- package/dist/prompts/templates/critical-rules.md +4 -2
- package/dist/prompts/templates/interview.md +14 -1
- package/dist/prompts/templates/process-creation.md +43 -0
- package/dist/prompts/templates/process-guidelines.md +6 -0
- package/dist/prompts/templates/quick-reference.md +5 -0
- package/dist/prompts/templates/recovery.md +12 -0
- package/dist/prompts/templates/run-creation.md +45 -1
- package/dist/prompts/templates/task-examples.md +28 -0
- package/dist/prompts/types.d.ts +34 -0
- package/dist/prompts/types.d.ts.map +1 -1
- package/dist/runtime/commitEffectResult.d.ts.map +1 -1
- package/dist/runtime/commitEffectResult.js +54 -0
- package/dist/runtime/createRun.d.ts.map +1 -1
- package/dist/runtime/createRun.js +10 -3
- package/dist/runtime/exceptions.d.ts +5 -0
- package/dist/runtime/exceptions.d.ts.map +1 -1
- package/dist/runtime/exceptions.js +25 -1
- package/dist/runtime/hooks/runtime.d.ts +1 -0
- package/dist/runtime/hooks/runtime.d.ts.map +1 -1
- package/dist/runtime/hooks/runtime.js +12 -0
- package/dist/runtime/intrinsics/breakpoint.js +1 -1
- package/dist/runtime/intrinsics/parallel.d.ts +1 -1
- package/dist/runtime/intrinsics/parallel.d.ts.map +1 -1
- package/dist/runtime/intrinsics/parallel.js +2 -2
- package/dist/runtime/intrinsics/subprocess.js +2 -2
- package/dist/runtime/intrinsics/task.d.ts +3 -2
- package/dist/runtime/intrinsics/task.d.ts.map +1 -1
- package/dist/runtime/intrinsics/task.js +87 -5
- package/dist/runtime/intrinsics/taskHelpers.d.ts.map +1 -1
- package/dist/runtime/intrinsics/taskHelpers.js +7 -0
- package/dist/runtime/invocation/hashInvocationKey.d.ts +2 -1
- package/dist/runtime/invocation/hashInvocationKey.d.ts.map +1 -1
- package/dist/runtime/invocation/hashInvocationKey.js +5 -1
- package/dist/runtime/orchestrateIteration.d.ts.map +1 -1
- package/dist/runtime/orchestrateIteration.js +211 -5
- package/dist/runtime/processCodeHash.d.ts +2 -0
- package/dist/runtime/processCodeHash.d.ts.map +1 -0
- package/dist/runtime/processCodeHash.js +21 -0
- package/dist/runtime/processContext.d.ts +7 -4
- package/dist/runtime/processContext.d.ts.map +1 -1
- package/dist/runtime/processContext.js +58 -2
- package/dist/runtime/replay/createReplayEngine.d.ts +2 -2
- package/dist/runtime/replay/createReplayEngine.d.ts.map +1 -1
- package/dist/runtime/replay/effectIndex.d.ts.map +1 -1
- package/dist/runtime/replay/effectIndex.js +13 -5
- package/dist/runtime/replay/stateCache.d.ts +2 -0
- package/dist/runtime/replay/stateCache.d.ts.map +1 -1
- package/dist/runtime/replay/stateCache.js +14 -3
- package/dist/runtime/runArchival.d.ts +32 -0
- package/dist/runtime/runArchival.d.ts.map +1 -0
- package/dist/runtime/runArchival.js +148 -0
- package/dist/runtime/runDiff.d.ts +44 -0
- package/dist/runtime/runDiff.d.ts.map +1 -0
- package/dist/runtime/runDiff.js +71 -0
- package/dist/runtime/runForking.d.ts +44 -0
- package/dist/runtime/runForking.d.ts.map +1 -0
- package/dist/runtime/runForking.js +50 -0
- package/dist/runtime/runLifecycleState.d.ts +1 -1
- package/dist/runtime/runLifecycleState.d.ts.map +1 -1
- package/dist/runtime/runLifecycleState.js +9 -1
- package/dist/runtime/types.d.ts +38 -5
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/runtime/workDirLeak.d.ts +8 -0
- package/dist/runtime/workDirLeak.d.ts.map +1 -0
- package/dist/runtime/workDirLeak.js +51 -0
- package/dist/sdkVersion.d.ts +5 -0
- package/dist/sdkVersion.d.ts.map +1 -0
- package/dist/sdkVersion.js +49 -0
- package/dist/session/cleanup.d.ts.map +1 -1
- package/dist/session/cleanup.js +13 -2
- package/dist/session/discovery.d.ts +6 -6
- package/dist/session/discovery.js +6 -6
- package/dist/session/index.d.ts +1 -1
- package/dist/session/index.d.ts.map +1 -1
- package/dist/session/index.js +1 -3
- package/dist/session/parse.d.ts.map +1 -1
- package/dist/session/parse.js +5 -1
- package/dist/session/types.d.ts +5 -7
- package/dist/session/types.d.ts.map +1 -1
- package/dist/session/types.js +2 -0
- package/dist/session/write.d.ts +1 -10
- package/dist/session/write.d.ts.map +1 -1
- package/dist/session/write.js +4 -31
- package/dist/storage/atomic.d.ts.map +1 -1
- package/dist/storage/atomic.js +24 -20
- package/dist/storage/createRunDir.d.ts.map +1 -1
- package/dist/storage/createRunDir.js +2 -1
- package/dist/storage/index.d.ts +1 -1
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +2 -1
- package/dist/storage/journal.d.ts.map +1 -1
- package/dist/storage/journal.js +48 -28
- package/dist/storage/lock.d.ts.map +1 -1
- package/dist/storage/lock.js +2 -0
- package/dist/storage/runFiles.d.ts +1 -0
- package/dist/storage/runFiles.d.ts.map +1 -1
- package/dist/storage/runFiles.js +5 -0
- package/dist/storage/tasks.d.ts.map +1 -1
- package/dist/storage/tasks.js +3 -2
- package/dist/storage/types.d.ts +4 -0
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/tasks/concurrentExecution.d.ts +20 -0
- package/dist/tasks/concurrentExecution.d.ts.map +1 -0
- package/dist/tasks/concurrentExecution.js +92 -0
- package/dist/tasks/defineTask.d.ts +2 -0
- package/dist/tasks/defineTask.d.ts.map +1 -1
- package/dist/tasks/defineTask.js +35 -0
- package/dist/tasks/fetchProcessor.d.ts +44 -0
- package/dist/tasks/fetchProcessor.d.ts.map +1 -0
- package/dist/tasks/fetchProcessor.js +114 -0
- package/dist/tasks/index.d.ts +5 -0
- package/dist/tasks/index.d.ts.map +1 -1
- package/dist/tasks/index.js +5 -0
- package/dist/tasks/jsRepl.d.ts +29 -0
- package/dist/tasks/jsRepl.d.ts.map +1 -0
- package/dist/tasks/jsRepl.js +110 -0
- package/dist/tasks/kinds/externalAgent.d.ts +3 -0
- package/dist/tasks/kinds/externalAgent.d.ts.map +1 -0
- package/dist/tasks/kinds/externalAgent.js +11 -0
- package/dist/tasks/kinds/index.d.ts +5 -1
- package/dist/tasks/kinds/index.d.ts.map +1 -1
- package/dist/tasks/kinds/index.js +127 -7
- package/dist/tasks/registry.d.ts +2 -0
- package/dist/tasks/registry.d.ts.map +1 -1
- package/dist/tasks/registry.js +2 -0
- package/dist/tasks/resultCache.d.ts +37 -0
- package/dist/tasks/resultCache.d.ts.map +1 -0
- package/dist/tasks/resultCache.js +81 -0
- package/dist/tasks/scheduling.d.ts +70 -0
- package/dist/tasks/scheduling.d.ts.map +1 -0
- package/dist/tasks/scheduling.js +112 -0
- package/dist/tasks/serializer.d.ts +3 -0
- package/dist/tasks/serializer.d.ts.map +1 -1
- package/dist/tasks/serializer.js +12 -0
- package/dist/tasks/sleepEffect.d.ts +40 -0
- package/dist/tasks/sleepEffect.d.ts.map +1 -0
- package/dist/tasks/sleepEffect.js +99 -0
- package/dist/tasks/structuredInteraction.d.ts +32 -0
- package/dist/tasks/structuredInteraction.d.ts.map +1 -0
- package/dist/tasks/structuredInteraction.js +73 -0
- package/dist/tasks/structuredOutput.d.ts +42 -0
- package/dist/tasks/structuredOutput.d.ts.map +1 -0
- package/dist/tasks/structuredOutput.js +137 -0
- package/dist/tasks/types.d.ts +62 -2
- package/dist/tasks/types.d.ts.map +1 -1
- package/dist/test-fixtures/kinds/index.d.ts +19 -0
- package/dist/test-fixtures/kinds/index.d.ts.map +1 -1
- package/dist/test-fixtures/kinds/index.js +18 -1
- package/dist/testing/runHarness.d.ts +2 -1
- package/dist/testing/runHarness.d.ts.map +1 -1
- package/dist/testing/runHarness.js +72 -13
- package/dist/utils/compressContext.js +2 -2
- package/dist/utils/sessionMarker.d.ts +16 -0
- package/dist/utils/sessionMarker.d.ts.map +1 -1
- package/dist/utils/sessionMarker.js +55 -20
- package/package.json +29 -14
- package/dist/harness/amuxFallbackMetadata.d.ts +0 -3
- package/dist/harness/amuxFallbackMetadata.d.ts.map +0 -1
- package/dist/harness/amuxMetadata.d.ts.map +0 -1
- package/dist/plugins/index.d.ts.map +0 -1
- package/dist/plugins/marketplace.d.ts.map +0 -1
- package/dist/plugins/marketplaceHelpers.d.ts.map +0 -1
- package/dist/plugins/migrations.d.ts.map +0 -1
- package/dist/plugins/packageReader.d.ts.map +0 -1
- package/dist/plugins/paths.d.ts.map +0 -1
- package/dist/plugins/registry.d.ts.map +0 -1
- package/dist/plugins/types.d.ts.map +0 -1
- /package/dist/{plugins → blueprints}/index.d.ts +0 -0
- /package/dist/{plugins → blueprints}/index.js +0 -0
- /package/dist/{plugins → blueprints}/marketplace.d.ts +0 -0
- /package/dist/{plugins → blueprints}/marketplaceHelpers.d.ts +0 -0
- /package/dist/{plugins → blueprints}/marketplaceHelpers.js +0 -0
- /package/dist/{plugins → blueprints}/migrations.d.ts +0 -0
- /package/dist/{plugins → blueprints}/packageReader.d.ts +0 -0
- /package/dist/{plugins → blueprints}/packageReader.js +0 -0
- /package/dist/{plugins → blueprints}/registry.d.ts +0 -0
- /package/dist/{plugins → blueprints}/registry.js +0 -0
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@ npm install @a5c-ai/babysitter-sdk
|
|
|
11
11
|
Optional breakpoint routing support:
|
|
12
12
|
|
|
13
13
|
```bash
|
|
14
|
-
npm install @a5c-ai/
|
|
14
|
+
npm install @a5c-ai/tasks-adapter
|
|
15
15
|
```
|
|
16
16
|
|
|
17
17
|
This package ships the built runtime in `dist/`, bundled command/skill templates in `skills/`, and this package README for npm auditability.
|
|
@@ -21,9 +21,9 @@ This package ships the built runtime in `dist/`, bundled command/skill templates
|
|
|
21
21
|
The package exposes three binaries:
|
|
22
22
|
|
|
23
23
|
```bash
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
npm exec --yes --package @a5c-ai/babysitter-sdk@latest -- babysitter --help
|
|
25
|
+
npm exec --yes --package @a5c-ai/babysitter-sdk@latest -- babysitter-sdk --help
|
|
26
|
+
npm exec --yes --package @a5c-ai/babysitter-sdk@latest -- babysitter-mcp-server --help
|
|
27
27
|
```
|
|
28
28
|
|
|
29
29
|
`babysitter` and `babysitter-sdk` point at the same CLI entrypoint. The public command groups currently include:
|
|
@@ -33,7 +33,7 @@ npx @a5c-ai/babysitter-sdk babysitter-mcp-server --help
|
|
|
33
33
|
- `process-library:*`, `profile:*`, and `instructions:*` for library/profile management and generated guidance
|
|
34
34
|
- `tokens:*`, `compression:*`, `log`, `hook:*`, `health`, `configure`, and `version` for operator workflows
|
|
35
35
|
|
|
36
|
-
The optional interactive runtime commands such as `create-run`, `resume-run`, `plan`, `yolo`, `observe`, and `tui` live in the separate `@a5c-ai/
|
|
36
|
+
The optional interactive runtime commands such as `create-run`, `resume-run`, `plan`, `yolo`, `observe`, and `tui` live in the separate `@a5c-ai/genty-platform` package.
|
|
37
37
|
|
|
38
38
|
## API Surface
|
|
39
39
|
|
|
@@ -59,10 +59,11 @@ npm run lint --workspace=@a5c-ai/babysitter-sdk
|
|
|
59
59
|
npm run build --workspace=@a5c-ai/babysitter-sdk
|
|
60
60
|
npm run test --workspace=@a5c-ai/babysitter-sdk
|
|
61
61
|
npm run smoke:cli --workspace=@a5c-ai/babysitter-sdk
|
|
62
|
+
npm run verify:package-health --workspace=@a5c-ai/babysitter-sdk
|
|
62
63
|
npm run verify:metadata
|
|
63
64
|
npm pack --json --dry-run --workspace=@a5c-ai/babysitter-sdk
|
|
64
65
|
```
|
|
65
66
|
|
|
66
67
|
## Release Expectations
|
|
67
68
|
|
|
68
|
-
`@a5c-ai/babysitter-sdk` is a centrally released public package. Keep this README aligned with the actual CLI/API surface, keep `package.json#files` aligned with what ships, and verify the dry-run tarball before changing release-facing behavior.
|
|
69
|
+
`@a5c-ai/babysitter-sdk` is a centrally released public package. Keep this README aligned with the actual CLI/API surface, keep `package.json#files` aligned with what ships, and verify the package health guard plus dry-run tarball before changing release-facing behavior.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/blueprints/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,8BAA8B,EAC9B,wBAAwB,EACxB,6BAA6B,EAC7B,sBAAsB,GACvB,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,EACzB,cAAc,EACd,aAAa,GACd,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marketplace.d.ts","sourceRoot":"","sources":["../../src/blueprints/marketplace.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,WAAW,EAGZ,MAAM,SAAS,CAAC;AA2BjB;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQzD;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,MAAM,EACrB,MAAM,CAAC,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,MAAM,CAAC,CA4CjB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAuBf;AAiBD;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,mBAAmB,CAAC,CAG9B;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAGnC;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,EAAE,CAAC,CAqBnB"}
|
|
@@ -24,11 +24,33 @@ const paths_1 = require("./paths");
|
|
|
24
24
|
const types_1 = require("./types");
|
|
25
25
|
const marketplaceHelpers_1 = require("./marketplaceHelpers");
|
|
26
26
|
const execFile = (0, node_util_1.promisify)(node_child_process_1.execFile);
|
|
27
|
+
function trimMarketplaceUrl(url) {
|
|
28
|
+
let cleaned = url.trimEnd();
|
|
29
|
+
if (cleaned.endsWith(".git"))
|
|
30
|
+
cleaned = cleaned.slice(0, -4);
|
|
31
|
+
while (cleaned.endsWith("/"))
|
|
32
|
+
cleaned = cleaned.slice(0, -1);
|
|
33
|
+
return cleaned;
|
|
34
|
+
}
|
|
35
|
+
function assertSafeGitRef(ref) {
|
|
36
|
+
if (!ref || ref.startsWith("-") || ref.includes("..") || ref.includes("@{") || ref.includes("\\")) {
|
|
37
|
+
throw new Error(`Invalid git ref: ${ref}`);
|
|
38
|
+
}
|
|
39
|
+
for (const char of ref) {
|
|
40
|
+
const code = char.charCodeAt(0);
|
|
41
|
+
const isDigit = code >= 48 && code <= 57;
|
|
42
|
+
const isUpper = code >= 65 && code <= 90;
|
|
43
|
+
const isLower = code >= 97 && code <= 122;
|
|
44
|
+
if (!isDigit && !isUpper && !isLower && !"/._-".includes(char)) {
|
|
45
|
+
throw new Error(`Invalid git ref: ${ref}`);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
27
49
|
/**
|
|
28
50
|
* Derives a short marketplace name from a git URL.
|
|
29
51
|
*/
|
|
30
52
|
function deriveMarketplaceName(url) {
|
|
31
|
-
const cleaned = url
|
|
53
|
+
const cleaned = trimMarketplaceUrl(url);
|
|
32
54
|
const lastSegment = cleaned.split("/").pop() ?? "";
|
|
33
55
|
const afterColon = lastSegment.split(":").pop() ?? lastSegment;
|
|
34
56
|
if (!afterColon) {
|
|
@@ -61,6 +83,7 @@ async function cloneMarketplace(url, scope, projectDir, manifestPath, branch, fo
|
|
|
61
83
|
try {
|
|
62
84
|
const cloneArgs = ["clone", "--depth", "1"];
|
|
63
85
|
if (branch) {
|
|
86
|
+
assertSafeGitRef(branch);
|
|
64
87
|
cloneArgs.push("--branch", branch);
|
|
65
88
|
}
|
|
66
89
|
cloneArgs.push(url, targetDir);
|
|
@@ -71,7 +94,7 @@ async function cloneMarketplace(url, scope, projectDir, manifestPath, branch, fo
|
|
|
71
94
|
throw new Error(`Failed to clone marketplace from ${url}: ${message}`);
|
|
72
95
|
}
|
|
73
96
|
if (manifestPath) {
|
|
74
|
-
await node_fs_1.promises.writeFile(node_path_1.default.join(targetDir, types_1.MANIFEST_PATH_FILENAME), manifestPath.
|
|
97
|
+
await node_fs_1.promises.writeFile(node_path_1.default.join(targetDir, types_1.MANIFEST_PATH_FILENAME), manifestPath.split("\\").join("/"), "utf8");
|
|
75
98
|
}
|
|
76
99
|
return targetDir;
|
|
77
100
|
}
|
|
@@ -79,7 +102,7 @@ async function cloneMarketplace(url, scope, projectDir, manifestPath, branch, fo
|
|
|
79
102
|
* Updates a previously cloned marketplace by pulling latest changes.
|
|
80
103
|
*/
|
|
81
104
|
async function updateMarketplace(marketplaceName, scope, projectDir, branch) {
|
|
82
|
-
const dir =
|
|
105
|
+
const dir = await resolveMarketplaceDir(marketplaceName, scope, projectDir);
|
|
83
106
|
try {
|
|
84
107
|
await node_fs_1.promises.access(dir);
|
|
85
108
|
}
|
|
@@ -88,6 +111,7 @@ async function updateMarketplace(marketplaceName, scope, projectDir, branch) {
|
|
|
88
111
|
}
|
|
89
112
|
try {
|
|
90
113
|
if (branch) {
|
|
114
|
+
assertSafeGitRef(branch);
|
|
91
115
|
await execFile("git", ["-C", dir, "fetch", "--depth", "1", "origin", branch]);
|
|
92
116
|
try {
|
|
93
117
|
await execFile("git", ["-C", dir, "checkout", branch]);
|
|
@@ -96,7 +120,9 @@ async function updateMarketplace(marketplaceName, scope, projectDir, branch) {
|
|
|
96
120
|
try {
|
|
97
121
|
await execFile("git", ["-C", dir, "stash"]);
|
|
98
122
|
}
|
|
99
|
-
catch {
|
|
123
|
+
catch (e) {
|
|
124
|
+
process.stderr.write(`[babysitter] git stash failed: ${e instanceof Error ? e.message : String(e)}\n`);
|
|
125
|
+
}
|
|
100
126
|
await execFile("git", ["-C", dir, "checkout", "-B", branch, "FETCH_HEAD"]);
|
|
101
127
|
}
|
|
102
128
|
}
|
|
@@ -112,8 +138,7 @@ async function updateMarketplace(marketplaceName, scope, projectDir, branch) {
|
|
|
112
138
|
* manifest and the resolved manifest file path.
|
|
113
139
|
*/
|
|
114
140
|
async function readManifestWithPath(marketplaceName, scope, projectDir) {
|
|
115
|
-
const
|
|
116
|
-
const manifestPath = await (0, marketplaceHelpers_1.resolveManifestPath)(dir);
|
|
141
|
+
const manifestPath = await resolveMarketplaceManifestPath(marketplaceName, scope, projectDir);
|
|
117
142
|
const raw = await node_fs_1.promises.readFile(manifestPath, "utf8");
|
|
118
143
|
const manifest = (0, marketplaceHelpers_1.normalizeManifest)(JSON.parse(raw));
|
|
119
144
|
return { manifest, manifestPath };
|
|
@@ -149,14 +174,71 @@ async function resolvePluginPackagePath(marketplaceName, pluginName, scope, proj
|
|
|
149
174
|
*/
|
|
150
175
|
async function listMarketplaces(scope, projectDir) {
|
|
151
176
|
const dir = (0, paths_1.getMarketplacesDir)(scope, projectDir);
|
|
177
|
+
const legacyDir = (0, paths_1.getLegacyMarketplacesDir)(scope, projectDir);
|
|
178
|
+
const names = new Set();
|
|
152
179
|
try {
|
|
153
180
|
const entries = await node_fs_1.promises.readdir(dir, { withFileTypes: true });
|
|
154
|
-
|
|
181
|
+
for (const entry of entries) {
|
|
182
|
+
if (entry.isDirectory())
|
|
183
|
+
names.add(entry.name);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
catch (error) {
|
|
187
|
+
if (!(0, types_1.isNodeError)(error) || error.code !== "ENOENT") {
|
|
188
|
+
throw error;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
try {
|
|
192
|
+
const entries = await node_fs_1.promises.readdir(legacyDir, { withFileTypes: true });
|
|
193
|
+
for (const entry of entries) {
|
|
194
|
+
if (entry.isDirectory())
|
|
195
|
+
names.add(entry.name);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
catch (error) {
|
|
199
|
+
if (!(0, types_1.isNodeError)(error) || error.code !== "ENOENT") {
|
|
200
|
+
throw error;
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
return [...names].sort();
|
|
204
|
+
}
|
|
205
|
+
async function resolveMarketplaceDir(marketplaceName, scope, projectDir) {
|
|
206
|
+
const dir = (0, paths_1.getMarketplaceDir)(marketplaceName, scope, projectDir);
|
|
207
|
+
try {
|
|
208
|
+
await node_fs_1.promises.access(dir);
|
|
209
|
+
return dir;
|
|
155
210
|
}
|
|
156
211
|
catch (error) {
|
|
157
|
-
if ((0, types_1.isNodeError)(error)
|
|
158
|
-
|
|
212
|
+
if (!(0, types_1.isNodeError)(error) || error.code !== "ENOENT") {
|
|
213
|
+
throw error;
|
|
159
214
|
}
|
|
160
|
-
throw error;
|
|
161
215
|
}
|
|
216
|
+
const legacyDir = node_path_1.default.join((0, paths_1.getLegacyMarketplacesDir)(scope, projectDir), marketplaceName);
|
|
217
|
+
try {
|
|
218
|
+
await node_fs_1.promises.access(legacyDir);
|
|
219
|
+
return legacyDir;
|
|
220
|
+
}
|
|
221
|
+
catch {
|
|
222
|
+
return dir;
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
async function resolveMarketplaceManifestPath(marketplaceName, scope, projectDir) {
|
|
226
|
+
const dir = (0, paths_1.getMarketplaceDir)(marketplaceName, scope, projectDir);
|
|
227
|
+
try {
|
|
228
|
+
return await (0, marketplaceHelpers_1.resolveManifestPath)(dir);
|
|
229
|
+
}
|
|
230
|
+
catch (error) {
|
|
231
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
232
|
+
if (!message.includes("Marketplace manifest not found")) {
|
|
233
|
+
throw error;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
const legacyDir = node_path_1.default.join((0, paths_1.getLegacyMarketplacesDir)(scope, projectDir), marketplaceName);
|
|
237
|
+
try {
|
|
238
|
+
await node_fs_1.promises.access(legacyDir);
|
|
239
|
+
}
|
|
240
|
+
catch {
|
|
241
|
+
throw new Error(`Marketplace manifest not found in ${dir}`);
|
|
242
|
+
}
|
|
243
|
+
return await (0, marketplaceHelpers_1.resolveManifestPath)(legacyDir);
|
|
162
244
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marketplaceHelpers.d.ts","sourceRoot":"","sources":["../../src/blueprints/marketplaceHelpers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EACV,mBAAmB,EAEpB,MAAM,SAAS,CAAC;AAMjB;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAsCtE;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,mBAAmB,CAoEnF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/blueprints/migrations.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,mBAAmB,EAAe,MAAM,SAAS,CAAC;AAqB3D;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,GACf,mBAAmB,GAAG,SAAS,CAsBjC;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAoBhC;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,mBAAmB,EAAE,GAChC,GAAG,CAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC,CAWpC;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,mBAAmB,EAAE,EACjC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,mBAAmB,EAAE,GAAG,SAAS,CAgCnC;AAED;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,CACzC,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,KAAK,CAAC;IAAE,UAAU,EAAE,mBAAmB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,SAAS,CAAC,CAqBlF"}
|
|
@@ -18,12 +18,24 @@ const node_fs_1 = require("node:fs");
|
|
|
18
18
|
const node_path_1 = __importDefault(require("node:path"));
|
|
19
19
|
const types_1 = require("./types");
|
|
20
20
|
/**
|
|
21
|
-
*
|
|
22
|
-
* Versions may contain digits, dots, dashes, and
|
|
23
|
-
*
|
|
24
|
-
* Examples: "1.0.0_to_1.1.0.md", "2.0.0-beta_to_2.0.0.js"
|
|
21
|
+
* Migration filenames use `<from>_to_<to>.<ext>`.
|
|
22
|
+
* Versions may contain digits, letters, dots, underscores, dashes, and
|
|
23
|
+
* pre-release identifiers.
|
|
25
24
|
*/
|
|
26
|
-
|
|
25
|
+
function isMigrationVersionSegment(value) {
|
|
26
|
+
if (!value)
|
|
27
|
+
return false;
|
|
28
|
+
for (const char of value) {
|
|
29
|
+
const code = char.charCodeAt(0);
|
|
30
|
+
const isDigit = code >= 48 && code <= 57;
|
|
31
|
+
const isUpper = code >= 65 && code <= 90;
|
|
32
|
+
const isLower = code >= 97 && code <= 122;
|
|
33
|
+
if (!isDigit && !isUpper && !isLower && char !== "." && char !== "_" && char !== "-") {
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return true;
|
|
38
|
+
}
|
|
27
39
|
/**
|
|
28
40
|
* Parses a migration filename into its constituent version parts.
|
|
29
41
|
* Returns undefined if the filename does not match the expected pattern.
|
|
@@ -31,11 +43,21 @@ const MIGRATION_FILENAME_REGEX = /^([a-zA-Z0-9._-]+)_to_([a-zA-Z0-9._-]+)\.(md|j
|
|
|
31
43
|
* @param filename - The migration filename to parse
|
|
32
44
|
*/
|
|
33
45
|
function parseMigrationFilename(filename) {
|
|
34
|
-
const
|
|
35
|
-
if (
|
|
46
|
+
const extensionIndex = filename.lastIndexOf(".");
|
|
47
|
+
if (extensionIndex <= 0)
|
|
48
|
+
return undefined;
|
|
49
|
+
const ext = filename.slice(extensionIndex + 1);
|
|
50
|
+
if (ext !== "md" && ext !== "js")
|
|
51
|
+
return undefined;
|
|
52
|
+
const base = filename.slice(0, extensionIndex);
|
|
53
|
+
const separator = "_to_";
|
|
54
|
+
const separatorIndex = base.indexOf(separator);
|
|
55
|
+
if (separatorIndex <= 0 || separatorIndex !== base.lastIndexOf(separator))
|
|
56
|
+
return undefined;
|
|
57
|
+
const from = base.slice(0, separatorIndex);
|
|
58
|
+
const to = base.slice(separatorIndex + separator.length);
|
|
59
|
+
if (!isMigrationVersionSegment(from) || !isMigrationVersionSegment(to))
|
|
36
60
|
return undefined;
|
|
37
|
-
}
|
|
38
|
-
const [, from, to, ext] = match;
|
|
39
61
|
return {
|
|
40
62
|
from,
|
|
41
63
|
to,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"packageReader.d.ts","sourceRoot":"","sources":["../../src/blueprints/packageReader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,MAAM,SAAS,CAAC;AAoDjB;;;;GAIG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,iBAAiB,CAAC,CAiC5B;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7B;AAED;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7B;AAED;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE7B;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAEhC;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,MAAM,CAAC,CAUjB"}
|
|
@@ -19,6 +19,7 @@ export declare function getRegistryPath(scope: PluginScope, projectDir?: string)
|
|
|
19
19
|
* @param projectDir - Required when scope is 'project'
|
|
20
20
|
*/
|
|
21
21
|
export declare function getMarketplacesDir(scope: PluginScope, projectDir?: string): string;
|
|
22
|
+
export declare function getLegacyMarketplacesDir(scope: PluginScope, projectDir?: string): string;
|
|
22
23
|
/**
|
|
23
24
|
* Returns the directory for a specific marketplace clone.
|
|
24
25
|
*
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/blueprints/paths.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,WAAW,EAA4B,MAAM,SAAS,CAAC;AAgChE;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CAER;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CAER;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CAER;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CAGR"}
|
|
@@ -11,6 +11,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.getRegistryPath = getRegistryPath;
|
|
13
13
|
exports.getMarketplacesDir = getMarketplacesDir;
|
|
14
|
+
exports.getLegacyMarketplacesDir = getLegacyMarketplacesDir;
|
|
14
15
|
exports.getMarketplaceDir = getMarketplaceDir;
|
|
15
16
|
const node_path_1 = __importDefault(require("node:path"));
|
|
16
17
|
const node_os_1 = require("node:os");
|
|
@@ -19,8 +20,9 @@ const types_1 = require("./types");
|
|
|
19
20
|
* Base directory name for babysitter configuration.
|
|
20
21
|
*/
|
|
21
22
|
const BABYSITTER_DIR = ".a5c";
|
|
23
|
+
const BLUEPRINTS_SUBDIR = "blueprints";
|
|
22
24
|
/**
|
|
23
|
-
* Subdirectory within the
|
|
25
|
+
* Subdirectory within the blueprint config dir for marketplace clones.
|
|
24
26
|
*/
|
|
25
27
|
const MARKETPLACES_SUBDIR = "marketplaces";
|
|
26
28
|
/**
|
|
@@ -54,6 +56,9 @@ function getRegistryPath(scope, projectDir) {
|
|
|
54
56
|
* @param projectDir - Required when scope is 'project'
|
|
55
57
|
*/
|
|
56
58
|
function getMarketplacesDir(scope, projectDir) {
|
|
59
|
+
return node_path_1.default.join(getBaseDir(scope, projectDir), BLUEPRINTS_SUBDIR, MARKETPLACES_SUBDIR);
|
|
60
|
+
}
|
|
61
|
+
function getLegacyMarketplacesDir(scope, projectDir) {
|
|
57
62
|
return node_path_1.default.join(getBaseDir(scope, projectDir), MARKETPLACES_SUBDIR);
|
|
58
63
|
}
|
|
59
64
|
/**
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/blueprints/registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,WAAW,EAGZ,MAAM,SAAS,CAAC;AAajB;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,cAAc,CAAC,CAWzB;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,MAAM,GACjB,mBAAmB,GAAG,SAAS,CAEjC;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,mBAAmB,GACzB,cAAc,CAahB;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,MAAM,GACjB,cAAc,CAYhB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,cAAc,GACvB,mBAAmB,EAAE,CAIvB"}
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Blueprint types for Babysitter SDK marketplace installables.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* package metadata.
|
|
4
|
+
* The deprecated Plugin* aliases remain for one-version compatibility with
|
|
5
|
+
* existing SDK callers while the CLI and docs migrate to blueprint naming.
|
|
7
6
|
*/
|
|
8
7
|
/**
|
|
9
8
|
* Schema version for plugin registry serialization.
|
|
10
9
|
* Used to detect and migrate older registry formats.
|
|
11
10
|
*/
|
|
12
|
-
export declare const
|
|
11
|
+
export declare const BLUEPRINT_REGISTRY_SCHEMA_VERSION = "2026.01.blueprint-registry-v1";
|
|
12
|
+
export declare const PLUGIN_REGISTRY_SCHEMA_VERSION = "2026.01.blueprint-registry-v1";
|
|
13
13
|
/**
|
|
14
14
|
* Filename for the JSON-serialized plugin registry.
|
|
15
15
|
*/
|
|
16
|
-
export declare const
|
|
16
|
+
export declare const BLUEPRINT_REGISTRY_FILENAME = "blueprint-registry.json";
|
|
17
|
+
export declare const PLUGIN_REGISTRY_FILENAME = "blueprint-registry.json";
|
|
17
18
|
/**
|
|
18
19
|
* Filename for the marketplace manifest within a cloned marketplace directory.
|
|
19
20
|
*/
|
|
@@ -29,7 +30,8 @@ export declare const MANIFEST_PATH_FILENAME = ".babysitter-manifest-path";
|
|
|
29
30
|
* - `global` — User-wide configuration in the home directory
|
|
30
31
|
* - `project` — Project-specific configuration in the project root
|
|
31
32
|
*/
|
|
32
|
-
export type
|
|
33
|
+
export type BlueprintScope = "global" | "project";
|
|
34
|
+
export type PluginScope = BlueprintScope;
|
|
33
35
|
/**
|
|
34
36
|
* Type guard for Node.js system errors with an error code property.
|
|
35
37
|
*/
|
|
@@ -37,7 +39,7 @@ export declare function isNodeError(error: unknown): error is NodeJS.ErrnoExcept
|
|
|
37
39
|
/**
|
|
38
40
|
* A single plugin entry within the registry.
|
|
39
41
|
*/
|
|
40
|
-
export interface
|
|
42
|
+
export interface BlueprintRegistryEntry {
|
|
41
43
|
/** Plugin identifier (e.g. "babysitter@a5c.ai") */
|
|
42
44
|
name: string;
|
|
43
45
|
/** Currently installed semantic version */
|
|
@@ -45,7 +47,7 @@ export interface PluginRegistryEntry {
|
|
|
45
47
|
/** Name of the marketplace this plugin was sourced from */
|
|
46
48
|
marketplace: string;
|
|
47
49
|
/** Whether this plugin is installed globally or per-project */
|
|
48
|
-
scope:
|
|
50
|
+
scope: BlueprintScope;
|
|
49
51
|
/** ISO 8601 timestamp of initial installation */
|
|
50
52
|
installedAt: string;
|
|
51
53
|
/** ISO 8601 timestamp of most recent update */
|
|
@@ -58,18 +60,20 @@ export interface PluginRegistryEntry {
|
|
|
58
60
|
/**
|
|
59
61
|
* The full plugin registry, persisted as JSON.
|
|
60
62
|
*/
|
|
61
|
-
export
|
|
63
|
+
export type PluginRegistryEntry = BlueprintRegistryEntry;
|
|
64
|
+
export interface BlueprintRegistry {
|
|
62
65
|
/** Schema version for forward compatibility */
|
|
63
66
|
schemaVersion: typeof PLUGIN_REGISTRY_SCHEMA_VERSION;
|
|
64
67
|
/** ISO 8601 timestamp of last registry modification */
|
|
65
68
|
updatedAt: string;
|
|
66
69
|
/** Map of plugin name to registry entry */
|
|
67
|
-
plugins: Record<string,
|
|
70
|
+
plugins: Record<string, BlueprintRegistryEntry>;
|
|
68
71
|
}
|
|
72
|
+
export type PluginRegistry = BlueprintRegistry;
|
|
69
73
|
/**
|
|
70
74
|
* A single plugin entry within a marketplace manifest.
|
|
71
75
|
*/
|
|
72
|
-
export interface
|
|
76
|
+
export interface MarketplaceBlueprintEntry {
|
|
73
77
|
/** Human-readable plugin name */
|
|
74
78
|
name: string;
|
|
75
79
|
/** Short description of the plugin */
|
|
@@ -88,6 +92,7 @@ export interface MarketplacePluginEntry {
|
|
|
88
92
|
/**
|
|
89
93
|
* The marketplace manifest, read from a cloned marketplace repository.
|
|
90
94
|
*/
|
|
95
|
+
export type MarketplacePluginEntry = MarketplaceBlueprintEntry;
|
|
91
96
|
export interface MarketplaceManifest {
|
|
92
97
|
/** Human-readable marketplace name */
|
|
93
98
|
name: string;
|
|
@@ -98,7 +103,7 @@ export interface MarketplaceManifest {
|
|
|
98
103
|
/** Marketplace owner name or organization */
|
|
99
104
|
owner: string;
|
|
100
105
|
/** Map of plugin name to marketplace plugin entry */
|
|
101
|
-
plugins: Record<string,
|
|
106
|
+
plugins: Record<string, MarketplaceBlueprintEntry>;
|
|
102
107
|
}
|
|
103
108
|
/**
|
|
104
109
|
* Describes a single migration step between two plugin versions.
|
|
@@ -116,7 +121,7 @@ export interface MigrationDescriptor {
|
|
|
116
121
|
/**
|
|
117
122
|
* Aggregated information read from a plugin package directory.
|
|
118
123
|
*/
|
|
119
|
-
export interface
|
|
124
|
+
export interface BlueprintPackageInfo {
|
|
120
125
|
/** Plugin identifier */
|
|
121
126
|
name: string;
|
|
122
127
|
/** Markdown install instructions, or undefined if not present */
|
|
@@ -130,4 +135,5 @@ export interface PluginPackageInfo {
|
|
|
130
135
|
/** List of process definition file paths relative to the package */
|
|
131
136
|
processFiles: string[];
|
|
132
137
|
}
|
|
138
|
+
export type PluginPackageInfo = BlueprintPackageInfo;
|
|
133
139
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/blueprints/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,eAAO,MAAM,iCAAiC,kCAAkC,CAAC;AACjF,eAAO,MAAM,8BAA8B,kCAAoC,CAAC;AAEhF;;GAEG;AACH,eAAO,MAAM,2BAA2B,4BAA4B,CAAC;AACrE,eAAO,MAAM,wBAAwB,4BAA8B,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,6BAA6B,qBAAqB,CAAC;AAEhE;;;GAGG;AACH,eAAO,MAAM,sBAAsB,8BAA8B,CAAC;AAElE;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,SAAS,CAAC;AAClD,MAAM,MAAM,WAAW,GAAG,cAAc,CAAC;AAEzC;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,cAAc,CAE1E;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,mDAAmD;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,WAAW,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,KAAK,EAAE,cAAc,CAAC;IACtB,iDAAiD;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,sEAAsE;IACtE,WAAW,EAAE,MAAM,CAAC;IACpB,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,sBAAsB,CAAC;AAEzD,MAAM,WAAW,iBAAiB;IAChC,+CAA+C;IAC/C,aAAa,EAAE,OAAO,8BAA8B,CAAC;IACrD,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,2CAA2C;IAC3C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;CACjD;AAED,MAAM,MAAM,cAAc,GAAG,iBAAiB,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,iCAAiC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,aAAa,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,2EAA2E;IAC3E,WAAW,EAAE,MAAM,CAAC;IACpB,yCAAyC;IACzC,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,uCAAuC;IACvC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,yBAAyB,CAAC;AAE/D,MAAM,WAAW,mBAAmB;IAClC,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,GAAG,EAAE,MAAM,CAAC;IACZ,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;CACpD;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,iEAAiE;IACjE,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,mEAAmE;IACnE,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,mEAAmE;IACnE,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,+DAA+D;IAC/D,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,oEAAoE;IACpE,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,MAAM,iBAAiB,GAAG,oBAAoB,CAAC"}
|
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* Blueprint types for Babysitter SDK marketplace installables.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* package metadata.
|
|
5
|
+
* The deprecated Plugin* aliases remain for one-version compatibility with
|
|
6
|
+
* existing SDK callers while the CLI and docs migrate to blueprint naming.
|
|
8
7
|
*/
|
|
9
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.MANIFEST_PATH_FILENAME = exports.MARKETPLACE_MANIFEST_FILENAME = exports.PLUGIN_REGISTRY_FILENAME = exports.PLUGIN_REGISTRY_SCHEMA_VERSION = void 0;
|
|
9
|
+
exports.MANIFEST_PATH_FILENAME = exports.MARKETPLACE_MANIFEST_FILENAME = exports.PLUGIN_REGISTRY_FILENAME = exports.BLUEPRINT_REGISTRY_FILENAME = exports.PLUGIN_REGISTRY_SCHEMA_VERSION = exports.BLUEPRINT_REGISTRY_SCHEMA_VERSION = void 0;
|
|
11
10
|
exports.isNodeError = isNodeError;
|
|
12
11
|
/**
|
|
13
12
|
* Schema version for plugin registry serialization.
|
|
14
13
|
* Used to detect and migrate older registry formats.
|
|
15
14
|
*/
|
|
16
|
-
exports.
|
|
15
|
+
exports.BLUEPRINT_REGISTRY_SCHEMA_VERSION = "2026.01.blueprint-registry-v1";
|
|
16
|
+
exports.PLUGIN_REGISTRY_SCHEMA_VERSION = exports.BLUEPRINT_REGISTRY_SCHEMA_VERSION;
|
|
17
17
|
/**
|
|
18
18
|
* Filename for the JSON-serialized plugin registry.
|
|
19
19
|
*/
|
|
20
|
-
exports.
|
|
20
|
+
exports.BLUEPRINT_REGISTRY_FILENAME = "blueprint-registry.json";
|
|
21
|
+
exports.PLUGIN_REGISTRY_FILENAME = exports.BLUEPRINT_REGISTRY_FILENAME;
|
|
21
22
|
/**
|
|
22
23
|
* Filename for the marketplace manifest within a cloned marketplace directory.
|
|
23
24
|
*/
|
|
@@ -15,7 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
exports.evaluateAutoApproval = evaluateAutoApproval;
|
|
16
16
|
const patterns_1 = require("./patterns");
|
|
17
17
|
// ---------------------------------------------------------------------------
|
|
18
|
-
// Inlined posture helpers (canonical implementation moved to
|
|
18
|
+
// Inlined posture helpers (canonical implementation moved to agent-platform)
|
|
19
19
|
// ---------------------------------------------------------------------------
|
|
20
20
|
const DEFAULT_POSTURES = {
|
|
21
21
|
read: { name: 'permissive', allowAutoApprove: true, minConsecutiveApprovalsForAutoN: 0, requireExplicitRule: false, requiredApproverLevel: 'any' },
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Optional integration with @a5c-ai/
|
|
2
|
+
* Optional integration with @a5c-ai/tasks-adapter proven subsystem.
|
|
3
3
|
*
|
|
4
4
|
* Provides cryptographic verification of breakpoint answers when the
|
|
5
|
-
*
|
|
5
|
+
* adapters-tasks package is available as an optional peer dependency.
|
|
6
6
|
* Never throws -- always returns a graceful result.
|
|
7
7
|
*/
|
|
8
8
|
/**
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
export interface BreakpointVerificationConfig {
|
|
12
12
|
/** Whether verification is enabled. When false, verification is skipped. */
|
|
13
13
|
enabled: boolean;
|
|
14
|
-
/** Directory containing trusted public keys. Passed to
|
|
14
|
+
/** Directory containing trusted public keys. Passed to adapters-tasks verifyAnswer. */
|
|
15
15
|
trustedKeysDir?: string;
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
@@ -20,7 +20,7 @@ export interface BreakpointVerificationConfig {
|
|
|
20
20
|
export interface BreakpointVerificationResult {
|
|
21
21
|
/** Whether the answer was successfully verified as authentic. */
|
|
22
22
|
verified: boolean;
|
|
23
|
-
/** Detailed verification result from
|
|
23
|
+
/** Detailed verification result from adapters-tasks (when available). */
|
|
24
24
|
verificationResult?: {
|
|
25
25
|
valid: boolean;
|
|
26
26
|
publicKeyFingerprint?: string;
|
|
@@ -38,9 +38,9 @@ export interface BreakpointVerificationResult {
|
|
|
38
38
|
export declare function hasSignatureFields(result: Record<string, unknown>): boolean;
|
|
39
39
|
/**
|
|
40
40
|
* Verify a breakpoint result's cryptographic signature using the
|
|
41
|
-
*
|
|
41
|
+
* adapters-tasks proven subsystem.
|
|
42
42
|
*
|
|
43
|
-
* This function never throws. If
|
|
43
|
+
* This function never throws. If adapters-tasks is not installed,
|
|
44
44
|
* verification is disabled, or the result is unsigned, it returns
|
|
45
45
|
* a graceful { verified: false } result with an explanatory reason.
|
|
46
46
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proven-verification.d.ts","sourceRoot":"","sources":["../../src/breakpoints/proven-verification.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,4EAA4E;IAC5E,OAAO,EAAE,OAAO,CAAC;IACjB,
|
|
1
|
+
{"version":3,"file":"proven-verification.d.ts","sourceRoot":"","sources":["../../src/breakpoints/proven-verification.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,4EAA4E;IAC5E,OAAO,EAAE,OAAO,CAAC;IACjB,uFAAuF;IACvF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,iEAAiE;IACjE,QAAQ,EAAE,OAAO,CAAC;IAClB,yEAAyE;IACzE,kBAAkB,CAAC,EAAE;QACnB,KAAK,EAAE,OAAO,CAAC;QACf,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,0EAA0E;IAC1E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAaD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAI3E;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,MAAM,CAAC,EAAE,4BAA4B,GACpC,OAAO,CAAC,4BAA4B,CAAC,CAuEvC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Optional integration with @a5c-ai/
|
|
3
|
+
* Optional integration with @a5c-ai/tasks-adapter proven subsystem.
|
|
4
4
|
*
|
|
5
5
|
* Provides cryptographic verification of breakpoint answers when the
|
|
6
|
-
*
|
|
6
|
+
* adapters-tasks package is available as an optional peer dependency.
|
|
7
7
|
* Never throws -- always returns a graceful result.
|
|
8
8
|
*/
|
|
9
9
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
@@ -61,9 +61,9 @@ function hasSignatureFields(result) {
|
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
63
63
|
* Verify a breakpoint result's cryptographic signature using the
|
|
64
|
-
*
|
|
64
|
+
* adapters-tasks proven subsystem.
|
|
65
65
|
*
|
|
66
|
-
* This function never throws. If
|
|
66
|
+
* This function never throws. If adapters-tasks is not installed,
|
|
67
67
|
* verification is disabled, or the result is unsigned, it returns
|
|
68
68
|
* a graceful { verified: false } result with an explanatory reason.
|
|
69
69
|
*
|
|
@@ -80,18 +80,18 @@ async function verifyBreakpointResult(result, config) {
|
|
|
80
80
|
if (!hasSignatureFields(result)) {
|
|
81
81
|
return { verified: false, reason: "result is not signed" };
|
|
82
82
|
}
|
|
83
|
-
// Attempt to dynamically import
|
|
83
|
+
// Attempt to dynamically import adapters-tasks proven subsystem.
|
|
84
84
|
// The module is an optional peer dependency -- the import may fail at runtime.
|
|
85
85
|
// We use a string variable to prevent TypeScript from statically resolving the import.
|
|
86
86
|
try {
|
|
87
|
-
const modulePath = "@a5c-ai/
|
|
87
|
+
const modulePath = "@a5c-ai/tasks-adapter/proven";
|
|
88
88
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
89
89
|
const proven = await Promise.resolve(`${modulePath}`).then(s => __importStar(require(s)));
|
|
90
90
|
const { verifyAnswer } = proven;
|
|
91
91
|
if (typeof verifyAnswer !== "function") {
|
|
92
92
|
return {
|
|
93
93
|
verified: false,
|
|
94
|
-
reason: "
|
|
94
|
+
reason: "adapters-tasks/proven does not export verifyAnswer",
|
|
95
95
|
};
|
|
96
96
|
}
|
|
97
97
|
const verificationResult = await verifyAnswer(result, effectiveConfig.trustedKeysDir);
|
|
@@ -101,7 +101,7 @@ async function verifyBreakpointResult(result, config) {
|
|
|
101
101
|
};
|
|
102
102
|
}
|
|
103
103
|
catch (err) {
|
|
104
|
-
// Dynamic import failed --
|
|
104
|
+
// Dynamic import failed -- adapters-tasks is not installed or broken
|
|
105
105
|
const message = err instanceof Error ? err.message : String(err);
|
|
106
106
|
if (message.includes("Cannot find module") ||
|
|
107
107
|
message.includes("MODULE_NOT_FOUND") ||
|
|
@@ -109,7 +109,7 @@ async function verifyBreakpointResult(result, config) {
|
|
|
109
109
|
message.includes("Could not resolve")) {
|
|
110
110
|
return {
|
|
111
111
|
verified: false,
|
|
112
|
-
reason: "
|
|
112
|
+
reason: "tasks-adapter not installed",
|
|
113
113
|
};
|
|
114
114
|
}
|
|
115
115
|
return {
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface ExistingRunInfo {
|
|
2
|
+
runId: string;
|
|
3
|
+
runDir: string;
|
|
4
|
+
processId: string;
|
|
5
|
+
isBareRun: boolean;
|
|
6
|
+
entrypoint: {
|
|
7
|
+
importPath: string;
|
|
8
|
+
exportName?: string;
|
|
9
|
+
};
|
|
10
|
+
completionProof?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function detectExistingRun(): Promise<ExistingRunInfo | undefined>;
|
|
13
|
+
export declare function formatExistingRunBlock(existingRun: ExistingRunInfo): string;
|
|
14
|
+
//# sourceMappingURL=detectExistingRun.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detectExistingRun.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/detectExistingRun.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CA0B9E;AAED,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,eAAe,GAAG,MAAM,CAiB3E"}
|