task-o-matic 0.0.35 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +560 -632
- package/dist/cli/display/common.d.ts +1 -1
- package/dist/cli/display/common.d.ts.map +1 -1
- package/dist/cli/display/progress.d.ts +1 -1
- package/dist/cli/display/progress.d.ts.map +1 -1
- package/dist/cli/display/progress.js +2 -2
- package/dist/cli/display/task.d.ts +1 -1
- package/dist/cli/display/task.d.ts.map +1 -1
- package/dist/commands/benchmark.d.ts.map +1 -1
- package/dist/commands/benchmark.js +34 -24
- package/dist/commands/config.js +9 -9
- package/dist/commands/init.js +16 -16
- package/dist/commands/prd.d.ts +0 -5
- package/dist/commands/prd.d.ts.map +1 -1
- package/dist/commands/prd.js +72 -88
- package/dist/commands/prompt.js +11 -11
- package/dist/commands/tasks/create.d.ts.map +1 -1
- package/dist/commands/tasks/create.js +4 -4
- package/dist/commands/tasks/delete.js +5 -5
- package/dist/commands/tasks/document/add.d.ts.map +1 -1
- package/dist/commands/tasks/document/add.js +6 -6
- package/dist/commands/tasks/document/analyze.d.ts.map +1 -1
- package/dist/commands/tasks/document/analyze.js +5 -5
- package/dist/commands/tasks/document/get.d.ts.map +1 -1
- package/dist/commands/tasks/document/get.js +5 -5
- package/dist/commands/tasks/enhance.d.ts.map +1 -1
- package/dist/commands/tasks/enhance.js +9 -9
- package/dist/commands/tasks/execute-loop.d.ts.map +1 -1
- package/dist/commands/tasks/execute-loop.js +10 -6
- package/dist/commands/tasks/execute.d.ts.map +1 -1
- package/dist/commands/tasks/execute.js +10 -6
- package/dist/commands/tasks/list.js +2 -2
- package/dist/commands/tasks/next.js +2 -2
- package/dist/commands/tasks/plan/create.d.ts.map +1 -1
- package/dist/commands/tasks/plan/create.js +5 -5
- package/dist/commands/tasks/plan/delete.d.ts.map +1 -1
- package/dist/commands/tasks/plan/delete.js +2 -2
- package/dist/commands/tasks/plan/get.d.ts.map +1 -1
- package/dist/commands/tasks/plan/get.js +3 -3
- package/dist/commands/tasks/plan/list.js +3 -3
- package/dist/commands/tasks/plan/set.d.ts.map +1 -1
- package/dist/commands/tasks/plan/set.js +10 -8
- package/dist/commands/tasks/show.js +8 -8
- package/dist/commands/tasks/split.d.ts.map +1 -1
- package/dist/commands/tasks/split.js +28 -30
- package/dist/commands/tasks/status.js +5 -5
- package/dist/commands/tasks/subtasks.js +3 -3
- package/dist/commands/tasks/tags.js +3 -3
- package/dist/commands/tasks/tree.js +3 -3
- package/dist/commands/tasks/update.js +4 -4
- package/dist/commands/utils/ai-parallel.d.ts.map +1 -1
- package/dist/commands/utils/ai-parallel.js +5 -7
- package/dist/commands/workflow.d.ts.map +1 -1
- package/dist/commands/workflow.js +32 -37
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -10
- package/dist/test/commands.test.js +77 -26
- package/dist/utils/bulk-operations.d.ts.map +1 -1
- package/dist/utils/bulk-operations.js +2 -2
- package/dist/utils/cli-validators.d.ts.map +1 -1
- package/dist/utils/cli-validators.js +5 -5
- package/dist/{lib/hooks/logger.d.ts → utils/logger-hooks.d.ts} +1 -1
- package/dist/utils/logger-hooks.d.ts.map +1 -0
- package/dist/{lib/hooks/logger.js → utils/logger-hooks.js} +11 -11
- package/dist/utils/progress-tracking.js +3 -3
- package/dist/utils/streaming-options.d.ts +1 -1
- package/dist/utils/streaming-options.d.ts.map +1 -1
- package/package.json +10 -66
- package/src/cli/bin.ts +7 -0
- package/src/cli/display/common.ts +46 -0
- package/src/cli/display/plan.ts +68 -0
- package/src/cli/display/progress.ts +130 -0
- package/src/cli/display/task.ts +387 -0
- package/src/commands/benchmark.ts +1024 -0
- package/src/commands/config.ts +63 -0
- package/src/commands/init.ts +401 -0
- package/src/commands/install.ts +173 -0
- package/src/commands/prd.ts +919 -0
- package/src/commands/prompt.ts +301 -0
- package/src/commands/tasks/create.ts +57 -0
- package/src/commands/tasks/delete.ts +43 -0
- package/src/commands/tasks/document/add.ts +54 -0
- package/src/commands/tasks/document/analyze.ts +82 -0
- package/src/commands/tasks/document/get.ts +44 -0
- package/src/commands/tasks/document/index.ts +8 -0
- package/src/commands/tasks/enhance.ts +121 -0
- package/src/commands/tasks/execute-loop.ts +204 -0
- package/src/commands/tasks/execute.ts +137 -0
- package/src/commands/tasks/index.ts +16 -0
- package/src/commands/tasks/list.ts +26 -0
- package/src/commands/tasks/next.ts +46 -0
- package/src/commands/tasks/plan/create.ts +48 -0
- package/src/commands/tasks/plan/delete.ts +18 -0
- package/src/commands/tasks/plan/get.ts +33 -0
- package/src/commands/tasks/plan/index.ts +10 -0
- package/src/commands/tasks/plan/list.ts +23 -0
- package/src/commands/tasks/plan/set.ts +64 -0
- package/src/commands/tasks/show.ts +45 -0
- package/src/commands/tasks/split.ts +309 -0
- package/src/commands/tasks/status.ts +32 -0
- package/src/commands/tasks/subtasks.ts +35 -0
- package/src/commands/tasks/tags.ts +36 -0
- package/src/commands/tasks/tree.ts +46 -0
- package/src/commands/tasks/update.ts +47 -0
- package/src/commands/tasks.ts +52 -0
- package/src/commands/utils/ai-parallel.ts +193 -0
- package/src/commands/workflow.ts +1489 -0
- package/src/index.ts +97 -0
- package/src/test/commands.test.ts +99 -0
- package/src/types/cli-options.ts +185 -0
- package/src/utils/bulk-operations.ts +118 -0
- package/src/utils/cli-validators.ts +105 -0
- package/src/utils/command-error-handler.ts +52 -0
- package/src/utils/confirmation.ts +44 -0
- package/src/utils/display-helpers.ts +111 -0
- package/src/utils/logger-hooks.ts +55 -0
- package/src/utils/progress-tracking.ts +56 -0
- package/src/utils/streaming-options.ts +93 -0
- package/src/utils/workflow-prompts.ts +100 -0
- package/tsconfig.json +24 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/LICENSE +0 -21
- package/dist/lib/ai-service/ai-operations.d.ts +0 -45
- package/dist/lib/ai-service/ai-operations.d.ts.map +0 -1
- package/dist/lib/ai-service/ai-operations.js +0 -60
- package/dist/lib/ai-service/base-operations.d.ts +0 -43
- package/dist/lib/ai-service/base-operations.d.ts.map +0 -1
- package/dist/lib/ai-service/base-operations.js +0 -119
- package/dist/lib/ai-service/documentation-operations.d.ts +0 -18
- package/dist/lib/ai-service/documentation-operations.d.ts.map +0 -1
- package/dist/lib/ai-service/documentation-operations.js +0 -307
- package/dist/lib/ai-service/filesystem-tools.d.ts +0 -69
- package/dist/lib/ai-service/filesystem-tools.d.ts.map +0 -1
- package/dist/lib/ai-service/filesystem-tools.js +0 -70
- package/dist/lib/ai-service/json-parser.d.ts +0 -34
- package/dist/lib/ai-service/json-parser.d.ts.map +0 -1
- package/dist/lib/ai-service/json-parser.js +0 -177
- package/dist/lib/ai-service/mcp-client.d.ts +0 -9
- package/dist/lib/ai-service/mcp-client.d.ts.map +0 -1
- package/dist/lib/ai-service/mcp-client.js +0 -48
- package/dist/lib/ai-service/model-provider.d.ts +0 -12
- package/dist/lib/ai-service/model-provider.d.ts.map +0 -1
- package/dist/lib/ai-service/model-provider.js +0 -146
- package/dist/lib/ai-service/prd-operations.d.ts +0 -25
- package/dist/lib/ai-service/prd-operations.d.ts.map +0 -1
- package/dist/lib/ai-service/prd-operations.js +0 -592
- package/dist/lib/ai-service/research-tools.d.ts +0 -4
- package/dist/lib/ai-service/research-tools.d.ts.map +0 -1
- package/dist/lib/ai-service/research-tools.js +0 -8
- package/dist/lib/ai-service/retry-handler.d.ts +0 -8
- package/dist/lib/ai-service/retry-handler.d.ts.map +0 -1
- package/dist/lib/ai-service/retry-handler.js +0 -62
- package/dist/lib/ai-service/task-operations.d.ts +0 -13
- package/dist/lib/ai-service/task-operations.d.ts.map +0 -1
- package/dist/lib/ai-service/task-operations.js +0 -220
- package/dist/lib/benchmark/registry.d.ts +0 -11
- package/dist/lib/benchmark/registry.d.ts.map +0 -1
- package/dist/lib/benchmark/registry.js +0 -212
- package/dist/lib/benchmark/runner.d.ts +0 -6
- package/dist/lib/benchmark/runner.d.ts.map +0 -1
- package/dist/lib/benchmark/runner.js +0 -150
- package/dist/lib/benchmark/storage.d.ts +0 -13
- package/dist/lib/benchmark/storage.d.ts.map +0 -1
- package/dist/lib/benchmark/storage.js +0 -99
- package/dist/lib/benchmark/types.d.ts +0 -104
- package/dist/lib/benchmark/types.d.ts.map +0 -1
- package/dist/lib/benchmark/types.js +0 -2
- package/dist/lib/better-t-stack-cli.d.ts +0 -50
- package/dist/lib/better-t-stack-cli.d.ts.map +0 -1
- package/dist/lib/better-t-stack-cli.js +0 -427
- package/dist/lib/bootstrap/cli-bootstrap.d.ts +0 -14
- package/dist/lib/bootstrap/cli-bootstrap.d.ts.map +0 -1
- package/dist/lib/bootstrap/cli-bootstrap.js +0 -325
- package/dist/lib/bootstrap/index.d.ts +0 -3
- package/dist/lib/bootstrap/index.d.ts.map +0 -1
- package/dist/lib/bootstrap/index.js +0 -18
- package/dist/lib/bootstrap/medusa-bootstrap.d.ts +0 -14
- package/dist/lib/bootstrap/medusa-bootstrap.d.ts.map +0 -1
- package/dist/lib/bootstrap/medusa-bootstrap.js +0 -218
- package/dist/lib/config-validation.d.ts +0 -215
- package/dist/lib/config-validation.d.ts.map +0 -1
- package/dist/lib/config-validation.js +0 -254
- package/dist/lib/config.d.ts +0 -53
- package/dist/lib/config.d.ts.map +0 -1
- package/dist/lib/config.js +0 -288
- package/dist/lib/context-builder.d.ts +0 -66
- package/dist/lib/context-builder.d.ts.map +0 -1
- package/dist/lib/context-builder.js +0 -321
- package/dist/lib/executors/claude-code-executor.d.ts +0 -9
- package/dist/lib/executors/claude-code-executor.d.ts.map +0 -1
- package/dist/lib/executors/claude-code-executor.js +0 -72
- package/dist/lib/executors/codex-executor.d.ts +0 -9
- package/dist/lib/executors/codex-executor.d.ts.map +0 -1
- package/dist/lib/executors/codex-executor.js +0 -76
- package/dist/lib/executors/executor-factory.d.ts +0 -5
- package/dist/lib/executors/executor-factory.d.ts.map +0 -1
- package/dist/lib/executors/executor-factory.js +0 -27
- package/dist/lib/executors/gemini-executor.d.ts +0 -9
- package/dist/lib/executors/gemini-executor.d.ts.map +0 -1
- package/dist/lib/executors/gemini-executor.js +0 -70
- package/dist/lib/executors/kilo-executor.d.ts +0 -9
- package/dist/lib/executors/kilo-executor.d.ts.map +0 -1
- package/dist/lib/executors/kilo-executor.js +0 -72
- package/dist/lib/executors/opencode-executor.d.ts +0 -9
- package/dist/lib/executors/opencode-executor.d.ts.map +0 -1
- package/dist/lib/executors/opencode-executor.js +0 -70
- package/dist/lib/git-utils.d.ts +0 -88
- package/dist/lib/git-utils.d.ts.map +0 -1
- package/dist/lib/git-utils.js +0 -242
- package/dist/lib/hooks/logger.d.ts.map +0 -1
- package/dist/lib/hooks.d.ts +0 -73
- package/dist/lib/hooks.d.ts.map +0 -1
- package/dist/lib/hooks.js +0 -60
- package/dist/lib/index.d.ts +0 -104
- package/dist/lib/index.d.ts.map +0 -1
- package/dist/lib/index.js +0 -147
- package/dist/lib/logger.d.ts +0 -20
- package/dist/lib/logger.d.ts.map +0 -1
- package/dist/lib/logger.js +0 -32
- package/dist/lib/notifications.d.ts +0 -7
- package/dist/lib/notifications.d.ts.map +0 -1
- package/dist/lib/notifications.js +0 -81
- package/dist/lib/prompt-builder.d.ts +0 -70
- package/dist/lib/prompt-builder.d.ts.map +0 -1
- package/dist/lib/prompt-builder.js +0 -343
- package/dist/lib/prompt-registry.d.ts +0 -22
- package/dist/lib/prompt-registry.d.ts.map +0 -1
- package/dist/lib/prompt-registry.js +0 -409
- package/dist/lib/provider-defaults.json +0 -32
- package/dist/lib/storage/file-system.d.ts +0 -57
- package/dist/lib/storage/file-system.d.ts.map +0 -1
- package/dist/lib/storage/file-system.js +0 -637
- package/dist/lib/storage/storage-callbacks.d.ts +0 -17
- package/dist/lib/storage/storage-callbacks.d.ts.map +0 -1
- package/dist/lib/storage/storage-callbacks.js +0 -94
- package/dist/lib/storage/types.d.ts +0 -43
- package/dist/lib/storage/types.d.ts.map +0 -1
- package/dist/lib/storage/types.js +0 -2
- package/dist/lib/task-execution-core.d.ts +0 -7
- package/dist/lib/task-execution-core.d.ts.map +0 -1
- package/dist/lib/task-execution-core.js +0 -380
- package/dist/lib/task-execution.d.ts +0 -7
- package/dist/lib/task-execution.d.ts.map +0 -1
- package/dist/lib/task-execution.js +0 -40
- package/dist/lib/task-loop-execution.d.ts +0 -7
- package/dist/lib/task-loop-execution.d.ts.map +0 -1
- package/dist/lib/task-loop-execution.js +0 -159
- package/dist/lib/task-planning.d.ts +0 -28
- package/dist/lib/task-planning.d.ts.map +0 -1
- package/dist/lib/task-planning.js +0 -109
- package/dist/lib/task-review.d.ts +0 -27
- package/dist/lib/task-review.d.ts.map +0 -1
- package/dist/lib/task-review.js +0 -103
- package/dist/lib/validation.d.ts +0 -26
- package/dist/lib/validation.d.ts.map +0 -1
- package/dist/lib/validation.js +0 -98
- package/dist/mcp/prompts.d.ts +0 -3
- package/dist/mcp/prompts.d.ts.map +0 -1
- package/dist/mcp/prompts.js +0 -7
- package/dist/mcp/resources.d.ts +0 -3
- package/dist/mcp/resources.d.ts.map +0 -1
- package/dist/mcp/resources.js +0 -7
- package/dist/mcp/server.d.ts +0 -3
- package/dist/mcp/server.d.ts.map +0 -1
- package/dist/mcp/server.js +0 -25
- package/dist/mcp/tools.d.ts +0 -3
- package/dist/mcp/tools.d.ts.map +0 -1
- package/dist/mcp/tools.js +0 -99
- package/dist/prompts/documentation-detection.d.ts +0 -2
- package/dist/prompts/documentation-detection.d.ts.map +0 -1
- package/dist/prompts/documentation-detection.js +0 -24
- package/dist/prompts/documentation-recap.d.ts +0 -3
- package/dist/prompts/documentation-recap.d.ts.map +0 -1
- package/dist/prompts/documentation-recap.js +0 -13
- package/dist/prompts/index.d.ts +0 -15
- package/dist/prompts/index.d.ts.map +0 -1
- package/dist/prompts/index.js +0 -30
- package/dist/prompts/prd-combination.d.ts +0 -2
- package/dist/prompts/prd-combination.d.ts.map +0 -1
- package/dist/prompts/prd-combination.js +0 -35
- package/dist/prompts/prd-generation.d.ts +0 -2
- package/dist/prompts/prd-generation.d.ts.map +0 -1
- package/dist/prompts/prd-generation.js +0 -49
- package/dist/prompts/prd-parsing.d.ts +0 -3
- package/dist/prompts/prd-parsing.d.ts.map +0 -1
- package/dist/prompts/prd-parsing.js +0 -172
- package/dist/prompts/prd-question-answer.d.ts +0 -3
- package/dist/prompts/prd-question-answer.d.ts.map +0 -1
- package/dist/prompts/prd-question-answer.js +0 -27
- package/dist/prompts/prd-question.d.ts +0 -3
- package/dist/prompts/prd-question.d.ts.map +0 -1
- package/dist/prompts/prd-question.js +0 -40
- package/dist/prompts/prd-rework.d.ts +0 -3
- package/dist/prompts/prd-rework.d.ts.map +0 -1
- package/dist/prompts/prd-rework.js +0 -81
- package/dist/prompts/prd-suggest-stack.d.ts +0 -3
- package/dist/prompts/prd-suggest-stack.d.ts.map +0 -1
- package/dist/prompts/prd-suggest-stack.js +0 -99
- package/dist/prompts/task-breakdown.d.ts +0 -3
- package/dist/prompts/task-breakdown.d.ts.map +0 -1
- package/dist/prompts/task-breakdown.js +0 -151
- package/dist/prompts/task-enhancement.d.ts +0 -3
- package/dist/prompts/task-enhancement.d.ts.map +0 -1
- package/dist/prompts/task-enhancement.js +0 -140
- package/dist/prompts/task-execution.d.ts +0 -3
- package/dist/prompts/task-execution.d.ts.map +0 -1
- package/dist/prompts/task-execution.js +0 -24
- package/dist/prompts/task-planning.d.ts +0 -3
- package/dist/prompts/task-planning.d.ts.map +0 -1
- package/dist/prompts/task-planning.js +0 -66
- package/dist/prompts/workflow-assistance.d.ts +0 -32
- package/dist/prompts/workflow-assistance.d.ts.map +0 -1
- package/dist/prompts/workflow-assistance.js +0 -130
- package/dist/prompts/workflow-prompts.d.ts +0 -9
- package/dist/prompts/workflow-prompts.d.ts.map +0 -1
- package/dist/prompts/workflow-prompts.js +0 -93
- package/dist/services/benchmark.d.ts +0 -26
- package/dist/services/benchmark.d.ts.map +0 -1
- package/dist/services/benchmark.js +0 -343
- package/dist/services/prd.d.ts +0 -136
- package/dist/services/prd.d.ts.map +0 -1
- package/dist/services/prd.js +0 -550
- package/dist/services/tasks.d.ts +0 -388
- package/dist/services/tasks.d.ts.map +0 -1
- package/dist/services/tasks.js +0 -1149
- package/dist/services/workflow-ai-assistant.d.ts +0 -74
- package/dist/services/workflow-ai-assistant.d.ts.map +0 -1
- package/dist/services/workflow-ai-assistant.js +0 -175
- package/dist/services/workflow-benchmark.d.ts +0 -34
- package/dist/services/workflow-benchmark.d.ts.map +0 -1
- package/dist/services/workflow-benchmark.js +0 -317
- package/dist/services/workflow.d.ts +0 -107
- package/dist/services/workflow.d.ts.map +0 -1
- package/dist/services/workflow.js +0 -580
- package/dist/test/hooks.test.d.ts +0 -2
- package/dist/test/hooks.test.d.ts.map +0 -1
- package/dist/test/hooks.test.js +0 -67
- package/dist/test/integration/callbacks.test.d.ts +0 -2
- package/dist/test/integration/callbacks.test.d.ts.map +0 -1
- package/dist/test/integration/callbacks.test.js +0 -64
- package/dist/test/lib/ai-service/task-operations.test.d.ts +0 -2
- package/dist/test/lib/ai-service/task-operations.test.d.ts.map +0 -1
- package/dist/test/lib/ai-service/task-operations.test.js +0 -362
- package/dist/test/mocks/mock-ai-operations.d.ts +0 -15
- package/dist/test/mocks/mock-ai-operations.d.ts.map +0 -1
- package/dist/test/mocks/mock-ai-operations.js +0 -107
- package/dist/test/mocks/mock-context-builder.d.ts +0 -10
- package/dist/test/mocks/mock-context-builder.d.ts.map +0 -1
- package/dist/test/mocks/mock-context-builder.js +0 -81
- package/dist/test/mocks/mock-model-provider.d.ts +0 -7
- package/dist/test/mocks/mock-model-provider.d.ts.map +0 -1
- package/dist/test/mocks/mock-model-provider.js +0 -21
- package/dist/test/mocks/mock-service-factory.d.ts +0 -11
- package/dist/test/mocks/mock-service-factory.d.ts.map +0 -1
- package/dist/test/mocks/mock-service-factory.js +0 -61
- package/dist/test/mocks/mock-storage.d.ts +0 -50
- package/dist/test/mocks/mock-storage.d.ts.map +0 -1
- package/dist/test/mocks/mock-storage.js +0 -145
- package/dist/test/model-parsing.test.d.ts +0 -2
- package/dist/test/model-parsing.test.d.ts.map +0 -1
- package/dist/test/model-parsing.test.js +0 -73
- package/dist/test/services/task-service.test.d.ts +0 -2
- package/dist/test/services/task-service.test.d.ts.map +0 -1
- package/dist/test/services/task-service.test.js +0 -459
- package/dist/test/storage.test.d.ts +0 -2
- package/dist/test/storage.test.d.ts.map +0 -1
- package/dist/test/storage.test.js +0 -207
- package/dist/test/task-loop-git.test.d.ts +0 -2
- package/dist/test/task-loop-git.test.d.ts.map +0 -1
- package/dist/test/task-loop-git.test.js +0 -95
- package/dist/test/test-mock-setup.d.ts +0 -26
- package/dist/test/test-mock-setup.d.ts.map +0 -1
- package/dist/test/test-mock-setup.js +0 -41
- package/dist/test/test-setup.d.ts +0 -9
- package/dist/test/test-setup.d.ts.map +0 -1
- package/dist/test/test-setup.js +0 -44
- package/dist/test/test-utils.d.ts +0 -22
- package/dist/test/test-utils.d.ts.map +0 -1
- package/dist/test/test-utils.js +0 -37
- package/dist/test/utils/ai-operation-utility.test.d.ts +0 -2
- package/dist/test/utils/ai-operation-utility.test.d.ts.map +0 -1
- package/dist/test/utils/ai-operation-utility.test.js +0 -290
- package/dist/test/utils/error-handling.test.d.ts +0 -2
- package/dist/test/utils/error-handling.test.d.ts.map +0 -1
- package/dist/test/utils/error-handling.test.js +0 -231
- package/dist/test/validation.test.d.ts +0 -2
- package/dist/test/validation.test.d.ts.map +0 -1
- package/dist/test/validation.test.js +0 -22
- package/dist/types/callbacks.d.ts +0 -30
- package/dist/types/callbacks.d.ts.map +0 -1
- package/dist/types/callbacks.js +0 -2
- package/dist/types/index.d.ts +0 -428
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js +0 -12
- package/dist/types/mcp.d.ts +0 -3
- package/dist/types/mcp.d.ts.map +0 -1
- package/dist/types/mcp.js +0 -3
- package/dist/types/options.d.ts +0 -133
- package/dist/types/options.d.ts.map +0 -1
- package/dist/types/options.js +0 -18
- package/dist/types/results.d.ts +0 -200
- package/dist/types/results.d.ts.map +0 -1
- package/dist/types/results.js +0 -2
- package/dist/types/workflow-options.d.ts +0 -82
- package/dist/types/workflow-options.d.ts.map +0 -1
- package/dist/types/workflow-options.js +0 -2
- package/dist/types/workflow-results.d.ts +0 -82
- package/dist/types/workflow-results.d.ts.map +0 -1
- package/dist/types/workflow-results.js +0 -2
- package/dist/utils/ai-config-builder.d.ts +0 -14
- package/dist/utils/ai-config-builder.d.ts.map +0 -1
- package/dist/utils/ai-config-builder.js +0 -22
- package/dist/utils/ai-operation-utility.d.ts +0 -142
- package/dist/utils/ai-operation-utility.d.ts.map +0 -1
- package/dist/utils/ai-operation-utility.js +0 -303
- package/dist/utils/ai-service-factory.d.ts +0 -34
- package/dist/utils/ai-service-factory.d.ts.map +0 -1
- package/dist/utils/ai-service-factory.js +0 -99
- package/dist/utils/error-utils.d.ts +0 -70
- package/dist/utils/error-utils.d.ts.map +0 -1
- package/dist/utils/error-utils.js +0 -104
- package/dist/utils/file-utils.d.ts +0 -107
- package/dist/utils/file-utils.d.ts.map +0 -1
- package/dist/utils/file-utils.js +0 -171
- package/dist/utils/id-generator.d.ts +0 -92
- package/dist/utils/id-generator.d.ts.map +0 -1
- package/dist/utils/id-generator.js +0 -146
- package/dist/utils/metadata-utils.d.ts +0 -40
- package/dist/utils/metadata-utils.d.ts.map +0 -1
- package/dist/utils/metadata-utils.js +0 -43
- package/dist/utils/model-executor-parser.d.ts +0 -38
- package/dist/utils/model-executor-parser.d.ts.map +0 -1
- package/dist/utils/model-executor-parser.js +0 -69
- package/dist/utils/stack-formatter.d.ts +0 -12
- package/dist/utils/stack-formatter.d.ts.map +0 -1
- package/dist/utils/stack-formatter.js +0 -36
- package/dist/utils/storage-utils.d.ts +0 -49
- package/dist/utils/storage-utils.d.ts.map +0 -1
- package/dist/utils/storage-utils.js +0 -80
- package/dist/utils/streaming-utils.d.ts +0 -38
- package/dist/utils/streaming-utils.d.ts.map +0 -1
- package/dist/utils/streaming-utils.js +0 -64
- package/dist/utils/task-o-matic-error.d.ts +0 -206
- package/dist/utils/task-o-matic-error.d.ts.map +0 -1
- package/dist/utils/task-o-matic-error.js +0 -304
- package/docs/agents/cli.md +0 -107
package/README.md
CHANGED
|
@@ -1,864 +1,792 @@
|
|
|
1
|
-
#
|
|
1
|
+
# task-o-matic
|
|
2
2
|
|
|
3
|
-
AI-powered task management
|
|
3
|
+
AI-powered task management CLI for single projects. Parse PRDs, enhance tasks with AI, and manage your development workflow from the command line.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Overview
|
|
6
6
|
|
|
7
|
-
-
|
|
8
|
-
- 🎭 **Interactive Workflow**: Guided setup from project init to task generation with AI assistance
|
|
9
|
-
- ❓ **PRD Question/Refine**: AI generates clarifying questions and can answer them automatically
|
|
10
|
-
- 🧠 **AI Reasoning Support**: Enable advanced reasoning for better PRD refinement
|
|
11
|
-
- 📦 **Multi-Purpose Package**: Use as CLI tool, library, or MCP server
|
|
12
|
-
- 📁 **Project-Local Storage**: All data stored locally in `.task-o-matic/` directory
|
|
13
|
-
- 🎯 **Task Management**: Full CRUD operations with AI enhancement
|
|
14
|
-
- 📋 **PRD Processing**: Convert Product Requirements Documents into actionable tasks
|
|
15
|
-
- 🏗️ **Project Bootstrapping**: Better-T-Stack integration for new projects
|
|
16
|
-
- 🔧 **Multi-Provider AI**: Support for OpenAI, Anthropic, OpenRouter, and custom providers
|
|
17
|
-
- 📊 **Smart Breakdown**: AI-powered task decomposition into subtasks
|
|
18
|
-
- 🌊 **Real-time Streaming**: Watch AI responses generate live with streaming output
|
|
19
|
-
- 📊 **Model Benchmarking**: Compare performance and quality across different AI models
|
|
20
|
-
- 🏁 **Workflow Benchmarking**: Test complete workflows across multiple models and compare results
|
|
21
|
-
- 🏠 **Single-Project Focus**: Self-contained within each project directory
|
|
22
|
-
- 💻 **Framework-Agnostic**: Easily integrate into TUI, web apps, or any Node.js project
|
|
7
|
+
`task-o-matic` is the command-line interface for the Task-O-Matic system. It provides a complete set of commands for managing tasks, processing PRDs, and automating project workflows with AI assistance.
|
|
23
8
|
|
|
24
|
-
##
|
|
9
|
+
## Installation
|
|
25
10
|
|
|
26
|
-
###
|
|
11
|
+
### Global Installation
|
|
27
12
|
|
|
28
13
|
```bash
|
|
29
|
-
# Install globally
|
|
30
14
|
npm install -g task-o-matic
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
### Using npx
|
|
31
18
|
|
|
32
|
-
|
|
19
|
+
```bash
|
|
33
20
|
npx task-o-matic init
|
|
34
21
|
```
|
|
35
22
|
|
|
36
|
-
|
|
23
|
+
## Quick Start
|
|
24
|
+
|
|
25
|
+
### Initialize Your Project
|
|
37
26
|
|
|
38
27
|
```bash
|
|
39
|
-
#
|
|
40
|
-
|
|
28
|
+
# Navigate to your project directory
|
|
29
|
+
cd /path/to/your/project
|
|
30
|
+
|
|
31
|
+
# Initialize task-o-matic
|
|
32
|
+
task-o-matic init init --project-name my-app
|
|
33
|
+
|
|
34
|
+
# Configure AI provider
|
|
35
|
+
task-o-matic config set-ai-provider anthropic claude-3-5-sonnet
|
|
36
|
+
|
|
37
|
+
# Create your first task
|
|
38
|
+
task-o-matic tasks create --title "Implement user authentication" --ai-enhance
|
|
41
39
|
```
|
|
42
40
|
|
|
43
|
-
###
|
|
41
|
+
### Interactive Workflow (Recommended)
|
|
44
42
|
|
|
45
43
|
```bash
|
|
46
|
-
#
|
|
47
|
-
|
|
48
|
-
cd task-o-matic
|
|
49
|
-
npm install
|
|
50
|
-
npm run build
|
|
44
|
+
# Start the interactive workflow with streaming
|
|
45
|
+
task-o-matic workflow --stream
|
|
51
46
|
```
|
|
52
47
|
|
|
53
|
-
|
|
48
|
+
The workflow will guide you through:
|
|
49
|
+
1. Project initialization
|
|
50
|
+
2. PRD creation
|
|
51
|
+
3. PRD refinement with AI questions
|
|
52
|
+
4. Task generation
|
|
53
|
+
5. Task splitting
|
|
54
|
+
|
|
55
|
+
## Commands
|
|
56
|
+
|
|
57
|
+
### Initialization Commands
|
|
58
|
+
|
|
59
|
+
#### `task-o-matic init init`
|
|
60
|
+
|
|
61
|
+
Initialize a new project with task-o-matic.
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
# Basic initialization
|
|
65
|
+
task-o-matic init init
|
|
54
66
|
|
|
55
|
-
|
|
67
|
+
# Initialize with project name
|
|
68
|
+
task-o-matic init init --project-name my-app
|
|
56
69
|
|
|
70
|
+
# Initialize with AI configuration
|
|
71
|
+
task-o-matic init init --project-name my-app --ai-provider openrouter --ai-model anthropic/claude-3.5-sonnet --ai-key your-api-key
|
|
72
|
+
|
|
73
|
+
# Initialize without bootstrapping
|
|
74
|
+
task-o-matic init init --no-bootstrap
|
|
57
75
|
```
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
76
|
+
|
|
77
|
+
**Options:**
|
|
78
|
+
- `--project-name <name>`: Name of the project
|
|
79
|
+
- `--ai-provider <provider>`: AI provider (openai, anthropic, openrouter, custom)
|
|
80
|
+
- `--ai-model <model>`: AI model to use
|
|
81
|
+
- `--ai-key <key>`: API key for the AI provider
|
|
82
|
+
- `--no-bootstrap`: Skip project bootstrapping
|
|
83
|
+
|
|
84
|
+
#### `task-o-matic init bootstrap`
|
|
85
|
+
|
|
86
|
+
Bootstrap a Better-T-Stack project.
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
# Bootstrap with defaults (Next.js + Hono + SQLite + Auth)
|
|
90
|
+
task-o-matic init bootstrap my-app
|
|
91
|
+
|
|
92
|
+
# Bootstrap with custom options
|
|
93
|
+
task-o-matic init bootstrap my-app --frontend next --backend hono --database postgres --addons pwa biome
|
|
94
|
+
|
|
95
|
+
# Bootstrap with authentication
|
|
96
|
+
task-o-matic init bootstrap my-app --auth
|
|
78
97
|
```
|
|
79
98
|
|
|
80
|
-
|
|
99
|
+
**Options:**
|
|
100
|
+
- `--frontend <framework>`: Frontend framework (next, react, vue, svelte, none)
|
|
101
|
+
- `--backend <framework>`: Backend framework (hono, express, fastify, none)
|
|
102
|
+
- `--database <db>`: Database (sqlite, postgres, mysql, mongodb, none)
|
|
103
|
+
- `--auth`: Enable authentication
|
|
104
|
+
- `--addons <addons>`: Additional addons (comma-separated: pwa, biome, testing, etc.)
|
|
105
|
+
|
|
106
|
+
### Configuration Commands
|
|
107
|
+
|
|
108
|
+
#### `task-o-matic config set-ai-provider`
|
|
81
109
|
|
|
82
|
-
|
|
83
|
-
- **AI Service**: Uses Vercel AI SDK for multi-provider support with reasoning capabilities
|
|
84
|
-
- **Local Storage**: JSON-based file storage in `.task-o-matic/` directory
|
|
85
|
-
- **Configuration**: Project-local config with AI provider settings
|
|
86
|
-
- **Prompt Templates**: Structured AI prompts for consistent results
|
|
110
|
+
Set the AI provider and model.
|
|
87
111
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
-
|
|
91
|
-
- **Framework-Agnostic**: Services can be used in any environment (CLI, TUI, web)
|
|
92
|
-
- **Project-Local**: Each project manages its own tasks and configuration
|
|
93
|
-
- **AI-Enhanced**: Use AI to improve clarity and break down complexity
|
|
94
|
-
- **Developer-Friendly**: Simple, intuitive APIs with helpful output
|
|
95
|
-
- **Self-Contained**: No external dependencies, everything works offline
|
|
112
|
+
```bash
|
|
113
|
+
# Set Anthropic provider
|
|
114
|
+
task-o-matic config set-ai-provider anthropic claude-3-5-sonnet
|
|
96
115
|
|
|
97
|
-
|
|
116
|
+
# Set OpenAI provider
|
|
117
|
+
task-o-matic config set-ai-provider openai gpt-4
|
|
98
118
|
|
|
99
|
-
|
|
119
|
+
# Set OpenRouter provider
|
|
120
|
+
task-o-matic config set-ai-provider openrouter anthropic/claude-3.5-sonnet
|
|
121
|
+
|
|
122
|
+
# Set custom provider
|
|
123
|
+
task-o-matic config set-ai-provider custom custom-model --api-url https://api.custom.com/v1
|
|
124
|
+
```
|
|
100
125
|
|
|
101
|
-
####
|
|
126
|
+
#### `task-o-matic config show-ai`
|
|
127
|
+
|
|
128
|
+
Display current AI configuration.
|
|
102
129
|
|
|
103
130
|
```bash
|
|
104
|
-
|
|
131
|
+
task-o-matic config show-ai
|
|
105
132
|
```
|
|
106
133
|
|
|
107
|
-
|
|
134
|
+
### Task Commands
|
|
135
|
+
|
|
136
|
+
#### `task-o-matic tasks create`
|
|
108
137
|
|
|
109
|
-
|
|
110
|
-
import {
|
|
111
|
-
WorkflowService,
|
|
112
|
-
TaskService,
|
|
113
|
-
PRDService,
|
|
114
|
-
type Task,
|
|
115
|
-
type AIConfig,
|
|
116
|
-
} from "task-o-matic";
|
|
117
|
-
|
|
118
|
-
// Use the workflow service for complete project setup
|
|
119
|
-
const workflowService = new WorkflowService();
|
|
120
|
-
|
|
121
|
-
const result = await workflowService.initializeProject({
|
|
122
|
-
projectName: "my-app",
|
|
123
|
-
initMethod: "quick",
|
|
124
|
-
bootstrap: true,
|
|
125
|
-
aiOptions: {
|
|
126
|
-
aiProvider: "anthropic",
|
|
127
|
-
aiModel: "claude-3-5-sonnet",
|
|
128
|
-
aiKey: process.env.ANTHROPIC_API_KEY,
|
|
129
|
-
},
|
|
130
|
-
callbacks: {
|
|
131
|
-
onProgress: (event) => {
|
|
132
|
-
console.log(`Progress: ${event.message}`);
|
|
133
|
-
},
|
|
134
|
-
},
|
|
135
|
-
});
|
|
136
|
-
|
|
137
|
-
console.log("Project initialized:", result.projectName);
|
|
138
|
-
|
|
139
|
-
// Or use task service directly
|
|
140
|
-
const taskService = new TaskService();
|
|
141
|
-
|
|
142
|
-
const taskResult = await taskService.createTask({
|
|
143
|
-
title: "Implement user authentication",
|
|
144
|
-
content: "Add login and signup functionality",
|
|
145
|
-
aiEnhance: true,
|
|
146
|
-
aiOptions: {
|
|
147
|
-
aiProvider: "anthropic",
|
|
148
|
-
aiModel: "claude-3-5-sonnet",
|
|
149
|
-
aiKey: process.env.ANTHROPIC_API_KEY,
|
|
150
|
-
},
|
|
151
|
-
callbacks: {
|
|
152
|
-
onProgress: (event) => {
|
|
153
|
-
console.log(`Progress: ${event.message}`);
|
|
154
|
-
},
|
|
155
|
-
},
|
|
156
|
-
});
|
|
157
|
-
|
|
158
|
-
console.log("Task created:", taskResult.task);
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
#### TUI Integration Example
|
|
162
|
-
|
|
163
|
-
```typescript
|
|
164
|
-
import { TaskService } from "task-o-matic";
|
|
165
|
-
import type { ProgressCallback } from "task-o-matic";
|
|
166
|
-
|
|
167
|
-
const taskService = new TaskService();
|
|
168
|
-
|
|
169
|
-
// Progress callback for TUI updates
|
|
170
|
-
const progressCallback: ProgressCallback = {
|
|
171
|
-
onProgress: (event) => {
|
|
172
|
-
// Update your TUI with progress
|
|
173
|
-
tuiStatusBar.update(event.message);
|
|
174
|
-
},
|
|
175
|
-
};
|
|
176
|
-
|
|
177
|
-
// Create task with streaming
|
|
178
|
-
const result = await taskService.createTask({
|
|
179
|
-
title: "Add payment integration",
|
|
180
|
-
aiEnhance: true,
|
|
181
|
-
streamingOptions: {
|
|
182
|
-
enabled: true,
|
|
183
|
-
onChunk: (chunk) => {
|
|
184
|
-
// Update TUI in real-time
|
|
185
|
-
tuiTextArea.append(chunk);
|
|
186
|
-
},
|
|
187
|
-
onFinish: ({ text }) => {
|
|
188
|
-
tuiStatusBar.success("Task enhanced!");
|
|
189
|
-
},
|
|
190
|
-
},
|
|
191
|
-
callbacks: progressCallback,
|
|
192
|
-
});
|
|
193
|
-
```
|
|
194
|
-
|
|
195
|
-
#### PRD Question/Refine Example
|
|
196
|
-
|
|
197
|
-
```typescript
|
|
198
|
-
import { PRDService } from "task-o-matic";
|
|
199
|
-
|
|
200
|
-
const prdService = new PRDService();
|
|
201
|
-
|
|
202
|
-
// Generate questions and refine PRD with AI answering
|
|
203
|
-
const result = await prdService.refinePRDWithQuestions({
|
|
204
|
-
file: "./requirements.md",
|
|
205
|
-
questionMode: "ai", // or "user" for interactive
|
|
206
|
-
questionAIOptions: {
|
|
207
|
-
// Optional: use a different AI for answering
|
|
208
|
-
aiProvider: "openrouter",
|
|
209
|
-
aiModel: "anthropic/claude-3-opus",
|
|
210
|
-
aiReasoning: "enabled", // Enable reasoning for better answers
|
|
211
|
-
},
|
|
212
|
-
workingDirectory: process.cwd(),
|
|
213
|
-
aiOptions: {
|
|
214
|
-
aiProvider: "anthropic",
|
|
215
|
-
aiModel: "claude-3-5-sonnet",
|
|
216
|
-
aiKey: process.env.ANTHROPIC_API_KEY,
|
|
217
|
-
},
|
|
218
|
-
callbacks: {
|
|
219
|
-
onProgress: (event) => {
|
|
220
|
-
console.log(event.message);
|
|
221
|
-
},
|
|
222
|
-
},
|
|
223
|
-
});
|
|
224
|
-
|
|
225
|
-
console.log(`Refined PRD with ${result.questions.length} questions`);
|
|
226
|
-
result.questions.forEach((q, i) => {
|
|
227
|
-
console.log(`Q${i + 1}: ${q}`);
|
|
228
|
-
console.log(`A${i + 1}: ${result.answers[q]}`);
|
|
229
|
-
});
|
|
230
|
-
```
|
|
231
|
-
|
|
232
|
-
#### Using Utility Factories
|
|
233
|
-
|
|
234
|
-
```typescript
|
|
235
|
-
import { getStorage, getAIOperations, buildAIConfig } from "task-o-matic";
|
|
236
|
-
|
|
237
|
-
// Get singleton instances
|
|
238
|
-
const storage = getStorage();
|
|
239
|
-
const aiOps = getAIOperations();
|
|
240
|
-
|
|
241
|
-
// Build AI configuration
|
|
242
|
-
const aiConfig = buildAIConfig({
|
|
243
|
-
provider: "openai",
|
|
244
|
-
model: "gpt-4",
|
|
245
|
-
apiKey: process.env.OPENAI_API_KEY,
|
|
246
|
-
});
|
|
247
|
-
|
|
248
|
-
// Use storage directly
|
|
249
|
-
const allTasks = await storage.getAllTasks();
|
|
250
|
-
```
|
|
251
|
-
|
|
252
|
-
#### TypeScript Support
|
|
253
|
-
|
|
254
|
-
The package includes full TypeScript type definitions:
|
|
255
|
-
|
|
256
|
-
```typescript
|
|
257
|
-
import type {
|
|
258
|
-
Task,
|
|
259
|
-
AIConfig,
|
|
260
|
-
StreamingOptions,
|
|
261
|
-
CreateTaskOptions,
|
|
262
|
-
PRDParseResult,
|
|
263
|
-
TaskAIMetadata,
|
|
264
|
-
// Workflow types
|
|
265
|
-
WorkflowService,
|
|
266
|
-
InitializeResult,
|
|
267
|
-
DefinePRDResult,
|
|
268
|
-
RefinePRDResult,
|
|
269
|
-
GenerateTasksResult,
|
|
270
|
-
SplitTasksResult,
|
|
271
|
-
// Benchmark types
|
|
272
|
-
WorkflowBenchmarkInput,
|
|
273
|
-
WorkflowBenchmarkResult,
|
|
274
|
-
BenchmarkConfig,
|
|
275
|
-
BenchmarkResult,
|
|
276
|
-
} from "task-o-matic";
|
|
277
|
-
```
|
|
278
|
-
|
|
279
|
-
### CLI Usage
|
|
280
|
-
|
|
281
|
-
#### 1. Initialize Your Project
|
|
138
|
+
Create a new task.
|
|
282
139
|
|
|
283
140
|
```bash
|
|
284
|
-
#
|
|
285
|
-
|
|
141
|
+
# Create a basic task
|
|
142
|
+
task-o-matic tasks create --title "Implement user authentication"
|
|
286
143
|
|
|
287
|
-
#
|
|
288
|
-
task-o-matic
|
|
144
|
+
# Create task with content
|
|
145
|
+
task-o-matic tasks create --title "Add payment integration" --content "Integrate Stripe for payment processing"
|
|
289
146
|
|
|
290
|
-
#
|
|
291
|
-
task-o-matic
|
|
147
|
+
# Create task with AI enhancement
|
|
148
|
+
task-o-matic tasks create --title "Implement user authentication" --ai-enhance
|
|
292
149
|
|
|
293
|
-
#
|
|
294
|
-
task-o-matic
|
|
150
|
+
# Create task with streaming AI output
|
|
151
|
+
task-o-matic tasks create --title "Add payment integration" --ai-enhance --stream
|
|
152
|
+
|
|
153
|
+
# Create task with priority and tags
|
|
154
|
+
task-o-matic tasks create --title "Fix critical bug" --priority high --tags bug,urgent
|
|
295
155
|
```
|
|
296
156
|
|
|
297
|
-
|
|
157
|
+
**Options:**
|
|
158
|
+
- `--title <title>`: Task title (required)
|
|
159
|
+
- `--content <content>`: Task description
|
|
160
|
+
- `--ai-enhance`: Enhance task with AI
|
|
161
|
+
- `--stream`: Enable streaming output
|
|
162
|
+
- `--priority <priority>`: Task priority (low, medium, high)
|
|
163
|
+
- `--tags <tags>`: Comma-separated tags
|
|
298
164
|
|
|
299
|
-
|
|
300
|
-
- `tasks/` - Task JSON files
|
|
301
|
-
- `prd/` - PRD versions and logs
|
|
302
|
-
- `logs/` - Operation logs
|
|
303
|
-
- `bts-config.json` - Better-T-Stack configuration (if bootstrapped)
|
|
165
|
+
#### `task-o-matic tasks list`
|
|
304
166
|
|
|
305
|
-
|
|
167
|
+
List all tasks.
|
|
306
168
|
|
|
307
169
|
```bash
|
|
308
|
-
#
|
|
309
|
-
task-o-matic
|
|
170
|
+
# List all tasks
|
|
171
|
+
task-o-matic tasks list
|
|
310
172
|
|
|
311
|
-
#
|
|
312
|
-
task-o-matic
|
|
173
|
+
# List tasks by status
|
|
174
|
+
task-o-matic tasks list --status todo
|
|
175
|
+
task-o-matic tasks list --status in-progress
|
|
176
|
+
task-o-matic tasks list --status completed
|
|
313
177
|
|
|
314
|
-
#
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
178
|
+
# List tasks with raw JSON output
|
|
179
|
+
task-o-matic tasks list --raw
|
|
180
|
+
|
|
181
|
+
# List tasks with tree view
|
|
182
|
+
task-o-matic tasks list --tree
|
|
318
183
|
```
|
|
319
184
|
|
|
320
|
-
|
|
185
|
+
**Options:**
|
|
186
|
+
- `--status <status>`: Filter by status (todo, in-progress, completed)
|
|
187
|
+
- `--raw`: Output raw JSON
|
|
188
|
+
- `--tree`: Show task tree with subtasks
|
|
321
189
|
|
|
322
|
-
|
|
323
|
-
# Bootstrap with defaults (Next.js + Hono + SQLite + Auth)
|
|
324
|
-
task-o-matic init bootstrap my-app
|
|
190
|
+
#### `task-o-matic tasks show`
|
|
325
191
|
|
|
326
|
-
|
|
327
|
-
|
|
192
|
+
Display details of a specific task.
|
|
193
|
+
|
|
194
|
+
```bash
|
|
195
|
+
task-o-matic tasks show <task-id>
|
|
328
196
|
```
|
|
329
197
|
|
|
330
|
-
|
|
198
|
+
#### `task-o-matic tasks update`
|
|
199
|
+
|
|
200
|
+
Update a task.
|
|
331
201
|
|
|
332
202
|
```bash
|
|
333
|
-
#
|
|
334
|
-
task-o-matic tasks
|
|
203
|
+
# Update task status
|
|
204
|
+
task-o-matic tasks update <task-id> --status in-progress
|
|
335
205
|
|
|
336
|
-
#
|
|
337
|
-
task-o-matic tasks
|
|
206
|
+
# Update task title
|
|
207
|
+
task-o-matic tasks update <task-id> --title "New title"
|
|
338
208
|
|
|
339
|
-
#
|
|
340
|
-
task-o-matic
|
|
209
|
+
# Update task content
|
|
210
|
+
task-o-matic tasks update <task-id> --content "New description"
|
|
341
211
|
|
|
342
|
-
#
|
|
343
|
-
task-o-matic
|
|
212
|
+
# Update task priority
|
|
213
|
+
task-o-matic tasks update <task-id> --priority high
|
|
344
214
|
|
|
345
|
-
#
|
|
346
|
-
task-o-matic tasks
|
|
215
|
+
# Update task tags
|
|
216
|
+
task-o-matic tasks update <task-id> --tags updated,important
|
|
347
217
|
```
|
|
348
218
|
|
|
349
|
-
|
|
219
|
+
**Options:**
|
|
220
|
+
- `--status <status>`: New status (todo, in-progress, completed)
|
|
221
|
+
- `--title <title>`: New title
|
|
222
|
+
- `--content <content>`: New content
|
|
223
|
+
- `--priority <priority>`: New priority (low, medium, high)
|
|
224
|
+
- `--tags <tags>`: Comma-separated tags
|
|
225
|
+
|
|
226
|
+
#### `task-o-matic tasks delete`
|
|
350
227
|
|
|
351
|
-
|
|
228
|
+
Delete a task.
|
|
352
229
|
|
|
353
230
|
```bash
|
|
354
|
-
|
|
355
|
-
|
|
231
|
+
task-o-matic tasks delete <task-id>
|
|
232
|
+
```
|
|
356
233
|
|
|
357
|
-
|
|
358
|
-
|
|
234
|
+
#### `task-o-matic tasks split`
|
|
235
|
+
|
|
236
|
+
Split a complex task into subtasks.
|
|
237
|
+
|
|
238
|
+
```bash
|
|
239
|
+
# Split a specific task
|
|
240
|
+
task-o-matic tasks split <task-id>
|
|
241
|
+
|
|
242
|
+
# Split with streaming output
|
|
243
|
+
task-o-matic tasks split <task-id> --stream
|
|
359
244
|
|
|
360
|
-
#
|
|
361
|
-
task-o-matic
|
|
245
|
+
# Split with custom instructions
|
|
246
|
+
task-o-matic tasks split <task-id> --instructions "Break into 2-4 hour chunks"
|
|
362
247
|
```
|
|
363
248
|
|
|
364
|
-
**
|
|
249
|
+
**Options:**
|
|
250
|
+
- `--stream`: Enable streaming output
|
|
251
|
+
- `--instructions <instructions>`: Custom instructions for AI
|
|
365
252
|
|
|
366
|
-
|
|
367
|
-
2. **PRD Definition** - Upload file, write manually, or use AI to generate from description
|
|
368
|
-
3. **PRD Question/Refine** (NEW) - AI generates clarifying questions and refines PRD
|
|
369
|
-
- User can answer questions interactively
|
|
370
|
-
- OR AI can answer with PRD + stack context
|
|
371
|
-
- Optional: Use different AI model for answering (e.g., smarter model)
|
|
372
|
-
- Optional: Enable reasoning for better answers
|
|
373
|
-
4. **PRD Manual Refinement** - Optional additional AI-assisted improvements
|
|
374
|
-
5. **Task Generation** - Parse PRD into actionable tasks
|
|
375
|
-
6. **Task Splitting** - Break down complex tasks into subtasks
|
|
253
|
+
#### `task-o-matic tasks enhance`
|
|
376
254
|
|
|
377
|
-
|
|
255
|
+
Enhance a task with AI.
|
|
378
256
|
|
|
379
|
-
|
|
257
|
+
```bash
|
|
258
|
+
# Enhance task
|
|
259
|
+
task-o-matic tasks enhance <task-id>
|
|
260
|
+
|
|
261
|
+
# Enhance with streaming
|
|
262
|
+
task-o-matic tasks enhance <task-id> --stream
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
**Options:**
|
|
266
|
+
- `--stream`: Enable streaming output
|
|
267
|
+
|
|
268
|
+
#### `task-o-matic tasks execute`
|
|
269
|
+
|
|
270
|
+
Execute a task with AI assistance.
|
|
380
271
|
|
|
381
272
|
```bash
|
|
382
|
-
#
|
|
383
|
-
task-o-matic
|
|
273
|
+
# Execute task
|
|
274
|
+
task-o-matic tasks execute <task-id>
|
|
384
275
|
|
|
385
|
-
#
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
#
|
|
389
|
-
|
|
276
|
+
# Execute with streaming
|
|
277
|
+
task-o-matic tasks execute <task-id> --stream
|
|
278
|
+
|
|
279
|
+
# Execute in loop mode
|
|
280
|
+
task-o-matic tasks execute <task-id> --loop
|
|
390
281
|
```
|
|
391
282
|
|
|
392
|
-
|
|
283
|
+
**Options:**
|
|
284
|
+
- `--stream`: Enable streaming output
|
|
285
|
+
- `--loop`: Execute in loop mode (continue until completion)
|
|
286
|
+
|
|
287
|
+
#### `task-o-matic tasks next`
|
|
393
288
|
|
|
394
|
-
|
|
395
|
-
- [Task Management](docs/tasks.md) - Full task lifecycle with AI features
|
|
396
|
-
- [PRD Processing](docs/prd.md) - Parse and rework Product Requirements Documents
|
|
397
|
-
- [Interactive Workflow](docs/workflow-command.md) - Guided setup with AI assistance
|
|
398
|
-
- [AI Integration](docs/ai-integration.md) - AI providers and prompt engineering
|
|
399
|
-
- [Project Initialization](docs/projects.md) - Project setup and bootstrapping
|
|
400
|
-
- [Streaming Output](docs/streaming.md) - Real-time AI streaming capabilities
|
|
401
|
-
- [Model Benchmarking](docs/benchmarking.md) - Compare AI models and workflow performance
|
|
289
|
+
Get the next task to work on.
|
|
402
290
|
|
|
403
|
-
|
|
291
|
+
```bash
|
|
292
|
+
task-o-matic tasks next
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
#### `task-o-matic tasks status`
|
|
404
296
|
|
|
405
|
-
|
|
297
|
+
Show task status summary.
|
|
406
298
|
|
|
407
299
|
```bash
|
|
408
|
-
|
|
409
|
-
|
|
300
|
+
task-o-matic tasks status
|
|
301
|
+
```
|
|
410
302
|
|
|
411
|
-
|
|
412
|
-
# 1. Project initialization with AI-assisted configuration
|
|
413
|
-
# 2. PRD creation (manual, upload, or AI-generated)
|
|
414
|
-
# 3. PRD refinement with AI feedback
|
|
415
|
-
# 4. Task generation from PRD
|
|
416
|
-
# 5. Complex task splitting
|
|
303
|
+
#### `task-o-matic tasks tree`
|
|
417
304
|
|
|
418
|
-
|
|
419
|
-
|
|
305
|
+
Display task hierarchy as a tree.
|
|
306
|
+
|
|
307
|
+
```bash
|
|
420
308
|
task-o-matic tasks tree
|
|
421
309
|
```
|
|
422
310
|
|
|
423
|
-
|
|
311
|
+
#### `task-o-matic tasks tags`
|
|
312
|
+
|
|
313
|
+
List all tags used across tasks.
|
|
424
314
|
|
|
425
315
|
```bash
|
|
426
|
-
|
|
427
|
-
|
|
316
|
+
task-o-matic tasks tags
|
|
317
|
+
```
|
|
428
318
|
|
|
429
|
-
|
|
430
|
-
task-o-matic config set-ai-provider anthropic claude-3-5-sonnet
|
|
319
|
+
#### `task-o-matic tasks subtasks`
|
|
431
320
|
|
|
432
|
-
|
|
433
|
-
task-o-matic prd parse --file requirements.md --stream
|
|
321
|
+
Show subtasks for a task.
|
|
434
322
|
|
|
435
|
-
|
|
436
|
-
task-o-matic tasks
|
|
437
|
-
task-o-matic tasks split --task-id <complex-task-id>
|
|
323
|
+
```bash
|
|
324
|
+
task-o-matic tasks subtasks <task-id>
|
|
438
325
|
```
|
|
439
326
|
|
|
440
|
-
###
|
|
327
|
+
### Task Document Commands
|
|
328
|
+
|
|
329
|
+
#### `task-o-matic tasks document add`
|
|
330
|
+
|
|
331
|
+
Add documentation to a task.
|
|
441
332
|
|
|
442
333
|
```bash
|
|
443
|
-
|
|
444
|
-
|
|
334
|
+
task-o-matic tasks document add <task-id> --file ./docs/implementation.md
|
|
335
|
+
```
|
|
445
336
|
|
|
446
|
-
|
|
447
|
-
|
|
337
|
+
**Options:**
|
|
338
|
+
- `--file <file>`: Documentation file to add
|
|
448
339
|
|
|
449
|
-
|
|
450
|
-
|
|
340
|
+
#### `task-o-matic tasks document get`
|
|
341
|
+
|
|
342
|
+
Get documentation for a task.
|
|
343
|
+
|
|
344
|
+
```bash
|
|
345
|
+
task-o-matic tasks document get <task-id>
|
|
451
346
|
```
|
|
452
347
|
|
|
453
|
-
|
|
348
|
+
#### `task-o-matic tasks document analyze`
|
|
454
349
|
|
|
455
|
-
|
|
350
|
+
Analyze task documentation with AI.
|
|
456
351
|
|
|
457
352
|
```bash
|
|
458
|
-
|
|
459
|
-
task-o-matic benchmark run prd-parse \
|
|
460
|
-
--file requirements.md \
|
|
461
|
-
--models "openai:gpt-4o,openrouter:anthropic/claude-3.5-sonnet" \
|
|
462
|
-
--concurrency 5
|
|
353
|
+
task-o-matic tasks document analyze <task-id>
|
|
463
354
|
|
|
464
|
-
#
|
|
465
|
-
task-o-matic
|
|
355
|
+
# Analyze with streaming
|
|
356
|
+
task-o-matic tasks document analyze <task-id> --stream
|
|
357
|
+
```
|
|
466
358
|
|
|
467
|
-
|
|
468
|
-
|
|
359
|
+
**Options:**
|
|
360
|
+
- `--stream`: Enable streaming output
|
|
361
|
+
|
|
362
|
+
### Task Plan Commands
|
|
363
|
+
|
|
364
|
+
#### `task-o-matic tasks plan create`
|
|
365
|
+
|
|
366
|
+
Create a plan for a task.
|
|
367
|
+
|
|
368
|
+
```bash
|
|
369
|
+
task-o-matic tasks plan create <task-id> --instructions "Break down into steps"
|
|
469
370
|
```
|
|
470
371
|
|
|
471
|
-
|
|
372
|
+
**Options:**
|
|
373
|
+
- `--instructions <instructions>`: Planning instructions
|
|
472
374
|
|
|
473
|
-
|
|
375
|
+
#### `task-o-matic tasks plan get`
|
|
376
|
+
|
|
377
|
+
Get the plan for a task.
|
|
474
378
|
|
|
475
379
|
```bash
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
--models "openai:gpt-4o,anthropic:claude-3-5-sonnet,openrouter:qwen/qwen-2.5-72b-instruct" \
|
|
479
|
-
--concurrency 2 \
|
|
480
|
-
--delay 1000
|
|
380
|
+
task-o-matic tasks plan get <task-id>
|
|
381
|
+
```
|
|
481
382
|
|
|
482
|
-
|
|
483
|
-
task-o-matic benchmark workflow \
|
|
484
|
-
--models "openai:gpt-4o,anthropic:claude-3-5-sonnet" \
|
|
485
|
-
--project-name "my-saas-app" \
|
|
486
|
-
--project-description "Team collaboration platform with real-time chat" \
|
|
487
|
-
--init-method ai \
|
|
488
|
-
--prd-method ai \
|
|
489
|
-
--auto-accept \
|
|
490
|
-
--skip-all
|
|
383
|
+
#### `task-o-matic tasks plan set`
|
|
491
384
|
|
|
492
|
-
|
|
493
|
-
task-o-matic benchmark workflow \
|
|
494
|
-
--models "openai:gpt-4o,anthropic:claude-3-5-sonnet" \
|
|
495
|
-
--project-name "e-commerce-app" \
|
|
496
|
-
--init-method custom \
|
|
497
|
-
--frontend next \
|
|
498
|
-
--backend hono \
|
|
499
|
-
--database postgres \
|
|
500
|
-
--prd-method ai \
|
|
501
|
-
--prd-description "Modern e-commerce platform with AI recommendations" \
|
|
502
|
-
--refine-feedback "Focus on scalability and security" \
|
|
503
|
-
--split-all
|
|
385
|
+
Set a plan for a task.
|
|
504
386
|
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
# - Detailed per-model breakdowns with timing and token metrics
|
|
508
|
-
# - Interactive selection to choose the best model
|
|
509
|
-
# - Automatic project setup with selected model's results
|
|
387
|
+
```bash
|
|
388
|
+
task-o-matic tasks plan set <task-id> --plan "Step 1: Setup\nStep 2: Implement\nStep 3: Test"
|
|
510
389
|
```
|
|
511
390
|
|
|
512
|
-
**
|
|
391
|
+
**Options:**
|
|
392
|
+
- `--plan <plan>`: Plan content
|
|
513
393
|
|
|
514
|
-
|
|
515
|
-
- **Complete Workflow**: Project init → PRD creation → task generation → task splitting
|
|
516
|
-
- **Comprehensive Metrics**: Performance, cost, quality, and output comparison
|
|
517
|
-
- **Model Selection**: Choose the best performer and auto-setup your project
|
|
518
|
-
- **Identical Conditions**: All models receive the same inputs for fair comparison
|
|
394
|
+
#### `task-o-matic tasks plan delete`
|
|
519
395
|
|
|
520
|
-
|
|
396
|
+
Delete the plan for a task.
|
|
521
397
|
|
|
522
398
|
```bash
|
|
523
|
-
|
|
524
|
-
|
|
399
|
+
task-o-matic tasks plan delete <task-id>
|
|
400
|
+
```
|
|
525
401
|
|
|
526
|
-
|
|
527
|
-
task-o-matic init init --no-bootstrap
|
|
528
|
-
task-o-matic init bootstrap my-app --frontend next --backend hono
|
|
402
|
+
#### `task-o-matic tasks plan list`
|
|
529
403
|
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
task-o-matic
|
|
404
|
+
List all tasks with plans.
|
|
405
|
+
|
|
406
|
+
```bash
|
|
407
|
+
task-o-matic tasks plan list
|
|
408
|
+
```
|
|
534
409
|
|
|
535
|
-
|
|
536
|
-
|
|
410
|
+
### PRD Commands
|
|
411
|
+
|
|
412
|
+
#### `task-o-matic prd parse`
|
|
413
|
+
|
|
414
|
+
Parse a PRD file into tasks.
|
|
415
|
+
|
|
416
|
+
```bash
|
|
417
|
+
# Parse PRD file
|
|
418
|
+
task-o-matic prd parse --file requirements.md
|
|
419
|
+
|
|
420
|
+
# Parse with streaming output
|
|
421
|
+
task-o-matic prd parse --file requirements.md --stream
|
|
422
|
+
|
|
423
|
+
# Parse with custom instructions
|
|
424
|
+
task-o-matic prd parse --file requirements.md --instructions "Focus on MVP features"
|
|
425
|
+
```
|
|
426
|
+
|
|
427
|
+
**Options:**
|
|
428
|
+
- `--file <file>`: PRD file to parse (required)
|
|
429
|
+
- `--stream`: Enable streaming output
|
|
430
|
+
- `--instructions <instructions>`: Custom instructions for AI
|
|
431
|
+
|
|
432
|
+
#### `task-o-matic prd rework`
|
|
433
|
+
|
|
434
|
+
Rework a PRD with AI feedback.
|
|
435
|
+
|
|
436
|
+
```bash
|
|
437
|
+
# Rework PRD
|
|
438
|
+
task-o-matic prd rework --file requirements.md --feedback "Add more security details"
|
|
439
|
+
|
|
440
|
+
# Rework with streaming
|
|
441
|
+
task-o-matic prd rework --file requirements.md --feedback "Focus on scalability" --stream
|
|
537
442
|
```
|
|
538
443
|
|
|
539
|
-
|
|
444
|
+
**Options:**
|
|
445
|
+
- `--file <file>`: PRD file to rework (required)
|
|
446
|
+
- `--feedback <feedback>`: Feedback for AI (required)
|
|
447
|
+
- `--stream`: Enable streaming output
|
|
448
|
+
|
|
449
|
+
### Workflow Commands
|
|
450
|
+
|
|
451
|
+
#### `task-o-matic workflow`
|
|
452
|
+
|
|
453
|
+
Interactive workflow for complete project setup.
|
|
454
|
+
|
|
455
|
+
```bash
|
|
456
|
+
# Start interactive workflow
|
|
457
|
+
task-o-matic workflow
|
|
540
458
|
|
|
541
|
-
|
|
459
|
+
# Start with streaming output
|
|
460
|
+
task-o-matic workflow --stream
|
|
542
461
|
|
|
543
|
-
|
|
462
|
+
# Automated workflow with all options
|
|
463
|
+
task-o-matic workflow \
|
|
464
|
+
--project-name my-saas-app \
|
|
465
|
+
--project-description "Team collaboration platform" \
|
|
466
|
+
--init-method ai \
|
|
467
|
+
--prd-method ai \
|
|
468
|
+
--prd-description "Real-time chat and file sharing" \
|
|
469
|
+
--refine-feedback "Add security details" \
|
|
470
|
+
--generate-instructions "Break into 2-4 hour tasks" \
|
|
471
|
+
--split-all \
|
|
472
|
+
--auto-accept \
|
|
473
|
+
--stream
|
|
474
|
+
```
|
|
475
|
+
|
|
476
|
+
**Options:**
|
|
477
|
+
- `--project-name <name>`: Project name
|
|
478
|
+
- `--project-description <description>`: Project description
|
|
479
|
+
- `--init-method <method>`: Initialization method (quick, custom, ai)
|
|
480
|
+
- `--frontend <framework>`: Frontend framework
|
|
481
|
+
- `--backend <framework>`: Backend framework
|
|
482
|
+
- `--database <db>`: Database
|
|
483
|
+
- `--auth/--no-auth`: Enable/disable authentication
|
|
484
|
+
- `--prd-method <method>`: PRD creation method (file, manual, ai)
|
|
485
|
+
- `--prd-file <file>`: PRD file path
|
|
486
|
+
- `--prd-content <content>`: PRD content
|
|
487
|
+
- `--prd-description <description>`: PRD description (for AI method)
|
|
488
|
+
- `--refine-feedback <feedback>`: Feedback for PRD refinement
|
|
489
|
+
- `--generate-instructions <instructions>`: Instructions for task generation
|
|
490
|
+
- `--split-tasks/--no-split-tasks`: Enable/disable task splitting
|
|
491
|
+
- `--split-all`: Split all complex tasks
|
|
492
|
+
- `--split-instructions <instructions>`: Instructions for task splitting
|
|
493
|
+
- `--skip-init`: Skip initialization step
|
|
494
|
+
- `--skip-prd`: Skip PRD step
|
|
495
|
+
- `--skip-refine`: Skip PRD refinement step
|
|
496
|
+
- `--skip-generate`: Skip task generation step
|
|
497
|
+
- `--skip-split`: Skip task splitting step
|
|
498
|
+
- `--auto-accept`: Auto-accept all prompts
|
|
499
|
+
- `--stream`: Enable streaming output
|
|
500
|
+
- `--config-file <file>`: Load workflow from config file
|
|
501
|
+
|
|
502
|
+
### Benchmark Commands
|
|
503
|
+
|
|
504
|
+
#### `task-o-matic benchmark run`
|
|
505
|
+
|
|
506
|
+
Run a benchmark on specific operations.
|
|
544
507
|
|
|
545
508
|
```bash
|
|
546
|
-
# Benchmark PRD parsing
|
|
509
|
+
# Benchmark PRD parsing
|
|
547
510
|
task-o-matic benchmark run prd-parse \
|
|
548
511
|
--file requirements.md \
|
|
549
|
-
--models "openai:gpt-4o,anthropic:claude-3-5-sonnet
|
|
550
|
-
--concurrency 3
|
|
551
|
-
--delay 1000
|
|
512
|
+
--models "openai:gpt-4o,anthropic:claude-3-5-sonnet" \
|
|
513
|
+
--concurrency 3
|
|
552
514
|
|
|
553
|
-
# Benchmark task
|
|
515
|
+
# Benchmark task breakdown
|
|
554
516
|
task-o-matic benchmark run task-breakdown \
|
|
555
517
|
--task-id <task-id> \
|
|
556
518
|
--models "openai:gpt-4o,anthropic:claude-3-5-sonnet" \
|
|
557
519
|
--concurrency 2
|
|
558
|
-
|
|
559
|
-
# View benchmark results
|
|
560
|
-
task-o-matic benchmark list
|
|
561
|
-
task-o-matic benchmark show <run-id>
|
|
562
|
-
task-o-matic benchmark compare <run-id>
|
|
563
520
|
```
|
|
564
521
|
|
|
565
|
-
|
|
522
|
+
**Options:**
|
|
523
|
+
- `--models <models>`: Comma-separated model list (required)
|
|
524
|
+
- `--concurrency <number>`: Max parallel requests (default: 3)
|
|
525
|
+
- `--delay <ms>`: Delay between requests (default: 1000ms)
|
|
526
|
+
|
|
527
|
+
#### `task-o-matic benchmark workflow`
|
|
566
528
|
|
|
567
|
-
|
|
529
|
+
Benchmark complete workflow across multiple AI models.
|
|
568
530
|
|
|
569
531
|
```bash
|
|
570
|
-
# Interactive workflow benchmark
|
|
532
|
+
# Interactive workflow benchmark
|
|
571
533
|
task-o-matic benchmark workflow \
|
|
572
534
|
--models "openai:gpt-4o,anthropic:claude-3-5-sonnet,openrouter:qwen/qwen-2.5-72b-instruct"
|
|
573
|
-
```
|
|
574
|
-
|
|
575
|
-
**What happens:**
|
|
576
|
-
1. **Phase 1**: You answer workflow questions once (project setup, PRD creation, etc.)
|
|
577
|
-
2. **Phase 2**: All models execute the identical workflow in parallel
|
|
578
|
-
3. **Results**: Comprehensive comparison table with metrics and model selection
|
|
579
535
|
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
```bash
|
|
536
|
+
# Automated workflow benchmark
|
|
583
537
|
task-o-matic benchmark workflow \
|
|
584
538
|
--models "openai:gpt-4o,anthropic:claude-3-5-sonnet" \
|
|
585
|
-
--project-name "my-saas-
|
|
586
|
-
--project-description "Team collaboration platform
|
|
539
|
+
--project-name "my-saas-app" \
|
|
540
|
+
--project-description "Team collaboration platform" \
|
|
587
541
|
--init-method ai \
|
|
588
542
|
--prd-method ai \
|
|
589
543
|
--auto-accept \
|
|
590
|
-
--refine-feedback "Add more technical details and security considerations" \
|
|
591
|
-
--generate-instructions "Focus on MVP features and break into small tasks" \
|
|
592
544
|
--split-all \
|
|
593
545
|
--concurrency 2 \
|
|
594
546
|
--delay 2000
|
|
595
547
|
```
|
|
596
548
|
|
|
597
|
-
**
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
Model | Duration | Tasks | PRD Size | Steps | Cost
|
|
603
|
-
---------------------------------------- | ---------- | ----- | ---------- | ----- | ----------
|
|
604
|
-
openai:gpt-4o | 45234ms | 12 | 2843 chars | 5/5 | $0.023400
|
|
605
|
-
anthropic:claude-3-5-sonnet | 42156ms | 15 | 3021 chars | 5/5 | $0.019800
|
|
549
|
+
**Options:**
|
|
550
|
+
All workflow options are supported, plus:
|
|
551
|
+
- `--models <models>`: Comma-separated model list (required)
|
|
552
|
+
- `--concurrency <number>`: Max parallel requests (default: 3)
|
|
553
|
+
- `--delay <ms>`: Delay between requests (default: 1000ms)
|
|
606
554
|
|
|
607
|
-
|
|
555
|
+
#### `task-o-matic benchmark list`
|
|
608
556
|
|
|
609
|
-
|
|
610
|
-
Duration: 45234ms
|
|
611
|
-
Steps Completed: 5/5
|
|
612
|
-
Init: 2341ms
|
|
613
|
-
PRD Generation: 12456ms
|
|
614
|
-
Task Generation: 8234ms
|
|
615
|
-
Task Splitting: 3421ms
|
|
616
|
-
Tasks Created: 12
|
|
617
|
-
PRD Size: 2843 characters
|
|
618
|
-
Tokens: 4521 (Prompt: 2341, Completion: 2180)
|
|
619
|
-
Cost: $0.023400
|
|
557
|
+
List all benchmark runs.
|
|
620
558
|
|
|
621
|
-
|
|
622
|
-
|
|
559
|
+
```bash
|
|
560
|
+
task-o-matic benchmark list
|
|
623
561
|
```
|
|
624
562
|
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
All benchmark commands support:
|
|
628
|
-
|
|
629
|
-
- `--models <list>`: Comma-separated model list (required)
|
|
630
|
-
- `--concurrency <number>`: Max parallel requests (default: 3)
|
|
631
|
-
- `--delay <ms>`: Delay between requests (default: 1000ms)
|
|
563
|
+
#### `task-o-matic benchmark show`
|
|
632
564
|
|
|
633
|
-
|
|
565
|
+
Show details of a benchmark run.
|
|
634
566
|
|
|
635
|
-
|
|
636
|
-
-
|
|
637
|
-
|
|
638
|
-
- `openrouter:anthropic/claude-3.5-sonnet`
|
|
639
|
-
- `openrouter:openai/o1-preview:reasoning=50000`
|
|
567
|
+
```bash
|
|
568
|
+
task-o-matic benchmark show <run-id>
|
|
569
|
+
```
|
|
640
570
|
|
|
641
|
-
|
|
571
|
+
#### `task-o-matic benchmark compare`
|
|
642
572
|
|
|
643
|
-
|
|
573
|
+
Compare benchmark results.
|
|
644
574
|
|
|
645
575
|
```bash
|
|
646
|
-
|
|
647
|
-
--project-name, --init-method, --project-description
|
|
648
|
-
--frontend, --backend, --database, --auth/--no-auth
|
|
649
|
-
--prd-method, --prd-file, --prd-description, --prd-content
|
|
650
|
-
--refine-feedback, --generate-instructions
|
|
651
|
-
--split-tasks, --split-all, --split-instructions
|
|
652
|
-
--skip-init, --skip-prd, --skip-refine, --skip-generate, --skip-split
|
|
653
|
-
--stream, --auto-accept, --config-file
|
|
576
|
+
task-o-matic benchmark compare <run-id>
|
|
654
577
|
```
|
|
655
578
|
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
-
|
|
659
|
-
- **Compare identical workflows** across different models
|
|
660
|
-
- **Test specific scenarios** (e.g., only AI vs only custom stack)
|
|
661
|
-
```
|
|
579
|
+
### Prompt Commands
|
|
580
|
+
|
|
581
|
+
#### `task-o-matic prompt`
|
|
662
582
|
|
|
663
|
-
|
|
583
|
+
Run an AI prompt with context.
|
|
664
584
|
|
|
665
585
|
```bash
|
|
666
|
-
#
|
|
667
|
-
|
|
668
|
-
ANTHROPIC_API_KEY=your_anthropic_key
|
|
669
|
-
OPENROUTER_API_KEY=your_openrouter_key
|
|
670
|
-
CUSTOM_API_KEY=your_custom_key
|
|
671
|
-
CUSTOM_API_URL=https://api.custom.com/v1
|
|
586
|
+
# Run a simple prompt
|
|
587
|
+
task-o-matic prompt "How do I implement authentication?"
|
|
672
588
|
|
|
673
|
-
#
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
589
|
+
# Run prompt with streaming
|
|
590
|
+
task-o-matic prompt "Explain the architecture" --stream
|
|
591
|
+
|
|
592
|
+
# Run prompt with file context
|
|
593
|
+
task-o-matic prompt "Review this code" --file ./src/auth.ts
|
|
678
594
|
```
|
|
679
595
|
|
|
680
|
-
|
|
596
|
+
**Options:**
|
|
597
|
+
- `--stream`: Enable streaming output
|
|
598
|
+
- `--file <file>`: Add file context to prompt
|
|
681
599
|
|
|
682
|
-
###
|
|
600
|
+
### Install Commands
|
|
683
601
|
|
|
684
|
-
-
|
|
685
|
-
- **Anthropic**: Claude models with enhanced reasoning
|
|
686
|
-
- **OpenRouter**: Access to multiple models through one API
|
|
687
|
-
- **Custom**: Any OpenAI-compatible API endpoint
|
|
602
|
+
#### `task-o-matic install`
|
|
688
603
|
|
|
689
|
-
|
|
604
|
+
Install shell completions.
|
|
690
605
|
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
-
|
|
694
|
-
- **Workflow Benchmarking**: Test 2-3 models to find optimal performance for your use case
|
|
606
|
+
```bash
|
|
607
|
+
# Install bash completions
|
|
608
|
+
task-o-matic install --shell bash
|
|
695
609
|
|
|
696
|
-
|
|
610
|
+
# Install zsh completions
|
|
611
|
+
task-o-matic install --shell zsh
|
|
697
612
|
|
|
698
|
-
|
|
613
|
+
# Install fish completions
|
|
614
|
+
task-o-matic install --shell fish
|
|
615
|
+
```
|
|
699
616
|
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
task-o-matic benchmark workflow \
|
|
703
|
-
--models "openai:gpt-4o,anthropic:claude-3-5-sonnet,openrouter:qwen/qwen-2.5-72b-instruct" \
|
|
704
|
-
--project-description "Your project description here"
|
|
617
|
+
**Options:**
|
|
618
|
+
- `--shell <shell>`: Shell type (bash, zsh, fish)
|
|
705
619
|
|
|
706
|
-
|
|
707
|
-
# - Performance (speed, tokens, cost)
|
|
708
|
-
# - Quality (tasks created, PRD completeness)
|
|
709
|
-
# - Best model for your specific needs
|
|
710
|
-
```
|
|
620
|
+
## Common Workflows
|
|
711
621
|
|
|
712
|
-
|
|
622
|
+
### Workflow 1: Complete Project Setup
|
|
713
623
|
|
|
714
|
-
```
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
│ ├── config.json # AI configuration
|
|
718
|
-
│ ├── bts-config.json # Better-T-Stack configuration (if bootstrapped)
|
|
719
|
-
│ ├── tasks/ # Task JSON files
|
|
720
|
-
│ │ ├── {task-id}.json
|
|
721
|
-
│ │ └── ...
|
|
722
|
-
│ ├── prd/ # PRD versions and logs
|
|
723
|
-
│ │ ├── parsed-prd.json
|
|
724
|
-
│ │ └── ...
|
|
725
|
-
│ └── logs/ # Operation logs
|
|
726
|
-
│ └── ...
|
|
727
|
-
└── your-project-files...
|
|
728
|
-
```
|
|
624
|
+
```bash
|
|
625
|
+
# One command to initialize everything
|
|
626
|
+
task-o-matic workflow --stream
|
|
729
627
|
|
|
730
|
-
|
|
628
|
+
# The workflow will guide you through:
|
|
629
|
+
# 1. Project initialization
|
|
630
|
+
# 2. PRD creation
|
|
631
|
+
# 3. PRD refinement
|
|
632
|
+
# 4. Task generation
|
|
633
|
+
# 5. Task breakdown
|
|
634
|
+
```
|
|
731
635
|
|
|
732
|
-
###
|
|
636
|
+
### Workflow 2: From PRD to Tasks
|
|
733
637
|
|
|
734
638
|
```bash
|
|
735
|
-
#
|
|
736
|
-
|
|
737
|
-
cd task-o-matic
|
|
738
|
-
npm install
|
|
639
|
+
# 1. Initialize project
|
|
640
|
+
task-o-matic init init --project-name my-app
|
|
739
641
|
|
|
740
|
-
#
|
|
741
|
-
|
|
642
|
+
# 2. Configure AI provider
|
|
643
|
+
task-o-matic config set-ai-provider anthropic claude-3-5-sonnet
|
|
644
|
+
|
|
645
|
+
# 3. Parse PRD with streaming
|
|
646
|
+
task-o-matic prd parse --file requirements.md --stream
|
|
742
647
|
|
|
743
|
-
#
|
|
744
|
-
|
|
648
|
+
# 4. Review and enhance tasks
|
|
649
|
+
task-o-matic tasks list --tree
|
|
745
650
|
|
|
746
|
-
#
|
|
747
|
-
|
|
651
|
+
# 5. Split complex tasks
|
|
652
|
+
task-o-matic tasks split <complex-task-id> --stream
|
|
748
653
|
```
|
|
749
654
|
|
|
750
|
-
###
|
|
655
|
+
### Workflow 3: Task Enhancement
|
|
751
656
|
|
|
752
657
|
```bash
|
|
753
|
-
#
|
|
754
|
-
|
|
658
|
+
# 1. Create basic task
|
|
659
|
+
task-o-matic tasks create --title "Add payment system"
|
|
755
660
|
|
|
756
|
-
#
|
|
757
|
-
|
|
661
|
+
# 2. Enhance with AI and streaming
|
|
662
|
+
task-o-matic tasks create --title "Add payment system" --ai-enhance --stream
|
|
758
663
|
|
|
759
|
-
#
|
|
760
|
-
|
|
664
|
+
# 3. Break down into subtasks
|
|
665
|
+
task-o-matic tasks split <task-id> --stream
|
|
666
|
+
```
|
|
667
|
+
|
|
668
|
+
### Workflow 4: AI Model Comparison
|
|
761
669
|
|
|
762
|
-
|
|
763
|
-
|
|
670
|
+
```bash
|
|
671
|
+
# Benchmark workflow across multiple models
|
|
672
|
+
task-o-matic benchmark workflow \
|
|
673
|
+
--models "openai:gpt-4o,anthropic:claude-3-5-sonnet,openrouter:qwen/qwen-2.5-72b-instruct" \
|
|
674
|
+
--project-description "E-commerce platform with AI recommendations"
|
|
675
|
+
|
|
676
|
+
# The benchmark will:
|
|
677
|
+
# 1. Collect workflow questions once
|
|
678
|
+
# 2. Execute identical workflows in parallel
|
|
679
|
+
# 3. Show comprehensive comparison
|
|
680
|
+
# 4. Allow you to select the best model
|
|
764
681
|
```
|
|
765
682
|
|
|
766
|
-
###
|
|
683
|
+
### Workflow 5: Daily Task Management
|
|
767
684
|
|
|
768
685
|
```bash
|
|
769
|
-
#
|
|
770
|
-
|
|
686
|
+
# Get next task
|
|
687
|
+
task-o-matic tasks next
|
|
688
|
+
|
|
689
|
+
# Update task status
|
|
690
|
+
task-o-matic tasks update <task-id> --status in-progress
|
|
771
691
|
|
|
772
|
-
#
|
|
773
|
-
task-o-matic --
|
|
692
|
+
# Execute task with AI assistance
|
|
693
|
+
task-o-matic tasks execute <task-id> --loop
|
|
774
694
|
|
|
775
|
-
#
|
|
776
|
-
|
|
777
|
-
npm link task-o-matic
|
|
695
|
+
# Mark as completed
|
|
696
|
+
task-o-matic tasks update <task-id> --status completed
|
|
778
697
|
|
|
779
|
-
#
|
|
780
|
-
|
|
698
|
+
# Check progress
|
|
699
|
+
task-o-matic tasks status
|
|
781
700
|
```
|
|
782
701
|
|
|
783
|
-
|
|
702
|
+
## Environment Variables
|
|
784
703
|
|
|
785
|
-
|
|
704
|
+
```bash
|
|
705
|
+
# AI Provider API Keys
|
|
706
|
+
export OPENAI_API_KEY="your_openai_key"
|
|
707
|
+
export ANTHROPIC_API_KEY="your_anthropic_key"
|
|
708
|
+
export OPENROUTER_API_KEY="your_openrouter_key"
|
|
709
|
+
export CUSTOM_API_KEY="your_custom_key"
|
|
710
|
+
export CUSTOM_API_URL="https://api.custom.com/v1"
|
|
786
711
|
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
"task-o-matic": "./dist/cli/bin.js", // CLI binary
|
|
793
|
-
"task-o-matic-mcp": "./dist/mcp/server.js" // MCP server binary
|
|
794
|
-
},
|
|
795
|
-
"exports": {
|
|
796
|
-
".": "./dist/lib/index.js", // Main library export
|
|
797
|
-
"./types": "./dist/types/index.js" // Type-only exports
|
|
798
|
-
}
|
|
799
|
-
}
|
|
712
|
+
# Default AI Configuration
|
|
713
|
+
export AI_PROVIDER="anthropic"
|
|
714
|
+
export AI_MODEL="claude-3-5-sonnet"
|
|
715
|
+
export AI_MAX_TOKENS="4000"
|
|
716
|
+
export AI_TEMPERATURE="0.7"
|
|
800
717
|
```
|
|
801
718
|
|
|
802
|
-
##
|
|
719
|
+
## AI Providers
|
|
803
720
|
|
|
804
|
-
|
|
721
|
+
### Supported Providers
|
|
805
722
|
|
|
806
|
-
|
|
723
|
+
- **OpenAI**: GPT models with full feature support
|
|
724
|
+
- **Anthropic**: Claude models with enhanced reasoning
|
|
725
|
+
- **OpenRouter**: Access to multiple models through one API
|
|
726
|
+
- **Custom**: Any OpenAI-compatible API endpoint
|
|
807
727
|
|
|
808
|
-
|
|
728
|
+
### Model Recommendations
|
|
809
729
|
|
|
810
|
-
**
|
|
730
|
+
- **PRD Parsing**: `claude-3.5-sonnet` or `gpt-4`
|
|
731
|
+
- **Task Enhancement**: `claude-3-haiku` or `gpt-3.5-turbo`
|
|
732
|
+
- **Task Breakdown**: `claude-3.5-sonnet` for complex tasks
|
|
733
|
+
- **Workflow Testing**: Use benchmarking to find optimal performance
|
|
811
734
|
|
|
812
|
-
|
|
813
|
-
# This will start the server using tsx for live reloading
|
|
814
|
-
npm run dev:mcp
|
|
815
|
-
```
|
|
735
|
+
## Storage Structure
|
|
816
736
|
|
|
817
|
-
|
|
818
|
-
First, build the server, then run the executable from your project root.
|
|
737
|
+
All data is stored locally in the `.task-o-matic/` directory:
|
|
819
738
|
|
|
820
|
-
```
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
#
|
|
826
|
-
|
|
739
|
+
```
|
|
740
|
+
your-project/
|
|
741
|
+
├── .task-o-matic/
|
|
742
|
+
│ ├── config.json # AI configuration
|
|
743
|
+
│ ├── bts-config.json # Better-T-Stack configuration (if bootstrapped)
|
|
744
|
+
│ ├── tasks/ # Task JSON files
|
|
745
|
+
│ │ ├── {task-id}.json
|
|
746
|
+
│ │ └── ...
|
|
747
|
+
│ ├── prd/ # PRD versions and logs
|
|
748
|
+
│ │ ├── parsed-prd.json
|
|
749
|
+
│ │ └── ...
|
|
750
|
+
│ └── logs/ # Operation logs
|
|
751
|
+
│ └── ...
|
|
752
|
+
└── your-project-files...
|
|
827
753
|
```
|
|
828
754
|
|
|
829
|
-
|
|
755
|
+
## Shell Completions
|
|
830
756
|
|
|
831
|
-
|
|
757
|
+
Install shell completions for better command-line experience:
|
|
758
|
+
|
|
759
|
+
```bash
|
|
760
|
+
# Bash
|
|
761
|
+
task-o-matic install --shell bash
|
|
762
|
+
source ~/.bashrc
|
|
832
763
|
|
|
833
|
-
|
|
764
|
+
# Zsh
|
|
765
|
+
task-o-matic install --shell zsh
|
|
766
|
+
source ~/.zshrc
|
|
834
767
|
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
"mcpServers": {
|
|
838
|
-
"task-o-matic": {
|
|
839
|
-
"command": "npx",
|
|
840
|
-
"args": ["projpoc-mcp"]
|
|
841
|
-
}
|
|
842
|
-
}
|
|
843
|
-
}
|
|
768
|
+
# Fish
|
|
769
|
+
task-o-matic install --shell fish
|
|
844
770
|
```
|
|
845
771
|
|
|
846
|
-
|
|
772
|
+
## Documentation
|
|
847
773
|
|
|
848
|
-
|
|
774
|
+
For more detailed documentation, see:
|
|
849
775
|
|
|
850
|
-
-
|
|
851
|
-
-
|
|
852
|
-
|
|
853
|
-
-
|
|
854
|
-
|
|
855
|
-
|
|
776
|
+
- [Configuration](../../docs/configuration.md) - AI providers and settings
|
|
777
|
+
- [Task Management](../../docs/tasks.md) - Full task lifecycle with AI features
|
|
778
|
+
- [PRD Processing](../../docs/prd.md) - Parse and rework Product Requirements Documents
|
|
779
|
+
- [Interactive Workflow](../../docs/workflow-command.md) - Guided setup with AI assistance
|
|
780
|
+
- [AI Integration](../../docs/ai-integration.md) - AI providers and prompt engineering
|
|
781
|
+
- [Project Initialization](../../docs/projects.md) - Project setup and bootstrapping
|
|
782
|
+
- [Streaming Output](../../docs/streaming.md) - Real-time AI streaming capabilities
|
|
783
|
+
- [Model Benchmarking](../../docs/benchmarking.md) - Compare AI models and workflow performance
|
|
856
784
|
|
|
857
|
-
##
|
|
785
|
+
## License
|
|
858
786
|
|
|
859
787
|
MIT License - see LICENSE file for details.
|
|
860
788
|
|
|
861
|
-
##
|
|
789
|
+
## Contributing
|
|
862
790
|
|
|
863
791
|
1. Fork the repository
|
|
864
792
|
2. Create a feature branch
|