diff --git a/index.ts b/index.ts index 8b02d91..d4d5698 100644 --- a/index.ts +++ b/index.ts @@ -10,7 +10,7 @@ import { ListToolsRequestSchema, CallToolRequestSchema } from "@modelcontextprot const server = new Server( { name: "task-manager-server", - version: "1.0.6" + version: "1.0.7" }, { capabilities: { diff --git a/package-lock.json b/package-lock.json index 65cb4a7..76f49d5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "taskqueue-mcp", - "version": "1.0.6", + "version": "1.0.7", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "taskqueue-mcp", - "version": "1.0.6", + "version": "1.0.7", "license": "MIT", "dependencies": { "@modelcontextprotocol/sdk": "^1.7.0", diff --git a/package.json b/package.json index 750a0c6..78388e4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "taskqueue-mcp", - "version": "1.0.6", + "version": "1.0.7", "description": "Task Queue MCP Server", "author": "Christopher C. Smith (christopher.smith@promptlytechnologies.com)", "main": "dist/index.js", diff --git a/src/client/cli.ts b/src/client/cli.ts index 86f1d0f..72b08ad 100644 --- a/src/client/cli.ts +++ b/src/client/cli.ts @@ -315,6 +315,12 @@ program if (t.completedDetails) { console.log(` Completed Details: ${t.completedDetails}`); } + if (t.toolRecommendations) { + console.log(` Tool Recommendations: ${t.toolRecommendations}`); + } + if (t.ruleRecommendations) { + console.log(` Rule Recommendations: ${t.ruleRecommendations}`); + } }); } else { console.log(chalk.yellow('\nNo tasks match the specified state filter.')); diff --git a/tests/integration/cli.test.ts b/tests/integration/cli.test.ts index 8ac818d..12ea348 100644 --- a/tests/integration/cli.test.ts +++ b/tests/integration/cli.test.ts @@ -147,4 +147,21 @@ describe("CLI Integration Tests", () => { expect(stdout).toContain("In Progress"); expect(stdout).toContain("Completed ✓"); }, 5000); + + it("should display tool and rule recommendations when listing tasks", async () => { + // Create a task with tool and rule recommendations + const testData = JSON.parse(await fs.readFile(tasksFilePath, 'utf-8')); + testData.projects[0].tasks[0].toolRecommendations = "Use grep to search for code"; + testData.projects[0].tasks[0].ruleRecommendations = "Follow code style guidelines"; + await fs.writeFile(tasksFilePath, JSON.stringify(testData)); + + // Test listing the specific project with the updated task + const { stdout } = await execAsync(`TASK_MANAGER_FILE_PATH=${tasksFilePath} tsx ${CLI_PATH} list -p proj-1`); + + // Check that recommendations are displayed + expect(stdout).toContain("Tool Recommendations:"); + expect(stdout).toContain("Use grep to search for code"); + expect(stdout).toContain("Rule Recommendations:"); + expect(stdout).toContain("Follow code style guidelines"); + }, 5000); }); \ No newline at end of file