7 Claude Code-szabály az autonóm ügynökök költéseinek korlátozására 2026-ban
Markdown7 szabály a korlátok beállítására a Claude Code-ban, hogy egy autonóm ügynök ne tegyen tönkre anyagilag: szolgáltatói korlátok, Task Budgets, hookok, engedélylisták, kill switchek, sandbox-kulcsok és iterációs korlátok.
A teljes cikk elolvasása
Főbb pontok
Egy korlátlan felhőhozzáféréssel rendelkező autonóm ügynök egyetlen éjszaka alatt nagy számlát halmozhat fel. Bemutatok 7 Claude Code-szabályt, amelyet egy este alatt bevezethetsz az ilyen típusú hibák megelőzésére.
A szolgáltatás használatáról az Ailoot dokumentációjában olvashatsz.
Hová megy a pénz: egy autonóm ügynök 3 kiadási kategóriája
Főbb pontok
Mire költi a pénzedet egy autonóm ügynök? Három külön csatornán: tokenekre az Anthropic/OpenAI szolgáltatásánál, felhő-erőforrásokra (AWS/GCP/Yandex Cloud), valamint fizetős műveletekre harmadik fél API-jaiban (Stripe-terhelések, SMS-átjárók, Twilio, előfizetéses Telegram-botok). Mindegyik csatornának külön számlázása és külön leállítási módja van.
Ne keverd össze ezt a három csatornát—egymástól függetlenül működnek, és eltérő beállításokat igényelnek:
- LLM-tokenek. A Claude, az OpenAI vagy a Gemini minden kérés bemeneti és kimeneti kontextusáért számít fel díjat. Itt az Anthropic Task Budgets (lásd a 2. szabályt) és az API-használat alapú fizetés helyetti előfizetés segíthet.
- Felhő-infrastruktúra. MCP-n vagy Bash-eszközön keresztül az ügynök EC2-, RDS- és S3-erőforrásokat hoz létre, vagy lambdákat telepít. Itt az AWS Budgets, a GCP vagy a Yandex Cloud kill switch-csel segíthet (5. szabály).
- Harmadik fél API-jai. Az ügynök Stripe-terhelést indít, 100 SMS-t küld egy átjárón keresztül, vagy ezer Telegram-előfizetést állít be. Itt a szűk jogosultságú sandbox-kulcsok és a szolgáltató irányítópultján beállított kemény korlát segíthet (6. szabály).
Következik 7 szabály. Mindegyik egy vagy két csatornát fed le.
Hogyan állíts be kemény korlátot az API-költésre (1. szabály)
Főbb pontok
Hogyan állíthatsz be kemény korlátot az API-költésre? Az Anthropicnak és az OpenAI-nak van beépített szervezeti költési korlátja, amely automatikusan korlátozza a fiókot a megadott összeg elérésekor. Ne keverd össze a figyelmeztetésekkel, amelyek csak e-mailt küldenek. A kemény korlát egy akadály; a figyelmeztetés egy jelzőfény. Állítsd be mindkettőt, először az akadályt.
Hol engedélyezd (szolgáltatónként legalább 2 percet szánj rá):
Anthropic Console. console.anthropic.com → Settings → Limits → Monthly spend limit. Állíts be akkora összeget, amennyit a legrosszabb hónapban is hajlandó vagy elkölteni. Amikor eléred, az API 429-es választ ad, és naplózza az eseményt. Nincs olyan, hogy „egy perc múlva újra próbálkozom”—a hónap végéig le van tiltva.
OpenAI Platform. platform.openai.com → Billing → Usage limits. Itt is van puha korlát (e-mailes figyelmeztetés) és kemény korlát (az API leállítása). Állítsd be mindkettőt; a kemény korlátot tedd a puha korlát 1.5x-esére, hogy maradjon idő a reagálásra.
AWS Bedrock / Google Vertex. Ha a Claude/Anthropic szolgáltatást felhőközvetítőn keresztül éred el, a kemény korlátot a felhő oldalán kell beállítani, nem az Anthropicon. Ez az 5. szabály.
Mi nem számít kemény korlátnak: az e-mailes figyelmeztetés („felhasználtad a kereted 80%-át”). Késve érkezik, és éjszaka senki sem olvas e-mailt. Csak a szolgáltató oldalán érvényesülő szinkron korlát számít.
Hogyan működik az Anthropic Task Budgets, és hol állítható be (2. szabály)
Főbb pontok
Mi az Anthropic Task Budgets, és mitől véd meg? Bétafunkció az Opus 4.7/4.8 és a Fable/Mythos termékcsaládban: egyetlen autonóm munkafolyamathoz költségkeretet állítasz be, a Claude pedig csökkenti a következtetés mélységét, ahogy fogy a keret, majd összefoglalóval fejezi be a feladatot ahelyett, hogy annak közepén azt mondaná: „ennyi volt, elfogyott a keretem.” Nem old meg mindent a felhőköltségekkel kapcsolatban, de megelőzi az esetek 80%-át, amikor az ügynök „hurokba ragad, és nem veszi észre.”
A részletekért nézd meg az Anthropic hivatalos dokumentációját. A lényeg: ez puha korlát, nem kemény. Ha az ügynök már létrehozott egy EC2-példányt, a Task Budget nem fogja visszavonni.
Gyakorlati működése: a task_budget mezőt adod át a kérés payloadjában (például 100,000 bemeneti token a teljes feladatra). A Claude tájékoztatást kap a keretről, és magától visszafogja a terveit: egyszerűsíti a lépéseket vagy kihagy alfeladatokat. Ahogy a keret közelít a nullához, lezárja a munkát, és egy köztes összefoglalót ad vissza a „köszönöm a figyelmet” helyett.
Korlátok:
- Csak Anthropic API-n. Bedrockon/Vertexen nem működik, ezeknek külön számlázásuk van
- Csak béta modelleken (Opus 4.7, 4.8, Fable 5, Mythos 5). Sonnet 4.6-on vagy Haikun nem érhető el
- Nem terjed ki a felhőköltségekre vagy a harmadik fél API-jaira. Ha a Claude EC2-példányt indít, a Task Budget nem reagál
Az 1. szabállyal (kemény korlát) együtt használd, ne helyette.
A költségkorlátok a kontextustervezés részei: te döntöd el, mit tehet és mit nem az ügynök, és hol van a vészleállítója.
Mit blokkolj PreToolUse hookokkal a Claude Code-ban (3. szabály)
Főbb pontok
Mik azok a PreToolUse hookok a Claude Code-ban, és miért van rájuk szükséged? Olyan szkriptek, amelyek mielőtt a Claude végrehajt egy eszközhívást, lefutnak. Blokkolhatsz egy kérést (exit 2), kérhetsz felhasználói jóváhagyást, vagy kérdezés nélkül átengedheted. A lényeg: a hookok a --dangerously-skip-permissions előtt futnak. Így még bypass módban is blokkolhatod a veszélyes műveleteket.
A Claude Code engedélyeit (2026. június 1-jei állapot szerint) deny → ask → allow sorrendben értékeli ki. Ez azt jelenti, hogy:
- a kiválasztott jogosultsági módot külön ellenőrizd; a normál módban tesztelt deny-szabályból ne következtess bypass mód alatti védelemre
- ha egy hook
exit 2értéket ad vissza, az eszközhívás blokkolva lesz - az
allowedToolscsak akkor érvényesül, ha a deny-szabályok és a hookok nem lépnek közbe
Egy minimális PreToolUse hook néhány veszélyes parancsalak ellenőrzésére. Ez szövegszűrő, nem teljes shell-értelmező vagy hozzáférési határ: az egyenértékű parancsokhoz, szkriptekhez, más eszközökhöz és meglévő felhőerőforrásokhoz külön védelem kell.
#!/usr/bin/env bash
# ~/.claude/hooks/block-dangerous-bash.sh
INPUT=$(cat)
if ! COMMAND=$(printf '%s\n' "$INPUT" | jq -er '.tool_input.command | select(type == "string")'); then
echo "Blocked: invalid Bash hook input" >&2
exit 2
fi
# Checks the listed text patterns; does not cover every equivalent operation
if echo "$COMMAND" | grep -qiE '(rm -rf|aws s3 rb|terraform destroy|kubectl delete|drop database)'; then
echo "Blocked: destructive command" >&2
exit 2
fi
exit 0
Mentsd el a szkriptet a megadott helyre, ellenőrizd, hogy a jq elérhető, és tedd futtathatóvá a chmod +x ~/.claude/hooks/block-dangerous-bash.sh paranccsal. Kösd be a ~/.claude/settings.json fájlban:
{
"hooks": {
"PreToolUse": [
{
"matcher": "Bash",
"hooks": [{ "type": "command", "command": "~/.claude/hooks/block-dangerous-bash.sh" }]
}
]
}
}
Lásd a hivatalos dokumentációt.
A /hooks alatt ellenőrizd a regisztrációt, majd adj ártalmatlan JSON-mintát a szkriptnek a parancsmező végrehajtása nélkül. A felsorolt veszélyes parancsalaknak 2-es, egy ártalmatlan parancsnak 0-s kilépési kódot kell adnia. Hibás bemenetet is tesztelj. A regex csak az illeszkedő Bash-hívásokat ellenőrzi; a tényleges jogosultsági határhoz szűk hitelesítő adatokat és környezeti elkülönítést használj. Lásd a hookok bemenetének és kimenetének hivatalos példáját.
Miért használj allowedTools engedélylistát, és miért ne a hoston használd a --dangerously-skip-permissions kapcsolót (4. szabály)
Főbb pontok
Hová írd a megengedett eszközök engedélylistáját, és miért rossz hely a host a bypass módhoz? A settings.json fájlban lévő allowedTools azon parancsok listája, amelyeket az ügynök jóváhagyás nélkül futtathat; minden másnál rákérdez. A --dangerously-skip-permissions teljesen letiltja a jóváhagyási kéréseket, ezért ne futtasd a hostgépen—csak konténerben vagy VM-ben használd.
Az engedélylista a legkisebb jogosultság elvét követi. A „mindent engedélyez” (--dangerously-skip-permissions) helyett csak azt add hozzá, amire a feladatnak szüksége van:
{
"permissions": {
"allow": [
"Bash(npm install:*)",
"Bash(npm run build)",
"Bash(git add:*)",
"Bash(git commit:*)",
"Read(./src/**)",
"Write(./src/**)"
],
"deny": [
"Bash(rm -rf:*)",
"Bash(curl * | sh)",
"Write(/etc/**)",
"Write(~/.ssh/**)"
]
}
}
Amit a bypass módról tudnod kell:
- A Linux/macOS nem engedi elindítani a Claude Code-ot bypass módban rootként vagy sudo-val—ez beépített védelem
- Saját gépeden a bypass kikapcsol minden jóváhagyási kérést, az ügynök pedig tetszőleges
rm -rfparancsot futtathat, megnyithatja az SSH-kulcsokat, és feltöltheti az adatokat a felhőbe - Soha ne futtasd a
--dangerously-skip-permissionskapcsolót a hoston, csak az alábbi környezetekben:- Docker-konténerben korlátozott volume-mounttal (csak a szükséges mappával)
- izolált VM-ben (Multipass, Lima, Orbstack)
- GitHub Codespaces / Replit / más sandboxban
Egy minimális docker run parancs bypass módhoz:
docker run --rm -it \
-v "$PWD:/workspace" \
-w /workspace \
--network host \
ghcr.io/anthropics/claude-code:latest \
claude --dangerously-skip-permissions
Ha az ügynöknek felhőhitelesítő adatokra van szüksége, különálló, szűk jogosultságú kulcsokat használj, ne a saját fő kulcsaidat (6. szabály).
Hogyan állíts be felhőköltség-riasztásokat kill switch-csel az AWS-ben, a GCP-ben és a Yandex Cloudban (5. szabály)
Főbb pontok
A költségkeret-riasztás megfigyelt vagy előre jelzett költésről értesít, és késve is érkezhet. Egy válaszfüggvény megakadályozhat új ügynökműveleteket, vagy leállíthat meghatározott erőforrásokat; ez két külön művelet. Az IAM-kulcs letiltása nem állítja le a már futó erőforrások díjazását. Az erőforrások leállítását külön határozd meg és teszteld.
Így állítsd be az egyes felhőkben:
AWS Budgets (dokumentáció). Hozz létre havi költségkeretet küszöbértékekkel (50%, 80%, 100%). A 100%-os küszöbnél egy SNS-téma válasz-Lambdát indíthat. Az alábbi példa csak a megnevezett felhasználó IAM-hozzáférési kulcsait tiltja le; erőforrásokat nem állít le, és kemény költési plafont sem biztosít:
import boto3
def lambda_handler(event, context):
iam = boto3.client('iam')
# Deactivate all keys for the 'claude-agent' user
keys = iam.list_access_keys(UserName='claude-agent')['AccessKeyMetadata']
for key in keys:
iam.update_access_key(
UserName='claude-agent',
AccessKeyId=key['AccessKeyId'],
Status='Inactive'
)
return {'statusCode': 200, 'body': 'IAM keys deactivated; existing resources unchanged'}
Körülhatárolt erőforrás-leállítás: egy kifejezetten erre használt sandbox jóváhagyott, EBS-alapú EC2-példányainál a futás előtt rögzítsd a fiókot, a régiókat és a pontos példányazonosítókat. Az EC2-konzolon csak ezeket válaszd ki → Instance state → Stop instance → erősítsd meg, majd ellenőrizd, hogy mindegyik stopped állapotba kerül. A szükséges instance-store adatokat előbb mentsd el; a leállítás törli őket. Ellenőrizd, hogy egy jóváhagyott ütemező vagy skálázó rendszer nem hozza-e létre őket újra. Ez az adott számítási használatot állítja le, nem a fiók összes költségét: a megőrzött tárhelyet és más szolgáltatásokat külön vizsgáld meg. Kövesd a hivatalos EC2-leállítási eljárást.
Az AWS Budgets dokumentációja figyelmeztet, hogy az értesítések késnek az erőforrás-használathoz képest, és a riasztás előtt és után is felmerülhet további költség. A 100%-os küszöbnél indítás ezért nem kényszerít ki pontos pénzügyi plafont.
GCP Budget Alerts. Hozz létre egy Budgetet → Pub/Sub-témát → Cloud Functiont, amely letiltja a Service Accountot. Fontos tipp a dokumentációból: a riasztások csak értesítenek, nem állítanak le semmit, ezért nélkülözhetetlen a Cloud Function.
Yandex Cloud (dokumentáció). Állíts be költségkereteket a Billing → Budgets menüpontban, és erőforrás-kvótákat kemény korlátként. A Cloud Functionson keresztül Telegram-bothoz is csatlakoztathatod az értesítéseket.
OpenAI API. A puha és kemény költési korlát közvetlenül az irányítópulton állítható be—a kemény korlát automatikusan leállítja az API-t, Lambda nem szükséges.
Ahol elérhető, használj ellenőrzött szolgáltatói kemény korlátot, késleltetett költségkeret-riasztásokat, szűk hitelesítő adatokat és tesztelt válaszlépést az ügynök által létrehozható konkrét erőforrásokra. A hitelesítő adatok visszavonása bizonyos új műveleteket blokkol; a folyamatos erőforrás-használathoz a leállítás ellenőrzése szükséges. Sem egy riasztás, sem a kulcsvisszavonó Lambda sikerüzenete nem bizonyítja az összes számlázás leállását.
Miért van szüksége az ügynöknek különálló, szűk jogosultságú sandbox API-kulcsra (6. szabály)
Főbb pontok
Miért kell külön API-kulcs az ügynöknek? Hogy a hiba behatárolható maradjon. Hozz létre egy IAM-felhasználót vagy Service Accountot kizárólag egyetlen ügynök számára, adj neki minimális jogosultságokat (EC2, nem *), és rendelj hozzá egy külön számlázási projektet kemény korláttal. Ha az ügynök feléli a keretet, egy óra alatt a saját $50-ét éli fel, nem a teljes vállalati kasszát.
Minimális AWS-beállítás:
- Hozd létre a
claude-agent-scanIAM-felhasználót - Policy: csak a szükséges műveletek (például
ec2:RunInstancesegy régióban,t3.microméretben, VPC-hez tartozó rugalmas IP nélkül) - Rendeld hozzá egy külön AWS-fiókhoz (Organizations segítségével), amelynek havi költségkerete $100
- Hozz létre hozzáférési kulcsokat, és add oda csak az ügynöknek; ne tedd őket a saját
~/.aws/credentialsfájlodba - A munkamenet után forgasd le a kulcsokat, vagy töröld a felhasználót
Hasonlóan más szolgáltatóknál:
- OpenAI / Anthropic: külön API-kulcs minden ügynökhöz, kemény korlát minden kulcsra az irányítópulton, valamint
agent_idtagek a kérés metaadataiban - Stripe / YooKassa: korlátozott API-kulcs egyetlen művelethez (például csak
charges:read), és lehetőség szerint külön kereskedői fiók - Telegram Bot API: külön bot-token, ne a fő token
Itt is a régi biztonsági elv érvényes: a legkisebb jogosultság—az ügynök pontosan azt kapja, amire a feladatnak szüksége van, egy bájttal sem többet. Ha a feladat „a hálózat vizsgálata”, ne adj neki ec2:* és s3:* jogosultságot; csak ec2:DescribeInstances jogosultságot adj, és kész.
Mikor használj indítás előtti dry runt és iterációs korlátot (7. szabály)
Főbb pontok
Miért mutassa meg az ügynök a tervét indítás előtt, és legfeljebb hány iterációt engedélyezz? A Plan Mode a Claude Code beépített funkciója: az ügynök először leírja, mit szándékozik tenni, te pedig jóváhagyod. Ez egy ingyenes indítás előtti ellenőrzés. A --max-turns N pedig korlátozza az egy munkamenetben végrehajtható lépések számát, így az ügynök nem pöröghet végtelenül. Autonóm módban legfeljebb 10–30 turnt állíts be.
A Plan Mode (/plan) a munkamenet elején kapcsolható be. Az ügynök tervet készít, megmutatja a chatben, megvárja a jóváhagyást, és csak ezután kezd dolgozni. Ingyenes, és megelőzi az „azt hittem, előbb kérdezni fog” esetek 70%-át.
A --max-turns egy indítási kapcsoló. Minden turn egy „ügynök gondolkodik + eszközhívás + eredmény” ciklus. Autonóm feladatokhoz:
- kis módosítás: 5–10 turn
- közepes feladat: 15–30 turn
- nagy autonóm feladat: 50–80 turn
További módszerek:
- Falióra szerinti időkorlát a Linux
timeoutparanccsal:
timeout 1800 claude --dangerously-skip-permissions --max-turns 30 -p "scan task"
# 1800 seconds = 30 minutes. Stop the process gracefully.
- Naplózz minden eszközhívást egy fájlba PostToolUse hookkal, hogy utólag lásd, mi történt
- Cron-felügyelet—5 percenként ellenőrizd, hogy nem fut-e egyszerre 10 Claude-folyamat (ez tipikus jele annak, hogy valami félrement)
Használatra kész, 5 perces ellenőrzőlista autonóm Claude Code indítása előtt
Főbb pontok
Mine kell készen állnia, mielőtt megnyomod az Entert egy autonóm feladathoz? Hét jelölőnégyzet, mindegyik körülbelül egy percet vesz igénybe. Ha akár egy is üres, ne indítsd el.
Ellenőrzőlista a claude --dangerously-skip-permissions indítása előtt:
[ ] 1. Kemény korlát az API-szolgáltatónál (Anthropic Console → Limits → Monthly spend limit)
[ ] 2. Task Budget a kérés payloadjában (Opus 4.7+/Fable/Mythos használata esetén)
[ ] 3. PreToolUse hook az rm -rf, aws s3 rb, terraform destroy blokkolására
[ ] 4. allowedTools engedélylista a settings.json fájlban, vagy munka Docker-konténerben
[ ] 5. Késleltetett felhőköltség-riasztások + tesztelt kulcsvisszavonás és jóváhagyott erőforrás-leállítás
[ ] 6. Sandbox API-kulcsok (külön kulcs az ügynöknek, nem a fő kulcs)
[ ] 7. --max-turns N + timeout NNN seconds + folyamatok cron-felügyelete
Ha mind a hét be van állítva, indítsd el. Ha akár egy is hiányzik, állj meg, és állítsd be. Harminc perc most később $6,000–500,000 összeget takaríthat meg.
Egy példa a háttér megvilágítására: egy vibe coder alapértelmezett postgres-adatbázisjelszóval tett közzé egy online áruházalkalmazást. Néhány napon belül valaki megtalálta, bányászprogramokat telepített, és saját hátsó kapukat helyezett el. A szervert le kellett állítani, a havi számla pedig másvalaki kriptobányászata miatt megnőtt.
Ez a történet az 1. szakasz 3. kategóriájába tartozik (harmadik felek futtatnak dolgokat az infrastruktúrádon), de a logika ugyanaz: a költés szabályozása nem függhet attól, hogy ki kezdeményezte—az ügynököd, az alkalmazottad vagy egy nigériai bányászprogram.
További olvasnivaló:
- Hogyan védd meg a Claude Code-ot a hibáktól—a
--dangerously-skip-permissionskapcsolóról és az engedélyekről más megközelítésből - Vibe coding biztonság—a biztonsági pillér
- Hogyan ne égesd el a Claude Code korlátait egy nap alatt—az előfizetéshez tartozó tokenekről (ne keverd össze ezt a felhőszámlákról szóló útmutatóval)
Források
Ismerd meg az Ailootot.
További részletek
Kérdések és válaszok: 7 Claude Code-szabály az autonóm ügynökök költéseinek korlátozására 2026-ban
Az ügynök IAM-kulcsainak visszavonása leállítja a felhőszámlát?
Nem. Megakadályozza az új hitelesített kéréseket ezekkel a kulcsokkal, de a meglévő erőforrások tovább termelhetnek költséget. Vezess engedélylistát a saját erőforrásokról, állítsd le a jóváhagyott példányokat, ellenőrizd az állapotukat, és külön vizsgáld meg a megőrzött tárhelyet és a többi szolgáltatást.
A példabeli parancs-regex teljes biztonsági határt tud kikényszeríteni?
Nem. Csak az illeszkedő Bash-eszközhívásokat és kiválasztott parancsszövegeket vizsgálja. Teszteld a JSON feldolgozását és a kilépési kódokat, de a tényleges hozzáférési határhoz szűk felhőjogosultságokat és környezeti elkülönítést használj. Egyenértékű műveletek és más eszközök kikerülhetik a szövegszűrőt.