Kimi Code Never Ask: režimy a nebezpečné příkazy
MarkdownV režimu Never Ask spouští Kimi Code příkazy rm -rf a shutdown bez dotazu. Jak se tyto 3 režimy liší a jak zakázat nebezpečný příkaz v config.toml?
Přečíst celý článek
V režimu Never Ask (/auto) Kimi Code automaticky schvaluje všechno: provede příkazy rm -rf, shutdown i reboot a ani se nezeptá. Agent se na tyto příkazy ptá jen ve 2 dalších režimech: Always Ask a Ask When Needed.
I osobní prototyp může vystavit cenné soubory a přihlašovací údaje. Použijte izolovanou kopii či kontejner s omezenými oprávněními a ověřenou zálohou; u zákaznických systémů dejte agentovi navíc samostatnou databázovou identitu jen s potřebným přístupem. Zákaz mazání musí vycházet z ověřených oprávnění dané databázové role, nikoli z názvu režimu.
Podívejme se, co jednotlivé režimy Kimi Code dělají, kde ochrana funguje a jak nastavit zákaz. Jdeme na to.
Informace o používání služby najdete v dokumentaci Ailoot.
Hlavní poznatek
Kimi Code má 3 režimy. Výchozí je Always Ask: čtení probíhá automaticky a všechno ostatní potvrzujete pro každou akci zvlášť. Režim Ask When Needed (/yolo) sám schvaluje běžné úpravy, ale před přístupem k souborům s klíči, spuštěním nebezpečných příkazů nebo opuštěním režimu plánování se zeptá. Režim Never Ask (/auto) se neptá na nic a ochrana před nebezpečnými příkazy v něm nefunguje. Trvalý zákaz nastavíte pravidlem deny v souboru ~/.kimi-code/config.toml; režim Never Ask je lepší nezapínat v prostředí, které má přístup k živé databázi.
Jak se 3 režimy Kimi Code liší?
Pokud jste si už nainstalovali Kimi Code, viděli jste panel schvalování: agent chce upravit soubor nebo spustit příkaz a čeká na vaše „ano“. Režimy se dříve jmenovaly Manual, YOLO a Auto, proto se dodnes používají staré příkazy /yolo a /auto.
Always Ask. Výchozí režim. Agent čte soubory bez dotazu, ale každou úpravu i každý příkaz potvrzujete zvlášť. Je to nejpomalejší režim.
Ask When Needed. Zapnete ho příkazem /yolo. Běžné úpravy a příkazy schvaluje sám, ale zeptá se před přístupem k souboru .env (obsahuje hesla a klíče projektu) a SSH klíčům serveru, před nebezpečnými příkazy, jako jsou shutdown (vypne počítač) a rm -rf (smaže celou složku a obejde koš), a před opuštěním režimu plánování. Agent vám také může sám položit otázku.
Never Ask. Zapnete ho příkazem /auto. Všechny akce se automaticky schvalují, včetně přístupu k citlivým souborům a opuštění režimu plánování. Agent se na nic neptá a o všem rozhoduje sám.
Režim plánování se zapíná samostatně pomocí Shift-Tab nebo /plan: agent nejprve napíše plán a počká na vaše schválení, teprve potom začne upravovat soubory.
Kdy použít Kimi Code bez potvrzování příkazů?
V Claude Code mám jako výchozí nastavené „povolit vše“ a zapíná se to v každém novém chatu. Bez toho je vibe coding příliš pomalý. Člověk, který programuje tímto způsobem, toho už tak ví jen málo, a ještě musí pořád mačkat tlačítka: ano, ano, ano, ne, ne, ne.
V tomto režimu ale agent může dělat naprosto cokoli neuváženého, včetně smazání databáze. Pak řekne „promiň, omlouvám se“, ale někdy už nejde napravit, co provedl. Tento režim je tedy pro odvážné a odpovědnost nesete vy.
Mám tato pravidla. U osobních projektů, experimentů a prototypů použijte režim bez potvrzování pouze v izolované kopii či kontejneru bez cenných souborů a produkčních přihlašovacích údajů, s omezenými oprávněními a zálohou. Nepřítomnost zákazníků nechrání osobní soubory ani klíče a izolaci je stále nutné ověřit. Pokud ale tento režim zapnete v projektu, který má přístup k produkčnímu serveru, stačí 1 zadání a agent může přes noc smazat databázi a nasadit změny na živý web.
Proč vás zákaz napsaný slovy neochrání
Mnozí lidé píšou do pokynů pro agenta „nesahej na databázi“. Nespoléhejte se, že vás to ochrání. Řeknete mu: kamaráde, sem nechoď. Ale on tam stejně půjde a vezme si, co potřebuje, kdykoli to potřebuje. Platí to zvlášť pro čínský model Kimi: poruší jakýkoli zákaz, který nastavíte. Americké modely jsou mnohem lépe naučené tomu nepodléhat.
Kimi při práci stále používám. Kimi K3 je velmi pozorný; používám ho ke kontrole projektů, jestli neunikly klíče, a ke shromažďování informací. Jednou jsem během několika dní vyčerpal všechny jeho limity. Kimi nezlobí a udělá všechno, o co ho požádáte. Proto při práci s ním potřebujete izolaci. Popsal jsem, jak jsem ho testoval na vlastních úkolech, zde.
Potřebujete 2 formy izolace:
- Seznam blokovaných příkazů v nastavení. Blokuje odpovídající volání nástrojů; vzor jednoho zápisu příkazu není úplnou hranicí proti jiným nástrojům či rovnocenným akcím. Používejte ho spolu s oprávněními operačního systému, kontejneru a databáze.
- Přístup k databázi pouze pro čtení. V živé databázi má agent samostatného uživatele s oprávněními pouze pro čtení. Pak nemůže databázi vymazat ani v režimu Never Ask.
Kde funguje ochrana před nebezpečnými příkazy
Vestavěná ochrana Kimi Code před nebezpečnými příkazy je ve výchozím nastavení zapnutá. V režimech Always Ask a Ask When Needed se před příkazy shutdown, reboot (restartování) a rm -rf ptá na potvrzení. V režimu Never Ask se tyto příkazy provedou bez přerušení.
Existují 2 výjimky:
- příkaz
rm -rfse spustí bez dotazu, pokud maže pouze obsah dočasných složek/tmpnebo/temp(od verze 0.43.0); - v režimu Ask When Needed se Kimi Code neptá na příkazy terminálu, které nedokáže předem analyzovat (od verze 2.0.1).
Ve verzi 0.40.0 režim Auto nebezpečné příkazy blokoval; toto blokování bylo ve verzi 0.41.0 odstraněno.
Ochranu můžete vypnout nastavením dangerous_command_guard = false v sekci [permission] konfiguračního souboru ~/.kimi-code/config.toml nebo pomocí proměnné KIMI_CODE_DANGEROUS_COMMAND_GUARD=false. Vývojáři doporučují vypnout ji pouze tam, kde jsou nebezpečné příkazy už zachytávány externě.
Jak nastavit trvalý zákaz v Kimi Code
Když agent chce něco změnit, Kimi Code zobrazí panel schvalování:
- Schválit: použijte šipky a
Enternebo stiskněte přímo1,2či3; - Odmítnout:
Esc,Ctrl-CneboCtrl-D; - Schválit pro tuto relaci: stejný typ volání bude schválen až do konce relace;
- Trvalá pravidla: trvalé pravidlo povolení nebo zákazu v souboru nastavení.
Trvalá pravidla se zapisují do souboru nastavení ~/.kimi-code/config.toml do bloků [[permission.rules]]. Kimi Code je kontroluje v pořadí a použije se první shoda, proto zapište zákazy nad povolení. Každé pravidlo má položku decision: allow (okamžitě povolit), deny (okamžitě zakázat) nebo ask (zeptat se pokaždé).
Zákaz pro rm -rf a dotaz před jakýmkoli jiným příkazem terminálu:
[[permission.rules]]
decision = "deny"
pattern = "Bash(rm -rf*)"
[[permission.rules]]
decision = "ask"
pattern = "Bash"
U příkazů terminálu patří vzor do závorek: Bash(command-pattern); pro čtení souborů použijte Read(path-pattern). Nástroje MCP, AgentSwarm a vlastní nástroje lze zakázat pouze uvedením jejich úplných názvů.
Pokud nejste technicky zaměření a nechcete otevírat soubor nastavení, jednoduše vložte agentovi následující zadání: sám zjistí, co je třeba omezit. Jen ho nejdřív nechte říct, jak moc vás to zpomalí. Pokud jste zvyklí pracovat bez potvrzování, po přidání zákazů některé věci přestanou fungovat. Tady je zadání:
Analyzuj můj projekt a řekni mi, zda máš přístup k produkčnímu serveru, stagingové databázi a produkčním klíčům. Pokud ano, nastav ochranu proti nebezpečným příkazům: zakaž mazání celých složek, příkazy, které nevratně přepisují historii změn, a přímé příkazy do produkční databáze. Nejdřív ukaž plán ve formátu „před – po“ a upřímně mi řekni, jak moc mě to zpomalí.
Jak nastavit totéž v Claude Code jsem popsal v samostatném článku. Podívejte se také na to, jak režim Auto v Claude Code kontroluje akce agenta.
Který režim zvolit
- Chcete vidět každý krok, který agent provede: Always Ask, výchozí režim. Potvrzujete všechno kromě čtení.
- Osobní projekt nebo prototyp bez skutečných zákazníků: začněte s Always Ask nebo Ask When Needed. Never Ask zvažte jen pro izolovanou jednorázovou kopii s omezenými oprávněními bez cenných dat a klíčů; samotná nepřítomnost zákazníků bezpečnost nepřidává.
- Projekt se skutečnými zákazníky a přístupem k serveru: nezapínejte Never Ask. Nastavte zákazy
denyvconfig.tomla dejte agentovi k databázi přístup pouze pro čtení.
A databázi zálohujte na počítači odděleném od projektu. Ostatní bezpečnostní pravidla najdete v samostatném článku.
Režim potvrzování přizpůsobte oprávněním svého projektu a zkontrolujte, kde je třeba nastavit zákazy.
Zdroje
- Kimi Code: Interakce a zadávání — 3 režimy oprávnění,
/yolo,/auto, ochrana před nebezpečnými příkazy v jednotlivých režimech, panel schvalování a režim plánování. - Kimi Code: Konfigurační soubory —
[[permission.rules]], pořadí kontroly pravidel,dangerous_command_guard,KIMI_CODE_DANGEROUS_COMMAND_GUARDa cesta kconfig.toml. - Kimi Code: Seznam změn — verze 0.40.0, 0.41.0, 0.43.0 a 2.0.1: ochrana před nebezpečnými příkazy a přejmenování režimů.
Seznamte se s Ailoot.
Další podrobnosti
Časté otázky
Je Never Ask bezpečný jen proto, že projekt nemá zákazníky?
Ne. Agent stále může poškodit osobní soubory nebo zveřejnit klíče. Před zvážením režimu bez potvrzení použijte omezená oprávnění, izolovanou jednorázovou kopii či kontejner a zálohu.
Nahrazuje pravidlo deny pro rm -rf izolaci?
Ne. Blokuje odpovídající volání nástrojů, nikoli všechny rovnocenné způsoby změny souborů. Cenná data a produkční přihlašovací údaje ponechte mimo přístup agenta a pro databázi použijte samostatnou identitu jen s potřebnými oprávněními.