Skip to content

Commit 751ee00

Browse files
author
Ethan Hurst
committed
feat: add Kimi CLI support with skills, agents, and tool mapping
Installs GSD commands as Kimi skills to the XDG path ~/.config/agents/skills/gsd-<name>/SKILL.md (invoked via /skill:gsd-<name>) and agents as dual-file YAML + system prompt under ~/.kimi/agents/. - Full Claude→Kimi tool name mapping (kimi_cli.tools.file:ReadFile, etc.) - MCP tools excluded from agent tool lists - ${VAR} escaping in agent system prompts - --kimi --local guard with clear error message - KIMI_CONFIG_DIR / KIMI_SKILLS_DIR env overrides - 25 new tests in tests/kimi-config.test.cjs (553 total, 0 failures)
1 parent a24282d commit 751ee00

File tree

5 files changed

+601
-27
lines changed

5 files changed

+601
-27
lines changed

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,14 @@ Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
1212
session used the default Sonnet 4.6 model. Opus is now passed directly to Task calls (#695)
1313

1414
### Added
15+
- **Kimi CLI support** — install GSD skills and agents to [Kimi](https://github.com/MoonshotAI/kimi-cli) via `--kimi --global`
16+
- Skills install to XDG path `~/.config/agents/skills/gsd-<name>/SKILL.md` and are invoked with `/skill:gsd-<name>`
17+
- Agents install as dual-file format: `~/.kimi/agents/gsd-<name>.yaml` + `gsd-<name>.md` system prompt
18+
- Tool names translated to full module paths (`kimi_cli.tools.file:ReadFile`, `kimi_cli.tools.shell:Shell`, etc.)
19+
- MCP tools excluded from agent tool lists (configured separately via Kimi's config)
20+
- `${VAR}` patterns in agent bodies escaped for Kimi CLI compatibility
21+
- Local install guard — Kimi's XDG skills path is always global; `--kimi --local` exits with a clear error
22+
- `KIMI_CONFIG_DIR` and `KIMI_SKILLS_DIR` env overrides for custom paths
1523
- **Adaptive model profile** — fourth model profile (`adaptive`) that auto-selects models per-plan based on complexity evaluation (#210)
1624
- `evaluateComplexity()` scores plan metadata (files modified, task count, objective keywords, plan type, dependencies) on 0-10+ scale
1725
- Three tiers: Simple (haiku/sonnet), Medium (sonnet/opus), Complex (opus/sonnet)

README.md

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
# GET SHIT DONE
44

5-
**A light-weight and powerful meta-prompting, context engineering and spec-driven development system for Claude Code, OpenCode, Gemini CLI, and Codex.**
5+
**A light-weight and powerful meta-prompting, context engineering and spec-driven development system for Claude Code, OpenCode, Gemini CLI, Codex, and Kimi.**
66

77
**Solves context rot — the quality degradation that happens as Claude fills its context window.**
88

@@ -80,16 +80,18 @@ npx get-shit-done-cc@latest
8080
```
8181

8282
The installer prompts you to choose:
83-
1. **Runtime** — Claude Code, OpenCode, Gemini, Codex, or all
83+
1. **Runtime** — Claude Code, OpenCode, Gemini, Codex, Kimi, or all
8484
2. **Location** — Global (all projects) or local (current project only)
8585

8686
Verify with:
8787
- Claude Code / Gemini: `/gsd:help`
8888
- OpenCode: `/gsd-help`
8989
- Codex: `$gsd-help`
90+
- Kimi: `/skill:gsd-help`
9091

9192
> [!NOTE]
92-
> Codex installation uses skills (`skills/gsd-*/SKILL.md`) rather than custom prompts.
93+
> Codex and Kimi installations use skills (`skills/gsd-*/SKILL.md`) rather than custom prompts.
94+
> Kimi installs globally to `~/.config/agents/skills/` and does not support local install.
9395
9496
### Staying Updated
9597

@@ -117,12 +119,15 @@ npx get-shit-done-cc --gemini --global # Install to ~/.gemini/
117119
npx get-shit-done-cc --codex --global # Install to ~/.codex/
118120
npx get-shit-done-cc --codex --local # Install to ./.codex/
119121

122+
# Kimi (skills-first, XDG global only)
123+
npx get-shit-done-cc --kimi --global # Install to ~/.config/agents/skills/
124+
120125
# All runtimes
121126
npx get-shit-done-cc --all --global # Install to all directories
122127
```
123128

124129
Use `--global` (`-g`) or `--local` (`-l`) to skip the location prompt.
125-
Use `--claude`, `--opencode`, `--gemini`, `--codex`, or `--all` to skip the runtime prompt.
130+
Use `--claude`, `--opencode`, `--gemini`, `--codex`, `--kimi`, or `--all` to skip the runtime prompt.
126131

127132
</details>
128133

@@ -646,9 +651,10 @@ This prevents Claude from reading these files entirely, regardless of what comma
646651
- Restart your runtime to reload commands/skills
647652
- Verify files exist in `~/.claude/commands/gsd/` (global) or `./.claude/commands/gsd/` (local)
648653
- For Codex, verify skills exist in `~/.codex/skills/gsd-*/SKILL.md` (global) or `./.codex/skills/gsd-*/SKILL.md` (local)
654+
- For Kimi, verify skills exist in `~/.config/agents/skills/gsd-*/SKILL.md`
649655

650656
**Commands not working as expected?**
651-
- Run `/gsd:help` to verify installation
657+
- Run `/gsd:help` (or `/skill:gsd-help` for Kimi) to verify installation
652658
- Re-run `npx get-shit-done-cc` to reinstall
653659

654660
**Updating to the latest version?**
@@ -673,6 +679,7 @@ To remove GSD completely:
673679
npx get-shit-done-cc --claude --global --uninstall
674680
npx get-shit-done-cc --opencode --global --uninstall
675681
npx get-shit-done-cc --codex --global --uninstall
682+
npx get-shit-done-cc --kimi --global --uninstall
676683

677684
# Local installs (current project)
678685
npx get-shit-done-cc --claude --local --uninstall

0 commit comments

Comments
 (0)