memory-journal-mcp 4.3.1 → 4.4.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/.dockerignore +131 -122
- package/.gitattributes +29 -0
- package/.github/workflows/docker-publish.yml +1 -1
- package/.github/workflows/lint-and-test.yml +1 -2
- package/.github/workflows/secrets-scanning.yml +0 -1
- package/.github/workflows/security-update.yml +6 -6
- package/.vscode/settings.json +17 -15
- package/CHANGELOG.md +1065 -11
- package/DOCKER_README.md +51 -33
- package/Dockerfile +12 -11
- package/README.md +68 -33
- package/SECURITY.md +225 -158
- package/dist/cli.js +7 -0
- package/dist/cli.js.map +1 -1
- package/dist/constants/ServerInstructions.d.ts +1 -1
- package/dist/constants/ServerInstructions.d.ts.map +1 -1
- package/dist/constants/ServerInstructions.js +70 -26
- package/dist/constants/ServerInstructions.js.map +1 -1
- package/dist/constants/icons.d.ts +2 -0
- package/dist/constants/icons.d.ts.map +1 -1
- package/dist/constants/icons.js +6 -0
- package/dist/constants/icons.js.map +1 -1
- package/dist/database/SqliteAdapter.d.ts +51 -10
- package/dist/database/SqliteAdapter.d.ts.map +1 -1
- package/dist/database/SqliteAdapter.js +140 -31
- package/dist/database/SqliteAdapter.js.map +1 -1
- package/dist/filtering/ToolFilter.d.ts +1 -1
- package/dist/filtering/ToolFilter.d.ts.map +1 -1
- package/dist/filtering/ToolFilter.js +7 -1
- package/dist/filtering/ToolFilter.js.map +1 -1
- package/dist/github/GitHubIntegration.d.ts +74 -2
- package/dist/github/GitHubIntegration.d.ts.map +1 -1
- package/dist/github/GitHubIntegration.js +508 -7
- package/dist/github/GitHubIntegration.js.map +1 -1
- package/dist/handlers/prompts/index.js +1 -0
- package/dist/handlers/prompts/index.js.map +1 -1
- package/dist/handlers/resources/index.d.ts.map +1 -1
- package/dist/handlers/resources/index.js +257 -13
- package/dist/handlers/resources/index.js.map +1 -1
- package/dist/handlers/tools/index.d.ts.map +1 -1
- package/dist/handlers/tools/index.js +590 -7
- package/dist/handlers/tools/index.js.map +1 -1
- package/dist/server/McpServer.d.ts +2 -0
- package/dist/server/McpServer.d.ts.map +1 -1
- package/dist/server/McpServer.js +69 -26
- package/dist/server/McpServer.js.map +1 -1
- package/dist/types/index.d.ts +97 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/utils/logger.d.ts +1 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +8 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/security-utils.d.ts +8 -0
- package/dist/utils/security-utils.d.ts.map +1 -1
- package/dist/utils/security-utils.js +32 -0
- package/dist/utils/security-utils.js.map +1 -1
- package/dist/vector/VectorSearchManager.d.ts +2 -1
- package/dist/vector/VectorSearchManager.d.ts.map +1 -1
- package/dist/vector/VectorSearchManager.js +100 -34
- package/dist/vector/VectorSearchManager.js.map +1 -1
- package/docker-compose.yml +46 -37
- package/mcp-config-example.json +0 -2
- package/package.json +12 -11
- package/releases/v4.3.1.md +69 -0
- package/releases/v4.4.0.md +120 -0
- package/server.json +3 -3
- package/src/cli.ts +11 -0
- package/src/constants/ServerInstructions.ts +70 -26
- package/src/constants/icons.ts +7 -0
- package/src/database/SqliteAdapter.ts +162 -32
- package/src/filtering/ToolFilter.ts +7 -1
- package/src/github/GitHubIntegration.ts +588 -8
- package/src/handlers/prompts/index.ts +1 -0
- package/src/handlers/resources/index.ts +318 -12
- package/src/handlers/tools/index.ts +681 -12
- package/src/server/McpServer.ts +79 -37
- package/src/types/index.ts +98 -0
- package/src/utils/logger.ts +10 -1
- package/src/utils/security-utils.ts +35 -0
- package/src/vector/VectorSearchManager.ts +110 -39
- package/tests/constants/icons.test.ts +102 -0
- package/tests/constants/server-instructions.test.ts +549 -0
- package/tests/database/sqlite-adapter.bench.ts +63 -0
- package/tests/database/sqlite-adapter.test.ts +555 -0
- package/tests/filtering/tool-filter.test.ts +266 -0
- package/tests/github/github-integration.test.ts +1024 -0
- package/tests/handlers/github-resource-handlers.test.ts +473 -0
- package/tests/handlers/github-tool-handlers.test.ts +556 -0
- package/tests/handlers/prompt-handlers.test.ts +91 -0
- package/tests/handlers/resource-handlers.test.ts +339 -0
- package/tests/handlers/tool-handlers.test.ts +497 -0
- package/tests/handlers/vector-tool-handlers.test.ts +238 -0
- package/tests/server/mcp-server.bench.ts +55 -0
- package/tests/server/mcp-server.test.ts +675 -0
- package/tests/utils/logger.test.ts +180 -0
- package/tests/utils/mcp-logger.test.ts +212 -0
- package/tests/utils/progress-utils.test.ts +156 -0
- package/tests/utils/security-utils.test.ts +82 -0
- package/tests/vector/vector-search-manager.test.ts +335 -0
- package/tests/vector/vector-search.bench.ts +53 -0
- package/.github/workflows/DOCKER_DEPLOYMENT_SETUP.md +0 -387
- package/.github/workflows/dependabot-auto-merge.yml +0 -42
|
@@ -9,7 +9,7 @@ export type { ToolFilterConfig } from '../types/index.js';
|
|
|
9
9
|
/**
|
|
10
10
|
* Tool group definitions mapping group names to tool names
|
|
11
11
|
*
|
|
12
|
-
* All
|
|
12
|
+
* All 39 tools are categorized here for filtering support.
|
|
13
13
|
*/
|
|
14
14
|
export declare const TOOL_GROUPS: Record<ToolGroup, string[]>;
|
|
15
15
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolFilter.d.ts","sourceRoot":"","sources":["../../src/filtering/ToolFilter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAkB,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAG/F,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEzD;;;;GAIG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"ToolFilter.d.ts","sourceRoot":"","sources":["../../src/filtering/ToolFilter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAkB,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAG/F,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEzD;;;;GAIG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CAsCnD,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,CAKtD,CAAA;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAM1C;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAOpE;AAgBD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,gBAAgB,CAkGtE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,gBAAgB,GAAG,OAAO,CAEvF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAClD,KAAK,EAAE,CAAC,EAAE,EACV,YAAY,EAAE,gBAAgB,GAC/B,CAAC,EAAE,CAEL;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,gBAAgB,GAAG,IAAI,CAI9D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACjC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,gBAAgB,SAAM,GACvB;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAI5C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,gBAAgB,GAAG,MAAM,CAMvE"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
/**
|
|
8
8
|
* Tool group definitions mapping group names to tool names
|
|
9
9
|
*
|
|
10
|
-
* All
|
|
10
|
+
* All 39 tools are categorized here for filtering support.
|
|
11
11
|
*/
|
|
12
12
|
export const TOOL_GROUPS = {
|
|
13
13
|
core: [
|
|
@@ -39,6 +39,12 @@ export const TOOL_GROUPS = {
|
|
|
39
39
|
'move_kanban_item',
|
|
40
40
|
'create_github_issue_with_entry',
|
|
41
41
|
'close_github_issue_with_entry',
|
|
42
|
+
'get_github_milestones',
|
|
43
|
+
'get_github_milestone',
|
|
44
|
+
'create_github_milestone',
|
|
45
|
+
'update_github_milestone',
|
|
46
|
+
'delete_github_milestone',
|
|
47
|
+
'get_repo_insights',
|
|
42
48
|
],
|
|
43
49
|
backup: ['backup_journal', 'list_backups', 'restore_backup', 'cleanup_backups'],
|
|
44
50
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolFilter.js","sourceRoot":"","sources":["../../src/filtering/ToolFilter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAgC;IACpD,IAAI,EAAE;QACF,cAAc;QACd,iBAAiB;QACjB,oBAAoB;QACpB,sBAAsB;QACtB,aAAa;QACb,WAAW;KACd;IACD,MAAM,EAAE,CAAC,gBAAgB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,wBAAwB,CAAC;IAC/F,SAAS,EAAE,CAAC,gBAAgB,EAAE,4BAA4B,CAAC;IAC3D,aAAa,EAAE,CAAC,cAAc,EAAE,yBAAyB,CAAC;IAC1D,MAAM,EAAE,CAAC,gBAAgB,CAAC;IAC1B,KAAK,EAAE;QACH,cAAc;QACd,cAAc;QACd,sBAAsB;QACtB,qBAAqB;QACrB,YAAY;KACf;IACD,MAAM,EAAE;QACJ,mBAAmB;QACnB,gBAAgB;QAChB,kBAAkB;QAClB,eAAe;QACf,oBAAoB;QACpB,kBAAkB;QAClB,kBAAkB;QAClB,gCAAgC;QAChC,+BAA+B;
|
|
1
|
+
{"version":3,"file":"ToolFilter.js","sourceRoot":"","sources":["../../src/filtering/ToolFilter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAgC;IACpD,IAAI,EAAE;QACF,cAAc;QACd,iBAAiB;QACjB,oBAAoB;QACpB,sBAAsB;QACtB,aAAa;QACb,WAAW;KACd;IACD,MAAM,EAAE,CAAC,gBAAgB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,wBAAwB,CAAC;IAC/F,SAAS,EAAE,CAAC,gBAAgB,EAAE,4BAA4B,CAAC;IAC3D,aAAa,EAAE,CAAC,cAAc,EAAE,yBAAyB,CAAC;IAC1D,MAAM,EAAE,CAAC,gBAAgB,CAAC;IAC1B,KAAK,EAAE;QACH,cAAc;QACd,cAAc;QACd,sBAAsB;QACtB,qBAAqB;QACrB,YAAY;KACf;IACD,MAAM,EAAE;QACJ,mBAAmB;QACnB,gBAAgB;QAChB,kBAAkB;QAClB,eAAe;QACf,oBAAoB;QACpB,kBAAkB;QAClB,kBAAkB;QAClB,gCAAgC;QAChC,+BAA+B;QAC/B,uBAAuB;QACvB,sBAAsB;QACtB,yBAAyB;QACzB,yBAAyB;QACzB,yBAAyB;QACzB,mBAAmB;KACtB;IACD,MAAM,EAAE,CAAC,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,EAAE,iBAAiB,CAAC;CAClF,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAmC;IACvD,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC3B,SAAS,EAAE,CAAC,MAAM,CAAC;IACnB,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC;IAC7F,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,CAAC;CACvE,CAAA;AAED;;GAEG;AACH,MAAM,UAAU,eAAe;IAC3B,MAAM,QAAQ,GAAa,EAAE,CAAA;IAC7B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7C,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAA;IAC3B,CAAC;IACD,OAAO,QAAQ,CAAA;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,QAAgB;IACzC,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACvD,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,OAAO,KAAkB,CAAA;QAC7B,CAAC;IACL,CAAC;IACD,OAAO,SAAS,CAAA;AACpB,CAAC;AAED;;GAEG;AACH,SAAS,OAAO,CAAC,IAAY;IACzB,OAAO,IAAI,IAAI,WAAW,CAAA;AAC9B,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,IAAY;IAC7B,OAAO,IAAI,IAAI,WAAW,CAAA;AAC9B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,YAAoB;IAChD,MAAM,KAAK,GAAqB,EAAE,CAAA;IAClC,MAAM,KAAK,GAAG,YAAY;SACrB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,OAAO,CAAC,CAAA;IAEpB,oDAAoD;IACpD,gFAAgF;IAChF,IAAI,YAAY,GAAG,IAAI,GAAG,EAAU,CAAA;IACpC,IAAI,eAAe,GAAG,KAAK,CAAA;IAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACrB,IAAI,CAAC,IAAI;YAAE,SAAQ;QAEnB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACrC,MAAM,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAErD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjC,6CAA6C;YAC7C,eAAe,GAAG,IAAI,CAAA;YAEtB,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpB,8BAA8B;gBAC9B,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;oBACpC,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,YAAY,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;gBACpE,CAAC;YACL,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvB,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,YAAY,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACnE,CAAC;iBAAM,CAAC;gBACJ,cAAc;gBACd,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YAC1B,CAAC;YAED,KAAK,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC;aAC9C,CAAC,CAAA;QACN,CAAC;aAAM,IAAI,QAAQ,EAAE,CAAC;YAClB,uBAAuB;YACvB,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChB,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBAC7B,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAC7B,CAAC;YAED,KAAK,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC;aACzB,CAAC,CAAA;QACN,CAAC;aAAM,CAAC;YACJ,+CAA+C;YAC/C,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpB,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;oBACpC,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,YAAY,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;gBACpE,CAAC;YACL,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvB,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,YAAY,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACnE,CAAC;iBAAM,CAAC;gBACJ,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YAC1B,CAAC;YAED,KAAK,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC;aAC9C,CAAC,CAAA;QACN,CAAC;IACL,CAAC;IAED,wEAAwE;IACxE,IAAI,CAAC,eAAe,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;QACvE,YAAY,GAAG,IAAI,GAAG,CAAC,eAAe,EAAE,CAAC,CAAA;QACzC,iBAAiB;QACjB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC1B,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;oBACvB,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC1C,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;oBAC7B,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBACpC,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO;QACH,GAAG,EAAE,YAAY;QACjB,KAAK;QACL,YAAY;KACf,CAAA;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB,EAAE,YAA8B;IAC1E,OAAO,YAAY,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;AAClD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CACvB,KAAU,EACV,YAA8B;IAE9B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAA;AACzE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAChC,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAA;IAClE,IAAI,CAAC,YAAY;QAAE,OAAO,IAAI,CAAA;IAC9B,OAAO,eAAe,CAAC,YAAY,CAAC,CAAA;AACxC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACjC,UAAkB,EAClB,YAAoB,EACpB,gBAAgB,GAAG,GAAG;IAEtB,MAAM,WAAW,GAAG,CAAC,UAAU,GAAG,YAAY,CAAC,GAAG,gBAAgB,CAAA;IAClE,MAAM,SAAS,GAAG,CAAC,CAAC,UAAU,GAAG,YAAY,CAAC,GAAG,UAAU,CAAC,GAAG,GAAG,CAAA;IAClE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,CAAA;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,YAA8B;IAC3D,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC,MAAM,CAAA;IACtC,MAAM,OAAO,GAAG,YAAY,CAAC,YAAY,CAAC,IAAI,CAAA;IAC9C,MAAM,EAAE,SAAS,EAAE,GAAG,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAE3D,OAAO,GAAG,OAAO,IAAI,KAAK,mBAAmB,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAA;AACnF,CAAC"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* GitHub API integration using @octokit/rest for API access,
|
|
5
5
|
* @octokit/graphql for Projects v2, and simple-git for local repository operations.
|
|
6
6
|
*/
|
|
7
|
-
import type { GitHubIssue, GitHubPullRequest, GitHubWorkflowRun, ProjectContext, KanbanBoard } from '../types/index.js';
|
|
7
|
+
import type { GitHubIssue, GitHubMilestone, GitHubPullRequest, GitHubWorkflowRun, ProjectContext, KanbanBoard, RepoStats, TrafficData, TrafficReferrer, PopularPath } from '../types/index.js';
|
|
8
8
|
/**
|
|
9
9
|
* Local repository information
|
|
10
10
|
*/
|
|
@@ -52,11 +52,29 @@ export declare class GitHubIntegration {
|
|
|
52
52
|
private git;
|
|
53
53
|
private readonly token;
|
|
54
54
|
private cachedRepoInfo;
|
|
55
|
+
/** TTL response cache for GitHub API read methods */
|
|
56
|
+
private readonly apiCache;
|
|
55
57
|
constructor(workingDir?: string);
|
|
56
58
|
/**
|
|
57
59
|
* Check if GitHub API is available (token present)
|
|
58
60
|
*/
|
|
59
61
|
isApiAvailable(): boolean;
|
|
62
|
+
/**
|
|
63
|
+
* Get a cached value if it exists and hasn't expired.
|
|
64
|
+
*/
|
|
65
|
+
private getCached;
|
|
66
|
+
/**
|
|
67
|
+
* Store a value in the cache.
|
|
68
|
+
*/
|
|
69
|
+
private setCache;
|
|
70
|
+
/**
|
|
71
|
+
* Invalidate all cache entries matching a prefix.
|
|
72
|
+
*/
|
|
73
|
+
private invalidateCache;
|
|
74
|
+
/**
|
|
75
|
+
* Clear all cached GitHub API responses.
|
|
76
|
+
*/
|
|
77
|
+
clearCache(): void;
|
|
60
78
|
/**
|
|
61
79
|
* Get local repository information
|
|
62
80
|
* Caches the result for synchronous access via getCachedRepoInfo()
|
|
@@ -83,7 +101,7 @@ export declare class GitHubIntegration {
|
|
|
83
101
|
/**
|
|
84
102
|
* Create a new GitHub issue
|
|
85
103
|
*/
|
|
86
|
-
createIssue(owner: string, repo: string, title: string, body?: string, labels?: string[], assignees?: string[]): Promise<{
|
|
104
|
+
createIssue(owner: string, repo: string, title: string, body?: string, labels?: string[], assignees?: string[], milestone?: number): Promise<{
|
|
87
105
|
number: number;
|
|
88
106
|
url: string;
|
|
89
107
|
title: string;
|
|
@@ -134,5 +152,59 @@ export declare class GitHubIntegration {
|
|
|
134
152
|
itemId?: string;
|
|
135
153
|
error?: string;
|
|
136
154
|
}>;
|
|
155
|
+
/**
|
|
156
|
+
* List milestones for a repository
|
|
157
|
+
*/
|
|
158
|
+
getMilestones(owner: string, repo: string, state?: 'open' | 'closed' | 'all', limit?: number): Promise<GitHubMilestone[]>;
|
|
159
|
+
/**
|
|
160
|
+
* Get a single milestone by number
|
|
161
|
+
*/
|
|
162
|
+
getMilestone(owner: string, repo: string, milestoneNumber: number): Promise<GitHubMilestone | null>;
|
|
163
|
+
/**
|
|
164
|
+
* Create a new milestone
|
|
165
|
+
*/
|
|
166
|
+
createMilestone(owner: string, repo: string, title: string, description?: string, dueOn?: string): Promise<GitHubMilestone | null>;
|
|
167
|
+
/**
|
|
168
|
+
* Update an existing milestone
|
|
169
|
+
*/
|
|
170
|
+
updateMilestone(owner: string, repo: string, milestoneNumber: number, updates: {
|
|
171
|
+
title?: string;
|
|
172
|
+
description?: string;
|
|
173
|
+
dueOn?: string | null;
|
|
174
|
+
state?: 'open' | 'closed';
|
|
175
|
+
}): Promise<GitHubMilestone | null>;
|
|
176
|
+
/**
|
|
177
|
+
* Delete a milestone
|
|
178
|
+
*/
|
|
179
|
+
deleteMilestone(owner: string, repo: string, milestoneNumber: number): Promise<{
|
|
180
|
+
success: boolean;
|
|
181
|
+
error?: string;
|
|
182
|
+
}>;
|
|
183
|
+
/**
|
|
184
|
+
* Get a cached value with a custom TTL.
|
|
185
|
+
* Used for traffic endpoints which change slowly (10-min TTL).
|
|
186
|
+
*/
|
|
187
|
+
private getCachedWithTtl;
|
|
188
|
+
/**
|
|
189
|
+
* Get repository statistics (stars, forks, watchers).
|
|
190
|
+
* Uses a single GET /repos/{owner}/{repo} API call.
|
|
191
|
+
*/
|
|
192
|
+
getRepoStats(owner: string, repo: string): Promise<RepoStats | null>;
|
|
193
|
+
/**
|
|
194
|
+
* Get aggregated traffic data (14-day rolling clones + views).
|
|
195
|
+
* Combines GET /repos/{owner}/{repo}/traffic/clones and /traffic/views.
|
|
196
|
+
* Requires push access to the repository.
|
|
197
|
+
*/
|
|
198
|
+
getTrafficData(owner: string, repo: string): Promise<TrafficData | null>;
|
|
199
|
+
/**
|
|
200
|
+
* Get top referrer sources for the repository (14-day rolling).
|
|
201
|
+
* Requires push access to the repository.
|
|
202
|
+
*/
|
|
203
|
+
getTopReferrers(owner: string, repo: string, limit?: number): Promise<TrafficReferrer[]>;
|
|
204
|
+
/**
|
|
205
|
+
* Get popular repository paths (14-day rolling).
|
|
206
|
+
* Requires push access to the repository.
|
|
207
|
+
*/
|
|
208
|
+
getPopularPaths(owner: string, repo: string, limit?: number): Promise<PopularPath[]>;
|
|
137
209
|
}
|
|
138
210
|
//# sourceMappingURL=GitHubIntegration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GitHubIntegration.d.ts","sourceRoot":"","sources":["../../src/github/GitHubIntegration.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EACR,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,WAAW,
|
|
1
|
+
{"version":3,"file":"GitHubIntegration.d.ts","sourceRoot":"","sources":["../../src/github/GitHubIntegration.ts"],"names":[],"mappings":"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"}
|