edsger 0.77.0 → 0.79.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 +21 -0
- package/README.md +95 -210
- package/assets/LICENSE +21 -0
- package/assets/README.md +104 -0
- package/assets/benchmark/base.yaml +286 -0
- package/assets/benchmark/csharp.yaml +68 -0
- package/assets/benchmark/dart.yaml +70 -0
- package/assets/benchmark/go.yaml +71 -0
- package/assets/benchmark/java.yaml +68 -0
- package/assets/benchmark/python.yaml +72 -0
- package/assets/benchmark/typescript.yaml +71 -0
- package/assets/languages.yaml +35 -0
- package/assets/manifest.yaml +39 -0
- package/assets/review/base.yaml +111 -0
- package/assets/review/csharp.yaml +38 -0
- package/assets/review/dart.yaml +40 -0
- package/assets/review/go.yaml +40 -0
- package/assets/review/java.yaml +40 -0
- package/assets/review/python.yaml +41 -0
- package/assets/review/typescript.yaml +40 -0
- package/assets/schema/benchmark.schema.json +87 -0
- package/assets/schema/review.schema.json +73 -0
- package/assets/skills/benchmark/SKILL.md +66 -0
- package/assets/skills/pr-resolve/SKILL.md +58 -0
- package/assets/skills/pr-review/SKILL.md +66 -0
- package/dist/index.js +1348 -1247
- package/dist/index.js.map +1 -0
- package/package.json +58 -53
- package/dist/api/adr.d.ts +0 -48
- package/dist/api/adr.js +0 -139
- package/dist/api/app-store-iap.d.ts +0 -60
- package/dist/api/app-store-iap.js +0 -145
- package/dist/api/app-store.d.ts +0 -93
- package/dist/api/app-store.js +0 -206
- package/dist/api/chat.d.ts +0 -72
- package/dist/api/chat.js +0 -272
- package/dist/api/cross-product.d.ts +0 -33
- package/dist/api/cross-product.js +0 -127
- package/dist/api/financing.d.ts +0 -47
- package/dist/api/financing.js +0 -37
- package/dist/api/github.d.ts +0 -86
- package/dist/api/github.js +0 -203
- package/dist/api/growth.d.ts +0 -81
- package/dist/api/growth.js +0 -75
- package/dist/api/intelligence-normalize.d.ts +0 -25
- package/dist/api/intelligence-normalize.js +0 -103
- package/dist/api/intelligence.d.ts +0 -187
- package/dist/api/intelligence.js +0 -402
- package/dist/api/issues/approval-checker.d.ts +0 -22
- package/dist/api/issues/approval-checker.js +0 -141
- package/dist/api/issues/batch-operations.d.ts +0 -17
- package/dist/api/issues/batch-operations.js +0 -100
- package/dist/api/issues/get-issue.d.ts +0 -5
- package/dist/api/issues/get-issue.js +0 -47
- package/dist/api/issues/index.d.ts +0 -8
- package/dist/api/issues/index.js +0 -10
- package/dist/api/issues/issue-utils.d.ts +0 -25
- package/dist/api/issues/issue-utils.js +0 -133
- package/dist/api/issues/status-updater.d.ts +0 -68
- package/dist/api/issues/status-updater.js +0 -190
- package/dist/api/issues/test-cases.d.ts +0 -29
- package/dist/api/issues/test-cases.js +0 -185
- package/dist/api/issues/update-issue.d.ts +0 -25
- package/dist/api/issues/update-issue.js +0 -127
- package/dist/api/issues/user-stories.d.ts +0 -21
- package/dist/api/issues/user-stories.js +0 -163
- package/dist/api/mcp-client.d.ts +0 -22
- package/dist/api/mcp-client.js +0 -75
- package/dist/api/products/test-cases.d.ts +0 -18
- package/dist/api/products/test-cases.js +0 -51
- package/dist/api/products.d.ts +0 -15
- package/dist/api/products.js +0 -45
- package/dist/api/release-test-cases.d.ts +0 -7
- package/dist/api/release-test-cases.js +0 -59
- package/dist/api/releases.d.ts +0 -41
- package/dist/api/releases.js +0 -117
- package/dist/api/run-sheets.d.ts +0 -22
- package/dist/api/run-sheets.js +0 -13
- package/dist/api/storage.d.ts +0 -13
- package/dist/api/storage.js +0 -29
- package/dist/api/tasks.d.ts +0 -26
- package/dist/api/tasks.js +0 -81
- package/dist/api/test-reports.d.ts +0 -9
- package/dist/api/test-reports.js +0 -43
- package/dist/api/user-psychology.d.ts +0 -101
- package/dist/api/user-psychology.js +0 -143
- package/dist/api/web-deploy.d.ts +0 -67
- package/dist/api/web-deploy.js +0 -199
- package/dist/auth/auth-store.d.ts +0 -98
- package/dist/auth/auth-store.js +0 -194
- package/dist/auth/env-store.d.ts +0 -41
- package/dist/auth/env-store.js +0 -127
- package/dist/auth/login.d.ts +0 -18
- package/dist/auth/login.js +0 -179
- package/dist/commands/adr/index.d.ts +0 -13
- package/dist/commands/adr/index.js +0 -31
- package/dist/commands/agent-workflow/chat-worker.d.ts +0 -16
- package/dist/commands/agent-workflow/chat-worker.js +0 -465
- package/dist/commands/agent-workflow/index.d.ts +0 -13
- package/dist/commands/agent-workflow/index.js +0 -107
- package/dist/commands/agent-workflow/issue-worker.d.ts +0 -14
- package/dist/commands/agent-workflow/issue-worker.js +0 -65
- package/dist/commands/agent-workflow/processor.d.ts +0 -95
- package/dist/commands/agent-workflow/processor.js +0 -519
- package/dist/commands/analyze-logs/index.d.ts +0 -7
- package/dist/commands/analyze-logs/index.js +0 -34
- package/dist/commands/api-docs/index.d.ts +0 -18
- package/dist/commands/api-docs/index.js +0 -41
- package/dist/commands/app-store/index.d.ts +0 -12
- package/dist/commands/app-store/index.js +0 -69
- package/dist/commands/architecture-diagram/index.d.ts +0 -8
- package/dist/commands/architecture-diagram/index.js +0 -10
- package/dist/commands/build/detect-project.d.ts +0 -52
- package/dist/commands/build/detect-project.js +0 -277
- package/dist/commands/build/index.d.ts +0 -66
- package/dist/commands/build/index.js +0 -544
- package/dist/commands/chat-serve/chat-server.d.ts +0 -114
- package/dist/commands/chat-serve/chat-server.js +0 -339
- package/dist/commands/chat-serve/index.d.ts +0 -20
- package/dist/commands/chat-serve/index.js +0 -58
- package/dist/commands/checklists/index.d.ts +0 -16
- package/dist/commands/checklists/index.js +0 -187
- package/dist/commands/checklists/tools.d.ts +0 -17
- package/dist/commands/checklists/tools.js +0 -19
- package/dist/commands/class-diagram/index.d.ts +0 -7
- package/dist/commands/class-diagram/index.js +0 -9
- package/dist/commands/code-review/index.d.ts +0 -2
- package/dist/commands/code-review/index.js +0 -37
- package/dist/commands/code-review/reviewer.d.ts +0 -3
- package/dist/commands/code-review/reviewer.js +0 -205
- package/dist/commands/config/index.d.ts +0 -16
- package/dist/commands/config/index.js +0 -60
- package/dist/commands/data-flow/index.d.ts +0 -19
- package/dist/commands/data-flow/index.js +0 -55
- package/dist/commands/diagram-shared/index.d.ts +0 -21
- package/dist/commands/diagram-shared/index.js +0 -37
- package/dist/commands/discover/index.d.ts +0 -14
- package/dist/commands/discover/index.js +0 -29
- package/dist/commands/er-diagram/index.d.ts +0 -19
- package/dist/commands/er-diagram/index.js +0 -55
- package/dist/commands/features/index.d.ts +0 -15
- package/dist/commands/features/index.js +0 -34
- package/dist/commands/financing-deck/index.d.ts +0 -8
- package/dist/commands/financing-deck/index.js +0 -66
- package/dist/commands/find-architecture/index.d.ts +0 -15
- package/dist/commands/find-architecture/index.js +0 -50
- package/dist/commands/find-bugs/index.d.ts +0 -13
- package/dist/commands/find-bugs/index.js +0 -48
- package/dist/commands/find-features/index.d.ts +0 -14
- package/dist/commands/find-features/index.js +0 -42
- package/dist/commands/find-smells/index.d.ts +0 -23
- package/dist/commands/find-smells/index.js +0 -74
- package/dist/commands/flowchart/index.d.ts +0 -8
- package/dist/commands/flowchart/index.js +0 -10
- package/dist/commands/growth-analysis/index.d.ts +0 -7
- package/dist/commands/growth-analysis/index.js +0 -89
- package/dist/commands/init/index.d.ts +0 -5
- package/dist/commands/init/index.js +0 -152
- package/dist/commands/init/prompts.d.ts +0 -9
- package/dist/commands/init/prompts.js +0 -128
- package/dist/commands/init/templates.d.ts +0 -9
- package/dist/commands/init/templates.js +0 -264
- package/dist/commands/intelligence/index.d.ts +0 -15
- package/dist/commands/intelligence/index.js +0 -138
- package/dist/commands/issue-analysis/index.d.ts +0 -5
- package/dist/commands/issue-analysis/index.js +0 -9
- package/dist/commands/pr-resolve/index.d.ts +0 -13
- package/dist/commands/pr-resolve/index.js +0 -50
- package/dist/commands/pr-review/index.d.ts +0 -12
- package/dist/commands/pr-review/index.js +0 -47
- package/dist/commands/product-techniques/index.d.ts +0 -15
- package/dist/commands/product-techniques/index.js +0 -37
- package/dist/commands/product-test-cases/index.d.ts +0 -12
- package/dist/commands/product-test-cases/index.js +0 -40
- package/dist/commands/quality-benchmark/index.d.ts +0 -45
- package/dist/commands/quality-benchmark/index.js +0 -247
- package/dist/commands/recipes/index.d.ts +0 -17
- package/dist/commands/recipes/index.js +0 -40
- package/dist/commands/refactor/refactor.d.ts +0 -2
- package/dist/commands/refactor/refactor.js +0 -134
- package/dist/commands/release-sync/index.d.ts +0 -5
- package/dist/commands/release-sync/index.js +0 -38
- package/dist/commands/run-sheet/index.d.ts +0 -6
- package/dist/commands/run-sheet/index.js +0 -48
- package/dist/commands/screen-flow/index.d.ts +0 -18
- package/dist/commands/screen-flow/index.js +0 -54
- package/dist/commands/sequence-diagram/index.d.ts +0 -19
- package/dist/commands/sequence-diagram/index.js +0 -55
- package/dist/commands/session-serve/index.d.ts +0 -32
- package/dist/commands/session-serve/index.js +0 -100
- package/dist/commands/session-turn/index.d.ts +0 -73
- package/dist/commands/session-turn/index.js +0 -254
- package/dist/commands/smoke-test/index.d.ts +0 -5
- package/dist/commands/smoke-test/index.js +0 -40
- package/dist/commands/state-diagram/index.d.ts +0 -7
- package/dist/commands/state-diagram/index.js +0 -9
- package/dist/commands/sync-aws/index.d.ts +0 -16
- package/dist/commands/sync-aws/index.js +0 -214
- package/dist/commands/sync-datadog/index.d.ts +0 -16
- package/dist/commands/sync-datadog/index.js +0 -236
- package/dist/commands/sync-github-issues/index.d.ts +0 -11
- package/dist/commands/sync-github-issues/index.js +0 -42
- package/dist/commands/sync-github-pull-requests/index.d.ts +0 -11
- package/dist/commands/sync-github-pull-requests/index.js +0 -42
- package/dist/commands/sync-org-repos/index.d.ts +0 -12
- package/dist/commands/sync-org-repos/index.js +0 -60
- package/dist/commands/sync-sentry-issues/index.d.ts +0 -14
- package/dist/commands/sync-sentry-issues/index.js +0 -73
- package/dist/commands/sync-terraform/index.d.ts +0 -16
- package/dist/commands/sync-terraform/index.js +0 -248
- package/dist/commands/task-worker/index.d.ts +0 -8
- package/dist/commands/task-worker/index.js +0 -34
- package/dist/commands/task-worker/processor.d.ts +0 -23
- package/dist/commands/task-worker/processor.js +0 -84
- package/dist/commands/technical-design/index.d.ts +0 -5
- package/dist/commands/technical-design/index.js +0 -9
- package/dist/commands/test-cases-analysis/index.d.ts +0 -5
- package/dist/commands/test-cases-analysis/index.js +0 -9
- package/dist/commands/user-psychology/index.d.ts +0 -7
- package/dist/commands/user-psychology/index.js +0 -51
- package/dist/commands/user-stories-analysis/index.d.ts +0 -5
- package/dist/commands/user-stories-analysis/index.js +0 -9
- package/dist/commands/workflow/config/phase-configs.d.ts +0 -5
- package/dist/commands/workflow/config/phase-configs.js +0 -132
- package/dist/commands/workflow/core/index.d.ts +0 -8
- package/dist/commands/workflow/core/index.js +0 -12
- package/dist/commands/workflow/core/issue-filter.d.ts +0 -16
- package/dist/commands/workflow/core/issue-filter.js +0 -47
- package/dist/commands/workflow/core/pipeline-evaluator.d.ts +0 -24
- package/dist/commands/workflow/core/pipeline-evaluator.js +0 -32
- package/dist/commands/workflow/core/state-manager.d.ts +0 -24
- package/dist/commands/workflow/core/state-manager.js +0 -42
- package/dist/commands/workflow/core/workflow-logger.d.ts +0 -23
- package/dist/commands/workflow/core/workflow-logger.js +0 -77
- package/dist/commands/workflow/executors/phase-executor.d.ts +0 -8
- package/dist/commands/workflow/executors/phase-executor.js +0 -338
- package/dist/commands/workflow/index.d.ts +0 -2
- package/dist/commands/workflow/index.js +0 -34
- package/dist/commands/workflow/issue-coordinator.d.ts +0 -18
- package/dist/commands/workflow/issue-coordinator.js +0 -161
- package/dist/commands/workflow/phase-orchestrator.d.ts +0 -26
- package/dist/commands/workflow/phase-orchestrator.js +0 -699
- package/dist/commands/workflow/processor.d.ts +0 -47
- package/dist/commands/workflow/processor.js +0 -149
- package/dist/config/issue-status.d.ts +0 -29
- package/dist/config/issue-status.js +0 -44
- package/dist/config.d.ts +0 -3
- package/dist/config.js +0 -79
- package/dist/constants.d.ts +0 -10
- package/dist/constants.js +0 -36
- package/dist/errors/index.d.ts +0 -68
- package/dist/errors/index.js +0 -129
- package/dist/index.d.ts +0 -4
- package/dist/phases/adr-generation/agent.d.ts +0 -6
- package/dist/phases/adr-generation/agent.js +0 -69
- package/dist/phases/adr-generation/index.d.ts +0 -15
- package/dist/phases/adr-generation/index.js +0 -66
- package/dist/phases/adr-generation/parse.d.ts +0 -12
- package/dist/phases/adr-generation/parse.js +0 -123
- package/dist/phases/adr-generation/prompts.d.ts +0 -8
- package/dist/phases/adr-generation/prompts.js +0 -35
- package/dist/phases/analyze-logs/agent.d.ts +0 -11
- package/dist/phases/analyze-logs/agent.js +0 -66
- package/dist/phases/analyze-logs/index.d.ts +0 -23
- package/dist/phases/analyze-logs/index.js +0 -152
- package/dist/phases/analyze-logs/prompts.d.ts +0 -3
- package/dist/phases/analyze-logs/prompts.js +0 -27
- package/dist/phases/api-docs/index.d.ts +0 -47
- package/dist/phases/api-docs/index.js +0 -254
- package/dist/phases/api-docs/mcp-server.d.ts +0 -25
- package/dist/phases/api-docs/mcp-server.js +0 -82
- package/dist/phases/api-docs/prompts.d.ts +0 -16
- package/dist/phases/api-docs/prompts.js +0 -65
- package/dist/phases/api-docs/types.d.ts +0 -22
- package/dist/phases/api-docs/types.js +0 -10
- package/dist/phases/app-store-generation/agent.d.ts +0 -2
- package/dist/phases/app-store-generation/agent.js +0 -177
- package/dist/phases/app-store-generation/assets/inter-latin-ext.woff2 +0 -0
- package/dist/phases/app-store-generation/assets/inter-latin.woff2 +0 -0
- package/dist/phases/app-store-generation/context.d.ts +0 -21
- package/dist/phases/app-store-generation/context.js +0 -78
- package/dist/phases/app-store-generation/index.d.ts +0 -20
- package/dist/phases/app-store-generation/index.js +0 -157
- package/dist/phases/app-store-generation/inter-font.d.ts +0 -20
- package/dist/phases/app-store-generation/inter-font.js +0 -49
- package/dist/phases/app-store-generation/prompts.d.ts +0 -43
- package/dist/phases/app-store-generation/prompts.js +0 -73
- package/dist/phases/app-store-generation/screenshot-composer.d.ts +0 -41
- package/dist/phases/app-store-generation/screenshot-composer.js +0 -516
- package/dist/phases/app-store-generation/uploader.d.ts +0 -19
- package/dist/phases/app-store-generation/uploader.js +0 -150
- package/dist/phases/architecture-diagram/index.d.ts +0 -15
- package/dist/phases/architecture-diagram/index.js +0 -51
- package/dist/phases/autonomous/index.d.ts +0 -32
- package/dist/phases/autonomous/index.js +0 -412
- package/dist/phases/autonomous/prompts.d.ts +0 -5
- package/dist/phases/autonomous/prompts.js +0 -31
- package/dist/phases/branch-planning/context.d.ts +0 -14
- package/dist/phases/branch-planning/context.js +0 -43
- package/dist/phases/branch-planning/index.d.ts +0 -25
- package/dist/phases/branch-planning/index.js +0 -404
- package/dist/phases/branch-planning/outcome.d.ts +0 -28
- package/dist/phases/branch-planning/outcome.js +0 -115
- package/dist/phases/branch-planning/prompts.d.ts +0 -41
- package/dist/phases/branch-planning/prompts.js +0 -157
- package/dist/phases/bug-fixing/analyzer.d.ts +0 -17
- package/dist/phases/bug-fixing/analyzer.js +0 -247
- package/dist/phases/bug-fixing/context-fetcher.d.ts +0 -22
- package/dist/phases/bug-fixing/context-fetcher.js +0 -137
- package/dist/phases/bug-fixing/index.d.ts +0 -7
- package/dist/phases/bug-fixing/index.js +0 -7
- package/dist/phases/bug-fixing/mcp-server.d.ts +0 -18
- package/dist/phases/bug-fixing/mcp-server.js +0 -19
- package/dist/phases/bug-fixing/prompts.d.ts +0 -2
- package/dist/phases/bug-fixing/prompts.js +0 -9
- package/dist/phases/chat-processor/context.d.ts +0 -38
- package/dist/phases/chat-processor/context.js +0 -91
- package/dist/phases/chat-processor/index.d.ts +0 -49
- package/dist/phases/chat-processor/index.js +0 -482
- package/dist/phases/chat-processor/product-context.d.ts +0 -36
- package/dist/phases/chat-processor/product-context.js +0 -113
- package/dist/phases/chat-processor/product-prompts.d.ts +0 -4
- package/dist/phases/chat-processor/product-prompts.js +0 -65
- package/dist/phases/chat-processor/product-tools.d.ts +0 -8
- package/dist/phases/chat-processor/product-tools.js +0 -11
- package/dist/phases/chat-processor/prompts.d.ts +0 -35
- package/dist/phases/chat-processor/prompts.js +0 -213
- package/dist/phases/chat-processor/tools.d.ts +0 -8
- package/dist/phases/chat-processor/tools.js +0 -11
- package/dist/phases/class-diagram/index.d.ts +0 -14
- package/dist/phases/class-diagram/index.js +0 -76
- package/dist/phases/code-implementation/branch-pr-creator.d.ts +0 -31
- package/dist/phases/code-implementation/branch-pr-creator.js +0 -172
- package/dist/phases/code-implementation/context.d.ts +0 -17
- package/dist/phases/code-implementation/context.js +0 -88
- package/dist/phases/code-implementation/index.d.ts +0 -33
- package/dist/phases/code-implementation/index.js +0 -926
- package/dist/phases/code-implementation/outcome.d.ts +0 -47
- package/dist/phases/code-implementation/outcome.js +0 -53
- package/dist/phases/code-implementation/prompts.d.ts +0 -8
- package/dist/phases/code-implementation/prompts.js +0 -166
- package/dist/phases/code-implementation-verification/agent.d.ts +0 -32
- package/dist/phases/code-implementation-verification/agent.js +0 -225
- package/dist/phases/code-implementation-verification/index.d.ts +0 -27
- package/dist/phases/code-implementation-verification/index.js +0 -121
- package/dist/phases/code-implementation-verification/prompts.d.ts +0 -10
- package/dist/phases/code-implementation-verification/prompts.js +0 -90
- package/dist/phases/code-refine/context.d.ts +0 -99
- package/dist/phases/code-refine/context.js +0 -457
- package/dist/phases/code-refine/index.d.ts +0 -59
- package/dist/phases/code-refine/index.js +0 -348
- package/dist/phases/code-refine/prompts.d.ts +0 -5
- package/dist/phases/code-refine/prompts.js +0 -162
- package/dist/phases/code-refine/refine-iteration.d.ts +0 -33
- package/dist/phases/code-refine/refine-iteration.js +0 -166
- package/dist/phases/code-refine/retry-handler.d.ts +0 -17
- package/dist/phases/code-refine/retry-handler.js +0 -87
- package/dist/phases/code-refine-verification/github.d.ts +0 -54
- package/dist/phases/code-refine-verification/github.js +0 -328
- package/dist/phases/code-refine-verification/index.d.ts +0 -11
- package/dist/phases/code-refine-verification/index.js +0 -260
- package/dist/phases/code-refine-verification/llm-analyzer.d.ts +0 -22
- package/dist/phases/code-refine-verification/llm-analyzer.js +0 -152
- package/dist/phases/code-refine-verification/prompts.d.ts +0 -5
- package/dist/phases/code-refine-verification/prompts.js +0 -119
- package/dist/phases/code-refine-verification/types.d.ts +0 -74
- package/dist/phases/code-refine-verification/types.js +0 -4
- package/dist/phases/code-review/context.d.ts +0 -96
- package/dist/phases/code-review/context.js +0 -278
- package/dist/phases/code-review/diff-utils.d.ts +0 -36
- package/dist/phases/code-review/diff-utils.js +0 -100
- package/dist/phases/code-review/index.d.ts +0 -40
- package/dist/phases/code-review/index.js +0 -627
- package/dist/phases/code-testing/analyzer.d.ts +0 -19
- package/dist/phases/code-testing/analyzer.js +0 -215
- package/dist/phases/code-testing/context-fetcher.d.ts +0 -16
- package/dist/phases/code-testing/context-fetcher.js +0 -83
- package/dist/phases/code-testing/index.d.ts +0 -2
- package/dist/phases/code-testing/index.js +0 -2
- package/dist/phases/code-testing/prompts.d.ts +0 -3
- package/dist/phases/code-testing/prompts.js +0 -63
- package/dist/phases/data-flow/index.d.ts +0 -28
- package/dist/phases/data-flow/index.js +0 -286
- package/dist/phases/data-flow/mcp-server.d.ts +0 -85
- package/dist/phases/data-flow/mcp-server.js +0 -140
- package/dist/phases/data-flow/prompts.d.ts +0 -14
- package/dist/phases/data-flow/prompts.js +0 -36
- package/dist/phases/data-flow/types.d.ts +0 -71
- package/dist/phases/data-flow/types.js +0 -86
- package/dist/phases/diagram-shared/clone-repos.d.ts +0 -63
- package/dist/phases/diagram-shared/clone-repos.js +0 -153
- package/dist/phases/diagram-shared/generate.d.ts +0 -42
- package/dist/phases/diagram-shared/generate.js +0 -162
- package/dist/phases/diagram-shared/graph.d.ts +0 -62
- package/dist/phases/diagram-shared/graph.js +0 -169
- package/dist/phases/diagram-shared/mcp.d.ts +0 -35
- package/dist/phases/diagram-shared/mcp.js +0 -68
- package/dist/phases/diagram-shared/prompts.d.ts +0 -23
- package/dist/phases/diagram-shared/prompts.js +0 -35
- package/dist/phases/discover-services/index.d.ts +0 -29
- package/dist/phases/discover-services/index.js +0 -528
- package/dist/phases/er-diagram/index.d.ts +0 -28
- package/dist/phases/er-diagram/index.js +0 -290
- package/dist/phases/er-diagram/mcp-server.d.ts +0 -77
- package/dist/phases/er-diagram/mcp-server.js +0 -144
- package/dist/phases/er-diagram/prompts.d.ts +0 -14
- package/dist/phases/er-diagram/prompts.js +0 -36
- package/dist/phases/er-diagram/types.d.ts +0 -76
- package/dist/phases/er-diagram/types.js +0 -84
- package/dist/phases/features/index.d.ts +0 -65
- package/dist/phases/features/index.js +0 -292
- package/dist/phases/features/mcp-server.d.ts +0 -61
- package/dist/phases/features/mcp-server.js +0 -165
- package/dist/phases/features/prompts.d.ts +0 -32
- package/dist/phases/features/prompts.js +0 -92
- package/dist/phases/features/types.d.ts +0 -34
- package/dist/phases/features/types.js +0 -15
- package/dist/phases/financing-deck/agent.d.ts +0 -1
- package/dist/phases/financing-deck/agent.js +0 -96
- package/dist/phases/financing-deck/context.d.ts +0 -13
- package/dist/phases/financing-deck/context.js +0 -69
- package/dist/phases/financing-deck/index.d.ts +0 -15
- package/dist/phases/financing-deck/index.js +0 -89
- package/dist/phases/financing-deck/prompts.d.ts +0 -2
- package/dist/phases/financing-deck/prompts.js +0 -94
- package/dist/phases/find-architecture/index.d.ts +0 -47
- package/dist/phases/find-architecture/index.js +0 -268
- package/dist/phases/find-architecture/prompts.d.ts +0 -32
- package/dist/phases/find-architecture/prompts.js +0 -129
- package/dist/phases/find-architecture/state.d.ts +0 -21
- package/dist/phases/find-architecture/state.js +0 -17
- package/dist/phases/find-architecture/types.d.ts +0 -55
- package/dist/phases/find-architecture/types.js +0 -69
- package/dist/phases/find-bugs/index.d.ts +0 -33
- package/dist/phases/find-bugs/index.js +0 -238
- package/dist/phases/find-bugs/prompts.d.ts +0 -22
- package/dist/phases/find-bugs/prompts.js +0 -101
- package/dist/phases/find-bugs/state.d.ts +0 -19
- package/dist/phases/find-bugs/state.js +0 -13
- package/dist/phases/find-bugs/types.d.ts +0 -21
- package/dist/phases/find-bugs/types.js +0 -16
- package/dist/phases/find-features/index.d.ts +0 -40
- package/dist/phases/find-features/index.js +0 -328
- package/dist/phases/find-features/prompts.d.ts +0 -43
- package/dist/phases/find-features/prompts.js +0 -138
- package/dist/phases/find-features/state.d.ts +0 -25
- package/dist/phases/find-features/state.js +0 -22
- package/dist/phases/find-features/types.d.ts +0 -27
- package/dist/phases/find-features/types.js +0 -16
- package/dist/phases/find-shared/baseline.d.ts +0 -45
- package/dist/phases/find-shared/baseline.js +0 -56
- package/dist/phases/find-shared/custom-rules.d.ts +0 -39
- package/dist/phases/find-shared/custom-rules.js +0 -75
- package/dist/phases/find-shared/detect-context.d.ts +0 -40
- package/dist/phases/find-shared/detect-context.js +0 -247
- package/dist/phases/find-shared/git.d.ts +0 -24
- package/dist/phases/find-shared/git.js +0 -60
- package/dist/phases/find-shared/mcp.d.ts +0 -54
- package/dist/phases/find-shared/mcp.js +0 -127
- package/dist/phases/find-shared/rule-config.d.ts +0 -37
- package/dist/phases/find-shared/rule-config.js +0 -67
- package/dist/phases/find-shared/rule-packs.d.ts +0 -65
- package/dist/phases/find-shared/rule-packs.js +0 -124
- package/dist/phases/find-shared/scan-state.d.ts +0 -33
- package/dist/phases/find-shared/scan-state.js +0 -112
- package/dist/phases/find-shared/scoped-read.d.ts +0 -12
- package/dist/phases/find-shared/scoped-read.js +0 -33
- package/dist/phases/find-smells/index.d.ts +0 -50
- package/dist/phases/find-smells/index.js +0 -305
- package/dist/phases/find-smells/prompts.d.ts +0 -31
- package/dist/phases/find-smells/prompts.js +0 -130
- package/dist/phases/find-smells/state.d.ts +0 -21
- package/dist/phases/find-smells/state.js +0 -17
- package/dist/phases/find-smells/types.d.ts +0 -51
- package/dist/phases/find-smells/types.js +0 -64
- package/dist/phases/flow-shared/clone-repos.d.ts +0 -63
- package/dist/phases/flow-shared/clone-repos.js +0 -153
- package/dist/phases/flowchart/index.d.ts +0 -15
- package/dist/phases/flowchart/index.js +0 -50
- package/dist/phases/functional-testing/analyzer.d.ts +0 -46
- package/dist/phases/functional-testing/analyzer.js +0 -622
- package/dist/phases/functional-testing/context-fetcher.d.ts +0 -16
- package/dist/phases/functional-testing/context-fetcher.js +0 -83
- package/dist/phases/functional-testing/http-fallback.d.ts +0 -10
- package/dist/phases/functional-testing/http-fallback.js +0 -156
- package/dist/phases/functional-testing/index.d.ts +0 -4
- package/dist/phases/functional-testing/index.js +0 -4
- package/dist/phases/functional-testing/mcp-server.d.ts +0 -9
- package/dist/phases/functional-testing/mcp-server.js +0 -13
- package/dist/phases/functional-testing/prompts.d.ts +0 -2
- package/dist/phases/functional-testing/prompts.js +0 -58
- package/dist/phases/functional-testing/test-report-creator.d.ts +0 -68
- package/dist/phases/functional-testing/test-report-creator.js +0 -306
- package/dist/phases/functional-testing/test-retry-handler.d.ts +0 -16
- package/dist/phases/functional-testing/test-retry-handler.js +0 -70
- package/dist/phases/growth-analysis/agent.d.ts +0 -2
- package/dist/phases/growth-analysis/agent.js +0 -107
- package/dist/phases/growth-analysis/context.d.ts +0 -23
- package/dist/phases/growth-analysis/context.js +0 -137
- package/dist/phases/growth-analysis/index.d.ts +0 -32
- package/dist/phases/growth-analysis/index.js +0 -226
- package/dist/phases/growth-analysis/prompts.d.ts +0 -2
- package/dist/phases/growth-analysis/prompts.js +0 -45
- package/dist/phases/intelligence-analysis/agent.d.ts +0 -2
- package/dist/phases/intelligence-analysis/agent.js +0 -338
- package/dist/phases/intelligence-analysis/context.d.ts +0 -23
- package/dist/phases/intelligence-analysis/context.js +0 -142
- package/dist/phases/intelligence-analysis/index.d.ts +0 -58
- package/dist/phases/intelligence-analysis/index.js +0 -244
- package/dist/phases/intelligence-analysis/prompts.d.ts +0 -2
- package/dist/phases/intelligence-analysis/prompts.js +0 -62
- package/dist/phases/issue-analysis/agent.d.ts +0 -21
- package/dist/phases/issue-analysis/agent.js +0 -153
- package/dist/phases/issue-analysis/context.d.ts +0 -20
- package/dist/phases/issue-analysis/context.js +0 -93
- package/dist/phases/issue-analysis/index.d.ts +0 -8
- package/dist/phases/issue-analysis/index.js +0 -147
- package/dist/phases/issue-analysis/outcome.d.ts +0 -10
- package/dist/phases/issue-analysis/outcome.js +0 -42
- package/dist/phases/issue-analysis/prompts.d.ts +0 -8
- package/dist/phases/issue-analysis/prompts.js +0 -99
- package/dist/phases/issue-analysis-verification/agent.d.ts +0 -33
- package/dist/phases/issue-analysis-verification/agent.js +0 -124
- package/dist/phases/issue-analysis-verification/index.d.ts +0 -27
- package/dist/phases/issue-analysis-verification/index.js +0 -79
- package/dist/phases/issue-analysis-verification/prompts.d.ts +0 -9
- package/dist/phases/issue-analysis-verification/prompts.js +0 -75
- package/dist/phases/output-contracts.d.ts +0 -7
- package/dist/phases/output-contracts.js +0 -1201
- package/dist/phases/pr-execution/context.d.ts +0 -32
- package/dist/phases/pr-execution/context.js +0 -246
- package/dist/phases/pr-execution/file-assigner.d.ts +0 -57
- package/dist/phases/pr-execution/file-assigner.js +0 -287
- package/dist/phases/pr-execution/index.d.ts +0 -22
- package/dist/phases/pr-execution/index.js +0 -401
- package/dist/phases/pr-execution/outcome.d.ts +0 -24
- package/dist/phases/pr-execution/outcome.js +0 -34
- package/dist/phases/pr-execution/pr-executor.d.ts +0 -42
- package/dist/phases/pr-execution/pr-executor.js +0 -78
- package/dist/phases/pr-execution/prompts.d.ts +0 -27
- package/dist/phases/pr-execution/prompts.js +0 -131
- package/dist/phases/pr-resolve/checklist-learner.d.ts +0 -28
- package/dist/phases/pr-resolve/checklist-learner.js +0 -153
- package/dist/phases/pr-resolve/github-reply.d.ts +0 -16
- package/dist/phases/pr-resolve/github-reply.js +0 -75
- package/dist/phases/pr-resolve/index.d.ts +0 -33
- package/dist/phases/pr-resolve/index.js +0 -272
- package/dist/phases/pr-resolve/prompts.d.ts +0 -17
- package/dist/phases/pr-resolve/prompts.js +0 -107
- package/dist/phases/pr-resolve/types.d.ts +0 -18
- package/dist/phases/pr-resolve/types.js +0 -14
- package/dist/phases/pr-resolve/workspace.d.ts +0 -45
- package/dist/phases/pr-resolve/workspace.js +0 -174
- package/dist/phases/pr-review/index.d.ts +0 -27
- package/dist/phases/pr-review/index.js +0 -209
- package/dist/phases/pr-review/prompts.d.ts +0 -5
- package/dist/phases/pr-review/prompts.js +0 -87
- package/dist/phases/pr-shared/agent-utils.d.ts +0 -47
- package/dist/phases/pr-shared/agent-utils.js +0 -112
- package/dist/phases/pr-shared/context.d.ts +0 -24
- package/dist/phases/pr-shared/context.js +0 -78
- package/dist/phases/pr-shared/status.d.ts +0 -18
- package/dist/phases/pr-shared/status.js +0 -37
- package/dist/phases/pr-splitting/context.d.ts +0 -28
- package/dist/phases/pr-splitting/context.js +0 -182
- package/dist/phases/pr-splitting/import-dep-validator.d.ts +0 -67
- package/dist/phases/pr-splitting/import-dep-validator.js +0 -255
- package/dist/phases/pr-splitting/index.d.ts +0 -36
- package/dist/phases/pr-splitting/index.js +0 -413
- package/dist/phases/pr-splitting/outcome.d.ts +0 -24
- package/dist/phases/pr-splitting/outcome.js +0 -114
- package/dist/phases/pr-splitting/prompts.d.ts +0 -43
- package/dist/phases/pr-splitting/prompts.js +0 -154
- package/dist/phases/product-techniques/index.d.ts +0 -52
- package/dist/phases/product-techniques/index.js +0 -268
- package/dist/phases/product-techniques/mcp-server.d.ts +0 -41
- package/dist/phases/product-techniques/mcp-server.js +0 -96
- package/dist/phases/product-techniques/prompts.d.ts +0 -19
- package/dist/phases/product-techniques/prompts.js +0 -66
- package/dist/phases/product-techniques/types.d.ts +0 -13
- package/dist/phases/product-techniques/types.js +0 -13
- package/dist/phases/product-test-cases/index.d.ts +0 -25
- package/dist/phases/product-test-cases/index.js +0 -174
- package/dist/phases/product-test-cases/prompts.d.ts +0 -24
- package/dist/phases/product-test-cases/prompts.js +0 -80
- package/dist/phases/product-test-cases/types.d.ts +0 -17
- package/dist/phases/product-test-cases/types.js +0 -27
- package/dist/phases/pull-request/creator.d.ts +0 -30
- package/dist/phases/pull-request/creator.js +0 -319
- package/dist/phases/pull-request/handler.d.ts +0 -15
- package/dist/phases/pull-request/handler.js +0 -92
- package/dist/phases/quality-benchmark/gate.d.ts +0 -50
- package/dist/phases/quality-benchmark/gate.js +0 -91
- package/dist/phases/quality-benchmark/index.d.ts +0 -65
- package/dist/phases/quality-benchmark/index.js +0 -208
- package/dist/phases/quality-benchmark/mcp-server.d.ts +0 -46
- package/dist/phases/quality-benchmark/mcp-server.js +0 -252
- package/dist/phases/quality-benchmark/parsers.d.ts +0 -45
- package/dist/phases/quality-benchmark/parsers.js +0 -1311
- package/dist/phases/quality-benchmark/prompts.d.ts +0 -31
- package/dist/phases/quality-benchmark/prompts.js +0 -154
- package/dist/phases/quality-benchmark/rubric.md +0 -1211
- package/dist/phases/quality-benchmark/tool-catalog.d.ts +0 -33
- package/dist/phases/quality-benchmark/tool-catalog.js +0 -693
- package/dist/phases/quality-benchmark/tool-runner.d.ts +0 -69
- package/dist/phases/quality-benchmark/tool-runner.js +0 -399
- package/dist/phases/quality-benchmark/types.d.ts +0 -319
- package/dist/phases/quality-benchmark/types.js +0 -23
- package/dist/phases/quality-benchmark/workspace.d.ts +0 -31
- package/dist/phases/quality-benchmark/workspace.js +0 -110
- package/dist/phases/recipes/index.d.ts +0 -63
- package/dist/phases/recipes/index.js +0 -358
- package/dist/phases/recipes/mcp-server.d.ts +0 -66
- package/dist/phases/recipes/mcp-server.js +0 -229
- package/dist/phases/recipes/prompts.d.ts +0 -35
- package/dist/phases/recipes/prompts.js +0 -105
- package/dist/phases/recipes/types.d.ts +0 -42
- package/dist/phases/recipes/types.js +0 -16
- package/dist/phases/release-sync/github.d.ts +0 -66
- package/dist/phases/release-sync/github.js +0 -140
- package/dist/phases/release-sync/index.d.ts +0 -24
- package/dist/phases/release-sync/index.js +0 -156
- package/dist/phases/release-sync/snapshot.d.ts +0 -27
- package/dist/phases/release-sync/snapshot.js +0 -158
- package/dist/phases/run-sheet/agent.d.ts +0 -49
- package/dist/phases/run-sheet/agent.js +0 -156
- package/dist/phases/run-sheet/index.d.ts +0 -57
- package/dist/phases/run-sheet/index.js +0 -392
- package/dist/phases/screen-flow/index.d.ts +0 -26
- package/dist/phases/screen-flow/index.js +0 -349
- package/dist/phases/screen-flow/mcp-server.d.ts +0 -201
- package/dist/phases/screen-flow/mcp-server.js +0 -272
- package/dist/phases/screen-flow/prompts.d.ts +0 -19
- package/dist/phases/screen-flow/prompts.js +0 -43
- package/dist/phases/screen-flow/theme.d.ts +0 -19
- package/dist/phases/screen-flow/theme.js +0 -193
- package/dist/phases/screen-flow/types.d.ts +0 -137
- package/dist/phases/screen-flow/types.js +0 -81
- package/dist/phases/sequence-diagram/index.d.ts +0 -30
- package/dist/phases/sequence-diagram/index.js +0 -290
- package/dist/phases/sequence-diagram/mcp-server.d.ts +0 -64
- package/dist/phases/sequence-diagram/mcp-server.js +0 -134
- package/dist/phases/sequence-diagram/prompts.d.ts +0 -14
- package/dist/phases/sequence-diagram/prompts.js +0 -36
- package/dist/phases/sequence-diagram/types.d.ts +0 -52
- package/dist/phases/sequence-diagram/types.js +0 -93
- package/dist/phases/smoke-test/agent.d.ts +0 -12
- package/dist/phases/smoke-test/agent.js +0 -93
- package/dist/phases/smoke-test/index.d.ts +0 -22
- package/dist/phases/smoke-test/index.js +0 -241
- package/dist/phases/smoke-test/prompts.d.ts +0 -15
- package/dist/phases/smoke-test/prompts.js +0 -35
- package/dist/phases/state-diagram/index.d.ts +0 -15
- package/dist/phases/state-diagram/index.js +0 -53
- package/dist/phases/sync-github-issues/index.d.ts +0 -41
- package/dist/phases/sync-github-issues/index.js +0 -187
- package/dist/phases/sync-github-issues/state.d.ts +0 -26
- package/dist/phases/sync-github-issues/state.js +0 -18
- package/dist/phases/sync-github-issues/types.d.ts +0 -35
- package/dist/phases/sync-github-issues/types.js +0 -6
- package/dist/phases/sync-github-pull-requests/index.d.ts +0 -23
- package/dist/phases/sync-github-pull-requests/index.js +0 -210
- package/dist/phases/sync-github-pull-requests/state.d.ts +0 -24
- package/dist/phases/sync-github-pull-requests/state.js +0 -16
- package/dist/phases/sync-github-pull-requests/types.d.ts +0 -22
- package/dist/phases/sync-github-pull-requests/types.js +0 -1
- package/dist/phases/sync-org-repos/index.d.ts +0 -28
- package/dist/phases/sync-org-repos/index.js +0 -133
- package/dist/phases/sync-sentry-issues/index.d.ts +0 -29
- package/dist/phases/sync-sentry-issues/index.js +0 -153
- package/dist/phases/sync-sentry-issues/sentry-client.d.ts +0 -66
- package/dist/phases/sync-sentry-issues/sentry-client.js +0 -221
- package/dist/phases/sync-sentry-issues/state.d.ts +0 -23
- package/dist/phases/sync-sentry-issues/state.js +0 -18
- package/dist/phases/sync-sentry-issues/types.d.ts +0 -46
- package/dist/phases/sync-sentry-issues/types.js +0 -6
- package/dist/phases/sync-shared/mcp.d.ts +0 -81
- package/dist/phases/sync-shared/mcp.js +0 -111
- package/dist/phases/task/agent.d.ts +0 -10
- package/dist/phases/task/agent.js +0 -83
- package/dist/phases/task/context.d.ts +0 -16
- package/dist/phases/task/context.js +0 -50
- package/dist/phases/task/index.d.ts +0 -17
- package/dist/phases/task/index.js +0 -54
- package/dist/phases/task/prompts.d.ts +0 -9
- package/dist/phases/task/prompts.js +0 -21
- package/dist/phases/technical-design/context.d.ts +0 -12
- package/dist/phases/technical-design/context.js +0 -39
- package/dist/phases/technical-design/index.d.ts +0 -21
- package/dist/phases/technical-design/index.js +0 -456
- package/dist/phases/technical-design/outcome.d.ts +0 -25
- package/dist/phases/technical-design/outcome.js +0 -41
- package/dist/phases/technical-design/prompts.d.ts +0 -8
- package/dist/phases/technical-design/prompts.js +0 -210
- package/dist/phases/technical-design-verification/agent.d.ts +0 -53
- package/dist/phases/technical-design-verification/agent.js +0 -186
- package/dist/phases/technical-design-verification/index.d.ts +0 -38
- package/dist/phases/technical-design-verification/index.js +0 -152
- package/dist/phases/technical-design-verification/prompts.d.ts +0 -12
- package/dist/phases/technical-design-verification/prompts.js +0 -143
- package/dist/phases/test-cases-analysis/agent.d.ts +0 -9
- package/dist/phases/test-cases-analysis/agent.js +0 -105
- package/dist/phases/test-cases-analysis/context.d.ts +0 -15
- package/dist/phases/test-cases-analysis/context.js +0 -86
- package/dist/phases/test-cases-analysis/formatters.d.ts +0 -6
- package/dist/phases/test-cases-analysis/formatters.js +0 -35
- package/dist/phases/test-cases-analysis/index.d.ts +0 -9
- package/dist/phases/test-cases-analysis/index.js +0 -175
- package/dist/phases/test-cases-analysis/outcome.d.ts +0 -27
- package/dist/phases/test-cases-analysis/outcome.js +0 -146
- package/dist/phases/test-cases-analysis/prompts.d.ts +0 -7
- package/dist/phases/test-cases-analysis/prompts.js +0 -171
- package/dist/phases/user-psychology/agent.d.ts +0 -16
- package/dist/phases/user-psychology/agent.js +0 -105
- package/dist/phases/user-psychology/context.d.ts +0 -10
- package/dist/phases/user-psychology/context.js +0 -65
- package/dist/phases/user-psychology/index.d.ts +0 -18
- package/dist/phases/user-psychology/index.js +0 -96
- package/dist/phases/user-psychology/prompts.d.ts +0 -2
- package/dist/phases/user-psychology/prompts.js +0 -41
- package/dist/phases/user-stories-analysis/agent.d.ts +0 -9
- package/dist/phases/user-stories-analysis/agent.js +0 -105
- package/dist/phases/user-stories-analysis/context.d.ts +0 -15
- package/dist/phases/user-stories-analysis/context.js +0 -86
- package/dist/phases/user-stories-analysis/formatters.d.ts +0 -6
- package/dist/phases/user-stories-analysis/formatters.js +0 -32
- package/dist/phases/user-stories-analysis/index.d.ts +0 -9
- package/dist/phases/user-stories-analysis/index.js +0 -175
- package/dist/phases/user-stories-analysis/outcome.d.ts +0 -27
- package/dist/phases/user-stories-analysis/outcome.js +0 -146
- package/dist/phases/user-stories-analysis/prompts.d.ts +0 -7
- package/dist/phases/user-stories-analysis/prompts.js +0 -194
- package/dist/services/audit-logs.d.ts +0 -73
- package/dist/services/audit-logs.js +0 -174
- package/dist/services/branches.d.ts +0 -103
- package/dist/services/branches.js +0 -391
- package/dist/services/checklist.d.ts +0 -100
- package/dist/services/checklist.js +0 -259
- package/dist/services/coaching/coaching-agent.d.ts +0 -39
- package/dist/services/coaching/coaching-agent.js +0 -308
- package/dist/services/coaching/coaching-loop.d.ts +0 -62
- package/dist/services/coaching/coaching-loop.js +0 -265
- package/dist/services/coaching/index.d.ts +0 -8
- package/dist/services/coaching/index.js +0 -8
- package/dist/services/coaching/phase-coaching.d.ts +0 -47
- package/dist/services/coaching/phase-coaching.js +0 -60
- package/dist/services/coaching/self-rating.d.ts +0 -26
- package/dist/services/coaching/self-rating.js +0 -153
- package/dist/services/feedbacks.d.ts +0 -57
- package/dist/services/feedbacks.js +0 -264
- package/dist/services/phase-hooks/bindings-fetcher.d.ts +0 -21
- package/dist/services/phase-hooks/bindings-fetcher.js +0 -53
- package/dist/services/phase-hooks/hook-executor.d.ts +0 -36
- package/dist/services/phase-hooks/hook-executor.js +0 -167
- package/dist/services/phase-hooks/hook-logging.d.ts +0 -14
- package/dist/services/phase-hooks/hook-logging.js +0 -41
- package/dist/services/phase-hooks/hook-runner.d.ts +0 -19
- package/dist/services/phase-hooks/hook-runner.js +0 -83
- package/dist/services/phase-hooks/index.d.ts +0 -10
- package/dist/services/phase-hooks/index.js +0 -9
- package/dist/services/phase-hooks/plugin-loader.d.ts +0 -31
- package/dist/services/phase-hooks/plugin-loader.js +0 -207
- package/dist/services/phase-hooks/types.d.ts +0 -69
- package/dist/services/phase-hooks/types.js +0 -8
- package/dist/services/phase-ratings.d.ts +0 -70
- package/dist/services/phase-ratings.js +0 -143
- package/dist/services/product-logs.d.ts +0 -31
- package/dist/services/product-logs.js +0 -94
- package/dist/services/pull-requests.d.ts +0 -57
- package/dist/services/pull-requests.js +0 -186
- package/dist/services/quality-reports.d.ts +0 -45
- package/dist/services/quality-reports.js +0 -93
- package/dist/services/repo-config.d.ts +0 -17
- package/dist/services/repo-config.js +0 -50
- package/dist/services/skill-resolver.d.ts +0 -46
- package/dist/services/skill-resolver.js +0 -123
- package/dist/services/video/device-frames.d.ts +0 -34
- package/dist/services/video/device-frames.js +0 -513
- package/dist/services/video/index.d.ts +0 -66
- package/dist/services/video/index.js +0 -238
- package/dist/services/video/retry.d.ts +0 -20
- package/dist/services/video/retry.js +0 -76
- package/dist/services/video/screenshot-generator.d.ts +0 -69
- package/dist/services/video/screenshot-generator.js +0 -259
- package/dist/services/video/tts-generator.d.ts +0 -40
- package/dist/services/video/tts-generator.js +0 -121
- package/dist/services/video/video-assembler.d.ts +0 -45
- package/dist/services/video/video-assembler.js +0 -351
- package/dist/services/video/video-uploader.d.ts +0 -28
- package/dist/services/video/video-uploader.js +0 -108
- package/dist/skills/phase/adr-generation/SKILL.md +0 -51
- package/dist/skills/phase/analyze-logs/SKILL.md +0 -24
- package/dist/skills/phase/app-store-generation/SKILL.md +0 -60
- package/dist/skills/phase/architecture-diagram/SKILL.md +0 -41
- package/dist/skills/phase/autonomous/SKILL.md +0 -52
- package/dist/skills/phase/branch-planning/SKILL.md +0 -55
- package/dist/skills/phase/bug-fixing/SKILL.md +0 -47
- package/dist/skills/phase/class-diagram/SKILL.md +0 -44
- package/dist/skills/phase/code-implementation/SKILL.md +0 -68
- package/dist/skills/phase/code-implementation-verification/SKILL.md +0 -76
- package/dist/skills/phase/code-refine/SKILL.md +0 -62
- package/dist/skills/phase/code-testing/SKILL.md +0 -78
- package/dist/skills/phase/data-flow/SKILL.md +0 -82
- package/dist/skills/phase/er-diagram/SKILL.md +0 -71
- package/dist/skills/phase/flowchart/SKILL.md +0 -38
- package/dist/skills/phase/functional-testing/SKILL.md +0 -62
- package/dist/skills/phase/growth-analysis/SKILL.md +0 -97
- package/dist/skills/phase/incremental-sync/SKILL.md +0 -59
- package/dist/skills/phase/intelligence-analysis/SKILL.md +0 -52
- package/dist/skills/phase/issue-analysis/SKILL.md +0 -73
- package/dist/skills/phase/issue-analysis-verification/SKILL.md +0 -61
- package/dist/skills/phase/pr-execution/SKILL.md +0 -69
- package/dist/skills/phase/pr-splitting/SKILL.md +0 -78
- package/dist/skills/phase/screen-flow/SKILL.md +0 -78
- package/dist/skills/phase/sequence-diagram/SKILL.md +0 -67
- package/dist/skills/phase/smoke-test/SKILL.md +0 -80
- package/dist/skills/phase/state-diagram/SKILL.md +0 -38
- package/dist/skills/phase/task/SKILL.md +0 -19
- package/dist/skills/phase/technical-design/SKILL.md +0 -75
- package/dist/skills/phase/technical-design-verification/SKILL.md +0 -43
- package/dist/skills/phase/test-cases-analysis/SKILL.md +0 -88
- package/dist/skills/phase/user-psychology/SKILL.md +0 -135
- package/dist/skills/phase/user-stories-analysis/SKILL.md +0 -118
- package/dist/supabase/client.d.ts +0 -34
- package/dist/supabase/client.js +0 -123
- package/dist/system/session-manager.d.ts +0 -67
- package/dist/system/session-manager.js +0 -300
- package/dist/system/sleep-notification.d.ts +0 -15
- package/dist/system/sleep-notification.js +0 -108
- package/dist/system/sleep-prevention.d.ts +0 -20
- package/dist/system/sleep-prevention.js +0 -112
- package/dist/tools/bootstrap.d.ts +0 -45
- package/dist/tools/bootstrap.js +0 -50
- package/dist/types/external-sources.d.ts +0 -22
- package/dist/types/external-sources.js +0 -23
- package/dist/types/index.d.ts +0 -206
- package/dist/types/index.js +0 -1
- package/dist/types/issues.d.ts +0 -37
- package/dist/types/issues.js +0 -1
- package/dist/types/llm-responses.d.ts +0 -114
- package/dist/types/llm-responses.js +0 -9
- package/dist/types/pipeline.d.ts +0 -28
- package/dist/types/pipeline.js +0 -4
- package/dist/updater/auto-updater.d.ts +0 -39
- package/dist/updater/auto-updater.js +0 -134
- package/dist/utils/conflict-resolver.d.ts +0 -49
- package/dist/utils/conflict-resolver.js +0 -201
- package/dist/utils/formatters.d.ts +0 -42
- package/dist/utils/formatters.js +0 -166
- package/dist/utils/git-branch-manager-async.d.ts +0 -127
- package/dist/utils/git-branch-manager-async.js +0 -425
- package/dist/utils/git-branch-manager.d.ts +0 -160
- package/dist/utils/git-branch-manager.js +0 -613
- package/dist/utils/git-push.d.ts +0 -43
- package/dist/utils/git-push.js +0 -136
- package/dist/utils/github-repo-info.d.ts +0 -26
- package/dist/utils/github-repo-info.js +0 -45
- package/dist/utils/image-downloader.d.ts +0 -32
- package/dist/utils/image-downloader.js +0 -152
- package/dist/utils/issue-phase-cli.d.ts +0 -26
- package/dist/utils/issue-phase-cli.js +0 -44
- package/dist/utils/json-extract.d.ts +0 -6
- package/dist/utils/json-extract.js +0 -44
- package/dist/utils/json-extractor.d.ts +0 -27
- package/dist/utils/json-extractor.js +0 -102
- package/dist/utils/logger.d.ts +0 -35
- package/dist/utils/logger.js +0 -167
- package/dist/utils/pipeline-logger.d.ts +0 -8
- package/dist/utils/pipeline-logger.js +0 -38
- package/dist/utils/validation.d.ts +0 -68
- package/dist/utils/validation.js +0 -229
- package/dist/utils/workflow-utils.d.ts +0 -22
- package/dist/utils/workflow-utils.js +0 -48
- package/dist/workspace/session-workspace.d.ts +0 -43
- package/dist/workspace/session-workspace.js +0 -90
- package/dist/workspace/workspace-manager.d.ts +0 -105
- package/dist/workspace/workspace-manager.js +0 -280
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Prompts for the features phase.
|
|
3
|
-
*
|
|
4
|
-
* Agent's job: explore the cloned repositories of a product (one or several
|
|
5
|
-
* — multi-repo products are cloned side by side as subdirectories of the
|
|
6
|
-
* working directory) and catalogue the user-facing FEATURES the product
|
|
7
|
-
* delivers. A feature is the WHAT from the user's perspective ("Export
|
|
8
|
-
* board as PDF", "Slack notifications", "SSO login"), not the HOW (that is
|
|
9
|
-
* what recipes capture) and not a tech-stack inventory.
|
|
10
|
-
*
|
|
11
|
-
* The agent is fed the product's existing features (manual + previously
|
|
12
|
-
* discovered) and must, for each feature it identifies, pick one of:
|
|
13
|
-
* - update_feature — an existing entry matches; enrich it with evidence /
|
|
14
|
-
* repos / corrected status
|
|
15
|
-
* - create_feature — nothing matches; new entry (source = 'agent')
|
|
16
|
-
* - remove_feature — a previously agent-discovered entry can no longer be
|
|
17
|
-
* corroborated in the code (manual entries are never
|
|
18
|
-
* removed)
|
|
19
|
-
*
|
|
20
|
-
* Submission is via MCP tool calls only — no fenced JSON.
|
|
21
|
-
*/
|
|
22
|
-
import type { FeatureSummary } from './types.js';
|
|
23
|
-
export interface FeaturesPromptContext {
|
|
24
|
-
productName: string;
|
|
25
|
-
productDescription?: string;
|
|
26
|
-
guidance?: string;
|
|
27
|
-
existingFeatures: FeatureSummary[];
|
|
28
|
-
/** Multi-repo note from describeRepoScope(); empty for single-repo. */
|
|
29
|
-
repoScopeNote: string;
|
|
30
|
-
}
|
|
31
|
-
export declare function createFeaturesSystemPrompt(): string;
|
|
32
|
-
export declare function createFeaturesUserPrompt(ctx: FeaturesPromptContext): string;
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Prompts for the features phase.
|
|
3
|
-
*
|
|
4
|
-
* Agent's job: explore the cloned repositories of a product (one or several
|
|
5
|
-
* — multi-repo products are cloned side by side as subdirectories of the
|
|
6
|
-
* working directory) and catalogue the user-facing FEATURES the product
|
|
7
|
-
* delivers. A feature is the WHAT from the user's perspective ("Export
|
|
8
|
-
* board as PDF", "Slack notifications", "SSO login"), not the HOW (that is
|
|
9
|
-
* what recipes capture) and not a tech-stack inventory.
|
|
10
|
-
*
|
|
11
|
-
* The agent is fed the product's existing features (manual + previously
|
|
12
|
-
* discovered) and must, for each feature it identifies, pick one of:
|
|
13
|
-
* - update_feature — an existing entry matches; enrich it with evidence /
|
|
14
|
-
* repos / corrected status
|
|
15
|
-
* - create_feature — nothing matches; new entry (source = 'agent')
|
|
16
|
-
* - remove_feature — a previously agent-discovered entry can no longer be
|
|
17
|
-
* corroborated in the code (manual entries are never
|
|
18
|
-
* removed)
|
|
19
|
-
*
|
|
20
|
-
* Submission is via MCP tool calls only — no fenced JSON.
|
|
21
|
-
*/
|
|
22
|
-
export function createFeaturesSystemPrompt() {
|
|
23
|
-
return `You are a senior product manager with a staff-engineer's eye, cataloguing the FEATURES a product delivers by reading its source code.
|
|
24
|
-
|
|
25
|
-
The current working directory contains a fresh clone of the product's repository (or, for multi-repo products, one subdirectory per repository). Use Glob/Grep/Read (and Bash for git log when helpful) to explore before writing anything.
|
|
26
|
-
|
|
27
|
-
## What is a "feature"?
|
|
28
|
-
|
|
29
|
-
A feature is ONE user-facing capability, named from the user's point of view. It answers "what can a user do with this product?", not "how is it built?".
|
|
30
|
-
|
|
31
|
-
Good feature names: "Export board as PDF", "Slack notifications", "Single sign-on (SAML)", "Real-time collaborative editing", "Usage-based billing".
|
|
32
|
-
Bad feature names: "React frontend", "Postgres database", "REST API", "Utils module" (implementation details, not user value).
|
|
33
|
-
|
|
34
|
-
Keep names short (a few words, Title-style), and the description 1–3 sentences in plain product language: what the user gets, plus any notable scope/limits you can see in the code.
|
|
35
|
-
|
|
36
|
-
## Output protocol
|
|
37
|
-
|
|
38
|
-
The MCP server exposes these tools — use them, do NOT paste content as fenced code:
|
|
39
|
-
|
|
40
|
-
1. \`create_feature({ name, description, status?, repos, evidence })\` — register a feature that is not in the existing list. \`status\` defaults to "shipped"; use "in_development" when the code is clearly behind an unfinished flag or half-wired.
|
|
41
|
-
|
|
42
|
-
2. \`update_feature({ feature_id, description?, status?, repos?, evidence? })\` — enrich an existing entry you corroborated in the code. Omit fields you don't want to change.
|
|
43
|
-
|
|
44
|
-
3. \`remove_feature({ feature_id })\` — drop a previously agent-discovered entry you could NOT corroborate anywhere in the code. Only entries marked source=agent can be removed; manually defined features are never deleted by a scan.
|
|
45
|
-
|
|
46
|
-
Call exactly one of create / update for each feature you identify, then remove for any stale agent entries. When you are done, end your turn — no summary message, no JSON dump.
|
|
47
|
-
|
|
48
|
-
## Rules
|
|
49
|
-
|
|
50
|
-
- \`repos\` is the list of repository full names ("owner/repo") where the feature is implemented — only use names from the repository list you were given.
|
|
51
|
-
- \`evidence\` is one short plain-text paragraph pointing at where the feature lives: key file paths, routes, entry points. For multi-repo products prefix paths with the repo subdirectory.
|
|
52
|
-
- Aim for the level of granularity a changelog or pricing page would use. Don't list every API endpoint as its own feature, and don't collapse the whole product into one feature. Most products have 5–30 features.
|
|
53
|
-
- Don't invent features. If you can't point at concrete code, don't record it.
|
|
54
|
-
- Existing entries: match by meaning, not exact name. If an existing feature (manual or agent) covers what you found, \`update_feature\` it instead of creating a near-duplicate.
|
|
55
|
-
- Manual entries (source=manual) are the user's own definitions: never rewrite their intent. You may add \`evidence\` / \`repos\`, correct an obviously wrong \`status\`, or fill in a missing description — nothing more.`;
|
|
56
|
-
}
|
|
57
|
-
export function createFeaturesUserPrompt(ctx) {
|
|
58
|
-
const lines = [];
|
|
59
|
-
lines.push(`# Product: ${ctx.productName}`);
|
|
60
|
-
if (ctx.productDescription) {
|
|
61
|
-
lines.push('');
|
|
62
|
-
lines.push('## Description');
|
|
63
|
-
lines.push(ctx.productDescription);
|
|
64
|
-
}
|
|
65
|
-
if (ctx.repoScopeNote) {
|
|
66
|
-
lines.push('');
|
|
67
|
-
lines.push('## Repositories');
|
|
68
|
-
lines.push(ctx.repoScopeNote);
|
|
69
|
-
}
|
|
70
|
-
if (ctx.guidance && ctx.guidance.trim()) {
|
|
71
|
-
lines.push('');
|
|
72
|
-
lines.push('## Reviewer guidance (focus or exclusions)');
|
|
73
|
-
lines.push(ctx.guidance.trim());
|
|
74
|
-
}
|
|
75
|
-
lines.push('');
|
|
76
|
-
lines.push('## Existing features for this product');
|
|
77
|
-
if (ctx.existingFeatures.length === 0) {
|
|
78
|
-
lines.push('(none — every feature you identify will be a `create_feature`.)');
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
lines.push('Prefer `update_feature` over `create_feature` when one of these matches what you found. Entries marked source=manual were written by a human — enrich, never rewrite.');
|
|
82
|
-
lines.push('');
|
|
83
|
-
for (const f of ctx.existingFeatures) {
|
|
84
|
-
const desc = f.description ? ` — ${f.description}` : '';
|
|
85
|
-
lines.push(`- id=${f.id} "${f.name}" [status=${f.status}, source=${f.source}]${desc}`);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
lines.push('');
|
|
89
|
-
lines.push('## Task');
|
|
90
|
-
lines.push('Explore the cloned repositories, identify every user-facing feature the product delivers, and for each call exactly one of `create_feature` / `update_feature`. Then call `remove_feature` for any previously agent-discovered entry you could not corroborate. End your turn when done.');
|
|
91
|
-
return lines.join('\n');
|
|
92
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shapes the features MCP tools accept and return. The Zod schemas live in
|
|
3
|
-
* mcp-server.ts; these plain TS types are what the rest of the phase
|
|
4
|
-
* (orchestrator, persistence helpers, tests) consumes so they don't have
|
|
5
|
-
* to inflate Zod into their dependency graph.
|
|
6
|
-
*/
|
|
7
|
-
export type FeatureStatus = 'planned' | 'in_development' | 'shipped' | 'deprecated';
|
|
8
|
-
export type FeatureSource = 'manual' | 'agent';
|
|
9
|
-
export interface FeatureSummary {
|
|
10
|
-
id: string;
|
|
11
|
-
name: string;
|
|
12
|
-
description: string | null;
|
|
13
|
-
status: FeatureStatus;
|
|
14
|
-
source: FeatureSource;
|
|
15
|
-
}
|
|
16
|
-
export interface CreateFeatureArgs {
|
|
17
|
-
name: string;
|
|
18
|
-
description: string;
|
|
19
|
-
status?: FeatureStatus;
|
|
20
|
-
repos: string[];
|
|
21
|
-
evidence: string;
|
|
22
|
-
}
|
|
23
|
-
export interface UpdateFeatureArgs {
|
|
24
|
-
featureId: string;
|
|
25
|
-
description?: string;
|
|
26
|
-
status?: FeatureStatus;
|
|
27
|
-
repos?: string[];
|
|
28
|
-
evidence?: string;
|
|
29
|
-
}
|
|
30
|
-
export declare const FEATURE_NAME_MAX = 200;
|
|
31
|
-
export declare const FEATURE_DESCRIPTION_MAX = 10000;
|
|
32
|
-
export declare const FEATURE_EVIDENCE_MAX = 4000;
|
|
33
|
-
export declare const FEATURE_REPOS_MAX = 20;
|
|
34
|
-
export declare const FEATURE_REPO_NAME_MAX = 200;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shapes the features MCP tools accept and return. The Zod schemas live in
|
|
3
|
-
* mcp-server.ts; these plain TS types are what the rest of the phase
|
|
4
|
-
* (orchestrator, persistence helpers, tests) consumes so they don't have
|
|
5
|
-
* to inflate Zod into their dependency graph.
|
|
6
|
-
*/
|
|
7
|
-
// Defensive caps mirroring the DB CHECK constraints from
|
|
8
|
-
// 20260613000000_create_product_features.sql. Keeping the limits here lets
|
|
9
|
-
// the MCP tool reject oversized output with an actionable error message
|
|
10
|
-
// instead of getting a Postgres constraint violation.
|
|
11
|
-
export const FEATURE_NAME_MAX = 200;
|
|
12
|
-
export const FEATURE_DESCRIPTION_MAX = 10_000;
|
|
13
|
-
export const FEATURE_EVIDENCE_MAX = 4000;
|
|
14
|
-
export const FEATURE_REPOS_MAX = 20;
|
|
15
|
-
export const FEATURE_REPO_NAME_MAX = 200;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function executeFinancingDeckQuery(userPrompt: string, systemPrompt: string, verbose?: boolean): Promise<Record<string, unknown> | null>;
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
import { query } from '@anthropic-ai/claude-agent-sdk';
|
|
2
|
-
import { DEFAULT_MODEL } from '../../constants.js';
|
|
3
|
-
import { logDebug, logError, logInfo } from '../../utils/logger.js';
|
|
4
|
-
/**
|
|
5
|
-
* Pulls the JSON contract block out of Claude's final assistant message.
|
|
6
|
-
* Accepts either a fenced ```json block or a bare JSON object — the
|
|
7
|
-
* fenced form is what the contract asks for.
|
|
8
|
-
*/
|
|
9
|
-
function parseDeckResult(responseText) {
|
|
10
|
-
try {
|
|
11
|
-
const jsonBlockMatch = responseText.match(/```json\s*\n([\s\S]*?)\n\s*```/);
|
|
12
|
-
const jsonText = jsonBlockMatch
|
|
13
|
-
? jsonBlockMatch[1]
|
|
14
|
-
: (responseText.match(/\{[\s\S]*\}/) ?? [responseText])[0];
|
|
15
|
-
const parsed = JSON.parse(jsonText);
|
|
16
|
-
if (parsed && Array.isArray(parsed.deck_slides)) {
|
|
17
|
-
return { deck: parsed };
|
|
18
|
-
}
|
|
19
|
-
return { error: 'Missing or empty deck_slides array' };
|
|
20
|
-
}
|
|
21
|
-
catch (error) {
|
|
22
|
-
return {
|
|
23
|
-
error: `JSON parsing failed: ${error instanceof Error ? error.message : String(error)}`,
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
function userMessage(content) {
|
|
28
|
-
return {
|
|
29
|
-
type: 'user',
|
|
30
|
-
message: { role: 'user', content },
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
// eslint-disable-next-line @typescript-eslint/require-await -- async generator required by SDK interface
|
|
34
|
-
async function* prompt(deckPrompt) {
|
|
35
|
-
yield userMessage(deckPrompt);
|
|
36
|
-
}
|
|
37
|
-
export async function executeFinancingDeckQuery(userPrompt, systemPrompt, verbose) {
|
|
38
|
-
let lastAssistantResponse = '';
|
|
39
|
-
let structured = null;
|
|
40
|
-
let turnCount = 0;
|
|
41
|
-
logInfo('Connecting to AI agent...');
|
|
42
|
-
for await (const message of query({
|
|
43
|
-
prompt: prompt(userPrompt),
|
|
44
|
-
options: {
|
|
45
|
-
systemPrompt: {
|
|
46
|
-
type: 'preset',
|
|
47
|
-
preset: 'claude_code',
|
|
48
|
-
append: systemPrompt,
|
|
49
|
-
},
|
|
50
|
-
model: DEFAULT_MODEL,
|
|
51
|
-
maxTurns: 40,
|
|
52
|
-
permissionMode: 'bypassPermissions',
|
|
53
|
-
},
|
|
54
|
-
})) {
|
|
55
|
-
if (verbose) {
|
|
56
|
-
logInfo(`Received message type: ${message.type}`);
|
|
57
|
-
}
|
|
58
|
-
if (message.type === 'assistant' && message.message?.content) {
|
|
59
|
-
turnCount++;
|
|
60
|
-
for (const content of message.message.content) {
|
|
61
|
-
if (content.type === 'text') {
|
|
62
|
-
lastAssistantResponse += `${content.text}\n`;
|
|
63
|
-
logDebug(`${content.text}`, verbose);
|
|
64
|
-
}
|
|
65
|
-
else if (content.type === 'tool_use') {
|
|
66
|
-
const input = (content.input ?? {});
|
|
67
|
-
const desc = input.description ?? input.command ?? 'Running...';
|
|
68
|
-
logInfo(`[Turn ${turnCount}] ${content.name}: ${typeof desc === 'string' ? desc.slice(0, 120) : 'Running...'}`);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
if (message.type === 'result') {
|
|
73
|
-
if (message.subtype === 'success') {
|
|
74
|
-
logInfo(`\nFinancing deck draft completed after ${turnCount} turns, parsing JSON contract...`);
|
|
75
|
-
const responseText = message.result || lastAssistantResponse;
|
|
76
|
-
const parsed = parseDeckResult(responseText);
|
|
77
|
-
if (parsed.error) {
|
|
78
|
-
logError(`Failed to parse deck JSON: ${parsed.error}`);
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
structured = parsed.deck;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
else {
|
|
85
|
-
logError(`\nDeck generation incomplete: ${message.subtype}`);
|
|
86
|
-
if (lastAssistantResponse) {
|
|
87
|
-
const parsed = parseDeckResult(lastAssistantResponse);
|
|
88
|
-
if (!parsed.error) {
|
|
89
|
-
structured = parsed.deck;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
return structured;
|
|
96
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { type FinancingContext, type FinancingStage } from '../../api/financing.js';
|
|
2
|
-
import { type ProductInfo } from '../../api/products.js';
|
|
3
|
-
export interface FinancingDeckContext {
|
|
4
|
-
product: ProductInfo;
|
|
5
|
-
financing: FinancingContext;
|
|
6
|
-
contextSummary: string;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Pre-fetch product + financing context so we can include a compact
|
|
10
|
-
* summary in the user prompt. The agent can still call MCP tools for
|
|
11
|
-
* the full data, but having a baseline summary speeds the first turn.
|
|
12
|
-
*/
|
|
13
|
-
export declare function prepareFinancingDeckContext(productId: string, targetStage: FinancingStage, verbose?: boolean): Promise<FinancingDeckContext>;
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { getFinancingContext, } from '../../api/financing.js';
|
|
2
|
-
import { getProduct } from '../../api/products.js';
|
|
3
|
-
import { logError, logInfo } from '../../utils/logger.js';
|
|
4
|
-
/**
|
|
5
|
-
* Pre-fetch product + financing context so we can include a compact
|
|
6
|
-
* summary in the user prompt. The agent can still call MCP tools for
|
|
7
|
-
* the full data, but having a baseline summary speeds the first turn.
|
|
8
|
-
*/
|
|
9
|
-
export async function prepareFinancingDeckContext(productId, targetStage, verbose) {
|
|
10
|
-
if (verbose) {
|
|
11
|
-
logInfo(`Fetching financing deck context for product=${productId} stage=${targetStage}`);
|
|
12
|
-
}
|
|
13
|
-
let product;
|
|
14
|
-
let financing;
|
|
15
|
-
try {
|
|
16
|
-
;
|
|
17
|
-
[product, financing] = await Promise.all([
|
|
18
|
-
getProduct(productId, verbose),
|
|
19
|
-
getFinancingContext(productId, targetStage, verbose),
|
|
20
|
-
]);
|
|
21
|
-
}
|
|
22
|
-
catch (error) {
|
|
23
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
24
|
-
logError(`Failed to fetch financing context: ${errorMessage}`);
|
|
25
|
-
throw new Error(`Context fetch failed: ${errorMessage}`);
|
|
26
|
-
}
|
|
27
|
-
const issuesCount = product.issues?.length ?? 0;
|
|
28
|
-
const profile = financing.profile ?? {};
|
|
29
|
-
const metrics = financing.metrics ?? {};
|
|
30
|
-
const contextSummary = [
|
|
31
|
-
`## Product`,
|
|
32
|
-
`Name: ${product.name}`,
|
|
33
|
-
`Description: ${product.description ?? '(none)'}`,
|
|
34
|
-
`Issues tracked: ${issuesCount}`,
|
|
35
|
-
``,
|
|
36
|
-
`## Founder context (self-reported)`,
|
|
37
|
-
`Current stage: ${profile.current_stage ?? 'not provided'}`,
|
|
38
|
-
`Target stage: ${targetStage}`,
|
|
39
|
-
`Target round size USD: ${profile.target_amount_usd ?? 'not provided'}`,
|
|
40
|
-
`Target valuation USD: ${profile.target_valuation_usd ?? 'not provided'}`,
|
|
41
|
-
`Use of funds: ${profile.use_of_funds ?? 'not provided'}`,
|
|
42
|
-
``,
|
|
43
|
-
`## Self-reported metrics`,
|
|
44
|
-
formatMetric(metrics, 'arr_usd', 'ARR (USD)'),
|
|
45
|
-
formatMetric(metrics, 'mrr_usd', 'MRR (USD)'),
|
|
46
|
-
formatMetric(metrics, 'paying_customer_count', 'Paying customers'),
|
|
47
|
-
formatMetric(metrics, 'mom_growth_rate', 'MoM growth (fraction)'),
|
|
48
|
-
formatMetric(metrics, 'yoy_growth_rate', 'YoY growth (fraction)'),
|
|
49
|
-
formatMetric(metrics, 'net_revenue_retention', 'NRR (fraction)'),
|
|
50
|
-
formatMetric(metrics, 'gross_revenue_retention', 'GRR (fraction)'),
|
|
51
|
-
formatMetric(metrics, 'cac_usd', 'CAC (USD)'),
|
|
52
|
-
formatMetric(metrics, 'ltv_usd', 'LTV (USD)'),
|
|
53
|
-
formatMetric(metrics, 'cac_payback_months', 'CAC payback (months)'),
|
|
54
|
-
formatMetric(metrics, 'gross_margin', 'Gross margin (fraction)'),
|
|
55
|
-
formatMetric(metrics, 'monthly_burn_usd', 'Monthly burn (USD)'),
|
|
56
|
-
formatMetric(metrics, 'cash_in_bank_usd', 'Cash in bank (USD)'),
|
|
57
|
-
formatMetric(metrics, 'runway_months', 'Runway (months)'),
|
|
58
|
-
formatMetric(metrics, 'burn_multiple', 'Burn Multiple'),
|
|
59
|
-
formatMetric(metrics, 'fte_count', 'Team FTEs'),
|
|
60
|
-
``,
|
|
61
|
-
`## Industry benchmarks`,
|
|
62
|
-
`Not bundled — use WebSearch to fetch current ${targetStage} benchmarks for this product's vertical before judging any metric. Cite source URLs in stage_reasoning and red flags.`,
|
|
63
|
-
].join('\n');
|
|
64
|
-
return { product, financing, contextSummary };
|
|
65
|
-
}
|
|
66
|
-
function formatMetric(metrics, key, label) {
|
|
67
|
-
const v = metrics[key];
|
|
68
|
-
return `- ${label}: ${v === null || v === undefined ? 'not provided' : String(v)}`;
|
|
69
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { type FinancingStage } from '../../api/financing.js';
|
|
2
|
-
export interface FinancingDeckOptions {
|
|
3
|
-
productId: string;
|
|
4
|
-
targetStage: FinancingStage;
|
|
5
|
-
verbose?: boolean;
|
|
6
|
-
}
|
|
7
|
-
export interface FinancingDeckResult {
|
|
8
|
-
productId: string;
|
|
9
|
-
status: 'success' | 'error';
|
|
10
|
-
summary: string;
|
|
11
|
-
analysisId?: string;
|
|
12
|
-
slideCount: number;
|
|
13
|
-
redFlagCount: number;
|
|
14
|
-
}
|
|
15
|
-
export declare function generateFinancingDeck(options: FinancingDeckOptions): Promise<FinancingDeckResult>;
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { saveFinancingAnalysis, } from '../../api/financing.js';
|
|
2
|
-
import { logError, logInfo, logSuccess, logWarning } from '../../utils/logger.js';
|
|
3
|
-
import { executeFinancingDeckQuery } from './agent.js';
|
|
4
|
-
import { prepareFinancingDeckContext } from './context.js';
|
|
5
|
-
import { createFinancingDeckSystemPrompt, createFinancingDeckUserPrompt, } from './prompts.js';
|
|
6
|
-
const REQUIRED_SLIDE_IDS = [
|
|
7
|
-
'problem',
|
|
8
|
-
'solution',
|
|
9
|
-
'market',
|
|
10
|
-
'product',
|
|
11
|
-
'traction',
|
|
12
|
-
'business_model',
|
|
13
|
-
'go_to_market',
|
|
14
|
-
'competition',
|
|
15
|
-
'team',
|
|
16
|
-
'financials',
|
|
17
|
-
'ask',
|
|
18
|
-
];
|
|
19
|
-
export async function generateFinancingDeck(options) {
|
|
20
|
-
const { productId, targetStage, verbose } = options;
|
|
21
|
-
if (verbose) {
|
|
22
|
-
logInfo(`Starting financing deck generation: product=${productId} stage=${targetStage}`);
|
|
23
|
-
}
|
|
24
|
-
try {
|
|
25
|
-
const { contextSummary } = await prepareFinancingDeckContext(productId, targetStage, verbose);
|
|
26
|
-
const systemPrompt = createFinancingDeckSystemPrompt(targetStage);
|
|
27
|
-
const userPrompt = createFinancingDeckUserPrompt(productId, targetStage, contextSummary);
|
|
28
|
-
if (verbose) {
|
|
29
|
-
logInfo('Starting AI query for financing deck...');
|
|
30
|
-
}
|
|
31
|
-
const structured = await executeFinancingDeckQuery(userPrompt, systemPrompt, verbose);
|
|
32
|
-
if (!structured) {
|
|
33
|
-
throw new Error('No deck JSON received from agent');
|
|
34
|
-
}
|
|
35
|
-
const deckSlides = (structured.deck_slides ?? []);
|
|
36
|
-
const redFlags = (structured.red_flags ?? []);
|
|
37
|
-
const stageReasoning = structured.stage_reasoning ?? '';
|
|
38
|
-
const sourceSummary = structured.source_summary ?? {};
|
|
39
|
-
// Sanity-check the deck shape — the agent might short-circuit. If so we
|
|
40
|
-
// still return whatever we got, but warn loudly.
|
|
41
|
-
const missing = REQUIRED_SLIDE_IDS.filter((id) => !deckSlides.some((s) => s.slide_id === id));
|
|
42
|
-
if (missing.length > 0) {
|
|
43
|
-
logWarning(`Deck is missing required slides: ${missing.join(', ')} — saving anyway`);
|
|
44
|
-
}
|
|
45
|
-
// The agent should have already called save_financing_analysis via MCP.
|
|
46
|
-
// We re-save here to GUARANTEE persistence, even if the agent forgot the
|
|
47
|
-
// tool call but did emit a valid JSON contract. Idempotent at the
|
|
48
|
-
// analyses-history level (each save creates a new row).
|
|
49
|
-
let analysisId;
|
|
50
|
-
if (deckSlides.length > 0) {
|
|
51
|
-
try {
|
|
52
|
-
const saved = await saveFinancingAnalysis({
|
|
53
|
-
product_id: productId,
|
|
54
|
-
target_stage: targetStage,
|
|
55
|
-
deck_slides: deckSlides,
|
|
56
|
-
stage_reasoning: stageReasoning,
|
|
57
|
-
red_flags: redFlags,
|
|
58
|
-
source_summary: sourceSummary,
|
|
59
|
-
}, verbose);
|
|
60
|
-
analysisId = saved.analysis_id;
|
|
61
|
-
}
|
|
62
|
-
catch (saveError) {
|
|
63
|
-
// Agent likely already saved it — log and continue
|
|
64
|
-
if (verbose) {
|
|
65
|
-
logWarning(`Re-save skipped (agent likely already persisted): ${saveError instanceof Error ? saveError.message : String(saveError)}`);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
logSuccess(`Financing deck completed: ${deckSlides.length} slides, ${redFlags.length} red flags`);
|
|
70
|
-
return {
|
|
71
|
-
productId,
|
|
72
|
-
status: 'success',
|
|
73
|
-
summary: stageReasoning || 'Deck draft persisted',
|
|
74
|
-
analysisId,
|
|
75
|
-
slideCount: deckSlides.length,
|
|
76
|
-
redFlagCount: redFlags.length,
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
catch (error) {
|
|
80
|
-
logError(`Financing deck generation failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
81
|
-
return {
|
|
82
|
-
productId,
|
|
83
|
-
status: 'error',
|
|
84
|
-
summary: `Generation failed: ${error instanceof Error ? error.message : String(error)}`,
|
|
85
|
-
slideCount: 0,
|
|
86
|
-
redFlagCount: 0,
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
const STAGE_LABELS = {
|
|
2
|
-
pre_seed: 'Pre-Seed',
|
|
3
|
-
seed: 'Seed',
|
|
4
|
-
series_a: 'Series A',
|
|
5
|
-
series_b: 'Series B',
|
|
6
|
-
series_c: 'Series C',
|
|
7
|
-
growth: 'Growth',
|
|
8
|
-
};
|
|
9
|
-
const OUTPUT_CONTRACT = `## Output contract
|
|
10
|
-
|
|
11
|
-
Return ONE fenced JSON block with EXACTLY this shape — no prose around it:
|
|
12
|
-
|
|
13
|
-
\`\`\`json
|
|
14
|
-
{
|
|
15
|
-
"deck_slides": [
|
|
16
|
-
{"slide_id": "problem", "title": "...", "body": "...", "ai_rationale": "..."},
|
|
17
|
-
{"slide_id": "solution", "title": "...", "body": "...", "ai_rationale": "..."},
|
|
18
|
-
{"slide_id": "market", "title": "...", "body": "...", "ai_rationale": "..."},
|
|
19
|
-
{"slide_id": "product", "title": "...", "body": "...", "ai_rationale": "..."},
|
|
20
|
-
{"slide_id": "traction", "title": "...", "body": "...", "ai_rationale": "..."},
|
|
21
|
-
{"slide_id": "business_model","title": "...", "body": "...", "ai_rationale": "..."},
|
|
22
|
-
{"slide_id": "go_to_market", "title": "...", "body": "...", "ai_rationale": "..."},
|
|
23
|
-
{"slide_id": "competition", "title": "...", "body": "...", "ai_rationale": "..."},
|
|
24
|
-
{"slide_id": "team", "title": "...", "body": "...", "ai_rationale": "..."},
|
|
25
|
-
{"slide_id": "financials", "title": "...", "body": "...", "ai_rationale": "..."},
|
|
26
|
-
{"slide_id": "ask", "title": "...", "body": "...", "ai_rationale": "..."}
|
|
27
|
-
],
|
|
28
|
-
"stage_reasoning": "2-4 sentence honest read on whether the data supports the target stage.",
|
|
29
|
-
"red_flags": [
|
|
30
|
-
{"metric": "...", "severity": "low|medium|high", "explanation": "...", "fix": "..."}
|
|
31
|
-
],
|
|
32
|
-
"source_summary": {"issues": 0, "feedbacks": 0, "has_metrics": true}
|
|
33
|
-
}
|
|
34
|
-
\`\`\`
|
|
35
|
-
|
|
36
|
-
All 11 slide_ids are required in this exact order. body should be 80–150 words.`;
|
|
37
|
-
export function createFinancingDeckSystemPrompt(targetStage) {
|
|
38
|
-
const stageLabel = STAGE_LABELS[targetStage] ?? targetStage;
|
|
39
|
-
return `You are a senior fundraising advisor who has helped 100+ SaaS founders raise from Pre-Seed through Series C. You write the way investors at Sequoia, a16z, Bessemer, and YC speak: blunt, specific, evidence-driven, no fluff.
|
|
40
|
-
|
|
41
|
-
Your job: draft a complete ${stageLabel} pitch deck for a product, surface red flags an experienced investor would call out within 90 seconds, and write a short investor-style read on the founder's stage readiness.
|
|
42
|
-
|
|
43
|
-
You will be given the product context plus the founder's self-reported financial metrics. Use the MCP tools when you need additional product data — do NOT fabricate.
|
|
44
|
-
|
|
45
|
-
## Hard rules
|
|
46
|
-
|
|
47
|
-
- **Industry benchmarks are NOT shipped with the context.** Before judging any metric against a stage standard, you MUST call \`WebSearch\` to look up current ${stageLabel} benchmarks for the product's vertical (B2B SaaS, vertical SaaS, AI infra, marketplace, etc. — infer from the product description). Cite at least one source URL in \`stage_reasoning\` and in each red flag's \`explanation\`. If WebSearch returns nothing usable, say "no recent benchmark found for X" rather than inventing a number.
|
|
48
|
-
- NEVER invent a financial metric. If the founder did not provide a number, write "not provided" in the relevant slide and add it as a red flag.
|
|
49
|
-
- Quote at least one real customer feedback line (verbatim or close paraphrase) somewhere in the Problem or Traction slide if any feedback exists in the gathered context.
|
|
50
|
-
- Match tone to stage:
|
|
51
|
-
- **pre_seed / seed**: lead with founder insight, problem, early signal. Traction can be qualitative.
|
|
52
|
-
- **series_a**: traction slide is the centerpiece — must reference actual ARR / growth / customer numbers from the gathered metrics. If those are missing, say so explicitly in stage_reasoning rather than inventing.
|
|
53
|
-
- **series_b+**: Burn Multiple, Rule of 40, NRR, CAC Payback are mandatory. Flag any that are missing as red flags.
|
|
54
|
-
- Each slide body is roughly 80–150 words. No marketing fluff. No emoji.
|
|
55
|
-
- Red flags should be honest — if burn multiple is bad vs. the benchmark you found, say so with the source; if retention is unknown, say "missing — investors will ask".
|
|
56
|
-
|
|
57
|
-
## Tools available
|
|
58
|
-
|
|
59
|
-
- \`WebSearch\` / \`WebFetch\` — REQUIRED for fetching current ${stageLabel} industry benchmarks before judging metrics. Prefer recent (this year or last) sources: SaaS Capital, OpenView, Bessemer State of the Cloud, ICONIQ Growth, Carta data.
|
|
60
|
-
- \`mcp__edsger__get_product\` — product name + description
|
|
61
|
-
- \`mcp__edsger__list_issues\` — what the team is shipping
|
|
62
|
-
- \`mcp__edsger__list_feedbacks\` — raw customer voice
|
|
63
|
-
- \`mcp__edsger__get_financing_context\` — founder profile + self-reported metrics
|
|
64
|
-
- \`mcp__edsger__save_financing_analysis\` — call this LAST to persist the deck
|
|
65
|
-
|
|
66
|
-
## Workflow
|
|
67
|
-
|
|
68
|
-
1. Call \`get_product\`, \`list_issues\`, \`list_feedbacks\`, and \`get_financing_context\` (in any order or in parallel) to gather data.
|
|
69
|
-
2. Based on the product description, identify the vertical (B2B SaaS / vertical SaaS / AI infra / dev tools / marketplace / etc.) and call \`WebSearch\` 1–3 times to fetch current ${stageLabel} benchmarks for that vertical (ARR, growth, NRR, burn multiple, CAC payback as applicable). Save the source URLs.
|
|
70
|
-
3. Draft 11 structured slides (ids, in order: problem, solution, market, product, traction, business_model, go_to_market, competition, team, financials, ask).
|
|
71
|
-
4. Identify 0–5 red flags by comparing the founder's metrics against the benchmarks you fetched. Each red flag's \`explanation\` must include the source URL.
|
|
72
|
-
5. Write a 2–4 sentence \`stage_reasoning\` paragraph that names the benchmark sources you used.
|
|
73
|
-
6. Call \`save_financing_analysis\` with all of the above (this writes to financing_ai_analyses; the desktop UI watches that table).
|
|
74
|
-
7. Then output the JSON described in the output contract below as your final assistant message — the orchestrator parses this for confirmation.
|
|
75
|
-
|
|
76
|
-
${OUTPUT_CONTRACT}`;
|
|
77
|
-
}
|
|
78
|
-
export function createFinancingDeckUserPrompt(productId, targetStage, contextSummary) {
|
|
79
|
-
const stageLabel = STAGE_LABELS[targetStage] ?? targetStage;
|
|
80
|
-
return `Generate a complete ${stageLabel} pitch deck for product \`${productId}\`.
|
|
81
|
-
|
|
82
|
-
${contextSummary}
|
|
83
|
-
|
|
84
|
-
Follow the workflow in your system instructions:
|
|
85
|
-
1. Use the MCP tools to gather any additional data you need (issues, feedbacks, financing context).
|
|
86
|
-
2. WebSearch current ${stageLabel} benchmarks for this product's vertical and save the source URLs.
|
|
87
|
-
3. Draft the 11 slides.
|
|
88
|
-
4. Identify red flags vs the benchmarks you fetched (cite sources).
|
|
89
|
-
5. Write stage_reasoning naming those sources.
|
|
90
|
-
6. Call \`save_financing_analysis\` to persist.
|
|
91
|
-
7. Then return the JSON output described in the contract.
|
|
92
|
-
|
|
93
|
-
Begin.`;
|
|
94
|
-
}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Find-architecture phase: clone the product's repo, ask Claude to audit the
|
|
3
|
-
* codebase for architectural problems and improvement opportunities, and file
|
|
4
|
-
* each new finding as an issue. Subsequent runs are incremental, scoped to
|
|
5
|
-
* commits since the previous successful scan.
|
|
6
|
-
*
|
|
7
|
-
* Companion to find-bugs (real defects), find-features (missing user
|
|
8
|
-
* capability), and find-smells (local code-level improvements). All four
|
|
9
|
-
* phases share the same workspace + state pattern.
|
|
10
|
-
*/
|
|
11
|
-
export interface FindArchitectureOptions {
|
|
12
|
-
/** Product scope. Provide this OR repoId (repo-scoped scan). */
|
|
13
|
-
productId?: string;
|
|
14
|
-
/** Repository scope: scan a bare `repositories` row with no product. */
|
|
15
|
-
repoId?: string;
|
|
16
|
-
githubToken: string;
|
|
17
|
-
owner: string;
|
|
18
|
-
repo: string;
|
|
19
|
-
/** Force a full scan even if previous-scan state exists. */
|
|
20
|
-
full?: boolean;
|
|
21
|
-
/** Branch to scan; defaults to the repo's default branch. */
|
|
22
|
-
branch?: string;
|
|
23
|
-
/** Upper bound on files the auditor may Read. Keeps token cost predictable. */
|
|
24
|
-
maxFiles?: number;
|
|
25
|
-
verbose?: boolean;
|
|
26
|
-
}
|
|
27
|
-
export interface FindArchitectureResult {
|
|
28
|
-
status: 'success' | 'error';
|
|
29
|
-
message: string;
|
|
30
|
-
scannedCommitSha?: string;
|
|
31
|
-
findingsFound?: number;
|
|
32
|
-
issuesCreated?: number;
|
|
33
|
-
/** Findings the agent passed off to find-bugs (not filed by this run). */
|
|
34
|
-
deferredToBugs?: number;
|
|
35
|
-
/** Findings the agent passed off to find-features (not filed by this run). */
|
|
36
|
-
deferredToFeatures?: number;
|
|
37
|
-
/** Findings the agent passed off to find-smells (not filed by this run). */
|
|
38
|
-
deferredToSmells?: number;
|
|
39
|
-
summary?: string;
|
|
40
|
-
}
|
|
41
|
-
/** Single source of truth — referenced by the CLI help string too. */
|
|
42
|
-
export declare const DEFAULT_MAX_FILES = 200;
|
|
43
|
-
/**
|
|
44
|
-
* Scan a product's repository for architectural concerns and file each new
|
|
45
|
-
* finding as an issue.
|
|
46
|
-
*/
|
|
47
|
-
export declare function scanForArchitecture(options: FindArchitectureOptions): Promise<FindArchitectureResult>;
|