beth-copilot 1.0.18 → 2.0.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/CHANGELOG.md +79 -28
- package/README.md +127 -298
- package/assets/beth-questioning.png +0 -0
- package/assets/yellowstone-beth.png +0 -0
- package/bin/cli.js +124 -715
- package/dist/__tests__/inject-skills.test.d.ts +9 -0
- package/dist/__tests__/inject-skills.test.d.ts.map +1 -0
- package/dist/__tests__/inject-skills.test.js +143 -0
- package/dist/__tests__/inject-skills.test.js.map +1 -0
- package/dist/__tests__/skills/disambiguation.test.d.ts +10 -0
- package/dist/__tests__/skills/disambiguation.test.d.ts.map +1 -0
- package/dist/__tests__/skills/disambiguation.test.js +192 -0
- package/dist/__tests__/skills/disambiguation.test.js.map +1 -0
- package/dist/__tests__/skills/hook-injection.test.d.ts +11 -0
- package/dist/__tests__/skills/hook-injection.test.d.ts.map +1 -0
- package/dist/__tests__/skills/hook-injection.test.js +173 -0
- package/dist/__tests__/skills/hook-injection.test.js.map +1 -0
- package/dist/__tests__/skills/mapping-completeness.test.d.ts +17 -0
- package/dist/__tests__/skills/mapping-completeness.test.d.ts.map +1 -0
- package/dist/__tests__/skills/mapping-completeness.test.js +281 -0
- package/dist/__tests__/skills/mapping-completeness.test.js.map +1 -0
- package/dist/__tests__/skills/pipeline-integration.test.d.ts +18 -0
- package/dist/__tests__/skills/pipeline-integration.test.d.ts.map +1 -0
- package/dist/__tests__/skills/pipeline-integration.test.js +234 -0
- package/dist/__tests__/skills/pipeline-integration.test.js.map +1 -0
- package/dist/__tests__/skills/skill-routing.test.d.ts +15 -0
- package/dist/__tests__/skills/skill-routing.test.d.ts.map +1 -0
- package/dist/__tests__/skills/skill-routing.test.js +723 -0
- package/dist/__tests__/skills/skill-routing.test.js.map +1 -0
- package/dist/__tests__/skills/trigger-coverage.test.d.ts +24 -0
- package/dist/__tests__/skills/trigger-coverage.test.d.ts.map +1 -0
- package/dist/__tests__/skills/trigger-coverage.test.js +746 -0
- package/dist/__tests__/skills/trigger-coverage.test.js.map +1 -0
- package/dist/__tests__/smoke.test.d.ts +8 -0
- package/dist/__tests__/smoke.test.d.ts.map +1 -0
- package/dist/__tests__/smoke.test.js +62 -0
- package/dist/__tests__/smoke.test.js.map +1 -0
- package/dist/__tests__/verify-skills.test.d.ts +9 -0
- package/dist/__tests__/verify-skills.test.d.ts.map +1 -0
- package/dist/__tests__/verify-skills.test.js +78 -0
- package/dist/__tests__/verify-skills.test.js.map +1 -0
- package/dist/cli/commands/beads.e2e.test.d.ts +15 -0
- package/dist/cli/commands/beads.e2e.test.d.ts.map +1 -0
- package/dist/cli/commands/beads.e2e.test.js +585 -0
- package/dist/cli/commands/beads.e2e.test.js.map +1 -0
- package/dist/cli/commands/cli-edge-cases.e2e.test.d.ts +32 -0
- package/dist/cli/commands/cli-edge-cases.e2e.test.d.ts.map +1 -0
- package/dist/cli/commands/cli-edge-cases.e2e.test.js +162 -0
- package/dist/cli/commands/cli-edge-cases.e2e.test.js.map +1 -0
- package/dist/cli/commands/close.d.ts +54 -0
- package/dist/cli/commands/close.d.ts.map +1 -0
- package/dist/cli/commands/close.e2e.test.d.ts +11 -0
- package/dist/cli/commands/close.e2e.test.d.ts.map +1 -0
- package/dist/cli/commands/close.e2e.test.js +71 -0
- package/dist/cli/commands/close.e2e.test.js.map +1 -0
- package/dist/cli/commands/close.js +95 -0
- package/dist/cli/commands/close.js.map +1 -0
- package/dist/cli/commands/close.test.d.ts +13 -0
- package/dist/cli/commands/close.test.d.ts.map +1 -0
- package/dist/cli/commands/close.test.js +254 -0
- package/dist/cli/commands/close.test.js.map +1 -0
- package/dist/cli/commands/doctor.d.ts +7 -1
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.e2e.test.js +3 -59
- package/dist/cli/commands/doctor.e2e.test.js.map +1 -1
- package/dist/cli/commands/doctor.js +38 -18
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/doctor.test.js +32 -25
- package/dist/cli/commands/doctor.test.js.map +1 -1
- package/dist/cli/commands/framework-isolation.test.d.ts +30 -0
- package/dist/cli/commands/framework-isolation.test.d.ts.map +1 -0
- package/dist/cli/commands/framework-isolation.test.js +118 -0
- package/dist/cli/commands/framework-isolation.test.js.map +1 -0
- package/dist/cli/commands/help.e2e.test.js +5 -9
- package/dist/cli/commands/help.e2e.test.js.map +1 -1
- package/dist/cli/commands/init-logic.e2e.test.d.ts +37 -0
- package/dist/cli/commands/init-logic.e2e.test.d.ts.map +1 -0
- package/dist/cli/commands/init-logic.e2e.test.js +315 -0
- package/dist/cli/commands/init-logic.e2e.test.js.map +1 -0
- package/dist/cli/commands/init.test.js +4 -21
- package/dist/cli/commands/init.test.js.map +1 -1
- package/dist/cli/commands/land.d.ts +130 -0
- package/dist/cli/commands/land.d.ts.map +1 -0
- package/dist/cli/commands/land.js +592 -0
- package/dist/cli/commands/land.js.map +1 -0
- package/dist/cli/commands/land.test.d.ts +19 -0
- package/dist/cli/commands/land.test.d.ts.map +1 -0
- package/dist/cli/commands/land.test.js +567 -0
- package/dist/cli/commands/land.test.js.map +1 -0
- package/dist/cli/commands/mcp.e2e.test.js +24 -31
- package/dist/cli/commands/mcp.e2e.test.js.map +1 -1
- package/dist/cli/commands/pipeline.e2e.test.js +28 -31
- package/dist/cli/commands/pipeline.e2e.test.js.map +1 -1
- package/dist/cli/commands/pre-push-guard.d.ts +74 -0
- package/dist/cli/commands/pre-push-guard.d.ts.map +1 -0
- package/dist/cli/commands/pre-push-guard.e2e.test.d.ts +24 -0
- package/dist/cli/commands/pre-push-guard.e2e.test.d.ts.map +1 -0
- package/dist/cli/commands/pre-push-guard.e2e.test.js +171 -0
- package/dist/cli/commands/pre-push-guard.e2e.test.js.map +1 -0
- package/dist/cli/commands/pre-push-guard.js +212 -0
- package/dist/cli/commands/pre-push-guard.js.map +1 -0
- package/dist/cli/commands/pre-push-guard.test.d.ts +14 -0
- package/dist/cli/commands/pre-push-guard.test.d.ts.map +1 -0
- package/dist/cli/commands/pre-push-guard.test.js +314 -0
- package/dist/cli/commands/pre-push-guard.test.js.map +1 -0
- package/dist/cli/commands/quickstart-expanded.e2e.test.d.ts +23 -0
- package/dist/cli/commands/quickstart-expanded.e2e.test.d.ts.map +1 -0
- package/dist/cli/commands/quickstart-expanded.e2e.test.js +152 -0
- package/dist/cli/commands/quickstart-expanded.e2e.test.js.map +1 -0
- package/dist/cli/commands/quickstart.d.ts +0 -1
- package/dist/cli/commands/quickstart.d.ts.map +1 -1
- package/dist/cli/commands/quickstart.js +9 -83
- package/dist/cli/commands/quickstart.js.map +1 -1
- package/dist/cli/commands/quickstart.test.js +8 -129
- package/dist/cli/commands/quickstart.test.js.map +1 -1
- package/dist/cli/commands/update.d.ts +35 -0
- package/dist/cli/commands/update.d.ts.map +1 -0
- package/dist/cli/commands/update.e2e.test.d.ts +24 -0
- package/dist/cli/commands/update.e2e.test.d.ts.map +1 -0
- package/dist/cli/commands/update.e2e.test.js +240 -0
- package/dist/cli/commands/update.e2e.test.js.map +1 -0
- package/dist/cli/commands/update.js +255 -0
- package/dist/cli/commands/update.js.map +1 -0
- package/dist/core/agents/frontmatter.test.js +1 -1
- package/dist/core/agents/frontmatter.test.js.map +1 -1
- package/dist/core/agents/handoffs.test.js +1 -1
- package/dist/core/agents/handoffs.test.js.map +1 -1
- package/dist/core/agents/loader.d.ts +4 -2
- package/dist/core/agents/loader.d.ts.map +1 -1
- package/dist/core/agents/loader.js +5 -3
- package/dist/core/agents/loader.js.map +1 -1
- package/dist/core/agents/loader.test.js +42 -4
- package/dist/core/agents/loader.test.js.map +1 -1
- package/dist/core/agents/suite.test.js +12 -9
- package/dist/core/agents/suite.test.js.map +1 -1
- package/dist/core/agents/tools.test.js +15 -9
- package/dist/core/agents/tools.test.js.map +1 -1
- package/dist/core/agents/types.test.js +1 -1
- package/dist/core/agents/types.test.js.map +1 -1
- package/dist/core/skills/loader.test.js +1 -1
- package/dist/core/skills/loader.test.js.map +1 -1
- package/dist/index.d.ts +3 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -12
- package/dist/index.js.map +1 -1
- package/dist/lib/pathValidation.d.ts +0 -5
- package/dist/lib/pathValidation.d.ts.map +1 -1
- package/dist/lib/pathValidation.js +0 -11
- package/dist/lib/pathValidation.js.map +1 -1
- package/dist/lib/pathValidation.test.js +2 -14
- package/dist/lib/pathValidation.test.js.map +1 -1
- package/package.json +13 -10
- package/sbom.json +1927 -847
- package/templates/.github/agents/beth.agent.md +331 -105
- package/templates/.github/agents/developer.agent.md +73 -102
- package/templates/.github/agents/product-manager.agent.md +24 -68
- package/templates/.github/agents/researcher.agent.md +21 -69
- package/templates/.github/agents/security-reviewer.agent.md +39 -82
- package/templates/.github/agents/tester.agent.md +44 -65
- package/templates/.github/agents/ux-designer.agent.md +25 -76
- package/templates/.github/copilot-instructions.md +246 -225
- package/templates/.github/copilot-mcp-config.json +12 -0
- package/templates/.github/dependabot.yml +68 -0
- package/templates/.github/hooks/scripts/inject-skills.mjs +139 -0
- package/templates/.github/hooks/scripts/verify-skills.mjs +47 -0
- package/templates/.github/hooks/skill-enforcement.json +18 -0
- package/templates/.github/pull_request_template.md +48 -0
- package/templates/.github/skills/framer-components/SKILL.md +0 -0
- package/templates/.github/skills/prd/SKILL.md +0 -0
- package/templates/.github/skills/security-analysis/SKILL.md +798 -798
- package/templates/.github/skills/shadcn-ui/SKILL.md +561 -561
- package/templates/.github/skills/vercel-react-best-practices/AGENTS.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/SKILL.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/advanced-use-latest.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/async-api-routes.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/async-defer-await.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/async-dependencies.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/async-parallel.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/bundle-conditional.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/bundle-preload.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/client-event-listeners.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/client-swr-dedup.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/js-cache-function-results.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/js-cache-property-access.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/js-cache-storage.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/js-combine-iterations.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/js-early-exit.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/js-index-maps.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/js-length-check-first.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/js-min-max-loop.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rendering-activity.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rerender-dependencies.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rerender-derived-state.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rerender-memo.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/rerender-transitions.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/server-auth-actions.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/server-cache-lru.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/server-cache-react.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/server-dedup-props.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +0 -0
- package/templates/.github/skills/vercel-react-best-practices/rules/server-serialization.md +0 -0
- package/templates/.github/skills/web-design-guidelines/SKILL.md +0 -0
- package/templates/.vscode/settings.json +16 -16
- package/templates/AGENTS.md +103 -54
- package/templates/Backlog.md +80 -80
- package/templates/mcp.json.example +0 -3
- package/assets/beth-portrait-small.txt +0 -13
- package/assets/beth-portrait.txt +0 -60
- package/bin/beth-animation.sh +0 -155
- package/bin/lib/animation.js +0 -189
- package/bin/lib/pathValidation.js +0 -233
- package/bin/lib/pathValidation.test.js +0 -280
- package/dist/cli/commands/client-config.d.ts +0 -31
- package/dist/cli/commands/client-config.d.ts.map +0 -1
- package/dist/cli/commands/client-config.e2e.test.d.ts +0 -15
- package/dist/cli/commands/client-config.e2e.test.d.ts.map +0 -1
- package/dist/cli/commands/client-config.e2e.test.js +0 -556
- package/dist/cli/commands/client-config.e2e.test.js.map +0 -1
- package/dist/cli/commands/client-config.js +0 -73
- package/dist/cli/commands/client-config.js.map +0 -1
- package/dist/cli/commands/client-config.test.d.ts +0 -6
- package/dist/cli/commands/client-config.test.d.ts.map +0 -1
- package/dist/cli/commands/client-config.test.js +0 -133
- package/dist/cli/commands/client-config.test.js.map +0 -1
- package/dist/cli/commands/init-quickstart.e2e.test.d.ts +0 -11
- package/dist/cli/commands/init-quickstart.e2e.test.d.ts.map +0 -1
- package/dist/cli/commands/init-quickstart.e2e.test.js +0 -221
- package/dist/cli/commands/init-quickstart.e2e.test.js.map +0 -1
- package/dist/core/context.d.ts +0 -171
- package/dist/core/context.d.ts.map +0 -1
- package/dist/core/context.js +0 -353
- package/dist/core/context.js.map +0 -1
- package/dist/core/context.test.d.ts +0 -8
- package/dist/core/context.test.d.ts.map +0 -1
- package/dist/core/context.test.js +0 -253
- package/dist/core/context.test.js.map +0 -1
- package/dist/core/handoffs.d.ts +0 -151
- package/dist/core/handoffs.d.ts.map +0 -1
- package/dist/core/handoffs.js +0 -220
- package/dist/core/handoffs.js.map +0 -1
- package/dist/core/handoffs.test.d.ts +0 -8
- package/dist/core/handoffs.test.d.ts.map +0 -1
- package/dist/core/handoffs.test.js +0 -231
- package/dist/core/handoffs.test.js.map +0 -1
- package/dist/core/orchestrator.d.ts +0 -246
- package/dist/core/orchestrator.d.ts.map +0 -1
- package/dist/core/orchestrator.js +0 -514
- package/dist/core/orchestrator.js.map +0 -1
- package/dist/core/orchestrator.test.d.ts +0 -8
- package/dist/core/orchestrator.test.d.ts.map +0 -1
- package/dist/core/orchestrator.test.js +0 -517
- package/dist/core/orchestrator.test.js.map +0 -1
- package/dist/core/router.d.ts +0 -102
- package/dist/core/router.d.ts.map +0 -1
- package/dist/core/router.js +0 -178
- package/dist/core/router.js.map +0 -1
- package/dist/core/router.test.d.ts +0 -8
- package/dist/core/router.test.d.ts.map +0 -1
- package/dist/core/router.test.js +0 -215
- package/dist/core/router.test.js.map +0 -1
- package/dist/init.test.js +0 -288
- package/dist/providers/azure.d.ts +0 -147
- package/dist/providers/azure.d.ts.map +0 -1
- package/dist/providers/azure.js +0 -491
- package/dist/providers/azure.js.map +0 -1
- package/dist/providers/azure.test.d.ts +0 -11
- package/dist/providers/azure.test.d.ts.map +0 -1
- package/dist/providers/azure.test.js +0 -330
- package/dist/providers/azure.test.js.map +0 -1
- package/dist/providers/config.d.ts +0 -87
- package/dist/providers/config.d.ts.map +0 -1
- package/dist/providers/config.js +0 -193
- package/dist/providers/config.js.map +0 -1
- package/dist/providers/config.test.d.ts +0 -7
- package/dist/providers/config.test.d.ts.map +0 -1
- package/dist/providers/config.test.js +0 -370
- package/dist/providers/config.test.js.map +0 -1
- package/dist/providers/index.d.ts +0 -18
- package/dist/providers/index.d.ts.map +0 -1
- package/dist/providers/index.js +0 -14
- package/dist/providers/index.js.map +0 -1
- package/dist/providers/interface.d.ts +0 -191
- package/dist/providers/interface.d.ts.map +0 -1
- package/dist/providers/interface.js +0 -94
- package/dist/providers/interface.js.map +0 -1
- package/dist/providers/retry.d.ts +0 -128
- package/dist/providers/retry.d.ts.map +0 -1
- package/dist/providers/retry.js +0 -205
- package/dist/providers/retry.js.map +0 -1
- package/dist/providers/retry.test.d.ts +0 -7
- package/dist/providers/retry.test.d.ts.map +0 -1
- package/dist/providers/retry.test.js +0 -439
- package/dist/providers/retry.test.js.map +0 -1
- package/dist/providers/streaming.d.ts +0 -157
- package/dist/providers/streaming.d.ts.map +0 -1
- package/dist/providers/streaming.js +0 -233
- package/dist/providers/streaming.js.map +0 -1
- package/dist/providers/streaming.test.d.ts +0 -7
- package/dist/providers/streaming.test.d.ts.map +0 -1
- package/dist/providers/streaming.test.js +0 -372
- package/dist/providers/streaming.test.js.map +0 -1
- package/dist/providers/types.d.ts +0 -209
- package/dist/providers/types.d.ts.map +0 -1
- package/dist/providers/types.js +0 -53
- package/dist/providers/types.js.map +0 -1
- package/dist/providers/types.test.d.ts +0 -7
- package/dist/providers/types.test.d.ts.map +0 -1
- package/dist/providers/types.test.js +0 -141
- package/dist/providers/types.test.js.map +0 -1
- package/dist/tools/cli/beads.d.ts +0 -27
- package/dist/tools/cli/beads.d.ts.map +0 -1
- package/dist/tools/cli/beads.js +0 -172
- package/dist/tools/cli/beads.js.map +0 -1
- package/dist/tools/cli/beads.test.d.ts +0 -8
- package/dist/tools/cli/beads.test.d.ts.map +0 -1
- package/dist/tools/cli/beads.test.js +0 -264
- package/dist/tools/cli/beads.test.js.map +0 -1
- package/dist/tools/cli/editFile.d.ts +0 -17
- package/dist/tools/cli/editFile.d.ts.map +0 -1
- package/dist/tools/cli/editFile.js +0 -125
- package/dist/tools/cli/editFile.js.map +0 -1
- package/dist/tools/cli/editFile.test.d.ts +0 -8
- package/dist/tools/cli/editFile.test.d.ts.map +0 -1
- package/dist/tools/cli/editFile.test.js +0 -177
- package/dist/tools/cli/editFile.test.js.map +0 -1
- package/dist/tools/cli/readFile.d.ts +0 -25
- package/dist/tools/cli/readFile.d.ts.map +0 -1
- package/dist/tools/cli/readFile.js +0 -118
- package/dist/tools/cli/readFile.js.map +0 -1
- package/dist/tools/cli/readFile.test.d.ts +0 -8
- package/dist/tools/cli/readFile.test.d.ts.map +0 -1
- package/dist/tools/cli/readFile.test.js +0 -194
- package/dist/tools/cli/readFile.test.js.map +0 -1
- package/dist/tools/cli/search.d.ts +0 -16
- package/dist/tools/cli/search.d.ts.map +0 -1
- package/dist/tools/cli/search.js +0 -261
- package/dist/tools/cli/search.js.map +0 -1
- package/dist/tools/cli/search.test.d.ts +0 -8
- package/dist/tools/cli/search.test.d.ts.map +0 -1
- package/dist/tools/cli/search.test.js +0 -172
- package/dist/tools/cli/search.test.js.map +0 -1
- package/dist/tools/cli/subagent.d.ts +0 -43
- package/dist/tools/cli/subagent.d.ts.map +0 -1
- package/dist/tools/cli/subagent.js +0 -99
- package/dist/tools/cli/subagent.js.map +0 -1
- package/dist/tools/cli/subagent.test.d.ts +0 -8
- package/dist/tools/cli/subagent.test.d.ts.map +0 -1
- package/dist/tools/cli/subagent.test.js +0 -190
- package/dist/tools/cli/subagent.test.js.map +0 -1
- package/dist/tools/cli/terminal.d.ts +0 -19
- package/dist/tools/cli/terminal.d.ts.map +0 -1
- package/dist/tools/cli/terminal.js +0 -164
- package/dist/tools/cli/terminal.js.map +0 -1
- package/dist/tools/cli/terminal.test.d.ts +0 -8
- package/dist/tools/cli/terminal.test.d.ts.map +0 -1
- package/dist/tools/cli/terminal.test.js +0 -161
- package/dist/tools/cli/terminal.test.js.map +0 -1
- package/dist/tools/index.d.ts +0 -25
- package/dist/tools/index.d.ts.map +0 -1
- package/dist/tools/index.js +0 -41
- package/dist/tools/index.js.map +0 -1
- package/dist/tools/interface.d.ts +0 -64
- package/dist/tools/interface.d.ts.map +0 -1
- package/dist/tools/interface.js +0 -37
- package/dist/tools/interface.js.map +0 -1
- package/dist/tools/interface.test.d.ts +0 -7
- package/dist/tools/interface.test.d.ts.map +0 -1
- package/dist/tools/interface.test.js +0 -179
- package/dist/tools/interface.test.js.map +0 -1
- package/dist/tools/mcp/bridge.d.ts +0 -48
- package/dist/tools/mcp/bridge.d.ts.map +0 -1
- package/dist/tools/mcp/bridge.js +0 -128
- package/dist/tools/mcp/bridge.js.map +0 -1
- package/dist/tools/mcp/bridge.test.d.ts +0 -8
- package/dist/tools/mcp/bridge.test.d.ts.map +0 -1
- package/dist/tools/mcp/bridge.test.js +0 -300
- package/dist/tools/mcp/bridge.test.js.map +0 -1
- package/dist/tools/mcp/client.d.ts +0 -135
- package/dist/tools/mcp/client.d.ts.map +0 -1
- package/dist/tools/mcp/client.js +0 -263
- package/dist/tools/mcp/client.js.map +0 -1
- package/dist/tools/mcp/client.test.d.ts +0 -8
- package/dist/tools/mcp/client.test.d.ts.map +0 -1
- package/dist/tools/mcp/client.test.js +0 -390
- package/dist/tools/mcp/client.test.js.map +0 -1
- package/dist/tools/registry.d.ts +0 -82
- package/dist/tools/registry.d.ts.map +0 -1
- package/dist/tools/registry.js +0 -99
- package/dist/tools/registry.js.map +0 -1
- package/dist/tools/registry.test.d.ts +0 -7
- package/dist/tools/registry.test.d.ts.map +0 -1
- package/dist/tools/registry.test.js +0 -199
- package/dist/tools/registry.test.js.map +0 -1
- package/dist/tools/suite.test.d.ts +0 -11
- package/dist/tools/suite.test.d.ts.map +0 -1
- package/dist/tools/suite.test.js +0 -119
- package/dist/tools/suite.test.js.map +0 -1
- package/dist/tools/types.d.ts +0 -75
- package/dist/tools/types.d.ts.map +0 -1
- package/dist/tools/types.js +0 -30
- package/dist/tools/types.js.map +0 -1
- package/dist/tools/types.test.d.ts +0 -7
- package/dist/tools/types.test.d.ts.map +0 -1
- package/dist/tools/types.test.js +0 -178
- package/dist/tools/types.test.js.map +0 -1
- package/templates/.vscode/mcp.json +0 -20
- package/templates/CLAUDE.md +0 -129
|
@@ -4,13 +4,10 @@
|
|
|
4
4
|
* Streamlined setup for Beth:
|
|
5
5
|
* - Checks if Beth is already initialized
|
|
6
6
|
* - Runs doctor to validate setup
|
|
7
|
-
* - Initializes beads if needed
|
|
8
7
|
* - Prints "what's next" guidance
|
|
9
8
|
*/
|
|
10
|
-
import { execSync, spawnSync } from 'child_process';
|
|
11
9
|
import { existsSync } from 'fs';
|
|
12
10
|
import { join } from 'path';
|
|
13
|
-
import { detectClientConfig } from './client-config.js';
|
|
14
11
|
import { doctor } from './doctor.js';
|
|
15
12
|
// Colors for terminal output
|
|
16
13
|
const COLORS = {
|
|
@@ -31,9 +28,6 @@ function logSuccess(message) {
|
|
|
31
28
|
function logWarning(message) {
|
|
32
29
|
log(`⚠ ${message}`, COLORS.yellow);
|
|
33
30
|
}
|
|
34
|
-
function logError(message) {
|
|
35
|
-
log(`✗ ${message}`, COLORS.red);
|
|
36
|
-
}
|
|
37
31
|
function logInfo(message) {
|
|
38
32
|
log(` ${message}`, COLORS.cyan);
|
|
39
33
|
}
|
|
@@ -44,37 +38,6 @@ function isBethInitialized(cwd) {
|
|
|
44
38
|
const agentsDir = join(cwd, '.github', 'agents');
|
|
45
39
|
return existsSync(agentsDir);
|
|
46
40
|
}
|
|
47
|
-
/**
|
|
48
|
-
* Check if beads is initialized in the project
|
|
49
|
-
*/
|
|
50
|
-
function isBeadsInitialized(cwd) {
|
|
51
|
-
const beadsDir = join(cwd, '.beads');
|
|
52
|
-
return existsSync(beadsDir);
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Check if beads CLI is available
|
|
56
|
-
*/
|
|
57
|
-
function isBeadsAvailable() {
|
|
58
|
-
try {
|
|
59
|
-
execSync('bd --version', { stdio: 'ignore' });
|
|
60
|
-
return true;
|
|
61
|
-
}
|
|
62
|
-
catch {
|
|
63
|
-
return false;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Initialize beads in the project
|
|
68
|
-
*/
|
|
69
|
-
function initializeBeads(cwd) {
|
|
70
|
-
log('\nInitializing beads...', COLORS.cyan);
|
|
71
|
-
const result = spawnSync('bd', ['init'], {
|
|
72
|
-
cwd,
|
|
73
|
-
stdio: 'inherit',
|
|
74
|
-
shell: true,
|
|
75
|
-
});
|
|
76
|
-
return result.status === 0;
|
|
77
|
-
}
|
|
78
41
|
/**
|
|
79
42
|
* Main quickstart command
|
|
80
43
|
*/
|
|
@@ -95,58 +58,21 @@ export async function quickstart(options = {}) {
|
|
|
95
58
|
process.exit(1);
|
|
96
59
|
}
|
|
97
60
|
logSuccess('Beth is initialized');
|
|
98
|
-
// Step 2:
|
|
99
|
-
if (!isBeadsAvailable()) {
|
|
100
|
-
console.log('');
|
|
101
|
-
logError('beads CLI not found.');
|
|
102
|
-
logInfo('Install: npm install -g @beads/bd');
|
|
103
|
-
logInfo('Or: curl -fsSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash');
|
|
104
|
-
console.log('');
|
|
105
|
-
process.exit(1);
|
|
106
|
-
}
|
|
107
|
-
// Step 3: Initialize beads if needed
|
|
108
|
-
if (!isBeadsInitialized(cwd)) {
|
|
109
|
-
const initialized = initializeBeads(cwd);
|
|
110
|
-
if (!initialized) {
|
|
111
|
-
logError('Failed to initialize beads.');
|
|
112
|
-
logInfo('Run manually: bd init');
|
|
113
|
-
process.exit(1);
|
|
114
|
-
}
|
|
115
|
-
logSuccess('beads initialized');
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
logSuccess('beads already initialized');
|
|
119
|
-
}
|
|
120
|
-
// Step 4: Run doctor (don't exit on failure, we still want to show next steps)
|
|
61
|
+
// Step 2: Run doctor (don't exit on failure, we still want to show next steps)
|
|
121
62
|
console.log('');
|
|
122
63
|
log('Running health check...', COLORS.cyan);
|
|
123
64
|
await doctor({ verbose }, false);
|
|
124
|
-
// Step
|
|
125
|
-
const clients = detectClientConfig(cwd);
|
|
65
|
+
// Step 3: Print next steps
|
|
126
66
|
console.log('');
|
|
127
67
|
log('─'.repeat(40), COLORS.dim);
|
|
128
68
|
log('\nQuick Start Guide:', COLORS.bright);
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
if (clients.copilotCli) {
|
|
137
|
-
console.log('');
|
|
138
|
-
log('Copilot CLI:', COLORS.bright);
|
|
139
|
-
log(' 1. Run copilot in your project directory', COLORS.cyan);
|
|
140
|
-
log(' 2. Instructions live in .github/copilot-instructions.md', COLORS.cyan);
|
|
141
|
-
log(' 3. Use bd ready to find work, bd create to track tasks', COLORS.cyan);
|
|
142
|
-
}
|
|
143
|
-
if (clients.claudeCode) {
|
|
144
|
-
console.log('');
|
|
145
|
-
log('Claude Code:', COLORS.bright);
|
|
146
|
-
log(' 1. Run claude in your project directory', COLORS.cyan);
|
|
147
|
-
log(' 2. Instructions live in CLAUDE.md', COLORS.cyan);
|
|
148
|
-
log(' 3. Use bd ready to find work, bd prime for session context', COLORS.cyan);
|
|
149
|
-
}
|
|
69
|
+
console.log('');
|
|
70
|
+
log('1. Open this project in VS Code', COLORS.cyan);
|
|
71
|
+
log('2. Open Copilot Chat (Ctrl+Alt+I / Cmd+Alt+I)', COLORS.cyan);
|
|
72
|
+
log('3. Type @Beth to start working', COLORS.cyan);
|
|
73
|
+
console.log('');
|
|
74
|
+
log('Pro tip:', COLORS.bright);
|
|
75
|
+
logInfo('Start every session with @Beth and let her route work to specialists.');
|
|
150
76
|
console.log('');
|
|
151
77
|
log('Documentation:', COLORS.bright);
|
|
152
78
|
logInfo('https://github.com/stephschofield/beth');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quickstart.js","sourceRoot":"","sources":["../../../src/cli/commands/quickstart.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"quickstart.js","sourceRoot":"","sources":["../../../src/cli/commands/quickstart.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,29 +2,14 @@
|
|
|
2
2
|
* E2E tests for quickstart command.
|
|
3
3
|
* Run with: node --test dist/cli/commands/quickstart.test.js
|
|
4
4
|
*/
|
|
5
|
-
import { describe, it, beforeEach, afterEach } from '
|
|
5
|
+
import { describe, it, beforeEach, afterEach } from 'vitest';
|
|
6
6
|
import assert from 'node:assert';
|
|
7
|
-
import {
|
|
7
|
+
import { spawnSync } from 'child_process';
|
|
8
8
|
import { existsSync, mkdirSync, writeFileSync, rmSync } from 'fs';
|
|
9
9
|
import { join, resolve } from 'path';
|
|
10
10
|
import { tmpdir } from 'os';
|
|
11
|
-
import { persistClientConfig } from './client-config.js';
|
|
12
11
|
// Path to CLI
|
|
13
12
|
const CLI_PATH = resolve(join(import.meta.dirname, '../../../bin/cli.js'));
|
|
14
|
-
// Check if beads CLI is available for conditional tests
|
|
15
|
-
function isBeadsInstalled() {
|
|
16
|
-
try {
|
|
17
|
-
execSync('bd --version', { stdio: 'ignore' });
|
|
18
|
-
return true;
|
|
19
|
-
}
|
|
20
|
-
catch {
|
|
21
|
-
return false;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
const BEADS_AVAILABLE = isBeadsInstalled();
|
|
25
|
-
// Skip reason for tests requiring beads
|
|
26
|
-
const SKIP_NO_BEADS = !BEADS_AVAILABLE ? 'beads CLI not installed' : false;
|
|
27
|
-
const SKIP_BEADS_INSTALLED = BEADS_AVAILABLE ? 'beads CLI is installed, cannot test missing CLI' : false;
|
|
28
13
|
/**
|
|
29
14
|
* Run quickstart command in a directory
|
|
30
15
|
*/
|
|
@@ -67,15 +52,6 @@ function createSkillsDir(dir) {
|
|
|
67
52
|
mkdirSync(skillsDir, { recursive: true });
|
|
68
53
|
writeFileSync(join(skillsDir, 'SKILL.md'), '# Test Skill');
|
|
69
54
|
}
|
|
70
|
-
/**
|
|
71
|
-
* Simulate beads initialization by creating .beads directory
|
|
72
|
-
*/
|
|
73
|
-
function simulateBeadsInit(dir) {
|
|
74
|
-
const beadsDir = join(dir, '.beads');
|
|
75
|
-
mkdirSync(beadsDir, { recursive: true });
|
|
76
|
-
// Create minimal beads structure
|
|
77
|
-
writeFileSync(join(beadsDir, 'config.json'), JSON.stringify({ version: '1.0' }));
|
|
78
|
-
}
|
|
79
55
|
describe('quickstart command E2E', () => {
|
|
80
56
|
let testDir;
|
|
81
57
|
beforeEach(() => {
|
|
@@ -99,44 +75,15 @@ describe('quickstart command E2E', () => {
|
|
|
99
75
|
});
|
|
100
76
|
it('should detect Beth is initialized when .github/agents exists', () => {
|
|
101
77
|
createBethProject(testDir);
|
|
102
|
-
// Even if beads is missing, it should pass the Beth check first
|
|
103
78
|
const result = runQuickstart(testDir);
|
|
104
|
-
// Should show Beth is initialized
|
|
79
|
+
// Should show Beth is initialized
|
|
105
80
|
assert.ok(result.stdout.includes('Beth is initialized') || result.stdout.includes('✓'), 'Should confirm Beth is initialized');
|
|
106
81
|
});
|
|
107
82
|
});
|
|
108
|
-
describe('beads CLI detection', () => {
|
|
109
|
-
it('should detect missing beads CLI', { skip: SKIP_BEADS_INSTALLED }, () => {
|
|
110
|
-
createBethProject(testDir);
|
|
111
|
-
const result = runQuickstart(testDir);
|
|
112
|
-
assert.strictEqual(result.status, 1, 'Should exit with status 1 when beads missing');
|
|
113
|
-
assert.ok(result.stdout.includes('beads CLI not found') || result.stdout.includes('not found'), 'Should indicate beads CLI is not found');
|
|
114
|
-
});
|
|
115
|
-
});
|
|
116
|
-
describe('beads initialization', () => {
|
|
117
|
-
it('should detect uninitialized beads (no .beads directory)', { skip: SKIP_NO_BEADS }, () => {
|
|
118
|
-
createBethProject(testDir);
|
|
119
|
-
// Verify .beads doesn't exist initially
|
|
120
|
-
assert.strictEqual(existsSync(join(testDir, '.beads')), false);
|
|
121
|
-
// Note: quickstart will try to run `bd init` which may or may not succeed
|
|
122
|
-
// depending on the environment. We're testing detection, not initialization.
|
|
123
|
-
const result = runQuickstart(testDir);
|
|
124
|
-
// The command should attempt to initialize beads or indicate it's not initialized
|
|
125
|
-
assert.ok(result.stdout.includes('beads') || result.stdout.includes('Initializing'), 'Should mention beads in output');
|
|
126
|
-
});
|
|
127
|
-
it('should recognize existing beads initialization', { skip: SKIP_NO_BEADS }, () => {
|
|
128
|
-
createBethProject(testDir);
|
|
129
|
-
simulateBeadsInit(testDir);
|
|
130
|
-
const result = runQuickstart(testDir);
|
|
131
|
-
assert.ok(result.stdout.includes('beads already initialized') ||
|
|
132
|
-
result.stdout.includes('already initialized'), 'Should indicate beads is already initialized');
|
|
133
|
-
});
|
|
134
|
-
});
|
|
135
83
|
describe('Quick Start Guide output', () => {
|
|
136
|
-
it('should show Quick Start Guide with VS Code instructions',
|
|
84
|
+
it('should show Quick Start Guide with VS Code instructions', () => {
|
|
137
85
|
createBethProject(testDir);
|
|
138
86
|
createSkillsDir(testDir);
|
|
139
|
-
simulateBeadsInit(testDir);
|
|
140
87
|
const result = runQuickstart(testDir);
|
|
141
88
|
// Check for Quick Start Guide section
|
|
142
89
|
assert.ok(result.stdout.includes('Quick Start Guide'), 'Should show Quick Start Guide heading');
|
|
@@ -147,20 +94,18 @@ describe('quickstart command E2E', () => {
|
|
|
147
94
|
// Check for @Beth instruction
|
|
148
95
|
assert.ok(result.stdout.includes('@Beth'), 'Should mention @Beth');
|
|
149
96
|
});
|
|
150
|
-
it('should show Beth tagline quote',
|
|
97
|
+
it('should show Beth tagline quote', () => {
|
|
151
98
|
createBethProject(testDir);
|
|
152
99
|
createSkillsDir(testDir);
|
|
153
|
-
simulateBeadsInit(testDir);
|
|
154
100
|
const result = runQuickstart(testDir);
|
|
155
101
|
// Check for the tagline quote
|
|
156
102
|
assert.ok(result.stdout.includes('They broke my wings and forgot I had claws'), 'Should show Beth tagline quote');
|
|
157
103
|
});
|
|
158
104
|
});
|
|
159
105
|
describe('doctor integration', () => {
|
|
160
|
-
it('should run doctor check and show results',
|
|
106
|
+
it('should run doctor check and show results', () => {
|
|
161
107
|
createBethProject(testDir);
|
|
162
108
|
createSkillsDir(testDir);
|
|
163
|
-
simulateBeadsInit(testDir);
|
|
164
109
|
const result = runQuickstart(testDir);
|
|
165
110
|
// Should show health check is running
|
|
166
111
|
assert.ok(result.stdout.includes('health check') || result.stdout.includes('Running'), 'Should indicate health check is running');
|
|
@@ -169,10 +114,9 @@ describe('quickstart command E2E', () => {
|
|
|
169
114
|
result.stdout.includes('agents') ||
|
|
170
115
|
result.stdout.includes('✓'), 'Should show doctor check results');
|
|
171
116
|
});
|
|
172
|
-
it('should pass --verbose flag through to doctor command',
|
|
117
|
+
it('should pass --verbose flag through to doctor command', () => {
|
|
173
118
|
createBethProject(testDir);
|
|
174
119
|
createSkillsDir(testDir);
|
|
175
|
-
simulateBeadsInit(testDir);
|
|
176
120
|
// Run with verbose flag
|
|
177
121
|
const verboseResult = runQuickstart(testDir, ['--verbose']);
|
|
178
122
|
// Verbose output should be longer or contain more details
|
|
@@ -183,11 +127,10 @@ describe('quickstart command E2E', () => {
|
|
|
183
127
|
});
|
|
184
128
|
});
|
|
185
129
|
describe('full success scenario', () => {
|
|
186
|
-
it('should succeed in fully initialized project',
|
|
130
|
+
it('should succeed in fully initialized project', () => {
|
|
187
131
|
// Create complete project structure
|
|
188
132
|
createBethProject(testDir);
|
|
189
133
|
createSkillsDir(testDir);
|
|
190
|
-
simulateBeadsInit(testDir);
|
|
191
134
|
// Also create AGENTS.md and Backlog.md
|
|
192
135
|
writeFileSync(join(testDir, 'AGENTS.md'), '# Agent Instructions');
|
|
193
136
|
writeFileSync(join(testDir, 'Backlog.md'), '# Backlog');
|
|
@@ -230,68 +173,4 @@ describe('quickstart output format', () => {
|
|
|
230
173
|
assert.ok(result.stdout.includes('─') || result.stdout.includes('-'), 'Should show separator lines');
|
|
231
174
|
});
|
|
232
175
|
});
|
|
233
|
-
describe('quickstart client-aware output', () => {
|
|
234
|
-
let testDir;
|
|
235
|
-
beforeEach(() => {
|
|
236
|
-
testDir = join(tmpdir(), `beth-qs-client-${Date.now()}-${Math.random().toString(36).slice(2)}`);
|
|
237
|
-
mkdirSync(testDir, { recursive: true });
|
|
238
|
-
});
|
|
239
|
-
afterEach(() => {
|
|
240
|
-
if (existsSync(testDir)) {
|
|
241
|
-
rmSync(testDir, { recursive: true, force: true });
|
|
242
|
-
}
|
|
243
|
-
});
|
|
244
|
-
/**
|
|
245
|
-
* Helper: set up a fully initialised Beth project so quickstart
|
|
246
|
-
* gets past the checks and prints the Quick Start Guide.
|
|
247
|
-
*/
|
|
248
|
-
function setupProject(dir) {
|
|
249
|
-
createBethProject(dir);
|
|
250
|
-
createSkillsDir(dir);
|
|
251
|
-
simulateBeadsInit(dir);
|
|
252
|
-
writeFileSync(join(dir, 'AGENTS.md'), '# Agent Instructions');
|
|
253
|
-
writeFileSync(join(dir, 'Backlog.md'), '# Backlog');
|
|
254
|
-
}
|
|
255
|
-
it('should show VS Code guidance when vscode-only config', { skip: SKIP_NO_BEADS }, () => {
|
|
256
|
-
setupProject(testDir);
|
|
257
|
-
persistClientConfig(testDir, { vscode: true, copilotCli: false, claudeCode: false });
|
|
258
|
-
const result = runQuickstart(testDir);
|
|
259
|
-
assert.ok(result.stdout.includes('Copilot Chat'), 'Should contain Copilot Chat instructions');
|
|
260
|
-
assert.ok(result.stdout.includes('@Beth'), 'Should mention @Beth');
|
|
261
|
-
assert.ok(!result.stdout.includes('Claude Code'), 'Should NOT contain Claude Code section');
|
|
262
|
-
assert.ok(!result.stdout.includes('CLAUDE.md'), 'Should NOT mention CLAUDE.md');
|
|
263
|
-
});
|
|
264
|
-
it('should show Claude Code guidance when claudeCode-only config', { skip: SKIP_NO_BEADS }, () => {
|
|
265
|
-
setupProject(testDir);
|
|
266
|
-
persistClientConfig(testDir, { vscode: false, copilotCli: false, claudeCode: true });
|
|
267
|
-
const result = runQuickstart(testDir);
|
|
268
|
-
assert.ok(result.stdout.includes('Claude Code'), 'Should contain Claude Code section');
|
|
269
|
-
assert.ok(result.stdout.includes('CLAUDE.md'), 'Should mention CLAUDE.md');
|
|
270
|
-
assert.ok(!result.stdout.includes('Copilot Chat'), 'Should NOT contain Copilot Chat section');
|
|
271
|
-
});
|
|
272
|
-
it('should show Copilot CLI guidance when copilotCli-only config', { skip: SKIP_NO_BEADS }, () => {
|
|
273
|
-
setupProject(testDir);
|
|
274
|
-
persistClientConfig(testDir, { vscode: false, copilotCli: true, claudeCode: false });
|
|
275
|
-
const result = runQuickstart(testDir);
|
|
276
|
-
assert.ok(result.stdout.includes('Copilot CLI'), 'Should contain Copilot CLI section');
|
|
277
|
-
assert.ok(result.stdout.includes('copilot-instructions.md'), 'Should mention copilot-instructions.md');
|
|
278
|
-
assert.ok(!result.stdout.includes('Copilot Chat'), 'Should NOT contain Copilot Chat section');
|
|
279
|
-
assert.ok(!result.stdout.includes('CLAUDE.md'), 'Should NOT mention CLAUDE.md');
|
|
280
|
-
});
|
|
281
|
-
it('should show all three sections when all clients selected', { skip: SKIP_NO_BEADS }, () => {
|
|
282
|
-
setupProject(testDir);
|
|
283
|
-
persistClientConfig(testDir, { vscode: true, copilotCli: true, claudeCode: true });
|
|
284
|
-
const result = runQuickstart(testDir);
|
|
285
|
-
assert.ok(result.stdout.includes('Copilot Chat'), 'Should contain VS Code / Copilot Chat section');
|
|
286
|
-
assert.ok(result.stdout.includes('Copilot CLI'), 'Should contain Copilot CLI section');
|
|
287
|
-
assert.ok(result.stdout.includes('Claude Code'), 'Should contain Claude Code section');
|
|
288
|
-
});
|
|
289
|
-
it('should default to VS Code guidance when no config file exists', { skip: SKIP_NO_BEADS }, () => {
|
|
290
|
-
setupProject(testDir);
|
|
291
|
-
// Do NOT write a .beth-client.json — fallback should detect .github/agents/ → vscode
|
|
292
|
-
const result = runQuickstart(testDir);
|
|
293
|
-
assert.ok(result.stdout.includes('Copilot Chat'), 'Fallback should show Copilot Chat instructions');
|
|
294
|
-
assert.ok(result.stdout.includes('@Beth'), 'Fallback should mention @Beth');
|
|
295
|
-
});
|
|
296
|
-
});
|
|
297
176
|
//# sourceMappingURL=quickstart.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quickstart.test.js","sourceRoot":"","sources":["../../../src/cli/commands/quickstart.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"quickstart.test.js","sourceRoot":"","sources":["../../../src/cli/commands/quickstart.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Update Command
|
|
3
|
+
*
|
|
4
|
+
* Updates project files to the latest Beth templates.
|
|
5
|
+
* Compares installed files against the package templates and
|
|
6
|
+
* copies new or updated files into the project.
|
|
7
|
+
*
|
|
8
|
+
* Behavior:
|
|
9
|
+
* - New files (exist in template but not in project) → always installed
|
|
10
|
+
* - Unchanged files (content matches template) → skipped
|
|
11
|
+
* - User-modified files (content differs from template):
|
|
12
|
+
* - Without --force → skipped with warning
|
|
13
|
+
* - With --force → overwritten
|
|
14
|
+
* - --check-only → reports status without modifying anything
|
|
15
|
+
* - --verbose → shows per-file detail
|
|
16
|
+
*
|
|
17
|
+
* Options:
|
|
18
|
+
* --check-only Report update status without modifying files
|
|
19
|
+
* --force Overwrite user-modified files with template versions
|
|
20
|
+
* --verbose Show per-file detail
|
|
21
|
+
*/
|
|
22
|
+
export interface UpdateOptions {
|
|
23
|
+
checkOnly?: boolean;
|
|
24
|
+
force?: boolean;
|
|
25
|
+
verbose?: boolean;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Parse update command arguments from raw argv.
|
|
29
|
+
*/
|
|
30
|
+
export declare function parseUpdateArgs(rawArgs: string[]): UpdateOptions;
|
|
31
|
+
/**
|
|
32
|
+
* Main update command.
|
|
33
|
+
*/
|
|
34
|
+
export declare function update(rawArgs: string[]): Promise<void>;
|
|
35
|
+
//# sourceMappingURL=update.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/update.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAgBH,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAYD;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,aAAa,CAQhE;AA+DD;;GAEG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAqJ7D"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* E2E tests for the update command.
|
|
3
|
+
* Run with: npx vitest run src/cli/commands/update.e2e.test.ts
|
|
4
|
+
*
|
|
5
|
+
* beth-r08.6: Validates `npx beth-copilot update` behavior end-to-end.
|
|
6
|
+
*
|
|
7
|
+
* Test scenarios:
|
|
8
|
+
* 1. Command is recognized (not rejected as unknown)
|
|
9
|
+
* 2. Listed in help output
|
|
10
|
+
* 3. --check-only reports version status without modifying files
|
|
11
|
+
* 4. Reports "already up to date" when templates match
|
|
12
|
+
* 5. Shows update summary with --verbose
|
|
13
|
+
* 6. --force overwrites existing files
|
|
14
|
+
* 7. Does not overwrite user-modified files without --force
|
|
15
|
+
* 8. Handles network errors gracefully (npm registry unreachable)
|
|
16
|
+
* 9. Exits with code 0 on success, non-zero on failure
|
|
17
|
+
* 10. Installs new agent/skill files that did not exist before
|
|
18
|
+
*
|
|
19
|
+
* These tests exercise the real CLI binary in temp directories.
|
|
20
|
+
* They do NOT hit the npm registry — network calls are tested
|
|
21
|
+
* separately or mocked via env vars.
|
|
22
|
+
*/
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=update.e2e.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.e2e.test.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/update.e2e.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG"}
|