feat(mcp): implement double-insurance global-only MCP and testing rules installation

- Install MCP configs and Artemis mobile testing rules strictly into user home directories (~), avoiding project workspace pollution
- Add double-insurance rules synchronization injecting into both primary global instruction files (e.g. ~/.gemini/GEMINI.md, ~/.claude/CLAUDE.md, ~/.cursorrules, ~/.codeium/windsurf/memories/global_rules.md) and modular rules/ directories
- Support JSONC parsing (comments and trailing commas) and automatic .bak backups when merging existing IDE configuration files
- Update README and Quick Start documentation to clarify automatic global MCP & rule mounting across all major AI IDEs
This commit is contained in:
somew1nd committed 2026-08-18 18:40:38 -07:00
1 parent 9e5aee85c8
commit ec5010220b
8 files changed
+305 -35

No files matched your search

+3 -3
View File
@@ -132,11 +132,11 @@ if ((-not (Test-Path $ShowcaseIndex)) -and (-not (Test-Path $ShowcaseIndexAlt1))
# 7. Optionally configure MCP for detected AI IDEs
Write-Host ""
Write-Host " 🔌 Would you like to configure ARTEMIS MCP for your AI IDEs?" -ForegroundColor Cyan
Write-Host " 🔌 Would you like to configure ARTEMIS MCP & testing rules for your AI IDEs?" -ForegroundColor Cyan
Write-Host " (Supported: Antigravity, Cursor, Claude Code/Desktop, OpenClaw, Windsurf)"
$installMcp = "Y"
if ([Console]::IsInputRedirected -eq $false) {
$response = Read-Host " Install MCP configuration now? [Y/n]"
$response = Read-Host " Install MCP configuration & rules now? [Y/n]"
if ($response -ne "") {
$installMcp = $response
}
@@ -145,7 +145,7 @@ if ([Console]::IsInputRedirected -eq $false) {
}
if ($installMcp -match "^[Yy]") {
Write-Host " ✔ Installing MCP server configuration..." -ForegroundColor Green
Write-Host " ✔ Installing MCP server configuration & testing rules..." -ForegroundColor Green
uv run artemis mcp --install all 2>$null | Out-Null
Write-Host " 💡 Tip: You can update or re-install anytime with: uv run artemis mcp --install all" -ForegroundColor Cyan
} else {