Skip to content

feat: Add Kimi CLI as a supported runtime (#817)#818

Open
javimosch wants to merge 1 commit intogsd-build:mainfrom
javimosch:feat-kimi-support
Open

feat: Add Kimi CLI as a supported runtime (#817)#818
javimosch wants to merge 1 commit intogsd-build:mainfrom
javimosch:feat-kimi-support

Conversation

@javimosch
Copy link

What

Adds support for Kimi CLI (Moonshot AI) to GSD, allowing users to install commands and agents as Kimi skills in ~/.config/agents/skills/.

Why

Kimi CLI is a growing terminal-based AI coding assistant with 100k+ developers using its skill-based architecture. This change allows Kimi users to benefit from GSD's spec-driven development workflow w
ithout switching tools.

Testing

• [ ] Tested on macOS
• [ ] Tested on Windows
• [ ] Tested on Linux

Test steps:

Install for Kimi

node bin/install.js --kimi --global

Verify skills were created

ls ~/.config/agents/skills/gsd-*/

Verify agent YAML files

ls ~/.kimi/agents/gsd-*.yaml

Test skill invocation in Kimi

/skill:gsd-help
/skill:gsd-new-project

Checklist

• [x] Follows GSD style (no enterprise patterns, no filler)
• [ ] Updates CHANGELOG.md for user-facing changes
• [x] No unnecessary dependencies added
• [x] Works on Windows (uses path.join() throughout, forward slash conversion for paths)

Breaking Changes

None. This is purely additive - all existing Claude Code, OpenCode, Gemini, and Codex functionality remains unchanged.

@javimosch
Copy link
Author

Review: feat-kimi-support Branch (by Kimi + gsd + kimi-k2.5)

Status: ✅ Not yet merged into main (commit 4213f70)

Summary

This commit adds Kimi CLI as a 5th supported runtime alongside Claude Code, OpenCode, Gemini, and
Codex.

Key Changes

File Changes
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
README.md Updated documentation for Kimi support
bin/install.js +375 lines — full Kimi installation logic
package.json Added "kimi" and "kimi-cli" keywords

Kimi-Specific Implementation Details

Installation:

• Skills-based architecture (like Codex) — installs to ~/.config/agents/skills/
• Command syntax: /skill:gsd- (e.g., /skill:gsd-new-project)
• XDG-compliant: uses ~/.config/agents/skills/ by default

Tool Mappings (Claude → Kimi):

Claude Kimi
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Read ReadFile
Write WriteFile
Edit StrReplaceFile
Bash Shell
WebSearch SearchWeb
WebFetch FetchURL
TodoWrite SetTodoList

Agent Conversion:

• Claude's .md agents → Kimi's .yaml + .md split format
• System prompts written to separate files

Notable Design Decisions

  1. Skills directory — Uses ~/.config/agents/skills/ (not ~/.kimi/skills/)
  2. No settings.json — Kimi loads agents via --agent-file flag
  3. No statusline hooks — Not supported in Kimi CLI

Potential Concerns

• Large installer file — bin/install.js now 2,700+ lines with 5 runtime paths
• Kimi uses different skill paths — could confuse users expecting ~/.kimi/
• No test coverage — No tests for Kimi-specific conversion functions

──────────────────────────────────────────────────────────────────────────────────────────────────
Overall: Clean implementation following existing patterns. The Kimi support is consistent with how
Codex was integrated (skills-first approach).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant