Internal helper contract for calling the kimi-companion runtime from Claude Code
Scanned 9/6/2026
Install to Claude Code
npx -y skills add satasuk03/kimi-plugin-cc --skill kimi-cli-runtime --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Kimi Cli Runtime?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/satasuk03-kimi-cli-runtime)More formats (shields.io, HTML) on the badges page.
---
name: kimi-cli-runtime
description: Internal helper contract for calling the kimi-companion runtime from Claude Code
user-invocable: false
---
# Kimi Runtime
Use this skill only inside the `kimi:kimi-worker` and `kimi:kimi-reasoner` subagents.
Primary helpers:
- `node "${CLAUDE_PLUGIN_ROOT}/scripts/kimi-companion.mjs" task "<raw arguments>"` — for `kimi:kimi-worker`.
- `node "${CLAUDE_PLUGIN_ROOT}/scripts/kimi-companion.mjs" reason "<raw arguments>"` — for `kimi:kimi-reasoner`.
Execution rules:
- Each subagent is a forwarder, not an orchestrator. Its only job is to invoke its one subcommand once and return that stdout unchanged.
- Prefer the helper over hand-rolled `git`, direct `kimi` CLI strings, or any other Bash activity.
- Do not call `setup`, `review`, `status`, `result`, or `cancel` from either subagent.
- `kimi:kimi-worker` uses `task` for every request, including diagnosis, planning, research, and explicit implementation requests.
- `kimi:kimi-reasoner` uses `reason` for every request. `reason` is always read-only, regardless of flags.
- You may use the `kimi-k2-prompting` skill to rewrite the user's request into a tighter Kimi prompt before the single call.
- That prompt drafting is the only Claude-side work allowed. Do not inspect the repo, solve the task yourself, or add independent analysis outside the forwarded prompt text.
- Leave model unset by default. Add `--model` only when the user explicitly asks for one.
- When the user explicitly names a model, pass that id through with `--model <id>` exactly as given; otherwise leave it unset. Unset means `task` runs on Kimi's configured `default_model`, while `reason` runs on Kimi K3 (`kimi-code/k3`).
- `kimi:kimi-worker` defaults to a write-capable Kimi run. Add `--read-only` only when the user explicitly asks for read-only behavior or only wants investigation, diagnosis, or research without edits.
Command selection:
- Use exactly one call per handoff.
- If the forwarded request includes `--background` or `--wait`, treat that as Claude-side execution control only. Strip it before calling the subcommand, and do not treat it as part of the natural-language prompt text.
- If the forwarded request includes `--model`, pass it through as-is.
- If the forwarded request includes `--resume`, strip that token from the prompt text and add `--resume-last`.
- If the forwarded request includes `--fresh`, strip that token from the prompt text and do not add `--resume-last`.
- `--resume`: always add `--resume-last`, even if the request text is ambiguous.
- `--fresh`: always use a fresh run, even if the request sounds like a follow-up.
- `--resume-last`: internal helper for "keep going", "resume", "apply the top fix", or "dig deeper" after a previous run.
Safety rules:
- Default to write-capable Kimi work in `kimi:kimi-worker` unless the user explicitly asks for read-only behavior.
- `kimi:kimi-reasoner` is always read-only.
- Preserve the user's request text as-is apart from stripping routing flags.
- Do not inspect the repository, read files, grep, monitor progress, poll status, fetch results, cancel jobs, summarize output, or do any follow-up work of your own.
- Return the stdout of the invoked subcommand exactly as-is.
- If the Bash call fails or Kimi cannot be invoked, return nothing.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!