afx-team / afx-team/hebb-mind

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

Aberta
#59 0 comentários 0 reações 0 responsáveis Ver no GitHub
enhancement
Linguagem predominante
Python
Estrelas
52
Forks
18
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

### 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.

Guia de contribuição

Abrir o guia de contribuição

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.