afx-team / afx-team/hebb-mind

[Feature] Add installers for snippet-type MCP clients (Cline, Kiro, Windsurf, Cursor)

Abierto
#59 0 comentarios 0 reacciones 0 asignados Ver en GitHub
enhancement
Lenguaje dominante
Python
Estrellas
52
Forks
18
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

### Problem

Split from #32.

PR #57 shipped one-command installers for Gemini CLI, Goose, opencode, and Amp. However, 4 clients that have stable on-disk config files still only have manual config snippets in mcp-integration.md — users must manually find and edit the right JSON file. This is error-prone and inconsistent with the installer pattern already established for Codex, Claude Code, Gemini CLI, Goose, opencode, and Amp.

### Proposed solution

Add `hebb install` / `hebb uninstall` commands for:

| Client | Config file | Format |
|--------|------------|--------|
| Cline | ~/.cline/mcp.json (CLI) / VS Code global storage (IDE) | JSON, mcpServers |
| Kiro | .kiro/settings/mcp.json or ~/.kiro/settings/mcp.json | JSON, mcpServers |
| Windsurf | ~/.codeium/windsurf/mcp_config.json | JSON, mcpServers |
| Cursor | ~/.cursor/mcp.json or .cursor/mcp.json | JSON, mcpServers |

Follow the pattern in src/hebb/integrations/gemini_cli/ (shared _json_config.py helpers). Each installer should:
- Resolve absolute hebb-mcp path via hebb_mcp_command()
- Be idempotent (re-running replaces prior hebb entry)
- Preserve unrelated config entries
- Use atomic writes (tempfile + os.replace)

Acceptance criteria:
- Each client has install and uninstall commands
- Unit tests covering install, idempotency, config preservation, and uninstall
- mcp-integration.md (EN + zh) updated to recommend installer as primary method
- S1 command-drift CI guard extended to cover new commands

### Alternatives considered

Leave as manual snippets only. This works but creates an inconsistent experience — some clients have one-command install, others require manual JSON editing.

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.