Consult Kimi in background (paid)
kimi_consult_asyncLaunch a background, read-only Kimi consultation that returns a job ID immediately, letting you retrieve the answer later—designed for extensive code reviews that might exceed synchronous timeouts.
Instructions
Ask Kimi for a read-only second opinion in the background; get a job_id
back immediately instead of blocking.
PAID — this spends Kimi quota on every new call; there is no dry-run preview for a consult, so run kimi_status (free) first to confirm the CLI is installed and authenticated.
Same read-only behavior as kimi_consult (Kimi never edits files), but detached —
prefer it for a high-reasoning_effort or broad repo-grounded consult that can exceed the
synchronous deadline (built-in default 300s), since a sync run whose deadline expires loses
its partial work; this job's own deadline is separately configured (built-in default 1800s).
Starting a job commits to spend (it runs to completion or its wall-clock deadline even if
you never poll). Poll kimi_job_status; read/consume the consult envelope with
kimi_job_result/kimi_job_consume_result; stop with kimi_job_cancel.
Data egress: same as kimi_consult — sends your question and extra_context
(raw, unredacted) to your configured provider via the kimi CLI, plus files Kimi reads from its
resolved working directory (workspace_root, your MCP roots, or the server cwd).
Kimi auto-loads the resolved workspace's AGENTS.md and discovers skills from its own
config (including extra_skill_dirs, which may point outside the workspace).
Your inputs are sent raw and unredacted. Secret redaction is best-effort and covers the gathered diff and Kimi's returned output — not what you type, and not the files Kimi reads for itself.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | Override the Kimi model slug for this call; defaults to the server/Kimi default when unset. | |
| question | Yes | The question or prompt to send Kimi (a different model) for a read-only answer. Must be non-blank: empty or whitespace-only is rejected before any model call. | |
| isolation | No | Kimi skills isolation: which skills Kimi loads — 'inherit' (its own user/project discovery) or 'ignore-skills' (replace those with an empty directory). Kimi's built-in skills load either way. Defaults to the server's configured value (built-in 'inherit'; `kimi_status` reports the resolved one). | |
| extra_context | No | Optional author intent/background context, added as clearly-labeled UNTRUSTED prompt data. Redaction does NOT cover it — no live secrets. Full caveats and bounds: kimi://params. | |
| workspace_root | No | Absolute path to the target repo root — pass it (or an MCP root) to target the intended repo; otherwise the call falls back to the server's own cwd and sets meta.workspace_warning. | |
| idempotency_key | No | Optional dedup key scoped to THIS tool + workspace. Same key + same args replays the prior result with no new spend; different args are refused (idempotency_conflict). Sync and _async are separate tools and never share a key. Omit for none; retention is bounded. Lifecycle: kimi://params. | |
| reasoning_effort | No | Override the Kimi reasoning effort for this call (a model_reasoning_effort override); omit or pass null for the server default (MOONBRIDGE_REASONING_EFFORT) or Kimi's own resolution. An open, per-model string the backend validates at run time — commonly minimal|low|medium|high|xhigh; kimi_models lists each model's advertised set (advisory). Rejection and bounds detail: kimi://params. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | Yes |