@vibesdotdev/workboard 0.0.0-stage → 1.0.0-rc.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/LICENSE +18 -0
- package/README.md +31 -2
- package/dist/agent-actions.d.ts +19 -0
- package/dist/agent-actions.d.ts.map +1 -0
- package/dist/agent-actions.js +93 -0
- package/dist/agent-actions.js.map +1 -0
- package/dist/attention/headless-attention.host.d.ts +78 -0
- package/dist/attention/headless-attention.host.d.ts.map +1 -0
- package/dist/attention/headless-attention.host.js +42 -0
- package/dist/attention/headless-attention.host.js.map +1 -0
- package/dist/attention/index.d.ts +2 -0
- package/dist/attention/index.d.ts.map +1 -0
- package/dist/attention/index.js +2 -0
- package/dist/attention/index.js.map +1 -0
- package/dist/cli/marshal/components/index.d.ts +12 -0
- package/dist/cli/marshal/components/index.d.ts.map +1 -0
- package/dist/cli/marshal/components/index.js +12 -0
- package/dist/cli/marshal/components/index.js.map +1 -0
- package/dist/cli/marshal/components/marshal-progress.d.ts +52 -0
- package/dist/cli/marshal/components/marshal-progress.d.ts.map +1 -0
- package/dist/cli/marshal/components/marshal-progress.js +182 -0
- package/dist/cli/marshal/components/marshal-progress.js.map +1 -0
- package/dist/cli/marshal/components/marshal-prompt.d.ts +72 -0
- package/dist/cli/marshal/components/marshal-prompt.d.ts.map +1 -0
- package/dist/cli/marshal/components/marshal-prompt.js +256 -0
- package/dist/cli/marshal/components/marshal-prompt.js.map +1 -0
- package/dist/cli/marshal/components/marshal-widgets.d.ts +73 -0
- package/dist/cli/marshal/components/marshal-widgets.d.ts.map +1 -0
- package/dist/cli/marshal/components/marshal-widgets.js +283 -0
- package/dist/cli/marshal/components/marshal-widgets.js.map +1 -0
- package/dist/cli/marshal/index.d.ts +2 -0
- package/dist/cli/marshal/index.d.ts.map +1 -0
- package/dist/cli/marshal/index.js +2 -0
- package/dist/cli/marshal/index.js.map +1 -0
- package/dist/client/helper.d.ts +12 -0
- package/dist/client/helper.d.ts.map +1 -0
- package/dist/client/helper.js +13 -0
- package/dist/client/helper.js.map +1 -0
- package/dist/client/index.d.ts +3 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +3 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/workboard-client.d.ts +283 -0
- package/dist/client/workboard-client.d.ts.map +1 -0
- package/dist/client/workboard-client.js +550 -0
- package/dist/client/workboard-client.js.map +1 -0
- package/dist/config/workboard.config.descriptor.d.ts +38 -0
- package/dist/config/workboard.config.descriptor.d.ts.map +1 -0
- package/dist/config/workboard.config.descriptor.js +30 -0
- package/dist/config/workboard.config.descriptor.js.map +1 -0
- package/dist/docs/workboard.docs.descriptor.d.ts +4 -0
- package/dist/docs/workboard.docs.descriptor.d.ts.map +1 -0
- package/dist/docs/workboard.docs.descriptor.js +85 -0
- package/dist/docs/workboard.docs.descriptor.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/marshal/agent/descriptor.d.ts +66 -0
- package/dist/marshal/agent/descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/descriptor.js +144 -0
- package/dist/marshal/agent/descriptor.js.map +1 -0
- package/dist/marshal/agent/index.d.ts +10 -0
- package/dist/marshal/agent/index.d.ts.map +1 -0
- package/dist/marshal/agent/index.js +10 -0
- package/dist/marshal/agent/index.js.map +1 -0
- package/dist/marshal/agent/marshal-agent.d.ts +42 -0
- package/dist/marshal/agent/marshal-agent.d.ts.map +1 -0
- package/dist/marshal/agent/marshal-agent.js +121 -0
- package/dist/marshal/agent/marshal-agent.js.map +1 -0
- package/dist/marshal/agent/marshal.agent.descriptor.d.ts +9 -0
- package/dist/marshal/agent/marshal.agent.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/marshal.agent.descriptor.js +9 -0
- package/dist/marshal/agent/marshal.agent.descriptor.js.map +1 -0
- package/dist/marshal/agent/profile.d.ts +16 -0
- package/dist/marshal/agent/profile.d.ts.map +1 -0
- package/dist/marshal/agent/profile.js +55 -0
- package/dist/marshal/agent/profile.js.map +1 -0
- package/dist/marshal/agent/prompts/cloud-system.prompt.descriptor.d.ts +113 -0
- package/dist/marshal/agent/prompts/cloud-system.prompt.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/cloud-system.prompt.descriptor.js +85 -0
- package/dist/marshal/agent/prompts/cloud-system.prompt.descriptor.js.map +1 -0
- package/dist/marshal/agent/prompts/index.d.ts +113 -0
- package/dist/marshal/agent/prompts/index.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/index.js +16 -0
- package/dist/marshal/agent/prompts/index.js.map +1 -0
- package/dist/marshal/agent/prompts/personality.prompt.descriptor.d.ts +113 -0
- package/dist/marshal/agent/prompts/personality.prompt.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/personality.prompt.descriptor.js +34 -0
- package/dist/marshal/agent/prompts/personality.prompt.descriptor.js.map +1 -0
- package/dist/marshal/agent/prompts/setup-issue.prompt.descriptor.d.ts +113 -0
- package/dist/marshal/agent/prompts/setup-issue.prompt.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/setup-issue.prompt.descriptor.js +68 -0
- package/dist/marshal/agent/prompts/setup-issue.prompt.descriptor.js.map +1 -0
- package/dist/marshal/agent/prompts/setup-wizard.prompt.descriptor.d.ts +113 -0
- package/dist/marshal/agent/prompts/setup-wizard.prompt.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/setup-wizard.prompt.descriptor.js +38 -0
- package/dist/marshal/agent/prompts/setup-wizard.prompt.descriptor.js.map +1 -0
- package/dist/marshal/agent/prompts/surface.prompt.descriptor.d.ts +113 -0
- package/dist/marshal/agent/prompts/surface.prompt.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/surface.prompt.descriptor.js +39 -0
- package/dist/marshal/agent/prompts/surface.prompt.descriptor.js.map +1 -0
- package/dist/marshal/agent/prompts/system.prompt.descriptor.d.ts +113 -0
- package/dist/marshal/agent/prompts/system.prompt.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/system.prompt.descriptor.js +63 -0
- package/dist/marshal/agent/prompts/system.prompt.descriptor.js.map +1 -0
- package/dist/marshal/agent/system-prompt.d.ts +34 -0
- package/dist/marshal/agent/system-prompt.d.ts.map +1 -0
- package/dist/marshal/agent/system-prompt.js +130 -0
- package/dist/marshal/agent/system-prompt.js.map +1 -0
- package/dist/marshal/capabilities.d.ts +55 -0
- package/dist/marshal/capabilities.d.ts.map +1 -0
- package/dist/marshal/capabilities.js +146 -0
- package/dist/marshal/capabilities.js.map +1 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.descriptor.d.ts +4 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.descriptor.d.ts.map +1 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.descriptor.js +18 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.descriptor.js.map +1 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.impl.consumer.d.ts +16 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.impl.consumer.d.ts.map +1 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.impl.consumer.js +39 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.impl.consumer.js.map +1 -0
- package/dist/marshal/cli/plugin.d.ts +3 -0
- package/dist/marshal/cli/plugin.d.ts.map +1 -0
- package/dist/marshal/cli/plugin.js +9 -0
- package/dist/marshal/cli/plugin.js.map +1 -0
- package/dist/marshal/client/helper.d.ts +24 -0
- package/dist/marshal/client/helper.d.ts.map +1 -0
- package/dist/marshal/client/helper.js +36 -0
- package/dist/marshal/client/helper.js.map +1 -0
- package/dist/marshal/client/index.d.ts +7 -0
- package/dist/marshal/client/index.d.ts.map +1 -0
- package/dist/marshal/client/index.js +6 -0
- package/dist/marshal/client/index.js.map +1 -0
- package/dist/marshal/client/marshal-api-client.impl.d.ts +22 -0
- package/dist/marshal/client/marshal-api-client.impl.d.ts.map +1 -0
- package/dist/marshal/client/marshal-api-client.impl.js +47 -0
- package/dist/marshal/client/marshal-api-client.impl.js.map +1 -0
- package/dist/marshal/client/marshal-client.runtime.d.ts +124 -0
- package/dist/marshal/client/marshal-client.runtime.d.ts.map +1 -0
- package/dist/marshal/client/marshal-client.runtime.js +216 -0
- package/dist/marshal/client/marshal-client.runtime.js.map +1 -0
- package/dist/marshal/cloud.plugin.d.ts +2 -0
- package/dist/marshal/cloud.plugin.d.ts.map +1 -0
- package/dist/marshal/cloud.plugin.js +2 -0
- package/dist/marshal/cloud.plugin.js.map +1 -0
- package/dist/marshal/components/index.d.ts +8 -0
- package/dist/marshal/components/index.d.ts.map +1 -0
- package/dist/marshal/components/index.js +15 -0
- package/dist/marshal/components/index.js.map +1 -0
- package/dist/marshal/config/manifest.d.ts +8608 -0
- package/dist/marshal/config/manifest.d.ts.map +1 -0
- package/dist/marshal/config/manifest.js +115 -0
- package/dist/marshal/config/manifest.js.map +1 -0
- package/dist/marshal/consumer.d.ts +7 -0
- package/dist/marshal/consumer.d.ts.map +1 -0
- package/dist/marshal/consumer.js +9 -0
- package/dist/marshal/consumer.js.map +1 -0
- package/dist/marshal/consumer.plugin.d.ts +2 -0
- package/dist/marshal/consumer.plugin.d.ts.map +1 -0
- package/dist/marshal/consumer.plugin.js +2 -0
- package/dist/marshal/consumer.plugin.js.map +1 -0
- package/dist/marshal/context/agents-context-kind.d.ts +9 -0
- package/dist/marshal/context/agents-context-kind.d.ts.map +1 -0
- package/dist/marshal/context/agents-context-kind.js +17 -0
- package/dist/marshal/context/agents-context-kind.js.map +1 -0
- package/dist/marshal/context/marshal.context-provider.descriptor.d.ts +26 -0
- package/dist/marshal/context/marshal.context-provider.descriptor.d.ts.map +1 -0
- package/dist/marshal/context/marshal.context-provider.descriptor.js +10 -0
- package/dist/marshal/context/marshal.context-provider.descriptor.js.map +1 -0
- package/dist/marshal/context/marshal.context-provider.impl.d.ts +4 -0
- package/dist/marshal/context/marshal.context-provider.impl.d.ts.map +1 -0
- package/dist/marshal/context/marshal.context-provider.impl.js +42 -0
- package/dist/marshal/context/marshal.context-provider.impl.js.map +1 -0
- package/dist/marshal/index.d.ts +29 -0
- package/dist/marshal/index.d.ts.map +1 -0
- package/dist/marshal/index.js +34 -0
- package/dist/marshal/index.js.map +1 -0
- package/dist/marshal/marshal.api-client.descriptor.d.ts +9 -0
- package/dist/marshal/marshal.api-client.descriptor.d.ts.map +1 -0
- package/dist/marshal/marshal.api-client.descriptor.js +19 -0
- package/dist/marshal/marshal.api-client.descriptor.js.map +1 -0
- package/dist/marshal/marshal.consumer.plugin.d.ts +4 -0
- package/dist/marshal/marshal.consumer.plugin.d.ts.map +1 -0
- package/dist/marshal/marshal.consumer.plugin.js +18 -0
- package/dist/marshal/marshal.consumer.plugin.js.map +1 -0
- package/dist/marshal/marshal.plugin.d.ts +10 -0
- package/dist/marshal/marshal.plugin.d.ts.map +1 -0
- package/dist/marshal/marshal.plugin.js +55 -0
- package/dist/marshal/marshal.plugin.js.map +1 -0
- package/dist/marshal/marshal.runtime-client.descriptor.d.ts +9 -0
- package/dist/marshal/marshal.runtime-client.descriptor.d.ts.map +1 -0
- package/dist/marshal/marshal.runtime-client.descriptor.js +19 -0
- package/dist/marshal/marshal.runtime-client.descriptor.js.map +1 -0
- package/dist/marshal/plugin.d.ts +2 -0
- package/dist/marshal/plugin.d.ts.map +1 -0
- package/dist/marshal/plugin.js +2 -0
- package/dist/marshal/plugin.js.map +1 -0
- package/dist/marshal/presence/heartbeat.d.ts +64 -0
- package/dist/marshal/presence/heartbeat.d.ts.map +1 -0
- package/dist/marshal/presence/heartbeat.js +169 -0
- package/dist/marshal/presence/heartbeat.js.map +1 -0
- package/dist/marshal/presence/index.d.ts +2 -0
- package/dist/marshal/presence/index.d.ts.map +1 -0
- package/dist/marshal/presence/index.js +2 -0
- package/dist/marshal/presence/index.js.map +1 -0
- package/dist/marshal/schemas/agent.d.ts +27 -0
- package/dist/marshal/schemas/agent.d.ts.map +1 -0
- package/dist/marshal/schemas/agent.js +2 -0
- package/dist/marshal/schemas/agent.js.map +1 -0
- package/dist/marshal/schemas/baseline.d.ts +73 -0
- package/dist/marshal/schemas/baseline.d.ts.map +1 -0
- package/dist/marshal/schemas/baseline.js +28 -0
- package/dist/marshal/schemas/baseline.js.map +1 -0
- package/dist/marshal/schemas/client.d.ts +50 -0
- package/dist/marshal/schemas/client.d.ts.map +1 -0
- package/dist/marshal/schemas/client.js +27 -0
- package/dist/marshal/schemas/client.js.map +1 -0
- package/dist/marshal/schemas/common.d.ts +252 -0
- package/dist/marshal/schemas/common.d.ts.map +1 -0
- package/dist/marshal/schemas/common.js +119 -0
- package/dist/marshal/schemas/common.js.map +1 -0
- package/dist/marshal/schemas/components.d.ts +95 -0
- package/dist/marshal/schemas/components.d.ts.map +1 -0
- package/dist/marshal/schemas/components.js +10 -0
- package/dist/marshal/schemas/components.js.map +1 -0
- package/dist/marshal/schemas/config.d.ts +20 -0
- package/dist/marshal/schemas/config.d.ts.map +1 -0
- package/dist/marshal/schemas/config.js +11 -0
- package/dist/marshal/schemas/config.js.map +1 -0
- package/dist/marshal/schemas/index.d.ts +18 -0
- package/dist/marshal/schemas/index.d.ts.map +1 -0
- package/dist/marshal/schemas/index.js +11 -0
- package/dist/marshal/schemas/index.js.map +1 -0
- package/dist/marshal/schemas/interactive.d.ts +315 -0
- package/dist/marshal/schemas/interactive.d.ts.map +1 -0
- package/dist/marshal/schemas/interactive.js +201 -0
- package/dist/marshal/schemas/interactive.js.map +1 -0
- package/dist/marshal/schemas/presence.d.ts +29 -0
- package/dist/marshal/schemas/presence.d.ts.map +1 -0
- package/dist/marshal/schemas/presence.js +14 -0
- package/dist/marshal/schemas/presence.js.map +1 -0
- package/dist/marshal/schemas/progress.d.ts +100 -0
- package/dist/marshal/schemas/progress.d.ts.map +1 -0
- package/dist/marshal/schemas/progress.js +55 -0
- package/dist/marshal/schemas/progress.js.map +1 -0
- package/dist/marshal/schemas/server.d.ts +70 -0
- package/dist/marshal/schemas/server.d.ts.map +1 -0
- package/dist/marshal/schemas/server.js +39 -0
- package/dist/marshal/schemas/server.js.map +1 -0
- package/dist/marshal/schemas/setup.d.ts +78 -0
- package/dist/marshal/schemas/setup.d.ts.map +1 -0
- package/dist/marshal/schemas/setup.js +2 -0
- package/dist/marshal/schemas/setup.js.map +1 -0
- package/dist/marshal/schemas/tools.d.ts +124 -0
- package/dist/marshal/schemas/tools.d.ts.map +1 -0
- package/dist/marshal/schemas/tools.js +75 -0
- package/dist/marshal/schemas/tools.js.map +1 -0
- package/dist/marshal/schemas/types.d.ts +33 -0
- package/dist/marshal/schemas/types.d.ts.map +1 -0
- package/dist/marshal/schemas/types.js +2 -0
- package/dist/marshal/schemas/types.js.map +1 -0
- package/dist/marshal/schemas/worker.d.ts +8 -0
- package/dist/marshal/schemas/worker.d.ts.map +1 -0
- package/dist/marshal/schemas/worker.js +7 -0
- package/dist/marshal/schemas/worker.js.map +1 -0
- package/dist/marshal/setup/guided.d.ts +26 -0
- package/dist/marshal/setup/guided.d.ts.map +1 -0
- package/dist/marshal/setup/guided.js +83 -0
- package/dist/marshal/setup/guided.js.map +1 -0
- package/dist/marshal/setup/index.d.ts +12 -0
- package/dist/marshal/setup/index.d.ts.map +1 -0
- package/dist/marshal/setup/index.js +11 -0
- package/dist/marshal/setup/index.js.map +1 -0
- package/dist/marshal/setup/provider-runtime.d.ts +23 -0
- package/dist/marshal/setup/provider-runtime.d.ts.map +1 -0
- package/dist/marshal/setup/provider-runtime.detected-models.d.ts +239 -0
- package/dist/marshal/setup/provider-runtime.detected-models.d.ts.map +1 -0
- package/dist/marshal/setup/provider-runtime.detected-models.js +30 -0
- package/dist/marshal/setup/provider-runtime.detected-models.js.map +1 -0
- package/dist/marshal/setup/provider-runtime.js +115 -0
- package/dist/marshal/setup/provider-runtime.js.map +1 -0
- package/dist/marshal/setup/provider-runtime.models.d.ts +38 -0
- package/dist/marshal/setup/provider-runtime.models.d.ts.map +1 -0
- package/dist/marshal/setup/provider-runtime.models.js +38 -0
- package/dist/marshal/setup/provider-runtime.models.js.map +1 -0
- package/dist/marshal/setup/save-baseline.d.ts +12 -0
- package/dist/marshal/setup/save-baseline.d.ts.map +1 -0
- package/dist/marshal/setup/save-baseline.js +89 -0
- package/dist/marshal/setup/save-baseline.js.map +1 -0
- package/dist/marshal/setup/save-baseline.normalizers.d.ts +20 -0
- package/dist/marshal/setup/save-baseline.normalizers.d.ts.map +1 -0
- package/dist/marshal/setup/save-baseline.normalizers.js +72 -0
- package/dist/marshal/setup/save-baseline.normalizers.js.map +1 -0
- package/dist/marshal/setup/types.d.ts +17 -0
- package/dist/marshal/setup/types.d.ts.map +1 -0
- package/dist/marshal/setup/types.js +26 -0
- package/dist/marshal/setup/types.js.map +1 -0
- package/dist/marshal/tools/index.d.ts +9 -0
- package/dist/marshal/tools/index.d.ts.map +1 -0
- package/dist/marshal/tools/index.js +9 -0
- package/dist/marshal/tools/index.js.map +1 -0
- package/dist/marshal/tools/unified/descriptor.d.ts +130 -0
- package/dist/marshal/tools/unified/descriptor.d.ts.map +1 -0
- package/dist/marshal/tools/unified/descriptor.js +53 -0
- package/dist/marshal/tools/unified/descriptor.js.map +1 -0
- package/dist/marshal/tools/unified/index.d.ts +10 -0
- package/dist/marshal/tools/unified/index.d.ts.map +1 -0
- package/dist/marshal/tools/unified/index.js +9 -0
- package/dist/marshal/tools/unified/index.js.map +1 -0
- package/dist/marshal/tools/unified/marshal.execution.d.ts +12 -0
- package/dist/marshal/tools/unified/marshal.execution.d.ts.map +1 -0
- package/dist/marshal/tools/unified/marshal.execution.js +104 -0
- package/dist/marshal/tools/unified/marshal.execution.js.map +1 -0
- package/dist/marshal/tools/unified/marshal.impl.cloud.d.ts +13 -0
- package/dist/marshal/tools/unified/marshal.impl.cloud.d.ts.map +1 -0
- package/dist/marshal/tools/unified/marshal.impl.cloud.js +15 -0
- package/dist/marshal/tools/unified/marshal.impl.cloud.js.map +1 -0
- package/dist/marshal/tools/unified/marshal.impl.consumer.d.ts +13 -0
- package/dist/marshal/tools/unified/marshal.impl.consumer.d.ts.map +1 -0
- package/dist/marshal/tools/unified/marshal.impl.consumer.js +15 -0
- package/dist/marshal/tools/unified/marshal.impl.consumer.js.map +1 -0
- package/dist/marshal/tools/unified/marshal.unified.descriptor.d.ts +140 -0
- package/dist/marshal/tools/unified/marshal.unified.descriptor.d.ts.map +1 -0
- package/dist/marshal/tools/unified/marshal.unified.descriptor.js +57 -0
- package/dist/marshal/tools/unified/marshal.unified.descriptor.js.map +1 -0
- package/dist/marshal/tools/unified/schemas.d.ts +8 -0
- package/dist/marshal/tools/unified/schemas.d.ts.map +1 -0
- package/dist/marshal/tools/unified/schemas.js +7 -0
- package/dist/marshal/tools/unified/schemas.js.map +1 -0
- package/dist/marshal/types.d.ts +2 -0
- package/dist/marshal/types.d.ts.map +1 -0
- package/dist/marshal/types.js +2 -0
- package/dist/marshal/types.js.map +1 -0
- package/dist/marshal/worker/index.d.ts +6 -0
- package/dist/marshal/worker/index.d.ts.map +1 -0
- package/dist/marshal/worker/index.js +5 -0
- package/dist/marshal/worker/index.js.map +1 -0
- package/dist/marshal/worker/jobs/assistance-job.d.ts +34 -0
- package/dist/marshal/worker/jobs/assistance-job.d.ts.map +1 -0
- package/dist/marshal/worker/jobs/assistance-job.js +43 -0
- package/dist/marshal/worker/jobs/assistance-job.js.map +1 -0
- package/dist/marshal/worker/jobs/configure-job.d.ts +48 -0
- package/dist/marshal/worker/jobs/configure-job.d.ts.map +1 -0
- package/dist/marshal/worker/jobs/configure-job.js +52 -0
- package/dist/marshal/worker/jobs/configure-job.js.map +1 -0
- package/dist/marshal/worker/jobs/index.d.ts +7 -0
- package/dist/marshal/worker/jobs/index.d.ts.map +1 -0
- package/dist/marshal/worker/jobs/index.js +7 -0
- package/dist/marshal/worker/jobs/index.js.map +1 -0
- package/dist/marshal/worker/jobs/onboarding-progress-job.d.ts +47 -0
- package/dist/marshal/worker/jobs/onboarding-progress-job.d.ts.map +1 -0
- package/dist/marshal/worker/jobs/onboarding-progress-job.js +51 -0
- package/dist/marshal/worker/jobs/onboarding-progress-job.js.map +1 -0
- package/dist/marshal/worker/marshal.assistance.job.impl.d.ts +3 -0
- package/dist/marshal/worker/marshal.assistance.job.impl.d.ts.map +1 -0
- package/dist/marshal/worker/marshal.assistance.job.impl.js +3 -0
- package/dist/marshal/worker/marshal.assistance.job.impl.js.map +1 -0
- package/dist/marshal/worker/marshal.concierge.descriptor.d.ts +3 -0
- package/dist/marshal/worker/marshal.concierge.descriptor.d.ts.map +1 -0
- package/dist/marshal/worker/marshal.concierge.descriptor.js +14 -0
- package/dist/marshal/worker/marshal.concierge.descriptor.js.map +1 -0
- package/dist/marshal/worker/marshal.concierge.impl.consumer.d.ts +12 -0
- package/dist/marshal/worker/marshal.concierge.impl.consumer.d.ts.map +1 -0
- package/dist/marshal/worker/marshal.concierge.impl.consumer.js +23 -0
- package/dist/marshal/worker/marshal.concierge.impl.consumer.js.map +1 -0
- package/dist/marshal/worker/marshal.configure.job.impl.d.ts +3 -0
- package/dist/marshal/worker/marshal.configure.job.impl.d.ts.map +1 -0
- package/dist/marshal/worker/marshal.configure.job.impl.js +3 -0
- package/dist/marshal/worker/marshal.configure.job.impl.js.map +1 -0
- package/dist/marshal/worker/marshal.jobs.descriptor.d.ts +6 -0
- package/dist/marshal/worker/marshal.jobs.descriptor.d.ts.map +1 -0
- package/dist/marshal/worker/marshal.jobs.descriptor.js +50 -0
- package/dist/marshal/worker/marshal.jobs.descriptor.js.map +1 -0
- package/dist/marshal/worker/marshal.onboarding-progress.job.impl.d.ts +3 -0
- package/dist/marshal/worker/marshal.onboarding-progress.job.impl.d.ts.map +1 -0
- package/dist/marshal/worker/marshal.onboarding-progress.job.impl.js +3 -0
- package/dist/marshal/worker/marshal.onboarding-progress.job.impl.js.map +1 -0
- package/dist/plugin/agent-tools.d.ts +15 -0
- package/dist/plugin/agent-tools.d.ts.map +1 -0
- package/dist/plugin/agent-tools.js +27 -0
- package/dist/plugin/agent-tools.js.map +1 -0
- package/dist/records/index.d.ts +7 -0
- package/dist/records/index.d.ts.map +1 -0
- package/dist/records/index.js +7 -0
- package/dist/records/index.js.map +1 -0
- package/dist/records/lane.record.descriptor.d.ts +11 -0
- package/dist/records/lane.record.descriptor.d.ts.map +1 -0
- package/dist/records/lane.record.descriptor.js +47 -0
- package/dist/records/lane.record.descriptor.js.map +1 -0
- package/dist/records/note.record.descriptor.d.ts +10 -0
- package/dist/records/note.record.descriptor.d.ts.map +1 -0
- package/dist/records/note.record.descriptor.js +46 -0
- package/dist/records/note.record.descriptor.js.map +1 -0
- package/dist/records/notification.record.descriptor.d.ts +11 -0
- package/dist/records/notification.record.descriptor.d.ts.map +1 -0
- package/dist/records/notification.record.descriptor.js +50 -0
- package/dist/records/notification.record.descriptor.js.map +1 -0
- package/dist/records/request.record.descriptor.d.ts +10 -0
- package/dist/records/request.record.descriptor.d.ts.map +1 -0
- package/dist/records/request.record.descriptor.js +50 -0
- package/dist/records/request.record.descriptor.js.map +1 -0
- package/dist/records/task.record.descriptor.d.ts +10 -0
- package/dist/records/task.record.descriptor.d.ts.map +1 -0
- package/dist/records/task.record.descriptor.js +65 -0
- package/dist/records/task.record.descriptor.js.map +1 -0
- package/dist/records/watch.record.descriptor.d.ts +10 -0
- package/dist/records/watch.record.descriptor.d.ts.map +1 -0
- package/dist/records/watch.record.descriptor.js +48 -0
- package/dist/records/watch.record.descriptor.js.map +1 -0
- package/dist/schemas/agent-action.d.ts +31 -0
- package/dist/schemas/agent-action.d.ts.map +1 -0
- package/dist/schemas/agent-action.js +24 -0
- package/dist/schemas/agent-action.js.map +1 -0
- package/dist/schemas/card-projection.d.ts +193 -0
- package/dist/schemas/card-projection.d.ts.map +1 -0
- package/dist/schemas/card-projection.js +30 -0
- package/dist/schemas/card-projection.js.map +1 -0
- package/dist/schemas/contracts.d.ts +1117 -0
- package/dist/schemas/contracts.d.ts.map +1 -0
- package/dist/schemas/contracts.js +38 -0
- package/dist/schemas/contracts.js.map +1 -0
- package/dist/schemas/headless-attention.d.ts +189 -0
- package/dist/schemas/headless-attention.d.ts.map +1 -0
- package/dist/schemas/headless-attention.js +136 -0
- package/dist/schemas/headless-attention.js.map +1 -0
- package/dist/schemas/index.d.ts +15 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +15 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/lane.d.ts +17 -0
- package/dist/schemas/lane.d.ts.map +1 -0
- package/dist/schemas/lane.js +14 -0
- package/dist/schemas/lane.js.map +1 -0
- package/dist/schemas/note.d.ts +14 -0
- package/dist/schemas/note.d.ts.map +1 -0
- package/dist/schemas/note.js +11 -0
- package/dist/schemas/note.js.map +1 -0
- package/dist/schemas/notification.d.ts +33 -0
- package/dist/schemas/notification.d.ts.map +1 -0
- package/dist/schemas/notification.js +19 -0
- package/dist/schemas/notification.js.map +1 -0
- package/dist/schemas/owner.d.ts +27 -0
- package/dist/schemas/owner.d.ts.map +1 -0
- package/dist/schemas/owner.js +18 -0
- package/dist/schemas/owner.js.map +1 -0
- package/dist/schemas/request.d.ts +69 -0
- package/dist/schemas/request.d.ts.map +1 -0
- package/dist/schemas/request.js +53 -0
- package/dist/schemas/request.js.map +1 -0
- package/dist/schemas/state.d.ts +170 -0
- package/dist/schemas/state.d.ts.map +1 -0
- package/dist/schemas/state.js +19 -0
- package/dist/schemas/state.js.map +1 -0
- package/dist/schemas/support-escalate.d.ts +54 -0
- package/dist/schemas/support-escalate.d.ts.map +1 -0
- package/dist/schemas/support-escalate.js +39 -0
- package/dist/schemas/support-escalate.js.map +1 -0
- package/dist/schemas/surface.d.ts +19 -0
- package/dist/schemas/surface.d.ts.map +1 -0
- package/dist/schemas/surface.js +8 -0
- package/dist/schemas/surface.js.map +1 -0
- package/dist/schemas/task.d.ts +70 -0
- package/dist/schemas/task.d.ts.map +1 -0
- package/dist/schemas/task.js +48 -0
- package/dist/schemas/task.js.map +1 -0
- package/dist/schemas/watch.d.ts +44 -0
- package/dist/schemas/watch.d.ts.map +1 -0
- package/dist/schemas/watch.js +19 -0
- package/dist/schemas/watch.js.map +1 -0
- package/dist/schemas/workboard-status-category.d.ts +35 -0
- package/dist/schemas/workboard-status-category.d.ts.map +1 -0
- package/dist/schemas/workboard-status-category.js +45 -0
- package/dist/schemas/workboard-status-category.js.map +1 -0
- package/dist/storage/owner-transforms.d.ts +228 -0
- package/dist/storage/owner-transforms.d.ts.map +1 -0
- package/dist/storage/owner-transforms.js +132 -0
- package/dist/storage/owner-transforms.js.map +1 -0
- package/dist/svelte/components/LaneBoard.svelte +250 -0
- package/dist/svelte/components/LaneBoard.svelte.d.ts +20 -0
- package/dist/svelte/components/LaneBoard.svelte.d.ts.map +1 -0
- package/dist/svelte/components/LaneBoardComposer.svelte +78 -0
- package/dist/svelte/components/LaneBoardComposer.svelte.d.ts +24 -0
- package/dist/svelte/components/LaneBoardComposer.svelte.d.ts.map +1 -0
- package/dist/svelte/components/LaneBoardFilters.svelte +34 -0
- package/dist/svelte/components/LaneBoardFilters.svelte.d.ts +12 -0
- package/dist/svelte/components/LaneBoardFilters.svelte.d.ts.map +1 -0
- package/dist/svelte/components/LaneBoardLane.svelte +46 -0
- package/dist/svelte/components/LaneBoardLane.svelte.d.ts +18 -0
- package/dist/svelte/components/LaneBoardLane.svelte.d.ts.map +1 -0
- package/dist/svelte/components/LaneBoardSummary.svelte +38 -0
- package/dist/svelte/components/LaneBoardSummary.svelte.d.ts +12 -0
- package/dist/svelte/components/LaneBoardSummary.svelte.d.ts.map +1 -0
- package/dist/svelte/components/LaneBoardTaskRow.svelte +158 -0
- package/dist/svelte/components/LaneBoardTaskRow.svelte.d.ts +31 -0
- package/dist/svelte/components/LaneBoardTaskRow.svelte.d.ts.map +1 -0
- package/dist/svelte/components/PriorityBadge.svelte +21 -0
- package/dist/svelte/components/PriorityBadge.svelte.d.ts +7 -0
- package/dist/svelte/components/PriorityBadge.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RequestsQueue.svelte +613 -0
- package/dist/svelte/components/RequestsQueue.svelte.d.ts +21 -0
- package/dist/svelte/components/RequestsQueue.svelte.d.ts.map +1 -0
- package/dist/svelte/components/StatCard.svelte +27 -0
- package/dist/svelte/components/StatCard.svelte.d.ts +12 -0
- package/dist/svelte/components/StatCard.svelte.d.ts.map +1 -0
- package/dist/svelte/components/StatusBadge.svelte +25 -0
- package/dist/svelte/components/StatusBadge.svelte.d.ts +7 -0
- package/dist/svelte/components/StatusBadge.svelte.d.ts.map +1 -0
- package/dist/svelte/components/WorkboardBoard.svelte +467 -0
- package/dist/svelte/components/WorkboardBoard.svelte.d.ts +26 -0
- package/dist/svelte/components/WorkboardBoard.svelte.d.ts.map +1 -0
- package/dist/svelte/index.d.ts +22 -0
- package/dist/svelte/index.d.ts.map +1 -0
- package/dist/svelte/index.js +24 -0
- package/dist/svelte/lane-board-client.d.ts +3 -0
- package/dist/svelte/lane-board-client.d.ts.map +1 -0
- package/dist/svelte/lane-board-client.js +2 -0
- package/dist/svelte/lane-board.d.ts +120 -0
- package/dist/svelte/lane-board.d.ts.map +1 -0
- package/dist/svelte/lane-board.js +221 -0
- package/dist/svelte/rest-workboard-client.d.ts +235 -0
- package/dist/svelte/rest-workboard-client.d.ts.map +1 -0
- package/dist/svelte/rest-workboard-client.js +52 -0
- package/dist/svelte/styles.css +10 -0
- package/dist/svelte/tool-widgets/MarshalToolCard.svelte +67 -0
- package/dist/svelte/tool-widgets/MarshalToolCard.svelte.d.ts +5 -0
- package/dist/svelte/tool-widgets/MarshalToolCard.svelte.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/SupportEscalateToolCard.svelte +42 -0
- package/dist/svelte/tool-widgets/SupportEscalateToolCard.svelte.d.ts +5 -0
- package/dist/svelte/tool-widgets/SupportEscalateToolCard.svelte.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/index.d.ts +7 -0
- package/dist/svelte/tool-widgets/index.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/index.js +6 -0
- package/dist/svelte/types.d.ts +24 -0
- package/dist/svelte/types.d.ts.map +1 -0
- package/dist/svelte/types.js +1 -0
- package/dist/svelte/workboard-svelte.plugin.d.ts +10 -0
- package/dist/svelte/workboard-svelte.plugin.d.ts.map +1 -0
- package/dist/svelte/workboard-svelte.plugin.js +31 -0
- package/dist/svelte/workboard-utils.d.ts +33 -0
- package/dist/svelte/workboard-utils.d.ts.map +1 -0
- package/dist/svelte/workboard-utils.js +85 -0
- package/dist/tools/card-projections.d.ts +7 -0
- package/dist/tools/card-projections.d.ts.map +1 -0
- package/dist/tools/card-projections.js +64 -0
- package/dist/tools/card-projections.js.map +1 -0
- package/dist/tools/support-escalate/schemas.d.ts +2 -0
- package/dist/tools/support-escalate/schemas.d.ts.map +1 -0
- package/dist/tools/support-escalate/schemas.js +2 -0
- package/dist/tools/support-escalate/schemas.js.map +1 -0
- package/dist/tools/support-escalate/support-escalate.descriptor.d.ts +49 -0
- package/dist/tools/support-escalate/support-escalate.descriptor.d.ts.map +1 -0
- package/dist/tools/support-escalate/support-escalate.descriptor.js +42 -0
- package/dist/tools/support-escalate/support-escalate.descriptor.js.map +1 -0
- package/dist/tools/support-escalate/support-escalate.impl.cloud.d.ts +17 -0
- package/dist/tools/support-escalate/support-escalate.impl.cloud.d.ts.map +1 -0
- package/dist/tools/support-escalate/support-escalate.impl.cloud.js +63 -0
- package/dist/tools/support-escalate/support-escalate.impl.cloud.js.map +1 -0
- package/dist/tui/index.d.ts +2 -0
- package/dist/tui/index.d.ts.map +1 -0
- package/dist/tui/index.js +2 -0
- package/dist/tui/index.js.map +1 -0
- package/dist/tui/tool-widgets/MarshalToolWidget.impl.consumer.d.ts +4 -0
- package/dist/tui/tool-widgets/MarshalToolWidget.impl.consumer.d.ts.map +1 -0
- package/dist/tui/tool-widgets/MarshalToolWidget.impl.consumer.js +17 -0
- package/dist/tui/tool-widgets/MarshalToolWidget.impl.consumer.js.map +1 -0
- package/dist/tui/tool-widgets/SupportEscalateToolWidget.impl.consumer.d.ts +4 -0
- package/dist/tui/tool-widgets/SupportEscalateToolWidget.impl.consumer.d.ts.map +1 -0
- package/dist/tui/tool-widgets/SupportEscalateToolWidget.impl.consumer.js +11 -0
- package/dist/tui/tool-widgets/SupportEscalateToolWidget.impl.consumer.js.map +1 -0
- package/dist/tui/workboard-tui.plugin.d.ts +7 -0
- package/dist/tui/workboard-tui.plugin.d.ts.map +1 -0
- package/dist/tui/workboard-tui.plugin.js +32 -0
- package/dist/tui/workboard-tui.plugin.js.map +1 -0
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/exec.d.ts +35 -0
- package/dist/utils/exec.d.ts.map +1 -0
- package/dist/utils/exec.js +31 -0
- package/dist/utils/exec.js.map +1 -0
- package/dist/workboard.plugin.d.ts +8 -0
- package/dist/workboard.plugin.d.ts.map +1 -0
- package/dist/workboard.plugin.js +46 -0
- package/dist/workboard.plugin.js.map +1 -0
- package/dist/workboard.runtime-client.descriptor.d.ts +4 -0
- package/dist/workboard.runtime-client.descriptor.d.ts.map +1 -0
- package/dist/workboard.runtime-client.descriptor.js +13 -0
- package/dist/workboard.runtime-client.descriptor.js.map +1 -0
- package/package.json +409 -4
package/LICENSE
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 VIBES DEV LLC
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
|
|
6
|
+
associated documentation files (the "Software"), to deal in the Software without restriction, including
|
|
7
|
+
without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the
|
|
9
|
+
following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all copies or substantial
|
|
12
|
+
portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
|
|
15
|
+
LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
|
|
16
|
+
EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
17
|
+
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
|
18
|
+
USE OR OTHER DEALINGS IN THE SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,3 +1,32 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @vibesdotdev/workboard
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Runtime-owned workboard primitives: lanes, tasks, requests, watches, notifications
|
|
4
|
+
and notes. Compose the workboard plugin with storage and an adapter, then resolve
|
|
5
|
+
the semantic client with `getVibesWorkboardClient(runtime)`.
|
|
6
|
+
|
|
7
|
+
Core writes, filters, attention responses and tool-card projections validate their
|
|
8
|
+
owner schemas. `./schemas` exports task/request patches and both entity-named and
|
|
9
|
+
CRUD result envelopes for hosted surfaces. Storage and transport failures reject;
|
|
10
|
+
they do not produce empty state or escalation confirmations.
|
|
11
|
+
|
|
12
|
+
Headless attention uses host-supplied authenticated transport. Workboard owns the
|
|
13
|
+
approval request and terminal decision. Support escalation requires caller
|
|
14
|
+
authentication and a valid created-request identity before confirming filing.
|
|
15
|
+
|
|
16
|
+
See [SPEC.md](SPEC.md) for entrypoints and contracts, and
|
|
17
|
+
[Marshal's contract](src/marshal/SPEC.md) for the concierge.
|
|
18
|
+
|
|
19
|
+
Browser hosts use `createRestWorkboardClient` from `./svelte` with their own
|
|
20
|
+
REST mount. Both entity-named and CRUD envelopes are validated; malformed
|
|
21
|
+
responses and failed operations reject and surface as visible board/queue errors.
|
|
22
|
+
|
|
23
|
+
Use `./marshal/plugin` or `./marshal/cloud.plugin` for universal/cloud
|
|
24
|
+
composition, `./marshal/consumer.plugin` for consumer loaders, and
|
|
25
|
+
`./marshal/cli/plugin` for CLI registration. Compose the agents context owner
|
|
26
|
+
before Marshal. The universal entrypoints contain no consumer loader closure.
|
|
27
|
+
|
|
28
|
+
Run `bun run check`, `bun test`, `bun run build`, the configured Oxlint ratchet
|
|
29
|
+
and `workspace-rules` for this package. Check includes all TS/TSX tests and
|
|
30
|
+
Svelte diagnostics; production builds exclude test and fixture artifacts.
|
|
31
|
+
The client tests compose real storage and LocalDB in disposable homes; REST
|
|
32
|
+
and support tests replace only HTTP transport.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type VibesLink } from '@vibesdotdev/shared/schemas';
|
|
2
|
+
import type { RuntimeRef } from '@vibesdotdev/kernel';
|
|
3
|
+
import type { WorkboardNotification, WorkboardRequest } from './schemas/index.ts';
|
|
4
|
+
import { type WorkboardAgentMessageInput, type WorkboardPlanConfirmationInput } from './schemas/agent-action.ts';
|
|
5
|
+
export type { WorkboardNotificationDraft, WorkboardRequestDraft } from './schemas/contracts.ts';
|
|
6
|
+
import type { WorkboardNotificationDraft, WorkboardRequestDraft } from './schemas/contracts.ts';
|
|
7
|
+
/**
|
|
8
|
+
* Stamp the runtime-bound Vibes session onto a Workboard write as a fallback.
|
|
9
|
+
*
|
|
10
|
+
* Caller-provided session links take priority — they may carry a code-session
|
|
11
|
+
* id that the runtime scope does not have. Only when the caller provides no
|
|
12
|
+
* `kind: 'session'` link does the runtime-bound `sessionId` fill the gap.
|
|
13
|
+
*/
|
|
14
|
+
export declare function withBoundSessionProvenance(runtime: RuntimeRef, links: readonly VibesLink[] | undefined): VibesLink[] | undefined;
|
|
15
|
+
export declare function buildAgentMessageNotification(input: WorkboardAgentMessageInput): WorkboardNotificationDraft;
|
|
16
|
+
export declare function buildPlanConfirmationRequest(input: WorkboardPlanConfirmationInput): WorkboardRequestDraft;
|
|
17
|
+
export type WorkboardAgentMessageResult = WorkboardNotification;
|
|
18
|
+
export type WorkboardPlanConfirmationResult = WorkboardRequest;
|
|
19
|
+
//# sourceMappingURL=agent-actions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-actions.d.ts","sourceRoot":"","sources":["../src/agent-actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EACX,qBAAqB,EACrB,gBAAgB,EAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAGN,KAAK,0BAA0B,EAC/B,KAAK,8BAA8B,EACnC,MAAM,2BAA2B,CAAC;AAEnC,YAAY,EAAE,0BAA0B,EAAC,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/F,OAAO,KAAK,EAAE,0BAA0B,EAAC,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AA2B/F;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACzC,OAAO,EAAE,UAAU,EACnB,KAAK,EAAE,SAAS,SAAS,EAAE,GAAC,SAAS,GACnC,SAAS,EAAE,GAAC,SAAS,CAWvB;AAED,wBAAgB,6BAA6B,CAC5C,KAAK,EAAE,0BAA0B,GAC/B,0BAA0B,CAU5B;AAED,wBAAgB,4BAA4B,CAC3C,KAAK,EAAE,8BAA8B,GACnC,qBAAqB,CA+BvB;AAED,MAAM,MAAM,2BAA2B,GAAC,qBAAqB,CAAC;AAC9D,MAAM,MAAM,+BAA+B,GAAC,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { vibesLink } from '@vibesdotdev/shared/schemas';
|
|
2
|
+
import { WorkboardAgentMessageInputSchema, WorkboardPlanConfirmationInputSchema } from "./schemas/agent-action.js";
|
|
3
|
+
import { z } from 'zod/v4';
|
|
4
|
+
function optionalString(value) {
|
|
5
|
+
const parsed = z.string().trim().min(1).safeParse(value);
|
|
6
|
+
return parsed.success ? parsed.data : undefined;
|
|
7
|
+
}
|
|
8
|
+
function derivePlanTitle(plan) {
|
|
9
|
+
return optionalString(plan.title) ?? optionalString(plan.name) ?? 'Review agent plan';
|
|
10
|
+
}
|
|
11
|
+
function derivePlanDescription(plan) {
|
|
12
|
+
return optionalString(plan.summary) ?? optionalString(plan.description) ?? '';
|
|
13
|
+
}
|
|
14
|
+
function uniqueLinks(links) {
|
|
15
|
+
const seen = new Set();
|
|
16
|
+
return links.filter((link) => {
|
|
17
|
+
const key = `${link.kind}\u0000${link.id}\u0000${link.source}\u0000${link.role}`;
|
|
18
|
+
if (seen.has(key))
|
|
19
|
+
return false;
|
|
20
|
+
seen.add(key);
|
|
21
|
+
return true;
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Stamp the runtime-bound Vibes session onto a Workboard write as a fallback.
|
|
26
|
+
*
|
|
27
|
+
* Caller-provided session links take priority — they may carry a code-session
|
|
28
|
+
* id that the runtime scope does not have. Only when the caller provides no
|
|
29
|
+
* `kind: 'session'` link does the runtime-bound `sessionId` fill the gap.
|
|
30
|
+
*/
|
|
31
|
+
export function withBoundSessionProvenance(runtime, links) {
|
|
32
|
+
const hasSessionLink = (links ?? []).some((link) => link.kind === 'session');
|
|
33
|
+
if (hasSessionLink)
|
|
34
|
+
return links?.length ? uniqueLinks(links) : undefined;
|
|
35
|
+
const boundSessionId = optionalString(runtime.scope.actor?.sessionId);
|
|
36
|
+
if (!boundSessionId)
|
|
37
|
+
return links?.length ? uniqueLinks(links) : undefined;
|
|
38
|
+
return uniqueLinks([
|
|
39
|
+
...(links ?? []),
|
|
40
|
+
vibesLink('session', boundSessionId, 'workboard', 'executed-by')
|
|
41
|
+
]);
|
|
42
|
+
}
|
|
43
|
+
export function buildAgentMessageNotification(input) {
|
|
44
|
+
const message = WorkboardAgentMessageInputSchema.parse(input);
|
|
45
|
+
const draft = {
|
|
46
|
+
type: 'agent.message',
|
|
47
|
+
message: message.message,
|
|
48
|
+
severity: message.severity,
|
|
49
|
+
source: message.source ?? message.agentId ?? 'agent'
|
|
50
|
+
};
|
|
51
|
+
if (message.id)
|
|
52
|
+
draft.id = message.id;
|
|
53
|
+
return draft;
|
|
54
|
+
}
|
|
55
|
+
export function buildPlanConfirmationRequest(input) {
|
|
56
|
+
const request = WorkboardPlanConfirmationInputSchema.parse(input);
|
|
57
|
+
const details = {
|
|
58
|
+
kind: 'plan.confirmation',
|
|
59
|
+
plan: request.plan
|
|
60
|
+
};
|
|
61
|
+
if (request.source)
|
|
62
|
+
details.source = request.source;
|
|
63
|
+
if (request.artifactId)
|
|
64
|
+
details.artifactId = request.artifactId;
|
|
65
|
+
if (request.planId)
|
|
66
|
+
details.planId = request.planId;
|
|
67
|
+
if (request.sessionId)
|
|
68
|
+
details.sessionId = request.sessionId;
|
|
69
|
+
if (request.metadata)
|
|
70
|
+
details.metadata = request.metadata;
|
|
71
|
+
const links = [
|
|
72
|
+
...(request.planId ? [vibesLink('plan', request.planId, 'workboard', 'approves')] : []),
|
|
73
|
+
...(request.artifactId
|
|
74
|
+
? [vibesLink('applet', request.artifactId, 'workboard', 'approves')]
|
|
75
|
+
: []),
|
|
76
|
+
...(request.sessionId
|
|
77
|
+
? [vibesLink('session', request.sessionId, 'workboard', 'executed-by')]
|
|
78
|
+
: [])
|
|
79
|
+
];
|
|
80
|
+
const draft = {
|
|
81
|
+
title: request.title ?? derivePlanTitle(request.plan),
|
|
82
|
+
type: 'plan_confirmation',
|
|
83
|
+
requested_by: request.requested_by,
|
|
84
|
+
description: request.description ?? derivePlanDescription(request.plan),
|
|
85
|
+
details
|
|
86
|
+
};
|
|
87
|
+
if (links.length)
|
|
88
|
+
draft.links = links;
|
|
89
|
+
if (request.id)
|
|
90
|
+
draft.id = request.id;
|
|
91
|
+
return draft;
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=agent-actions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-actions.js","sourceRoot":"","sources":["../src/agent-actions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import type { RuntimeRef } from '@vibesdotdev/kernel';
|
|
2
|
+
import type { WorkboardHeadlessAttentionDecisionInput, WorkboardHeadlessAttentionDecisionReceipt, WorkboardHeadlessAttentionOpenInput } from '../schemas/headless-attention.ts';
|
|
3
|
+
import type { WorkboardRequest } from '../schemas/request.ts';
|
|
4
|
+
export declare const WORKBOARD_ATTENTION_REQUEST_HOST_CONTEXT_ID = "workboard/attention-request-host";
|
|
5
|
+
export declare const WORKBOARD_ATTENTION_DECISION_HOST_CONTEXT_ID = "workboard/attention-decision-host";
|
|
6
|
+
/**
|
|
7
|
+
* Host binding used by a service that can open Workboard-owned attention.
|
|
8
|
+
* Workboard owns the contract; the app supplies its authenticated transport.
|
|
9
|
+
*/
|
|
10
|
+
export interface WorkboardAttentionRequestHost {
|
|
11
|
+
open(data: WorkboardHeadlessAttentionOpenInput): Promise<WorkboardRequest>;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Host binding used by the Workboard authority to resume a parked Chat turn.
|
|
15
|
+
* The app supplies transport only; the decision remains a Workboard fact.
|
|
16
|
+
*/
|
|
17
|
+
export interface WorkboardAttentionDecisionHost {
|
|
18
|
+
deliverDecision(data: WorkboardHeadlessAttentionDecisionInput): Promise<WorkboardHeadlessAttentionDecisionReceipt>;
|
|
19
|
+
}
|
|
20
|
+
export declare const workboardAttentionRequestHostContextDescriptor: {
|
|
21
|
+
id: string;
|
|
22
|
+
kind: "context";
|
|
23
|
+
name?: string | undefined;
|
|
24
|
+
description?: string | undefined;
|
|
25
|
+
tags?: string[] | undefined;
|
|
26
|
+
hardware?: string[] | undefined;
|
|
27
|
+
enabled?: boolean | undefined;
|
|
28
|
+
priority?: number | undefined;
|
|
29
|
+
capabilityId?: string | undefined;
|
|
30
|
+
requiredContext?: string[] | undefined;
|
|
31
|
+
optionalContext?: string[] | undefined;
|
|
32
|
+
retention?: string | {
|
|
33
|
+
reason: string;
|
|
34
|
+
maxAgeDays?: number | undefined;
|
|
35
|
+
maxEntries?: number | undefined;
|
|
36
|
+
maxBytes?: number | undefined;
|
|
37
|
+
cascadeFrom?: string | undefined;
|
|
38
|
+
ageField?: string | undefined;
|
|
39
|
+
enforcedBy?: string | undefined;
|
|
40
|
+
} | undefined;
|
|
41
|
+
valueKind?: "data" | "service" | undefined;
|
|
42
|
+
valueSchema?: unknown;
|
|
43
|
+
config?: {
|
|
44
|
+
sources: ("literal" | "workspace" | "floor")[];
|
|
45
|
+
subset?: true | undefined;
|
|
46
|
+
} | undefined;
|
|
47
|
+
};
|
|
48
|
+
export declare const workboardAttentionDecisionHostContextDescriptor: {
|
|
49
|
+
id: string;
|
|
50
|
+
kind: "context";
|
|
51
|
+
name?: string | undefined;
|
|
52
|
+
description?: string | undefined;
|
|
53
|
+
tags?: string[] | undefined;
|
|
54
|
+
hardware?: string[] | undefined;
|
|
55
|
+
enabled?: boolean | undefined;
|
|
56
|
+
priority?: number | undefined;
|
|
57
|
+
capabilityId?: string | undefined;
|
|
58
|
+
requiredContext?: string[] | undefined;
|
|
59
|
+
optionalContext?: string[] | undefined;
|
|
60
|
+
retention?: string | {
|
|
61
|
+
reason: string;
|
|
62
|
+
maxAgeDays?: number | undefined;
|
|
63
|
+
maxEntries?: number | undefined;
|
|
64
|
+
maxBytes?: number | undefined;
|
|
65
|
+
cascadeFrom?: string | undefined;
|
|
66
|
+
ageField?: string | undefined;
|
|
67
|
+
enforcedBy?: string | undefined;
|
|
68
|
+
} | undefined;
|
|
69
|
+
valueKind?: "data" | "service" | undefined;
|
|
70
|
+
valueSchema?: unknown;
|
|
71
|
+
config?: {
|
|
72
|
+
sources: ("literal" | "workspace" | "floor")[];
|
|
73
|
+
subset?: true | undefined;
|
|
74
|
+
} | undefined;
|
|
75
|
+
};
|
|
76
|
+
export declare function resolveWorkboardAttentionRequestHost(runtime: RuntimeRef): Promise<WorkboardAttentionRequestHost>;
|
|
77
|
+
export declare function resolveWorkboardAttentionDecisionHost(runtime: RuntimeRef): Promise<WorkboardAttentionDecisionHost>;
|
|
78
|
+
//# sourceMappingURL=headless-attention.host.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"headless-attention.host.d.ts","sourceRoot":"","sources":["../../src/attention/headless-attention.host.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EACX,uCAAuC,EACvC,yCAAyC,EACzC,mCAAmC,EACnC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,eAAO,MAAM,2CAA2C,qCACrB,CAAC;AACpC,eAAO,MAAM,4CAA4C,sCACrB,CAAC;AAErC;;;GAGG;AACH,MAAM,WAAW,6BAA6B;IAC7C,IAAI,CAAC,IAAI,EAAE,mCAAmC,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC3E;AAED;;;GAGG;AACH,MAAM,WAAW,8BAA8B;IAC9C,eAAe,CACd,IAAI,EAAE,uCAAuC,GAC3C,OAAO,CAAC,yCAAyC,CAAC,CAAC;CACtD;AAED,eAAO,MAAM,8CAA8C;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIzD,CAAC;AAEH,eAAO,MAAM,+CAA+C;;;;;;;;;;;;;;;;;;;;;;;;;;;CAI1D,CAAC;AAUH,wBAAsB,oCAAoC,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAStH;AAED,wBAAsB,qCAAqC,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,8BAA8B,CAAC,CASxH"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import * as z from 'zod/v4';
|
|
2
|
+
import { CapabilityError, settle } from '@vibesdotdev/kernel';
|
|
3
|
+
import { createContextDescriptor } from '@vibesdotdev/kernel/factory/context';
|
|
4
|
+
export const WORKBOARD_ATTENTION_REQUEST_HOST_CONTEXT_ID = 'workboard/attention-request-host';
|
|
5
|
+
export const WORKBOARD_ATTENTION_DECISION_HOST_CONTEXT_ID = 'workboard/attention-decision-host';
|
|
6
|
+
export const workboardAttentionRequestHostContextDescriptor = createContextDescriptor({
|
|
7
|
+
id: WORKBOARD_ATTENTION_REQUEST_HOST_CONTEXT_ID,
|
|
8
|
+
description: 'Host transport that opens an owner-attributed Workboard attention request.'
|
|
9
|
+
});
|
|
10
|
+
export const workboardAttentionDecisionHostContextDescriptor = createContextDescriptor({
|
|
11
|
+
id: WORKBOARD_ATTENTION_DECISION_HOST_CONTEXT_ID,
|
|
12
|
+
description: 'Host transport that delivers a terminal Workboard decision to a parked continuation.'
|
|
13
|
+
});
|
|
14
|
+
const RequestHostSchema = z.object({
|
|
15
|
+
open: z.custom(value => z.instanceof(Function).safeParse(value).success)
|
|
16
|
+
});
|
|
17
|
+
const DecisionHostSchema = z.object({
|
|
18
|
+
deliverDecision: z.custom(value => z.instanceof(Function).safeParse(value).success)
|
|
19
|
+
});
|
|
20
|
+
export async function resolveWorkboardAttentionRequestHost(runtime) {
|
|
21
|
+
const resolved = await settle(() => runtime.context(WORKBOARD_ATTENTION_REQUEST_HOST_CONTEXT_ID));
|
|
22
|
+
if (!resolved.ok && !CapabilityError.isAbsenceOf(resolved.cause, 'context', WORKBOARD_ATTENTION_REQUEST_HOST_CONTEXT_ID)) {
|
|
23
|
+
throw resolved.cause;
|
|
24
|
+
}
|
|
25
|
+
const host = resolved.ok ? resolved.value : undefined;
|
|
26
|
+
const parsed = RequestHostSchema.safeParse(host);
|
|
27
|
+
if (!parsed.success)
|
|
28
|
+
throw new CapabilityError('WORKBOARD_ATTENTION_REQUEST_HOST_UNAVAILABLE: attention request host is not mounted or invalid', 'UNAVAILABLE', { reason: 'workboard-attention-request-host-unavailable' });
|
|
29
|
+
return { open: parsed.data.open.bind(host) };
|
|
30
|
+
}
|
|
31
|
+
export async function resolveWorkboardAttentionDecisionHost(runtime) {
|
|
32
|
+
const resolved = await settle(() => runtime.context(WORKBOARD_ATTENTION_DECISION_HOST_CONTEXT_ID));
|
|
33
|
+
if (!resolved.ok && !CapabilityError.isAbsenceOf(resolved.cause, 'context', WORKBOARD_ATTENTION_DECISION_HOST_CONTEXT_ID)) {
|
|
34
|
+
throw resolved.cause;
|
|
35
|
+
}
|
|
36
|
+
const host = resolved.ok ? resolved.value : undefined;
|
|
37
|
+
const parsed = DecisionHostSchema.safeParse(host);
|
|
38
|
+
if (!parsed.success)
|
|
39
|
+
throw new CapabilityError('WORKBOARD_ATTENTION_DECISION_HOST_UNAVAILABLE: attention decision host is not mounted or invalid', 'UNAVAILABLE', { reason: 'workboard-attention-decision-host-unavailable' });
|
|
40
|
+
return { deliverDecision: parsed.data.deliverDecision.bind(host) };
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=headless-attention.host.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"headless-attention.host.js","sourceRoot":"","sources":["../../src/attention/headless-attention.host.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { WORKBOARD_ATTENTION_REQUEST_HOST_CONTEXT_ID, WORKBOARD_ATTENTION_DECISION_HOST_CONTEXT_ID, workboardAttentionRequestHostContextDescriptor, workboardAttentionDecisionHostContextDescriptor, resolveWorkboardAttentionRequestHost, resolveWorkboardAttentionDecisionHost, type WorkboardAttentionRequestHost, type WorkboardAttentionDecisionHost } from './headless-attention.host.ts';
|
|
2
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/attention/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,2CAA2C,EAC3C,4CAA4C,EAC5C,8CAA8C,EAC9C,+CAA+C,EAC/C,oCAAoC,EACpC,qCAAqC,EACrC,KAAK,6BAA6B,EAClC,KAAK,8BAA8B,EACnC,MAAM,8BAA8B,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { WORKBOARD_ATTENTION_REQUEST_HOST_CONTEXT_ID, WORKBOARD_ATTENTION_DECISION_HOST_CONTEXT_ID, workboardAttentionRequestHostContextDescriptor, workboardAttentionDecisionHostContextDescriptor, resolveWorkboardAttentionRequestHost, resolveWorkboardAttentionDecisionHost } from "./headless-attention.host.js";
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/attention/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,2CAA2C,EAC3C,4CAA4C,EAC5C,8CAA8C,EAC9C,+CAA+C,EAC/C,oCAAoC,EACpC,qCAAqC,EAGrC,MAAM,8BAA8B,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Marshal CLI Components
|
|
3
|
+
*
|
|
4
|
+
* Terminal output components for Marshal CLI interactions.
|
|
5
|
+
*/
|
|
6
|
+
export { showMarshalIntro, showMarshalOutro, handleCancel, checkCancel, promptMarshalQuestion, promptMarshalSetup, showNote, showInfo, showSuccess, showWarning, showError, createSpinner, promptConfirm, promptText, promptSelect } from './marshal-prompt.ts';
|
|
7
|
+
export type { MarshalPromptOptions, MarshalQuestionPromptOptions, MarshalSetupResult as SetupPromptResults } from '../../../marshal/schemas/components.ts';
|
|
8
|
+
export { renderBox, renderTable, renderKeyValue, renderProviderList, renderSettingsPanel, renderProjectCard, renderChecklist, renderTip, renderMarshalConfig } from './marshal-widgets.ts';
|
|
9
|
+
export type { BoxOptions, TableOptions, WidgetRenderOptions } from '../../../marshal/schemas/components.ts';
|
|
10
|
+
export { renderProgressBar, renderLabeledProgress, renderStepIndicator, renderOnboardingProgress, renderCompactProgress, createMarshalSpinner, withSpinner, renderStatus, renderRequirementStatus, renderCountdown, renderElapsed } from './marshal-progress.ts';
|
|
11
|
+
export type { ProgressBarOptions, StepIndicatorOptions } from '../../../marshal/schemas/components.ts';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/marshal/components/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACN,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,WAAW,EACX,SAAS,EACT,aAAa,EACb,aAAa,EACb,UAAU,EACV,YAAY,EACZ,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACX,oBAAoB,EACpB,4BAA4B,EAC5B,kBAAkB,IAAI,kBAAkB,EACxC,MAAM,wCAAwC,CAAC;AAGhD,OAAO,EACN,SAAS,EACT,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,SAAS,EACT,mBAAmB,EACnB,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAG5G,OAAO,EACN,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,WAAW,EACX,YAAY,EACZ,uBAAuB,EACvB,eAAe,EACf,aAAa,EACb,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Marshal CLI Components
|
|
3
|
+
*
|
|
4
|
+
* Terminal output components for Marshal CLI interactions.
|
|
5
|
+
*/
|
|
6
|
+
// Prompts
|
|
7
|
+
export { showMarshalIntro, showMarshalOutro, handleCancel, checkCancel, promptMarshalQuestion, promptMarshalSetup, showNote, showInfo, showSuccess, showWarning, showError, createSpinner, promptConfirm, promptText, promptSelect } from "./marshal-prompt.js";
|
|
8
|
+
// Widgets
|
|
9
|
+
export { renderBox, renderTable, renderKeyValue, renderProviderList, renderSettingsPanel, renderProjectCard, renderChecklist, renderTip, renderMarshalConfig } from "./marshal-widgets.js";
|
|
10
|
+
// Progress
|
|
11
|
+
export { renderProgressBar, renderLabeledProgress, renderStepIndicator, renderOnboardingProgress, renderCompactProgress, createMarshalSpinner, withSpinner, renderStatus, renderRequirementStatus, renderCountdown, renderElapsed } from "./marshal-progress.js";
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/marshal/components/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,UAAU;AACV,OAAO,EACN,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,WAAW,EACX,SAAS,EACT,aAAa,EACb,aAAa,EACb,UAAU,EACV,YAAY,EACZ,MAAM,qBAAqB,CAAC;AAQ7B,UAAU;AACV,OAAO,EACN,SAAS,EACT,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,SAAS,EACT,mBAAmB,EACnB,MAAM,sBAAsB,CAAC;AAI9B,WAAW;AACX,OAAO,EACN,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,WAAW,EACX,YAAY,EACZ,uBAAuB,EACvB,eAAe,EACf,aAAa,EACb,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Marshal CLI Progress Components
|
|
3
|
+
*
|
|
4
|
+
* Progress bars, spinners, and status indicators for Marshal CLI.
|
|
5
|
+
*/
|
|
6
|
+
import type { ProgressSummary } from '../../../marshal/schemas/progress.ts';
|
|
7
|
+
import type { ProgressBarOptions, StepIndicatorOptions } from '../../../marshal/schemas/components.ts';
|
|
8
|
+
/**
|
|
9
|
+
* Render a progress bar
|
|
10
|
+
*/
|
|
11
|
+
export declare function renderProgressBar(progress: number, options?: ProgressBarOptions): string;
|
|
12
|
+
/**
|
|
13
|
+
* Render a progress bar with label
|
|
14
|
+
*/
|
|
15
|
+
export declare function renderLabeledProgress(label: string, progress: number, options?: ProgressBarOptions): string;
|
|
16
|
+
/**
|
|
17
|
+
* Render a step indicator
|
|
18
|
+
*/
|
|
19
|
+
export declare function renderStepIndicator(options: StepIndicatorOptions): string;
|
|
20
|
+
/**
|
|
21
|
+
* Render onboarding progress summary
|
|
22
|
+
*/
|
|
23
|
+
export declare function renderOnboardingProgress(summary: ProgressSummary): string;
|
|
24
|
+
/**
|
|
25
|
+
* Render a compact progress indicator for status bar
|
|
26
|
+
*/
|
|
27
|
+
export declare function renderCompactProgress(summary: ProgressSummary): string;
|
|
28
|
+
/**
|
|
29
|
+
* Create and start a spinner
|
|
30
|
+
*/
|
|
31
|
+
export declare function createMarshalSpinner(): import("@clack/prompts").SpinnerResult;
|
|
32
|
+
/**
|
|
33
|
+
* Show a loading message with spinner
|
|
34
|
+
*/
|
|
35
|
+
export declare function withSpinner<T>(message: string, fn: () => Promise<T>): Promise<T>;
|
|
36
|
+
/**
|
|
37
|
+
* Render a status badge
|
|
38
|
+
*/
|
|
39
|
+
export declare function renderStatus(status: 'success' | 'warning' | 'error' | 'info' | 'pending'): string;
|
|
40
|
+
/**
|
|
41
|
+
* Render a requirement status
|
|
42
|
+
*/
|
|
43
|
+
export declare function renderRequirementStatus(status: 'not_started' | 'in_progress' | 'completed' | 'skipped'): string;
|
|
44
|
+
/**
|
|
45
|
+
* Render a countdown or timer
|
|
46
|
+
*/
|
|
47
|
+
export declare function renderCountdown(seconds: number): string;
|
|
48
|
+
/**
|
|
49
|
+
* Render elapsed time
|
|
50
|
+
*/
|
|
51
|
+
export declare function renderElapsed(startTime: Date): string;
|
|
52
|
+
//# sourceMappingURL=marshal-progress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marshal-progress.d.ts","sourceRoot":"","sources":["../../../../src/cli/marshal/components/marshal-progress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAIvG;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,MAAM,CAuB5F;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACpC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,kBAAuB,GAC9B,MAAM,CAGR;AAID;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM,CAmCzE;AAID;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAmCzE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAatE;AAID;;GAEG;AACH,wBAAgB,oBAAoB,2CAEnC;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAYtF;AAID;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAUjG;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACtC,MAAM,EAAE,aAAa,GAAG,aAAa,GAAG,WAAW,GAAG,SAAS,GAC7D,MAAM,CAUR;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQvD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,IAAI,GAAG,MAAM,CAGrD"}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Marshal CLI Progress Components
|
|
3
|
+
*
|
|
4
|
+
* Progress bars, spinners, and status indicators for Marshal CLI.
|
|
5
|
+
*/
|
|
6
|
+
import chalk from 'chalk';
|
|
7
|
+
import { spinner } from '@clack/prompts';
|
|
8
|
+
// Progress Bar
|
|
9
|
+
/**
|
|
10
|
+
* Render a progress bar
|
|
11
|
+
*/
|
|
12
|
+
export function renderProgressBar(progress, options = {}) {
|
|
13
|
+
const { width = 20, showPercentage = true, fillChar = '\u2588', emptyChar = '\u2591', fillColor = 'green', emptyColor = 'gray' } = options;
|
|
14
|
+
const percentage = Math.min(100, Math.max(0, progress));
|
|
15
|
+
const filled = Math.round((percentage / 100) * width);
|
|
16
|
+
const empty = width - filled;
|
|
17
|
+
const filledBar = chalk[fillColor](fillChar.repeat(filled));
|
|
18
|
+
const emptyBar = chalk[emptyColor](emptyChar.repeat(empty));
|
|
19
|
+
let suffix = '';
|
|
20
|
+
if (showPercentage) {
|
|
21
|
+
suffix = ` ${percentage}%`;
|
|
22
|
+
}
|
|
23
|
+
return `[${filledBar}${emptyBar}]${suffix}`;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Render a progress bar with label
|
|
27
|
+
*/
|
|
28
|
+
export function renderLabeledProgress(label, progress, options = {}) {
|
|
29
|
+
const bar = renderProgressBar(progress, options);
|
|
30
|
+
return `${chalk.gray(label.padEnd(20))} ${bar}`;
|
|
31
|
+
}
|
|
32
|
+
// Step Indicator
|
|
33
|
+
/**
|
|
34
|
+
* Render a step indicator
|
|
35
|
+
*/
|
|
36
|
+
export function renderStepIndicator(options) {
|
|
37
|
+
const { current, total, labels = [], showNumbers = true } = options;
|
|
38
|
+
const lines = [];
|
|
39
|
+
for (let i = 1; i <= total; i++) {
|
|
40
|
+
const isComplete = i < current;
|
|
41
|
+
const isCurrent = i === current;
|
|
42
|
+
const label = labels[i - 1] ?? `Step ${i}`;
|
|
43
|
+
let icon;
|
|
44
|
+
let text;
|
|
45
|
+
if (isComplete) {
|
|
46
|
+
icon = chalk.green('\u2713');
|
|
47
|
+
text = chalk.dim(label);
|
|
48
|
+
}
|
|
49
|
+
else if (isCurrent) {
|
|
50
|
+
icon = chalk.blue('\u25cf');
|
|
51
|
+
text = chalk.bold(label);
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
icon = chalk.dim('\u25cb');
|
|
55
|
+
text = chalk.dim(label);
|
|
56
|
+
}
|
|
57
|
+
const number = showNumbers ? chalk.dim(`${i}.`) : '';
|
|
58
|
+
lines.push(` ${icon} ${number} ${text}`);
|
|
59
|
+
// Add connector line between steps
|
|
60
|
+
if (i < total) {
|
|
61
|
+
const connector = isComplete ? chalk.green('\u2502') : chalk.dim('\u2502');
|
|
62
|
+
lines.push(` ${connector}`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return lines.join('\n');
|
|
66
|
+
}
|
|
67
|
+
// Onboarding Progress
|
|
68
|
+
/**
|
|
69
|
+
* Render onboarding progress summary
|
|
70
|
+
*/
|
|
71
|
+
export function renderOnboardingProgress(summary) {
|
|
72
|
+
const lines = [chalk.bold('Onboarding Progress'), ''];
|
|
73
|
+
// Main progress bar
|
|
74
|
+
lines.push(renderProgressBar(summary.completionPercentage, { width: 30 }));
|
|
75
|
+
lines.push('');
|
|
76
|
+
// Stats
|
|
77
|
+
const stats = [
|
|
78
|
+
{ label: 'Completed', value: summary.completedCount, color: 'green' },
|
|
79
|
+
{ label: 'In Progress', value: summary.inProgressCount, color: 'yellow' },
|
|
80
|
+
{ label: 'Skipped', value: summary.skippedCount, color: 'gray' },
|
|
81
|
+
{ label: 'Not Started', value: summary.notStartedCount, color: 'dim' }
|
|
82
|
+
];
|
|
83
|
+
for (const stat of stats) {
|
|
84
|
+
if (stat.value > 0) {
|
|
85
|
+
const value = stat.color === 'dim'
|
|
86
|
+
? chalk.dim(String(stat.value))
|
|
87
|
+
: chalk[stat.color](String(stat.value));
|
|
88
|
+
lines.push(` ${chalk.gray(stat.label.padEnd(15))} ${value}`);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
lines.push('');
|
|
92
|
+
lines.push(chalk.dim(`Total: ${summary.totalRequirements} requirements`));
|
|
93
|
+
// Next step
|
|
94
|
+
if (summary.nextRequirement) {
|
|
95
|
+
lines.push('');
|
|
96
|
+
lines.push(chalk.blue(`Next: ${summary.nextRequirement}`));
|
|
97
|
+
}
|
|
98
|
+
return lines.join('\n');
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Render a compact progress indicator for status bar
|
|
102
|
+
*/
|
|
103
|
+
export function renderCompactProgress(summary) {
|
|
104
|
+
const { completedCount, totalRequirements, completionPercentage } = summary;
|
|
105
|
+
if (completionPercentage === 100) {
|
|
106
|
+
return chalk.green('\u2713 Setup complete');
|
|
107
|
+
}
|
|
108
|
+
const bar = renderProgressBar(completionPercentage, {
|
|
109
|
+
width: 10,
|
|
110
|
+
showPercentage: false
|
|
111
|
+
});
|
|
112
|
+
return `${bar} ${completedCount}/${totalRequirements}`;
|
|
113
|
+
}
|
|
114
|
+
// Spinner Utilities
|
|
115
|
+
/**
|
|
116
|
+
* Create and start a spinner
|
|
117
|
+
*/
|
|
118
|
+
export function createMarshalSpinner() {
|
|
119
|
+
return spinner();
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Show a loading message with spinner
|
|
123
|
+
*/
|
|
124
|
+
export async function withSpinner(message, fn) {
|
|
125
|
+
const s = spinner();
|
|
126
|
+
s.start(message);
|
|
127
|
+
try {
|
|
128
|
+
const result = await fn();
|
|
129
|
+
s.stop(chalk.green('\u2713 Done'));
|
|
130
|
+
return result;
|
|
131
|
+
}
|
|
132
|
+
catch (error) {
|
|
133
|
+
s.stop(chalk.red('\u2717 Failed'));
|
|
134
|
+
throw error;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
// Status Indicators
|
|
138
|
+
/**
|
|
139
|
+
* Render a status badge
|
|
140
|
+
*/
|
|
141
|
+
export function renderStatus(status) {
|
|
142
|
+
const badges = {
|
|
143
|
+
success: chalk.green('\u2713'),
|
|
144
|
+
warning: chalk.yellow('\u26a0'),
|
|
145
|
+
error: chalk.red('\u2717'),
|
|
146
|
+
info: chalk.blue('ℹ'),
|
|
147
|
+
pending: chalk.gray('\u25cb')
|
|
148
|
+
};
|
|
149
|
+
return badges[status];
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Render a requirement status
|
|
153
|
+
*/
|
|
154
|
+
export function renderRequirementStatus(status) {
|
|
155
|
+
const statusMap = {
|
|
156
|
+
not_started: { icon: '\u25cb', color: chalk.dim, label: 'Not Started' },
|
|
157
|
+
in_progress: { icon: '\u25cf', color: chalk.yellow, label: 'In Progress' },
|
|
158
|
+
completed: { icon: '\u2713', color: chalk.green, label: 'Completed' },
|
|
159
|
+
skipped: { icon: '\u2212', color: chalk.gray, label: 'Skipped' }
|
|
160
|
+
};
|
|
161
|
+
const { icon, color, label } = statusMap[status];
|
|
162
|
+
return color(`${icon} ${label}`);
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Render a countdown or timer
|
|
166
|
+
*/
|
|
167
|
+
export function renderCountdown(seconds) {
|
|
168
|
+
const mins = Math.floor(seconds / 60);
|
|
169
|
+
const secs = seconds % 60;
|
|
170
|
+
if (mins > 0) {
|
|
171
|
+
return chalk.cyan(`${mins}m ${secs}s`);
|
|
172
|
+
}
|
|
173
|
+
return chalk.cyan(`${secs}s`);
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Render elapsed time
|
|
177
|
+
*/
|
|
178
|
+
export function renderElapsed(startTime) {
|
|
179
|
+
const elapsed = Math.floor((Date.now() - startTime.getTime()) / 1000);
|
|
180
|
+
return renderCountdown(elapsed);
|
|
181
|
+
}
|
|
182
|
+
//# sourceMappingURL=marshal-progress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marshal-progress.js","sourceRoot":"","sources":["../../../../src/cli/marshal/components/marshal-progress.ts"],"names":[],"mappings":"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"}
|