@langadventurellc/task-trellis-mcp 2.0.0 → 2.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 +4 -0
- package/dist/server.js +6 -1
- package/dist/server.js.map +1 -1
- package/dist/tools/__tests__/getUiInfoTool.test.d.ts +2 -0
- package/dist/tools/__tests__/getUiInfoTool.test.d.ts.map +1 -0
- package/dist/tools/__tests__/getUiInfoTool.test.js +45 -0
- package/dist/tools/__tests__/getUiInfoTool.test.js.map +1 -0
- package/dist/tools/getUiInfoTool.d.ts +16 -0
- package/dist/tools/getUiInfoTool.d.ts.map +1 -0
- package/dist/tools/getUiInfoTool.js +28 -0
- package/dist/tools/getUiInfoTool.js.map +1 -0
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +4 -1
- package/dist/tools/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -165,6 +165,10 @@ Task Trellis UI: http://127.0.0.1:3717
|
|
|
165
165
|
- **append_issue_log** - Add progress notes and status updates to task history (occurs automatically on task completion)
|
|
166
166
|
- **append_modified_files** - Record files modified during task execution with change descriptions (occurs automatically on task completion)
|
|
167
167
|
|
|
168
|
+
### Browser UI
|
|
169
|
+
|
|
170
|
+
- **get_ui_info** - Returns the URL and port of the Task Trellis browser UI; use when the user asks about the UI or wants to view issues in a browser
|
|
171
|
+
|
|
168
172
|
### System Management
|
|
169
173
|
|
|
170
174
|
- **prune_closed** - Clean up old completed/cancelled issues for maintenance
|
package/dist/server.js
CHANGED
|
@@ -82,7 +82,9 @@ Key capabilities:
|
|
|
82
82
|
|
|
83
83
|
Tasks are automatically validated for readiness based on prerequisites and status, enabling autonomous agent operation while maintaining work quality and proper sequencing.
|
|
84
84
|
|
|
85
|
-
Essential for AI agents working on complex, multi-step software projects where systematic task breakdown, dependency management, and progress tracking are critical for successful completion
|
|
85
|
+
Essential for AI agents working on complex, multi-step software projects where systematic task breakdown, dependency management, and progress tracking are critical for successful completion.
|
|
86
|
+
|
|
87
|
+
A browser UI is also available; call get_ui_info to retrieve its URL whenever the user asks about it.`,
|
|
86
88
|
}, {
|
|
87
89
|
capabilities: {
|
|
88
90
|
tools: {},
|
|
@@ -100,6 +102,7 @@ server.setRequestHandler(types_js_1.ListToolsRequestSchema, () => {
|
|
|
100
102
|
tools_1.claimTaskTool,
|
|
101
103
|
tools_1.getNextAvailableIssueTool,
|
|
102
104
|
tools_1.completeTaskTool,
|
|
105
|
+
tools_1.getUiInfoTool,
|
|
103
106
|
];
|
|
104
107
|
return { tools };
|
|
105
108
|
});
|
|
@@ -127,6 +130,8 @@ server.setRequestHandler(types_js_1.CallToolRequestSchema, (request) => {
|
|
|
127
130
|
return (0, tools_1.handleGetNextAvailableIssue)(_getService(), repository, args);
|
|
128
131
|
case "complete_task":
|
|
129
132
|
return (0, tools_1.handleCompleteTask)(_getService(), repository, args, serverConfig);
|
|
133
|
+
case "get_ui_info":
|
|
134
|
+
return (0, tools_1.handleGetUiInfo)(projectDir);
|
|
130
135
|
default:
|
|
131
136
|
throw new Error(`Unknown tool: ${toolName}`);
|
|
132
137
|
}
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";;;;;;AAEA,wEAAmE;AACnE,wEAAiF;AACjF,iEAG4C;AAC5C,yCAAoC;AACpC,4CAAoB;AACpB,gDAAwB;AAExB,6CAAgD;AAChD,mDAKyB;AACzB,iDAA6D;AAE7D,sFAAmF;AACnF,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUiInfoTool.test.d.ts","sourceRoot":"","sources":["../../../src/tools/__tests__/getUiInfoTool.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const configuration_1 = require("../../configuration");
|
|
4
|
+
const getUiInfoTool_1 = require("../getUiInfoTool");
|
|
5
|
+
describe("getUiInfoTool", () => {
|
|
6
|
+
const testProjectDir = "/test/project";
|
|
7
|
+
describe("handleGetUiInfo", () => {
|
|
8
|
+
let originalPort;
|
|
9
|
+
beforeEach(() => {
|
|
10
|
+
originalPort = process.env.TRELLIS_UI_PORT;
|
|
11
|
+
delete process.env.TRELLIS_UI_PORT;
|
|
12
|
+
});
|
|
13
|
+
afterEach(() => {
|
|
14
|
+
if (originalPort === undefined) {
|
|
15
|
+
delete process.env.TRELLIS_UI_PORT;
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
process.env.TRELLIS_UI_PORT = originalPort;
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
it("uses default port 3717 when TRELLIS_UI_PORT is unset", () => {
|
|
22
|
+
const result = (0, getUiInfoTool_1.handleGetUiInfo)(testProjectDir);
|
|
23
|
+
const data = JSON.parse(result.content[0].text);
|
|
24
|
+
expect(data.port).toBe(3717);
|
|
25
|
+
expect(data.url).toBe("http://127.0.0.1:3717");
|
|
26
|
+
expect(data.projectUrl).toMatch(/^http:\/\/127\.0\.0\.1:3717\/projects\//);
|
|
27
|
+
});
|
|
28
|
+
it("uses custom port when TRELLIS_UI_PORT is set", () => {
|
|
29
|
+
process.env.TRELLIS_UI_PORT = "4000";
|
|
30
|
+
const result = (0, getUiInfoTool_1.handleGetUiInfo)(testProjectDir);
|
|
31
|
+
const data = JSON.parse(result.content[0].text);
|
|
32
|
+
expect(data.port).toBe(4000);
|
|
33
|
+
expect(data.url).toBe("http://127.0.0.1:4000");
|
|
34
|
+
expect(data.projectUrl).toMatch(/^http:\/\/127\.0\.0\.1:4000\/projects\//);
|
|
35
|
+
});
|
|
36
|
+
it("projectUrl contains the 12-char hex project key", () => {
|
|
37
|
+
const result = (0, getUiInfoTool_1.handleGetUiInfo)(testProjectDir);
|
|
38
|
+
const data = JSON.parse(result.content[0].text);
|
|
39
|
+
const expectedKey = (0, configuration_1.resolveProjectKey)(testProjectDir);
|
|
40
|
+
expect(expectedKey).toMatch(/^[0-9a-f]{12}$/);
|
|
41
|
+
expect(data.projectUrl).toBe(`http://127.0.0.1:3717/projects/${expectedKey}`);
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
//# sourceMappingURL=getUiInfoTool.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUiInfoTool.test.js","sourceRoot":"","sources":["../../../src/tools/__tests__/getUiInfoTool.test.ts"],"names":[],"mappings":";;AAAA,uDAAwD;AACxD,oDAAmD;AAEnD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,MAAM,cAAc,GAAG,eAAe,CAAC;IAEvC,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,IAAI,YAAgC,CAAC;QAErC,UAAU,CAAC,GAAG,EAAE;YACd,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;YAC3C,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,GAAG,EAAE;YACb,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,YAAY,CAAC;YAC7C,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC9D,MAAM,MAAM,GAAG,IAAA,+BAAe,EAAC,cAAc,CAAC,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAI7C,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAC/C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAC7B,yCAAyC,CAC1C,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,MAAM,CAAC;YAErC,MAAM,MAAM,GAAG,IAAA,+BAAe,EAAC,cAAc,CAAC,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAI7C,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAC/C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAC7B,yCAAyC,CAC1C,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,MAAM,GAAG,IAAA,+BAAe,EAAC,cAAc,CAAC,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAI7C,CAAC;YAEF,MAAM,WAAW,GAAG,IAAA,iCAAiB,EAAC,cAAc,CAAC,CAAC;YACtD,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAC1B,kCAAkC,WAAW,EAAE,CAChD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export declare const getUiInfoTool: {
|
|
2
|
+
readonly name: "get_ui_info";
|
|
3
|
+
readonly description: "Returns the URL and port of the Task Trellis browser UI.\n\nUse when the user asks about the Task Trellis UI, where to view issues in a browser, or asks you to open the UI.";
|
|
4
|
+
readonly inputSchema: {
|
|
5
|
+
readonly type: "object";
|
|
6
|
+
readonly properties: {};
|
|
7
|
+
readonly required: readonly [];
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
export declare function handleGetUiInfo(projectDir: string): {
|
|
11
|
+
content: {
|
|
12
|
+
type: string;
|
|
13
|
+
text: string;
|
|
14
|
+
}[];
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=getUiInfoTool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUiInfoTool.d.ts","sourceRoot":"","sources":["../../src/tools/getUiInfoTool.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa;;;;;;;;CAUhB,CAAC;AAEX,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG;IACnD,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC3C,CAUA"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getUiInfoTool = void 0;
|
|
4
|
+
exports.handleGetUiInfo = handleGetUiInfo;
|
|
5
|
+
const configuration_1 = require("../configuration");
|
|
6
|
+
exports.getUiInfoTool = {
|
|
7
|
+
name: "get_ui_info",
|
|
8
|
+
description: `Returns the URL and port of the Task Trellis browser UI.
|
|
9
|
+
|
|
10
|
+
Use when the user asks about the Task Trellis UI, where to view issues in a browser, or asks you to open the UI.`,
|
|
11
|
+
inputSchema: {
|
|
12
|
+
type: "object",
|
|
13
|
+
properties: {},
|
|
14
|
+
required: [],
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
function handleGetUiInfo(projectDir) {
|
|
18
|
+
const port = parseInt(process.env.TRELLIS_UI_PORT ?? "3717", 10);
|
|
19
|
+
const url = `http://127.0.0.1:${port}`;
|
|
20
|
+
const projectKey = (0, configuration_1.resolveProjectKey)(projectDir);
|
|
21
|
+
const projectUrl = `${url}/projects/${projectKey}`;
|
|
22
|
+
return {
|
|
23
|
+
content: [
|
|
24
|
+
{ type: "text", text: JSON.stringify({ url, port, projectUrl }) },
|
|
25
|
+
],
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=getUiInfoTool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUiInfoTool.js","sourceRoot":"","sources":["../../src/tools/getUiInfoTool.ts"],"names":[],"mappings":";;;AAcA,0CAYC;AA1BD,oDAAqD;AAExC,QAAA,aAAa,GAAG;IAC3B,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE;;iHAEkG;IAC/G,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,EAAE;KACb;CACO,CAAC;AAEX,SAAgB,eAAe,CAAC,UAAkB;IAGhD,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;IACjE,MAAM,GAAG,GAAG,oBAAoB,IAAI,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,IAAA,iCAAiB,EAAC,UAAU,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,GAAG,GAAG,aAAa,UAAU,EAAE,CAAC;IACnD,OAAO;QACL,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE;SAClE;KACF,CAAC;AACJ,CAAC"}
|
package/dist/tools/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export { createObjectTool, handleCreateObject } from "./createObjectTool.js";
|
|
|
6
6
|
export { deleteObjectTool, handleDeleteObject } from "./deleteObjectTool.js";
|
|
7
7
|
export { getNextAvailableIssueTool, handleGetNextAvailableIssue, } from "./getNextAvailableIssueTool.js";
|
|
8
8
|
export { getObjectTool, handleGetObject } from "./getObjectTool.js";
|
|
9
|
+
export { getUiInfoTool, handleGetUiInfo } from "./getUiInfoTool.js";
|
|
9
10
|
export { handleListObjects, listObjectsTool } from "./listObjectsTool.js";
|
|
10
11
|
export { handleUpdateObject, updateObjectTool } from "./updateObjectTool.js";
|
|
11
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EACL,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EACL,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
|
package/dist/tools/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.updateObjectTool = exports.handleUpdateObject = exports.listObjectsTool = exports.handleListObjects = exports.handleGetObject = exports.getObjectTool = exports.handleGetNextAvailableIssue = exports.getNextAvailableIssueTool = exports.handleDeleteObject = exports.deleteObjectTool = exports.handleCreateObject = exports.createObjectTool = exports.handleCompleteTask = exports.completeTaskTool = exports.handleClaimTask = exports.claimTaskTool = exports.handleAppendObjectLog = exports.appendObjectLogTool = exports.handleAppendModifiedFiles = exports.appendModifiedFilesTool = void 0;
|
|
3
|
+
exports.updateObjectTool = exports.handleUpdateObject = exports.listObjectsTool = exports.handleListObjects = exports.handleGetUiInfo = exports.getUiInfoTool = exports.handleGetObject = exports.getObjectTool = exports.handleGetNextAvailableIssue = exports.getNextAvailableIssueTool = exports.handleDeleteObject = exports.deleteObjectTool = exports.handleCreateObject = exports.createObjectTool = exports.handleCompleteTask = exports.completeTaskTool = exports.handleClaimTask = exports.claimTaskTool = exports.handleAppendObjectLog = exports.appendObjectLogTool = exports.handleAppendModifiedFiles = exports.appendModifiedFilesTool = void 0;
|
|
4
4
|
var appendModifiedFilesTool_js_1 = require("./appendModifiedFilesTool.js");
|
|
5
5
|
Object.defineProperty(exports, "appendModifiedFilesTool", { enumerable: true, get: function () { return appendModifiedFilesTool_js_1.appendModifiedFilesTool; } });
|
|
6
6
|
Object.defineProperty(exports, "handleAppendModifiedFiles", { enumerable: true, get: function () { return appendModifiedFilesTool_js_1.handleAppendModifiedFiles; } });
|
|
@@ -25,6 +25,9 @@ Object.defineProperty(exports, "handleGetNextAvailableIssue", { enumerable: true
|
|
|
25
25
|
var getObjectTool_js_1 = require("./getObjectTool.js");
|
|
26
26
|
Object.defineProperty(exports, "getObjectTool", { enumerable: true, get: function () { return getObjectTool_js_1.getObjectTool; } });
|
|
27
27
|
Object.defineProperty(exports, "handleGetObject", { enumerable: true, get: function () { return getObjectTool_js_1.handleGetObject; } });
|
|
28
|
+
var getUiInfoTool_js_1 = require("./getUiInfoTool.js");
|
|
29
|
+
Object.defineProperty(exports, "getUiInfoTool", { enumerable: true, get: function () { return getUiInfoTool_js_1.getUiInfoTool; } });
|
|
30
|
+
Object.defineProperty(exports, "handleGetUiInfo", { enumerable: true, get: function () { return getUiInfoTool_js_1.handleGetUiInfo; } });
|
|
28
31
|
var listObjectsTool_js_1 = require("./listObjectsTool.js");
|
|
29
32
|
Object.defineProperty(exports, "handleListObjects", { enumerable: true, get: function () { return listObjectsTool_js_1.handleListObjects; } });
|
|
30
33
|
Object.defineProperty(exports, "listObjectsTool", { enumerable: true, get: function () { return listObjectsTool_js_1.listObjectsTool; } });
|
package/dist/tools/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":";;;AAAA,2EAGsC;AAFpC,qIAAA,uBAAuB,OAAA;AACvB,uIAAA,yBAAyB,OAAA;AAE3B,mEAGkC;AAFhC,6HAAA,mBAAmB,OAAA;AACnB,+HAAA,qBAAqB,OAAA;AAEvB,uDAAoE;AAA3D,iHAAA,aAAa,OAAA;AAAE,mHAAA,eAAe,OAAA;AACvC,6DAA6E;AAApE,uHAAA,gBAAgB,OAAA;AAAE,yHAAA,kBAAkB,OAAA;AAC7C,6DAA6E;AAApE,uHAAA,gBAAgB,OAAA;AAAE,yHAAA,kBAAkB,OAAA;AAC7C,6DAA6E;AAApE,uHAAA,gBAAgB,OAAA;AAAE,yHAAA,kBAAkB,OAAA;AAC7C,+EAGwC;AAFtC,yIAAA,yBAAyB,OAAA;AACzB,2IAAA,2BAA2B,OAAA;AAE7B,uDAAoE;AAA3D,iHAAA,aAAa,OAAA;AAAE,mHAAA,eAAe,OAAA;AACvC,2DAA0E;AAAjE,uHAAA,iBAAiB,OAAA;AAAE,qHAAA,eAAe,OAAA;AAC3C,6DAA6E;AAApE,yHAAA,kBAAkB,OAAA;AAAE,uHAAA,gBAAgB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":";;;AAAA,2EAGsC;AAFpC,qIAAA,uBAAuB,OAAA;AACvB,uIAAA,yBAAyB,OAAA;AAE3B,mEAGkC;AAFhC,6HAAA,mBAAmB,OAAA;AACnB,+HAAA,qBAAqB,OAAA;AAEvB,uDAAoE;AAA3D,iHAAA,aAAa,OAAA;AAAE,mHAAA,eAAe,OAAA;AACvC,6DAA6E;AAApE,uHAAA,gBAAgB,OAAA;AAAE,yHAAA,kBAAkB,OAAA;AAC7C,6DAA6E;AAApE,uHAAA,gBAAgB,OAAA;AAAE,yHAAA,kBAAkB,OAAA;AAC7C,6DAA6E;AAApE,uHAAA,gBAAgB,OAAA;AAAE,yHAAA,kBAAkB,OAAA;AAC7C,+EAGwC;AAFtC,yIAAA,yBAAyB,OAAA;AACzB,2IAAA,2BAA2B,OAAA;AAE7B,uDAAoE;AAA3D,iHAAA,aAAa,OAAA;AAAE,mHAAA,eAAe,OAAA;AACvC,uDAAoE;AAA3D,iHAAA,aAAa,OAAA;AAAE,mHAAA,eAAe,OAAA;AACvC,2DAA0E;AAAjE,uHAAA,iBAAiB,OAAA;AAAE,qHAAA,eAAe,OAAA;AAC3C,6DAA6E;AAApE,yHAAA,kBAAkB,OAAA;AAAE,uHAAA,gBAAgB,OAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@langadventurellc/task-trellis-mcp",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"description": "An MCP server that helps AI coding agents break down projects into tasks and track their progress.",
|
|
5
5
|
"homepage": "https://github.com/langadventurellc/task-trellis-mcp#readme",
|
|
6
6
|
"bugs": {
|