rivet-design 0.12.4 → 0.13.0
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 +50 -26
- package/README.npm.md +50 -26
- package/bin/rivet.js +39 -24
- package/dist/{mcp/agent-variants → agent-variants}/SessionStore.d.ts +11 -19
- package/dist/agent-variants/SessionStore.d.ts.map +1 -0
- package/dist/{mcp/agent-variants → agent-variants}/SessionStore.js +64 -79
- package/dist/agent-variants/SessionStore.js.map +1 -0
- package/dist/{mcp/agent-variants → agent-variants}/WorktreeOrchestrator.d.ts +53 -21
- package/dist/agent-variants/WorktreeOrchestrator.d.ts.map +1 -0
- package/dist/{mcp/agent-variants → agent-variants}/WorktreeOrchestrator.js +291 -49
- package/dist/agent-variants/WorktreeOrchestrator.js.map +1 -0
- package/dist/{mcp/agent-variants → agent-variants}/WorktreeOrchestrator.testHelpers.d.ts +1 -9
- package/dist/agent-variants/WorktreeOrchestrator.testHelpers.d.ts.map +1 -0
- package/dist/{mcp/agent-variants → agent-variants}/WorktreeOrchestrator.testHelpers.js +3 -18
- package/dist/agent-variants/WorktreeOrchestrator.testHelpers.js.map +1 -0
- package/dist/agent-variants/briefContent.d.ts.map +1 -0
- package/dist/agent-variants/briefContent.js.map +1 -0
- package/dist/{mcp/agent-variants → agent-variants}/contracts.d.ts +715 -721
- package/dist/agent-variants/contracts.d.ts.map +1 -0
- package/dist/{mcp/agent-variants → agent-variants}/contracts.js +2 -3
- package/dist/agent-variants/contracts.js.map +1 -0
- package/dist/agent-variants/createProjectArtifacts.d.ts.map +1 -0
- package/dist/agent-variants/createProjectArtifacts.js.map +1 -0
- package/dist/agent-variants/diffQa.d.ts.map +1 -0
- package/dist/agent-variants/diffQa.js.map +1 -0
- package/dist/{mcp/agent-variants → agent-variants}/elementRefToTarget.d.ts +1 -1
- package/dist/agent-variants/elementRefToTarget.d.ts.map +1 -0
- package/dist/agent-variants/elementRefToTarget.js.map +1 -0
- package/dist/agent-variants/errors.d.ts.map +1 -0
- package/dist/agent-variants/errors.js.map +1 -0
- package/dist/agent-variants/generatedDestination.d.ts +29 -0
- package/dist/agent-variants/generatedDestination.d.ts.map +1 -0
- package/dist/agent-variants/generatedDestination.js +59 -0
- package/dist/agent-variants/generatedDestination.js.map +1 -0
- package/dist/{mcp/agent-variants → agent-variants}/index.d.ts +3 -6
- package/dist/agent-variants/index.d.ts.map +1 -0
- package/dist/{mcp/agent-variants → agent-variants}/index.js +3 -6
- package/dist/agent-variants/index.js.map +1 -0
- package/dist/agent-variants/previewQa.d.ts.map +1 -0
- package/dist/agent-variants/previewQa.js.map +1 -0
- package/dist/agent-variants/runLabel.d.ts.map +1 -0
- package/dist/agent-variants/runLabel.js.map +1 -0
- package/dist/agent-variants/runPlan.d.ts.map +1 -0
- package/dist/agent-variants/runPlan.js.map +1 -0
- package/dist/agent-variants/sourceContext.d.ts.map +1 -0
- package/dist/agent-variants/sourceContext.js.map +1 -0
- package/dist/agent-variants/variantContext.d.ts.map +1 -0
- package/dist/agent-variants/variantContext.js.map +1 -0
- package/dist/cli/client.d.ts +43 -0
- package/dist/cli/client.d.ts.map +1 -0
- package/dist/cli/client.js +109 -0
- package/dist/cli/client.js.map +1 -0
- package/dist/cli/commandNames.d.ts +9 -0
- package/dist/cli/commandNames.d.ts.map +1 -0
- package/dist/cli/commandNames.js +24 -0
- package/dist/cli/commandNames.js.map +1 -0
- package/dist/cli/commands/auth.d.ts +10 -0
- package/dist/cli/commands/auth.d.ts.map +1 -0
- package/dist/cli/commands/auth.js +81 -0
- package/dist/cli/commands/auth.js.map +1 -0
- package/dist/cli/commands/elementSelector.d.ts +10 -0
- package/dist/cli/commands/elementSelector.d.ts.map +1 -0
- package/dist/cli/commands/elementSelector.js +41 -0
- package/dist/cli/commands/elementSelector.js.map +1 -0
- package/dist/cli/commands/evidence.d.ts +9 -0
- package/dist/cli/commands/evidence.d.ts.map +1 -0
- package/dist/cli/commands/evidence.js +85 -0
- package/dist/cli/commands/evidence.js.map +1 -0
- package/dist/cli/commands/mcpServe.d.ts +40 -0
- package/dist/cli/commands/mcpServe.d.ts.map +1 -0
- package/dist/cli/commands/mcpServe.js +440 -0
- package/dist/cli/commands/mcpServe.js.map +1 -0
- package/dist/cli/commands/open.d.ts +28 -0
- package/dist/cli/commands/open.d.ts.map +1 -0
- package/dist/cli/commands/open.js +280 -0
- package/dist/cli/commands/open.js.map +1 -0
- package/dist/cli/commands/reference.d.ts +8 -0
- package/dist/cli/commands/reference.d.ts.map +1 -0
- package/dist/cli/commands/reference.js +101 -0
- package/dist/cli/commands/reference.js.map +1 -0
- package/dist/cli/commands/serve.d.ts +9 -0
- package/dist/cli/commands/serve.d.ts.map +1 -0
- package/dist/cli/commands/serve.js +182 -0
- package/dist/cli/commands/serve.js.map +1 -0
- package/dist/cli/commands/shared.d.ts +31 -0
- package/dist/cli/commands/shared.d.ts.map +1 -0
- package/dist/cli/commands/shared.js +82 -0
- package/dist/cli/commands/shared.js.map +1 -0
- package/dist/cli/commands/status.d.ts +10 -0
- package/dist/cli/commands/status.d.ts.map +1 -0
- package/dist/cli/commands/status.js +61 -0
- package/dist/cli/commands/status.js.map +1 -0
- package/dist/cli/commands/stop.d.ts +8 -0
- package/dist/cli/commands/stop.d.ts.map +1 -0
- package/dist/cli/commands/stop.js +41 -0
- package/dist/cli/commands/stop.js.map +1 -0
- package/dist/cli/commands/variants.d.ts +4 -0
- package/dist/cli/commands/variants.d.ts.map +1 -0
- package/dist/cli/commands/variants.js +374 -0
- package/dist/cli/commands/variants.js.map +1 -0
- package/dist/cli/commands/wait.d.ts +10 -0
- package/dist/cli/commands/wait.d.ts.map +1 -0
- package/dist/cli/commands/wait.js +101 -0
- package/dist/cli/commands/wait.js.map +1 -0
- package/dist/cli/entry.d.ts +12 -0
- package/dist/cli/entry.d.ts.map +1 -0
- package/dist/cli/entry.js +61 -0
- package/dist/cli/entry.js.map +1 -0
- package/dist/cli/envelope.d.ts +60 -0
- package/dist/cli/envelope.d.ts.map +1 -0
- package/dist/cli/envelope.js +57 -0
- package/dist/cli/envelope.js.map +1 -0
- package/dist/cli/flags.d.ts +20 -0
- package/dist/cli/flags.d.ts.map +1 -0
- package/dist/cli/flags.js +72 -0
- package/dist/cli/flags.js.map +1 -0
- package/dist/cli/handoff.d.ts +54 -0
- package/dist/cli/handoff.d.ts.map +1 -0
- package/dist/cli/handoff.js +106 -0
- package/dist/cli/handoff.js.map +1 -0
- package/dist/cli/handoffStore.d.ts +24 -0
- package/dist/cli/handoffStore.d.ts.map +1 -0
- package/dist/cli/handoffStore.js +49 -0
- package/dist/cli/handoffStore.js.map +1 -0
- package/dist/cli/hostWorkNextAction.d.ts +45 -0
- package/dist/cli/hostWorkNextAction.d.ts.map +1 -0
- package/dist/cli/hostWorkNextAction.js +43 -0
- package/dist/cli/hostWorkNextAction.js.map +1 -0
- package/dist/cli/io.d.ts +17 -0
- package/dist/cli/io.d.ts.map +1 -0
- package/dist/cli/io.js +19 -0
- package/dist/cli/io.js.map +1 -0
- package/dist/cli/router.d.ts +23 -0
- package/dist/cli/router.d.ts.map +1 -0
- package/dist/cli/router.js +236 -0
- package/dist/cli/router.js.map +1 -0
- package/dist/cli/runnerSelection.d.ts +60 -0
- package/dist/cli/runnerSelection.d.ts.map +1 -0
- package/dist/cli/runnerSelection.js +93 -0
- package/dist/cli/runnerSelection.js.map +1 -0
- package/dist/cli/serverHandshake.d.ts +51 -0
- package/dist/cli/serverHandshake.d.ts.map +1 -0
- package/dist/cli/serverHandshake.js +144 -0
- package/dist/cli/serverHandshake.js.map +1 -0
- package/dist/index.d.ts +2 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +84 -138
- package/dist/index.js.map +1 -1
- package/dist/install/allowlists.d.ts +65 -0
- package/dist/install/allowlists.d.ts.map +1 -0
- package/dist/install/allowlists.js +333 -0
- package/dist/install/allowlists.js.map +1 -0
- package/dist/install/codexGuidance.d.ts +11 -0
- package/dist/install/codexGuidance.d.ts.map +1 -0
- package/dist/install/codexGuidance.js +90 -0
- package/dist/install/codexGuidance.js.map +1 -0
- package/dist/install/harnesses.d.ts +37 -26
- package/dist/install/harnesses.d.ts.map +1 -1
- package/dist/install/harnesses.js +312 -502
- package/dist/install/harnesses.js.map +1 -1
- package/dist/install/legacyMcp.d.ts +26 -0
- package/dist/install/legacyMcp.d.ts.map +1 -0
- package/dist/install/legacyMcp.js +160 -0
- package/dist/install/legacyMcp.js.map +1 -0
- package/dist/install/mcpRegistration.d.ts +45 -0
- package/dist/install/mcpRegistration.d.ts.map +1 -0
- package/dist/install/mcpRegistration.js +215 -0
- package/dist/install/mcpRegistration.js.map +1 -0
- package/dist/mcp/changeBatchClassification.d.ts +18 -20
- package/dist/mcp/changeBatchClassification.d.ts.map +1 -1
- package/dist/mcp/changeBatchClassification.js +41 -46
- package/dist/mcp/changeBatchClassification.js.map +1 -1
- package/dist/proxy-middleware/proxy-config.d.ts +6 -0
- package/dist/proxy-middleware/proxy-config.d.ts.map +1 -1
- package/dist/proxy-middleware/proxy-config.js +162 -5
- package/dist/proxy-middleware/proxy-config.js.map +1 -1
- package/dist/routes/agentVariants.d.ts +14 -2
- package/dist/routes/agentVariants.d.ts.map +1 -1
- package/dist/routes/agentVariants.js +321 -65
- package/dist/routes/agentVariants.js.map +1 -1
- package/dist/routes/cli.d.ts +31 -0
- package/dist/routes/cli.d.ts.map +1 -0
- package/dist/routes/cli.js +95 -0
- package/dist/routes/cli.js.map +1 -0
- package/dist/routes/git.d.ts +1 -0
- package/dist/routes/git.d.ts.map +1 -1
- package/dist/routes/git.js +2 -1
- package/dist/routes/git.js.map +1 -1
- package/dist/routes/inlineStartTracker.d.ts +23 -0
- package/dist/routes/inlineStartTracker.d.ts.map +1 -0
- package/dist/routes/inlineStartTracker.js +17 -0
- package/dist/routes/inlineStartTracker.js.map +1 -0
- package/dist/routes/mcp.d.ts +2 -12
- package/dist/routes/mcp.d.ts.map +1 -1
- package/dist/routes/mcp.js +4 -785
- package/dist/routes/mcp.js.map +1 -1
- package/dist/server.d.ts +24 -9
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +169 -33
- package/dist/server.js.map +1 -1
- package/dist/services/CommitMessageGenerator.d.ts +9 -1
- package/dist/services/CommitMessageGenerator.d.ts.map +1 -1
- package/dist/services/CommitMessageGenerator.js +4 -1
- package/dist/services/CommitMessageGenerator.js.map +1 -1
- package/dist/services/ComponentSearchService.d.ts +4 -1
- package/dist/services/ComponentSearchService.d.ts.map +1 -1
- package/dist/services/ComponentSearchService.js.map +1 -1
- package/dist/services/ConfigManager.d.ts +8 -0
- package/dist/services/ConfigManager.d.ts.map +1 -1
- package/dist/services/ConfigManager.js +9 -0
- package/dist/services/ConfigManager.js.map +1 -1
- package/dist/services/HistoryReplayService.d.ts +20 -9
- package/dist/services/HistoryReplayService.d.ts.map +1 -1
- package/dist/services/HistoryReplayService.js +99 -43
- package/dist/services/HistoryReplayService.js.map +1 -1
- package/dist/services/MCPVariantsTelemetry.d.ts +1 -1
- package/dist/services/MCPVariantsTelemetry.d.ts.map +1 -1
- package/dist/services/MCPVariantsTelemetry.js +1 -0
- package/dist/services/MCPVariantsTelemetry.js.map +1 -1
- package/dist/services/PRTitleGenerator.d.ts +10 -2
- package/dist/services/PRTitleGenerator.d.ts.map +1 -1
- package/dist/services/PRTitleGenerator.js +8 -2
- package/dist/services/PRTitleGenerator.js.map +1 -1
- package/dist/services/ProjectDetectionService.d.ts.map +1 -1
- package/dist/services/ProjectDetectionService.js +14 -4
- package/dist/services/ProjectDetectionService.js.map +1 -1
- package/dist/services/ProjectMetadataStore.d.ts +115 -0
- package/dist/services/ProjectMetadataStore.d.ts.map +1 -0
- package/dist/services/ProjectMetadataStore.js +336 -0
- package/dist/services/ProjectMetadataStore.js.map +1 -0
- package/dist/services/SessionBridgeService.d.ts +52 -224
- package/dist/services/SessionBridgeService.d.ts.map +1 -1
- package/dist/services/SessionBridgeService.js +97 -649
- package/dist/services/SessionBridgeService.js.map +1 -1
- package/dist/services/SessionService.d.ts +4 -1
- package/dist/services/SessionService.d.ts.map +1 -1
- package/dist/services/SessionService.js +7 -4
- package/dist/services/SessionService.js.map +1 -1
- package/dist/services/StaticFileService.d.ts.map +1 -1
- package/dist/services/StaticFileService.js +6 -0
- package/dist/services/StaticFileService.js.map +1 -1
- package/dist/services/TelemetryService.d.ts +16 -80
- package/dist/services/TelemetryService.d.ts.map +1 -1
- package/dist/services/TelemetryService.js +18 -94
- package/dist/services/TelemetryService.js.map +1 -1
- package/dist/services/VariantGenerationService.d.ts +52 -0
- package/dist/services/VariantGenerationService.d.ts.map +1 -0
- package/dist/services/VariantGenerationService.js +272 -0
- package/dist/services/VariantGenerationService.js.map +1 -0
- package/dist/services/VariantHistoryService.d.ts +37 -1
- package/dist/services/VariantHistoryService.d.ts.map +1 -1
- package/dist/services/VariantHistoryService.js +122 -1
- package/dist/services/VariantHistoryService.js.map +1 -1
- package/dist/services/VariantRunService.d.ts +25 -6
- package/dist/services/VariantRunService.d.ts.map +1 -1
- package/dist/services/VariantRunService.js +98 -4
- package/dist/services/VariantRunService.js.map +1 -1
- package/dist/services/VariantsRuntime.d.ts +1 -3
- package/dist/services/VariantsRuntime.d.ts.map +1 -1
- package/dist/services/VariantsRuntime.js +0 -1
- package/dist/services/VariantsRuntime.js.map +1 -1
- package/dist/services/WorktreeManager.d.ts +1 -1
- package/dist/services/WorktreeManager.d.ts.map +1 -1
- package/dist/services/createAgentVariantsOrchestrator.d.ts +2 -2
- package/dist/services/createAgentVariantsOrchestrator.d.ts.map +1 -1
- package/dist/services/createAgentVariantsOrchestrator.js +2 -3
- package/dist/services/createAgentVariantsOrchestrator.js.map +1 -1
- package/dist/services/projectMetadataMigrations.d.ts +59 -0
- package/dist/services/projectMetadataMigrations.d.ts.map +1 -0
- package/dist/services/projectMetadataMigrations.js +109 -0
- package/dist/services/projectMetadataMigrations.js.map +1 -0
- package/dist/types/change-request-types.d.ts +22 -0
- package/dist/types/change-request-types.d.ts.map +1 -1
- package/dist/utils/logger.d.ts +2 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +3 -7
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/loopback.d.ts +3 -0
- package/dist/utils/loopback.d.ts.map +1 -0
- package/dist/utils/loopback.js +13 -0
- package/dist/utils/loopback.js.map +1 -0
- package/dist/utils/pid.d.ts +3 -0
- package/dist/utils/pid.d.ts.map +1 -0
- package/dist/utils/pid.js +15 -0
- package/dist/utils/pid.js.map +1 -0
- package/dist/utils/queueAccess.d.ts +7 -0
- package/dist/utils/queueAccess.d.ts.map +1 -1
- package/dist/utils/queueAccess.js +8 -1
- package/dist/utils/queueAccess.js.map +1 -1
- package/dist/utils/shouldRecordHostedDemoSessionAction.d.ts +3 -3
- package/dist/utils/shouldRecordHostedDemoSessionAction.d.ts.map +1 -1
- package/dist/utils/shouldRecordHostedDemoSessionAction.js +3 -19
- package/dist/utils/shouldRecordHostedDemoSessionAction.js.map +1 -1
- package/dist/utils/skillWriter.d.ts.map +1 -1
- package/dist/utils/skillWriter.js +12 -11
- package/dist/utils/skillWriter.js.map +1 -1
- package/dist/utils/skills/claude-skill.d.ts +7 -2
- package/dist/utils/skills/claude-skill.d.ts.map +1 -1
- package/dist/utils/skills/claude-skill.js +10 -83
- package/dist/utils/skills/claude-skill.js.map +1 -1
- package/dist/utils/skills/cli-guidance.d.ts +12 -0
- package/dist/utils/skills/cli-guidance.d.ts.map +1 -0
- package/dist/utils/skills/cli-guidance.js +57 -0
- package/dist/utils/skills/cli-guidance.js.map +1 -0
- package/dist/utils/skills/cursor-rules.d.ts +8 -2
- package/dist/utils/skills/cursor-rules.d.ts.map +1 -1
- package/dist/utils/skills/cursor-rules.js +11 -80
- package/dist/utils/skills/cursor-rules.js.map +1 -1
- package/dist/utils/variantSessionStart.d.ts +1 -1
- package/dist/utils/variantSessionStart.d.ts.map +1 -1
- package/dist/utils/variantSessionStart.js +1 -1
- package/dist/utils/variantSessionStart.js.map +1 -1
- package/package.json +4 -4
- package/src/ui/dist/assets/main-BWOvFoal.js +419 -0
- package/src/ui/dist/assets/main-Dyos9I29.css +1 -0
- package/src/ui/dist/index.html +2 -2
- package/dist/mcp/agent-variants/SessionStore.d.ts.map +0 -1
- package/dist/mcp/agent-variants/SessionStore.js.map +0 -1
- package/dist/mcp/agent-variants/WorktreeOrchestrator.d.ts.map +0 -1
- package/dist/mcp/agent-variants/WorktreeOrchestrator.js.map +0 -1
- package/dist/mcp/agent-variants/WorktreeOrchestrator.testHelpers.d.ts.map +0 -1
- package/dist/mcp/agent-variants/WorktreeOrchestrator.testHelpers.js.map +0 -1
- package/dist/mcp/agent-variants/areNaSourceContext.d.ts +0 -20
- package/dist/mcp/agent-variants/areNaSourceContext.d.ts.map +0 -1
- package/dist/mcp/agent-variants/areNaSourceContext.js +0 -118
- package/dist/mcp/agent-variants/areNaSourceContext.js.map +0 -1
- package/dist/mcp/agent-variants/briefContent.d.ts.map +0 -1
- package/dist/mcp/agent-variants/briefContent.js.map +0 -1
- package/dist/mcp/agent-variants/contracts.d.ts.map +0 -1
- package/dist/mcp/agent-variants/contracts.js.map +0 -1
- package/dist/mcp/agent-variants/createProjectArtifacts.d.ts.map +0 -1
- package/dist/mcp/agent-variants/createProjectArtifacts.js.map +0 -1
- package/dist/mcp/agent-variants/createZeroToOneTool.d.ts +0 -63
- package/dist/mcp/agent-variants/createZeroToOneTool.d.ts.map +0 -1
- package/dist/mcp/agent-variants/createZeroToOneTool.js +0 -265
- package/dist/mcp/agent-variants/createZeroToOneTool.js.map +0 -1
- package/dist/mcp/agent-variants/diffQa.d.ts.map +0 -1
- package/dist/mcp/agent-variants/diffQa.js.map +0 -1
- package/dist/mcp/agent-variants/elementRefToTarget.d.ts.map +0 -1
- package/dist/mcp/agent-variants/elementRefToTarget.js.map +0 -1
- package/dist/mcp/agent-variants/errors.d.ts.map +0 -1
- package/dist/mcp/agent-variants/errors.js.map +0 -1
- package/dist/mcp/agent-variants/generatedDestination.d.ts +0 -75
- package/dist/mcp/agent-variants/generatedDestination.d.ts.map +0 -1
- package/dist/mcp/agent-variants/generatedDestination.js +0 -103
- package/dist/mcp/agent-variants/generatedDestination.js.map +0 -1
- package/dist/mcp/agent-variants/index.d.ts.map +0 -1
- package/dist/mcp/agent-variants/index.js.map +0 -1
- package/dist/mcp/agent-variants/pendingChangesAdapter.d.ts +0 -38
- package/dist/mcp/agent-variants/pendingChangesAdapter.d.ts.map +0 -1
- package/dist/mcp/agent-variants/pendingChangesAdapter.js +0 -93
- package/dist/mcp/agent-variants/pendingChangesAdapter.js.map +0 -1
- package/dist/mcp/agent-variants/pinterestSourceContext.d.ts +0 -23
- package/dist/mcp/agent-variants/pinterestSourceContext.d.ts.map +0 -1
- package/dist/mcp/agent-variants/pinterestSourceContext.js +0 -137
- package/dist/mcp/agent-variants/pinterestSourceContext.js.map +0 -1
- package/dist/mcp/agent-variants/previewQa.d.ts.map +0 -1
- package/dist/mcp/agent-variants/previewQa.js.map +0 -1
- package/dist/mcp/agent-variants/runLabel.d.ts.map +0 -1
- package/dist/mcp/agent-variants/runLabel.js.map +0 -1
- package/dist/mcp/agent-variants/runPlan.d.ts.map +0 -1
- package/dist/mcp/agent-variants/runPlan.js.map +0 -1
- package/dist/mcp/agent-variants/sourceContext.d.ts.map +0 -1
- package/dist/mcp/agent-variants/sourceContext.js.map +0 -1
- package/dist/mcp/agent-variants/tools.d.ts +0 -187
- package/dist/mcp/agent-variants/tools.d.ts.map +0 -1
- package/dist/mcp/agent-variants/tools.js +0 -1165
- package/dist/mcp/agent-variants/tools.js.map +0 -1
- package/dist/mcp/agent-variants/variantContext.d.ts.map +0 -1
- package/dist/mcp/agent-variants/variantContext.js.map +0 -1
- package/dist/mcp/auth/httpOAuthProvider.d.ts +0 -103
- package/dist/mcp/auth/httpOAuthProvider.d.ts.map +0 -1
- package/dist/mcp/auth/httpOAuthProvider.js +0 -735
- package/dist/mcp/auth/httpOAuthProvider.js.map +0 -1
- package/dist/mcp/auth/tools.d.ts +0 -39
- package/dist/mcp/auth/tools.d.ts.map +0 -1
- package/dist/mcp/auth/tools.js +0 -304
- package/dist/mcp/auth/tools.js.map +0 -1
- package/dist/mcp/branding.d.ts +0 -4
- package/dist/mcp/branding.d.ts.map +0 -1
- package/dist/mcp/branding.js +0 -8
- package/dist/mcp/branding.js.map +0 -1
- package/dist/mcp/hostedServer.d.ts +0 -27
- package/dist/mcp/hostedServer.d.ts.map +0 -1
- package/dist/mcp/hostedServer.js +0 -71
- package/dist/mcp/hostedServer.js.map +0 -1
- package/dist/mcp/httpServer.d.ts +0 -63
- package/dist/mcp/httpServer.d.ts.map +0 -1
- package/dist/mcp/httpServer.js +0 -602
- package/dist/mcp/httpServer.js.map +0 -1
- package/dist/mcp/instructions.d.ts +0 -25
- package/dist/mcp/instructions.d.ts.map +0 -1
- package/dist/mcp/instructions.js +0 -39
- package/dist/mcp/instructions.js.map +0 -1
- package/dist/mcp/integrations/tools.d.ts +0 -19
- package/dist/mcp/integrations/tools.d.ts.map +0 -1
- package/dist/mcp/integrations/tools.js +0 -101
- package/dist/mcp/integrations/tools.js.map +0 -1
- package/dist/mcp/server.d.ts +0 -214
- package/dist/mcp/server.d.ts.map +0 -1
- package/dist/mcp/server.js +0 -2536
- package/dist/mcp/server.js.map +0 -1
- package/dist/mcp/toolAnalytics.d.ts +0 -26
- package/dist/mcp/toolAnalytics.d.ts.map +0 -1
- package/dist/mcp/toolAnalytics.js +0 -95
- package/dist/mcp/toolAnalytics.js.map +0 -1
- package/dist/mcp/types.d.ts +0 -7
- package/dist/mcp/types.d.ts.map +0 -1
- package/dist/mcp/types.js +0 -3
- package/dist/mcp/types.js.map +0 -1
- package/dist/mcp/watchLoopResumePrompt.d.ts +0 -16
- package/dist/mcp/watchLoopResumePrompt.d.ts.map +0 -1
- package/dist/mcp/watchLoopResumePrompt.js +0 -21
- package/dist/mcp/watchLoopResumePrompt.js.map +0 -1
- package/dist/prompts/agentModPrompts.d.ts +0 -4
- package/dist/prompts/agentModPrompts.d.ts.map +0 -1
- package/dist/prompts/agentModPrompts.js +0 -34
- package/dist/prompts/agentModPrompts.js.map +0 -1
- package/dist/prompts/tokenWriterPrompts.d.ts +0 -4
- package/dist/prompts/tokenWriterPrompts.d.ts.map +0 -1
- package/dist/prompts/tokenWriterPrompts.js +0 -59
- package/dist/prompts/tokenWriterPrompts.js.map +0 -1
- package/dist/routes/comments.d.ts +0 -3
- package/dist/routes/comments.d.ts.map +0 -1
- package/dist/routes/comments.js +0 -113
- package/dist/routes/comments.js.map +0 -1
- package/dist/routes/components.d.ts +0 -7
- package/dist/routes/components.d.ts.map +0 -1
- package/dist/routes/components.js +0 -88
- package/dist/routes/components.js.map +0 -1
- package/dist/routes/controls.d.ts +0 -7
- package/dist/routes/controls.d.ts.map +0 -1
- package/dist/routes/controls.js +0 -50
- package/dist/routes/controls.js.map +0 -1
- package/dist/routes/design.d.ts +0 -2
- package/dist/routes/design.d.ts.map +0 -1
- package/dist/routes/design.js +0 -29
- package/dist/routes/design.js.map +0 -1
- package/dist/routes/modifications.d.ts +0 -10
- package/dist/routes/modifications.d.ts.map +0 -1
- package/dist/routes/modifications.js +0 -394
- package/dist/routes/modifications.js.map +0 -1
- package/dist/routes/tokens.d.ts +0 -2
- package/dist/routes/tokens.d.ts.map +0 -1
- package/dist/routes/tokens.js +0 -115
- package/dist/routes/tokens.js.map +0 -1
- package/dist/services/AgentSessionService.d.ts +0 -91
- package/dist/services/AgentSessionService.d.ts.map +0 -1
- package/dist/services/AgentSessionService.js +0 -282
- package/dist/services/AgentSessionService.js.map +0 -1
- package/dist/services/BridgeBatchPipeline.d.ts +0 -103
- package/dist/services/BridgeBatchPipeline.d.ts.map +0 -1
- package/dist/services/BridgeBatchPipeline.js +0 -295
- package/dist/services/BridgeBatchPipeline.js.map +0 -1
- package/dist/services/BridgeQueueStore.d.ts +0 -28
- package/dist/services/BridgeQueueStore.d.ts.map +0 -1
- package/dist/services/BridgeQueueStore.js +0 -88
- package/dist/services/BridgeQueueStore.js.map +0 -1
- package/dist/services/CSSTokenWriter.d.ts +0 -22
- package/dist/services/CSSTokenWriter.d.ts.map +0 -1
- package/dist/services/CSSTokenWriter.js +0 -116
- package/dist/services/CSSTokenWriter.js.map +0 -1
- package/dist/services/DesignTokenService.d.ts +0 -39
- package/dist/services/DesignTokenService.d.ts.map +0 -1
- package/dist/services/DesignTokenService.js +0 -100
- package/dist/services/DesignTokenService.js.map +0 -1
- package/dist/services/InlineVariantGenerationService.d.ts +0 -51
- package/dist/services/InlineVariantGenerationService.d.ts.map +0 -1
- package/dist/services/InlineVariantGenerationService.js +0 -475
- package/dist/services/InlineVariantGenerationService.js.map +0 -1
- package/dist/services/InterfaceGenerationService.d.ts +0 -12
- package/dist/services/InterfaceGenerationService.d.ts.map +0 -1
- package/dist/services/InterfaceGenerationService.js +0 -256
- package/dist/services/InterfaceGenerationService.js.map +0 -1
- package/dist/services/TailwindConfigWriter.d.ts +0 -24
- package/dist/services/TailwindConfigWriter.d.ts.map +0 -1
- package/dist/services/TailwindConfigWriter.js +0 -105
- package/dist/services/TailwindConfigWriter.js.map +0 -1
- package/dist/services/TerminalAgentRunner.d.ts +0 -65
- package/dist/services/TerminalAgentRunner.d.ts.map +0 -1
- package/dist/services/TerminalAgentRunner.js +0 -511
- package/dist/services/TerminalAgentRunner.js.map +0 -1
- package/dist/services/VisualVariantAgentRunner.d.ts +0 -20
- package/dist/services/VisualVariantAgentRunner.d.ts.map +0 -1
- package/dist/services/VisualVariantAgentRunner.js +0 -66
- package/dist/services/VisualVariantAgentRunner.js.map +0 -1
- package/dist/services/adapters/TailwindCSSTokenAdapter.d.ts +0 -35
- package/dist/services/adapters/TailwindCSSTokenAdapter.d.ts.map +0 -1
- package/dist/services/adapters/TailwindCSSTokenAdapter.js +0 -278
- package/dist/services/adapters/TailwindCSSTokenAdapter.js.map +0 -1
- package/dist/services/agent/AgentCore.d.ts +0 -126
- package/dist/services/agent/AgentCore.d.ts.map +0 -1
- package/dist/services/agent/AgentCore.js +0 -759
- package/dist/services/agent/AgentCore.js.map +0 -1
- package/dist/services/agent/AgentModService.d.ts +0 -98
- package/dist/services/agent/AgentModService.d.ts.map +0 -1
- package/dist/services/agent/AgentModService.js +0 -400
- package/dist/services/agent/AgentModService.js.map +0 -1
- package/dist/services/agent/index.d.ts +0 -2
- package/dist/services/agent/index.d.ts.map +0 -1
- package/dist/services/agent/index.js +0 -6
- package/dist/services/agent/index.js.map +0 -1
- package/dist/types/editor-interface-types.d.ts +0 -67
- package/dist/types/editor-interface-types.d.ts.map +0 -1
- package/dist/types/editor-interface-types.js +0 -12
- package/dist/types/editor-interface-types.js.map +0 -1
- package/dist/utils/elementRefToContext.d.ts +0 -4
- package/dist/utils/elementRefToContext.d.ts.map +0 -1
- package/dist/utils/elementRefToContext.js +0 -63
- package/dist/utils/elementRefToContext.js.map +0 -1
- package/dist/utils/skills/shared-variants-protocol.d.ts +0 -69
- package/dist/utils/skills/shared-variants-protocol.d.ts.map +0 -1
- package/dist/utils/skills/shared-variants-protocol.js +0 -292
- package/dist/utils/skills/shared-variants-protocol.js.map +0 -1
- package/src/ui/dist/assets/main-Dnah9pII.css +0 -1
- package/src/ui/dist/assets/main-plq7aT76.js +0 -656
- /package/dist/{mcp/agent-variants → agent-variants}/briefContent.d.ts +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/briefContent.js +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/createProjectArtifacts.d.ts +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/createProjectArtifacts.js +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/diffQa.d.ts +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/diffQa.js +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/elementRefToTarget.js +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/errors.d.ts +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/errors.js +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/previewQa.d.ts +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/previewQa.js +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/runLabel.d.ts +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/runLabel.js +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/runPlan.d.ts +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/runPlan.js +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/sourceContext.d.ts +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/sourceContext.js +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/variantContext.d.ts +0 -0
- /package/dist/{mcp/agent-variants → agent-variants}/variantContext.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wait.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/wait.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AA+E3E;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,GAAU,MAAM,MAAM,EAAE,KAAG,OAAO,CAAC,gBAAgB,CAqEzE,CAAC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handleWait = void 0;
|
|
4
|
+
const envelope_1 = require("../envelope");
|
|
5
|
+
const flags_1 = require("../flags");
|
|
6
|
+
const client_1 = require("../client");
|
|
7
|
+
const shared_1 = require("./shared");
|
|
8
|
+
const COMMAND = 'wait';
|
|
9
|
+
const DEFAULT_WAIT_TIMEOUT_SECONDS = 120;
|
|
10
|
+
const WAIT_POLL_INTERVAL_MS = 500;
|
|
11
|
+
const WAIT_FLAG_SPEC = {
|
|
12
|
+
timeout: { takesValue: true },
|
|
13
|
+
};
|
|
14
|
+
const workStateOf = (status, workId) => {
|
|
15
|
+
const activeRun = status.activeRun;
|
|
16
|
+
if (activeRun &&
|
|
17
|
+
(activeRun.agentRunId === workId || activeRun.traceId === workId)) {
|
|
18
|
+
return 'running';
|
|
19
|
+
}
|
|
20
|
+
const leases = status.queue?.leases ?? [];
|
|
21
|
+
if (leases.some((lease) => lease.requestId === workId ||
|
|
22
|
+
(lease.mergedRequestIds ?? []).includes(workId))) {
|
|
23
|
+
return 'running';
|
|
24
|
+
}
|
|
25
|
+
const queued = status.queue?.queued ?? [];
|
|
26
|
+
if (queued.some((item) => item.requestId === workId)) {
|
|
27
|
+
return 'pending';
|
|
28
|
+
}
|
|
29
|
+
if ((status.settledRequestIds ?? []).includes(workId)) {
|
|
30
|
+
return 'settled';
|
|
31
|
+
}
|
|
32
|
+
return 'unknown';
|
|
33
|
+
};
|
|
34
|
+
const waitTimeoutMessage = (workId, state, timeoutSeconds) => state === 'pending'
|
|
35
|
+
? `Work ${workId} is still pending after ${timeoutSeconds}s. Check \`rivet status\`.`
|
|
36
|
+
: `Work ${workId} is still running after ${timeoutSeconds}s. Re-issue \`rivet wait\` or check \`rivet status\`.`;
|
|
37
|
+
const unknownWorkMessage = (workId) => `Unknown work id ${workId}. Check \`rivet status\` for queued, running, or recently settled work.`;
|
|
38
|
+
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
39
|
+
/**
|
|
40
|
+
* Block — boundedly — until a work id settles. Exits `0` when the work is no
|
|
41
|
+
* longer queued, leased, or running; exits `5` on timeout with the work
|
|
42
|
+
* still live (not a failure: re-issue `rivet wait` or check `rivet status`).
|
|
43
|
+
* The timeout envelope reports the honest state: `running` for leased or
|
|
44
|
+
* active work, `pending` for work merely staged in the queue.
|
|
45
|
+
*/
|
|
46
|
+
const handleWait = async (args) => {
|
|
47
|
+
const context = (0, shared_1.parseCommandContext)(COMMAND, args, WAIT_FLAG_SPEC);
|
|
48
|
+
if ((0, shared_1.isCommandResult)(context)) {
|
|
49
|
+
return context;
|
|
50
|
+
}
|
|
51
|
+
const workId = context.flags.positionals[0];
|
|
52
|
+
if (!workId) {
|
|
53
|
+
return (0, envelope_1.errorResult)(COMMAND, 'USAGE_ERROR', 'Usage: rivet wait <workId> [--timeout <seconds>]');
|
|
54
|
+
}
|
|
55
|
+
const timeoutSeconds = (0, flags_1.integerFlag)(context.flags, 'timeout') ?? DEFAULT_WAIT_TIMEOUT_SECONDS;
|
|
56
|
+
if (context.flags.errors.length > 0) {
|
|
57
|
+
return (0, envelope_1.errorResult)(COMMAND, 'USAGE_ERROR', context.flags.errors.join('; '));
|
|
58
|
+
}
|
|
59
|
+
const attached = await (0, shared_1.attachOrUnavailable)(COMMAND, context.projectPath);
|
|
60
|
+
if (!(0, shared_1.isAttached)(attached)) {
|
|
61
|
+
return attached;
|
|
62
|
+
}
|
|
63
|
+
const deadline = Date.now() + timeoutSeconds * 1000;
|
|
64
|
+
let wasObservedRunning = false;
|
|
65
|
+
for (;;) {
|
|
66
|
+
let status;
|
|
67
|
+
try {
|
|
68
|
+
const response = await (0, client_1.requestServer)(attached, '/api/cli/status');
|
|
69
|
+
if (response.status !== 200) {
|
|
70
|
+
return (0, shared_1.serverErrorResult)(COMMAND, response.status, response.body);
|
|
71
|
+
}
|
|
72
|
+
status = response.body;
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
return (0, shared_1.transportErrorResult)(COMMAND, error);
|
|
76
|
+
}
|
|
77
|
+
const workState = workStateOf(status, workId);
|
|
78
|
+
if (workState === 'settled') {
|
|
79
|
+
return (0, envelope_1.okResult)(COMMAND, {
|
|
80
|
+
workId,
|
|
81
|
+
state: 'settled',
|
|
82
|
+
wasObservedRunning,
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
if (workState === 'unknown') {
|
|
86
|
+
return (0, envelope_1.errorResult)(COMMAND, 'OPERATION_FAILED', unknownWorkMessage(workId), {
|
|
87
|
+
workId,
|
|
88
|
+
state: 'unknown',
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
if (workState === 'running') {
|
|
92
|
+
wasObservedRunning = true;
|
|
93
|
+
}
|
|
94
|
+
if (Date.now() >= deadline) {
|
|
95
|
+
return (0, envelope_1.errorResult)(COMMAND, 'WAIT_TIMEOUT', waitTimeoutMessage(workId, workState, timeoutSeconds), { workId, state: workState });
|
|
96
|
+
}
|
|
97
|
+
await sleep(WAIT_POLL_INTERVAL_MS);
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
exports.handleWait = handleWait;
|
|
101
|
+
//# sourceMappingURL=wait.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wait.js","sourceRoot":"","sources":["../../../src/cli/commands/wait.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lean entry point for control-plane subcommands. `bin/rivet.js` routes here
|
|
3
|
+
* (instead of `dist/index.js`) when argv names a control command, skipping
|
|
4
|
+
* the full CLI's static import graph — the dominant fixed cost of an
|
|
5
|
+
* invocation. Everything heavier than the router loads lazily per command.
|
|
6
|
+
*
|
|
7
|
+
* Behavior must stay identical to the control-plane branch in
|
|
8
|
+
* `src/index.ts` `main()`: run the command, flush stdout so piped envelopes
|
|
9
|
+
* are never truncated, exit with the documented code.
|
|
10
|
+
*/
|
|
11
|
+
export declare const runControlPlane: (args?: string[]) => Promise<void>;
|
|
12
|
+
//# sourceMappingURL=entry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../../src/cli/entry.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,GAC1B,OAAM,MAAM,EAA0B,KACrC,OAAO,CAAC,IAAI,CAWd,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.runControlPlane = void 0;
|
|
37
|
+
const commandNames_1 = require("./commandNames");
|
|
38
|
+
/**
|
|
39
|
+
* Lean entry point for control-plane subcommands. `bin/rivet.js` routes here
|
|
40
|
+
* (instead of `dist/index.js`) when argv names a control command, skipping
|
|
41
|
+
* the full CLI's static import graph — the dominant fixed cost of an
|
|
42
|
+
* invocation. Everything heavier than the router loads lazily per command.
|
|
43
|
+
*
|
|
44
|
+
* Behavior must stay identical to the control-plane branch in
|
|
45
|
+
* `src/index.ts` `main()`: run the command, flush stdout so piped envelopes
|
|
46
|
+
* are never truncated, exit with the documented code.
|
|
47
|
+
*/
|
|
48
|
+
const runControlPlane = async (args = process.argv.slice(2)) => {
|
|
49
|
+
if (!(0, commandNames_1.isCliControlCommand)(args[0])) {
|
|
50
|
+
// Defensive: the bin only routes control commands here, but a direct
|
|
51
|
+
// caller could pass anything. Fall back to the full CLI.
|
|
52
|
+
const { main } = await Promise.resolve().then(() => __importStar(require('../index')));
|
|
53
|
+
return main(args);
|
|
54
|
+
}
|
|
55
|
+
const { runCliControlCommand } = await Promise.resolve().then(() => __importStar(require('./router')));
|
|
56
|
+
const exitCode = await runCliControlCommand(args);
|
|
57
|
+
// Flush stdout before exiting so piped envelopes are never truncated.
|
|
58
|
+
process.stdout.write('', () => process.exit(exitCode));
|
|
59
|
+
};
|
|
60
|
+
exports.runControlPlane = runControlPlane;
|
|
61
|
+
//# sourceMappingURL=entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entry.js","sourceRoot":"","sources":["../../src/cli/entry.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAqD;AAErD;;;;;;;;;GASG;AACI,MAAM,eAAe,GAAG,KAAK,EAClC,OAAiB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EACvB,EAAE;IACjB,IAAI,CAAC,IAAA,kCAAmB,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAClC,qEAAqE;QACrE,yDAAyD;QACzD,MAAM,EAAE,IAAI,EAAE,GAAG,wDAAa,UAAU,GAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IACD,MAAM,EAAE,oBAAoB,EAAE,GAAG,wDAAa,UAAU,GAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAClD,sEAAsE;IACtE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC;AAbW,QAAA,eAAe,mBAa1B"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Machine-readable output contract for `rivet` subcommands.
|
|
3
|
+
*
|
|
4
|
+
* Every invocation prints exactly one schema-versioned JSON envelope on
|
|
5
|
+
* stdout (or one envelope per line for NDJSON streaming surfaces) and routes
|
|
6
|
+
* all human-readable progress to stderr. Exit codes are documented and
|
|
7
|
+
* stable so agents can branch on them without parsing prose.
|
|
8
|
+
*
|
|
9
|
+
* Contract: `docs/cli-first-architecture-design.md` (Invocation model) and
|
|
10
|
+
* `openspec/changes/cli-first-control-plane/specs/cli-control-plane/spec.md`.
|
|
11
|
+
*/
|
|
12
|
+
export declare const CLI_SCHEMA_VERSION = 1;
|
|
13
|
+
/** Documented exit codes for the CLI contract. */
|
|
14
|
+
export declare const CLI_EXIT_CODES: {
|
|
15
|
+
/** Operation completed. */
|
|
16
|
+
readonly ok: 0;
|
|
17
|
+
/** Operation failed — see `error.code` in the envelope. */
|
|
18
|
+
readonly operationFailed: 1;
|
|
19
|
+
/** Usage error: unknown command, missing argument, invalid flag value. */
|
|
20
|
+
readonly usageError: 2;
|
|
21
|
+
/** Authentication required — run `rivet login`. */
|
|
22
|
+
readonly authRequired: 3;
|
|
23
|
+
/** No server for the project and one could not be started. */
|
|
24
|
+
readonly serverUnavailable: 4;
|
|
25
|
+
/** `rivet wait` timed out with the work still pending or running (not a failure). */
|
|
26
|
+
readonly waitTimeout: 5;
|
|
27
|
+
};
|
|
28
|
+
export type CliExitCode = (typeof CLI_EXIT_CODES)[keyof typeof CLI_EXIT_CODES];
|
|
29
|
+
/** Stable machine-readable error codes carried in `error.code`. */
|
|
30
|
+
export type CliErrorCode = 'OPERATION_FAILED' | 'USAGE_ERROR' | 'AUTH_REQUIRED' | 'SERVER_UNAVAILABLE' | 'WAIT_TIMEOUT'
|
|
31
|
+
/** `rivet mcp` from a stale host registration: the MCP server is removed. */
|
|
32
|
+
| 'MCP_REMOVED';
|
|
33
|
+
export type CliErrorEnvelope = {
|
|
34
|
+
schemaVersion: typeof CLI_SCHEMA_VERSION;
|
|
35
|
+
ok: false;
|
|
36
|
+
command: string;
|
|
37
|
+
error: {
|
|
38
|
+
code: CliErrorCode;
|
|
39
|
+
message: string;
|
|
40
|
+
/** Optional structured detail (e.g. server error payloads). */
|
|
41
|
+
details?: unknown;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
export type CliOkEnvelope<TData = unknown> = {
|
|
45
|
+
schemaVersion: typeof CLI_SCHEMA_VERSION;
|
|
46
|
+
ok: true;
|
|
47
|
+
command: string;
|
|
48
|
+
data: TData;
|
|
49
|
+
};
|
|
50
|
+
export type CliEnvelope<TData = unknown> = CliOkEnvelope<TData> | CliErrorEnvelope;
|
|
51
|
+
/** Result of one subcommand run: the envelope to print plus its exit code. */
|
|
52
|
+
export type CliCommandResult = {
|
|
53
|
+
envelope: CliEnvelope;
|
|
54
|
+
exitCode: CliExitCode;
|
|
55
|
+
};
|
|
56
|
+
export declare const okResult: (command: string, data: unknown) => CliCommandResult;
|
|
57
|
+
export declare const errorResult: (command: string, code: CliErrorCode, message: string, details?: unknown) => CliCommandResult;
|
|
58
|
+
/** Serialize one envelope as a single stdout line (NDJSON-compatible). */
|
|
59
|
+
export declare const serializeEnvelope: (envelope: CliEnvelope) => string;
|
|
60
|
+
//# sourceMappingURL=envelope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"envelope.d.ts","sourceRoot":"","sources":["../../src/cli/envelope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC,kDAAkD;AAClD,eAAO,MAAM,cAAc;IACzB,2BAA2B;;IAE3B,2DAA2D;;IAE3D,0EAA0E;;IAE1E,mDAAmD;;IAEnD,8DAA8D;;IAE9D,qFAAqF;;CAE7E,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAE/E,mEAAmE;AACnE,MAAM,MAAM,YAAY,GACpB,kBAAkB,GAClB,aAAa,GACb,eAAe,GACf,oBAAoB,GACpB,cAAc;AAChB,6EAA6E;GAC3E,aAAa,CAAC;AAElB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,EAAE,OAAO,kBAAkB,CAAC;IACzC,EAAE,EAAE,KAAK,CAAC;IACV,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE;QACL,IAAI,EAAE,YAAY,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;QAChB,+DAA+D;QAC/D,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,KAAK,GAAG,OAAO,IAAI;IAC3C,aAAa,EAAE,OAAO,kBAAkB,CAAC;IACzC,EAAE,EAAE,IAAI,CAAC;IACT,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,KAAK,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,KAAK,GAAG,OAAO,IACrC,aAAa,CAAC,KAAK,CAAC,GAAG,gBAAgB,CAAC;AAE1C,8EAA8E;AAC9E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,WAAW,CAAC;IACtB,QAAQ,EAAE,WAAW,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAI,SAAS,MAAM,EAAE,MAAM,OAAO,KAAG,gBAGxD,CAAC;AAWH,eAAO,MAAM,WAAW,GACtB,SAAS,MAAM,EACf,MAAM,YAAY,EAClB,SAAS,MAAM,EACf,UAAU,OAAO,KAChB,gBAQD,CAAC;AAEH,0EAA0E;AAC1E,eAAO,MAAM,iBAAiB,GAAI,UAAU,WAAW,KAAG,MAChC,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Machine-readable output contract for `rivet` subcommands.
|
|
4
|
+
*
|
|
5
|
+
* Every invocation prints exactly one schema-versioned JSON envelope on
|
|
6
|
+
* stdout (or one envelope per line for NDJSON streaming surfaces) and routes
|
|
7
|
+
* all human-readable progress to stderr. Exit codes are documented and
|
|
8
|
+
* stable so agents can branch on them without parsing prose.
|
|
9
|
+
*
|
|
10
|
+
* Contract: `docs/cli-first-architecture-design.md` (Invocation model) and
|
|
11
|
+
* `openspec/changes/cli-first-control-plane/specs/cli-control-plane/spec.md`.
|
|
12
|
+
*/
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.serializeEnvelope = exports.errorResult = exports.okResult = exports.CLI_EXIT_CODES = exports.CLI_SCHEMA_VERSION = void 0;
|
|
15
|
+
exports.CLI_SCHEMA_VERSION = 1;
|
|
16
|
+
/** Documented exit codes for the CLI contract. */
|
|
17
|
+
exports.CLI_EXIT_CODES = {
|
|
18
|
+
/** Operation completed. */
|
|
19
|
+
ok: 0,
|
|
20
|
+
/** Operation failed — see `error.code` in the envelope. */
|
|
21
|
+
operationFailed: 1,
|
|
22
|
+
/** Usage error: unknown command, missing argument, invalid flag value. */
|
|
23
|
+
usageError: 2,
|
|
24
|
+
/** Authentication required — run `rivet login`. */
|
|
25
|
+
authRequired: 3,
|
|
26
|
+
/** No server for the project and one could not be started. */
|
|
27
|
+
serverUnavailable: 4,
|
|
28
|
+
/** `rivet wait` timed out with the work still pending or running (not a failure). */
|
|
29
|
+
waitTimeout: 5,
|
|
30
|
+
};
|
|
31
|
+
const okResult = (command, data) => ({
|
|
32
|
+
envelope: { schemaVersion: exports.CLI_SCHEMA_VERSION, ok: true, command, data },
|
|
33
|
+
exitCode: exports.CLI_EXIT_CODES.ok,
|
|
34
|
+
});
|
|
35
|
+
exports.okResult = okResult;
|
|
36
|
+
const ERROR_EXIT_CODES = {
|
|
37
|
+
OPERATION_FAILED: exports.CLI_EXIT_CODES.operationFailed,
|
|
38
|
+
USAGE_ERROR: exports.CLI_EXIT_CODES.usageError,
|
|
39
|
+
AUTH_REQUIRED: exports.CLI_EXIT_CODES.authRequired,
|
|
40
|
+
SERVER_UNAVAILABLE: exports.CLI_EXIT_CODES.serverUnavailable,
|
|
41
|
+
WAIT_TIMEOUT: exports.CLI_EXIT_CODES.waitTimeout,
|
|
42
|
+
MCP_REMOVED: exports.CLI_EXIT_CODES.usageError,
|
|
43
|
+
};
|
|
44
|
+
const errorResult = (command, code, message, details) => ({
|
|
45
|
+
envelope: {
|
|
46
|
+
schemaVersion: exports.CLI_SCHEMA_VERSION,
|
|
47
|
+
ok: false,
|
|
48
|
+
command,
|
|
49
|
+
error: { code, message, ...(details === undefined ? {} : { details }) },
|
|
50
|
+
},
|
|
51
|
+
exitCode: ERROR_EXIT_CODES[code],
|
|
52
|
+
});
|
|
53
|
+
exports.errorResult = errorResult;
|
|
54
|
+
/** Serialize one envelope as a single stdout line (NDJSON-compatible). */
|
|
55
|
+
const serializeEnvelope = (envelope) => JSON.stringify(envelope);
|
|
56
|
+
exports.serializeEnvelope = serializeEnvelope;
|
|
57
|
+
//# sourceMappingURL=envelope.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"envelope.js","sourceRoot":"","sources":["../../src/cli/envelope.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AAEU,QAAA,kBAAkB,GAAG,CAAC,CAAC;AAEpC,kDAAkD;AACrC,QAAA,cAAc,GAAG;IAC5B,2BAA2B;IAC3B,EAAE,EAAE,CAAC;IACL,2DAA2D;IAC3D,eAAe,EAAE,CAAC;IAClB,0EAA0E;IAC1E,UAAU,EAAE,CAAC;IACb,mDAAmD;IACnD,YAAY,EAAE,CAAC;IACf,8DAA8D;IAC9D,iBAAiB,EAAE,CAAC;IACpB,qFAAqF;IACrF,WAAW,EAAE,CAAC;CACN,CAAC;AA0CJ,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,IAAa,EAAoB,EAAE,CAAC,CAAC;IAC7E,QAAQ,EAAE,EAAE,aAAa,EAAE,0BAAkB,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;IACxE,QAAQ,EAAE,sBAAc,CAAC,EAAE;CAC5B,CAAC,CAAC;AAHU,QAAA,QAAQ,YAGlB;AAEH,MAAM,gBAAgB,GAAsC;IAC1D,gBAAgB,EAAE,sBAAc,CAAC,eAAe;IAChD,WAAW,EAAE,sBAAc,CAAC,UAAU;IACtC,aAAa,EAAE,sBAAc,CAAC,YAAY;IAC1C,kBAAkB,EAAE,sBAAc,CAAC,iBAAiB;IACpD,YAAY,EAAE,sBAAc,CAAC,WAAW;IACxC,WAAW,EAAE,sBAAc,CAAC,UAAU;CACvC,CAAC;AAEK,MAAM,WAAW,GAAG,CACzB,OAAe,EACf,IAAkB,EAClB,OAAe,EACf,OAAiB,EACC,EAAE,CAAC,CAAC;IACtB,QAAQ,EAAE;QACR,aAAa,EAAE,0BAAkB;QACjC,EAAE,EAAE,KAAK;QACT,OAAO;QACP,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;KACxE;IACD,QAAQ,EAAE,gBAAgB,CAAC,IAAI,CAAC;CACjC,CAAC,CAAC;AAbU,QAAA,WAAW,eAarB;AAEH,0EAA0E;AACnE,MAAM,iBAAiB,GAAG,CAAC,QAAqB,EAAU,EAAE,CACjE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AADd,QAAA,iBAAiB,qBACH"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimal flag parser for `rivet` control-plane subcommands. Supports
|
|
3
|
+
* `--flag value`, `--flag=value`, and boolean flags; collects positionals;
|
|
4
|
+
* reports unknown flags so commands can fail with a usage error instead of
|
|
5
|
+
* silently ignoring typos.
|
|
6
|
+
*/
|
|
7
|
+
export type FlagSpec = Record<string, {
|
|
8
|
+
takesValue: boolean;
|
|
9
|
+
}>;
|
|
10
|
+
export type ParsedFlags = {
|
|
11
|
+
values: Record<string, string | boolean>;
|
|
12
|
+
positionals: string[];
|
|
13
|
+
errors: string[];
|
|
14
|
+
};
|
|
15
|
+
export declare const parseFlags: (args: string[], spec: FlagSpec) => ParsedFlags;
|
|
16
|
+
export declare const stringFlag: (parsed: ParsedFlags, name: string) => string | undefined;
|
|
17
|
+
export declare const booleanFlag: (parsed: ParsedFlags, name: string) => boolean;
|
|
18
|
+
/** Parse a positive integer flag; pushes a usage error when malformed. */
|
|
19
|
+
export declare const integerFlag: (parsed: ParsedFlags, name: string) => number | undefined;
|
|
20
|
+
//# sourceMappingURL=flags.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flags.d.ts","sourceRoot":"","sources":["../../src/cli/flags.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE;IAAE,UAAU,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAE/D,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;IACzC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,EAAE,EAAE,MAAM,QAAQ,KAAG,WA+C3D,CAAC;AAEF,eAAO,MAAM,UAAU,GACrB,QAAQ,WAAW,EACnB,MAAM,MAAM,KACX,MAAM,GAAG,SAGX,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,QAAQ,WAAW,EAAE,MAAM,MAAM,KAAG,OAClC,CAAC;AAE/B,0EAA0E;AAC1E,eAAO,MAAM,WAAW,GACtB,QAAQ,WAAW,EACnB,MAAM,MAAM,KACX,MAAM,GAAG,SAWX,CAAC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Minimal flag parser for `rivet` control-plane subcommands. Supports
|
|
4
|
+
* `--flag value`, `--flag=value`, and boolean flags; collects positionals;
|
|
5
|
+
* reports unknown flags so commands can fail with a usage error instead of
|
|
6
|
+
* silently ignoring typos.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.integerFlag = exports.booleanFlag = exports.stringFlag = exports.parseFlags = void 0;
|
|
10
|
+
const parseFlags = (args, spec) => {
|
|
11
|
+
const values = {};
|
|
12
|
+
const positionals = [];
|
|
13
|
+
const errors = [];
|
|
14
|
+
for (let i = 0; i < args.length; i++) {
|
|
15
|
+
const arg = args[i];
|
|
16
|
+
if (!arg.startsWith('--')) {
|
|
17
|
+
positionals.push(arg);
|
|
18
|
+
continue;
|
|
19
|
+
}
|
|
20
|
+
const equalsIndex = arg.indexOf('=');
|
|
21
|
+
const name = equalsIndex === -1 ? arg.slice(2) : arg.slice(2, equalsIndex);
|
|
22
|
+
const inlineValue = equalsIndex === -1 ? undefined : arg.slice(equalsIndex + 1);
|
|
23
|
+
const definition = spec[name];
|
|
24
|
+
if (!definition) {
|
|
25
|
+
errors.push(`Unknown flag --${name}`);
|
|
26
|
+
continue;
|
|
27
|
+
}
|
|
28
|
+
if (!definition.takesValue) {
|
|
29
|
+
if (inlineValue !== undefined) {
|
|
30
|
+
errors.push(`Flag --${name} does not take a value`);
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
values[name] = true;
|
|
34
|
+
continue;
|
|
35
|
+
}
|
|
36
|
+
if (inlineValue !== undefined) {
|
|
37
|
+
values[name] = inlineValue;
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
40
|
+
const next = args[i + 1];
|
|
41
|
+
if (next === undefined || next.startsWith('--')) {
|
|
42
|
+
errors.push(`Flag --${name} requires a value`);
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
values[name] = next;
|
|
46
|
+
i++;
|
|
47
|
+
}
|
|
48
|
+
return { values, positionals, errors };
|
|
49
|
+
};
|
|
50
|
+
exports.parseFlags = parseFlags;
|
|
51
|
+
const stringFlag = (parsed, name) => {
|
|
52
|
+
const value = parsed.values[name];
|
|
53
|
+
return typeof value === 'string' ? value : undefined;
|
|
54
|
+
};
|
|
55
|
+
exports.stringFlag = stringFlag;
|
|
56
|
+
const booleanFlag = (parsed, name) => parsed.values[name] === true;
|
|
57
|
+
exports.booleanFlag = booleanFlag;
|
|
58
|
+
/** Parse a positive integer flag; pushes a usage error when malformed. */
|
|
59
|
+
const integerFlag = (parsed, name) => {
|
|
60
|
+
const raw = (0, exports.stringFlag)(parsed, name);
|
|
61
|
+
if (raw === undefined) {
|
|
62
|
+
return undefined;
|
|
63
|
+
}
|
|
64
|
+
const value = Number.parseInt(raw, 10);
|
|
65
|
+
if (!Number.isInteger(value) || value <= 0) {
|
|
66
|
+
parsed.errors.push(`Flag --${name} must be a positive integer`);
|
|
67
|
+
return undefined;
|
|
68
|
+
}
|
|
69
|
+
return value;
|
|
70
|
+
};
|
|
71
|
+
exports.integerFlag = integerFlag;
|
|
72
|
+
//# sourceMappingURL=flags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flags.js","sourceRoot":"","sources":["../../src/cli/flags.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Optional caller handoff for agent invocations of the `rivet` CLI.
|
|
3
|
+
*
|
|
4
|
+
* Agent invocations identify themselves with `--caller-agent` /
|
|
5
|
+
* `--caller-model` / `--caller-session` (or env equivalents, or a single
|
|
6
|
+
* `--handoff <json>` blob). Human-direct invocations omit all of it and are
|
|
7
|
+
* first-class: they are recorded with initiator `human` and contribute
|
|
8
|
+
* nothing to runner selection.
|
|
9
|
+
*
|
|
10
|
+
* The handoff is a validated hint, never an authority: `caller-agent` is
|
|
11
|
+
* checked against an allowlist (anything else records as `unknown`), and it
|
|
12
|
+
* is accepted ONLY from invocation flags and environment — never from
|
|
13
|
+
* project-local files, because the runner it selects executes with bypassed
|
|
14
|
+
* permissions and a cloned repo must not influence which binary that is or
|
|
15
|
+
* which chat session it resumes.
|
|
16
|
+
*/
|
|
17
|
+
import type { CallerAgentKind, WorkItemInitiator } from '../types/change-request-types';
|
|
18
|
+
export declare const CALLER_AGENT_ALLOWLIST: readonly ["claude", "codex", "cursor"];
|
|
19
|
+
export type CallerHandoff = {
|
|
20
|
+
agent: CallerAgentKind;
|
|
21
|
+
model?: string;
|
|
22
|
+
/** Live AI-chat session id. Never logged and never sent to telemetry. */
|
|
23
|
+
session?: string;
|
|
24
|
+
};
|
|
25
|
+
export type { CallerAgentKind, WorkItemInitiator };
|
|
26
|
+
export declare const HANDOFF_ENV_VARS: {
|
|
27
|
+
readonly agent: "RIVET_CALLER_AGENT";
|
|
28
|
+
readonly model: "RIVET_CALLER_MODEL";
|
|
29
|
+
readonly session: "RIVET_CALLER_SESSION";
|
|
30
|
+
};
|
|
31
|
+
export type HandoffFlagValues = {
|
|
32
|
+
callerAgent?: string;
|
|
33
|
+
callerModel?: string;
|
|
34
|
+
callerSession?: string;
|
|
35
|
+
/** Raw `--handoff <json>` value, when supplied. */
|
|
36
|
+
handoffJson?: string;
|
|
37
|
+
};
|
|
38
|
+
export type ParseHandoffResult = {
|
|
39
|
+
ok: true;
|
|
40
|
+
handoff: CallerHandoff | null;
|
|
41
|
+
} | {
|
|
42
|
+
ok: false;
|
|
43
|
+
error: string;
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* Resolve the caller handoff from invocation flags and environment only.
|
|
47
|
+
* Precedence per field: explicit `--caller-*` flag > `--handoff` JSON >
|
|
48
|
+
* environment variable. No handoff sources present → `handoff: null`
|
|
49
|
+
* (the human-direct path).
|
|
50
|
+
*/
|
|
51
|
+
export declare const parseHandoff: (flags: HandoffFlagValues, env?: NodeJS.ProcessEnv) => ParseHandoffResult;
|
|
52
|
+
/** Initiator attribution for a parsed handoff (`human` when absent). */
|
|
53
|
+
export declare const initiatorFor: (handoff: CallerHandoff | null) => WorkItemInitiator;
|
|
54
|
+
//# sourceMappingURL=handoff.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handoff.d.ts","sourceRoot":"","sources":["../../src/cli/handoff.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EAClB,MAAM,+BAA+B,CAAC;AAEvC,eAAO,MAAM,sBAAsB,wCAAyC,CAAC;AAE7E,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAC;AAEnD,eAAO,MAAM,gBAAgB;;;;CAInB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AA2CF,MAAM,MAAM,kBAAkB,GAC5B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7E;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GACvB,OAAO,iBAAiB,EACxB,MAAK,MAAM,CAAC,UAAwB,KACnC,kBAuCF,CAAC;AAEF,wEAAwE;AACxE,eAAO,MAAM,YAAY,GACvB,SAAS,aAAa,GAAG,IAAI,KAC5B,iBAOoB,CAAC"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Optional caller handoff for agent invocations of the `rivet` CLI.
|
|
4
|
+
*
|
|
5
|
+
* Agent invocations identify themselves with `--caller-agent` /
|
|
6
|
+
* `--caller-model` / `--caller-session` (or env equivalents, or a single
|
|
7
|
+
* `--handoff <json>` blob). Human-direct invocations omit all of it and are
|
|
8
|
+
* first-class: they are recorded with initiator `human` and contribute
|
|
9
|
+
* nothing to runner selection.
|
|
10
|
+
*
|
|
11
|
+
* The handoff is a validated hint, never an authority: `caller-agent` is
|
|
12
|
+
* checked against an allowlist (anything else records as `unknown`), and it
|
|
13
|
+
* is accepted ONLY from invocation flags and environment — never from
|
|
14
|
+
* project-local files, because the runner it selects executes with bypassed
|
|
15
|
+
* permissions and a cloned repo must not influence which binary that is or
|
|
16
|
+
* which chat session it resumes.
|
|
17
|
+
*/
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.initiatorFor = exports.parseHandoff = exports.HANDOFF_ENV_VARS = exports.CALLER_AGENT_ALLOWLIST = void 0;
|
|
20
|
+
exports.CALLER_AGENT_ALLOWLIST = ['claude', 'codex', 'cursor'];
|
|
21
|
+
exports.HANDOFF_ENV_VARS = {
|
|
22
|
+
agent: 'RIVET_CALLER_AGENT',
|
|
23
|
+
model: 'RIVET_CALLER_MODEL',
|
|
24
|
+
session: 'RIVET_CALLER_SESSION',
|
|
25
|
+
};
|
|
26
|
+
const normalizeAgentKind = (raw) => {
|
|
27
|
+
const candidate = raw.trim().toLowerCase();
|
|
28
|
+
return exports.CALLER_AGENT_ALLOWLIST.includes(candidate)
|
|
29
|
+
? candidate
|
|
30
|
+
: 'unknown';
|
|
31
|
+
};
|
|
32
|
+
const nonEmpty = (value) => {
|
|
33
|
+
const trimmed = value?.trim();
|
|
34
|
+
return trimmed ? trimmed : undefined;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Parse the `--handoff` JSON blob. The shape is schema-versioned alongside
|
|
38
|
+
* the output envelope; unknown fields are ignored so agent guidance can
|
|
39
|
+
* template one opaque blob.
|
|
40
|
+
*/
|
|
41
|
+
const parseHandoffJson = (raw) => {
|
|
42
|
+
try {
|
|
43
|
+
const parsed = JSON.parse(raw);
|
|
44
|
+
if (typeof parsed !== 'object' || parsed === null) {
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
47
|
+
return {
|
|
48
|
+
agent: typeof parsed.agent === 'string' ? parsed.agent : undefined,
|
|
49
|
+
model: typeof parsed.model === 'string' ? parsed.model : undefined,
|
|
50
|
+
session: typeof parsed.session === 'string' ? parsed.session : undefined,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
catch {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* Resolve the caller handoff from invocation flags and environment only.
|
|
59
|
+
* Precedence per field: explicit `--caller-*` flag > `--handoff` JSON >
|
|
60
|
+
* environment variable. No handoff sources present → `handoff: null`
|
|
61
|
+
* (the human-direct path).
|
|
62
|
+
*/
|
|
63
|
+
const parseHandoff = (flags, env = process.env) => {
|
|
64
|
+
let fromJson = {};
|
|
65
|
+
if (flags.handoffJson !== undefined) {
|
|
66
|
+
const parsed = parseHandoffJson(flags.handoffJson);
|
|
67
|
+
if (!parsed) {
|
|
68
|
+
return {
|
|
69
|
+
ok: false,
|
|
70
|
+
error: '--handoff must be a JSON object like {"agent":"claude","model":"...","session":"..."}',
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
fromJson = parsed;
|
|
74
|
+
}
|
|
75
|
+
const agentRaw = nonEmpty(flags.callerAgent) ??
|
|
76
|
+
nonEmpty(fromJson.agent) ??
|
|
77
|
+
nonEmpty(env[exports.HANDOFF_ENV_VARS.agent]);
|
|
78
|
+
const model = nonEmpty(flags.callerModel) ??
|
|
79
|
+
nonEmpty(fromJson.model) ??
|
|
80
|
+
nonEmpty(env[exports.HANDOFF_ENV_VARS.model]);
|
|
81
|
+
const session = nonEmpty(flags.callerSession) ??
|
|
82
|
+
nonEmpty(fromJson.session) ??
|
|
83
|
+
nonEmpty(env[exports.HANDOFF_ENV_VARS.session]);
|
|
84
|
+
if (!agentRaw && !model && !session) {
|
|
85
|
+
return { ok: true, handoff: null };
|
|
86
|
+
}
|
|
87
|
+
return {
|
|
88
|
+
ok: true,
|
|
89
|
+
handoff: {
|
|
90
|
+
agent: agentRaw ? normalizeAgentKind(agentRaw) : 'unknown',
|
|
91
|
+
...(model ? { model } : {}),
|
|
92
|
+
...(session ? { session } : {}),
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
exports.parseHandoff = parseHandoff;
|
|
97
|
+
/** Initiator attribution for a parsed handoff (`human` when absent). */
|
|
98
|
+
const initiatorFor = (handoff) => handoff
|
|
99
|
+
? {
|
|
100
|
+
kind: 'agent',
|
|
101
|
+
agent: handoff.agent,
|
|
102
|
+
...(handoff.model ? { model: handoff.model } : {}),
|
|
103
|
+
}
|
|
104
|
+
: { kind: 'human' };
|
|
105
|
+
exports.initiatorFor = initiatorFor;
|
|
106
|
+
//# sourceMappingURL=handoff.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../src/cli/handoff.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { CallerHandoff, WorkItemInitiator } from './handoff';
|
|
2
|
+
/**
|
|
3
|
+
* Durable, owner-only record of the handoff that started a session — the
|
|
4
|
+
* on-disk counterpart of the in-memory session attribution. Written under
|
|
5
|
+
* `<projectPath>/.rivet/cli/handoff.json` with `0600` permissions (the same
|
|
6
|
+
* discipline as the daemon token) because it can carry the caller's chat
|
|
7
|
+
* session id. That id never leaves this file: work items are stamped with
|
|
8
|
+
* agent kind and model only, and telemetry never receives it.
|
|
9
|
+
*/
|
|
10
|
+
export declare const SESSION_HANDOFF_VERSION = 1;
|
|
11
|
+
export type SessionHandoffRecord = {
|
|
12
|
+
version: typeof SESSION_HANDOFF_VERSION;
|
|
13
|
+
sessionId: string | null;
|
|
14
|
+
recordedAt: string;
|
|
15
|
+
initiator: WorkItemInitiator;
|
|
16
|
+
/** Full handoff, including the chat session id. Null for human starts. */
|
|
17
|
+
handoff: CallerHandoff | null;
|
|
18
|
+
};
|
|
19
|
+
export declare const sessionHandoffPath: (projectPath: string) => string;
|
|
20
|
+
/** Atomically persist the session-starting handoff, owner-only. */
|
|
21
|
+
export declare const writeSessionHandoff: (projectPath: string, record: Omit<SessionHandoffRecord, "version" | "recordedAt">) => void;
|
|
22
|
+
/** Read the persisted session handoff, or null when missing/corrupt. */
|
|
23
|
+
export declare const readSessionHandoff: (projectPath: string) => SessionHandoffRecord | null;
|
|
24
|
+
//# sourceMappingURL=handoffStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handoffStore.d.ts","sourceRoot":"","sources":["../../src/cli/handoffStore.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAElE;;;;;;;GAOG;AAEH,eAAO,MAAM,uBAAuB,IAAI,CAAC;AAEzC,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,OAAO,uBAAuB,CAAC;IACxC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,0EAA0E;IAC1E,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;CAC/B,CAAC;AAIF,eAAO,MAAM,kBAAkB,GAAI,aAAa,MAAM,KAAG,MACL,CAAC;AAErD,mEAAmE;AACnE,eAAO,MAAM,mBAAmB,GAC9B,aAAa,MAAM,EACnB,QAAQ,IAAI,CAAC,oBAAoB,EAAE,SAAS,GAAG,YAAY,CAAC,KAC3D,IAmBF,CAAC;AAEF,wEAAwE;AACxE,eAAO,MAAM,kBAAkB,GAC7B,aAAa,MAAM,KAClB,oBAAoB,GAAG,IASzB,CAAC"}
|