Fold all runtime==='kimi'/isKimi logic branches into descriptor-driven hostBehaviors (localInstallDeferred, verificationStyle, agentManifestStyle, reapplyCommand, doneBannerStyle) + add 'kimi' to _DESCRIPTOR_AGENTS_RUNTIMES. Kimi's skills/kimi-agents dispatch was already descriptor-driven (converter-by- name + kimi-agents kind). Zero isKimi/runtime==='kimi' branches remain. UPGRADE 1 (native hook bus): new hooksSurface 'kimi-hooks-toml' + a marker- delimited config.toml [[hooks]] emitter (buildKimiHooksTomlBlock/writeKimiHooksToml in runtime-hooks-surface.cts; resolveKimiHooksTomlDir in runtime-homes.cts). GSD's lifecycle hooks now wire into Kimi's native ~/.kimi/config.toml (Context7- confirmed path) at SessionStart/PreToolUse/Stop/PreCompact/SubagentStart/ SubagentStop — kimi becomes a hooks/ consumer (the 3 && !isKimi exclusion guards removed). config.toml holds absolute install paths so it's golden-excluded via an exact relative-path (.kimi/config.toml), not a basename (which would blind Codex's config.toml). New hooksSurface value added to the closed enum in capability-validator + runtime-config-adapter-registry. UPGRADE 2 (background dispatch): flip dispatch.backgroundDispatch true (Kimi's Agent tool takes run_in_background; root agent already gets the Agent tool), so negotiation no longer flattens dispatch. subagentToolkit stays 'undocumented' per AC (coder/explore/plan have distinct tool policies). MCP transport explicitly deferred (no installer-driven MCP for any runtime). Golden: only kimi.json changes (hooks/ scripts now installed); all 15 others + claude-local byte-identical (kilo/zcode keep their own exclusions). Tests: kimi-imperative-reference (adapter/axes/fail-closed/hostBehaviors + source-grep guard) + kimi-upgrades (config.toml [[hooks]] SessionStart + marker idempotency + backgroundDispatch negotiation). CONTEXT.md glossary + matrix + how-to updated; changeset (Added). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
89 lines
2.3 KiB
JSON
89 lines
2.3 KiB
JSON
{
|
|
"id": "kimi",
|
|
"role": "runtime",
|
|
"version": "1.7.0-rc.5",
|
|
"title": "Kimi CLI",
|
|
"description": "Kimi CLI (Moonshot AI) — generic agents root at ~/.config/agents; skills + kimi-agents artifact layout; native config.toml [[hooks]] bus at ~/.kimi/config.toml; background dispatch; tier-2 support.",
|
|
"tier": "core",
|
|
"requires": [],
|
|
"engines": {
|
|
"gsd": ">=1.6.0"
|
|
},
|
|
"runtime": {
|
|
"configHome": {
|
|
"kind": "generic-agents-root",
|
|
"name": "agents",
|
|
"env": [
|
|
"KIMI_CONFIG_DIR"
|
|
],
|
|
"probe": [
|
|
"~/.config/agents",
|
|
"~/.agents"
|
|
],
|
|
"probeExists": "skills"
|
|
},
|
|
"localConfigDir": ".kimi-code",
|
|
"configFormat": "none",
|
|
"artifactLayout": {
|
|
"global": [
|
|
{
|
|
"kind": "skills",
|
|
"destSubpath": "skills",
|
|
"prefix": "gsd-",
|
|
"nesting": "flat",
|
|
"recursive": false,
|
|
"converter": "convertClaudeCommandToKimiSkill"
|
|
},
|
|
{
|
|
"kind": "kimi-agents",
|
|
"destSubpath": "agents",
|
|
"prefix": "gsd",
|
|
"nesting": "flat",
|
|
"recursive": false,
|
|
"converter": null
|
|
}
|
|
],
|
|
"local": []
|
|
},
|
|
"commandStyle": "slash-hyphen",
|
|
"hooksSurface": "kimi-hooks-toml",
|
|
"hookEvents": "claude",
|
|
"sandboxTier": "none",
|
|
"supportTier": 2,
|
|
"installSurface": "profile-marker-only",
|
|
"writesSharedSettings": false,
|
|
"permissionWriter": null,
|
|
"extendedHookEvents": [
|
|
"SubagentStop",
|
|
"Stop",
|
|
"PreCompact",
|
|
"SubagentStart"
|
|
],
|
|
"hostIntegration": {
|
|
"embeddingMode": "imperative",
|
|
"commandSurface": "slash-file",
|
|
"dispatch": {
|
|
"namedDispatch": true,
|
|
"nested": false,
|
|
"maxDepth": 1,
|
|
"background": true,
|
|
"subagentToolkit": "undocumented",
|
|
"backgroundDispatch": true
|
|
},
|
|
"modelMode": "passive",
|
|
"hookBus": "host",
|
|
"stateIO": "filesystem",
|
|
"transport": "mcp",
|
|
"runtime": "python"
|
|
},
|
|
"hostBehaviors": {
|
|
"reapplyCommand": "/skill:gsd-update --reapply",
|
|
"localInstallDeferred": true,
|
|
"verificationStyle": "kimi",
|
|
"agentManifestStyle": "kimi-nested",
|
|
"doneBannerStyle": "kimi-agent-file",
|
|
"skipSharedHooksInstall": true
|
|
}
|
|
}
|
|
}
|