imcp 0.1.6 → 0.1.8-dev
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/dist/cli/commands/install.js +1 -106
- package/dist/cli/commands/install.js.map +1 -0
- package/dist/cli/commands/list.js +1 -90
- package/dist/cli/commands/list.js.map +1 -0
- package/dist/cli/commands/pull.js +1 -16
- package/dist/cli/commands/pull.js.map +1 -0
- package/dist/cli/commands/serve.js +1 -33
- package/dist/cli/commands/serve.js.map +1 -0
- package/dist/cli/commands/uninstall.js +1 -46
- package/dist/cli/commands/uninstall.js.map +1 -0
- package/dist/cli/index.js +1 -65
- package/dist/cli/index.js.map +1 -0
- package/dist/core/installers/clients/BaseClientInstaller.js +1 -282
- package/dist/core/installers/clients/BaseClientInstaller.js.map +1 -0
- package/dist/core/installers/clients/ClientInstaller.js +1 -163
- package/dist/core/installers/clients/ClientInstaller.js.map +1 -0
- package/dist/core/installers/clients/ClientInstallerFactory.js +1 -36
- package/dist/core/installers/clients/ClientInstallerFactory.js.map +1 -0
- package/dist/core/installers/clients/ClineInstaller.js +1 -30
- package/dist/core/installers/clients/ClineInstaller.js.map +1 -0
- package/dist/core/installers/clients/ExtensionInstaller.js +1 -151
- package/dist/core/installers/clients/ExtensionInstaller.js.map +1 -0
- package/dist/core/installers/clients/GithubCopilotInstaller.js +1 -68
- package/dist/core/installers/clients/GithubCopilotInstaller.js.map +1 -0
- package/dist/core/installers/clients/MSRooCodeInstaller.js +1 -28
- package/dist/core/installers/clients/MSRooCodeInstaller.js.map +1 -0
- package/dist/core/installers/index.js +1 -8
- package/dist/core/installers/index.js.map +1 -0
- package/dist/core/installers/requirements/BaseInstaller.js +1 -56
- package/dist/core/installers/requirements/BaseInstaller.js.map +1 -0
- package/dist/core/installers/requirements/CommandInstaller.js +1 -213
- package/dist/core/installers/requirements/CommandInstaller.js.map +1 -0
- package/dist/core/installers/requirements/GeneralInstaller.js +1 -126
- package/dist/core/installers/requirements/GeneralInstaller.js.map +1 -0
- package/dist/core/installers/requirements/InstallerFactory.js +1 -99
- package/dist/core/installers/requirements/InstallerFactory.js.map +1 -0
- package/dist/core/installers/requirements/NpmInstaller.js +1 -235
- package/dist/core/installers/requirements/NpmInstaller.js.map +1 -0
- package/dist/core/installers/requirements/NugetInstaller.js +1 -188
- package/dist/core/installers/requirements/NugetInstaller.js.map +1 -0
- package/dist/core/installers/requirements/PipInstaller.js +1 -192
- package/dist/core/installers/requirements/PipInstaller.js.map +1 -0
- package/dist/core/installers/requirements/RequirementInstaller.js +1 -2
- package/dist/core/installers/requirements/RequirementInstaller.js.map +1 -0
- package/dist/core/loaders/ConfigurationLoader.js +1 -256
- package/dist/core/loaders/ConfigurationLoader.js.map +1 -0
- package/dist/core/loaders/ConfigurationProvider.js +1 -383
- package/dist/core/loaders/ConfigurationProvider.js.map +1 -0
- package/dist/core/loaders/InstallOperationManager.js +1 -310
- package/dist/core/loaders/InstallOperationManager.js.map +1 -0
- package/dist/core/loaders/ServerSchemaLoader.js +1 -108
- package/dist/core/loaders/ServerSchemaLoader.js.map +1 -0
- package/dist/core/loaders/ServerSchemaProvider.js +1 -89
- package/dist/core/loaders/ServerSchemaProvider.js.map +1 -0
- package/dist/core/loaders/SystemSettingsManager.js +1 -256
- package/dist/core/loaders/SystemSettingsManager.js.map +1 -0
- package/dist/core/metadatas/constants.js +1 -100
- package/dist/core/metadatas/constants.js.map +1 -0
- package/dist/core/metadatas/recordingConstants.js +1 -46
- package/dist/core/metadatas/recordingConstants.js.map +1 -0
- package/dist/core/metadatas/types.js +1 -15
- package/dist/core/metadatas/types.js.map +1 -0
- package/dist/core/onboard/FeedOnboardService.js +1 -422
- package/dist/core/onboard/FeedOnboardService.js.map +1 -0
- package/dist/core/onboard/OnboardProcessor.js +1 -333
- package/dist/core/onboard/OnboardProcessor.js.map +1 -0
- package/dist/core/onboard/OnboardStatus.js +1 -9
- package/dist/core/onboard/OnboardStatus.js.map +1 -0
- package/dist/core/onboard/OnboardStatusManager.js +1 -360
- package/dist/core/onboard/OnboardStatusManager.js.map +1 -0
- package/dist/core/validators/FeedValidator.js +1 -133
- package/dist/core/validators/FeedValidator.js.map +1 -0
- package/dist/core/validators/IServerValidator.js +1 -1
- package/dist/core/validators/IServerValidator.js.map +1 -0
- package/dist/core/validators/SSEServerValidator.js +1 -38
- package/dist/core/validators/SSEServerValidator.js.map +1 -0
- package/dist/core/validators/ServerValidatorFactory.js +1 -44
- package/dist/core/validators/ServerValidatorFactory.js.map +1 -0
- package/dist/core/validators/StdioServerValidator.js +1 -281
- package/dist/core/validators/StdioServerValidator.js.map +1 -0
- package/dist/index.js +1 -18
- package/dist/index.js.map +1 -0
- package/dist/services/InstallationService.js +1 -81
- package/dist/services/InstallationService.js.map +1 -0
- package/dist/services/MCPManager.js +1 -197
- package/dist/services/MCPManager.js.map +1 -0
- package/dist/services/RequirementService.js +1 -548
- package/dist/services/RequirementService.js.map +1 -0
- package/dist/services/ServerService.js +1 -127
- package/dist/services/ServerService.js.map +1 -0
- package/dist/services/TelemetryService.js +1 -53
- package/dist/services/TelemetryService.js.map +1 -0
- package/dist/utils/UpdateCheckTracker.js +1 -79
- package/dist/utils/UpdateCheckTracker.js.map +1 -0
- package/dist/utils/adoUtils.js +1 -254
- package/dist/utils/adoUtils.js.map +1 -0
- package/dist/utils/clientUtils.js +1 -65
- package/dist/utils/clientUtils.js.map +1 -0
- package/dist/utils/feedUtils.js +1 -28
- package/dist/utils/feedUtils.js.map +1 -0
- package/dist/utils/githubAuth.js +1 -177
- package/dist/utils/githubAuth.js.map +1 -0
- package/dist/utils/githubUtils.js +1 -125
- package/dist/utils/githubUtils.js.map +1 -0
- package/dist/utils/logger.js +1 -176
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/macroExpressionUtils.js +1 -93
- package/dist/utils/macroExpressionUtils.js.map +1 -0
- package/dist/utils/osUtils.js +1 -664
- package/dist/utils/osUtils.js.map +1 -0
- package/dist/utils/versionUtils.js +1 -101
- package/dist/utils/versionUtils.js.map +1 -0
- package/dist/web/contract/serverContract.js +1 -1
- package/dist/web/contract/serverContract.js.map +1 -0
- package/dist/web/public/js/api.js +2 -132
- package/dist/web/public/js/api.js.map +1 -0
- package/dist/web/public/js/detailsWidget.js +2 -264
- package/dist/web/public/js/detailsWidget.js.map +1 -0
- package/dist/web/public/js/flights/flights.js +2 -127
- package/dist/web/public/js/flights/flights.js.map +1 -0
- package/dist/web/public/js/modal/index.js +2 -52
- package/dist/web/public/js/modal/index.js.map +1 -0
- package/dist/web/public/js/modal/installModal.js +2 -162
- package/dist/web/public/js/modal/installModal.js.map +1 -0
- package/dist/web/public/js/modal/installation.js +2 -266
- package/dist/web/public/js/modal/installation.js.map +1 -0
- package/dist/web/public/js/modal/loadingModal.js +2 -182
- package/dist/web/public/js/modal/loadingModal.js.map +1 -0
- package/dist/web/public/js/modal/modalSetup.js +2 -595
- package/dist/web/public/js/modal/modalSetup.js.map +1 -0
- package/dist/web/public/js/modal/modalUtils.js +2 -37
- package/dist/web/public/js/modal/modalUtils.js.map +1 -0
- package/dist/web/public/js/modal/versionUtils.js +2 -20
- package/dist/web/public/js/modal/versionUtils.js.map +1 -0
- package/dist/web/public/js/modal.js +2 -42
- package/dist/web/public/js/modal.js.map +1 -0
- package/dist/web/public/js/notifications.js +2 -137
- package/dist/web/public/js/notifications.js.map +1 -0
- package/dist/web/public/js/onboard/formProcessor.js +2 -1037
- package/dist/web/public/js/onboard/formProcessor.js.map +1 -0
- package/dist/web/public/js/onboard/index.js +2 -374
- package/dist/web/public/js/onboard/index.js.map +1 -0
- package/dist/web/public/js/onboard/publishHandler.js +2 -172
- package/dist/web/public/js/onboard/publishHandler.js.map +1 -0
- package/dist/web/public/js/onboard/state.js +2 -76
- package/dist/web/public/js/onboard/state.js.map +1 -0
- package/dist/web/public/js/onboard/templates.js +2 -342
- package/dist/web/public/js/onboard/templates.js.map +1 -0
- package/dist/web/public/js/onboard/uiHandlers.js +2 -1076
- package/dist/web/public/js/onboard/uiHandlers.js.map +1 -0
- package/dist/web/public/js/onboard/validationHandlers.js +2 -493
- package/dist/web/public/js/onboard/validationHandlers.js.map +1 -0
- package/dist/web/public/js/serverCategoryDetails.js +2 -364
- package/dist/web/public/js/serverCategoryDetails.js.map +1 -0
- package/dist/web/public/js/serverCategoryList.js +2 -241
- package/dist/web/public/js/serverCategoryList.js.map +1 -0
- package/dist/web/public/js/settings.js +2 -314
- package/dist/web/public/js/settings.js.map +1 -0
- package/dist/web/server.js +1 -404
- package/dist/web/server.js.map +1 -0
- package/package.json +8 -2
- package/.github/ISSUE_TEMPLATE/JitAccess.yml +0 -28
- package/.github/acl/access.yml +0 -20
- package/.github/compliance/inventory.yml +0 -5
- package/.github/policies/jit.yml +0 -19
- package/.github/workflows/build.yml +0 -28
- package/.roo/rules-code/rules.md +0 -88
- package/dist/cli/commands/start.d.ts +0 -2
- package/dist/cli/commands/start.js +0 -32
- package/dist/cli/commands/sync.d.ts +0 -2
- package/dist/cli/commands/sync.js +0 -17
- package/dist/core/ConfigurationLoader.d.ts +0 -32
- package/dist/core/ConfigurationLoader.js +0 -236
- package/dist/core/ConfigurationProvider.d.ts +0 -35
- package/dist/core/ConfigurationProvider.js +0 -375
- package/dist/core/InstallationService.d.ts +0 -50
- package/dist/core/InstallationService.js +0 -350
- package/dist/core/MCPManager.d.ts +0 -28
- package/dist/core/MCPManager.js +0 -188
- package/dist/core/RequirementService.d.ts +0 -40
- package/dist/core/RequirementService.js +0 -110
- package/dist/core/ServerSchemaLoader.d.ts +0 -11
- package/dist/core/ServerSchemaLoader.js +0 -43
- package/dist/core/ServerSchemaProvider.d.ts +0 -17
- package/dist/core/ServerSchemaProvider.js +0 -120
- package/dist/core/constants.d.ts +0 -47
- package/dist/core/constants.js +0 -94
- package/dist/core/installers/BaseInstaller.d.ts +0 -74
- package/dist/core/installers/BaseInstaller.js +0 -253
- package/dist/core/installers/ClientInstaller.d.ts +0 -23
- package/dist/core/installers/ClientInstaller.js +0 -564
- package/dist/core/installers/CommandInstaller.d.ts +0 -37
- package/dist/core/installers/CommandInstaller.js +0 -173
- package/dist/core/installers/GeneralInstaller.d.ts +0 -33
- package/dist/core/installers/GeneralInstaller.js +0 -85
- package/dist/core/installers/InstallerFactory.d.ts +0 -54
- package/dist/core/installers/InstallerFactory.js +0 -97
- package/dist/core/installers/NpmInstaller.d.ts +0 -26
- package/dist/core/installers/NpmInstaller.js +0 -127
- package/dist/core/installers/PipInstaller.d.ts +0 -28
- package/dist/core/installers/PipInstaller.js +0 -127
- package/dist/core/installers/RequirementInstaller.d.ts +0 -33
- package/dist/core/installers/RequirementInstaller.js +0 -3
- package/dist/core/types.d.ts +0 -166
- package/dist/core/types.js +0 -16
- package/dist/services/InstallRequestValidator.d.ts +0 -21
- package/dist/services/InstallRequestValidator.js +0 -99
- package/dist/web/public/js/modal/installHandler.js +0 -227
- package/dist/web/public/js/modal/loadingUI.js +0 -74
- package/dist/web/public/js/modal/messageQueue.js +0 -112
- package/dist/web/public/js/modal/modalUI.js +0 -214
- package/dist/web/public/js/modal/version.js +0 -20
- package/dist/web/public/js/onboard/ONBOARDING_PAGE_DESIGN.md +0 -370
- package/docs/ONBOARDING_PAGE_DESIGN.md +0 -260
- package/docs/Telemetry.md +0 -136
- package/memory-bank/activeContext.md +0 -26
- package/memory-bank/decisionLog.md +0 -91
- package/memory-bank/productContext.md +0 -41
- package/memory-bank/progress.md +0 -35
- package/memory-bank/systemPatterns.md +0 -10
- package/src/cli/commands/install.ts +0 -139
- package/src/cli/commands/list.ts +0 -113
- package/src/cli/commands/pull.ts +0 -16
- package/src/cli/commands/serve.ts +0 -39
- package/src/cli/commands/uninstall.ts +0 -64
- package/src/cli/index.ts +0 -82
- package/src/core/installers/clients/BaseClientInstaller.ts +0 -341
- package/src/core/installers/clients/ClientInstaller.ts +0 -222
- package/src/core/installers/clients/ClientInstallerFactory.ts +0 -43
- package/src/core/installers/clients/ClineInstaller.ts +0 -35
- package/src/core/installers/clients/ExtensionInstaller.ts +0 -165
- package/src/core/installers/clients/GithubCopilotInstaller.ts +0 -79
- package/src/core/installers/clients/MSRooCodeInstaller.ts +0 -32
- package/src/core/installers/index.ts +0 -11
- package/src/core/installers/requirements/BaseInstaller.ts +0 -85
- package/src/core/installers/requirements/CommandInstaller.ts +0 -231
- package/src/core/installers/requirements/GeneralInstaller.ts +0 -133
- package/src/core/installers/requirements/InstallerFactory.ts +0 -114
- package/src/core/installers/requirements/NpmInstaller.ts +0 -271
- package/src/core/installers/requirements/NugetInstaller.ts +0 -203
- package/src/core/installers/requirements/PipInstaller.ts +0 -207
- package/src/core/installers/requirements/RequirementInstaller.ts +0 -42
- package/src/core/loaders/ConfigurationLoader.ts +0 -298
- package/src/core/loaders/ConfigurationProvider.ts +0 -462
- package/src/core/loaders/InstallOperationManager.ts +0 -367
- package/src/core/loaders/ServerSchemaLoader.ts +0 -117
- package/src/core/loaders/ServerSchemaProvider.ts +0 -99
- package/src/core/loaders/SystemSettingsManager.ts +0 -278
- package/src/core/metadatas/constants.ts +0 -122
- package/src/core/metadatas/recordingConstants.ts +0 -65
- package/src/core/metadatas/types.ts +0 -202
- package/src/core/onboard/FeedOnboardService.ts +0 -501
- package/src/core/onboard/OnboardProcessor.ts +0 -356
- package/src/core/onboard/OnboardStatus.ts +0 -60
- package/src/core/onboard/OnboardStatusManager.ts +0 -416
- package/src/core/validators/FeedValidator.ts +0 -135
- package/src/core/validators/IServerValidator.ts +0 -21
- package/src/core/validators/SSEServerValidator.ts +0 -43
- package/src/core/validators/ServerValidatorFactory.ts +0 -51
- package/src/core/validators/StdioServerValidator.ts +0 -313
- package/src/index.ts +0 -44
- package/src/services/InstallationService.ts +0 -102
- package/src/services/MCPManager.ts +0 -249
- package/src/services/RequirementService.ts +0 -627
- package/src/services/ServerService.ts +0 -161
- package/src/services/TelemetryService.ts +0 -59
- package/src/utils/UpdateCheckTracker.ts +0 -86
- package/src/utils/adoUtils.ts +0 -293
- package/src/utils/clientUtils.ts +0 -72
- package/src/utils/feedUtils.ts +0 -31
- package/src/utils/githubAuth.ts +0 -212
- package/src/utils/githubUtils.ts +0 -164
- package/src/utils/logger.ts +0 -195
- package/src/utils/macroExpressionUtils.ts +0 -104
- package/src/utils/osUtils.ts +0 -700
- package/src/utils/versionUtils.ts +0 -114
- package/src/web/contract/serverContract.ts +0 -74
- package/src/web/public/css/detailsWidget.css +0 -235
- package/src/web/public/css/modal.css +0 -757
- package/src/web/public/css/notifications.css +0 -101
- package/src/web/public/css/onboard.css +0 -107
- package/src/web/public/css/serverCategoryList.css +0 -120
- package/src/web/public/css/serverDetails.css +0 -139
- package/src/web/public/index.html +0 -359
- package/src/web/public/js/api.js +0 -132
- package/src/web/public/js/detailsWidget.js +0 -264
- package/src/web/public/js/flights/flights.js +0 -127
- package/src/web/public/js/modal/index.js +0 -52
- package/src/web/public/js/modal/installModal.js +0 -162
- package/src/web/public/js/modal/installation.js +0 -266
- package/src/web/public/js/modal/loadingModal.js +0 -182
- package/src/web/public/js/modal/modalSetup.js +0 -595
- package/src/web/public/js/modal/modalUtils.js +0 -37
- package/src/web/public/js/modal/versionUtils.js +0 -20
- package/src/web/public/js/modal.js +0 -42
- package/src/web/public/js/notifications.js +0 -137
- package/src/web/public/js/onboard/formProcessor.js +0 -1037
- package/src/web/public/js/onboard/index.js +0 -374
- package/src/web/public/js/onboard/publishHandler.js +0 -172
- package/src/web/public/js/onboard/state.js +0 -76
- package/src/web/public/js/onboard/templates.js +0 -342
- package/src/web/public/js/onboard/uiHandlers.js +0 -1076
- package/src/web/public/js/onboard/validationHandlers.js +0 -493
- package/src/web/public/js/serverCategoryDetails.js +0 -364
- package/src/web/public/js/serverCategoryList.js +0 -241
- package/src/web/public/js/settings.js +0 -314
- package/src/web/public/modal.html +0 -84
- package/src/web/public/onboard.html +0 -296
- package/src/web/public/settings.html +0 -135
- package/src/web/public/styles.css +0 -277
- package/src/web/server.ts +0 -478
- package/tsconfig.json +0 -18
- package/wiki/Installation.md +0 -3
- package/wiki/Publish.md +0 -3
package/.roo/rules-code/rules.md
DELETED
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
*IMPORTANT* Before I attempt to complete a task with code changes, I MUST have to ask confirmation with user whether to update memory bank
|
|
2
|
-
|
|
3
|
-
memory*bank_strategy:
|
|
4
|
-
initialization: |
|
|
5
|
-
<thinking> - **CHECK FOR MEMORY BANK:**
|
|
6
|
-
</thinking>
|
|
7
|
-
<thinking>
|
|
8
|
-
* First, check if the memory-bank/ directory exists.
|
|
9
|
-
</thinking>
|
|
10
|
-
<thinking>
|
|
11
|
-
_ If memory-bank DOES exist, skip immediately to `if_memory_bank_exists`.
|
|
12
|
-
</thinking>
|
|
13
|
-
if_no_memory_bank: | 1. **Inform the User:**
|
|
14
|
-
"No Memory Bank was found. I recommend creating one to maintain project context. Would you like to switch to Flow-Architect mode to do this?" 2. **Conditional Actions:**
|
|
15
|
-
_ If the user declines:
|
|
16
|
-
<thinking>
|
|
17
|
-
I need to proceed with the task without Memory Bank functionality.
|
|
18
|
-
</thinking>
|
|
19
|
-
a. Inform the user that the Memory Bank will not be created.
|
|
20
|
-
b. Set the status to '[MEMORY BANK: INACTIVE]'.
|
|
21
|
-
c. Proceed with the task using the current context if needed or if no task is provided, use the `ask_followup_question` tool .
|
|
22
|
-
_ If the user agrees:
|
|
23
|
-
Switch to Flow-Architect mode to create the Memory Bank.
|
|
24
|
-
if_memory_bank_exists: |
|
|
25
|
-
\*\*READ \_ALL_ MEMORY BANK FILES\*\*
|
|
26
|
-
<thinking>
|
|
27
|
-
I will read all memory bank files, one at a time.
|
|
28
|
-
</thinking>
|
|
29
|
-
Plan: Read all mandatory files sequentially. 1. Read `productContext.md` 2. Read `activeContext.md` 3. Read `systemPatterns.md` 4. Read `decisionLog.md` 5. Read `progress.md` 6. Set status to [MEMORY BANK: ACTIVE] and inform user. 7. Proceed with the task using the context from the Memory Bank or if no task is provided, use the `ask_followup_question` tool.
|
|
30
|
-
|
|
31
|
-
general:
|
|
32
|
-
status_prefix: "Begin EVERY response with either '[MEMORY BANK: ACTIVE]' or '[MEMORY BANK: INACTIVE]', according to the current state of the Memory Bank."
|
|
33
|
-
|
|
34
|
-
memory_bank_updates:
|
|
35
|
-
frequency:
|
|
36
|
-
|
|
37
|
-
- "UPDATE MEMORY BANK THROUGHOUT THE CHAT SESSION, WHEN SIGNIFICANT CHANGES OCCUR IN THE PROJECT."
|
|
38
|
-
decisionLog.md:
|
|
39
|
-
trigger: "When a significant architectural decision is made (new component, data flow change, technology choice, etc.). Use your judgment to determine significance."
|
|
40
|
-
action: |
|
|
41
|
-
<thinking>
|
|
42
|
-
I need to update decisionLog.md with a decision, the rationale, and any implications.
|
|
43
|
-
</thinking>
|
|
44
|
-
Use insert*content to \_append* new information. Never overwrite existing entries. Always include a timestamp.
|
|
45
|
-
format: |
|
|
46
|
-
"[YYYY-MM-DD HH:MM:SS] - [Summary of Change/Focus/Issue]"
|
|
47
|
-
productContext.md:
|
|
48
|
-
trigger: "When the high-level project description, goals, features, or overall architecture changes significantly. Use your judgment to determine significance."
|
|
49
|
-
action: |
|
|
50
|
-
<thinking>
|
|
51
|
-
A fundamental change has occurred which warrants an update to productContext.md.
|
|
52
|
-
</thinking>
|
|
53
|
-
Use insert*content to \_append* new information or use apply*diff to modify existing entries if necessary. Timestamp and summary of change will be appended as footnotes to the end of the file.
|
|
54
|
-
format: "[YYYY-MM-DD HH:MM:SS] - [Summary of Change]"
|
|
55
|
-
systemPatterns.md:
|
|
56
|
-
trigger: "When new architectural patterns are introduced or existing ones are modified. Use your judgement."
|
|
57
|
-
action: |
|
|
58
|
-
<thinking>
|
|
59
|
-
I need to update systemPatterns.md with a brief summary and time stamp.
|
|
60
|
-
</thinking>
|
|
61
|
-
Use insert_content to \_append* new patterns or use apply*diff to modify existing entries if warranted. Always include a timestamp.
|
|
62
|
-
format: "[YYYY-MM-DD HH:MM:SS] - [Description of Pattern/Change]"
|
|
63
|
-
activeContext.md:
|
|
64
|
-
trigger: "When the current focus of work changes, or when significant progress is made. Use your judgement."
|
|
65
|
-
action: |
|
|
66
|
-
<thinking>
|
|
67
|
-
I need to update activeContext.md with a brief summary and time stamp.
|
|
68
|
-
</thinking>
|
|
69
|
-
Use insert_content to \_append* to the relevant section (Current Focus, Recent Changes, Open Questions/Issues) or use apply*diff to modify existing entries if warranted. Always include a timestamp.
|
|
70
|
-
format: "[YYYY-MM-DD HH:MM:SS] - [Summary of Change/Focus/Issue]"
|
|
71
|
-
progress.md:
|
|
72
|
-
trigger: "When a task begins, is completed, or if there are any changes Use your judgement."
|
|
73
|
-
action: |
|
|
74
|
-
<thinking>
|
|
75
|
-
I need to update progress.md with a brief summary and time stamp.
|
|
76
|
-
</thinking>
|
|
77
|
-
Use insert_content to \_append* the new entry, never overwrite existing entries. Always include a timestamp.
|
|
78
|
-
format: "[YYYY-MM-DD HH:MM:SS] - [Summary of Change/Focus/Issue]"
|
|
79
|
-
|
|
80
|
-
umb:
|
|
81
|
-
trigger: "^(Update Memory Bank|UMB)$"
|
|
82
|
-
instructions: - "Halt Current Task: Stop current activity" - "Acknowledge Command: '[MEMORY BANK: UPDATING]'" - "Review Chat History"
|
|
83
|
-
core_update_process: | 1. Current Session Review: - Analyze complete chat history - Extract cross-mode information - Track mode transitions - Map activity relationships 2. Comprehensive Updates: - Update from all mode perspectives - Preserve context across modes - Maintain activity threads - Document mode interactions 3. Memory Bank Synchronization: - Update all affected *.md files - Ensure cross-mode consistency - Preserve activity context - Document continuation points
|
|
84
|
-
task_focus: "During a UMB update, focus on capturing any clarifications, questions answered, or context provided *during the chat session*. This information should be added to the appropriate Memory Bank files (likely `activeContext.md` or `decisionLog.md`), using the other modes' update formats as a guide. *Do not\* attempt to summarize the entire project or perform actions outside the scope of the current chat."
|
|
85
|
-
cross-mode_updates: "During a UMB update, ensure that all relevant information from the chat session is captured and added to the Memory Bank. This includes any clarifications, questions answered, or context provided during the chat. Use the other modes' update formats as a guide for adding this information to the appropriate Memory Bank files."
|
|
86
|
-
post_umb_actions: - "Memory Bank fully synchronized" - "All mode contexts preserved" - "Session can be safely closed" - "Next assistant will have complete context"
|
|
87
|
-
override_file_restrictions: true
|
|
88
|
-
override_mode_restrictions: true
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { Command } from 'commander';
|
|
2
|
-
import { startWebServer } from '../../web/server.js';
|
|
3
|
-
import { mcpManager } from '../../core/MCPManager.js';
|
|
4
|
-
export function createStartCommand() {
|
|
5
|
-
return new Command('start')
|
|
6
|
-
.description('Start local web interface')
|
|
7
|
-
.option('-p, --port <port>', 'Port to run the server on', '3000')
|
|
8
|
-
.action(async (options) => {
|
|
9
|
-
try {
|
|
10
|
-
// Sync feeds before start the local UI
|
|
11
|
-
await mcpManager.syncFeeds();
|
|
12
|
-
// Ensure MCP manager is initialized before starting the web server
|
|
13
|
-
await mcpManager.initialize();
|
|
14
|
-
const port = parseInt(options.port, 10);
|
|
15
|
-
if (isNaN(port) || port < 1 || port > 65535) {
|
|
16
|
-
throw new Error('Invalid port number');
|
|
17
|
-
}
|
|
18
|
-
await startWebServer(port);
|
|
19
|
-
// The server is running, keep the process alive
|
|
20
|
-
process.on('SIGINT', () => {
|
|
21
|
-
console.log('\nShutting down server...');
|
|
22
|
-
process.exit(0);
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
catch (error) {
|
|
26
|
-
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
27
|
-
console.error('Failed to start web server:', message);
|
|
28
|
-
process.exit(1);
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=start.js.map
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { Command } from 'commander';
|
|
2
|
-
import { serverService } from '../../services/ServerService.js';
|
|
3
|
-
export function createSyncCommand() {
|
|
4
|
-
return new Command('sync')
|
|
5
|
-
.description('Sync MCP server configurations from remote feed source')
|
|
6
|
-
.action(async () => {
|
|
7
|
-
try {
|
|
8
|
-
await serverService.syncFeeds();
|
|
9
|
-
}
|
|
10
|
-
catch (error) {
|
|
11
|
-
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
12
|
-
console.error('Error syncing configurations:', message);
|
|
13
|
-
process.exit(1);
|
|
14
|
-
}
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=sync.js.map
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { MCPConfiguration } from './types.js';
|
|
2
|
-
export declare class ConfigurationLoader {
|
|
3
|
-
/**
|
|
4
|
-
* Updates the installed status for a server and client combination
|
|
5
|
-
*/
|
|
6
|
-
private static updateServerInstalledStatus;
|
|
7
|
-
/**
|
|
8
|
-
* Removes a client's status from a server
|
|
9
|
-
*/
|
|
10
|
-
private static removeClientStatus;
|
|
11
|
-
/**
|
|
12
|
-
* Synchronizes server categories with client MCP settings.
|
|
13
|
-
* Uses clientMCPSettings as source of truth for installation status.
|
|
14
|
-
*/
|
|
15
|
-
static syncServerCategoriesWithClientSettings(configuration: MCPConfiguration): MCPConfiguration;
|
|
16
|
-
/**
|
|
17
|
-
* Initializes installation status for a feed configuration
|
|
18
|
-
*/
|
|
19
|
-
private static initializeInstallationStatus;
|
|
20
|
-
/**
|
|
21
|
-
* Synchronizes server categories with feeds
|
|
22
|
-
*/
|
|
23
|
-
private static syncServerCategoriesWithFeeds;
|
|
24
|
-
/**
|
|
25
|
-
* Loads feed configurations into the MCP configuration
|
|
26
|
-
*/
|
|
27
|
-
static loadFeedsIntoConfiguration(configuration: MCPConfiguration, feedFile?: string): Promise<MCPConfiguration>;
|
|
28
|
-
/**
|
|
29
|
-
* Loads MCP client settings into the configuration
|
|
30
|
-
*/
|
|
31
|
-
static loadClientMCPSettings(configuration: MCPConfiguration): Promise<MCPConfiguration>;
|
|
32
|
-
}
|
|
@@ -1,236 +0,0 @@
|
|
|
1
|
-
import fs from 'fs/promises';
|
|
2
|
-
import path from 'path';
|
|
3
|
-
import { LOCAL_FEEDS_DIR, SUPPORTED_CLIENTS } from './constants.js';
|
|
4
|
-
import { Logger } from '../utils/logger.js';
|
|
5
|
-
import { readJsonFile } from '../utils/clientUtils.js';
|
|
6
|
-
export class ConfigurationLoader {
|
|
7
|
-
/**
|
|
8
|
-
* Updates the installed status for a server and client combination
|
|
9
|
-
*/
|
|
10
|
-
static updateServerInstalledStatus(serverStatus, clientName, operationStatus) {
|
|
11
|
-
if (!serverStatus.installedStatus) {
|
|
12
|
-
serverStatus.installedStatus = {};
|
|
13
|
-
}
|
|
14
|
-
serverStatus.installedStatus[clientName] = operationStatus;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Removes a client's status from a server
|
|
18
|
-
*/
|
|
19
|
-
static removeClientStatus(serverStatus, clientName) {
|
|
20
|
-
if (serverStatus.installedStatus && serverStatus.installedStatus[clientName]) {
|
|
21
|
-
delete serverStatus.installedStatus[clientName];
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Synchronizes server categories with client MCP settings.
|
|
26
|
-
* Uses clientMCPSettings as source of truth for installation status.
|
|
27
|
-
*/
|
|
28
|
-
static syncServerCategoriesWithClientSettings(configuration) {
|
|
29
|
-
if (!configuration.clientMCPSettings) {
|
|
30
|
-
return configuration;
|
|
31
|
-
}
|
|
32
|
-
configuration.localServerCategories = configuration.localServerCategories.map(category => {
|
|
33
|
-
if (!category.installationStatus?.serversStatus) {
|
|
34
|
-
return category;
|
|
35
|
-
}
|
|
36
|
-
const updatedServerStatus = { ...category.installationStatus.serversStatus };
|
|
37
|
-
const clientSettings = configuration.clientMCPSettings;
|
|
38
|
-
for (const [clientName, settings] of Object.entries(clientSettings)) {
|
|
39
|
-
const clientServers = clientName === 'GithubCopilot'
|
|
40
|
-
? settings.servers || {}
|
|
41
|
-
: settings.mcpServers || {};
|
|
42
|
-
Object.keys(updatedServerStatus).forEach(serverName => {
|
|
43
|
-
if (clientServers[serverName]) {
|
|
44
|
-
if (!updatedServerStatus[serverName].installedStatus[clientName]) {
|
|
45
|
-
const operationStatus = {
|
|
46
|
-
status: 'completed',
|
|
47
|
-
type: 'install',
|
|
48
|
-
target: 'server',
|
|
49
|
-
message: `Server ${serverName} is configured for client ${clientName}`
|
|
50
|
-
};
|
|
51
|
-
ConfigurationLoader.updateServerInstalledStatus(updatedServerStatus[serverName], clientName, operationStatus);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
else {
|
|
55
|
-
ConfigurationLoader.removeClientStatus(updatedServerStatus[serverName], clientName);
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
return {
|
|
60
|
-
...category,
|
|
61
|
-
installationStatus: {
|
|
62
|
-
...category.installationStatus,
|
|
63
|
-
serversStatus: updatedServerStatus,
|
|
64
|
-
lastUpdated: new Date().toISOString()
|
|
65
|
-
}
|
|
66
|
-
};
|
|
67
|
-
});
|
|
68
|
-
return configuration;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Initializes installation status for a feed configuration
|
|
72
|
-
*/
|
|
73
|
-
static initializeInstallationStatus(feedConfig) {
|
|
74
|
-
const requirementsStatus = {};
|
|
75
|
-
const serversStatus = {};
|
|
76
|
-
if (feedConfig) {
|
|
77
|
-
if (feedConfig.requirements) {
|
|
78
|
-
for (const req of feedConfig.requirements) {
|
|
79
|
-
requirementsStatus[req.name] = {
|
|
80
|
-
name: req.name,
|
|
81
|
-
type: req.type,
|
|
82
|
-
installed: false,
|
|
83
|
-
version: req.version,
|
|
84
|
-
error: undefined
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
if (feedConfig.mcpServers) {
|
|
89
|
-
for (const mcp of feedConfig.mcpServers) {
|
|
90
|
-
serversStatus[mcp.name] = {
|
|
91
|
-
name: mcp.name,
|
|
92
|
-
error: undefined,
|
|
93
|
-
installedStatus: {}
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
return {
|
|
99
|
-
requirementsStatus,
|
|
100
|
-
serversStatus,
|
|
101
|
-
lastUpdated: new Date().toISOString()
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Synchronizes server categories with feeds
|
|
106
|
-
*/
|
|
107
|
-
static async syncServerCategoriesWithFeeds(configuration) {
|
|
108
|
-
// Filter out categories that don't have corresponding feeds and update existing ones
|
|
109
|
-
configuration.localServerCategories = configuration.localServerCategories
|
|
110
|
-
.filter(server => configuration.feeds[server.name])
|
|
111
|
-
.map(server => {
|
|
112
|
-
server.feedConfiguration = configuration.feeds[server.name];
|
|
113
|
-
if (!server.installationStatus ||
|
|
114
|
-
!server.installationStatus.requirementsStatus ||
|
|
115
|
-
Object.keys(server.installationStatus.requirementsStatus).length === 0 ||
|
|
116
|
-
!server.installationStatus.serversStatus ||
|
|
117
|
-
Object.keys(server.installationStatus.serversStatus).length < Object.keys(server.feedConfiguration?.mcpServers || []).length) {
|
|
118
|
-
server.installationStatus = ConfigurationLoader.initializeInstallationStatus(server.feedConfiguration);
|
|
119
|
-
}
|
|
120
|
-
return server;
|
|
121
|
-
});
|
|
122
|
-
// Add new categories for feeds that don't have a corresponding category
|
|
123
|
-
const existingServerNames = new Set(configuration.localServerCategories.map(category => category.name));
|
|
124
|
-
for (const [feedName, feedConfig] of Object.entries(configuration.feeds)) {
|
|
125
|
-
if (!existingServerNames.has(feedName)) {
|
|
126
|
-
const newServerCategory = {
|
|
127
|
-
name: feedName,
|
|
128
|
-
displayName: feedConfig.displayName || feedName,
|
|
129
|
-
type: 'local',
|
|
130
|
-
description: feedConfig.description || `Local MCP server category: ${feedName}`,
|
|
131
|
-
installationStatus: ConfigurationLoader.initializeInstallationStatus(feedConfig),
|
|
132
|
-
feedConfiguration: feedConfig
|
|
133
|
-
};
|
|
134
|
-
configuration.localServerCategories.push(newServerCategory);
|
|
135
|
-
console.log(`Created new local server entry for feed: ${feedName}`);
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
return configuration;
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* Loads feed configurations into the MCP configuration
|
|
142
|
-
*/
|
|
143
|
-
static async loadFeedsIntoConfiguration(configuration, feedFile) {
|
|
144
|
-
try {
|
|
145
|
-
await fs.mkdir(LOCAL_FEEDS_DIR, { recursive: true });
|
|
146
|
-
const feeds = {};
|
|
147
|
-
// Load provided feed file if specified
|
|
148
|
-
if (feedFile) {
|
|
149
|
-
try {
|
|
150
|
-
const content = await fs.readFile(feedFile, 'utf8');
|
|
151
|
-
const config = JSON.parse(content);
|
|
152
|
-
if (config && config.name) {
|
|
153
|
-
feeds[config.name] = config;
|
|
154
|
-
console.log(`Loaded feed configuration from provided file: ${feedFile}`);
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
catch (error) {
|
|
158
|
-
console.log(`Error loading feed configuration from provided file ${feedFile}:`, error);
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
// Load feeds from LOCAL_FEEDS_DIR
|
|
162
|
-
const files = await fs.readdir(LOCAL_FEEDS_DIR);
|
|
163
|
-
const jsonFiles = files.filter(file => file.endsWith('.json'));
|
|
164
|
-
if (jsonFiles.length === 0 && !feedFile) {
|
|
165
|
-
console.log(`No feed configuration files found in ${LOCAL_FEEDS_DIR}`);
|
|
166
|
-
return configuration;
|
|
167
|
-
}
|
|
168
|
-
for (const file of jsonFiles) {
|
|
169
|
-
try {
|
|
170
|
-
const filePath = path.join(LOCAL_FEEDS_DIR, file);
|
|
171
|
-
const content = await fs.readFile(filePath, 'utf8');
|
|
172
|
-
const config = JSON.parse(content);
|
|
173
|
-
if (config && config.name) {
|
|
174
|
-
// If feed exists from provided file, skip the local one
|
|
175
|
-
if (!feeds[config.name]) {
|
|
176
|
-
feeds[config.name] = config;
|
|
177
|
-
}
|
|
178
|
-
else {
|
|
179
|
-
console.log(`Skipping local feed ${config.name} as it was provided via --feed-file`);
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
catch (error) {
|
|
184
|
-
console.warn(`Error loading feed configuration from ${file}:`, error);
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
configuration.feeds = feeds;
|
|
188
|
-
return await ConfigurationLoader.syncServerCategoriesWithFeeds(configuration);
|
|
189
|
-
}
|
|
190
|
-
catch (error) {
|
|
191
|
-
console.error("Error loading feed configurations:", error);
|
|
192
|
-
throw error;
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
/**
|
|
196
|
-
* Loads MCP client settings into the configuration
|
|
197
|
-
*/
|
|
198
|
-
static async loadClientMCPSettings(configuration) {
|
|
199
|
-
try {
|
|
200
|
-
Logger.debug('Starting to load MCP client settings...');
|
|
201
|
-
const settings = {};
|
|
202
|
-
for (const [clientName, clientSettings] of Object.entries(SUPPORTED_CLIENTS)) {
|
|
203
|
-
const settingPath = process.env.CODE_INSIDERS
|
|
204
|
-
? clientSettings.codeInsiderSettingPath
|
|
205
|
-
: clientSettings.codeSettingPath;
|
|
206
|
-
try {
|
|
207
|
-
let content = await readJsonFile(settingPath, true);
|
|
208
|
-
if (clientName === 'GithubCopilot') {
|
|
209
|
-
if (!content.mcp) {
|
|
210
|
-
content = {
|
|
211
|
-
servers: {},
|
|
212
|
-
inputs: []
|
|
213
|
-
};
|
|
214
|
-
}
|
|
215
|
-
else {
|
|
216
|
-
content = content.mcp;
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
settings[clientName] = content;
|
|
220
|
-
Logger.debug(`Successfully loaded MCP settings for ${clientName}`);
|
|
221
|
-
}
|
|
222
|
-
catch (error) {
|
|
223
|
-
Logger.debug(`Warning: Could not load MCP settings for client ${clientName}: ${error instanceof Error ? error.message : String(error)}`);
|
|
224
|
-
settings[clientName] = {};
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
configuration.clientMCPSettings = settings;
|
|
228
|
-
return ConfigurationLoader.syncServerCategoriesWithClientSettings(configuration);
|
|
229
|
-
}
|
|
230
|
-
catch (error) {
|
|
231
|
-
Logger.error('Error loading client MCP settings:', error);
|
|
232
|
-
throw error;
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
//# sourceMappingURL=ConfigurationLoader.js.map
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { MCPServerCategory, FeedConfiguration, InstallationStatus, RequirementStatus, MCPServerStatus, OperationStatus, McpConfig } from './types.js';
|
|
2
|
-
export declare class ConfigurationProvider {
|
|
3
|
-
private static instance;
|
|
4
|
-
private configPath;
|
|
5
|
-
private configuration;
|
|
6
|
-
private configLock;
|
|
7
|
-
private tempDir;
|
|
8
|
-
private constructor();
|
|
9
|
-
static getInstance(): ConfigurationProvider;
|
|
10
|
-
private withLock;
|
|
11
|
-
initialize(feedFile?: string): Promise<void>;
|
|
12
|
-
private saveConfiguration;
|
|
13
|
-
getServerCategories(): Promise<MCPServerCategory[]>;
|
|
14
|
-
getServerCategory(categoryName: string): Promise<MCPServerCategory | undefined>;
|
|
15
|
-
getClientMcpSettings(): Promise<Record<string, Record<string, any>> | undefined>;
|
|
16
|
-
getFeedConfiguration(categoryName: string): Promise<FeedConfiguration | undefined>;
|
|
17
|
-
getServerMcpConfig(categoryName: string, serverName: string): Promise<McpConfig | undefined>;
|
|
18
|
-
getInstallationStatus(categoryName: string): Promise<InstallationStatus | undefined>;
|
|
19
|
-
getServerStatus(categoryName: string, serverName: string): Promise<MCPServerStatus | undefined>;
|
|
20
|
-
getRequirementStatus(categoryName: string, requirementName: string): Promise<RequirementStatus | undefined>;
|
|
21
|
-
updateInstallationStatus(categoryName: string, requirementStatus: Record<string, RequirementStatus>, serverStatus: Record<string, MCPServerStatus>): Promise<boolean>;
|
|
22
|
-
updateRequirementStatus(categoryName: string, requirementName: string, status: RequirementStatus): Promise<boolean>;
|
|
23
|
-
updateRequirementOperationStatus(categoryName: string, requirementName: string, operationStatus: OperationStatus): Promise<boolean>;
|
|
24
|
-
updateServerStatus(categoryName: string, serverName: string, status: MCPServerStatus): Promise<boolean>;
|
|
25
|
-
updateServerOperationStatus(categoryName: string, serverName: string, clientName: string, operationStatus: OperationStatus): Promise<boolean>;
|
|
26
|
-
isRequirementsReady(categoryName: string, serverName: string): Promise<boolean>;
|
|
27
|
-
GetServerRequirementStatus(categoryName: string, serverName: string): Promise<RequirementStatus[]>;
|
|
28
|
-
isServerReady(categoryName: string, serverName: string, clients: string[]): Promise<boolean>;
|
|
29
|
-
syncFeeds(): Promise<void>;
|
|
30
|
-
private loadFeedsIntoConfiguration;
|
|
31
|
-
private loadClientMCPSettings;
|
|
32
|
-
reloadClientMCPSettings(): Promise<void>;
|
|
33
|
-
removeServerFromClientMCPSettings(serverName: string, target?: string): Promise<void>;
|
|
34
|
-
}
|
|
35
|
-
export declare const configProvider: ConfigurationProvider;
|