task-o-matic 0.0.3 → 0.0.4

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.
Files changed (105) hide show
  1. package/README.md +96 -40
  2. package/dist/commands/tasks/create.d.ts +3 -0
  3. package/dist/commands/tasks/create.d.ts.map +1 -0
  4. package/dist/commands/tasks/create.js +58 -0
  5. package/dist/commands/tasks/delete.d.ts +3 -0
  6. package/dist/commands/tasks/delete.d.ts.map +1 -0
  7. package/dist/commands/tasks/delete.js +40 -0
  8. package/dist/commands/tasks/document.d.ts +5 -0
  9. package/dist/commands/tasks/document.d.ts.map +1 -0
  10. package/dist/commands/tasks/document.js +118 -0
  11. package/dist/commands/tasks/enhance.d.ts +3 -0
  12. package/dist/commands/tasks/enhance.d.ts.map +1 -0
  13. package/dist/commands/tasks/enhance.js +86 -0
  14. package/dist/commands/tasks/execute.d.ts +3 -0
  15. package/dist/commands/tasks/execute.d.ts.map +1 -0
  16. package/dist/commands/tasks/execute.js +33 -0
  17. package/dist/commands/tasks/index.d.ts +16 -0
  18. package/dist/commands/tasks/index.d.ts.map +1 -0
  19. package/dist/commands/tasks/index.js +31 -0
  20. package/dist/commands/tasks/list.d.ts +3 -0
  21. package/dist/commands/tasks/list.d.ts.map +1 -0
  22. package/dist/commands/tasks/list.js +27 -0
  23. package/dist/commands/tasks/next.d.ts +3 -0
  24. package/dist/commands/tasks/next.d.ts.map +1 -0
  25. package/dist/commands/tasks/next.js +44 -0
  26. package/dist/commands/tasks/plan.d.ts +7 -0
  27. package/dist/commands/tasks/plan.d.ts.map +1 -0
  28. package/dist/commands/tasks/plan.js +131 -0
  29. package/dist/commands/tasks/show.d.ts +3 -0
  30. package/dist/commands/tasks/show.d.ts.map +1 -0
  31. package/dist/commands/tasks/show.js +23 -0
  32. package/dist/commands/tasks/split.d.ts +3 -0
  33. package/dist/commands/tasks/split.d.ts.map +1 -0
  34. package/dist/commands/tasks/split.js +95 -0
  35. package/dist/commands/tasks/status.d.ts +3 -0
  36. package/dist/commands/tasks/status.d.ts.map +1 -0
  37. package/dist/commands/tasks/status.js +26 -0
  38. package/dist/commands/tasks/subtasks.d.ts +3 -0
  39. package/dist/commands/tasks/subtasks.d.ts.map +1 -0
  40. package/dist/commands/tasks/subtasks.js +35 -0
  41. package/dist/commands/tasks/tags.d.ts +4 -0
  42. package/dist/commands/tasks/tags.d.ts.map +1 -0
  43. package/dist/commands/tasks/tags.js +37 -0
  44. package/dist/commands/tasks/tree.d.ts +3 -0
  45. package/dist/commands/tasks/tree.d.ts.map +1 -0
  46. package/dist/commands/tasks/tree.js +20 -0
  47. package/dist/commands/tasks/update.d.ts +3 -0
  48. package/dist/commands/tasks/update.d.ts.map +1 -0
  49. package/dist/commands/tasks/update.js +35 -0
  50. package/dist/commands/tasks.d.ts.map +1 -1
  51. package/dist/commands/tasks.js +23 -686
  52. package/dist/commands/workflow.d.ts +4 -0
  53. package/dist/commands/workflow.d.ts.map +1 -0
  54. package/dist/commands/workflow.js +434 -0
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/index.js +3 -1
  57. package/dist/lib/ai-service/ai-operations.d.ts.map +1 -1
  58. package/dist/lib/ai-service/ai-operations.js +54 -22
  59. package/dist/lib/ai-service/research-tools.d.ts.map +1 -1
  60. package/dist/lib/ai-service/research-tools.js +2 -2
  61. package/dist/lib/context-builder.d.ts +2 -1
  62. package/dist/lib/context-builder.d.ts.map +1 -1
  63. package/dist/lib/context-builder.js +3 -8
  64. package/dist/lib/hooks/logger.d.ts +2 -0
  65. package/dist/lib/hooks/logger.d.ts.map +1 -0
  66. package/dist/lib/hooks/logger.js +27 -0
  67. package/dist/lib/hooks.d.ts +64 -0
  68. package/dist/lib/hooks.d.ts.map +1 -0
  69. package/dist/lib/hooks.js +60 -0
  70. package/dist/lib/index.d.ts +18 -17
  71. package/dist/lib/index.d.ts.map +1 -1
  72. package/dist/lib/index.js +3 -3
  73. package/dist/lib/prompt-builder.d.ts.map +1 -1
  74. package/dist/lib/prompt-builder.js +16 -8
  75. package/dist/lib/{storage.d.ts → storage/file-system.d.ts} +4 -3
  76. package/dist/lib/storage/file-system.d.ts.map +1 -0
  77. package/dist/lib/{storage.js → storage/file-system.js} +141 -152
  78. package/dist/lib/storage/types.d.ts +43 -0
  79. package/dist/lib/storage/types.d.ts.map +1 -0
  80. package/dist/lib/storage/types.js +2 -0
  81. package/dist/lib/task-execution.d.ts.map +1 -1
  82. package/dist/lib/task-execution.js +22 -3
  83. package/dist/prompts/workflow-assistance.d.ts +32 -0
  84. package/dist/prompts/workflow-assistance.d.ts.map +1 -0
  85. package/dist/prompts/workflow-assistance.js +130 -0
  86. package/dist/services/tasks.d.ts +4 -6
  87. package/dist/services/tasks.d.ts.map +1 -1
  88. package/dist/services/tasks.js +115 -96
  89. package/dist/services/workflow-ai-assistant.d.ts +74 -0
  90. package/dist/services/workflow-ai-assistant.d.ts.map +1 -0
  91. package/dist/services/workflow-ai-assistant.js +223 -0
  92. package/dist/test/hooks.test.d.ts +2 -0
  93. package/dist/test/hooks.test.d.ts.map +1 -0
  94. package/dist/test/hooks.test.js +58 -0
  95. package/dist/test/storage.test.js +16 -16
  96. package/dist/types/options.d.ts +35 -0
  97. package/dist/types/options.d.ts.map +1 -1
  98. package/dist/utils/ai-service-factory.d.ts +5 -5
  99. package/dist/utils/ai-service-factory.d.ts.map +1 -1
  100. package/dist/utils/ai-service-factory.js +4 -3
  101. package/dist/utils/workflow-prompts.d.ts +17 -0
  102. package/dist/utils/workflow-prompts.d.ts.map +1 -0
  103. package/dist/utils/workflow-prompts.js +88 -0
  104. package/package.json +2 -2
  105. package/dist/lib/storage.d.ts.map +0 -1
