feat(install): add CodeBuddy Code CLI platform support#584
Conversation
|
Clean addition! CodeBuddy support follows the existing platform install pattern. The skills and hooks installation matches the structure used for other platforms. |
|
Thanks — the CodeBuddy integration points match the current official CLI contracts, so we want to carry this feature. This branch now overlaps substantial installer and skills changes on main, and its workflows never executed. We are porting it onto the current installer while retaining JSONC-aware merge safeguards and runtime-resolved Bash hooks, narrowing deduplication for the shared Claude/CodeBuddy .mcp.json contract, and adding current-main tests and user documentation. Attribution will be preserved; no further action is required from you. |
|
Thanks for carrying this forward! I understand the installer and skills layout has shifted since I opened this, so reworking it onto current main makes sense. Happy to review the ported version or answer any questions if that helps. Glad CodeBuddy support is landing. |
Port the viable CodeBuddy integration from PR #584 onto the current JSONC-safe installer, with narrow shared-config deduplication, runtime-resolved hooks, current tests, and user documentation. Co-Authored-By: Chuckiefan <chuckiefan@163.com>
|
Completed through replacement PR #633, merged as 976d0bf with Chuckiefan attribution. The current-main port uses CodeBuddy's official project .mcp.json/mcpServers contract, CODEBUDDY.md, uppercase per-skill SKILL.md files, and .codebuddy/settings.json hooks. It preserves JSONC/user settings, deduplicates only the exact Claude/CodeBuddy shared contract, and resolves hook repositories at runtime instead of embedding an install-machine path. The rebased 1,496-test suite and all 11 GitHub checks, including Windows-native, passed. I am closing this stale source only because the credited replacement is merged; no further contributor action is needed. |
Summary
Adds
codebuddyas a new platform tocode-review-graph install --platform <name>, supporting the CodeBuddy Code CLI (Tencent's Claude Code–style terminal tool). The IDE product form is intentionally out of scope — it has no file-system config entry point.Running
code-review-graph install --platform codebuddynow produces:<repo>/.mcp.json— MCP server entry (shared with claude; format is identical)<repo>/CODEBUDDY.md— startup instructions (reuses_CLAUDE_MD_SECTION)<repo>/.codebuddy/skills/<slug>/SKILL.md— 4 skills (explore / review / debug / refactor)<repo>/.codebuddy/settings.json—PostToolUse+SessionStarthooks (same schema as Claude)Implementation notes
codebuddyadded toPLATFORMSand_PLATFORM_INSTRUCTION_FILES; no special-case branching in install loop._merge_hooks_into_settingsextraction. Pulled backup + dedup-merge + write logic out ofinstall_hooks(Claude) soinstall_codebuddy_hookscan reuse it. External APIinstall_hooks(repo_root, platform="claude") -> Noneunchanged; 53 hooks regression tests pass.install_platform_configs. Sinceclaudeandcodebuddyshare<repo>/.mcp.json,--platform allpreviously wrote the file twice. Now the first platform wins the physical write; all sharing platforms are credited inconfigured.~/.codebuddy/settings.json(enabledMcpjsonServers) is not auto-written — it affects every project.Design & plan
docs/superpowers/specs/2026-06-25-codebuddy-platform-support-design.mddocs/superpowers/plans/2026-06-25-codebuddy-platform-support.mdTest plan
uv run pytest tests/— 1293 passed, 1 skipped, 2 xpassed (no regressions)uv run ruff check code_review_graph/— cleanuv run mypy code_review_graph/— clean (60 source files)install --platform codebuddyproduces all 4 expected artifactsinstall --platform allwrites.mcp.jsonexactly once while crediting bothClaude CodeandCodeBuddy Code0c9a5ff..head09270d4)