@@ -4,7 +4,7 @@ exports.PromptBuilder = void 0;
4
4
  const prompt_registry_1 = require("./prompt-registry");
5
5
  const fs_1 = require("fs");
6
6
  const config_1 = require("./config");
7
- const context_builder_1 = require("./context-builder");
7
+ const ai_service_factory_1 = require("../utils/ai-service-factory");
8
8
  const path_1 = require("path");
9
9
  class PromptBuilder {
10
10
  /**
@@ -94,7 +94,7 @@ class PromptBuilder {
94
94
  */
95
95
  static async autoDetectPRDContent() {
96
96
  try {
97
- const contextBuilder = new context_builder_1.ContextBuilder();
97
+ const contextBuilder = (0, ai_service_factory_1.getContextBuilder)();
98
98
  // Build context for a dummy task to get PRD content
99
99
  const context = await contextBuilder.buildContextForNewTask("Dummy Task", "For PRD detection");
100
100
  return context.prdContent;
@@ -121,7 +121,7 @@ class PromptBuilder {
121
121
  // Use ContextBuilder to get rich context if we have a title
122
122
  if (taskTitle) {
123
123
  try {
124
- const contextBuilder = new context_builder_1.ContextBuilder();
124
+ const contextBuilder = (0, ai_service_factory_1.getContextBuilder)();
125
125
  const context = await contextBuilder.buildContextForNewTask(taskTitle, taskDescription);
126
126
  // Return formatted context instead of just description
127
127
  return contextBuilder.formatContextForAI(context);
@@ -141,7 +141,7 @@ class PromptBuilder {
141
141
  // Default to current working directory if not provided
142
142
  const workDir = projectPath || process.cwd();
143
143
  config_1.configManager.setWorkingDirectory(workDir);
144
- const contextBuilder = new context_builder_1.ContextBuilder();
144
+ const contextBuilder = (0, ai_service_factory_1.getContextBuilder)();
145
145
  // Build context for a dummy task to get stack info
146
146
  const context = await contextBuilder.buildContextForNewTask("Dummy Task", "For stack detection");
147
147
  if (context.stack && context.stack._source === "file") {
@@ -214,7 +214,12 @@ class PromptBuilder {
214
214
  }
215
215
  // Detect configuration files
216
216
  const configFiles = files.filter((f) => f.match(/\.(config|rc)\.(js|ts|json|yaml|yml)$/) ||
217
- ["tsconfig.json", "next.config.js", "vite.config.ts", "tailwind.config.js"].includes(f));
217
+ [
218
+ "tsconfig.json",
219
+ "next.config.js",
220
+ "vite.config.ts",
221
+ "tailwind.config.js",
222
+ ].includes(f));
218
223
  if (configFiles.length > 0) {
219
224
  contextParts.push(`\n**Configuration Files:** ${configFiles.join(", ")}`);
220
225
  }
@@ -224,13 +229,16 @@ class PromptBuilder {
224
229
  }
225
230
  // Detect frameworks and tools
226
231
  const detectedTools = [];
227
- if ((0, fs_1.existsSync)((0, path_1.join)(projectPath, "next.config.js")) || (0, fs_1.existsSync)((0, path_1.join)(projectPath, "next.config.ts"))) {
232
+ if ((0, fs_1.existsSync)((0, path_1.join)(projectPath, "next.config.js")) ||
233
+ (0, fs_1.existsSync)((0, path_1.join)(projectPath, "next.config.ts"))) {
228
234
  detectedTools.push("Next.js");
229
235
  }
230
- if ((0, fs_1.existsSync)((0, path_1.join)(projectPath, "vite.config.ts")) || (0, fs_1.existsSync)((0, path_1.join)(projectPath, "vite.config.js"))) {
236
+ if ((0, fs_1.existsSync)((0, path_1.join)(projectPath, "vite.config.ts")) ||
237
+ (0, fs_1.existsSync)((0, path_1.join)(projectPath, "vite.config.js"))) {
231
238
  detectedTools.push("Vite");
232
239
  }
233
- if ((0, fs_1.existsSync)((0, path_1.join)(projectPath, "tailwind.config.js")) || (0, fs_1.existsSync)((0, path_1.join)(projectPath, "tailwind.config.ts"))) {
240
+ if ((0, fs_1.existsSync)((0, path_1.join)(projectPath, "tailwind.config.js")) ||
241
+ (0, fs_1.existsSync)((0, path_1.join)(projectPath, "tailwind.config.ts"))) {
234
242
  detectedTools.push("Tailwind CSS");
235
243
  }
236
244
  if ((0, fs_1.existsSync)((0, path_1.join)(projectPath, "convex"))) {
@@ -1,5 +1,6 @@
1
- import { Task, CreateTaskRequest, TaskAIMetadata } from "../types";
2
- export declare class LocalStorage {
1
+ import { Task, CreateTaskRequest, TaskAIMetadata } from "../../types";
2
+ import { TaskRepository } from "./types";
3
+ export declare class FileSystemStorage implements TaskRepository {
3
4
  private taskOMatic;
4
5
  private tasksFile;
5
6
  private initialized;
@@ -57,4 +58,4 @@ export declare class LocalStorage {
57
58
  saveTaskDocumentation(taskId: string, documentation: string): Promise<string>;
58
59
  getTaskDocumentation(taskId: string): Promise<string | null>;
59
60
  }
60
- //# sourceMappingURL=storage.d.ts.map
61
+ //# sourceMappingURL=file-system.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-system.d.ts","sourceRoot":"","sources":["../../../src/lib/storage/file-system.ts"],"names":[],"mappings":"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"}