Files
OpenCode 68a9071cf1 feat: reconcile local master with origin (exa/hot-platform hunters, leaks ledger, latest results)
Local branch had diverged from origin/master (sibling commits on the same base). Rewrote local history linearly on top of origin/master, folding in all local content: exa/hot-platform discovery hunters, leaks ledger, nightly sweep orchestrator, updated .gitignore and skill docs, plus the latest hunt output and vault state. Remote-only files (vault keys, channel scripts) were restored rather than dropped, so the resulting tree is a full union of both sides.
2026-08-07 12:53:47 +08:00

1 line
1.3 MiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{"repo": "autohandai/code-cli", "files": {"docs/config-reference_hu.md": {"59468034019715857d19e12cdab687a4f235b56b": {"t": 1785746434.4833264, "n": 88144, "h": "56b4d8145f275097", "c": "# Autohand Konfigurációs referencia\n\nTeljes referencia az összes konfigurációs beállításhoz itt: `~/.autohand/config.json` (vagy `.toml`/`.yaml`/`.yml`).\n\n> **Tipp:** A legtöbb alábbi beállítás interaktívan módosítható a `/settings` paranccsal a fájl manuális szerkesztése helyett.\n\nLokalizált referenciák:\n\n- [English](./config-reference.md)\n- [日本語](./config-reference_ja.md)\n- [简体中文](./config-reference_zh.md)\n- [繁體中文](./config-reference_zh-tw.md)\n- [한국어](./config-reference_ko.md)\n- [Deutsch](./config-reference_de.md)\n- [Español](./config-reference_es.md)\n- [Français](./config-reference_fr.md)\n- [Italiano](./config-reference_it.md)\n- [Polski](./config-reference_pl.md)\n- [Русский](./config-reference_ru.md)\n- [Português (Brasil)](./config-reference_ptBR.md)\n- [Türkçe](./config-reference_tr.md)\n- [Čeština](./config-reference_cs.md)\n- [Magyar](./config-reference_hu.md)\n- [हिन्दी](./config-reference_hi.md)\n- [Bahasa Indonesia](./config-reference_id.md)\n\n## Tartalomjegyzék\n\n- [A konfigurációs fájl helye](#configuration-file-location)\n- [Környezeti változók](#environment-variables)\n- [Csupasz mód](#bare-mode)\n- [Szolgáltatói beállítások](#provider-settings)\n- [Munkaterület beállításai](#workspace-settings)\n- [UI beállítások](#ui-settings)\n- [Ügynökbeállítások](#agent-settings)\n- [Engedélyek beállításai](#permissions-settings)\n- [Javítási mód](#patch-mode)\n- [Hálózati beállítások](#network-settings)\n- [Telemetriai beállítások](#telemetry-settings)\n- [Külső ügynökök](#external-agents)\n- [Skills System](#skills-system)\n- [API beállítások](#api-settings)\n- [Authentication Settings](#authentication-settings)\n- [Közösségi készségek beállításai](#community-skills-settings)\n- [Megosztási beállítások](#share-settings)\n- [Beállítások szinkronizálása](#settings-sync)\n- [Hook beállításai](#hooks-settings)\n- [MCP beállítások](#mcp-settings)\n- [Chrome-bővítmény beállításai](#chrome-extension-settings)\n- [Teljes példa](#complete-example)\n\n---\n\n## Konfigurációs fájl helye\n\nAutohand a következő sorrendben keresi a konfigurációt:\n\n1. `AUTOHAND_CONFIG` környezeti változó (egyéni elérési út)\n2. `~/.autohand/config.toml`\n3. `~/.autohand/config.yaml`\n4. `~/.autohand/config.yml`\n5. `~/.autohand/config.json` (alapértelmezett)\n\nAz alapkönyvtárat is felülírhatja:\n```bash\nexport AUTOHAND_HOME=/custom/path # Changes ~/.autohand to /custom/path\n```\n---\n\n## Környezeti változók\n\n| Változó | Leírás | Példa |\n| --------------------------------------- | ------------------------------------------------- | --------------------------------- |\n| `AUTOHAND_HOME` | Alapkönyvtár az összes Autohand adathoz | `/custom/path` |\n| `AUTOHAND_CONFIG` | Egyéni konfigurációs fájl elérési útja | `/path/to/config.toml` |\n| `AUTOHAND_API_URL` | API-végpont (felülbírálja a konfigurációt) | `https://api.autohand.ai` |\n| `AUTOHAND_AUTH_URL` | Bejelentkezési és fiókszinkronizálási eredet (az `AUTOHAND_API_URL` értékétől független) | `https://autohand.ai` |\n| `AUTOHAND_SECRET` | Vállalat/csapat titkos kulcsa | `sk-xxx` |\n| `AUTOHAND_PERMISSION_CALLBACK_URL` | Az engedély visszahívásának URL-je (kísérleti) | `http://localhost:3000/callback` |\n| `AUTOHAND_PERMISSION_CALLBACK_TIMEOUT` | Az engedély-visszahívás időtúllépése ms-ban | `5000` |\n| `AUTOHAND_NON_INTERACTIVE` | Futtatás nem interaktív módban | `1` |\n| `AUTOHAND_YES` | Minden felszólítás automatikus megerősítése | `1` |\n| `AUTOHAND_NO_BANNER` | Indítási szalaghirdetés letiltása | `1` |\n| `AUTOHAND_STREAM_TOOL_OUTPUT` | Az eszköz kimenetének streamelése valós időben | `1` |\n| `AUTOHAND_DEBUG` | Hibakeresési naplózás engedélyezése | `1` |\n| `AUTOHAND_THINKING_LEVEL` | Érvelési mélységszint beállítása | `normal` |\n| `AUTOHAND_CLIENT_NAME` | Kliens/szerkesztő azonosító (ACP kiterjesztések által beállítva) | `zed` |\n| `AUTOHAND_CLIENT_VERSION` | Kliens verzió (az ACP-bővítmények által beállított) | `0.169.0` |\n| `AUTOHAND_CODE` | Környezetérzékelési jelző (automatikusan beállítva) | `1` |\n| `AUTOHAND_CODE_SIMPLE` | A csupasz mód engedélyezése a `--bare` | átadása nélkül `1` |\n\n### Gondolkodási szint\n\nA `AUTOHAND_THINKING_LEVEL` környezeti változó szabályozza a modell által használt érvelés mélységét:\n\n| Érték | Leírás |\n| ---------- | --------------------------------------------------------------------- |\n| `none` | Közvetlen válaszok látható indoklás nélkül |\n| `normal` | Szabványos érvelési mélység (alapértelmezett) |\n| `extended` | Mély érvelés összetett feladatokhoz, részletesebb gondolkodási folyamatot mutat |\n\nEzt általában az ACP-kliens-bővítmények (például a Zed) állítják be a konfigurációs legördülő menüben.\n```bash\n# Example: Use extended thinking for complex tasks\nAUTOHAND_THINKING_LEVEL=extended autohand --prompt \"refactor this module\"\n```\n---\n\n## Csupasz mód\n\nA csupasz mód a Autohand csak kifejezetten kért kontextus- és futásidejű integrációkkal indul. Engedélyezze a következők egyikével:\n```bash\nautohand --bare\nAUTOHAND_CODE_SIMPLE=1 autohand\n```\nA `--bare` átadásakor a Autohand a `AUTOHAND_CODE_SIMPLE=1` értéket is beállítja a futó folyamathoz.\n\nA csupasz mód letiltja az automatikus indítást és az interaktív integrációkat:\n\n- horgok és horog értesítések\n- LSP indítás\n- plugin szinkronizálás, bővítmény automatikus betöltése és meta-eszköz automatikus betöltése\n- hozzárendelés, telemetria, munkamenet-szinkronizálás, automatikus jelentéskészítés és háttérpingek\n- automatikus memória/munkamenet bootstrap kontextus\n- háttérkérdések, frissítés-ellenőrzések, funkciójelző-lekérések és modell-metaadatok előzetes letöltése\n- kulcstartó és böngésző OAuth-hitelesítési tartalék\n- automatikus `AGENTS.md` és szolgáltatói utasítás keresés\n- minden perjel parancs, beleértve a parancssorba beírt csupasz `/`\n\nA perjel alakú abszolút fájlútvonalakat, például a `/Users/alex/project/file.ts`, továbbra is normál prompt szövegként kezeli a rendszer. A parancs alakú perjel bevitel, például `/help`, `/model` vagy `/mcp`, a `Slash commands are disabled in bare mode.` kódot írja ki, és nem hajtódik végre.\n\nA csupasz módban történő hitelesítés csak explicit. A Autohand először a következőt olvassa: `AUTOHAND_API_KEY`, majd `auth.apiKeyHelper`, ha be van állítva. Nem olvassa be a kulcstartó hitelesítő adatait, és nem indítja el az OAuth/böngésző bejelentkezést. A külső szolgáltatók továbbra is a szolgáltatóspecifikus API-kulcsokat és konfigurációkat használják.\n\nEzek az explicit bemenetek csupasz módban is elérhetők:\n\n| Bemenet | Leírás |\n| ------------------------------ | -------------------------------------------------------------------------- |\n| `--system-prompt <value>` | Cserélje ki a rendszerprompt szövegközi szöveggel vagy elérési út-szerű értékkel |\n| `--system-prompt-file <path>` | Cserélje ki a rendszerpromptot a fájltartalommal |\n| `--append-system-prompt <value>` | Szövegközi szöveg vagy elérési út-szerű érték hozzáfűzése a | rendszerprompthoz\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--add-dir <path...>` | Explicit könyvtárak hozzáadása a munkaterület hatóköréhez |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--settings` | Nyissa meg a beállításokat közvetlenül a CLI jelzőből |\n| `--config <path>` | Használjon explicit Autohand konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n---\n\n## Szolgáltatói beállítások\n\n### `provider`\n\nAktív LLM szolgáltató használható.\n\n| Érték | Leírás |\n| -------------- | ----------------------------- |\n| `\"openrouter\"` | OpenRouter API (alapértelmezett) |\n| `\"ollama\"` | Helyi Ollama példány |\n| `\"llamacpp\"` | Helyi llama.cpp szerver |\n| `\"openai\"` | OpenAI API közvetlenül |\n| `\"mlx\"` | MLX az Apple Siliconon (helyi) |\n| `\"llmgateway\"` | LLM Gateway egyesített API |\n| `\"deepseek\"` | DeepSeek API |\n| `\"zai\"` | Z.ai GLM API |\n| `\"sakana\"` | Sakana.AI Fugu API |\n| `\"bedrock\"` | AWS alapkőzet |\n| `\"custom:<id>\"` | Felhasználó által meghatározott OpenAI-kompatibilis szolgáltató a következőtől: `customProviders` |\n\n### `openrouter`\n\nOpenRouter szolgáltató konfigurációja.\n```json\n{\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-xxx\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\",\n \"contextWindow\": 262144\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | --------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön OpenRouter API kulcsa |\n| `baseUrl` | húr | Nem | `https://openrouter.ai/api/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellazonosító (pl. `your-modelcard-id-here`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand kitölti ezt az OpenRouterből, ha ismert. |\n\n### `zai`\n\nZ.ai szolgáltató konfigurációja.\n```json\n{\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"baseUrl\": \"https://api.z.ai/api/paas/v4\",\n \"model\": \"glm-5.2\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | -------------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön Z.ai API-kulcsa |\n| `baseUrl` | húr | Nem | `https://api.z.ai/api/paas/v4` | API-végpont |\n| `model` | húr | Igen | `glm-5.2` | Modellazonosító, például `glm-5.2`, `glm-5.1` vagy `glm-4.5` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. A Autohand 1M-re következtet a GLM-5.2-nél és 200K-ra a GLM-5.1-nél. |\n\n### `sakana`\n\nSakana.AI szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.sakana.ai/v1`-t használja alap URL-ként.\n```json\n{\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------ | ------------------------------------------------------------------ |\n| `apiKey` | húr | Igen | - | Az Ön Sakana API kulcsa |\n| `baseUrl` | húr | Nem | `https://api.sakana.ai/v1` | API-végpont |\n| `model` | húr | Igen | `fugu` | Modellazonosító, például `fugu` vagy `fugu-ultra` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand 1M-re következtet a Fugu modelleknél. |\n\n### `customProviders`\n\nAz egyéni szolgáltatók lehetővé teszik a felhasználók számára, hogy OpenAI-kompatibilis végpontot hozzanak létre kódmódosítás vagy új csomagolt szolgáltató nélkül. Adja hozzá a szolgáltatót a `customProviders` alatt, majd válassza ki a `provider: \"custom:<id>\"` kóddal. Ugyanez a folyamat elérhető a `/model` **Új szolgáltatóval**. A telepítés során a Autohand a szolgáltató mentése előtt ellenőrzi az alap URL-t, a hitelesítést és a kiválasztott modellt az OpenAI-kompatibilis `/models` végponton keresztül.\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\",\n \"models\": [\n {\n \"id\": \"acme-code-1\",\n \"label\": \"Acme Code 1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n ]\n }\n }\n}\n```\nAzon helyi OpenAI-kompatibilis szervereknél, amelyek nem igényelnek hitelesítést, állítsa a `apiKeyRequired` értékét `false` értékre, és hagyja ki a `apiKey` értéket.\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------------ | ------- | -------- | ------- | ----------- |\n| `id` | húr | Igen | - | Stabil szolgáltatói azonosító. Meg kell egyeznie az objektumkulccsal, és a következőképpen van kiválasztva: `custom:<id>`. |\n| `displayName` | húr | Igen | - | A `/model` és a szolgáltató beállításai között látható név. |\n| `apiFormat` | húr | Igen | - | A következőnek kell lennie: `openai-compatible`. |\n| `baseUrl` | húr | Igen | - | Végpont gyökér, például `https://api.example.com/v1`. Autohand ellenőrzi a `/models` kódot, és felhívja a `/chat/completions` kódot. |\n| `apiKey` | húr | Feltételes | - | Adathordozó token a tárolt végpontokhoz. Kötelező, ha a `apiKeyRequired` igaz. |\n| `apiKeyRequired` | logikai | Nem | `true` | Állítsa be a false értéket a helyi vagy már hitelesített átjárókhoz. |\n| `model` | húr | Igen | - | Aktív modell azonosító. |\n| `contextWindow` | szám | Nem | Auto | Pontos kontextusablak a token-költségvetéshez, állapothoz, telemetriához és szinkronizálási metaadatokhoz. |\n| `reasoningEffort` | húr | Nem | - | Opcionális `none`, `low`, `medium`, `high` vagy `xhigh`. `reasoning_effort` néven küldve egyéni OpenAI-kompatibilis kérésekhez. |\n| `models` | tömb | Nem | - | Opcionális modellválasztó bejegyzések modellenkénti kontextussal és érvelési metaadatokkal. |\n\n### `ollama`\n\nOllama szolgáltató konfigurációja.\n```json\n{\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"port\": 11434,\n \"model\": \"llama3.2\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------- | ------------------------------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:11434` | Ollama szerver URL |\n| `port` | szám | Nem | `11434` | Szerverport (a baseUrl alternatívája) |\n| `model` | húr | Igen | - | Modellnév (pl. `llama3.2`, `codellama`) |\n\n### `llamacpp`\n\nllama.cpp szerver konfigurációja.\n```json\n{\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"default\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | llama.cpp szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | Modellazonosító |\n\n### `openai`\n\nOpenAI API konfiguráció.\n```json\n{\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-xxx\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\nAz OpenAI a Autohand beépített OpenAI bejelentkezési folyamatán keresztül is használhatja ChatGPT-előfizetését:\n```json\n{\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"contextWindow\": 1050000,\n \"model\": \"gpt-5.4\",\n \"chatgptAuth\": {\n \"accessToken\": \"...\",\n \"refreshToken\": \"...\",\n \"accountId\": \"...\"\n }\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | ----------------------- | ---------------------------- | -------------------------------------------------------------------------- |\n| `authMode` | húr | Nem | `api-key` | Hitelesítési mód: `api-key` vagy `chatgpt` |\n| `apiKey` | húr | Igen a `api-key` módhoz | - | OpenAI API kulcs |\n| `baseUrl` | húr | Nem | `https://api.openai.com/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-5.4`, `gpt-5.4-mini`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Állítsa be az elavult helyi feltételezések felülbírálásához. |\n| `chatgptAuth` | tárgy | Igen a `chatgpt` módhoz | - | Tárolt ChatGPT/Codex hitelesítési tokenek és fiókazonosító |\n\n### `mlx`\n\nMLX szolgáltató Apple Silicon Mac gépekhez (helyi következtetés).\n```json\n{\n \"mlx\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | MLX szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | MLX modell azonosító |\n\n### `llmgateway`\n\nLLM Gateway egységes API konfiguráció. Hozzáférést biztosít több LLM-szolgáltatóhoz egyetlen API-n keresztül.\n```json\n{\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"baseUrl\": \"https://api.llmgateway.io/v1\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------------- | ---------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | LLM Gateway API kulcs |\n| `baseUrl` | húr | Nem | `https://api.llmgateway.io/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-4o`, `claude-3-5-sonnet-20241022`) |\n\n**API-kulcs beszerzése:**\nKeresse fel a [llmgateway.io/dashboard](https://llmgateway.io/dashboard) webhelyet fiók létrehozásához és API-kulcsának beszerzéséhez.\n\n**Támogatott modellek:**\nAz LLM Gateway több szolgáltató modelljét támogatja, többek között:\n\n- OpenAI: `gpt-4o`, `gpt-4o-mini`, `gpt-4-turbo`\n`claude-3-5-haiku-20241022`\n- Google: `gemini-1.5-pro`, `gemini-1.5-flash`\n\n### `deepseek`\n\nDeepSeek szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.deepseek.com`-t használja alap URL-ként.\n```json\n{\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"baseUrl\": \"https://api.deepseek.com\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | --------------------------- | --------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | DeepSeek API kulcs |\n| `baseUrl` | húr | Nem | `https://api.deepseek.com` | API-végpont |\n| `model` | húr | Igen | - | Modellnév, például `deepseek-v4-flash` vagy `deepseek-v4-pro` |\n\n### `bedrock`\n\nAWS Bedrock szolgáltató konfigurációja. `converse` az alapértelmezett mód, és az AWS SDK hitelesítési láncot használja. Az OpenAI-kompatibilis módok Bedrock API-kulcsokat és Bedrock OpenAI-kompatibilis végpontokat használnak.\n```json\n{\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------- | ------ | -------- | ------- | ----------- |\n| `model` | húr | Igen | - | Alapkőzetmodell-azonosító, következtetési profilazonosító vagy ARN |\n| `region` | húr | Igen | `AWS_REGION`, majd `AWS_DEFAULT_REGION`, majd `us-east-1` a beállításban | AWS régió |\n| `apiMode` | húr | Nem | `converse` | `converse`, `openai-chat` vagy `openai-responses` |\n| `authMode` | húr | Nem | `aws-credentials` `converse`, `bedrock-api-key` OpenAI-kompatibilis módokhoz | Hitelesítési mód |\n| `profile` | húr | Nem | - | Opcionális AWS-profil a hitelesítő adatok láncos hitelesítéséhez |\n| `endpoint` | húr | Nem | Módból és régióból származtatva | Egyéni/privát Bedrock végpont |\n| `apiKey` | húr | Igen OpenAI-kompatibilis módokhoz | - | Bedrock API kulcs. Ne használjon OpenAI API-kulcsokat. |\n\nFuttassa a `aws configure sso` kódot, vagy állítsa be a `AWS_PROFILE=enterprise-prod autohand` értéket a profilalapú AWS-hitelesítéshez. Az IAM-szerepkört, a tárolót és a példány metaadat-hitelesítő adatait az AWS SDK támogatja. Modell használata előtt engedélyezze a modellelérést az AWS-konzolon.\n\n---\n\n## Munkaterület beállításai\n```json\n{\n \"workspace\": {\n \"defaultRoot\": \"/path/to/projects\",\n \"allowDangerousOps\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------------------ | -------------------------------------------------- |\n| `defaultRoot` | húr | Aktuális címtár | Alapértelmezett munkaterület, ha nincs megadva |\n| `allowDangerousOps` | logikai | `false` | Pusztító műveletek engedélyezése megerősítés nélkül |\n\n### Munkahelyi biztonság\n\nAutohand automatikusan blokkolja a működést a veszélyes könyvtárakban, hogy megelőzze a véletlen károsodást:\n\n- **Fájlrendszer gyökerei** (`/`, `C:\\`, `D:\\` stb.)\n- **Házikönyvtárak** (`~`, `/Users/<user>`, `/home/<user>`, `C:\\Users\\<user>`)\n- **Rendszerkönyvtárak** (`/etc`, `/var`, `/System`, `C:\\Windows` stb.)\n- **WSL Windows-csatlakozások** (`/mnt/c`, `/mnt/c/Users/<user>`)\n\nEzt az ellenőrzést nem lehet megkerülni. Ha egy veszélyes könyvtárban próbálja meg futtatni a autohand alkalmazást, hibaüzenetet fog látni, és meg kell adnia egy biztonságos projektkönyvtárat.\n```bash\n# This will be blocked\ncd ~ && autohand\n# Error: Unsafe Workspace Directory\n\n# This works\ncd ~/projects/my-app && autohand\n```\nA részletekért lásd a [Workspace Safety](./workspace-safety.md) részt.\n\n---\n\n## UI beállítások\n```json\n{\n \"ui\": {\n \"theme\": \"dark\",\n \"customThemes\": {\n \"company\": {\n \"colors\": {\n \"accent\": \"#7c3aed\",\n \"success\": \"#22c55e\"\n }\n }\n },\n \"autoConfirm\": false,\n \"readFileCharLimit\": 300,\n \"silentToolOutput\": false,\n \"activityVerbs\": [\"Compiling\", \"Parsing\", \"Reviewing\"],\n \"activityVerbsEnabled\": true,\n \"activitySymbol\": \"✳\",\n \"statusLine\": {\n \"showProviderModel\": true,\n \"showContext\": true,\n \"showCommandHint\": true,\n \"showPullRequest\": true,\n \"showSessionLines\": false,\n \"showQueue\": true,\n \"showActiveStatus\": true,\n \"showActiveMetrics\": true,\n \"showCancelHint\": true\n },\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ----------------------------- | ------ | ------- | ---------------------------------------------------------------------------------------------- |\n| `theme` | húr | `\"dark\"` | Színes téma a terminál kimenetéhez. A beépítettek a következők: `dark`, `light`, `dracula`, `sandy`, `tui`, `github-dark`, `cappadocia`, CODE és ___8__ `australia`. A régi `turkey` és `brazil` értékek továbbra is betöltődnek álnévként. |\n| `customThemes` | tárgy | `{}` | Soron belüli egyéni témadefiníciók a téma nevével. A használatához állítsa be a `theme` kulcsot ugyanarra a kulcsra. |\n| `autoConfirm` | logikai | `false` | A biztonságos működés érdekében hagyja ki a megerősítő felszólításokat |\n| `readFileCharLimit` | szám | `300` | Maximum megjeleníthető karakter az olvasási/kereső eszköz kimenetéből (a teljes tartalom továbbra is elküldésre kerül a modellnek) |\n| `silentToolOutput` | logikai | `false` | A szerszám kimeneti blokkjainak elrejtése a terminálban, miközben továbbra is megőrzi a modell/munkamenet szerszámeredményeit |\n| `activityVerbs` | karakterlánc vagy karakterlánc[] | beépített medence | Egyéni tevékenység ige vagy igekészlet a munkajelzőhöz, `Verb...` formátumban |\n| `activityVerbsEnabled` | logikai | `true` | Forgó tevékenység igék megjelenítése, például `Compiling...`, miközben az ügynök dolgozik |\n| `activitySymbol` | húr | `\"✳\"` | A tevékenységi ige előtt látható szimbólum a tevékenységmutató kimenetében |\n| `statusLine.showProviderModel` | logikai | `true` | Jelenítse meg az aktív szolgáltatót és modellt a szerző állapotsorában |\n| `statusLine.showContext` | logikai | `true` | Jelenítse meg a kontextus százalékos arányát a szerző állapotsorában |\n| `statusLine.showCommandHint` | logikai | `true` | Parancs, említés, készség és terminálbejegyzési tippek megjelenítése a szerző állapotsorában |\n| `statusLine.showPullRequest` | logikai | `true` | Mutassa meg a kapcsolódó lekérési kérés számát, vagy `PR #123`, ha nincs PR társítva |\n| `statusLine.showSessionLines` | logikai | `false` | Az aktuális munkamenet során hozzáadott és eltávolított sorok megjelenítése |\n| `statusLine.showQueue` | logikai | `true` | A sorba állított kérések számának megjelenítése az állapotsorban |\n| `statusLine.showActiveStatus` | logikai | `true` | Az aktív forduló állapotszövege megjelenítése, miközben az ügynök dolgozik |\n| `statusLine.showActiveMetrics` | logikai | `true` | Az eltelt idő és a token mérőszámainak megjelenítése, amíg az ügynök dolgozik |\n| `statusLine.showCancelHint` | logikai | `true` | Az Esc megszakítási tipp megjelenítése, miközben az ügynök dolgozik |\n| `completionReportEnabled` | logikai | `true` | Kérje meg a modellt, hogy a végrehajtott műveleti körök után tartalmazzon egy tömör befejezési jelentést |\n| `showCompletionNotification` | logikai | `true` | Rendszerértesítés megjelenítése a feladat befejezésekor |\n| `showThinking` | logikai | `true` | Az LLM érvelésének/gondolati folyamatának megjelenítése |\n| `terminalBell` | logikai | `true` | Csengessen terminálcsengőt, amikor a feladat befejeződött (jelvényt mutat a terminálfülön/dokkon) |\n| `checkForUpdates` | logikai | `true` | CLI frissítések keresése indításkor |\n| `updateCheckInterval` | szám | `24` | Órák a frissítési ellenőrzések között (a gyorsítótárazott eredményt az intervallumon belül használja) |\n\nAz egyéni témák bármely szemantikai színtokent felülírhatnak. A hiányzó tokenek a sötét témából származnak:\n```json\n{\n \"ui\": {\n \"theme\": \"company\",\n \"customThemes\": {\n \"company\": {\n \"vars\": {\n \"brand\": \"#7c3aed\",\n \"brandSoft\": \"#a78bfa\"\n },\n \"colors\": {\n \"accent\": \"brand\",\n \"borderAccent\": \"brandSoft\",\n \"mdHeading\": \"brand\"\n }\n }\n }\n }\n}\n```\nMegjegyzés: A `readFileCharLimit` és `silentToolOutput` csak a terminál megjelenítését érinti. A teljes tartalom továbbra is elküldésre kerül a modellnek, és eszközüzenetekben tárolódik.\n\nA néma eszközkimenetet a fájl szerkesztése nélkül is átkapcsolhatja:\n```bash\nautohand config set silent_tool_output true\nautohand config set silent_tool_output false\n```\nA forgó tevékenység igék között válthat a fájl szerkesztése nélkül:\n```bash\nautohand config set verbs activity true\nautohand config set verbs activity false\n```\nSzabja testre az igéket a konfigurációs fájlban, ha rögzített állapotcímkét vagy kis projektspecifikus elforgatást szeretne:\n```json\n{\n \"ui\": {\n \"activityVerbs\": \"Compiling\"\n }\n}\n```\n\n```json\n{\n \"ui\": {\n \"activityVerbs\": [\"Indexing\", \"Reviewing\", \"Testing\"],\n \"activitySymbol\": \">\"\n }\n}\n```\nA `activityVerbs` egyetlen karakterláncot vagy nem üres karakterlánc-tömböt fogad el. Ha a `activityVerbsEnabled` értéke `false`, a Autohand visszaesik a `Working...` értékre, ahelyett, hogy az egyéni vagy beépített igék között forogna.\n\nA fájl szerkesztése nélkül válthat a befejezési jelentések között, beleértve a strukturált `SITREP` promptot is:\n```bash\nautohand config set sitrep true\nautohand config set sitrep false\n```\n### Terminal Bell\n\nHa a `terminalBell` engedélyezve van (alapértelmezett), a Autohand megszólal a terminál csengőjén (`\\x07`), amikor egy feladat befejeződik. Ez kiváltja:\n\n- **Jelvény a terminál lapon** - Vizuális jelzőt mutat, hogy a munka elkészült\n- **Dokk ikon ugrál** - Felhívja a figyelmet, ha a terminál a háttérben van (macOS)\n- **Hang** - Ha a terminál hangjai engedélyezve vannak a terminál beállításaiban\n\nTerminálspecifikus beállítások:\n\n- **macOS terminál**: Beállítások > Profilok > Speciális > Bell (vizuális/hallható)\n- **iTerm2**: Beállítások > Profilok > Terminál > Értesítések\n- **VS Code Terminal**: Beállítások > Terminál > Integrált: Bell engedélyezése\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"terminalBell\": false\n }\n}\n```\n### Ink Renderer\n\nA Autohand alapértelmezés szerint az Ink 7 + React 19 renderert használja az interaktív terminálokhoz. A régi `ui.useInkRenderer` konfigurációs mezőt figyelmen kívül hagyja, így a régi konfigurációs fájlok nem kényszeríthetik a sima terminálszerkesztőt. A tinta a következőket nyújtja:\n\n- **Recgésmentes kimenet**: Minden UI-frissítés kötegelt React-egyeztetésen keresztül történik\n- **Munkasor funkció**: Írja be az utasításokat, amíg az ügynök dolgozik\n- **Jobb bemenetkezelés**: Nincsenek ütközések a readline-kezelők között\n- **Összeállítható felhasználói felület**: A jövőbeni fejlett felhasználói felületi funkciók alapja\n\nVészhelyzeti tartalék a terminál kompatibilitás érdekében:\n```bash\nAUTOHAND_LEGACY_UI=1 autohand\n```\nMegjegyzés: Ez a funkció kísérleti jellegű, és lehetnek szélső esetek. Az alapértelmezett ora-alapú felhasználói felület stabil és teljesen működőképes marad.\n\n### Frissítési ellenőrzés\n\nHa a `checkForUpdates` engedélyezve van (alapértelmezett), a Autohand indításkor ellenőrzi az új kiadásokat:\n```\n> Autohand v0.6.8 (abc1234) ✓ Up to date\n```\nHa elérhető frissítés:\n```\n> Autohand v0.6.7 (abc1234) ⬆ Update available: v0.6.8\n ↳ Run: curl -fsSL https://autohand.ai/install.sh | sh\n```\nHogyan működik:\n\n- Lekéri a GitHub API legújabb kiadását\n- A gyorsítótárak eredménye `~/.autohand/version-check.json`\n- Csak egyszer ellenőrzi `updateCheckInterval` óránként (alapértelmezett: 24)\n- Nem blokkoló: az indítás akkor is folytatódik, ha az ellenőrzés sikertelen\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"checkForUpdates\": false\n }\n}\n```\nVagy környezeti változón keresztül:\n```bash\nexport AUTOHAND_SKIP_UPDATE_CHECK=1\n```\n---\n\n## Ügynök beállításai\n\nAz ügynök viselkedésének és iterációs korlátainak szabályozása.\n```json\n{\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"autoMemory\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------- | ------------------------------------------------------------------------------ |\n| `maxIterations` | szám | `100` | Maximális szerszámiterációk felhasználói kérésenként a leállítás előtt |\n| `enableRequestQueue` | logikai | `true` | Lehetővé teszi a felhasználók számára, hogy kéréseket írjanak be és sorba állítsanak, miközben az ügynök dolgozik |\n| `toolSelectionCache` | logikai | `true` | Gyorsítótárazza a körönkénti szerszámséma helyi kiválasztását az egyenértékű szerszámkiválasztási bemenethez |\n| `autoMemory` | logikai | `true` | Tartós felhasználói-/projektmemóriák kinyerése és mentése a befejezett interaktív fordulók után, beleértve a hibákból és megszakításokból származó, bizonyítékokkal alátámasztott tanulságokat |\n| `idleLogoutEnabled` | logikai | `true` | Jelentkezzen ki a hitelesített interaktív munkamenetekből az üresjárati időtúllépés után |\n| `idleTimeoutMs` | szám | `3600000` | Az inaktivitás ezredmásodpercei a hitelesített munkamenet kijelentkeztetése előtt (60 perc) |\n| `debug` | logikai | `false` | Részletes hibakeresési kimenet engedélyezése (naplózza az ügynök belső állapotát az stderr-be) |\n\n## Egyidejű munkamenetek észlelése\n\n```json\n{\n \"sessions\": {\n \"awareness\": \"warn\"\n }\n}\n```\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --- | --- | --- | --- |\n| `awareness` | karakterlánc | `\"warn\"` | A `passive` megjeleníti a többi munkamenetet, a `warn` a kockázatos Git- és fájlütközéseket is jelzi, a `coordinate` pedig megerősítést kér egy másik élő munkamenet által lefoglalt útvonal írása előtt |\n\n### Eszközséma kiválasztása\n\nA Autohand nem küld el minden teljes eszközsémát minden LLM-kérelemnél. A rendszerprompt tartalmaz egy kompakt eszközképesség-katalógust, és minden kérés csak egy kis konkrét sémát tesz közzé, amely a következők közül választható ki:\n\n- Az alapvető felderítési eszközök, például `tool_search`, `read_file`, `fff_find` és `fff_grep`\n- Szándékhoz illő eszközök szerkesztési, ellenőrzési, git, böngésző, web, függőségi vagy projektkövetési munkákhoz\n- A legutóbbi `tool_search` hívások során kért vagy kifejezetten név szerint megemlített eszközök\n\nEzzel elkerülhető a nagy előzetes kontextusköltség, ha az összes eszközséma elküldése a felhasználói szándék ismertsége előtt felmerül. `toolSelectionCache` csak a helyi választó gyorsítótárát vezérli az egyenértékű fordulatokhoz; nem hajt végre felhasználói előtti LLM-bemelegítést, és nem kényszerít ki nagy gyorsítótárazott prompt előtagot.\n\nA helyi választó gyorsítótárának letiltása:\n```json\n{\n \"agent\": {\n \"toolSelectionCache\": false\n }\n}\n```\nA hitelesített, régóta működő ügynöki munkamenetek életben tartásához, amíg munkára várnak:\n```json\n{\n \"agent\": {\n \"idleLogoutEnabled\": false\n }\n}\n```\nEgyetlen folyamathoz használja a `autohand --no-idle-logout` kódot, vagy állítsa be a `AUTOHAND_NO_IDLE_LOGOUT=1` értéket.\n\nAz inaktivitási idő módosításához állítsa az `idleTimeoutMs` értékét pozitív, ezredmásodpercben megadott időtartamra. Az alapértelmezett érték `3600000` (60 perc); az érvénytelen értékek az alapértelmezett értéket használják.\n\n### Hibakeresési mód\n\nEngedélyezze a hibakeresési módot az ügynök belső állapotának részletes naplózásához (reakcióhurok iterációi, prompt felépítés, munkamenet részletei). A kimenet az stderr-hez megy, hogy elkerülje a normál kimenet zavarását.\n\nHáromféleképpen engedélyezheti a hibakeresési módot (elsőbbségi sorrendben):\n\n1. **CLI jelző**: `autohand -d` vagy `autohand --debug`\n2. **Környezeti változó**: `AUTOHAND_DEBUG=1`\n3. **Konfigurációs fájl**: Állítsa be: `agent.debug: true`\n\n### Kérési sor\n\nHa a `enableRequestQueue` engedélyezve van, folytathatja az üzenetek beírását, miközben az ügynök feldolgoz egy korábbi kérést. A bevitel a sorba kerül, és automatikusan feldolgozásra kerül, amikor az aktuális feladat befejeződik.\n\n- Írja be az üzenetet, és nyomja meg az Enter billentyűt, hogy hozzáadja a sorhoz\n- Az állapotsor azt mutatja, hogy hány kérés van sorban\n- A kérések feldolgozása FIFO (first-in, first-out) sorrendben történik\n- A sor maximális mérete 10 kérés\n\n---\n\n## Engedélyek beállításai\n\nA szerszámengedélyek finom vezérlése.\n```json\n{\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\n \"run_command:npm *\",\n \"run_command:bun *\",\n \"run_command:git status\"\n ],\n \"blacklist\": [\"run_command:rm -rf *\", \"run_command:sudo *\"],\n \"rules\": [\n {\n \"tool\": \"run_command\",\n \"pattern\": \"npm test\",\n \"action\": \"allow\"\n }\n ],\n \"rememberSession\": true\n }\n}\n```\n### `mode`\n\n| Érték | Leírás |\n| ----------------- | ------------------------------------------------------ |\n| `\"interactive\"` | Jóváhagyás kérése veszélyes műveletekhez (alapértelmezett) |\n| `\"unrestricted\"` | Nincsenek felszólítások, engedélyezzen mindent |\n| `\"restricted\"` | Minden veszélyes művelet megtagadása |\n\n### `whitelist`\n\nSzerszámminták sora, amelyek soha nem igényelnek jóváhagyást.\n```json\n[\"run_command:npm *\", \"run_command:bun test\"]\n```\n### `blacklist`\n\nMindig blokkolt szerszámminták tömbje.\n```json\n[\"run_command:rm -rf /\", \"run_command:sudo *\"]\n```\n### `rules`\n\nFinom szemcsés engedélyezési szabályok.\n\n| Mező | Típus | Leírás |\n| --------- | --------- | -------------------------------------------- | ---------- | -------------- |\n| `tool` | húr | A megfelelő eszköznév |\n| `pattern` | húr | Opcionális minta az érvekhez való illeszkedéshez |\n| `action` | `\"allow\"` | `\"deny\"` | `\"prompt\"` | Intézkedések |\n\n### `rememberSession`\n\n| Típus | Alapértelmezett | Leírás |\n| ------- | ------- | -------------------------------------------- |\n| logikai | `true` | Emlékezzen az ülés jóváhagyási határozataira |\n\n### Helyi projektengedélyek\n\nMinden projektnek saját engedélybeállításai lehetnek, amelyek felülírják a globális konfigurációt. Ezeket a projekt gyökérkönyvtárában a `.autohand/settings.local.json` tartalmazza.\n\nAmikor jóváhagy egy fájlműveletet (szerkesztés, írás, törlés), a rendszer automatikusan ebbe a fájlba menti, így nem kéri újra ugyanazt a műveletet ebben a projektben.\n```json\n{\n \"version\": 1,\n \"permissions\": {\n \"whitelist\": [\n \"apply_patch:src/components/Button.tsx\",\n \"write_file:package.json\",\n \"run_command:bun test\"\n ]\n }\n}\n```\n**Hogyan működik:**\n\n- Amikor jóváhagy egy műveletet, a rendszer a következőbe menti: `.autohand/settings.local.json`\n- Legközelebb ugyanazt a műveletet a rendszer automatikusan jóváhagyja\n- A helyi projektbeállítások egyesülnek a globális beállításokkal (a helyi beállítások elsőbbséget élveznek)\n- Adja hozzá a `.autohand/settings.local.json` kódot a `.gitignore`-hoz, hogy a személyes beállítások privátak maradjanak\n\n**Mintaformátum:**\n\n- `tool_name:path` - Fájlműveletekhez (pl. `apply_patch:src/file.ts`)\n- `tool_name:command args` - Parancsokhoz (pl. `run_command:npm test`)\n\n### Megtekintési engedélyek\n\nJelenlegi engedélybeállításait kétféleképpen tekintheti meg:\n\n**CLI jelző (nem interaktív):**\n```bash\nautohand --permissions\n```\nEz a következőket jeleníti meg:\n\n- Jelenlegi engedélyezési mód (interaktív, korlátlan, korlátozott)\n- Munkaterület és konfigurációs fájlok elérési útjai\n- Minden jóváhagyott minta (engedélyezőlista)\n- Minden elutasított minta (feketelista)\n- Összefoglaló statisztika\n\n**Interaktív parancs:**\n```\n/permissions\n```\nInteraktív módban a `/permissions` parancs ugyanazokat az információkat és lehetőségeket biztosít a következőkhöz:\n\n- Elemek eltávolítása az engedélyezési listáról\n- Távolítsa el az elemeket a feketelistáról\n- Törölje az összes mentett engedélyt\n\n---\n\n## Patch mód\n\nA Patch mód lehetővé teszi megosztható, git-kompatibilis javítás létrehozását a munkaterület-fájlok módosítása nélkül. Ez hasznos:\n\n- A kód felülvizsgálata a változtatások alkalmazása előtt\n- Az AI által generált változások megosztása a csapat tagjaival\n- Reprodukálható változáskészletek készítése\n- CI/CD folyamatok, amelyeknek alkalmazása nélkül kell rögzíteni a változásokat\n\n### Használat\n```bash\n# Generate patch to stdout\nautohand --prompt \"add user authentication\" --patch\n\n# Save to file\nautohand --prompt \"add user authentication\" --patch --output auth.patch\n\n# Pipe to file (alternative)\nautohand --prompt \"refactor api handlers\" --patch > refactor.patch\n```\n### Viselkedés\n\nHa `--patch` meg van adva:\n\n- **Automatikus megerősítés**: Minden visszaigazolás automatikusan elfogadásra kerül (`--yes`)\n- **Nincsenek felszólítások**: Nem jelennek meg jóváhagyási értesítések (`--unrestricted` vélelmezett)\n- **Csak előnézet**: A változtatásokat rögzíti, de NEM írja lemezre\n- **Kikényszerített biztonság**: A feketelistán szereplő műveletek (`.env`, SSH-kulcsok, veszélyes parancsok) továbbra is blokkolva vannak\n\n### Javítások alkalmazása\n\nA címzettek szabványos git parancsokkal alkalmazhatják a javítást:\n```bash\n# Check what would be applied (dry-run)\ngit apply --check changes.patch\n\n# Apply the patch\ngit apply changes.patch\n\n# Apply with 3-way merge (handles conflicts better)\ngit apply -3 changes.patch\n\n# Apply and stage changes\ngit apply --index changes.patch\n\n# Reverse a patch\ngit apply -R changes.patch\n```\n### Patch formátum\n\nA generált javítás a git egységes diff formátumát követi:\n```diff\ndiff --git a/src/auth.ts b/src/auth.ts\nnew file mode 100644\n--- /dev/null\n+++ b/src/auth.ts\n@@ -0,0 +1,15 @@\n+export function authenticate(user: string, password: string) {\n+ // Implementation here\n+}\n\ndiff --git a/src/index.ts b/src/index.ts\n--- a/src/index.ts\n+++ b/src/index.ts\n@@ -1,5 +1,7 @@\n import express from 'express';\n+import { authenticate } from './auth';\n\n const app = express();\n+app.use(authenticate);\n```\n### Kilépési kódok\n\n| Kód | Jelentése |\n| ---- | ---------------------------------------------------- |\n| `0` | Siker, patch generált |\n| `1` | Hiba (hiányzó `--prompt`, engedély megtagadva stb.) |\n\n### Kombinálva más zászlókkal\n```bash\n# Use specific model\nautohand --prompt \"optimize queries\" --patch --model gpt-4o\n\n# Specify workspace\nautohand --prompt \"add tests\" --patch --path ./my-project\n\n# Use custom config\nautohand --prompt \"refactor\" --patch --config ~/.autohand/work.json\n```\n### Csapatmunkafolyamat-példa\n```bash\n# Developer A: Generate patch for a feature\nautohand --prompt \"implement user dashboard with charts\" --patch --output dashboard.patch\n\n# Share via git (create PR with just the patch file)\ngit checkout -b patch/dashboard\ngit add dashboard.patch\ngit commit -m \"Add dashboard feature patch\"\ngit push\n\n# Developer B: Review and apply\ngit fetch origin patch/dashboard\ngit apply dashboard.patch\n# Run tests, review code, then commit\ngit add -A && git commit -m \"feat: add user dashboard with charts\"\n```\n---\n\n## Hálózati beállítások\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Max | Leírás |\n| ------------ | ------ | ------- | --- | --------------------------------------- |\n| `maxRetries` | szám | `3` | `5` | Próbálkozzon újra sikertelen API-kérésekkel |\n| `timeout` | szám | `30000` | - | Kérelem időtúllépése ezredmásodpercben |\n| `retryDelay` | szám | `1000` | - | Az újrapróbálkozások közötti késleltetés ezredmásodpercben |\n\n---\n\n## Telemetriai beállítások\n\nA telemetria **alapértelmezés szerint le van tiltva** (feliratkozás). Engedélyezze a Autohand fejlesztéséhez.\n```json\n{\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true,\n \"companySecret\": \"\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | -------------------------- | ---------------------------------------------- |\n| `enabled` | logikai | `false` | Telemetria engedélyezése/letiltása (feliratkozás) |\n| `apiBaseUrl` | húr | `https://api.autohand.ai` | Telemetria API végpont |\n| `batchSize` | szám | `20` | Az automatikus kiürítés előtt kötegelt események száma |\n| `flushIntervalMs` | szám | `60000` | Öblítési időköz ezredmásodpercben (1 perc) |\n| `maxQueueSize` | szám | `500` | Maximális sorméret a régi események eldobása előtt |\n| `maxRetries` | szám | `3` | Próbálkozzon újra sikertelen telemetriai kérések esetén |\n| `enableSessionSync` | logikai | `true` | Szinkronizálja a munkameneteket a felhővel a csapatfunkciókhoz, ha a telemetria engedélyezve van |\n| `companySecret` | húr | `\"\"` | Vállalati titok API-hitelesítéshez |\n\nA szolgáltató/modell telemetria tartalmazza az aktív szolgáltatói azonosítót, a modellazonosítót és az elérhető nem titkos metaadatokat, például az egyéni szolgáltató megjelenítési nevét, API-formátumát, érvelési erőfeszítéseit és kontextusablakát. Az API-kulcsok és a vivőjogkivonatok soha nem szerepelnek benne.\n\n---\n\n## Külső ügynökök\n\nEgyéni ügynökdefiníciók betöltése külső könyvtárakból.\n```json\n{\n \"externalAgents\": {\n \"enabled\": true,\n \"paths\": [\"~/.autohand/agents\", \"/team/shared/agents\"]\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | -------- | ------- | -------------------------------- |\n| `enabled` | logikai | `false` | Külső ügynök betöltésének engedélyezése |\n| `paths` | string[] | `[]` | Könyvtárak az ügynökök betöltéséhez |\n\n---\n\n## Skills System\n\nA készségek olyan utasításcsomagok, amelyek speciális utasításokat adnak az AI-ügynöknek. Úgy működnek, mint az igény szerinti `AGENTS.md` fájlok, amelyek bizonyos feladatokhoz aktiválhatók.\n\n### Készségek felfedező helyek\n\nA készségek több helyről fedezhetők fel, és a későbbi források élveznek elsőbbséget:\n\n| Helyszín | Forrásazonosító | Leírás |\n| ----------------------------------------- | ------------------- | ------------------------------------------ |\n| `~/.codex/skills/**/SKILL.md` | `codex-user` | Felhasználói szintű Codex készségek (rekurzív) |\n| `~/.claude/skills/*/SKILL.md` | `claude-user` | Felhasználói szintű Claude-készségek (egy szint) |\n| `~/.autohand/skills/**/SKILL.md` | `autohand-user` | Felhasználói szintű Autohand készségek (rekurzív) |\n| `<project>/.claude/skills/*/SKILL.md` | `claude-project` | Projektszintű Claude-készségek (egy szint) |\n| `<project>/.autohand/skills/**/SKILL.md` | `autohand-project` | Projekt szintű Autohand készségek (rekurzív) |\n\n### Automatikus másolási viselkedés\n\nA Codex vagy Claude helyekről felfedezett készségek automatikusan átmásolódnak a megfelelő Autohand helyre:\n\n- `~/.codex/skills/` és `~/.claude/skills/` → `~/.autohand/skills/`\n- `<project>/.claude/skills/` → `<project>/.autohand/skills/`\n\nA Autohand helyeken meglévő készségek soha nem íródnak felül.\n\n### SKILL.md formátum\n\nA YAML frontmatter-t használó készségek, majd a leértékelési tartalom:\n```markdown\n---\nname: my-skill-name\ndescription: Brief description of the skill\nlicense: MIT\ncompatibility: Works with Node.js 18+\nallowed-tools: read_file write_file run_command\nmetadata:\n author: your-name\n version: \"1.0.0\"\n---\n\n# My Skill\n\nDetailed instructions for the AI agent...\n```\n| Mező | Kötelező | Max hossz | Leírás |\n| ---------------- | -------- | ---------- | ------------------------------------------- |\n| `name` | Igen | 64 karakter | Kisbetűs alfanumerikus, csak kötőjelekkel |\n| `description` | Igen | 1024 karakter | A készség rövid leírása |\n| `license` | Nem | - | Licencazonosító (pl. MIT, Apache-2.0) |\n| `compatibility` | Nem | 500 karakter | Kompatibilitási megjegyzések |\n| `allowed-tools` | Nem | - | Az engedélyezett eszközök szóközzel tagolt listája |\n| `metadata` | Nem | - | További kulcs-érték metaadatok |\n\n### Beviteli előtagok\n\nA Autohand támogatja a speciális előtagokat a beviteli promptban:\n\n| Előtag | Leírás | Példa |\n| ------ | ------------------------------- | ---------------------------------- |\n| `/` | Slash parancsok | `/help`, `/model`, `/quit`, `/exit` |\n| `@` | Fájl említések (automatikus kiegészítés) | `@src/index.ts` |\n| `$` | Szakértelem említése (automatikus kiegészítés) | `$frontend-design`, `$code-review` |\n| `!` | A terminálparancsok közvetlen futtatása | `! git status`, `! ls -la` |\n\n**Képességmegemlítések (`$`):**\n\n- Írja be a következőt: `$`, majd karaktereket az automatikus kiegészítéssel elérhető készségek megtekintéséhez\n- A Tab elfogadja a felső javaslatot (pl. `$frontend-design`)\n- A készségek a következőből fedezhetők fel: `~/.autohand/skills/` és `<project>/.autohand/skills/`\n- Az aktivált készségek a prompthoz vannak csatolva, mint speciális utasítások az aktuális munkamenethez\n- Az előnézeti panel a készség metaadatait mutatja (név, leírás, aktiválási állapot)\n\n**Shell-parancsok (`!`):**\n\n- A parancsok az aktuális munkakönyvtárban futnak\n- A kimenet közvetlenül a terminálon jelenik meg\n- Nem megy az LLM-be\n- 30 másodperces időtúllépés\n- A végrehajtás után visszatér a prompthoz\n\n### Slash parancsok\n\n#### `/skills` - Csomagkezelő\n\n| Parancs | Leírás |\n| -------------------------------- | ------------------------------------------- |\n| `/skills` | Sorolja fel az összes elérhető készséget |\n| `/skills use <name>` | Képesség aktiválása az aktuális munkamenethez |\n| `/skills deactivate <name>` | Készség deaktiválása |\n| `/skills info <name>` | Részletes képzettségi információk megjelenítése |\n| `/skills install` | Tallózás és telepítés a közösségi nyilvántartásból |\n| `/skills install @<slug>` | Telepítsen közösségi készségeket a slug |\n| `/skills search <query>` | Keresés a közösségi készségek nyilvántartásában |\n| `/skills trending` | Felkapott közösségi készségek megjelenítése |\n| `/skills remove <slug>` | Közösségi készség eltávolítása |\n| `/skills new` | Hozzon létre új készségeket interaktívan |\n| `/skills feedback <slug> <1-5>` | Értékeljen egy közösségi képességet |\n\n#### `/learn` - LLM-alapú Skill Advisor\n\n| Parancs | Leírás |\n| ---------------- | ---------------------------------------------------------------- |\n| `/learn` | A projekt elemzése és készségek ajánlása (gyors szkennelés) |\n| `/learn deep` | Mélyszkennelési projekt (forrásfájlokat olvas) a célzottabb eredmények érdekében |\n| `/learn update` | A projekt újraelemzése és az LLM által generált elavult készségek regenerálása |\n\nA `/learn` kétfázisú LLM-folyamatot használ:\n\n1. **1. fázis – Elemzés + Rangsorolás + Ellenőrzés**: Ellenőrzi a projekt szerkezetét, auditálja a telepített készségeket redundanciák/konfliktusok szempontjából, és rangsorolja a közösségi készségeket relevancia szerint (0-100).\n2. **2. fázis – Létrehozás** (feltételes): Ha egyik közösségi képesség sem ér el 60 feletti pontszámot, felajánlja a projektjéhez szabott egyéni képesség létrehozását.\nA generált készségek metaadatokat (`agentskill-source: llm-generated`, `agentskill-project-hash`) tartalmaznak, így a `/learn update` képes észlelni, ha megváltozik a kódbázis, és újra előállíthatja az elavult készségeket.\n\n### Automatikus készséggenerálás (`--auto-skill`)\n\nA `--auto-skill` CLI jelző készségeket generál az interaktív tanácsadói folyamat nélkül:\n```bash\nautohand --auto-skill\n```\nEz:\n\n1. Elemezze a projekt felépítését (package.json, követelmények.txt stb.)\n2. Nyelvek, keretrendszerek és minták észlelése\n3. Generáljon 3 releváns készséget az LLM segítségével\n4. Mentse el a készségeket ide: `<project>/.autohand/skills/`\n\nA célzottabb, interaktívabb élmény érdekében használja inkább a `/learn` kódot egy munkameneten belül.\n\nAz észlelt minták a következők:\n\n- **Nyelvek**: TypeScript, JavaScript, Python, Rust, Go\n- **Frameworks**: React, Next.js, Vue, Express, Flask, Django\n- **Minták**: CLI eszközök, tesztelés, monorepo, Docker, CI/CD\n\n---\n\n## API beállítások\n\nBackend API konfiguráció a csapatfunkciókhoz.\n```json\n{\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\",\n \"companySecret\": \"sk-team-xxx\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------------------------- | ---------------------------------------- |\n| `baseUrl` | húr | `https://api.autohand.ai` | API-végpont |\n| `companySecret` | húr | - | Csapat/vállalati titok a megosztott funkciókhoz |\n\nKörnyezeti változókkal is beállítható:\n\n- `AUTOHAND_API_URL` → `api.baseUrl`\n- `AUTOHAND_SECRET` → `api.companySecret`\n\n---\n\n## Hitelesítési beállítások\n\nHitelesítés és felhasználói munkamenet konfigurálása.\n```json\n{\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\",\n \"avatar\": \"https://example.com/avatar.png\"\n },\n \"expiresAt\": \"2025-12-31T23:59:59Z\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------- | ------ | ------- | --------------------------------------------- |\n| `token` | húr | - | Hitelesítési token API-hozzáféréshez |\n| `user` | tárgy | - | Hitelesített felhasználói adatok |\n| `user.id` | húr | - | Felhasználói azonosító |\n| `user.email` | húr | - | Felhasználó e-mail címe |\n| `user.name` | húr | - | Felhasználó megjelenített név |\n| `user.avatar` | húr | - | Felhasználói avatar URL-je (nem kötelező) |\n| `expiresAt` | húr | - | Token lejárati időbélyegzője (ISO 8601 formátum) |\n\n---\n\n## Közösségi készségek beállításai\n\nKonfiguráció a közösségi készségek felfedezéséhez és kezeléséhez.\n```json\n{\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------------------------- | ------- | ------- | -------------------------------------------------------------- |\n| `enabled` | logikai | `true` | Közösségi készségek funkcióinak engedélyezése |\n| `showSuggestionsOnStartup` | logikai | `true` | Képességi javaslatok megjelenítése indításkor, ha nem állnak rendelkezésre szállítói ismeretek |\n| `autoBackup` | logikai | `true` | A felfedezett szállítói ismeretek automatikus biztonsági mentése API |\n\n---\n\n## Megosztási beállítások\n\nKonfiguráció a munkamenet megosztásához a `/share` paranccsal. A munkamenetek a [autohand.link](https://autohand.link) címen találhatók.\n```json\n{\n \"share\": {\n \"enabled\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ------------------------------------ |\n| `enabled` | logikai | `true` | A `/share` parancs engedélyezése/letiltása |\n\n### YAML formátum\n```yaml\nshare:\n enabled: true\n```\n### Munkamenet-megosztás letiltása\n\nHa biztonsági vagy adatvédelmi okokból ki szeretné kapcsolni a munkamenet-megosztást:\n```json\n{\n \"share\": {\n \"enabled\": false\n }\n}\n```\nHa le van tiltva, a `/share` futtatásakor a következő jelenik meg:\n```\nSession sharing is disabled.\nTo enable, set share.enabled: true in your config file.\n```\n---\n\n## Beállítások szinkronizálása\n\nA Autohand szinkronizálhatja a konfigurációt az eszközök között a bejelentkezett felhasználók számára. A beállításokat a Cloudflare R2 biztonságosan tárolja, és a feltöltés előtt titkosítja.\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"exclude\": [],\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------------- | -------- | ---------------- | --------------------------------------------------- |\n| `enabled` | logikai | `true` (naplózva) | Beállítások szinkronizálásának engedélyezése/letiltása |\n| `interval` | szám | `300000` | Szinkronizálási idő ezredmásodpercben (alapértelmezett: 5 perc) |\n| `exclude` | string[] | `[]` | Globális minták a szinkronizálásból kizárandó |\n| `includeTelemetry` | logikai | `false` | Telemetriai adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n| `includeFeedback` | logikai | `false` | Visszajelzési adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n\n### CLI zászló\n```bash\n# Disable sync for this session\nautohand --sync-settings=false\n\n# Enable sync (default for logged users)\nautohand --sync-settings\n```\n### Mi lesz szinkronizálva\n\nAlapértelmezés szerint ezek az elemek szinkronizálva vannak a bejelentkezett felhasználók számára:\n\n- **Konfiguráció** (`config.json`) - Az API-kulcsok a feltöltés előtt titkosítva vannak\n- **Egyéni ügynökök** (`agents/`)\n- **Közösségi készségek** (`community-skills/`)\n- **Felhasználói akasztók** (`hooks/`)\n- **Memória** (`memory/`)\n- **Projektismeret** (`projects/`)\n- **Munkamenetek előzményei** (`sessions/`)\n- **Megosztott tartalom** (`share/`)\n- **Egyéni készségek** (`skills/`)\n\n### Mi nem szinkronizál (alapértelmezés szerint)\n\n- **Eszközazonosító** (`device-id`) - Eszközönként egyedi\n- **Hibanaplók** (`error.log`) - Csak helyi\n- **Verziógyorsítótár** (`version-*.json`) - Helyi gyorsítótár fájlok\n\n### Beleegyezés alapú szinkronizálás\n\nEzek az elemek kifejezett feliratkozást igényelnek a konfigurációban:\n\n- **Telemetriai adatok** - Állítsa be a `sync.includeTelemetry: true` szinkronizálást\n- **Visszajelzési adatok** - Állítsa be a `sync.includeFeedback: true` szinkronizálását\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"includeTelemetry\": true,\n \"includeFeedback\": true\n }\n}\n```\n### Konfliktusmegoldás\n\nHa ütközések lépnek fel (ugyanaz a fájl több eszközön módosítva), a **felhőverzió nyer**. Ez biztosítja a következetességet az új eszközökön való bejelentkezéskor.\n\n### Biztonság\n\nA `config.json` API-kulcsait és egyéb bizalmas adatait a rendszer a hitelesítési token segítségével titkosítja a feltöltés előtt. Csak az Ön hitelesítő adataival lehet visszafejteni.\n\nA távoli fájlnevek csak relatív POSIX-útvonalként fogadhatók el az engedélyezett szinkronizálási kategóriákon belül. A szinkronizálás elutasítja a könyvtárbejárást, az abszolút vagy Windows-stílusú útvonalakat, az ismétlődő vagy üres szegmenseket, valamint az engedélyezett gyökéren kívülre mutató szimbolikus hivatkozásokkal átirányított célokat.\n\nAz alkalmazás bejelentkezési tokenje az `Authorization` fejlécben csak olyan átviteli URL-ekhez kerül elküldésre, amelyek eredete megegyezik a beállított szinkronizálási API eredetével. A más eredetű, előre aláírt HTTPS URL-ek soha nem kapják meg ezt a tokent; a nem biztonságos vagy hibás más eredetű URL-ek elutasításra kerülnek.\n\n**Mi van titkosítva:**\n\n- `apiKey` nevű mezők\n- `Key`, `Token`, `Secret` végződő mezők\n- A `password` mező\n\n### Hogyan működik\n\n1. **Indításkor**: Ha be van jelentkezve, a szinkronizálási szolgáltatás automatikusan elindul\n2. **5 percenként**: A beállításokat összehasonlítja a felhőalapú tárolással\n3. **A felhő nyer**: A távoli módosítások letöltése először történik meg\n4. **Helyi feltöltések**: Új helyi módosítások kerülnek feltöltésre\n5. **Kilépéskor**: A szinkronizálási szolgáltatás kecsesen leáll\n\n### Fájlok kizárása\n\nKizárhat bizonyos fájlokat vagy mintákat a szinkronizálásból:\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"exclude\": [\"custom-local-config.json\", \"temp/*\"]\n }\n}\n```\n### YAML formátum\n```yaml\nsync:\n enabled: true\n interval: 300000\n exclude: []\n includeTelemetry: false\n includeFeedback: false\n```\n---\n\n## MCP beállítások\n\nÁllítsa be az MCP-kiszolgálókat (Model Context Protocol) a Autohand külső eszközökkel történő bővítésére.\n```json\n{\n \"mcp\": {\n \"enabled\": true,\n \"servers\": [\n {\n \"name\": \"filesystem\",\n \"transport\": \"stdio\",\n \"command\": \"npx\",\n \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/tmp\"],\n \"env\": {},\n \"autoConnect\": true\n },\n {\n \"name\": \"context7\",\n \"transport\": \"http\",\n \"url\": \"https://mcp.context7.com/mcp\",\n \"headers\": {\n \"CONTEXT7_API_KEY\": \"ctx7sk-your-api-key\"\n },\n \"autoConnect\": true\n }\n ]\n }\n}\n```\n### `mcp.enabled`\n\n- **Típus**: `boolean`\n- **Alapértelmezett**: `true`\n- **Leírás**: Az összes MCP-támogatás engedélyezése vagy letiltása. Ha `false`, akkor az indításkor nem csatlakozik szerver, és az MCP-eszközök nem érhetők el.\n\n### `mcp.servers`\n\n- **Típus**: `McpServerConfigEntry[]`\n- **Alapértelmezett**: `[]`\n- **Leírás**: MCP szerver konfigurációk tömbje.\n\n### Szerver beviteli mezői\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | --------------------------------- | -------------- | ------- | -------------------------------------------------------------- |\n| `name` | `string` | Igen | - | Egyedi szerverazonosító |\n| `transport` | `\"stdio\"` \\| `\"sse\"` \\| `\"http\"` | Igen | - | Szállítás típusa |\n| `command` | `string` | Igen (stdio) | - | Parancs a szerverfolyamat elindításához |\n| `args` | `string[]` | Nem | `[]` | Érvek a parancs mellett |\n| `url` | `string` | Igen (sse/http) | - | Szervervégpont URL |\n| `headers` | `Record<string, string>` | Nem | `{}` | Egyéni HTTP-fejlécek http/sse szállításhoz (pl. hitelesítési tokenek) |\n| `env` | `Record<string, string>` | Nem | `{}` | A kiszolgálónak átadott környezeti változók |\n| `autoConnect` | `boolean` | Nem | `true` | Automatikus csatlakozás indításkor |\n\n> A szerverek aszinkron módon csatlakoznak a háttérben az indítás során anélkül, hogy blokkolnák a promptot. A `/mcp` segítségével interaktívan kezelheti a szervereket, vagy a `/mcp add` segítségével böngészhet a közösségi nyilvántartásban, vagy adhat hozzá egyéni szervereket.\n\n> A teljes MCP-dokumentációért lásd: [docs/mcp.md](mcp.md).\n\n---\n\n## Hooks beállítások\n\nKonfiguráció életciklus-horogokhoz, amelyek shell-parancsokat futtatnak az ügynökeseményeken. A részletekért lásd a [Hooks dokumentációt] (./hooks.md).\n```json\n{\n \"hooks\": {\n \"enabled\": true,\n \"hooks\": [\n {\n \"event\": \"pre-tool\",\n \"command\": \"echo \\\"Running tool: $HOOK_TOOL\\\" >> ~/.autohand/hooks.log\",\n \"description\": \"Log all tool executions\",\n \"enabled\": true\n },\n {\n \"event\": \"file-modified\",\n \"command\": \"./scripts/on-file-change.sh\",\n \"description\": \"Custom file change handler\",\n \"filter\": { \"path\": [\"src/**/*.ts\"] }\n },\n {\n \"event\": \"post-response\",\n \"command\": \"curl -X POST https://api.example.com/webhook -d '{\\\"tokens\\\": $HOOK_TOKENS}'\",\n \"description\": \"Track token usage\",\n \"async\": true\n }\n ]\n }\n}\n```\n### `hooks`\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ---------------------------------- |\n| `enabled` | logikai | `true` | Az összes hook engedélyezése/letiltása globálisan |\n| `hooks` | tömb | `[]` | Horogdefiníciók tömbje |\n\n### Hook meghatározása\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | ------- | -------- | ------- | --------------------------------- |\n| `event` | húr | Igen | - | Bekapcsolandó esemény |\n| `command` | húr | Igen | - | Shell parancs végrehajtásához |\n| `description` | húr | Nem | - | A `/hooks` kijelző leírása |\n| `enabled` | logikai | Nem | `true` | Aktív-e a horog |\n| `timeout` | szám | Nem | `5000` | Időtúllépés ezredmásodpercben |\n| `async` | logikai | Nem | `false` | Futtasson blokkolás nélkül |\n| `filter` | tárgy | Nem | - | Szűrés szerszám vagy útvonal szerint |\n\n### Hook események\n\n| Esemény | Amikor kirúgták |\n| ---------------- | -------------------------------------- |\n| `pre-tool` | Mielőtt bármilyen eszköz végrehajtaná |\n| `post-tool` | A szerszám befejezése után |\n| `file-modified` | A fájl létrehozásakor/módosításakor/törlésekor |\n| `pre-prompt` | Mielőtt elküldené az LLM-nek |\n| `post-response` | Miután az LLM válaszol |\n| `session-error` | Hiba esetén |\n\n### Környezeti változók\n\nAmikor a hook fut, ezek a környezeti változók állnak rendelkezésre:\n\n| Változó | Leírás |\n| ----------------- | ---------------------------- |\n| `HOOK_EVENT` | Esemény neve |\n| `HOOK_WORKSPACE` | Munkaterület gyökérútvonala |\n| `HOOK_TOOL` | Szerszámnév (szerszámesemények) |\n| `HOOK_ARGS` | JSON-kódolt eszköz args |\n| `HOOK_SUCCESS` | igaz/hamis (utóeszköz) |\n| `HOOK_PATH` | Fájl elérési útja (fájlmódosított) |\n| `HOOK_TOKENS` | Felhasznált tokenek (válasz után) |\n\n---\n\n## Chrome-bővítmény beállításai\n\nIrányítsd a Autohand Chrome-bővítmény integrációját. Tekintse meg a teljes útmutatót: [Autohand Chrome-ban](./autohand-in-chrome.md).\n```json\n{\n \"chrome\": {\n \"extensionId\": \"your-extension-id\",\n \"enabledByDefault\": false,\n \"browser\": \"auto\",\n \"userDataDir\": \"/path/to/chrome/user-data\",\n \"profileDirectory\": \"Default\",\n \"installUrl\": \"https://autohand.ai/chrome\"\n }\n}\n```\n| Kulcs | Típus | Alapértelmezett | Leírás |\n| ------------------- | --------- | -------- | -------------------------------------------------------------------------- |\n| `extensionId` | `string` | — | Telepített Chrome-bővítményazonosító a közvetlen átadáshoz |\n| `enabledByDefault` | `boolean` | `false` | A böngészőhíd automatikus indítása a CLI |-vel\n| `browser` | `string` | `\"auto\"` | Előnyben részesített Chromium böngésző: `auto`, `chrome`, `chromium`, `brave`, `edge` |\n| `userDataDir` | `string` | — | Böngésző felhasználói adatok könyvtára a megfelelő profil megcélzásához |\n| `profileDirectory` | `string` | — | Böngészőprofil-könyvtár neve (pl. `\"Default\"`, `\"Profile 1\"`) |\n| `installUrl` | `string` | — | Tartalék URL, ha a bővítményazonosító nincs konfigurálva |\n\n### CLI zászlók\n```bash\nautohand --browser # Start with browser bridge enabled\nautohand --no-browser # Start with browser bridge disabled\n```\n### Slash parancsok\n```\n/browser # Open browser integration panel\n/browser disconnect # Close the browser bridge connection\n```\n---\n\n## Teljes példa\n\n### JSON formátum (`~/.autohand/config.json`)\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\"\n },\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"model\": \"llama3.2\"\n },\n \"workspace\": {\n \"defaultRoot\": \"~/projects\",\n \"allowDangerousOps\": false\n },\n \"ui\": {\n \"theme\": \"dark\",\n \"autoConfirm\": false,\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n },\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n },\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\"run_command:npm *\", \"run_command:bun *\"],\n \"blacklist\": [\"run_command:rm -rf /\"],\n \"rememberSession\": true\n },\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n },\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true\n },\n \"externalAgents\": {\n \"enabled\": false,\n \"paths\": []\n },\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\"\n },\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\"\n }\n },\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n },\n \"share\": {\n \"enabled\": true\n },\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n### YAML formátum (`~/.autohand/config.yaml`)\n```yaml\nprovider: openrouter\n\nopenrouter:\n apiKey: sk-or-v1-your-key-here\n baseUrl: https://openrouter.ai/api/v1\n model: your-modelcard-id-here\n\nollama:\n baseUrl: http://localhost:11434\n model: llama3.2\n\nworkspace:\n defaultRoot: ~/projects\n allowDangerousOps: false\n\nui:\n theme: dark\n autoConfirm: false\n showCompletionNotification: true\n showThinking: true\n terminalBell: true\n checkForUpdates: true\n updateCheckInterval: 24\n\nagent:\n maxIterations: 100\n enableRequestQueue: true\n toolSelectionCache: true\n idleLogoutEnabled: true\n idleTimeoutMs: 3600000\n debug: false\n\npermissions:\n mode: interactive\n whitelist:\n - \"run_command:npm *\"\n - \"run_command:bun *\"\n blacklist:\n - \"run_command:rm -rf /\"\n rememberSession: true\n\nnetwork:\n maxRetries: 3\n timeout: 30000\n retryDelay: 1000\n\ntelemetry:\n enabled: false\n apiBaseUrl: https://api.autohand.ai\n batchSize: 20\n flushIntervalMs: 60000\n maxQueueSize: 500\n maxRetries: 3\n enableSessionSync: true\n\nexternalAgents:\n enabled: false\n paths: []\n\napi:\n baseUrl: https://api.autohand.ai\n\nauth:\n token: your-auth-token\n user:\n id: user-id\n email: user@example.com\n name: User Name\n\ncommunitySkills:\n enabled: true\n showSuggestionsOnStartup: true\n autoBackup: true\n\nshare:\n enabled: true\n\nsync:\n enabled: true\n interval: 300000\n includeTelemetry: false\n includeFeedback: false\n```\n### TOML formátum (`~/.autohand/config.toml`)\n```toml\nprovider = \"openrouter\"\n\n[openrouter]\napiKey = \"sk-or-v1-your-key-here\"\nbaseUrl = \"https://openrouter.ai/api/v1\"\nmodel = \"your-modelcard-id-here\"\n\n[ollama]\nbaseUrl = \"http://localhost:11434\"\nmodel = \"llama3.2\"\n\n[workspace]\ndefaultRoot = \"~/projects\"\nallowDangerousOps = false\n\n[ui]\ntheme = \"dark\"\nautoConfirm = false\nshowCompletionNotification = true\nshowThinking = true\nterminalBell = true\ncheckForUpdates = true\nupdateCheckInterval = 24\n\n[ui.customThemes.company.vars]\nbrand = \"#7c3aed\"\nbrandSoft = \"#a78bfa\"\n\n[ui.customThemes.company.colors]\naccent = \"brand\"\nborderAccent = \"brandSoft\"\nmdHeading = \"brand\"\n\n[agent]\nmaxIterations = 100\nenableRequestQueue = true\ntoolSelectionCache = true\nidleLogoutEnabled = true\nidleTimeoutMs = 3600000\ndebug = false\n\n[permissions]\nmode = \"interactive\"\nwhitelist = [\"run_command:npm *\", \"run_command:bun *\"]\nblacklist = [\"run_command:rm -rf /\"]\nrememberSession = true\n```\n---\n\n## Címtárszerkezet\n\nA Autohand az adatokat `~/.autohand/` (vagy `$AUTOHAND_HOME`) kódban tárolja:\n```\n~/.autohand/\n├── config.json # Main configuration\n├── config.toml # Alternative TOML config\n├── config.yaml # Alternative YAML config\n├── device-id # Unique device identifier\n├── error.log # Error log\n├── feedback.log # Feedback submissions\n├── sessions/ # Session history\n├── projects/ # Project knowledge base\n├── memory/ # User-level memory\n├── commands/ # Custom commands\n├── agents/ # Agent definitions\n├── tools/ # Custom meta-tools\n├── feedback/ # Feedback state\n└── telemetry/ # Telemetry data\n ├── queue.json\n └── session-sync-queue.json\n```\n**Projektszintű könyvtár** (a munkaterület gyökérkönyvtárában):\n```\n<project>/.autohand/\n├── settings.local.json # Local project permissions (gitignore this)\n├── memory/ # Project-specific memory\n├── skills/ # Project-specific skills\n└── tools/ # Project-specific meta-tools\n```\n---\n\n## CLI-jelzők (konfig felülbírálása)\n\nEzek a jelzők felülírják a konfigurációs fájl beállításait:\n\n### Alapjelzők\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `-v, --version` | Az aktuális verzió kiadása |\n| `-p, --prompt [text]` | Futtasson egyetlen utasítást parancs módban |\n| `--path <path>` | Munkaterület gyökér felülbírálása |\n| `--config <path>` | Egyéni konfigurációs fájl használata |\n| `--model <model>` | Modell felülírása |\n| `--temperature <n>` | Beállított mintavételi hőmérséklet (0-1) |\n| `--thinking [level]` | Gondolkodási/érvelési mélység beállítása (nincs, normál, kiterjesztett) |\n| `-y, --yes` | Automatikus megerősítési kérések |\n| `--dry-run` | Előnézet végrehajtás nélkül |\n| `-d, --debug` | Részletes hibakeresési kimenet engedélyezése |\n| `--bare` | Minimális explicit mód; beállítja a `AUTOHAND_CODE_SIMPLE=1` értéket és letiltja a perjel parancsokat |\n\n### Engedélyek és biztonság\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--unrestricted` | Nincs jóváhagyási felszólítás |\n| `--restricted` | Veszélyes műveletek megtagadása |\n| `--permissions` | Jelenítse meg az aktuális engedélybeállításokat, és lépjen ki |\n| `--no-idle-logout` | A hitelesített tétlen kijelentkezés letiltása a hosszan futó ügynöki munkamenetekhez |\n| `--yolo [pattern]` | Eszközhívások megfelelő minta automatikus jóváhagyása (pl. `allow:read,write` vagy `deny:delete`) |\n| `--timeout <seconds>` | Időtúllépés másodpercben az automatikus jóváhagyási módhoz |\n\n### Git & Worktree\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--worktree [name]` | Munkamenet futtatása elszigetelt git-munkafán (opcionális munkafa/ág neve) |\n| `--tmux` | Indítás egy dedikált tmux munkamenetben (az `--worktree`-t jelenti; nem használható a `--no-worktree` kóddal) |\n| `--no-worktree` | A git munkafa elkülönítésének letiltása automatikus módban |\n| `-c, --auto-commit` | Változások automatikus véglegesítése a feladatok elvégzése után |\n| `--patch` | Git javítás generálása változtatások alkalmazása nélkül |\n| `--output <file>` | A javítás kimeneti fájlja (a --patch-el együtt használatos) |\n\n### Automatikus mód\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-mode [prompt]` | Engedélyezze az interaktív automatikus módot, vagy indítson önálló hurkot egy soron belüli feladattal |\n| `--max-iterations <n>` | Maximális automatikus módú iterációk (alapértelmezett: 50) |\n| `--completion-promise <text>` | Befejezésjelző szövege (alapértelmezett: \"KÉSZ\") |\n| `--checkpoint-interval <n>` | A Git minden N iterációt végrehajt (alapértelmezett: 5) |\n| `--max-runtime <m>` | Maximális futási idő percekben (alapértelmezett: 120) |\n| `--max-cost <d>` | Maximális API költség dollárban (alapértelmezett: 10) |\n| `--interactive-on-complete` | Az automatikus mód vége után adja át közvetlenül az interaktív módba (csak TTY) |\n\n### Készségek és tanulás\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-skill` | Készségek automatikus generálása projektelemzés alapján (lásd még: `/learn` az interaktív tanácsadóhoz) |\n| `--learn` | Futtassa a `/learn` készségtanácsadót nem interaktív módon (a javasolt készségek elemzése és telepítése) |\n| `--learn-update` | A projekt újraelemzése és az LLM által generált elavult készségek nem interaktív módon történő regenerálása |\n| `--skill-install [name]` | Telepítsen egy közösségi képességet (megnyitja a böngészőt, ha nincs megadva név) |\n| `--project` | A készség telepítése projektszintre (a --skill-install funkcióval) |\n\n### Hitelesítés és fiók\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--login` | Jelentkezzen be Autohand-fiókjába |\n| `--logout` | Jelentkezzen ki Autohand-fiókjából |\n| `--sync-settings` | A beállítások szinkronizálásának engedélyezése/letiltása (alapértelmezett: igaz a bejelentkezett felhasználók számára) |\n\n### Beállítás és információ\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--setup` | Futtassa a telepítővarázslót a Autohand |\n| `--about` | Információk megjelenítése a Autohand-ról (verzió, linkek, hozzájárulási információk) |\n| `--feedback` | Visszajelzés küldése a Autohand csapatának |\n| `--settings` | A Autohand beállításainak konfigurálása (ugyanaz, mint a `/settings` interaktív módban) |\n\n### Munkaterület és könyvtárak\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--add-dir <path...>` | További könyvtárak hozzáadása a munkaterület hatóköréhez (többször is használható) |\n\n### Futtatási módok\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--mode <mode>` | Futtatási mód: interaktív (alapértelmezett), rpc vagy acp |\n| `--acp` | A --mode acp rövidítése (Agent Client Protocol over stdio) |\n| `--teammate-mode <mode>` | Csapat megjelenítési mód: automatikus, folyamatban lévő vagy tmux |\n\n### UI és nyelv\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--display-language <locale>` | Megjelenítési nyelv beállítása (pl. en, id, zh-cn, fr, de, ja) |\n| `--search-engine <provider>` | Internetes keresőszolgáltató beállítása (google, brave, duckduckgo, párhuzamos) |\n| `--cc, --context-compact` | Környezettömörítés engedélyezése (alapértelmezett: be) |\n| `--no-cc, --no-context-compact` | Kontextustömörítés letiltása |\n\n### Böngészőintegráció\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--browser` | A böngészőintegráció engedélyezése (ugyanaz, mint `/browser`) |\n| `--no-browser` | A böngészőintegráció letiltása |\n\n### Rendszerprompt\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-sys-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt-file <path>` | Cserélje le a teljes rendszerprompt a fájltartalommal |\n| `--append-system-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n### Kísérletváltási parancsok\n\n| Parancs | Leírás |\n| -------------------------------------- | ------------------------------------------------- |\n| `autohand experiments list` | Sorolja fel a helyi és távoli funkciók azonosítóit, a forrást, az életciklus szakaszt és az állapotot |\n| `autohand experiments status <feature>` | Mutasson egy szolgáltatáskapcsolót, konfigurációs elérési utat vagy távoli metaadatokat és állapotot |\n| `autohand experiments refresh` | Távoli funkciójelzők letöltése a Autohand API-ból |\n| `autohand experiments enable <feature>` | Konfigurációval támogatott szolgáltatáskapcsoló engedélyezése |\n| `autohand experiments disable <feature>` | A konfigurációval támogatott szolgáltatáskapcsoló letiltása |\n\nA távoli funkciójelzők lekérése innen: `/v1/feature-flags/evaluate`, gyorsítótár a `~/.autohand/feature-flags.json` címen történik, és az API által biztosított TTL lejárta után frissül. A `features.environment` segítségével válassza ki a távoli jelzőkörnyezetet, a `features.remoteOverrides` segítségével pedig a felhasználó által felülbírálható távoli jelzők helyi letiltásához.\n\nA `usage_v2` egy kísérleti funkciókapcsoló a `/usage` irányítópulthoz és a továbbfejlesztett `/status` Használat laphoz. Engedélyezze a következővel: `autohand experiments enable usage_v2`.\n\nA `token_usage_status` egy kísérleti funkciókapcsoló (konfigurációs útvonal `features.tokenUsageStatus`, alapértelmezés szerint kikapcsolva), amely a valós idejű tokenhasználatot mutatja a működő állapotsorban – kumulatív tokenek felfelé (`↑`) és lefelé (`↓`) plusz g kontextusban, cc. `↑15.7k ↓3.2k · context: 6.0% (15.7k/262.1k)`. A kontextusablak modellenként van feloldva az összes szolgáltatónál. Engedélyezze a következővel: `autohand experiments enable token_usage_status`.\n\n---\n\n## Slash parancsok\n\nAz Autohand perjel parancsok gazdag készletét kínálja interaktív használatra. A javaslatok megtekintéséhez írja be a `/` kódot a REPL-be.\n\n### Munkamenet-kezelés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/quit` | Kilépés az aktuális munkamenetből |\n| `/exit` | Kilépés az aktuális munkamenetből |\n| `/new` | Új beszélgetés indítása (memóriakivonattal) |\n| `/clear` | Tiszta beszélgetés automatikus memóriakivonással |\n| `/session` | Az aktuális munkamenet részleteinek megjelenítése |\n| `/sessions` | Korábbi munkamenetek listája |\n| `/resume` | Előző munkamenet folytatása |\n| `/history` | A munkamenet-előzmények böngészése oldalszámozással |\n| `/undo` | Git módosítások és utolsó forduló visszaállítása |\n| `/export` | Munkamenet exportálása markdown/JSON/HTML |\n| `/share` | Aktuális munkamenet megosztása |\n| `/status` | Munkamenet állapotának megjelenítése |\n| `/usage` | Modell, szolgáltató, kontextus és használati korlátok megjelenítése |\n\n### Modell és szolgáltató\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/model` | LLM-modell váltása vagy konfigurálása |\n| `/cc` | Kézi környezet tömörítése |\n\n### Projektbeállítás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/init` | Hozzon létre `AGENTS.md` fájlt az aktuális könyvtárban |\n| `/setup` | Futtassa a telepítővarázslót a Autohand | konfigurálásához\n| `/add-dir` | Könyvtárak hozzáadása a munkaterület hatóköréhez |\n\n### Ügynökök és csapatok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/agents` | Az elérhető alügynökök listája |\n| `/agents-new` | Hozzon létre egy új ügynököt a varázslón keresztül |\n| `/squad` | Nyissa meg/kezelje az önálló Autohand Squad futtatókörnyezetet |\n| `/team` | Csapat irányítása párhuzamos munkához |\n| `/tasks` | Feladatok kezelése csapatban |\n| `/message` | Üzenet küldése csapattársnak |\n\n### Készségek\n\n| Parancs | Leírás |\n| ----------------- | --------------------------------------------------- |\n| `/skills` | Készségek listája és kezelése |\n| `/skills-new` | Új készség létrehozása |\n| `/learn` | Tanulja meg és telepítse az ajánlott készségeket |\n\n### Memória és beállítások\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/memory` | Tárolt emlékek megtekintése és kezelése |\n| `/settings` | A Autohand beállításainak konfigurálása |\n| `/statusline` | A szerző állapotsor mezőinek konfigurálása |\n| `/experiments` | Kísérleti jellemzők kapcsolóinak váltása |\n| `/sync` | Beállítások szinkronizálása eszközök között |\n| `/import` | Importálhat munkameneteket, beállításokat, MCP-t, memóriát, készségeket és hook-okat a támogatott ügynökökről |\n\n### Engedélyek és akasztók\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/permissions`| Szerszámengedélyek kezelése |\n| `/hooks` | Életciklus-horogok kezelése |\n\n### Hitelesítés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/login` | Hitelesítés a Autohand API-val |\n| `/logout` | Kijelentkezés a Autohand fiókból |\n\n### Eszközök és segédprogramok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/search` | Keresés az interneten |\n| `/formatters` | Az elérhető kódformázók listája |\n| `/lint` | Sorolja fel a rendelkezésre álló kódsorokat |\n| `/completion` | Shell befejező szkriptek generálása |\n| `/plan` | Megvalósítási terv létrehozása |\n| `/review` | Kódellenőrzés végrehajtása |\n| `/pr-review` | Lehívási kérelem áttekintése |\n\n### IDE integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/ide` | A futó IDE észlelése és csatlakozása |\n\n### MCP (Model Context Protocol)\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/mcp` | Interaktív MCP-kiszolgálókezelő |\n\n### Automatizálás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/automode` | Indítsa el az autonóm kódolási módot |\n| `/repeat` | Ismétlődő munkák ütemezése |\n| `/yolo` | Yolo mód váltása (automatikus jóváhagyási eszközök) |\n\n### Böngészőintegráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/browser` | A Chrome böngésző integrációjának engedélyezése |\n\n### UI és kijelző\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/help` | Az elérhető perjel parancsok és tippek megjelenítése |\n| `/about` | Információk megjelenítése a következőről: Autohand |\n| `/theme` | Színtéma módosítása |\n| `/language` | Kijelző nyelvének módosítása |\n| `/feedback` | Visszajelzés küldése a Autohand csapatának |\n\n---\n\n## Rendszerprompt testreszabás\nAutohand lehetővé teszi az AI-ügynök által használt rendszerprompt testreszabását. Ez speciális munkafolyamatok, egyedi utasítások vagy más rendszerekkel való integráció esetén hasznos.\n\n### CLI zászlók\n\n| zászló | Leírás |\n| ------------------------------ | -------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerprompt |\n| `--append-sys-prompt <value>` | Tartalom hozzáfűzése az alapértelmezett rendszerprompthoz |\n\nMindkét zászló elfogadja a következőket:\n\n- **Inline karakterlánc**: Közvetlen szövegtartalom\n- **Fájl elérési útja**: A promptot tartalmazó fájl elérési útja (automatikusan észlelve)\n\n### Fájlútvonal észlelése\n\nEgy érték fájlútvonalként kezelendő, ha:\n\n- A következővel kezdődik: `./`, `../`, `/` vagy `~/`\n- Windows meghajtóbetűjellel kezdődik (pl. `C:\\`)\n- A következővel végződik: `.txt`, `.md` vagy `.prompt`\n- Útleválasztókat tartalmaz szóközök nélkül\n\nEllenkező esetben a rendszer soron belüli karakterláncként kezeli.\n\n### `--sys-prompt` (Teljes csere)\n\nHa rendelkezésre áll, ez **teljesen lecseréli** az alapértelmezett rendszerpromptot. Az ügynök NEM tölti be:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n```bash\n# Inline string\nautohand --sys-prompt \"You are a Python expert. Be concise.\" --prompt \"Write hello world\"\n\n# From file\nautohand --sys-prompt ./custom-prompt.txt --prompt \"Explain this code\"\n\n# Home directory\nautohand --sys-prompt ~/.autohand/prompts/python-expert.md --prompt \"Debug this function\"\n```\n**Példa egyéni prompt fájlra (`custom-prompt.txt`):**\n```\nYou are a specialized Python debugging assistant.\n\nRules:\n- Focus only on Python code\n- Always explain the root cause\n- Suggest fixes with code examples\n- Be concise and direct\n```\n### `--append-sys-prompt` (Hozzáadás az alapértelmezetthez)\n\nHa rendelkezésre áll, ez **hozzáfűzi** a tartalmat a teljes alapértelmezett rendszerprompthoz. Az ügynök továbbra is betölti:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n\nA csatolt tartalom a legvégére kerül hozzáadásra.\n```bash\n# Inline string\nautohand --append-sys-prompt \"Always use TypeScript instead of JavaScript\" --prompt \"Create a function\"\n\n# From file\nautohand --append-sys-prompt ./team-guidelines.md --prompt \"Add error handling\"\n```\n**Példa hozzáfűző fájl (`team-guidelines.md`):**\n```\n## Team Guidelines\n\n- Use 2-space indentation\n- Prefer functional patterns\n- Add JSDoc comments to public APIs\n- Run tests before committing\n```\n### Elsőbbség\n\nHa mindkét zászló rendelkezésre áll:\n\n1. A `--sys-prompt` teljes elsőbbséget élvez\n2. A `--append-sys-prompt` figyelmen kívül hagyva\n```bash\n# --append-sys-prompt is ignored in this case\nautohand --sys-prompt \"Custom only\" --append-sys-prompt \"This is ignored\"\n```\n### Használati esetek\n\n| Használati eset | Ajánlott zászló |\n| ---------------------------------- | ---------------------- |\n| Egyedi ügynök személye | `--sys-prompt` |\n| Minimális utasítások | `--sys-prompt` |\n| Csapatirányelvek hozzáadása | `--append-sys-prompt` |\n| Projektkonvenciók hozzáadása | `--append-sys-prompt` |\n| Integráció külső rendszerekkel | `--sys-prompt` |\n| Speciális hibakeresés | `--sys-prompt` |\n\n### Hibakezelés\n\n| Forgatókönyv | Viselkedés |\n| ------------------ | ------------------------- |\n| Üres érték | Hiba |\n| A fájl nem található | Soron belüli karakterláncként kezelve |\n| Üres fájl | Hiba |\n| Fájl > 1 MB | Hiba |\n| Engedély megtagadva | Hiba |\n| Címtár elérési útja | Hiba |\n\n### Példák\n```bash\n# Python expert mode\nautohand --sys-prompt \"You are a Python expert. Only write Python code.\" \\\n --prompt \"Create a web scraper\"\n\n# TypeScript enforcement\nautohand --append-sys-prompt \"Always use TypeScript, never JavaScript.\" \\\n --prompt \"Create a REST API\"\n\n# CI/CD integration (non-interactive)\nautohand --sys-prompt ./ci-prompt.txt \\\n --prompt \"Fix the failing tests\" \\\n --unrestricted \\\n --patch\n\n# Custom team workflow\nautohand --append-sys-prompt ~/.company/coding-standards.md \\\n --prompt \"Refactor this module\"\n```\n---\n\n## Több könyvtár támogatása\n\nAz Autohand a fő munkaterületen kívül több könyvtárral is működhet. Ez akkor hasznos, ha a projektben különböző könyvtárakban vannak függőségek, megosztott könyvtárak vagy kapcsolódó projektek.\n\n### CLI zászló\n\nA `--add-dir` használatával további könyvtárakat adhat hozzá (többször is használható):\n```bash\n# Add a single additional directory\nautohand --add-dir /path/to/shared-lib\n\n# Add multiple directories\nautohand --add-dir /path/to/lib1 --add-dir /path/to/lib2\n\n# With unrestricted mode (auto-approve writes to all directories)\nautohand --add-dir /path/to/shared-lib --unrestricted\n```\n### Interaktív parancs\n\n`/add-dir` használata interaktív munkamenet során:\n```\n/add-dir # Show current directories\n/add-dir /path/to/dir # Add a new directory\n```\n### Biztonsági korlátozások\n\nA következő könyvtárak nem adhatók hozzá:\n\n- Saját könyvtár (`~` vagy `$HOME`)\n- Gyökérkönyvtár (`/`)\n- Rendszerkönyvtárak (`/etc`, `/var`, `/usr`, `/bin`, `/sbin`)\n- Windows rendszerkönyvtárak (`C:\\Windows`, `C:\\Program Files`)\n- Windows felhasználói könyvtárak (`C:\\Users\\username`)\n- WSL Windows-csatlakozások (`/mnt/c`, `/mnt/c/Windows`)\n"}, "3c90c765cf8bdee4de6864225400c2f412d134ac": {"t": 1785764168.9816728, "n": 88144, "h": "56b4d8145f275097", "c": "# Autohand Konfigurációs referencia\n\nTeljes referencia az összes konfigurációs beállításhoz itt: `~/.autohand/config.json` (vagy `.toml`/`.yaml`/`.yml`).\n\n> **Tipp:** A legtöbb alábbi beállítás interaktívan módosítható a `/settings` paranccsal a fájl manuális szerkesztése helyett.\n\nLokalizált referenciák:\n\n- [English](./config-reference.md)\n- [日本語](./config-reference_ja.md)\n- [简体中文](./config-reference_zh.md)\n- [繁體中文](./config-reference_zh-tw.md)\n- [한국어](./config-reference_ko.md)\n- [Deutsch](./config-reference_de.md)\n- [Español](./config-reference_es.md)\n- [Français](./config-reference_fr.md)\n- [Italiano](./config-reference_it.md)\n- [Polski](./config-reference_pl.md)\n- [Русский](./config-reference_ru.md)\n- [Português (Brasil)](./config-reference_ptBR.md)\n- [Türkçe](./config-reference_tr.md)\n- [Čeština](./config-reference_cs.md)\n- [Magyar](./config-reference_hu.md)\n- [हिन्दी](./config-reference_hi.md)\n- [Bahasa Indonesia](./config-reference_id.md)\n\n## Tartalomjegyzék\n\n- [A konfigurációs fájl helye](#configuration-file-location)\n- [Környezeti változók](#environment-variables)\n- [Csupasz mód](#bare-mode)\n- [Szolgáltatói beállítások](#provider-settings)\n- [Munkaterület beállításai](#workspace-settings)\n- [UI beállítások](#ui-settings)\n- [Ügynökbeállítások](#agent-settings)\n- [Engedélyek beállításai](#permissions-settings)\n- [Javítási mód](#patch-mode)\n- [Hálózati beállítások](#network-settings)\n- [Telemetriai beállítások](#telemetry-settings)\n- [Külső ügynökök](#external-agents)\n- [Skills System](#skills-system)\n- [API beállítások](#api-settings)\n- [Authentication Settings](#authentication-settings)\n- [Közösségi készségek beállításai](#community-skills-settings)\n- [Megosztási beállítások](#share-settings)\n- [Beállítások szinkronizálása](#settings-sync)\n- [Hook beállításai](#hooks-settings)\n- [MCP beállítások](#mcp-settings)\n- [Chrome-bővítmény beállításai](#chrome-extension-settings)\n- [Teljes példa](#complete-example)\n\n---\n\n## Konfigurációs fájl helye\n\nAutohand a következő sorrendben keresi a konfigurációt:\n\n1. `AUTOHAND_CONFIG` környezeti változó (egyéni elérési út)\n2. `~/.autohand/config.toml`\n3. `~/.autohand/config.yaml`\n4. `~/.autohand/config.yml`\n5. `~/.autohand/config.json` (alapértelmezett)\n\nAz alapkönyvtárat is felülírhatja:\n```bash\nexport AUTOHAND_HOME=/custom/path # Changes ~/.autohand to /custom/path\n```\n---\n\n## Környezeti változók\n\n| Változó | Leírás | Példa |\n| --------------------------------------- | ------------------------------------------------- | --------------------------------- |\n| `AUTOHAND_HOME` | Alapkönyvtár az összes Autohand adathoz | `/custom/path` |\n| `AUTOHAND_CONFIG` | Egyéni konfigurációs fájl elérési útja | `/path/to/config.toml` |\n| `AUTOHAND_API_URL` | API-végpont (felülbírálja a konfigurációt) | `https://api.autohand.ai` |\n| `AUTOHAND_AUTH_URL` | Bejelentkezési és fiókszinkronizálási eredet (az `AUTOHAND_API_URL` értékétől független) | `https://autohand.ai` |\n| `AUTOHAND_SECRET` | Vállalat/csapat titkos kulcsa | `sk-xxx` |\n| `AUTOHAND_PERMISSION_CALLBACK_URL` | Az engedély visszahívásának URL-je (kísérleti) | `http://localhost:3000/callback` |\n| `AUTOHAND_PERMISSION_CALLBACK_TIMEOUT` | Az engedély-visszahívás időtúllépése ms-ban | `5000` |\n| `AUTOHAND_NON_INTERACTIVE` | Futtatás nem interaktív módban | `1` |\n| `AUTOHAND_YES` | Minden felszólítás automatikus megerősítése | `1` |\n| `AUTOHAND_NO_BANNER` | Indítási szalaghirdetés letiltása | `1` |\n| `AUTOHAND_STREAM_TOOL_OUTPUT` | Az eszköz kimenetének streamelése valós időben | `1` |\n| `AUTOHAND_DEBUG` | Hibakeresési naplózás engedélyezése | `1` |\n| `AUTOHAND_THINKING_LEVEL` | Érvelési mélységszint beállítása | `normal` |\n| `AUTOHAND_CLIENT_NAME` | Kliens/szerkesztő azonosító (ACP kiterjesztések által beállítva) | `zed` |\n| `AUTOHAND_CLIENT_VERSION` | Kliens verzió (az ACP-bővítmények által beállított) | `0.169.0` |\n| `AUTOHAND_CODE` | Környezetérzékelési jelző (automatikusan beállítva) | `1` |\n| `AUTOHAND_CODE_SIMPLE` | A csupasz mód engedélyezése a `--bare` | átadása nélkül `1` |\n\n### Gondolkodási szint\n\nA `AUTOHAND_THINKING_LEVEL` környezeti változó szabályozza a modell által használt érvelés mélységét:\n\n| Érték | Leírás |\n| ---------- | --------------------------------------------------------------------- |\n| `none` | Közvetlen válaszok látható indoklás nélkül |\n| `normal` | Szabványos érvelési mélység (alapértelmezett) |\n| `extended` | Mély érvelés összetett feladatokhoz, részletesebb gondolkodási folyamatot mutat |\n\nEzt általában az ACP-kliens-bővítmények (például a Zed) állítják be a konfigurációs legördülő menüben.\n```bash\n# Example: Use extended thinking for complex tasks\nAUTOHAND_THINKING_LEVEL=extended autohand --prompt \"refactor this module\"\n```\n---\n\n## Csupasz mód\n\nA csupasz mód a Autohand csak kifejezetten kért kontextus- és futásidejű integrációkkal indul. Engedélyezze a következők egyikével:\n```bash\nautohand --bare\nAUTOHAND_CODE_SIMPLE=1 autohand\n```\nA `--bare` átadásakor a Autohand a `AUTOHAND_CODE_SIMPLE=1` értéket is beállítja a futó folyamathoz.\n\nA csupasz mód letiltja az automatikus indítást és az interaktív integrációkat:\n\n- horgok és horog értesítések\n- LSP indítás\n- plugin szinkronizálás, bővítmény automatikus betöltése és meta-eszköz automatikus betöltése\n- hozzárendelés, telemetria, munkamenet-szinkronizálás, automatikus jelentéskészítés és háttérpingek\n- automatikus memória/munkamenet bootstrap kontextus\n- háttérkérdések, frissítés-ellenőrzések, funkciójelző-lekérések és modell-metaadatok előzetes letöltése\n- kulcstartó és böngésző OAuth-hitelesítési tartalék\n- automatikus `AGENTS.md` és szolgáltatói utasítás keresés\n- minden perjel parancs, beleértve a parancssorba beírt csupasz `/`\n\nA perjel alakú abszolút fájlútvonalakat, például a `/Users/alex/project/file.ts`, továbbra is normál prompt szövegként kezeli a rendszer. A parancs alakú perjel bevitel, például `/help`, `/model` vagy `/mcp`, a `Slash commands are disabled in bare mode.` kódot írja ki, és nem hajtódik végre.\n\nA csupasz módban történő hitelesítés csak explicit. A Autohand először a következőt olvassa: `AUTOHAND_API_KEY`, majd `auth.apiKeyHelper`, ha be van állítva. Nem olvassa be a kulcstartó hitelesítő adatait, és nem indítja el az OAuth/böngésző bejelentkezést. A külső szolgáltatók továbbra is a szolgáltatóspecifikus API-kulcsokat és konfigurációkat használják.\n\nEzek az explicit bemenetek csupasz módban is elérhetők:\n\n| Bemenet | Leírás |\n| ------------------------------ | -------------------------------------------------------------------------- |\n| `--system-prompt <value>` | Cserélje ki a rendszerprompt szövegközi szöveggel vagy elérési út-szerű értékkel |\n| `--system-prompt-file <path>` | Cserélje ki a rendszerpromptot a fájltartalommal |\n| `--append-system-prompt <value>` | Szövegközi szöveg vagy elérési út-szerű érték hozzáfűzése a | rendszerprompthoz\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--add-dir <path...>` | Explicit könyvtárak hozzáadása a munkaterület hatóköréhez |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--settings` | Nyissa meg a beállításokat közvetlenül a CLI jelzőből |\n| `--config <path>` | Használjon explicit Autohand konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n---\n\n## Szolgáltatói beállítások\n\n### `provider`\n\nAktív LLM szolgáltató használható.\n\n| Érték | Leírás |\n| -------------- | ----------------------------- |\n| `\"openrouter\"` | OpenRouter API (alapértelmezett) |\n| `\"ollama\"` | Helyi Ollama példány |\n| `\"llamacpp\"` | Helyi llama.cpp szerver |\n| `\"openai\"` | OpenAI API közvetlenül |\n| `\"mlx\"` | MLX az Apple Siliconon (helyi) |\n| `\"llmgateway\"` | LLM Gateway egyesített API |\n| `\"deepseek\"` | DeepSeek API |\n| `\"zai\"` | Z.ai GLM API |\n| `\"sakana\"` | Sakana.AI Fugu API |\n| `\"bedrock\"` | AWS alapkőzet |\n| `\"custom:<id>\"` | Felhasználó által meghatározott OpenAI-kompatibilis szolgáltató a következőtől: `customProviders` |\n\n### `openrouter`\n\nOpenRouter szolgáltató konfigurációja.\n```json\n{\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-xxx\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\",\n \"contextWindow\": 262144\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | --------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön OpenRouter API kulcsa |\n| `baseUrl` | húr | Nem | `https://openrouter.ai/api/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellazonosító (pl. `your-modelcard-id-here`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand kitölti ezt az OpenRouterből, ha ismert. |\n\n### `zai`\n\nZ.ai szolgáltató konfigurációja.\n```json\n{\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"baseUrl\": \"https://api.z.ai/api/paas/v4\",\n \"model\": \"glm-5.2\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | -------------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön Z.ai API-kulcsa |\n| `baseUrl` | húr | Nem | `https://api.z.ai/api/paas/v4` | API-végpont |\n| `model` | húr | Igen | `glm-5.2` | Modellazonosító, például `glm-5.2`, `glm-5.1` vagy `glm-4.5` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. A Autohand 1M-re következtet a GLM-5.2-nél és 200K-ra a GLM-5.1-nél. |\n\n### `sakana`\n\nSakana.AI szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.sakana.ai/v1`-t használja alap URL-ként.\n```json\n{\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------ | ------------------------------------------------------------------ |\n| `apiKey` | húr | Igen | - | Az Ön Sakana API kulcsa |\n| `baseUrl` | húr | Nem | `https://api.sakana.ai/v1` | API-végpont |\n| `model` | húr | Igen | `fugu` | Modellazonosító, például `fugu` vagy `fugu-ultra` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand 1M-re következtet a Fugu modelleknél. |\n\n### `customProviders`\n\nAz egyéni szolgáltatók lehetővé teszik a felhasználók számára, hogy OpenAI-kompatibilis végpontot hozzanak létre kódmódosítás vagy új csomagolt szolgáltató nélkül. Adja hozzá a szolgáltatót a `customProviders` alatt, majd válassza ki a `provider: \"custom:<id>\"` kóddal. Ugyanez a folyamat elérhető a `/model` **Új szolgáltatóval**. A telepítés során a Autohand a szolgáltató mentése előtt ellenőrzi az alap URL-t, a hitelesítést és a kiválasztott modellt az OpenAI-kompatibilis `/models` végponton keresztül.\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\",\n \"models\": [\n {\n \"id\": \"acme-code-1\",\n \"label\": \"Acme Code 1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n ]\n }\n }\n}\n```\nAzon helyi OpenAI-kompatibilis szervereknél, amelyek nem igényelnek hitelesítést, állítsa a `apiKeyRequired` értékét `false` értékre, és hagyja ki a `apiKey` értéket.\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------------ | ------- | -------- | ------- | ----------- |\n| `id` | húr | Igen | - | Stabil szolgáltatói azonosító. Meg kell egyeznie az objektumkulccsal, és a következőképpen van kiválasztva: `custom:<id>`. |\n| `displayName` | húr | Igen | - | A `/model` és a szolgáltató beállításai között látható név. |\n| `apiFormat` | húr | Igen | - | A következőnek kell lennie: `openai-compatible`. |\n| `baseUrl` | húr | Igen | - | Végpont gyökér, például `https://api.example.com/v1`. Autohand ellenőrzi a `/models` kódot, és felhívja a `/chat/completions` kódot. |\n| `apiKey` | húr | Feltételes | - | Adathordozó token a tárolt végpontokhoz. Kötelező, ha a `apiKeyRequired` igaz. |\n| `apiKeyRequired` | logikai | Nem | `true` | Állítsa be a false értéket a helyi vagy már hitelesített átjárókhoz. |\n| `model` | húr | Igen | - | Aktív modell azonosító. |\n| `contextWindow` | szám | Nem | Auto | Pontos kontextusablak a token-költségvetéshez, állapothoz, telemetriához és szinkronizálási metaadatokhoz. |\n| `reasoningEffort` | húr | Nem | - | Opcionális `none`, `low`, `medium`, `high` vagy `xhigh`. `reasoning_effort` néven küldve egyéni OpenAI-kompatibilis kérésekhez. |\n| `models` | tömb | Nem | - | Opcionális modellválasztó bejegyzések modellenkénti kontextussal és érvelési metaadatokkal. |\n\n### `ollama`\n\nOllama szolgáltató konfigurációja.\n```json\n{\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"port\": 11434,\n \"model\": \"llama3.2\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------- | ------------------------------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:11434` | Ollama szerver URL |\n| `port` | szám | Nem | `11434` | Szerverport (a baseUrl alternatívája) |\n| `model` | húr | Igen | - | Modellnév (pl. `llama3.2`, `codellama`) |\n\n### `llamacpp`\n\nllama.cpp szerver konfigurációja.\n```json\n{\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"default\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | llama.cpp szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | Modellazonosító |\n\n### `openai`\n\nOpenAI API konfiguráció.\n```json\n{\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-xxx\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\nAz OpenAI a Autohand beépített OpenAI bejelentkezési folyamatán keresztül is használhatja ChatGPT-előfizetését:\n```json\n{\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"contextWindow\": 1050000,\n \"model\": \"gpt-5.4\",\n \"chatgptAuth\": {\n \"accessToken\": \"...\",\n \"refreshToken\": \"...\",\n \"accountId\": \"...\"\n }\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | ----------------------- | ---------------------------- | -------------------------------------------------------------------------- |\n| `authMode` | húr | Nem | `api-key` | Hitelesítési mód: `api-key` vagy `chatgpt` |\n| `apiKey` | húr | Igen a `api-key` módhoz | - | OpenAI API kulcs |\n| `baseUrl` | húr | Nem | `https://api.openai.com/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-5.4`, `gpt-5.4-mini`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Állítsa be az elavult helyi feltételezések felülbírálásához. |\n| `chatgptAuth` | tárgy | Igen a `chatgpt` módhoz | - | Tárolt ChatGPT/Codex hitelesítési tokenek és fiókazonosító |\n\n### `mlx`\n\nMLX szolgáltató Apple Silicon Mac gépekhez (helyi következtetés).\n```json\n{\n \"mlx\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | MLX szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | MLX modell azonosító |\n\n### `llmgateway`\n\nLLM Gateway egységes API konfiguráció. Hozzáférést biztosít több LLM-szolgáltatóhoz egyetlen API-n keresztül.\n```json\n{\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"baseUrl\": \"https://api.llmgateway.io/v1\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------------- | ---------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | LLM Gateway API kulcs |\n| `baseUrl` | húr | Nem | `https://api.llmgateway.io/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-4o`, `claude-3-5-sonnet-20241022`) |\n\n**API-kulcs beszerzése:**\nKeresse fel a [llmgateway.io/dashboard](https://llmgateway.io/dashboard) webhelyet fiók létrehozásához és API-kulcsának beszerzéséhez.\n\n**Támogatott modellek:**\nAz LLM Gateway több szolgáltató modelljét támogatja, többek között:\n\n- OpenAI: `gpt-4o`, `gpt-4o-mini`, `gpt-4-turbo`\n`claude-3-5-haiku-20241022`\n- Google: `gemini-1.5-pro`, `gemini-1.5-flash`\n\n### `deepseek`\n\nDeepSeek szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.deepseek.com`-t használja alap URL-ként.\n```json\n{\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"baseUrl\": \"https://api.deepseek.com\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | --------------------------- | --------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | DeepSeek API kulcs |\n| `baseUrl` | húr | Nem | `https://api.deepseek.com` | API-végpont |\n| `model` | húr | Igen | - | Modellnév, például `deepseek-v4-flash` vagy `deepseek-v4-pro` |\n\n### `bedrock`\n\nAWS Bedrock szolgáltató konfigurációja. `converse` az alapértelmezett mód, és az AWS SDK hitelesítési láncot használja. Az OpenAI-kompatibilis módok Bedrock API-kulcsokat és Bedrock OpenAI-kompatibilis végpontokat használnak.\n```json\n{\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------- | ------ | -------- | ------- | ----------- |\n| `model` | húr | Igen | - | Alapkőzetmodell-azonosító, következtetési profilazonosító vagy ARN |\n| `region` | húr | Igen | `AWS_REGION`, majd `AWS_DEFAULT_REGION`, majd `us-east-1` a beállításban | AWS régió |\n| `apiMode` | húr | Nem | `converse` | `converse`, `openai-chat` vagy `openai-responses` |\n| `authMode` | húr | Nem | `aws-credentials` `converse`, `bedrock-api-key` OpenAI-kompatibilis módokhoz | Hitelesítési mód |\n| `profile` | húr | Nem | - | Opcionális AWS-profil a hitelesítő adatok láncos hitelesítéséhez |\n| `endpoint` | húr | Nem | Módból és régióból származtatva | Egyéni/privát Bedrock végpont |\n| `apiKey` | húr | Igen OpenAI-kompatibilis módokhoz | - | Bedrock API kulcs. Ne használjon OpenAI API-kulcsokat. |\n\nFuttassa a `aws configure sso` kódot, vagy állítsa be a `AWS_PROFILE=enterprise-prod autohand` értéket a profilalapú AWS-hitelesítéshez. Az IAM-szerepkört, a tárolót és a példány metaadat-hitelesítő adatait az AWS SDK támogatja. Modell használata előtt engedélyezze a modellelérést az AWS-konzolon.\n\n---\n\n## Munkaterület beállításai\n```json\n{\n \"workspace\": {\n \"defaultRoot\": \"/path/to/projects\",\n \"allowDangerousOps\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------------------ | -------------------------------------------------- |\n| `defaultRoot` | húr | Aktuális címtár | Alapértelmezett munkaterület, ha nincs megadva |\n| `allowDangerousOps` | logikai | `false` | Pusztító műveletek engedélyezése megerősítés nélkül |\n\n### Munkahelyi biztonság\n\nAutohand automatikusan blokkolja a működést a veszélyes könyvtárakban, hogy megelőzze a véletlen károsodást:\n\n- **Fájlrendszer gyökerei** (`/`, `C:\\`, `D:\\` stb.)\n- **Házikönyvtárak** (`~`, `/Users/<user>`, `/home/<user>`, `C:\\Users\\<user>`)\n- **Rendszerkönyvtárak** (`/etc`, `/var`, `/System`, `C:\\Windows` stb.)\n- **WSL Windows-csatlakozások** (`/mnt/c`, `/mnt/c/Users/<user>`)\n\nEzt az ellenőrzést nem lehet megkerülni. Ha egy veszélyes könyvtárban próbálja meg futtatni a autohand alkalmazást, hibaüzenetet fog látni, és meg kell adnia egy biztonságos projektkönyvtárat.\n```bash\n# This will be blocked\ncd ~ && autohand\n# Error: Unsafe Workspace Directory\n\n# This works\ncd ~/projects/my-app && autohand\n```\nA részletekért lásd a [Workspace Safety](./workspace-safety.md) részt.\n\n---\n\n## UI beállítások\n```json\n{\n \"ui\": {\n \"theme\": \"dark\",\n \"customThemes\": {\n \"company\": {\n \"colors\": {\n \"accent\": \"#7c3aed\",\n \"success\": \"#22c55e\"\n }\n }\n },\n \"autoConfirm\": false,\n \"readFileCharLimit\": 300,\n \"silentToolOutput\": false,\n \"activityVerbs\": [\"Compiling\", \"Parsing\", \"Reviewing\"],\n \"activityVerbsEnabled\": true,\n \"activitySymbol\": \"✳\",\n \"statusLine\": {\n \"showProviderModel\": true,\n \"showContext\": true,\n \"showCommandHint\": true,\n \"showPullRequest\": true,\n \"showSessionLines\": false,\n \"showQueue\": true,\n \"showActiveStatus\": true,\n \"showActiveMetrics\": true,\n \"showCancelHint\": true\n },\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ----------------------------- | ------ | ------- | ---------------------------------------------------------------------------------------------- |\n| `theme` | húr | `\"dark\"` | Színes téma a terminál kimenetéhez. A beépítettek a következők: `dark`, `light`, `dracula`, `sandy`, `tui`, `github-dark`, `cappadocia`, CODE és ___8__ `australia`. A régi `turkey` és `brazil` értékek továbbra is betöltődnek álnévként. |\n| `customThemes` | tárgy | `{}` | Soron belüli egyéni témadefiníciók a téma nevével. A használatához állítsa be a `theme` kulcsot ugyanarra a kulcsra. |\n| `autoConfirm` | logikai | `false` | A biztonságos működés érdekében hagyja ki a megerősítő felszólításokat |\n| `readFileCharLimit` | szám | `300` | Maximum megjeleníthető karakter az olvasási/kereső eszköz kimenetéből (a teljes tartalom továbbra is elküldésre kerül a modellnek) |\n| `silentToolOutput` | logikai | `false` | A szerszám kimeneti blokkjainak elrejtése a terminálban, miközben továbbra is megőrzi a modell/munkamenet szerszámeredményeit |\n| `activityVerbs` | karakterlánc vagy karakterlánc[] | beépített medence | Egyéni tevékenység ige vagy igekészlet a munkajelzőhöz, `Verb...` formátumban |\n| `activityVerbsEnabled` | logikai | `true` | Forgó tevékenység igék megjelenítése, például `Compiling...`, miközben az ügynök dolgozik |\n| `activitySymbol` | húr | `\"✳\"` | A tevékenységi ige előtt látható szimbólum a tevékenységmutató kimenetében |\n| `statusLine.showProviderModel` | logikai | `true` | Jelenítse meg az aktív szolgáltatót és modellt a szerző állapotsorában |\n| `statusLine.showContext` | logikai | `true` | Jelenítse meg a kontextus százalékos arányát a szerző állapotsorában |\n| `statusLine.showCommandHint` | logikai | `true` | Parancs, említés, készség és terminálbejegyzési tippek megjelenítése a szerző állapotsorában |\n| `statusLine.showPullRequest` | logikai | `true` | Mutassa meg a kapcsolódó lekérési kérés számát, vagy `PR #123`, ha nincs PR társítva |\n| `statusLine.showSessionLines` | logikai | `false` | Az aktuális munkamenet során hozzáadott és eltávolított sorok megjelenítése |\n| `statusLine.showQueue` | logikai | `true` | A sorba állított kérések számának megjelenítése az állapotsorban |\n| `statusLine.showActiveStatus` | logikai | `true` | Az aktív forduló állapotszövege megjelenítése, miközben az ügynök dolgozik |\n| `statusLine.showActiveMetrics` | logikai | `true` | Az eltelt idő és a token mérőszámainak megjelenítése, amíg az ügynök dolgozik |\n| `statusLine.showCancelHint` | logikai | `true` | Az Esc megszakítási tipp megjelenítése, miközben az ügynök dolgozik |\n| `completionReportEnabled` | logikai | `true` | Kérje meg a modellt, hogy a végrehajtott műveleti körök után tartalmazzon egy tömör befejezési jelentést |\n| `showCompletionNotification` | logikai | `true` | Rendszerértesítés megjelenítése a feladat befejezésekor |\n| `showThinking` | logikai | `true` | Az LLM érvelésének/gondolati folyamatának megjelenítése |\n| `terminalBell` | logikai | `true` | Csengessen terminálcsengőt, amikor a feladat befejeződött (jelvényt mutat a terminálfülön/dokkon) |\n| `checkForUpdates` | logikai | `true` | CLI frissítések keresése indításkor |\n| `updateCheckInterval` | szám | `24` | Órák a frissítési ellenőrzések között (a gyorsítótárazott eredményt az intervallumon belül használja) |\n\nAz egyéni témák bármely szemantikai színtokent felülírhatnak. A hiányzó tokenek a sötét témából származnak:\n```json\n{\n \"ui\": {\n \"theme\": \"company\",\n \"customThemes\": {\n \"company\": {\n \"vars\": {\n \"brand\": \"#7c3aed\",\n \"brandSoft\": \"#a78bfa\"\n },\n \"colors\": {\n \"accent\": \"brand\",\n \"borderAccent\": \"brandSoft\",\n \"mdHeading\": \"brand\"\n }\n }\n }\n }\n}\n```\nMegjegyzés: A `readFileCharLimit` és `silentToolOutput` csak a terminál megjelenítését érinti. A teljes tartalom továbbra is elküldésre kerül a modellnek, és eszközüzenetekben tárolódik.\n\nA néma eszközkimenetet a fájl szerkesztése nélkül is átkapcsolhatja:\n```bash\nautohand config set silent_tool_output true\nautohand config set silent_tool_output false\n```\nA forgó tevékenység igék között válthat a fájl szerkesztése nélkül:\n```bash\nautohand config set verbs activity true\nautohand config set verbs activity false\n```\nSzabja testre az igéket a konfigurációs fájlban, ha rögzített állapotcímkét vagy kis projektspecifikus elforgatást szeretne:\n```json\n{\n \"ui\": {\n \"activityVerbs\": \"Compiling\"\n }\n}\n```\n\n```json\n{\n \"ui\": {\n \"activityVerbs\": [\"Indexing\", \"Reviewing\", \"Testing\"],\n \"activitySymbol\": \">\"\n }\n}\n```\nA `activityVerbs` egyetlen karakterláncot vagy nem üres karakterlánc-tömböt fogad el. Ha a `activityVerbsEnabled` értéke `false`, a Autohand visszaesik a `Working...` értékre, ahelyett, hogy az egyéni vagy beépített igék között forogna.\n\nA fájl szerkesztése nélkül válthat a befejezési jelentések között, beleértve a strukturált `SITREP` promptot is:\n```bash\nautohand config set sitrep true\nautohand config set sitrep false\n```\n### Terminal Bell\n\nHa a `terminalBell` engedélyezve van (alapértelmezett), a Autohand megszólal a terminál csengőjén (`\\x07`), amikor egy feladat befejeződik. Ez kiváltja:\n\n- **Jelvény a terminál lapon** - Vizuális jelzőt mutat, hogy a munka elkészült\n- **Dokk ikon ugrál** - Felhívja a figyelmet, ha a terminál a háttérben van (macOS)\n- **Hang** - Ha a terminál hangjai engedélyezve vannak a terminál beállításaiban\n\nTerminálspecifikus beállítások:\n\n- **macOS terminál**: Beállítások > Profilok > Speciális > Bell (vizuális/hallható)\n- **iTerm2**: Beállítások > Profilok > Terminál > Értesítések\n- **VS Code Terminal**: Beállítások > Terminál > Integrált: Bell engedélyezése\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"terminalBell\": false\n }\n}\n```\n### Ink Renderer\n\nA Autohand alapértelmezés szerint az Ink 7 + React 19 renderert használja az interaktív terminálokhoz. A régi `ui.useInkRenderer` konfigurációs mezőt figyelmen kívül hagyja, így a régi konfigurációs fájlok nem kényszeríthetik a sima terminálszerkesztőt. A tinta a következőket nyújtja:\n\n- **Recgésmentes kimenet**: Minden UI-frissítés kötegelt React-egyeztetésen keresztül történik\n- **Munkasor funkció**: Írja be az utasításokat, amíg az ügynök dolgozik\n- **Jobb bemenetkezelés**: Nincsenek ütközések a readline-kezelők között\n- **Összeállítható felhasználói felület**: A jövőbeni fejlett felhasználói felületi funkciók alapja\n\nVészhelyzeti tartalék a terminál kompatibilitás érdekében:\n```bash\nAUTOHAND_LEGACY_UI=1 autohand\n```\nMegjegyzés: Ez a funkció kísérleti jellegű, és lehetnek szélső esetek. Az alapértelmezett ora-alapú felhasználói felület stabil és teljesen működőképes marad.\n\n### Frissítési ellenőrzés\n\nHa a `checkForUpdates` engedélyezve van (alapértelmezett), a Autohand indításkor ellenőrzi az új kiadásokat:\n```\n> Autohand v0.6.8 (abc1234) ✓ Up to date\n```\nHa elérhető frissítés:\n```\n> Autohand v0.6.7 (abc1234) ⬆ Update available: v0.6.8\n ↳ Run: curl -fsSL https://autohand.ai/install.sh | sh\n```\nHogyan működik:\n\n- Lekéri a GitHub API legújabb kiadását\n- A gyorsítótárak eredménye `~/.autohand/version-check.json`\n- Csak egyszer ellenőrzi `updateCheckInterval` óránként (alapértelmezett: 24)\n- Nem blokkoló: az indítás akkor is folytatódik, ha az ellenőrzés sikertelen\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"checkForUpdates\": false\n }\n}\n```\nVagy környezeti változón keresztül:\n```bash\nexport AUTOHAND_SKIP_UPDATE_CHECK=1\n```\n---\n\n## Ügynök beállításai\n\nAz ügynök viselkedésének és iterációs korlátainak szabályozása.\n```json\n{\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"autoMemory\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------- | ------------------------------------------------------------------------------ |\n| `maxIterations` | szám | `100` | Maximális szerszámiterációk felhasználói kérésenként a leállítás előtt |\n| `enableRequestQueue` | logikai | `true` | Lehetővé teszi a felhasználók számára, hogy kéréseket írjanak be és sorba állítsanak, miközben az ügynök dolgozik |\n| `toolSelectionCache` | logikai | `true` | Gyorsítótárazza a körönkénti szerszámséma helyi kiválasztását az egyenértékű szerszámkiválasztási bemenethez |\n| `autoMemory` | logikai | `true` | Tartós felhasználói-/projektmemóriák kinyerése és mentése a befejezett interaktív fordulók után, beleértve a hibákból és megszakításokból származó, bizonyítékokkal alátámasztott tanulságokat |\n| `idleLogoutEnabled` | logikai | `true` | Jelentkezzen ki a hitelesített interaktív munkamenetekből az üresjárati időtúllépés után |\n| `idleTimeoutMs` | szám | `3600000` | Az inaktivitás ezredmásodpercei a hitelesített munkamenet kijelentkeztetése előtt (60 perc) |\n| `debug` | logikai | `false` | Részletes hibakeresési kimenet engedélyezése (naplózza az ügynök belső állapotát az stderr-be) |\n\n## Egyidejű munkamenetek észlelése\n\n```json\n{\n \"sessions\": {\n \"awareness\": \"warn\"\n }\n}\n```\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --- | --- | --- | --- |\n| `awareness` | karakterlánc | `\"warn\"` | A `passive` megjeleníti a többi munkamenetet, a `warn` a kockázatos Git- és fájlütközéseket is jelzi, a `coordinate` pedig megerősítést kér egy másik élő munkamenet által lefoglalt útvonal írása előtt |\n\n### Eszközséma kiválasztása\n\nA Autohand nem küld el minden teljes eszközsémát minden LLM-kérelemnél. A rendszerprompt tartalmaz egy kompakt eszközképesség-katalógust, és minden kérés csak egy kis konkrét sémát tesz közzé, amely a következők közül választható ki:\n\n- Az alapvető felderítési eszközök, például `tool_search`, `read_file`, `fff_find` és `fff_grep`\n- Szándékhoz illő eszközök szerkesztési, ellenőrzési, git, böngésző, web, függőségi vagy projektkövetési munkákhoz\n- A legutóbbi `tool_search` hívások során kért vagy kifejezetten név szerint megemlített eszközök\n\nEzzel elkerülhető a nagy előzetes kontextusköltség, ha az összes eszközséma elküldése a felhasználói szándék ismertsége előtt felmerül. `toolSelectionCache` csak a helyi választó gyorsítótárát vezérli az egyenértékű fordulatokhoz; nem hajt végre felhasználói előtti LLM-bemelegítést, és nem kényszerít ki nagy gyorsítótárazott prompt előtagot.\n\nA helyi választó gyorsítótárának letiltása:\n```json\n{\n \"agent\": {\n \"toolSelectionCache\": false\n }\n}\n```\nA hitelesített, régóta működő ügynöki munkamenetek életben tartásához, amíg munkára várnak:\n```json\n{\n \"agent\": {\n \"idleLogoutEnabled\": false\n }\n}\n```\nEgyetlen folyamathoz használja a `autohand --no-idle-logout` kódot, vagy állítsa be a `AUTOHAND_NO_IDLE_LOGOUT=1` értéket.\n\nAz inaktivitási idő módosításához állítsa az `idleTimeoutMs` értékét pozitív, ezredmásodpercben megadott időtartamra. Az alapértelmezett érték `3600000` (60 perc); az érvénytelen értékek az alapértelmezett értéket használják.\n\n### Hibakeresési mód\n\nEngedélyezze a hibakeresési módot az ügynök belső állapotának részletes naplózásához (reakcióhurok iterációi, prompt felépítés, munkamenet részletei). A kimenet az stderr-hez megy, hogy elkerülje a normál kimenet zavarását.\n\nHáromféleképpen engedélyezheti a hibakeresési módot (elsőbbségi sorrendben):\n\n1. **CLI jelző**: `autohand -d` vagy `autohand --debug`\n2. **Környezeti változó**: `AUTOHAND_DEBUG=1`\n3. **Konfigurációs fájl**: Állítsa be: `agent.debug: true`\n\n### Kérési sor\n\nHa a `enableRequestQueue` engedélyezve van, folytathatja az üzenetek beírását, miközben az ügynök feldolgoz egy korábbi kérést. A bevitel a sorba kerül, és automatikusan feldolgozásra kerül, amikor az aktuális feladat befejeződik.\n\n- Írja be az üzenetet, és nyomja meg az Enter billentyűt, hogy hozzáadja a sorhoz\n- Az állapotsor azt mutatja, hogy hány kérés van sorban\n- A kérések feldolgozása FIFO (first-in, first-out) sorrendben történik\n- A sor maximális mérete 10 kérés\n\n---\n\n## Engedélyek beállításai\n\nA szerszámengedélyek finom vezérlése.\n```json\n{\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\n \"run_command:npm *\",\n \"run_command:bun *\",\n \"run_command:git status\"\n ],\n \"blacklist\": [\"run_command:rm -rf *\", \"run_command:sudo *\"],\n \"rules\": [\n {\n \"tool\": \"run_command\",\n \"pattern\": \"npm test\",\n \"action\": \"allow\"\n }\n ],\n \"rememberSession\": true\n }\n}\n```\n### `mode`\n\n| Érték | Leírás |\n| ----------------- | ------------------------------------------------------ |\n| `\"interactive\"` | Jóváhagyás kérése veszélyes műveletekhez (alapértelmezett) |\n| `\"unrestricted\"` | Nincsenek felszólítások, engedélyezzen mindent |\n| `\"restricted\"` | Minden veszélyes művelet megtagadása |\n\n### `whitelist`\n\nSzerszámminták sora, amelyek soha nem igényelnek jóváhagyást.\n```json\n[\"run_command:npm *\", \"run_command:bun test\"]\n```\n### `blacklist`\n\nMindig blokkolt szerszámminták tömbje.\n```json\n[\"run_command:rm -rf /\", \"run_command:sudo *\"]\n```\n### `rules`\n\nFinom szemcsés engedélyezési szabályok.\n\n| Mező | Típus | Leírás |\n| --------- | --------- | -------------------------------------------- | ---------- | -------------- |\n| `tool` | húr | A megfelelő eszköznév |\n| `pattern` | húr | Opcionális minta az érvekhez való illeszkedéshez |\n| `action` | `\"allow\"` | `\"deny\"` | `\"prompt\"` | Intézkedések |\n\n### `rememberSession`\n\n| Típus | Alapértelmezett | Leírás |\n| ------- | ------- | -------------------------------------------- |\n| logikai | `true` | Emlékezzen az ülés jóváhagyási határozataira |\n\n### Helyi projektengedélyek\n\nMinden projektnek saját engedélybeállításai lehetnek, amelyek felülírják a globális konfigurációt. Ezeket a projekt gyökérkönyvtárában a `.autohand/settings.local.json` tartalmazza.\n\nAmikor jóváhagy egy fájlműveletet (szerkesztés, írás, törlés), a rendszer automatikusan ebbe a fájlba menti, így nem kéri újra ugyanazt a műveletet ebben a projektben.\n```json\n{\n \"version\": 1,\n \"permissions\": {\n \"whitelist\": [\n \"apply_patch:src/components/Button.tsx\",\n \"write_file:package.json\",\n \"run_command:bun test\"\n ]\n }\n}\n```\n**Hogyan működik:**\n\n- Amikor jóváhagy egy műveletet, a rendszer a következőbe menti: `.autohand/settings.local.json`\n- Legközelebb ugyanazt a műveletet a rendszer automatikusan jóváhagyja\n- A helyi projektbeállítások egyesülnek a globális beállításokkal (a helyi beállítások elsőbbséget élveznek)\n- Adja hozzá a `.autohand/settings.local.json` kódot a `.gitignore`-hoz, hogy a személyes beállítások privátak maradjanak\n\n**Mintaformátum:**\n\n- `tool_name:path` - Fájlműveletekhez (pl. `apply_patch:src/file.ts`)\n- `tool_name:command args` - Parancsokhoz (pl. `run_command:npm test`)\n\n### Megtekintési engedélyek\n\nJelenlegi engedélybeállításait kétféleképpen tekintheti meg:\n\n**CLI jelző (nem interaktív):**\n```bash\nautohand --permissions\n```\nEz a következőket jeleníti meg:\n\n- Jelenlegi engedélyezési mód (interaktív, korlátlan, korlátozott)\n- Munkaterület és konfigurációs fájlok elérési útjai\n- Minden jóváhagyott minta (engedélyezőlista)\n- Minden elutasított minta (feketelista)\n- Összefoglaló statisztika\n\n**Interaktív parancs:**\n```\n/permissions\n```\nInteraktív módban a `/permissions` parancs ugyanazokat az információkat és lehetőségeket biztosít a következőkhöz:\n\n- Elemek eltávolítása az engedélyezési listáról\n- Távolítsa el az elemeket a feketelistáról\n- Törölje az összes mentett engedélyt\n\n---\n\n## Patch mód\n\nA Patch mód lehetővé teszi megosztható, git-kompatibilis javítás létrehozását a munkaterület-fájlok módosítása nélkül. Ez hasznos:\n\n- A kód felülvizsgálata a változtatások alkalmazása előtt\n- Az AI által generált változások megosztása a csapat tagjaival\n- Reprodukálható változáskészletek készítése\n- CI/CD folyamatok, amelyeknek alkalmazása nélkül kell rögzíteni a változásokat\n\n### Használat\n```bash\n# Generate patch to stdout\nautohand --prompt \"add user authentication\" --patch\n\n# Save to file\nautohand --prompt \"add user authentication\" --patch --output auth.patch\n\n# Pipe to file (alternative)\nautohand --prompt \"refactor api handlers\" --patch > refactor.patch\n```\n### Viselkedés\n\nHa `--patch` meg van adva:\n\n- **Automatikus megerősítés**: Minden visszaigazolás automatikusan elfogadásra kerül (`--yes`)\n- **Nincsenek felszólítások**: Nem jelennek meg jóváhagyási értesítések (`--unrestricted` vélelmezett)\n- **Csak előnézet**: A változtatásokat rögzíti, de NEM írja lemezre\n- **Kikényszerített biztonság**: A feketelistán szereplő műveletek (`.env`, SSH-kulcsok, veszélyes parancsok) továbbra is blokkolva vannak\n\n### Javítások alkalmazása\n\nA címzettek szabványos git parancsokkal alkalmazhatják a javítást:\n```bash\n# Check what would be applied (dry-run)\ngit apply --check changes.patch\n\n# Apply the patch\ngit apply changes.patch\n\n# Apply with 3-way merge (handles conflicts better)\ngit apply -3 changes.patch\n\n# Apply and stage changes\ngit apply --index changes.patch\n\n# Reverse a patch\ngit apply -R changes.patch\n```\n### Patch formátum\n\nA generált javítás a git egységes diff formátumát követi:\n```diff\ndiff --git a/src/auth.ts b/src/auth.ts\nnew file mode 100644\n--- /dev/null\n+++ b/src/auth.ts\n@@ -0,0 +1,15 @@\n+export function authenticate(user: string, password: string) {\n+ // Implementation here\n+}\n\ndiff --git a/src/index.ts b/src/index.ts\n--- a/src/index.ts\n+++ b/src/index.ts\n@@ -1,5 +1,7 @@\n import express from 'express';\n+import { authenticate } from './auth';\n\n const app = express();\n+app.use(authenticate);\n```\n### Kilépési kódok\n\n| Kód | Jelentése |\n| ---- | ---------------------------------------------------- |\n| `0` | Siker, patch generált |\n| `1` | Hiba (hiányzó `--prompt`, engedély megtagadva stb.) |\n\n### Kombinálva más zászlókkal\n```bash\n# Use specific model\nautohand --prompt \"optimize queries\" --patch --model gpt-4o\n\n# Specify workspace\nautohand --prompt \"add tests\" --patch --path ./my-project\n\n# Use custom config\nautohand --prompt \"refactor\" --patch --config ~/.autohand/work.json\n```\n### Csapatmunkafolyamat-példa\n```bash\n# Developer A: Generate patch for a feature\nautohand --prompt \"implement user dashboard with charts\" --patch --output dashboard.patch\n\n# Share via git (create PR with just the patch file)\ngit checkout -b patch/dashboard\ngit add dashboard.patch\ngit commit -m \"Add dashboard feature patch\"\ngit push\n\n# Developer B: Review and apply\ngit fetch origin patch/dashboard\ngit apply dashboard.patch\n# Run tests, review code, then commit\ngit add -A && git commit -m \"feat: add user dashboard with charts\"\n```\n---\n\n## Hálózati beállítások\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Max | Leírás |\n| ------------ | ------ | ------- | --- | --------------------------------------- |\n| `maxRetries` | szám | `3` | `5` | Próbálkozzon újra sikertelen API-kérésekkel |\n| `timeout` | szám | `30000` | - | Kérelem időtúllépése ezredmásodpercben |\n| `retryDelay` | szám | `1000` | - | Az újrapróbálkozások közötti késleltetés ezredmásodpercben |\n\n---\n\n## Telemetriai beállítások\n\nA telemetria **alapértelmezés szerint le van tiltva** (feliratkozás). Engedélyezze a Autohand fejlesztéséhez.\n```json\n{\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true,\n \"companySecret\": \"\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | -------------------------- | ---------------------------------------------- |\n| `enabled` | logikai | `false` | Telemetria engedélyezése/letiltása (feliratkozás) |\n| `apiBaseUrl` | húr | `https://api.autohand.ai` | Telemetria API végpont |\n| `batchSize` | szám | `20` | Az automatikus kiürítés előtt kötegelt események száma |\n| `flushIntervalMs` | szám | `60000` | Öblítési időköz ezredmásodpercben (1 perc) |\n| `maxQueueSize` | szám | `500` | Maximális sorméret a régi események eldobása előtt |\n| `maxRetries` | szám | `3` | Próbálkozzon újra sikertelen telemetriai kérések esetén |\n| `enableSessionSync` | logikai | `true` | Szinkronizálja a munkameneteket a felhővel a csapatfunkciókhoz, ha a telemetria engedélyezve van |\n| `companySecret` | húr | `\"\"` | Vállalati titok API-hitelesítéshez |\n\nA szolgáltató/modell telemetria tartalmazza az aktív szolgáltatói azonosítót, a modellazonosítót és az elérhető nem titkos metaadatokat, például az egyéni szolgáltató megjelenítési nevét, API-formátumát, érvelési erőfeszítéseit és kontextusablakát. Az API-kulcsok és a vivőjogkivonatok soha nem szerepelnek benne.\n\n---\n\n## Külső ügynökök\n\nEgyéni ügynökdefiníciók betöltése külső könyvtárakból.\n```json\n{\n \"externalAgents\": {\n \"enabled\": true,\n \"paths\": [\"~/.autohand/agents\", \"/team/shared/agents\"]\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | -------- | ------- | -------------------------------- |\n| `enabled` | logikai | `false` | Külső ügynök betöltésének engedélyezése |\n| `paths` | string[] | `[]` | Könyvtárak az ügynökök betöltéséhez |\n\n---\n\n## Skills System\n\nA készségek olyan utasításcsomagok, amelyek speciális utasításokat adnak az AI-ügynöknek. Úgy működnek, mint az igény szerinti `AGENTS.md` fájlok, amelyek bizonyos feladatokhoz aktiválhatók.\n\n### Készségek felfedező helyek\n\nA készségek több helyről fedezhetők fel, és a későbbi források élveznek elsőbbséget:\n\n| Helyszín | Forrásazonosító | Leírás |\n| ----------------------------------------- | ------------------- | ------------------------------------------ |\n| `~/.codex/skills/**/SKILL.md` | `codex-user` | Felhasználói szintű Codex készségek (rekurzív) |\n| `~/.claude/skills/*/SKILL.md` | `claude-user` | Felhasználói szintű Claude-készségek (egy szint) |\n| `~/.autohand/skills/**/SKILL.md` | `autohand-user` | Felhasználói szintű Autohand készségek (rekurzív) |\n| `<project>/.claude/skills/*/SKILL.md` | `claude-project` | Projektszintű Claude-készségek (egy szint) |\n| `<project>/.autohand/skills/**/SKILL.md` | `autohand-project` | Projekt szintű Autohand készségek (rekurzív) |\n\n### Automatikus másolási viselkedés\n\nA Codex vagy Claude helyekről felfedezett készségek automatikusan átmásolódnak a megfelelő Autohand helyre:\n\n- `~/.codex/skills/` és `~/.claude/skills/` → `~/.autohand/skills/`\n- `<project>/.claude/skills/` → `<project>/.autohand/skills/`\n\nA Autohand helyeken meglévő készségek soha nem íródnak felül.\n\n### SKILL.md formátum\n\nA YAML frontmatter-t használó készségek, majd a leértékelési tartalom:\n```markdown\n---\nname: my-skill-name\ndescription: Brief description of the skill\nlicense: MIT\ncompatibility: Works with Node.js 18+\nallowed-tools: read_file write_file run_command\nmetadata:\n author: your-name\n version: \"1.0.0\"\n---\n\n# My Skill\n\nDetailed instructions for the AI agent...\n```\n| Mező | Kötelező | Max hossz | Leírás |\n| ---------------- | -------- | ---------- | ------------------------------------------- |\n| `name` | Igen | 64 karakter | Kisbetűs alfanumerikus, csak kötőjelekkel |\n| `description` | Igen | 1024 karakter | A készség rövid leírása |\n| `license` | Nem | - | Licencazonosító (pl. MIT, Apache-2.0) |\n| `compatibility` | Nem | 500 karakter | Kompatibilitási megjegyzések |\n| `allowed-tools` | Nem | - | Az engedélyezett eszközök szóközzel tagolt listája |\n| `metadata` | Nem | - | További kulcs-érték metaadatok |\n\n### Beviteli előtagok\n\nA Autohand támogatja a speciális előtagokat a beviteli promptban:\n\n| Előtag | Leírás | Példa |\n| ------ | ------------------------------- | ---------------------------------- |\n| `/` | Slash parancsok | `/help`, `/model`, `/quit`, `/exit` |\n| `@` | Fájl említések (automatikus kiegészítés) | `@src/index.ts` |\n| `$` | Szakértelem említése (automatikus kiegészítés) | `$frontend-design`, `$code-review` |\n| `!` | A terminálparancsok közvetlen futtatása | `! git status`, `! ls -la` |\n\n**Képességmegemlítések (`$`):**\n\n- Írja be a következőt: `$`, majd karaktereket az automatikus kiegészítéssel elérhető készségek megtekintéséhez\n- A Tab elfogadja a felső javaslatot (pl. `$frontend-design`)\n- A készségek a következőből fedezhetők fel: `~/.autohand/skills/` és `<project>/.autohand/skills/`\n- Az aktivált készségek a prompthoz vannak csatolva, mint speciális utasítások az aktuális munkamenethez\n- Az előnézeti panel a készség metaadatait mutatja (név, leírás, aktiválási állapot)\n\n**Shell-parancsok (`!`):**\n\n- A parancsok az aktuális munkakönyvtárban futnak\n- A kimenet közvetlenül a terminálon jelenik meg\n- Nem megy az LLM-be\n- 30 másodperces időtúllépés\n- A végrehajtás után visszatér a prompthoz\n\n### Slash parancsok\n\n#### `/skills` - Csomagkezelő\n\n| Parancs | Leírás |\n| -------------------------------- | ------------------------------------------- |\n| `/skills` | Sorolja fel az összes elérhető készséget |\n| `/skills use <name>` | Képesség aktiválása az aktuális munkamenethez |\n| `/skills deactivate <name>` | Készség deaktiválása |\n| `/skills info <name>` | Részletes képzettségi információk megjelenítése |\n| `/skills install` | Tallózás és telepítés a közösségi nyilvántartásból |\n| `/skills install @<slug>` | Telepítsen közösségi készségeket a slug |\n| `/skills search <query>` | Keresés a közösségi készségek nyilvántartásában |\n| `/skills trending` | Felkapott közösségi készségek megjelenítése |\n| `/skills remove <slug>` | Közösségi készség eltávolítása |\n| `/skills new` | Hozzon létre új készségeket interaktívan |\n| `/skills feedback <slug> <1-5>` | Értékeljen egy közösségi képességet |\n\n#### `/learn` - LLM-alapú Skill Advisor\n\n| Parancs | Leírás |\n| ---------------- | ---------------------------------------------------------------- |\n| `/learn` | A projekt elemzése és készségek ajánlása (gyors szkennelés) |\n| `/learn deep` | Mélyszkennelési projekt (forrásfájlokat olvas) a célzottabb eredmények érdekében |\n| `/learn update` | A projekt újraelemzése és az LLM által generált elavult készségek regenerálása |\n\nA `/learn` kétfázisú LLM-folyamatot használ:\n\n1. **1. fázis – Elemzés + Rangsorolás + Ellenőrzés**: Ellenőrzi a projekt szerkezetét, auditálja a telepített készségeket redundanciák/konfliktusok szempontjából, és rangsorolja a közösségi készségeket relevancia szerint (0-100).\n2. **2. fázis – Létrehozás** (feltételes): Ha egyik közösségi képesség sem ér el 60 feletti pontszámot, felajánlja a projektjéhez szabott egyéni képesség létrehozását.\nA generált készségek metaadatokat (`agentskill-source: llm-generated`, `agentskill-project-hash`) tartalmaznak, így a `/learn update` képes észlelni, ha megváltozik a kódbázis, és újra előállíthatja az elavult készségeket.\n\n### Automatikus készséggenerálás (`--auto-skill`)\n\nA `--auto-skill` CLI jelző készségeket generál az interaktív tanácsadói folyamat nélkül:\n```bash\nautohand --auto-skill\n```\nEz:\n\n1. Elemezze a projekt felépítését (package.json, követelmények.txt stb.)\n2. Nyelvek, keretrendszerek és minták észlelése\n3. Generáljon 3 releváns készséget az LLM segítségével\n4. Mentse el a készségeket ide: `<project>/.autohand/skills/`\n\nA célzottabb, interaktívabb élmény érdekében használja inkább a `/learn` kódot egy munkameneten belül.\n\nAz észlelt minták a következők:\n\n- **Nyelvek**: TypeScript, JavaScript, Python, Rust, Go\n- **Frameworks**: React, Next.js, Vue, Express, Flask, Django\n- **Minták**: CLI eszközök, tesztelés, monorepo, Docker, CI/CD\n\n---\n\n## API beállítások\n\nBackend API konfiguráció a csapatfunkciókhoz.\n```json\n{\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\",\n \"companySecret\": \"sk-team-xxx\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------------------------- | ---------------------------------------- |\n| `baseUrl` | húr | `https://api.autohand.ai` | API-végpont |\n| `companySecret` | húr | - | Csapat/vállalati titok a megosztott funkciókhoz |\n\nKörnyezeti változókkal is beállítható:\n\n- `AUTOHAND_API_URL` → `api.baseUrl`\n- `AUTOHAND_SECRET` → `api.companySecret`\n\n---\n\n## Hitelesítési beállítások\n\nHitelesítés és felhasználói munkamenet konfigurálása.\n```json\n{\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\",\n \"avatar\": \"https://example.com/avatar.png\"\n },\n \"expiresAt\": \"2025-12-31T23:59:59Z\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------- | ------ | ------- | --------------------------------------------- |\n| `token` | húr | - | Hitelesítési token API-hozzáféréshez |\n| `user` | tárgy | - | Hitelesített felhasználói adatok |\n| `user.id` | húr | - | Felhasználói azonosító |\n| `user.email` | húr | - | Felhasználó e-mail címe |\n| `user.name` | húr | - | Felhasználó megjelenített név |\n| `user.avatar` | húr | - | Felhasználói avatar URL-je (nem kötelező) |\n| `expiresAt` | húr | - | Token lejárati időbélyegzője (ISO 8601 formátum) |\n\n---\n\n## Közösségi készségek beállításai\n\nKonfiguráció a közösségi készségek felfedezéséhez és kezeléséhez.\n```json\n{\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------------------------- | ------- | ------- | -------------------------------------------------------------- |\n| `enabled` | logikai | `true` | Közösségi készségek funkcióinak engedélyezése |\n| `showSuggestionsOnStartup` | logikai | `true` | Képességi javaslatok megjelenítése indításkor, ha nem állnak rendelkezésre szállítói ismeretek |\n| `autoBackup` | logikai | `true` | A felfedezett szállítói ismeretek automatikus biztonsági mentése API |\n\n---\n\n## Megosztási beállítások\n\nKonfiguráció a munkamenet megosztásához a `/share` paranccsal. A munkamenetek a [autohand.link](https://autohand.link) címen találhatók.\n```json\n{\n \"share\": {\n \"enabled\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ------------------------------------ |\n| `enabled` | logikai | `true` | A `/share` parancs engedélyezése/letiltása |\n\n### YAML formátum\n```yaml\nshare:\n enabled: true\n```\n### Munkamenet-megosztás letiltása\n\nHa biztonsági vagy adatvédelmi okokból ki szeretné kapcsolni a munkamenet-megosztást:\n```json\n{\n \"share\": {\n \"enabled\": false\n }\n}\n```\nHa le van tiltva, a `/share` futtatásakor a következő jelenik meg:\n```\nSession sharing is disabled.\nTo enable, set share.enabled: true in your config file.\n```\n---\n\n## Beállítások szinkronizálása\n\nA Autohand szinkronizálhatja a konfigurációt az eszközök között a bejelentkezett felhasználók számára. A beállításokat a Cloudflare R2 biztonságosan tárolja, és a feltöltés előtt titkosítja.\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"exclude\": [],\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------------- | -------- | ---------------- | --------------------------------------------------- |\n| `enabled` | logikai | `true` (naplózva) | Beállítások szinkronizálásának engedélyezése/letiltása |\n| `interval` | szám | `300000` | Szinkronizálási idő ezredmásodpercben (alapértelmezett: 5 perc) |\n| `exclude` | string[] | `[]` | Globális minták a szinkronizálásból kizárandó |\n| `includeTelemetry` | logikai | `false` | Telemetriai adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n| `includeFeedback` | logikai | `false` | Visszajelzési adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n\n### CLI zászló\n```bash\n# Disable sync for this session\nautohand --sync-settings=false\n\n# Enable sync (default for logged users)\nautohand --sync-settings\n```\n### Mi lesz szinkronizálva\n\nAlapértelmezés szerint ezek az elemek szinkronizálva vannak a bejelentkezett felhasználók számára:\n\n- **Konfiguráció** (`config.json`) - Az API-kulcsok a feltöltés előtt titkosítva vannak\n- **Egyéni ügynökök** (`agents/`)\n- **Közösségi készségek** (`community-skills/`)\n- **Felhasználói akasztók** (`hooks/`)\n- **Memória** (`memory/`)\n- **Projektismeret** (`projects/`)\n- **Munkamenetek előzményei** (`sessions/`)\n- **Megosztott tartalom** (`share/`)\n- **Egyéni készségek** (`skills/`)\n\n### Mi nem szinkronizál (alapértelmezés szerint)\n\n- **Eszközazonosító** (`device-id`) - Eszközönként egyedi\n- **Hibanaplók** (`error.log`) - Csak helyi\n- **Verziógyorsítótár** (`version-*.json`) - Helyi gyorsítótár fájlok\n\n### Beleegyezés alapú szinkronizálás\n\nEzek az elemek kifejezett feliratkozást igényelnek a konfigurációban:\n\n- **Telemetriai adatok** - Állítsa be a `sync.includeTelemetry: true` szinkronizálást\n- **Visszajelzési adatok** - Állítsa be a `sync.includeFeedback: true` szinkronizálását\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"includeTelemetry\": true,\n \"includeFeedback\": true\n }\n}\n```\n### Konfliktusmegoldás\n\nHa ütközések lépnek fel (ugyanaz a fájl több eszközön módosítva), a **felhőverzió nyer**. Ez biztosítja a következetességet az új eszközökön való bejelentkezéskor.\n\n### Biztonság\n\nA `config.json` API-kulcsait és egyéb bizalmas adatait a rendszer a hitelesítési token segítségével titkosítja a feltöltés előtt. Csak az Ön hitelesítő adataival lehet visszafejteni.\n\nA távoli fájlnevek csak relatív POSIX-útvonalként fogadhatók el az engedélyezett szinkronizálási kategóriákon belül. A szinkronizálás elutasítja a könyvtárbejárást, az abszolút vagy Windows-stílusú útvonalakat, az ismétlődő vagy üres szegmenseket, valamint az engedélyezett gyökéren kívülre mutató szimbolikus hivatkozásokkal átirányított célokat.\n\nAz alkalmazás bejelentkezési tokenje az `Authorization` fejlécben csak olyan átviteli URL-ekhez kerül elküldésre, amelyek eredete megegyezik a beállított szinkronizálási API eredetével. A más eredetű, előre aláírt HTTPS URL-ek soha nem kapják meg ezt a tokent; a nem biztonságos vagy hibás más eredetű URL-ek elutasításra kerülnek.\n\n**Mi van titkosítva:**\n\n- `apiKey` nevű mezők\n- `Key`, `Token`, `Secret` végződő mezők\n- A `password` mező\n\n### Hogyan működik\n\n1. **Indításkor**: Ha be van jelentkezve, a szinkronizálási szolgáltatás automatikusan elindul\n2. **5 percenként**: A beállításokat összehasonlítja a felhőalapú tárolással\n3. **A felhő nyer**: A távoli módosítások letöltése először történik meg\n4. **Helyi feltöltések**: Új helyi módosítások kerülnek feltöltésre\n5. **Kilépéskor**: A szinkronizálási szolgáltatás kecsesen leáll\n\n### Fájlok kizárása\n\nKizárhat bizonyos fájlokat vagy mintákat a szinkronizálásból:\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"exclude\": [\"custom-local-config.json\", \"temp/*\"]\n }\n}\n```\n### YAML formátum\n```yaml\nsync:\n enabled: true\n interval: 300000\n exclude: []\n includeTelemetry: false\n includeFeedback: false\n```\n---\n\n## MCP beállítások\n\nÁllítsa be az MCP-kiszolgálókat (Model Context Protocol) a Autohand külső eszközökkel történő bővítésére.\n```json\n{\n \"mcp\": {\n \"enabled\": true,\n \"servers\": [\n {\n \"name\": \"filesystem\",\n \"transport\": \"stdio\",\n \"command\": \"npx\",\n \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/tmp\"],\n \"env\": {},\n \"autoConnect\": true\n },\n {\n \"name\": \"context7\",\n \"transport\": \"http\",\n \"url\": \"https://mcp.context7.com/mcp\",\n \"headers\": {\n \"CONTEXT7_API_KEY\": \"ctx7sk-your-api-key\"\n },\n \"autoConnect\": true\n }\n ]\n }\n}\n```\n### `mcp.enabled`\n\n- **Típus**: `boolean`\n- **Alapértelmezett**: `true`\n- **Leírás**: Az összes MCP-támogatás engedélyezése vagy letiltása. Ha `false`, akkor az indításkor nem csatlakozik szerver, és az MCP-eszközök nem érhetők el.\n\n### `mcp.servers`\n\n- **Típus**: `McpServerConfigEntry[]`\n- **Alapértelmezett**: `[]`\n- **Leírás**: MCP szerver konfigurációk tömbje.\n\n### Szerver beviteli mezői\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | --------------------------------- | -------------- | ------- | -------------------------------------------------------------- |\n| `name` | `string` | Igen | - | Egyedi szerverazonosító |\n| `transport` | `\"stdio\"` \\| `\"sse\"` \\| `\"http\"` | Igen | - | Szállítás típusa |\n| `command` | `string` | Igen (stdio) | - | Parancs a szerverfolyamat elindításához |\n| `args` | `string[]` | Nem | `[]` | Érvek a parancs mellett |\n| `url` | `string` | Igen (sse/http) | - | Szervervégpont URL |\n| `headers` | `Record<string, string>` | Nem | `{}` | Egyéni HTTP-fejlécek http/sse szállításhoz (pl. hitelesítési tokenek) |\n| `env` | `Record<string, string>` | Nem | `{}` | A kiszolgálónak átadott környezeti változók |\n| `autoConnect` | `boolean` | Nem | `true` | Automatikus csatlakozás indításkor |\n\n> A szerverek aszinkron módon csatlakoznak a háttérben az indítás során anélkül, hogy blokkolnák a promptot. A `/mcp` segítségével interaktívan kezelheti a szervereket, vagy a `/mcp add` segítségével böngészhet a közösségi nyilvántartásban, vagy adhat hozzá egyéni szervereket.\n\n> A teljes MCP-dokumentációért lásd: [docs/mcp.md](mcp.md).\n\n---\n\n## Hooks beállítások\n\nKonfiguráció életciklus-horogokhoz, amelyek shell-parancsokat futtatnak az ügynökeseményeken. A részletekért lásd a [Hooks dokumentációt] (./hooks.md).\n```json\n{\n \"hooks\": {\n \"enabled\": true,\n \"hooks\": [\n {\n \"event\": \"pre-tool\",\n \"command\": \"echo \\\"Running tool: $HOOK_TOOL\\\" >> ~/.autohand/hooks.log\",\n \"description\": \"Log all tool executions\",\n \"enabled\": true\n },\n {\n \"event\": \"file-modified\",\n \"command\": \"./scripts/on-file-change.sh\",\n \"description\": \"Custom file change handler\",\n \"filter\": { \"path\": [\"src/**/*.ts\"] }\n },\n {\n \"event\": \"post-response\",\n \"command\": \"curl -X POST https://api.example.com/webhook -d '{\\\"tokens\\\": $HOOK_TOKENS}'\",\n \"description\": \"Track token usage\",\n \"async\": true\n }\n ]\n }\n}\n```\n### `hooks`\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ---------------------------------- |\n| `enabled` | logikai | `true` | Az összes hook engedélyezése/letiltása globálisan |\n| `hooks` | tömb | `[]` | Horogdefiníciók tömbje |\n\n### Hook meghatározása\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | ------- | -------- | ------- | --------------------------------- |\n| `event` | húr | Igen | - | Bekapcsolandó esemény |\n| `command` | húr | Igen | - | Shell parancs végrehajtásához |\n| `description` | húr | Nem | - | A `/hooks` kijelző leírása |\n| `enabled` | logikai | Nem | `true` | Aktív-e a horog |\n| `timeout` | szám | Nem | `5000` | Időtúllépés ezredmásodpercben |\n| `async` | logikai | Nem | `false` | Futtasson blokkolás nélkül |\n| `filter` | tárgy | Nem | - | Szűrés szerszám vagy útvonal szerint |\n\n### Hook események\n\n| Esemény | Amikor kirúgták |\n| ---------------- | -------------------------------------- |\n| `pre-tool` | Mielőtt bármilyen eszköz végrehajtaná |\n| `post-tool` | A szerszám befejezése után |\n| `file-modified` | A fájl létrehozásakor/módosításakor/törlésekor |\n| `pre-prompt` | Mielőtt elküldené az LLM-nek |\n| `post-response` | Miután az LLM válaszol |\n| `session-error` | Hiba esetén |\n\n### Környezeti változók\n\nAmikor a hook fut, ezek a környezeti változók állnak rendelkezésre:\n\n| Változó | Leírás |\n| ----------------- | ---------------------------- |\n| `HOOK_EVENT` | Esemény neve |\n| `HOOK_WORKSPACE` | Munkaterület gyökérútvonala |\n| `HOOK_TOOL` | Szerszámnév (szerszámesemények) |\n| `HOOK_ARGS` | JSON-kódolt eszköz args |\n| `HOOK_SUCCESS` | igaz/hamis (utóeszköz) |\n| `HOOK_PATH` | Fájl elérési útja (fájlmódosított) |\n| `HOOK_TOKENS` | Felhasznált tokenek (válasz után) |\n\n---\n\n## Chrome-bővítmény beállításai\n\nIrányítsd a Autohand Chrome-bővítmény integrációját. Tekintse meg a teljes útmutatót: [Autohand Chrome-ban](./autohand-in-chrome.md).\n```json\n{\n \"chrome\": {\n \"extensionId\": \"your-extension-id\",\n \"enabledByDefault\": false,\n \"browser\": \"auto\",\n \"userDataDir\": \"/path/to/chrome/user-data\",\n \"profileDirectory\": \"Default\",\n \"installUrl\": \"https://autohand.ai/chrome\"\n }\n}\n```\n| Kulcs | Típus | Alapértelmezett | Leírás |\n| ------------------- | --------- | -------- | -------------------------------------------------------------------------- |\n| `extensionId` | `string` | — | Telepített Chrome-bővítményazonosító a közvetlen átadáshoz |\n| `enabledByDefault` | `boolean` | `false` | A böngészőhíd automatikus indítása a CLI |-vel\n| `browser` | `string` | `\"auto\"` | Előnyben részesített Chromium böngésző: `auto`, `chrome`, `chromium`, `brave`, `edge` |\n| `userDataDir` | `string` | — | Böngésző felhasználói adatok könyvtára a megfelelő profil megcélzásához |\n| `profileDirectory` | `string` | — | Böngészőprofil-könyvtár neve (pl. `\"Default\"`, `\"Profile 1\"`) |\n| `installUrl` | `string` | — | Tartalék URL, ha a bővítményazonosító nincs konfigurálva |\n\n### CLI zászlók\n```bash\nautohand --browser # Start with browser bridge enabled\nautohand --no-browser # Start with browser bridge disabled\n```\n### Slash parancsok\n```\n/browser # Open browser integration panel\n/browser disconnect # Close the browser bridge connection\n```\n---\n\n## Teljes példa\n\n### JSON formátum (`~/.autohand/config.json`)\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\"\n },\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"model\": \"llama3.2\"\n },\n \"workspace\": {\n \"defaultRoot\": \"~/projects\",\n \"allowDangerousOps\": false\n },\n \"ui\": {\n \"theme\": \"dark\",\n \"autoConfirm\": false,\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n },\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n },\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\"run_command:npm *\", \"run_command:bun *\"],\n \"blacklist\": [\"run_command:rm -rf /\"],\n \"rememberSession\": true\n },\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n },\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true\n },\n \"externalAgents\": {\n \"enabled\": false,\n \"paths\": []\n },\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\"\n },\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\"\n }\n },\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n },\n \"share\": {\n \"enabled\": true\n },\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n### YAML formátum (`~/.autohand/config.yaml`)\n```yaml\nprovider: openrouter\n\nopenrouter:\n apiKey: sk-or-v1-your-key-here\n baseUrl: https://openrouter.ai/api/v1\n model: your-modelcard-id-here\n\nollama:\n baseUrl: http://localhost:11434\n model: llama3.2\n\nworkspace:\n defaultRoot: ~/projects\n allowDangerousOps: false\n\nui:\n theme: dark\n autoConfirm: false\n showCompletionNotification: true\n showThinking: true\n terminalBell: true\n checkForUpdates: true\n updateCheckInterval: 24\n\nagent:\n maxIterations: 100\n enableRequestQueue: true\n toolSelectionCache: true\n idleLogoutEnabled: true\n idleTimeoutMs: 3600000\n debug: false\n\npermissions:\n mode: interactive\n whitelist:\n - \"run_command:npm *\"\n - \"run_command:bun *\"\n blacklist:\n - \"run_command:rm -rf /\"\n rememberSession: true\n\nnetwork:\n maxRetries: 3\n timeout: 30000\n retryDelay: 1000\n\ntelemetry:\n enabled: false\n apiBaseUrl: https://api.autohand.ai\n batchSize: 20\n flushIntervalMs: 60000\n maxQueueSize: 500\n maxRetries: 3\n enableSessionSync: true\n\nexternalAgents:\n enabled: false\n paths: []\n\napi:\n baseUrl: https://api.autohand.ai\n\nauth:\n token: your-auth-token\n user:\n id: user-id\n email: user@example.com\n name: User Name\n\ncommunitySkills:\n enabled: true\n showSuggestionsOnStartup: true\n autoBackup: true\n\nshare:\n enabled: true\n\nsync:\n enabled: true\n interval: 300000\n includeTelemetry: false\n includeFeedback: false\n```\n### TOML formátum (`~/.autohand/config.toml`)\n```toml\nprovider = \"openrouter\"\n\n[openrouter]\napiKey = \"sk-or-v1-your-key-here\"\nbaseUrl = \"https://openrouter.ai/api/v1\"\nmodel = \"your-modelcard-id-here\"\n\n[ollama]\nbaseUrl = \"http://localhost:11434\"\nmodel = \"llama3.2\"\n\n[workspace]\ndefaultRoot = \"~/projects\"\nallowDangerousOps = false\n\n[ui]\ntheme = \"dark\"\nautoConfirm = false\nshowCompletionNotification = true\nshowThinking = true\nterminalBell = true\ncheckForUpdates = true\nupdateCheckInterval = 24\n\n[ui.customThemes.company.vars]\nbrand = \"#7c3aed\"\nbrandSoft = \"#a78bfa\"\n\n[ui.customThemes.company.colors]\naccent = \"brand\"\nborderAccent = \"brandSoft\"\nmdHeading = \"brand\"\n\n[agent]\nmaxIterations = 100\nenableRequestQueue = true\ntoolSelectionCache = true\nidleLogoutEnabled = true\nidleTimeoutMs = 3600000\ndebug = false\n\n[permissions]\nmode = \"interactive\"\nwhitelist = [\"run_command:npm *\", \"run_command:bun *\"]\nblacklist = [\"run_command:rm -rf /\"]\nrememberSession = true\n```\n---\n\n## Címtárszerkezet\n\nA Autohand az adatokat `~/.autohand/` (vagy `$AUTOHAND_HOME`) kódban tárolja:\n```\n~/.autohand/\n├── config.json # Main configuration\n├── config.toml # Alternative TOML config\n├── config.yaml # Alternative YAML config\n├── device-id # Unique device identifier\n├── error.log # Error log\n├── feedback.log # Feedback submissions\n├── sessions/ # Session history\n├── projects/ # Project knowledge base\n├── memory/ # User-level memory\n├── commands/ # Custom commands\n├── agents/ # Agent definitions\n├── tools/ # Custom meta-tools\n├── feedback/ # Feedback state\n└── telemetry/ # Telemetry data\n ├── queue.json\n └── session-sync-queue.json\n```\n**Projektszintű könyvtár** (a munkaterület gyökérkönyvtárában):\n```\n<project>/.autohand/\n├── settings.local.json # Local project permissions (gitignore this)\n├── memory/ # Project-specific memory\n├── skills/ # Project-specific skills\n└── tools/ # Project-specific meta-tools\n```\n---\n\n## CLI-jelzők (konfig felülbírálása)\n\nEzek a jelzők felülírják a konfigurációs fájl beállításait:\n\n### Alapjelzők\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `-v, --version` | Az aktuális verzió kiadása |\n| `-p, --prompt [text]` | Futtasson egyetlen utasítást parancs módban |\n| `--path <path>` | Munkaterület gyökér felülbírálása |\n| `--config <path>` | Egyéni konfigurációs fájl használata |\n| `--model <model>` | Modell felülírása |\n| `--temperature <n>` | Beállított mintavételi hőmérséklet (0-1) |\n| `--thinking [level]` | Gondolkodási/érvelési mélység beállítása (nincs, normál, kiterjesztett) |\n| `-y, --yes` | Automatikus megerősítési kérések |\n| `--dry-run` | Előnézet végrehajtás nélkül |\n| `-d, --debug` | Részletes hibakeresési kimenet engedélyezése |\n| `--bare` | Minimális explicit mód; beállítja a `AUTOHAND_CODE_SIMPLE=1` értéket és letiltja a perjel parancsokat |\n\n### Engedélyek és biztonság\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--unrestricted` | Nincs jóváhagyási felszólítás |\n| `--restricted` | Veszélyes műveletek megtagadása |\n| `--permissions` | Jelenítse meg az aktuális engedélybeállításokat, és lépjen ki |\n| `--no-idle-logout` | A hitelesített tétlen kijelentkezés letiltása a hosszan futó ügynöki munkamenetekhez |\n| `--yolo [pattern]` | Eszközhívások megfelelő minta automatikus jóváhagyása (pl. `allow:read,write` vagy `deny:delete`) |\n| `--timeout <seconds>` | Időtúllépés másodpercben az automatikus jóváhagyási módhoz |\n\n### Git & Worktree\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--worktree [name]` | Munkamenet futtatása elszigetelt git-munkafán (opcionális munkafa/ág neve) |\n| `--tmux` | Indítás egy dedikált tmux munkamenetben (az `--worktree`-t jelenti; nem használható a `--no-worktree` kóddal) |\n| `--no-worktree` | A git munkafa elkülönítésének letiltása automatikus módban |\n| `-c, --auto-commit` | Változások automatikus véglegesítése a feladatok elvégzése után |\n| `--patch` | Git javítás generálása változtatások alkalmazása nélkül |\n| `--output <file>` | A javítás kimeneti fájlja (a --patch-el együtt használatos) |\n\n### Automatikus mód\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-mode [prompt]` | Engedélyezze az interaktív automatikus módot, vagy indítson önálló hurkot egy soron belüli feladattal |\n| `--max-iterations <n>` | Maximális automatikus módú iterációk (alapértelmezett: 50) |\n| `--completion-promise <text>` | Befejezésjelző szövege (alapértelmezett: \"KÉSZ\") |\n| `--checkpoint-interval <n>` | A Git minden N iterációt végrehajt (alapértelmezett: 5) |\n| `--max-runtime <m>` | Maximális futási idő percekben (alapértelmezett: 120) |\n| `--max-cost <d>` | Maximális API költség dollárban (alapértelmezett: 10) |\n| `--interactive-on-complete` | Az automatikus mód vége után adja át közvetlenül az interaktív módba (csak TTY) |\n\n### Készségek és tanulás\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-skill` | Készségek automatikus generálása projektelemzés alapján (lásd még: `/learn` az interaktív tanácsadóhoz) |\n| `--learn` | Futtassa a `/learn` készségtanácsadót nem interaktív módon (a javasolt készségek elemzése és telepítése) |\n| `--learn-update` | A projekt újraelemzése és az LLM által generált elavult készségek nem interaktív módon történő regenerálása |\n| `--skill-install [name]` | Telepítsen egy közösségi képességet (megnyitja a böngészőt, ha nincs megadva név) |\n| `--project` | A készség telepítése projektszintre (a --skill-install funkcióval) |\n\n### Hitelesítés és fiók\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--login` | Jelentkezzen be Autohand-fiókjába |\n| `--logout` | Jelentkezzen ki Autohand-fiókjából |\n| `--sync-settings` | A beállítások szinkronizálásának engedélyezése/letiltása (alapértelmezett: igaz a bejelentkezett felhasználók számára) |\n\n### Beállítás és információ\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--setup` | Futtassa a telepítővarázslót a Autohand |\n| `--about` | Információk megjelenítése a Autohand-ról (verzió, linkek, hozzájárulási információk) |\n| `--feedback` | Visszajelzés küldése a Autohand csapatának |\n| `--settings` | A Autohand beállításainak konfigurálása (ugyanaz, mint a `/settings` interaktív módban) |\n\n### Munkaterület és könyvtárak\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--add-dir <path...>` | További könyvtárak hozzáadása a munkaterület hatóköréhez (többször is használható) |\n\n### Futtatási módok\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--mode <mode>` | Futtatási mód: interaktív (alapértelmezett), rpc vagy acp |\n| `--acp` | A --mode acp rövidítése (Agent Client Protocol over stdio) |\n| `--teammate-mode <mode>` | Csapat megjelenítési mód: automatikus, folyamatban lévő vagy tmux |\n\n### UI és nyelv\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--display-language <locale>` | Megjelenítési nyelv beállítása (pl. en, id, zh-cn, fr, de, ja) |\n| `--search-engine <provider>` | Internetes keresőszolgáltató beállítása (google, brave, duckduckgo, párhuzamos) |\n| `--cc, --context-compact` | Környezettömörítés engedélyezése (alapértelmezett: be) |\n| `--no-cc, --no-context-compact` | Kontextustömörítés letiltása |\n\n### Böngészőintegráció\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--browser` | A böngészőintegráció engedélyezése (ugyanaz, mint `/browser`) |\n| `--no-browser` | A böngészőintegráció letiltása |\n\n### Rendszerprompt\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-sys-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt-file <path>` | Cserélje le a teljes rendszerprompt a fájltartalommal |\n| `--append-system-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n### Kísérletváltási parancsok\n\n| Parancs | Leírás |\n| -------------------------------------- | ------------------------------------------------- |\n| `autohand experiments list` | Sorolja fel a helyi és távoli funkciók azonosítóit, a forrást, az életciklus szakaszt és az állapotot |\n| `autohand experiments status <feature>` | Mutasson egy szolgáltatáskapcsolót, konfigurációs elérési utat vagy távoli metaadatokat és állapotot |\n| `autohand experiments refresh` | Távoli funkciójelzők letöltése a Autohand API-ból |\n| `autohand experiments enable <feature>` | Konfigurációval támogatott szolgáltatáskapcsoló engedélyezése |\n| `autohand experiments disable <feature>` | A konfigurációval támogatott szolgáltatáskapcsoló letiltása |\n\nA távoli funkciójelzők lekérése innen: `/v1/feature-flags/evaluate`, gyorsítótár a `~/.autohand/feature-flags.json` címen történik, és az API által biztosított TTL lejárta után frissül. A `features.environment` segítségével válassza ki a távoli jelzőkörnyezetet, a `features.remoteOverrides` segítségével pedig a felhasználó által felülbírálható távoli jelzők helyi letiltásához.\n\nA `usage_v2` egy kísérleti funkciókapcsoló a `/usage` irányítópulthoz és a továbbfejlesztett `/status` Használat laphoz. Engedélyezze a következővel: `autohand experiments enable usage_v2`.\n\nA `token_usage_status` egy kísérleti funkciókapcsoló (konfigurációs útvonal `features.tokenUsageStatus`, alapértelmezés szerint kikapcsolva), amely a valós idejű tokenhasználatot mutatja a működő állapotsorban – kumulatív tokenek felfelé (`↑`) és lefelé (`↓`) plusz g kontextusban, cc. `↑15.7k ↓3.2k · context: 6.0% (15.7k/262.1k)`. A kontextusablak modellenként van feloldva az összes szolgáltatónál. Engedélyezze a következővel: `autohand experiments enable token_usage_status`.\n\n---\n\n## Slash parancsok\n\nAz Autohand perjel parancsok gazdag készletét kínálja interaktív használatra. A javaslatok megtekintéséhez írja be a `/` kódot a REPL-be.\n\n### Munkamenet-kezelés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/quit` | Kilépés az aktuális munkamenetből |\n| `/exit` | Kilépés az aktuális munkamenetből |\n| `/new` | Új beszélgetés indítása (memóriakivonattal) |\n| `/clear` | Tiszta beszélgetés automatikus memóriakivonással |\n| `/session` | Az aktuális munkamenet részleteinek megjelenítése |\n| `/sessions` | Korábbi munkamenetek listája |\n| `/resume` | Előző munkamenet folytatása |\n| `/history` | A munkamenet-előzmények böngészése oldalszámozással |\n| `/undo` | Git módosítások és utolsó forduló visszaállítása |\n| `/export` | Munkamenet exportálása markdown/JSON/HTML |\n| `/share` | Aktuális munkamenet megosztása |\n| `/status` | Munkamenet állapotának megjelenítése |\n| `/usage` | Modell, szolgáltató, kontextus és használati korlátok megjelenítése |\n\n### Modell és szolgáltató\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/model` | LLM-modell váltása vagy konfigurálása |\n| `/cc` | Kézi környezet tömörítése |\n\n### Projektbeállítás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/init` | Hozzon létre `AGENTS.md` fájlt az aktuális könyvtárban |\n| `/setup` | Futtassa a telepítővarázslót a Autohand | konfigurálásához\n| `/add-dir` | Könyvtárak hozzáadása a munkaterület hatóköréhez |\n\n### Ügynökök és csapatok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/agents` | Az elérhető alügynökök listája |\n| `/agents-new` | Hozzon létre egy új ügynököt a varázslón keresztül |\n| `/squad` | Nyissa meg/kezelje az önálló Autohand Squad futtatókörnyezetet |\n| `/team` | Csapat irányítása párhuzamos munkához |\n| `/tasks` | Feladatok kezelése csapatban |\n| `/message` | Üzenet küldése csapattársnak |\n\n### Készségek\n\n| Parancs | Leírás |\n| ----------------- | --------------------------------------------------- |\n| `/skills` | Készségek listája és kezelése |\n| `/skills-new` | Új készség létrehozása |\n| `/learn` | Tanulja meg és telepítse az ajánlott készségeket |\n\n### Memória és beállítások\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/memory` | Tárolt emlékek megtekintése és kezelése |\n| `/settings` | A Autohand beállításainak konfigurálása |\n| `/statusline` | A szerző állapotsor mezőinek konfigurálása |\n| `/experiments` | Kísérleti jellemzők kapcsolóinak váltása |\n| `/sync` | Beállítások szinkronizálása eszközök között |\n| `/import` | Importálhat munkameneteket, beállításokat, MCP-t, memóriát, készségeket és hook-okat a támogatott ügynökökről |\n\n### Engedélyek és akasztók\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/permissions`| Szerszámengedélyek kezelése |\n| `/hooks` | Életciklus-horogok kezelése |\n\n### Hitelesítés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/login` | Hitelesítés a Autohand API-val |\n| `/logout` | Kijelentkezés a Autohand fiókból |\n\n### Eszközök és segédprogramok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/search` | Keresés az interneten |\n| `/formatters` | Az elérhető kódformázók listája |\n| `/lint` | Sorolja fel a rendelkezésre álló kódsorokat |\n| `/completion` | Shell befejező szkriptek generálása |\n| `/plan` | Megvalósítási terv létrehozása |\n| `/review` | Kódellenőrzés végrehajtása |\n| `/pr-review` | Lehívási kérelem áttekintése |\n\n### IDE integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/ide` | A futó IDE észlelése és csatlakozása |\n\n### MCP (Model Context Protocol)\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/mcp` | Interaktív MCP-kiszolgálókezelő |\n\n### Automatizálás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/automode` | Indítsa el az autonóm kódolási módot |\n| `/repeat` | Ismétlődő munkák ütemezése |\n| `/yolo` | Yolo mód váltása (automatikus jóváhagyási eszközök) |\n\n### Böngészőintegráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/browser` | A Chrome böngésző integrációjának engedélyezése |\n\n### UI és kijelző\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/help` | Az elérhető perjel parancsok és tippek megjelenítése |\n| `/about` | Információk megjelenítése a következőről: Autohand |\n| `/theme` | Színtéma módosítása |\n| `/language` | Kijelző nyelvének módosítása |\n| `/feedback` | Visszajelzés küldése a Autohand csapatának |\n\n---\n\n## Rendszerprompt testreszabás\nAutohand lehetővé teszi az AI-ügynök által használt rendszerprompt testreszabását. Ez speciális munkafolyamatok, egyedi utasítások vagy más rendszerekkel való integráció esetén hasznos.\n\n### CLI zászlók\n\n| zászló | Leírás |\n| ------------------------------ | -------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerprompt |\n| `--append-sys-prompt <value>` | Tartalom hozzáfűzése az alapértelmezett rendszerprompthoz |\n\nMindkét zászló elfogadja a következőket:\n\n- **Inline karakterlánc**: Közvetlen szövegtartalom\n- **Fájl elérési útja**: A promptot tartalmazó fájl elérési útja (automatikusan észlelve)\n\n### Fájlútvonal észlelése\n\nEgy érték fájlútvonalként kezelendő, ha:\n\n- A következővel kezdődik: `./`, `../`, `/` vagy `~/`\n- Windows meghajtóbetűjellel kezdődik (pl. `C:\\`)\n- A következővel végződik: `.txt`, `.md` vagy `.prompt`\n- Útleválasztókat tartalmaz szóközök nélkül\n\nEllenkező esetben a rendszer soron belüli karakterláncként kezeli.\n\n### `--sys-prompt` (Teljes csere)\n\nHa rendelkezésre áll, ez **teljesen lecseréli** az alapértelmezett rendszerpromptot. Az ügynök NEM tölti be:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n```bash\n# Inline string\nautohand --sys-prompt \"You are a Python expert. Be concise.\" --prompt \"Write hello world\"\n\n# From file\nautohand --sys-prompt ./custom-prompt.txt --prompt \"Explain this code\"\n\n# Home directory\nautohand --sys-prompt ~/.autohand/prompts/python-expert.md --prompt \"Debug this function\"\n```\n**Példa egyéni prompt fájlra (`custom-prompt.txt`):**\n```\nYou are a specialized Python debugging assistant.\n\nRules:\n- Focus only on Python code\n- Always explain the root cause\n- Suggest fixes with code examples\n- Be concise and direct\n```\n### `--append-sys-prompt` (Hozzáadás az alapértelmezetthez)\n\nHa rendelkezésre áll, ez **hozzáfűzi** a tartalmat a teljes alapértelmezett rendszerprompthoz. Az ügynök továbbra is betölti:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n\nA csatolt tartalom a legvégére kerül hozzáadásra.\n```bash\n# Inline string\nautohand --append-sys-prompt \"Always use TypeScript instead of JavaScript\" --prompt \"Create a function\"\n\n# From file\nautohand --append-sys-prompt ./team-guidelines.md --prompt \"Add error handling\"\n```\n**Példa hozzáfűző fájl (`team-guidelines.md`):**\n```\n## Team Guidelines\n\n- Use 2-space indentation\n- Prefer functional patterns\n- Add JSDoc comments to public APIs\n- Run tests before committing\n```\n### Elsőbbség\n\nHa mindkét zászló rendelkezésre áll:\n\n1. A `--sys-prompt` teljes elsőbbséget élvez\n2. A `--append-sys-prompt` figyelmen kívül hagyva\n```bash\n# --append-sys-prompt is ignored in this case\nautohand --sys-prompt \"Custom only\" --append-sys-prompt \"This is ignored\"\n```\n### Használati esetek\n\n| Használati eset | Ajánlott zászló |\n| ---------------------------------- | ---------------------- |\n| Egyedi ügynök személye | `--sys-prompt` |\n| Minimális utasítások | `--sys-prompt` |\n| Csapatirányelvek hozzáadása | `--append-sys-prompt` |\n| Projektkonvenciók hozzáadása | `--append-sys-prompt` |\n| Integráció külső rendszerekkel | `--sys-prompt` |\n| Speciális hibakeresés | `--sys-prompt` |\n\n### Hibakezelés\n\n| Forgatókönyv | Viselkedés |\n| ------------------ | ------------------------- |\n| Üres érték | Hiba |\n| A fájl nem található | Soron belüli karakterláncként kezelve |\n| Üres fájl | Hiba |\n| Fájl > 1 MB | Hiba |\n| Engedély megtagadva | Hiba |\n| Címtár elérési útja | Hiba |\n\n### Példák\n```bash\n# Python expert mode\nautohand --sys-prompt \"You are a Python expert. Only write Python code.\" \\\n --prompt \"Create a web scraper\"\n\n# TypeScript enforcement\nautohand --append-sys-prompt \"Always use TypeScript, never JavaScript.\" \\\n --prompt \"Create a REST API\"\n\n# CI/CD integration (non-interactive)\nautohand --sys-prompt ./ci-prompt.txt \\\n --prompt \"Fix the failing tests\" \\\n --unrestricted \\\n --patch\n\n# Custom team workflow\nautohand --append-sys-prompt ~/.company/coding-standards.md \\\n --prompt \"Refactor this module\"\n```\n---\n\n## Több könyvtár támogatása\n\nAz Autohand a fő munkaterületen kívül több könyvtárral is működhet. Ez akkor hasznos, ha a projektben különböző könyvtárakban vannak függőségek, megosztott könyvtárak vagy kapcsolódó projektek.\n\n### CLI zászló\n\nA `--add-dir` használatával további könyvtárakat adhat hozzá (többször is használható):\n```bash\n# Add a single additional directory\nautohand --add-dir /path/to/shared-lib\n\n# Add multiple directories\nautohand --add-dir /path/to/lib1 --add-dir /path/to/lib2\n\n# With unrestricted mode (auto-approve writes to all directories)\nautohand --add-dir /path/to/shared-lib --unrestricted\n```\n### Interaktív parancs\n\n`/add-dir` használata interaktív munkamenet során:\n```\n/add-dir # Show current directories\n/add-dir /path/to/dir # Add a new directory\n```\n### Biztonsági korlátozások\n\nA következő könyvtárak nem adhatók hozzá:\n\n- Saját könyvtár (`~` vagy `$HOME`)\n- Gyökérkönyvtár (`/`)\n- Rendszerkönyvtárak (`/etc`, `/var`, `/usr`, `/bin`, `/sbin`)\n- Windows rendszerkönyvtárak (`C:\\Windows`, `C:\\Program Files`)\n- Windows felhasználói könyvtárak (`C:\\Users\\username`)\n- WSL Windows-csatlakozások (`/mnt/c`, `/mnt/c/Windows`)\n"}, "2a69d34175bfbbb82e42053517574ee8cb578ed7": {"t": 1785764170.9550285, "n": 87731, "h": "1bcb44c9174f957f", "c": "# Autohand Konfigurációs referencia\n\nTeljes referencia az összes konfigurációs beállításhoz itt: `~/.autohand/config.json` (vagy `.toml`/`.yaml`/`.yml`).\n\n> **Tipp:** A legtöbb alábbi beállítás interaktívan módosítható a `/settings` paranccsal a fájl manuális szerkesztése helyett.\n\nLokalizált referenciák:\n\n- [English](./config-reference.md)\n- [日本語](./config-reference_ja.md)\n- [简体中文](./config-reference_zh.md)\n- [繁體中文](./config-reference_zh-tw.md)\n- [한국어](./config-reference_ko.md)\n- [Deutsch](./config-reference_de.md)\n- [Español](./config-reference_es.md)\n- [Français](./config-reference_fr.md)\n- [Italiano](./config-reference_it.md)\n- [Polski](./config-reference_pl.md)\n- [Русский](./config-reference_ru.md)\n- [Português (Brasil)](./config-reference_ptBR.md)\n- [Türkçe](./config-reference_tr.md)\n- [Čeština](./config-reference_cs.md)\n- [Magyar](./config-reference_hu.md)\n- [हिन्दी](./config-reference_hi.md)\n- [Bahasa Indonesia](./config-reference_id.md)\n\n## Tartalomjegyzék\n\n- [A konfigurációs fájl helye](#configuration-file-location)\n- [Környezeti változók](#environment-variables)\n- [Csupasz mód](#bare-mode)\n- [Szolgáltatói beállítások](#provider-settings)\n- [Munkaterület beállításai](#workspace-settings)\n- [UI beállítások](#ui-settings)\n- [Ügynökbeállítások](#agent-settings)\n- [Engedélyek beállításai](#permissions-settings)\n- [Javítási mód](#patch-mode)\n- [Hálózati beállítások](#network-settings)\n- [Telemetriai beállítások](#telemetry-settings)\n- [Külső ügynökök](#external-agents)\n- [Skills System](#skills-system)\n- [API beállítások](#api-settings)\n- [Authentication Settings](#authentication-settings)\n- [Közösségi készségek beállításai](#community-skills-settings)\n- [Megosztási beállítások](#share-settings)\n- [Beállítások szinkronizálása](#settings-sync)\n- [Hook beállításai](#hooks-settings)\n- [MCP beállítások](#mcp-settings)\n- [Chrome-bővítmény beállításai](#chrome-extension-settings)\n- [Teljes példa](#complete-example)\n\n---\n\n## Konfigurációs fájl helye\n\nAutohand a következő sorrendben keresi a konfigurációt:\n\n1. `AUTOHAND_CONFIG` környezeti változó (egyéni elérési út)\n2. `~/.autohand/config.toml`\n3. `~/.autohand/config.yaml`\n4. `~/.autohand/config.yml`\n5. `~/.autohand/config.json` (alapértelmezett)\n\nAz alapkönyvtárat is felülírhatja:\n```bash\nexport AUTOHAND_HOME=/custom/path # Changes ~/.autohand to /custom/path\n```\n---\n\n## Környezeti változók\n\n| Változó | Leírás | Példa |\n| --------------------------------------- | ------------------------------------------------- | --------------------------------- |\n| `AUTOHAND_HOME` | Alapkönyvtár az összes Autohand adathoz | `/custom/path` |\n| `AUTOHAND_CONFIG` | Egyéni konfigurációs fájl elérési útja | `/path/to/config.toml` |\n| `AUTOHAND_API_URL` | API-végpont (felülbírálja a konfigurációt) | `https://api.autohand.ai` |\n| `AUTOHAND_AUTH_URL` | Bejelentkezési és fiókszinkronizálási eredet (az `AUTOHAND_API_URL` értékétől független) | `https://autohand.ai` |\n| `AUTOHAND_SECRET` | Vállalat/csapat titkos kulcsa | `sk-xxx` |\n| `AUTOHAND_PERMISSION_CALLBACK_URL` | Az engedély visszahívásának URL-je (kísérleti) | `http://localhost:3000/callback` |\n| `AUTOHAND_PERMISSION_CALLBACK_TIMEOUT` | Az engedély-visszahívás időtúllépése ms-ban | `5000` |\n| `AUTOHAND_NON_INTERACTIVE` | Futtatás nem interaktív módban | `1` |\n| `AUTOHAND_YES` | Minden felszólítás automatikus megerősítése | `1` |\n| `AUTOHAND_NO_BANNER` | Indítási szalaghirdetés letiltása | `1` |\n| `AUTOHAND_STREAM_TOOL_OUTPUT` | Az eszköz kimenetének streamelése valós időben | `1` |\n| `AUTOHAND_DEBUG` | Hibakeresési naplózás engedélyezése | `1` |\n| `AUTOHAND_THINKING_LEVEL` | Érvelési mélységszint beállítása | `normal` |\n| `AUTOHAND_CLIENT_NAME` | Kliens/szerkesztő azonosító (ACP kiterjesztések által beállítva) | `zed` |\n| `AUTOHAND_CLIENT_VERSION` | Kliens verzió (az ACP-bővítmények által beállított) | `0.169.0` |\n| `AUTOHAND_CODE` | Környezetérzékelési jelző (automatikusan beállítva) | `1` |\n| `AUTOHAND_CODE_SIMPLE` | A csupasz mód engedélyezése a `--bare` | átadása nélkül `1` |\n\n### Gondolkodási szint\n\nA `AUTOHAND_THINKING_LEVEL` környezeti változó szabályozza a modell által használt érvelés mélységét:\n\n| Érték | Leírás |\n| ---------- | --------------------------------------------------------------------- |\n| `none` | Közvetlen válaszok látható indoklás nélkül |\n| `normal` | Szabványos érvelési mélység (alapértelmezett) |\n| `extended` | Mély érvelés összetett feladatokhoz, részletesebb gondolkodási folyamatot mutat |\n\nEzt általában az ACP-kliens-bővítmények (például a Zed) állítják be a konfigurációs legördülő menüben.\n```bash\n# Example: Use extended thinking for complex tasks\nAUTOHAND_THINKING_LEVEL=extended autohand --prompt \"refactor this module\"\n```\n---\n\n## Csupasz mód\n\nA csupasz mód a Autohand csak kifejezetten kért kontextus- és futásidejű integrációkkal indul. Engedélyezze a következők egyikével:\n```bash\nautohand --bare\nAUTOHAND_CODE_SIMPLE=1 autohand\n```\nA `--bare` átadásakor a Autohand a `AUTOHAND_CODE_SIMPLE=1` értéket is beállítja a futó folyamathoz.\n\nA csupasz mód letiltja az automatikus indítást és az interaktív integrációkat:\n\n- horgok és horog értesítések\n- LSP indítás\n- plugin szinkronizálás, bővítmény automatikus betöltése és meta-eszköz automatikus betöltése\n- hozzárendelés, telemetria, munkamenet-szinkronizálás, automatikus jelentéskészítés és háttérpingek\n- automatikus memória/munkamenet bootstrap kontextus\n- háttérkérdések, frissítés-ellenőrzések, funkciójelző-lekérések és modell-metaadatok előzetes letöltése\n- kulcstartó és böngésző OAuth-hitelesítési tartalék\n- automatikus `AGENTS.md` és szolgáltatói utasítás keresés\n- minden perjel parancs, beleértve a parancssorba beírt csupasz `/`\n\nA perjel alakú abszolút fájlútvonalakat, például a `/Users/alex/project/file.ts`, továbbra is normál prompt szövegként kezeli a rendszer. A parancs alakú perjel bevitel, például `/help`, `/model` vagy `/mcp`, a `Slash commands are disabled in bare mode.` kódot írja ki, és nem hajtódik végre.\n\nA csupasz módban történő hitelesítés csak explicit. A Autohand először a következőt olvassa: `AUTOHAND_API_KEY`, majd `auth.apiKeyHelper`, ha be van állítva. Nem olvassa be a kulcstartó hitelesítő adatait, és nem indítja el az OAuth/böngésző bejelentkezést. A külső szolgáltatók továbbra is a szolgáltatóspecifikus API-kulcsokat és konfigurációkat használják.\n\nEzek az explicit bemenetek csupasz módban is elérhetők:\n\n| Bemenet | Leírás |\n| ------------------------------ | -------------------------------------------------------------------------- |\n| `--system-prompt <value>` | Cserélje ki a rendszerprompt szövegközi szöveggel vagy elérési út-szerű értékkel |\n| `--system-prompt-file <path>` | Cserélje ki a rendszerpromptot a fájltartalommal |\n| `--append-system-prompt <value>` | Szövegközi szöveg vagy elérési út-szerű érték hozzáfűzése a | rendszerprompthoz\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--add-dir <path...>` | Explicit könyvtárak hozzáadása a munkaterület hatóköréhez |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--settings` | Nyissa meg a beállításokat közvetlenül a CLI jelzőből |\n| `--config <path>` | Használjon explicit Autohand konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n---\n\n## Szolgáltatói beállítások\n\n### `provider`\n\nAktív LLM szolgáltató használható.\n\n| Érték | Leírás |\n| -------------- | ----------------------------- |\n| `\"openrouter\"` | OpenRouter API (alapértelmezett) |\n| `\"ollama\"` | Helyi Ollama példány |\n| `\"llamacpp\"` | Helyi llama.cpp szerver |\n| `\"openai\"` | OpenAI API közvetlenül |\n| `\"mlx\"` | MLX az Apple Siliconon (helyi) |\n| `\"llmgateway\"` | LLM Gateway egyesített API |\n| `\"deepseek\"` | DeepSeek API |\n| `\"zai\"` | Z.ai GLM API |\n| `\"sakana\"` | Sakana.AI Fugu API |\n| `\"bedrock\"` | AWS alapkőzet |\n| `\"custom:<id>\"` | Felhasználó által meghatározott OpenAI-kompatibilis szolgáltató a következőtől: `customProviders` |\n\n### `openrouter`\n\nOpenRouter szolgáltató konfigurációja.\n```json\n{\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-xxx\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\",\n \"contextWindow\": 262144\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | --------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön OpenRouter API kulcsa |\n| `baseUrl` | húr | Nem | `https://openrouter.ai/api/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellazonosító (pl. `your-modelcard-id-here`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand kitölti ezt az OpenRouterből, ha ismert. |\n\n### `zai`\n\nZ.ai szolgáltató konfigurációja.\n```json\n{\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"baseUrl\": \"https://api.z.ai/api/paas/v4\",\n \"model\": \"glm-5.2\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | -------------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön Z.ai API-kulcsa |\n| `baseUrl` | húr | Nem | `https://api.z.ai/api/paas/v4` | API-végpont |\n| `model` | húr | Igen | `glm-5.2` | Modellazonosító, például `glm-5.2`, `glm-5.1` vagy `glm-4.5` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. A Autohand 1M-re következtet a GLM-5.2-nél és 200K-ra a GLM-5.1-nél. |\n\n### `sakana`\n\nSakana.AI szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.sakana.ai/v1`-t használja alap URL-ként.\n```json\n{\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------ | ------------------------------------------------------------------ |\n| `apiKey` | húr | Igen | - | Az Ön Sakana API kulcsa |\n| `baseUrl` | húr | Nem | `https://api.sakana.ai/v1` | API-végpont |\n| `model` | húr | Igen | `fugu` | Modellazonosító, például `fugu` vagy `fugu-ultra` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand 1M-re következtet a Fugu modelleknél. |\n\n### `customProviders`\n\nAz egyéni szolgáltatók lehetővé teszik a felhasználók számára, hogy OpenAI-kompatibilis végpontot hozzanak létre kódmódosítás vagy új csomagolt szolgáltató nélkül. Adja hozzá a szolgáltatót a `customProviders` alatt, majd válassza ki a `provider: \"custom:<id>\"` kóddal. Ugyanez a folyamat elérhető a `/model` **Új szolgáltatóval**. A telepítés során a Autohand a szolgáltató mentése előtt ellenőrzi az alap URL-t, a hitelesítést és a kiválasztott modellt az OpenAI-kompatibilis `/models` végponton keresztül.\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\",\n \"models\": [\n {\n \"id\": \"acme-code-1\",\n \"label\": \"Acme Code 1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n ]\n }\n }\n}\n```\nAzon helyi OpenAI-kompatibilis szervereknél, amelyek nem igényelnek hitelesítést, állítsa a `apiKeyRequired` értékét `false` értékre, és hagyja ki a `apiKey` értéket.\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------------ | ------- | -------- | ------- | ----------- |\n| `id` | húr | Igen | - | Stabil szolgáltatói azonosító. Meg kell egyeznie az objektumkulccsal, és a következőképpen van kiválasztva: `custom:<id>`. |\n| `displayName` | húr | Igen | - | A `/model` és a szolgáltató beállításai között látható név. |\n| `apiFormat` | húr | Igen | - | A következőnek kell lennie: `openai-compatible`. |\n| `baseUrl` | húr | Igen | - | Végpont gyökér, például `https://api.example.com/v1`. Autohand ellenőrzi a `/models` kódot, és felhívja a `/chat/completions` kódot. |\n| `apiKey` | húr | Feltételes | - | Adathordozó token a tárolt végpontokhoz. Kötelező, ha a `apiKeyRequired` igaz. |\n| `apiKeyRequired` | logikai | Nem | `true` | Állítsa be a false értéket a helyi vagy már hitelesített átjárókhoz. |\n| `model` | húr | Igen | - | Aktív modell azonosító. |\n| `contextWindow` | szám | Nem | Auto | Pontos kontextusablak a token-költségvetéshez, állapothoz, telemetriához és szinkronizálási metaadatokhoz. |\n| `reasoningEffort` | húr | Nem | - | Opcionális `none`, `low`, `medium`, `high` vagy `xhigh`. `reasoning_effort` néven küldve egyéni OpenAI-kompatibilis kérésekhez. |\n| `models` | tömb | Nem | - | Opcionális modellválasztó bejegyzések modellenkénti kontextussal és érvelési metaadatokkal. |\n\n### `ollama`\n\nOllama szolgáltató konfigurációja.\n```json\n{\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"port\": 11434,\n \"model\": \"llama3.2\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------- | ------------------------------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:11434` | Ollama szerver URL |\n| `port` | szám | Nem | `11434` | Szerverport (a baseUrl alternatívája) |\n| `model` | húr | Igen | - | Modellnév (pl. `llama3.2`, `codellama`) |\n\n### `llamacpp`\n\nllama.cpp szerver konfigurációja.\n```json\n{\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"default\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | llama.cpp szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | Modellazonosító |\n\n### `openai`\n\nOpenAI API konfiguráció.\n```json\n{\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-xxx\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\nAz OpenAI a Autohand beépített OpenAI bejelentkezési folyamatán keresztül is használhatja ChatGPT-előfizetését:\n```json\n{\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"contextWindow\": 1050000,\n \"model\": \"gpt-5.4\",\n \"chatgptAuth\": {\n \"accessToken\": \"...\",\n \"refreshToken\": \"...\",\n \"accountId\": \"...\"\n }\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | ----------------------- | ---------------------------- | -------------------------------------------------------------------------- |\n| `authMode` | húr | Nem | `api-key` | Hitelesítési mód: `api-key` vagy `chatgpt` |\n| `apiKey` | húr | Igen a `api-key` módhoz | - | OpenAI API kulcs |\n| `baseUrl` | húr | Nem | `https://api.openai.com/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-5.4`, `gpt-5.4-mini`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Állítsa be az elavult helyi feltételezések felülbírálásához. |\n| `chatgptAuth` | tárgy | Igen a `chatgpt` módhoz | - | Tárolt ChatGPT/Codex hitelesítési tokenek és fiókazonosító |\n\n### `mlx`\n\nMLX szolgáltató Apple Silicon Mac gépekhez (helyi következtetés).\n```json\n{\n \"mlx\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | MLX szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | MLX modell azonosító |\n\n### `llmgateway`\n\nLLM Gateway egységes API konfiguráció. Hozzáférést biztosít több LLM-szolgáltatóhoz egyetlen API-n keresztül.\n```json\n{\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"baseUrl\": \"https://api.llmgateway.io/v1\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------------- | ---------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | LLM Gateway API kulcs |\n| `baseUrl` | húr | Nem | `https://api.llmgateway.io/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-4o`, `claude-3-5-sonnet-20241022`) |\n\n**API-kulcs beszerzése:**\nKeresse fel a [llmgateway.io/dashboard](https://llmgateway.io/dashboard) webhelyet fiók létrehozásához és API-kulcsának beszerzéséhez.\n\n**Támogatott modellek:**\nAz LLM Gateway több szolgáltató modelljét támogatja, többek között:\n\n- OpenAI: `gpt-4o`, `gpt-4o-mini`, `gpt-4-turbo`\n`claude-3-5-haiku-20241022`\n- Google: `gemini-1.5-pro`, `gemini-1.5-flash`\n\n### `deepseek`\n\nDeepSeek szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.deepseek.com`-t használja alap URL-ként.\n```json\n{\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"baseUrl\": \"https://api.deepseek.com\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | --------------------------- | --------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | DeepSeek API kulcs |\n| `baseUrl` | húr | Nem | `https://api.deepseek.com` | API-végpont |\n| `model` | húr | Igen | - | Modellnév, például `deepseek-v4-flash` vagy `deepseek-v4-pro` |\n\n### `bedrock`\n\nAWS Bedrock szolgáltató konfigurációja. `converse` az alapértelmezett mód, és az AWS SDK hitelesítési láncot használja. Az OpenAI-kompatibilis módok Bedrock API-kulcsokat és Bedrock OpenAI-kompatibilis végpontokat használnak.\n```json\n{\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------- | ------ | -------- | ------- | ----------- |\n| `model` | húr | Igen | - | Alapkőzetmodell-azonosító, következtetési profilazonosító vagy ARN |\n| `region` | húr | Igen | `AWS_REGION`, majd `AWS_DEFAULT_REGION`, majd `us-east-1` a beállításban | AWS régió |\n| `apiMode` | húr | Nem | `converse` | `converse`, `openai-chat` vagy `openai-responses` |\n| `authMode` | húr | Nem | `aws-credentials` `converse`, `bedrock-api-key` OpenAI-kompatibilis módokhoz | Hitelesítési mód |\n| `profile` | húr | Nem | - | Opcionális AWS-profil a hitelesítő adatok láncos hitelesítéséhez |\n| `endpoint` | húr | Nem | Módból és régióból származtatva | Egyéni/privát Bedrock végpont |\n| `apiKey` | húr | Igen OpenAI-kompatibilis módokhoz | - | Bedrock API kulcs. Ne használjon OpenAI API-kulcsokat. |\n\nFuttassa a `aws configure sso` kódot, vagy állítsa be a `AWS_PROFILE=enterprise-prod autohand` értéket a profilalapú AWS-hitelesítéshez. Az IAM-szerepkört, a tárolót és a példány metaadat-hitelesítő adatait az AWS SDK támogatja. Modell használata előtt engedélyezze a modellelérést az AWS-konzolon.\n\n---\n\n## Munkaterület beállításai\n```json\n{\n \"workspace\": {\n \"defaultRoot\": \"/path/to/projects\",\n \"allowDangerousOps\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------------------ | -------------------------------------------------- |\n| `defaultRoot` | húr | Aktuális címtár | Alapértelmezett munkaterület, ha nincs megadva |\n| `allowDangerousOps` | logikai | `false` | Pusztító műveletek engedélyezése megerősítés nélkül |\n\n### Munkahelyi biztonság\n\nAutohand automatikusan blokkolja a működést a veszélyes könyvtárakban, hogy megelőzze a véletlen károsodást:\n\n- **Fájlrendszer gyökerei** (`/`, `C:\\`, `D:\\` stb.)\n- **Házikönyvtárak** (`~`, `/Users/<user>`, `/home/<user>`, `C:\\Users\\<user>`)\n- **Rendszerkönyvtárak** (`/etc`, `/var`, `/System`, `C:\\Windows` stb.)\n- **WSL Windows-csatlakozások** (`/mnt/c`, `/mnt/c/Users/<user>`)\n\nEzt az ellenőrzést nem lehet megkerülni. Ha egy veszélyes könyvtárban próbálja meg futtatni a autohand alkalmazást, hibaüzenetet fog látni, és meg kell adnia egy biztonságos projektkönyvtárat.\n```bash\n# This will be blocked\ncd ~ && autohand\n# Error: Unsafe Workspace Directory\n\n# This works\ncd ~/projects/my-app && autohand\n```\nA részletekért lásd a [Workspace Safety](./workspace-safety.md) részt.\n\n---\n\n## UI beállítások\n```json\n{\n \"ui\": {\n \"theme\": \"dark\",\n \"customThemes\": {\n \"company\": {\n \"colors\": {\n \"accent\": \"#7c3aed\",\n \"success\": \"#22c55e\"\n }\n }\n },\n \"autoConfirm\": false,\n \"readFileCharLimit\": 300,\n \"silentToolOutput\": false,\n \"activityVerbs\": [\"Compiling\", \"Parsing\", \"Reviewing\"],\n \"activityVerbsEnabled\": true,\n \"activitySymbol\": \"✳\",\n \"statusLine\": {\n \"showProviderModel\": true,\n \"showContext\": true,\n \"showCommandHint\": true,\n \"showPullRequest\": true,\n \"showSessionLines\": false,\n \"showQueue\": true,\n \"showActiveStatus\": true,\n \"showActiveMetrics\": true,\n \"showCancelHint\": true\n },\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ----------------------------- | ------ | ------- | ---------------------------------------------------------------------------------------------- |\n| `theme` | húr | `\"dark\"` | Színes téma a terminál kimenetéhez. A beépítettek a következők: `dark`, `light`, `dracula`, `sandy`, `tui`, `github-dark`, `cappadocia`, CODE és ___8__ `australia`. A régi `turkey` és `brazil` értékek továbbra is betöltődnek álnévként. |\n| `customThemes` | tárgy | `{}` | Soron belüli egyéni témadefiníciók a téma nevével. A használatához állítsa be a `theme` kulcsot ugyanarra a kulcsra. |\n| `autoConfirm` | logikai | `false` | A biztonságos működés érdekében hagyja ki a megerősítő felszólításokat |\n| `readFileCharLimit` | szám | `300` | Maximum megjeleníthető karakter az olvasási/kereső eszköz kimenetéből (a teljes tartalom továbbra is elküldésre kerül a modellnek) |\n| `silentToolOutput` | logikai | `false` | A szerszám kimeneti blokkjainak elrejtése a terminálban, miközben továbbra is megőrzi a modell/munkamenet szerszámeredményeit |\n| `activityVerbs` | karakterlánc vagy karakterlánc[] | beépített medence | Egyéni tevékenység ige vagy igekészlet a munkajelzőhöz, `Verb...` formátumban |\n| `activityVerbsEnabled` | logikai | `true` | Forgó tevékenység igék megjelenítése, például `Compiling...`, miközben az ügynök dolgozik |\n| `activitySymbol` | húr | `\"✳\"` | A tevékenységi ige előtt látható szimbólum a tevékenységmutató kimenetében |\n| `statusLine.showProviderModel` | logikai | `true` | Jelenítse meg az aktív szolgáltatót és modellt a szerző állapotsorában |\n| `statusLine.showContext` | logikai | `true` | Jelenítse meg a kontextus százalékos arányát a szerző állapotsorában |\n| `statusLine.showCommandHint` | logikai | `true` | Parancs, említés, készség és terminálbejegyzési tippek megjelenítése a szerző állapotsorában |\n| `statusLine.showPullRequest` | logikai | `true` | Mutassa meg a kapcsolódó lekérési kérés számát, vagy `PR #123`, ha nincs PR társítva |\n| `statusLine.showSessionLines` | logikai | `false` | Az aktuális munkamenet során hozzáadott és eltávolított sorok megjelenítése |\n| `statusLine.showQueue` | logikai | `true` | A sorba állított kérések számának megjelenítése az állapotsorban |\n| `statusLine.showActiveStatus` | logikai | `true` | Az aktív forduló állapotszövege megjelenítése, miközben az ügynök dolgozik |\n| `statusLine.showActiveMetrics` | logikai | `true` | Az eltelt idő és a token mérőszámainak megjelenítése, amíg az ügynök dolgozik |\n| `statusLine.showCancelHint` | logikai | `true` | Az Esc megszakítási tipp megjelenítése, miközben az ügynök dolgozik |\n| `completionReportEnabled` | logikai | `true` | Kérje meg a modellt, hogy a végrehajtott műveleti körök után tartalmazzon egy tömör befejezési jelentést |\n| `showCompletionNotification` | logikai | `true` | Rendszerértesítés megjelenítése a feladat befejezésekor |\n| `showThinking` | logikai | `true` | Az LLM érvelésének/gondolati folyamatának megjelenítése |\n| `terminalBell` | logikai | `true` | Csengessen terminálcsengőt, amikor a feladat befejeződött (jelvényt mutat a terminálfülön/dokkon) |\n| `checkForUpdates` | logikai | `true` | CLI frissítések keresése indításkor |\n| `updateCheckInterval` | szám | `24` | Órák a frissítési ellenőrzések között (a gyorsítótárazott eredményt az intervallumon belül használja) |\n\nAz egyéni témák bármely szemantikai színtokent felülírhatnak. A hiányzó tokenek a sötét témából származnak:\n```json\n{\n \"ui\": {\n \"theme\": \"company\",\n \"customThemes\": {\n \"company\": {\n \"vars\": {\n \"brand\": \"#7c3aed\",\n \"brandSoft\": \"#a78bfa\"\n },\n \"colors\": {\n \"accent\": \"brand\",\n \"borderAccent\": \"brandSoft\",\n \"mdHeading\": \"brand\"\n }\n }\n }\n }\n}\n```\nMegjegyzés: A `readFileCharLimit` és `silentToolOutput` csak a terminál megjelenítését érinti. A teljes tartalom továbbra is elküldésre kerül a modellnek, és eszközüzenetekben tárolódik.\n\nA néma eszközkimenetet a fájl szerkesztése nélkül is átkapcsolhatja:\n```bash\nautohand config set silent_tool_output true\nautohand config set silent_tool_output false\n```\nA forgó tevékenység igék között válthat a fájl szerkesztése nélkül:\n```bash\nautohand config set verbs activity true\nautohand config set verbs activity false\n```\nSzabja testre az igéket a konfigurációs fájlban, ha rögzített állapotcímkét vagy kis projektspecifikus elforgatást szeretne:\n```json\n{\n \"ui\": {\n \"activityVerbs\": \"Compiling\"\n }\n}\n```\n\n```json\n{\n \"ui\": {\n \"activityVerbs\": [\"Indexing\", \"Reviewing\", \"Testing\"],\n \"activitySymbol\": \">\"\n }\n}\n```\nA `activityVerbs` egyetlen karakterláncot vagy nem üres karakterlánc-tömböt fogad el. Ha a `activityVerbsEnabled` értéke `false`, a Autohand visszaesik a `Working...` értékre, ahelyett, hogy az egyéni vagy beépített igék között forogna.\n\nA fájl szerkesztése nélkül válthat a befejezési jelentések között, beleértve a strukturált `SITREP` promptot is:\n```bash\nautohand config set sitrep true\nautohand config set sitrep false\n```\n### Terminal Bell\n\nHa a `terminalBell` engedélyezve van (alapértelmezett), a Autohand megszólal a terminál csengőjén (`\\x07`), amikor egy feladat befejeződik. Ez kiváltja:\n\n- **Jelvény a terminál lapon** - Vizuális jelzőt mutat, hogy a munka elkészült\n- **Dokk ikon ugrál** - Felhívja a figyelmet, ha a terminál a háttérben van (macOS)\n- **Hang** - Ha a terminál hangjai engedélyezve vannak a terminál beállításaiban\n\nTerminálspecifikus beállítások:\n\n- **macOS terminál**: Beállítások > Profilok > Speciális > Bell (vizuális/hallható)\n- **iTerm2**: Beállítások > Profilok > Terminál > Értesítések\n- **VS Code Terminal**: Beállítások > Terminál > Integrált: Bell engedélyezése\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"terminalBell\": false\n }\n}\n```\n### Ink Renderer\n\nA Autohand alapértelmezés szerint az Ink 7 + React 19 renderert használja az interaktív terminálokhoz. A régi `ui.useInkRenderer` konfigurációs mezőt figyelmen kívül hagyja, így a régi konfigurációs fájlok nem kényszeríthetik a sima terminálszerkesztőt. A tinta a következőket nyújtja:\n\n- **Recgésmentes kimenet**: Minden UI-frissítés kötegelt React-egyeztetésen keresztül történik\n- **Munkasor funkció**: Írja be az utasításokat, amíg az ügynök dolgozik\n- **Jobb bemenetkezelés**: Nincsenek ütközések a readline-kezelők között\n- **Összeállítható felhasználói felület**: A jövőbeni fejlett felhasználói felületi funkciók alapja\n\nVészhelyzeti tartalék a terminál kompatibilitás érdekében:\n```bash\nAUTOHAND_LEGACY_UI=1 autohand\n```\nMegjegyzés: Ez a funkció kísérleti jellegű, és lehetnek szélső esetek. Az alapértelmezett ora-alapú felhasználói felület stabil és teljesen működőképes marad.\n\n### Frissítési ellenőrzés\n\nHa a `checkForUpdates` engedélyezve van (alapértelmezett), a Autohand indításkor ellenőrzi az új kiadásokat:\n```\n> Autohand v0.6.8 (abc1234) ✓ Up to date\n```\nHa elérhető frissítés:\n```\n> Autohand v0.6.7 (abc1234) ⬆ Update available: v0.6.8\n ↳ Run: curl -fsSL https://autohand.ai/install.sh | sh\n```\nHogyan működik:\n\n- Lekéri a GitHub API legújabb kiadását\n- A gyorsítótárak eredménye `~/.autohand/version-check.json`\n- Csak egyszer ellenőrzi `updateCheckInterval` óránként (alapértelmezett: 24)\n- Nem blokkoló: az indítás akkor is folytatódik, ha az ellenőrzés sikertelen\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"checkForUpdates\": false\n }\n}\n```\nVagy környezeti változón keresztül:\n```bash\nexport AUTOHAND_SKIP_UPDATE_CHECK=1\n```\n---\n\n## Ügynök beállításai\n\nAz ügynök viselkedésének és iterációs korlátainak szabályozása.\n```json\n{\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"autoMemory\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------- | ------------------------------------------------------------------------------ |\n| `maxIterations` | szám | `100` | Maximális szerszámiterációk felhasználói kérésenként a leállítás előtt |\n| `enableRequestQueue` | logikai | `true` | Lehetővé teszi a felhasználók számára, hogy kéréseket írjanak be és sorba állítsanak, miközben az ügynök dolgozik |\n| `toolSelectionCache` | logikai | `true` | Gyorsítótárazza a körönkénti szerszámséma helyi kiválasztását az egyenértékű szerszámkiválasztási bemenethez |\n| `autoMemory` | logikai | `true` | Tartós felhasználói-/projektmemóriák kinyerése és mentése a befejezett interaktív fordulók után, beleértve a hibákból és megszakításokból származó, bizonyítékokkal alátámasztott tanulságokat |\n| `idleLogoutEnabled` | logikai | `true` | Jelentkezzen ki a hitelesített interaktív munkamenetekből az üresjárati időtúllépés után |\n| `idleTimeoutMs` | szám | `3600000` | Az inaktivitás ezredmásodpercei a hitelesített munkamenet kijelentkeztetése előtt (60 perc) |\n| `debug` | logikai | `false` | Részletes hibakeresési kimenet engedélyezése (naplózza az ügynök belső állapotát az stderr-be) |\n\n### Eszközséma kiválasztása\n\nA Autohand nem küld el minden teljes eszközsémát minden LLM-kérelemnél. A rendszerprompt tartalmaz egy kompakt eszközképesség-katalógust, és minden kérés csak egy kis konkrét sémát tesz közzé, amely a következők közül választható ki:\n\n- Az alapvető felderítési eszközök, például `tool_search`, `read_file`, `fff_find` és `fff_grep`\n- Szándékhoz illő eszközök szerkesztési, ellenőrzési, git, böngésző, web, függőségi vagy projektkövetési munkákhoz\n- A legutóbbi `tool_search` hívások során kért vagy kifejezetten név szerint megemlített eszközök\n\nEzzel elkerülhető a nagy előzetes kontextusköltség, ha az összes eszközséma elküldése a felhasználói szándék ismertsége előtt felmerül. `toolSelectionCache` csak a helyi választó gyorsítótárát vezérli az egyenértékű fordulatokhoz; nem hajt végre felhasználói előtti LLM-bemelegítést, és nem kényszerít ki nagy gyorsítótárazott prompt előtagot.\n\nA helyi választó gyorsítótárának letiltása:\n```json\n{\n \"agent\": {\n \"toolSelectionCache\": false\n }\n}\n```\nA hitelesített, régóta működő ügynöki munkamenetek életben tartásához, amíg munkára várnak:\n```json\n{\n \"agent\": {\n \"idleLogoutEnabled\": false\n }\n}\n```\nEgyetlen folyamathoz használja a `autohand --no-idle-logout` kódot, vagy állítsa be a `AUTOHAND_NO_IDLE_LOGOUT=1` értéket.\n\nAz inaktivitási idő módosításához állítsa az `idleTimeoutMs` értékét pozitív, ezredmásodpercben megadott időtartamra. Az alapértelmezett érték `3600000` (60 perc); az érvénytelen értékek az alapértelmezett értéket használják.\n\n### Hibakeresési mód\n\nEngedélyezze a hibakeresési módot az ügynök belső állapotának részletes naplózásához (reakcióhurok iterációi, prompt felépítés, munkamenet részletei). A kimenet az stderr-hez megy, hogy elkerülje a normál kimenet zavarását.\n\nHáromféleképpen engedélyezheti a hibakeresési módot (elsőbbségi sorrendben):\n\n1. **CLI jelző**: `autohand -d` vagy `autohand --debug`\n2. **Környezeti változó**: `AUTOHAND_DEBUG=1`\n3. **Konfigurációs fájl**: Állítsa be: `agent.debug: true`\n\n### Kérési sor\n\nHa a `enableRequestQueue` engedélyezve van, folytathatja az üzenetek beírását, miközben az ügynök feldolgoz egy korábbi kérést. A bevitel a sorba kerül, és automatikusan feldolgozásra kerül, amikor az aktuális feladat befejeződik.\n\n- Írja be az üzenetet, és nyomja meg az Enter billentyűt, hogy hozzáadja a sorhoz\n- Az állapotsor azt mutatja, hogy hány kérés van sorban\n- A kérések feldolgozása FIFO (first-in, first-out) sorrendben történik\n- A sor maximális mérete 10 kérés\n\n---\n\n## Engedélyek beállításai\n\nA szerszámengedélyek finom vezérlése.\n```json\n{\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\n \"run_command:npm *\",\n \"run_command:bun *\",\n \"run_command:git status\"\n ],\n \"blacklist\": [\"run_command:rm -rf *\", \"run_command:sudo *\"],\n \"rules\": [\n {\n \"tool\": \"run_command\",\n \"pattern\": \"npm test\",\n \"action\": \"allow\"\n }\n ],\n \"rememberSession\": true\n }\n}\n```\n### `mode`\n\n| Érték | Leírás |\n| ----------------- | ------------------------------------------------------ |\n| `\"interactive\"` | Jóváhagyás kérése veszélyes műveletekhez (alapértelmezett) |\n| `\"unrestricted\"` | Nincsenek felszólítások, engedélyezzen mindent |\n| `\"restricted\"` | Minden veszélyes művelet megtagadása |\n\n### `whitelist`\n\nSzerszámminták sora, amelyek soha nem igényelnek jóváhagyást.\n```json\n[\"run_command:npm *\", \"run_command:bun test\"]\n```\n### `blacklist`\n\nMindig blokkolt szerszámminták tömbje.\n```json\n[\"run_command:rm -rf /\", \"run_command:sudo *\"]\n```\n### `rules`\n\nFinom szemcsés engedélyezési szabályok.\n\n| Mező | Típus | Leírás |\n| --------- | --------- | -------------------------------------------- | ---------- | -------------- |\n| `tool` | húr | A megfelelő eszköznév |\n| `pattern` | húr | Opcionális minta az érvekhez való illeszkedéshez |\n| `action` | `\"allow\"` | `\"deny\"` | `\"prompt\"` | Intézkedések |\n\n### `rememberSession`\n\n| Típus | Alapértelmezett | Leírás |\n| ------- | ------- | -------------------------------------------- |\n| logikai | `true` | Emlékezzen az ülés jóváhagyási határozataira |\n\n### Helyi projektengedélyek\n\nMinden projektnek saját engedélybeállításai lehetnek, amelyek felülírják a globális konfigurációt. Ezeket a projekt gyökérkönyvtárában a `.autohand/settings.local.json` tartalmazza.\n\nAmikor jóváhagy egy fájlműveletet (szerkesztés, írás, törlés), a rendszer automatikusan ebbe a fájlba menti, így nem kéri újra ugyanazt a műveletet ebben a projektben.\n```json\n{\n \"version\": 1,\n \"permissions\": {\n \"whitelist\": [\n \"apply_patch:src/components/Button.tsx\",\n \"write_file:package.json\",\n \"run_command:bun test\"\n ]\n }\n}\n```\n**Hogyan működik:**\n\n- Amikor jóváhagy egy műveletet, a rendszer a következőbe menti: `.autohand/settings.local.json`\n- Legközelebb ugyanazt a műveletet a rendszer automatikusan jóváhagyja\n- A helyi projektbeállítások egyesülnek a globális beállításokkal (a helyi beállítások elsőbbséget élveznek)\n- Adja hozzá a `.autohand/settings.local.json` kódot a `.gitignore`-hoz, hogy a személyes beállítások privátak maradjanak\n\n**Mintaformátum:**\n\n- `tool_name:path` - Fájlműveletekhez (pl. `apply_patch:src/file.ts`)\n- `tool_name:command args` - Parancsokhoz (pl. `run_command:npm test`)\n\n### Megtekintési engedélyek\n\nJelenlegi engedélybeállításait kétféleképpen tekintheti meg:\n\n**CLI jelző (nem interaktív):**\n```bash\nautohand --permissions\n```\nEz a következőket jeleníti meg:\n\n- Jelenlegi engedélyezési mód (interaktív, korlátlan, korlátozott)\n- Munkaterület és konfigurációs fájlok elérési útjai\n- Minden jóváhagyott minta (engedélyezőlista)\n- Minden elutasított minta (feketelista)\n- Összefoglaló statisztika\n\n**Interaktív parancs:**\n```\n/permissions\n```\nInteraktív módban a `/permissions` parancs ugyanazokat az információkat és lehetőségeket biztosít a következőkhöz:\n\n- Elemek eltávolítása az engedélyezési listáról\n- Távolítsa el az elemeket a feketelistáról\n- Törölje az összes mentett engedélyt\n\n---\n\n## Patch mód\n\nA Patch mód lehetővé teszi megosztható, git-kompatibilis javítás létrehozását a munkaterület-fájlok módosítása nélkül. Ez hasznos:\n\n- A kód felülvizsgálata a változtatások alkalmazása előtt\n- Az AI által generált változások megosztása a csapat tagjaival\n- Reprodukálható változáskészletek készítése\n- CI/CD folyamatok, amelyeknek alkalmazása nélkül kell rögzíteni a változásokat\n\n### Használat\n```bash\n# Generate patch to stdout\nautohand --prompt \"add user authentication\" --patch\n\n# Save to file\nautohand --prompt \"add user authentication\" --patch --output auth.patch\n\n# Pipe to file (alternative)\nautohand --prompt \"refactor api handlers\" --patch > refactor.patch\n```\n### Viselkedés\n\nHa `--patch` meg van adva:\n\n- **Automatikus megerősítés**: Minden visszaigazolás automatikusan elfogadásra kerül (`--yes`)\n- **Nincsenek felszólítások**: Nem jelennek meg jóváhagyási értesítések (`--unrestricted` vélelmezett)\n- **Csak előnézet**: A változtatásokat rögzíti, de NEM írja lemezre\n- **Kikényszerített biztonság**: A feketelistán szereplő műveletek (`.env`, SSH-kulcsok, veszélyes parancsok) továbbra is blokkolva vannak\n\n### Javítások alkalmazása\n\nA címzettek szabványos git parancsokkal alkalmazhatják a javítást:\n```bash\n# Check what would be applied (dry-run)\ngit apply --check changes.patch\n\n# Apply the patch\ngit apply changes.patch\n\n# Apply with 3-way merge (handles conflicts better)\ngit apply -3 changes.patch\n\n# Apply and stage changes\ngit apply --index changes.patch\n\n# Reverse a patch\ngit apply -R changes.patch\n```\n### Patch formátum\n\nA generált javítás a git egységes diff formátumát követi:\n```diff\ndiff --git a/src/auth.ts b/src/auth.ts\nnew file mode 100644\n--- /dev/null\n+++ b/src/auth.ts\n@@ -0,0 +1,15 @@\n+export function authenticate(user: string, password: string) {\n+ // Implementation here\n+}\n\ndiff --git a/src/index.ts b/src/index.ts\n--- a/src/index.ts\n+++ b/src/index.ts\n@@ -1,5 +1,7 @@\n import express from 'express';\n+import { authenticate } from './auth';\n\n const app = express();\n+app.use(authenticate);\n```\n### Kilépési kódok\n\n| Kód | Jelentése |\n| ---- | ---------------------------------------------------- |\n| `0` | Siker, patch generált |\n| `1` | Hiba (hiányzó `--prompt`, engedély megtagadva stb.) |\n\n### Kombinálva más zászlókkal\n```bash\n# Use specific model\nautohand --prompt \"optimize queries\" --patch --model gpt-4o\n\n# Specify workspace\nautohand --prompt \"add tests\" --patch --path ./my-project\n\n# Use custom config\nautohand --prompt \"refactor\" --patch --config ~/.autohand/work.json\n```\n### Csapatmunkafolyamat-példa\n```bash\n# Developer A: Generate patch for a feature\nautohand --prompt \"implement user dashboard with charts\" --patch --output dashboard.patch\n\n# Share via git (create PR with just the patch file)\ngit checkout -b patch/dashboard\ngit add dashboard.patch\ngit commit -m \"Add dashboard feature patch\"\ngit push\n\n# Developer B: Review and apply\ngit fetch origin patch/dashboard\ngit apply dashboard.patch\n# Run tests, review code, then commit\ngit add -A && git commit -m \"feat: add user dashboard with charts\"\n```\n---\n\n## Hálózati beállítások\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Max | Leírás |\n| ------------ | ------ | ------- | --- | --------------------------------------- |\n| `maxRetries` | szám | `3` | `5` | Próbálkozzon újra sikertelen API-kérésekkel |\n| `timeout` | szám | `30000` | - | Kérelem időtúllépése ezredmásodpercben |\n| `retryDelay` | szám | `1000` | - | Az újrapróbálkozások közötti késleltetés ezredmásodpercben |\n\n---\n\n## Telemetriai beállítások\n\nA telemetria **alapértelmezés szerint le van tiltva** (feliratkozás). Engedélyezze a Autohand fejlesztéséhez.\n```json\n{\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true,\n \"companySecret\": \"\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | -------------------------- | ---------------------------------------------- |\n| `enabled` | logikai | `false` | Telemetria engedélyezése/letiltása (feliratkozás) |\n| `apiBaseUrl` | húr | `https://api.autohand.ai` | Telemetria API végpont |\n| `batchSize` | szám | `20` | Az automatikus kiürítés előtt kötegelt események száma |\n| `flushIntervalMs` | szám | `60000` | Öblítési időköz ezredmásodpercben (1 perc) |\n| `maxQueueSize` | szám | `500` | Maximális sorméret a régi események eldobása előtt |\n| `maxRetries` | szám | `3` | Próbálkozzon újra sikertelen telemetriai kérések esetén |\n| `enableSessionSync` | logikai | `true` | Szinkronizálja a munkameneteket a felhővel a csapatfunkciókhoz, ha a telemetria engedélyezve van |\n| `companySecret` | húr | `\"\"` | Vállalati titok API-hitelesítéshez |\n\nA szolgáltató/modell telemetria tartalmazza az aktív szolgáltatói azonosítót, a modellazonosítót és az elérhető nem titkos metaadatokat, például az egyéni szolgáltató megjelenítési nevét, API-formátumát, érvelési erőfeszítéseit és kontextusablakát. Az API-kulcsok és a vivőjogkivonatok soha nem szerepelnek benne.\n\n---\n\n## Külső ügynökök\n\nEgyéni ügynökdefiníciók betöltése külső könyvtárakból.\n```json\n{\n \"externalAgents\": {\n \"enabled\": true,\n \"paths\": [\"~/.autohand/agents\", \"/team/shared/agents\"]\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | -------- | ------- | -------------------------------- |\n| `enabled` | logikai | `false` | Külső ügynök betöltésének engedélyezése |\n| `paths` | string[] | `[]` | Könyvtárak az ügynökök betöltéséhez |\n\n---\n\n## Skills System\n\nA készségek olyan utasításcsomagok, amelyek speciális utasításokat adnak az AI-ügynöknek. Úgy működnek, mint az igény szerinti `AGENTS.md` fájlok, amelyek bizonyos feladatokhoz aktiválhatók.\n\n### Készségek felfedező helyek\n\nA készségek több helyről fedezhetők fel, és a későbbi források élveznek elsőbbséget:\n\n| Helyszín | Forrásazonosító | Leírás |\n| ----------------------------------------- | ------------------- | ------------------------------------------ |\n| `~/.codex/skills/**/SKILL.md` | `codex-user` | Felhasználói szintű Codex készségek (rekurzív) |\n| `~/.claude/skills/*/SKILL.md` | `claude-user` | Felhasználói szintű Claude-készségek (egy szint) |\n| `~/.autohand/skills/**/SKILL.md` | `autohand-user` | Felhasználói szintű Autohand készségek (rekurzív) |\n| `<project>/.claude/skills/*/SKILL.md` | `claude-project` | Projektszintű Claude-készségek (egy szint) |\n| `<project>/.autohand/skills/**/SKILL.md` | `autohand-project` | Projekt szintű Autohand készségek (rekurzív) |\n\n### Automatikus másolási viselkedés\n\nA Codex vagy Claude helyekről felfedezett készségek automatikusan átmásolódnak a megfelelő Autohand helyre:\n\n- `~/.codex/skills/` és `~/.claude/skills/` → `~/.autohand/skills/`\n- `<project>/.claude/skills/` → `<project>/.autohand/skills/`\n\nA Autohand helyeken meglévő készségek soha nem íródnak felül.\n\n### SKILL.md formátum\n\nA YAML frontmatter-t használó készségek, majd a leértékelési tartalom:\n```markdown\n---\nname: my-skill-name\ndescription: Brief description of the skill\nlicense: MIT\ncompatibility: Works with Node.js 18+\nallowed-tools: read_file write_file run_command\nmetadata:\n author: your-name\n version: \"1.0.0\"\n---\n\n# My Skill\n\nDetailed instructions for the AI agent...\n```\n| Mező | Kötelező | Max hossz | Leírás |\n| ---------------- | -------- | ---------- | ------------------------------------------- |\n| `name` | Igen | 64 karakter | Kisbetűs alfanumerikus, csak kötőjelekkel |\n| `description` | Igen | 1024 karakter | A készség rövid leírása |\n| `license` | Nem | - | Licencazonosító (pl. MIT, Apache-2.0) |\n| `compatibility` | Nem | 500 karakter | Kompatibilitási megjegyzések |\n| `allowed-tools` | Nem | - | Az engedélyezett eszközök szóközzel tagolt listája |\n| `metadata` | Nem | - | További kulcs-érték metaadatok |\n\n### Beviteli előtagok\n\nA Autohand támogatja a speciális előtagokat a beviteli promptban:\n\n| Előtag | Leírás | Példa |\n| ------ | ------------------------------- | ---------------------------------- |\n| `/` | Slash parancsok | `/help`, `/model`, `/quit`, `/exit` |\n| `@` | Fájl említések (automatikus kiegészítés) | `@src/index.ts` |\n| `$` | Szakértelem említése (automatikus kiegészítés) | `$frontend-design`, `$code-review` |\n| `!` | A terminálparancsok közvetlen futtatása | `! git status`, `! ls -la` |\n\n**Képességmegemlítések (`$`):**\n\n- Írja be a következőt: `$`, majd karaktereket az automatikus kiegészítéssel elérhető készségek megtekintéséhez\n- A Tab elfogadja a felső javaslatot (pl. `$frontend-design`)\n- A készségek a következőből fedezhetők fel: `~/.autohand/skills/` és `<project>/.autohand/skills/`\n- Az aktivált készségek a prompthoz vannak csatolva, mint speciális utasítások az aktuális munkamenethez\n- Az előnézeti panel a készség metaadatait mutatja (név, leírás, aktiválási állapot)\n\n**Shell-parancsok (`!`):**\n\n- A parancsok az aktuális munkakönyvtárban futnak\n- A kimenet közvetlenül a terminálon jelenik meg\n- Nem megy az LLM-be\n- 30 másodperces időtúllépés\n- A végrehajtás után visszatér a prompthoz\n\n### Slash parancsok\n\n#### `/skills` - Csomagkezelő\n\n| Parancs | Leírás |\n| -------------------------------- | ------------------------------------------- |\n| `/skills` | Sorolja fel az összes elérhető készséget |\n| `/skills use <name>` | Képesség aktiválása az aktuális munkamenethez |\n| `/skills deactivate <name>` | Készség deaktiválása |\n| `/skills info <name>` | Részletes képzettségi információk megjelenítése |\n| `/skills install` | Tallózás és telepítés a közösségi nyilvántartásból |\n| `/skills install @<slug>` | Telepítsen közösségi készségeket a slug |\n| `/skills search <query>` | Keresés a közösségi készségek nyilvántartásában |\n| `/skills trending` | Felkapott közösségi készségek megjelenítése |\n| `/skills remove <slug>` | Közösségi készség eltávolítása |\n| `/skills new` | Hozzon létre új készségeket interaktívan |\n| `/skills feedback <slug> <1-5>` | Értékeljen egy közösségi képességet |\n\n#### `/learn` - LLM-alapú Skill Advisor\n\n| Parancs | Leírás |\n| ---------------- | ---------------------------------------------------------------- |\n| `/learn` | A projekt elemzése és készségek ajánlása (gyors szkennelés) |\n| `/learn deep` | Mélyszkennelési projekt (forrásfájlokat olvas) a célzottabb eredmények érdekében |\n| `/learn update` | A projekt újraelemzése és az LLM által generált elavult készségek regenerálása |\n\nA `/learn` kétfázisú LLM-folyamatot használ:\n\n1. **1. fázis – Elemzés + Rangsorolás + Ellenőrzés**: Ellenőrzi a projekt szerkezetét, auditálja a telepített készségeket redundanciák/konfliktusok szempontjából, és rangsorolja a közösségi készségeket relevancia szerint (0-100).\n2. **2. fázis – Létrehozás** (feltételes): Ha egyik közösségi képesség sem ér el 60 feletti pontszámot, felajánlja a projektjéhez szabott egyéni képesség létrehozását.\nA generált készségek metaadatokat (`agentskill-source: llm-generated`, `agentskill-project-hash`) tartalmaznak, így a `/learn update` képes észlelni, ha megváltozik a kódbázis, és újra előállíthatja az elavult készségeket.\n\n### Automatikus készséggenerálás (`--auto-skill`)\n\nA `--auto-skill` CLI jelző készségeket generál az interaktív tanácsadói folyamat nélkül:\n```bash\nautohand --auto-skill\n```\nEz:\n\n1. Elemezze a projekt felépítését (package.json, követelmények.txt stb.)\n2. Nyelvek, keretrendszerek és minták észlelése\n3. Generáljon 3 releváns készséget az LLM segítségével\n4. Mentse el a készségeket ide: `<project>/.autohand/skills/`\n\nA célzottabb, interaktívabb élmény érdekében használja inkább a `/learn` kódot egy munkameneten belül.\n\nAz észlelt minták a következők:\n\n- **Nyelvek**: TypeScript, JavaScript, Python, Rust, Go\n- **Frameworks**: React, Next.js, Vue, Express, Flask, Django\n- **Minták**: CLI eszközök, tesztelés, monorepo, Docker, CI/CD\n\n---\n\n## API beállítások\n\nBackend API konfiguráció a csapatfunkciókhoz.\n```json\n{\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\",\n \"companySecret\": \"sk-team-xxx\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------------------------- | ---------------------------------------- |\n| `baseUrl` | húr | `https://api.autohand.ai` | API-végpont |\n| `companySecret` | húr | - | Csapat/vállalati titok a megosztott funkciókhoz |\n\nKörnyezeti változókkal is beállítható:\n\n- `AUTOHAND_API_URL` → `api.baseUrl`\n- `AUTOHAND_SECRET` → `api.companySecret`\n\n---\n\n## Hitelesítési beállítások\n\nHitelesítés és felhasználói munkamenet konfigurálása.\n```json\n{\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\",\n \"avatar\": \"https://example.com/avatar.png\"\n },\n \"expiresAt\": \"2025-12-31T23:59:59Z\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------- | ------ | ------- | --------------------------------------------- |\n| `token` | húr | - | Hitelesítési token API-hozzáféréshez |\n| `user` | tárgy | - | Hitelesített felhasználói adatok |\n| `user.id` | húr | - | Felhasználói azonosító |\n| `user.email` | húr | - | Felhasználó e-mail címe |\n| `user.name` | húr | - | Felhasználó megjelenített név |\n| `user.avatar` | húr | - | Felhasználói avatar URL-je (nem kötelező) |\n| `expiresAt` | húr | - | Token lejárati időbélyegzője (ISO 8601 formátum) |\n\n---\n\n## Közösségi készségek beállításai\n\nKonfiguráció a közösségi készségek felfedezéséhez és kezeléséhez.\n```json\n{\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------------------------- | ------- | ------- | -------------------------------------------------------------- |\n| `enabled` | logikai | `true` | Közösségi készségek funkcióinak engedélyezése |\n| `showSuggestionsOnStartup` | logikai | `true` | Képességi javaslatok megjelenítése indításkor, ha nem állnak rendelkezésre szállítói ismeretek |\n| `autoBackup` | logikai | `true` | A felfedezett szállítói ismeretek automatikus biztonsági mentése API |\n\n---\n\n## Megosztási beállítások\n\nKonfiguráció a munkamenet megosztásához a `/share` paranccsal. A munkamenetek a [autohand.link](https://autohand.link) címen találhatók.\n```json\n{\n \"share\": {\n \"enabled\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ------------------------------------ |\n| `enabled` | logikai | `true` | A `/share` parancs engedélyezése/letiltása |\n\n### YAML formátum\n```yaml\nshare:\n enabled: true\n```\n### Munkamenet-megosztás letiltása\n\nHa biztonsági vagy adatvédelmi okokból ki szeretné kapcsolni a munkamenet-megosztást:\n```json\n{\n \"share\": {\n \"enabled\": false\n }\n}\n```\nHa le van tiltva, a `/share` futtatásakor a következő jelenik meg:\n```\nSession sharing is disabled.\nTo enable, set share.enabled: true in your config file.\n```\n---\n\n## Beállítások szinkronizálása\n\nA Autohand szinkronizálhatja a konfigurációt az eszközök között a bejelentkezett felhasználók számára. A beállításokat a Cloudflare R2 biztonságosan tárolja, és a feltöltés előtt titkosítja.\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"exclude\": [],\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------------- | -------- | ---------------- | --------------------------------------------------- |\n| `enabled` | logikai | `true` (naplózva) | Beállítások szinkronizálásának engedélyezése/letiltása |\n| `interval` | szám | `300000` | Szinkronizálási idő ezredmásodpercben (alapértelmezett: 5 perc) |\n| `exclude` | string[] | `[]` | Globális minták a szinkronizálásból kizárandó |\n| `includeTelemetry` | logikai | `false` | Telemetriai adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n| `includeFeedback` | logikai | `false` | Visszajelzési adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n\n### CLI zászló\n```bash\n# Disable sync for this session\nautohand --sync-settings=false\n\n# Enable sync (default for logged users)\nautohand --sync-settings\n```\n### Mi lesz szinkronizálva\n\nAlapértelmezés szerint ezek az elemek szinkronizálva vannak a bejelentkezett felhasználók számára:\n\n- **Konfiguráció** (`config.json`) - Az API-kulcsok a feltöltés előtt titkosítva vannak\n- **Egyéni ügynökök** (`agents/`)\n- **Közösségi készségek** (`community-skills/`)\n- **Felhasználói akasztók** (`hooks/`)\n- **Memória** (`memory/`)\n- **Projektismeret** (`projects/`)\n- **Munkamenetek előzményei** (`sessions/`)\n- **Megosztott tartalom** (`share/`)\n- **Egyéni készségek** (`skills/`)\n\n### Mi nem szinkronizál (alapértelmezés szerint)\n\n- **Eszközazonosító** (`device-id`) - Eszközönként egyedi\n- **Hibanaplók** (`error.log`) - Csak helyi\n- **Verziógyorsítótár** (`version-*.json`) - Helyi gyorsítótár fájlok\n\n### Beleegyezés alapú szinkronizálás\n\nEzek az elemek kifejezett feliratkozást igényelnek a konfigurációban:\n\n- **Telemetriai adatok** - Állítsa be a `sync.includeTelemetry: true` szinkronizálást\n- **Visszajelzési adatok** - Állítsa be a `sync.includeFeedback: true` szinkronizálását\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"includeTelemetry\": true,\n \"includeFeedback\": true\n }\n}\n```\n### Konfliktusmegoldás\n\nHa ütközések lépnek fel (ugyanaz a fájl több eszközön módosítva), a **felhőverzió nyer**. Ez biztosítja a következetességet az új eszközökön való bejelentkezéskor.\n\n### Biztonság\n\nA `config.json` API-kulcsait és egyéb bizalmas adatait a rendszer a hitelesítési token segítségével titkosítja a feltöltés előtt. Csak az Ön hitelesítő adataival lehet visszafejteni.\n\nA távoli fájlnevek csak relatív POSIX-útvonalként fogadhatók el az engedélyezett szinkronizálási kategóriákon belül. A szinkronizálás elutasítja a könyvtárbejárást, az abszolút vagy Windows-stílusú útvonalakat, az ismétlődő vagy üres szegmenseket, valamint az engedélyezett gyökéren kívülre mutató szimbolikus hivatkozásokkal átirányított célokat.\n\nAz alkalmazás bejelentkezési tokenje az `Authorization` fejlécben csak olyan átviteli URL-ekhez kerül elküldésre, amelyek eredete megegyezik a beállított szinkronizálási API eredetével. A más eredetű, előre aláírt HTTPS URL-ek soha nem kapják meg ezt a tokent; a nem biztonságos vagy hibás más eredetű URL-ek elutasításra kerülnek.\n\n**Mi van titkosítva:**\n\n- `apiKey` nevű mezők\n- `Key`, `Token`, `Secret` végződő mezők\n- A `password` mező\n\n### Hogyan működik\n\n1. **Indításkor**: Ha be van jelentkezve, a szinkronizálási szolgáltatás automatikusan elindul\n2. **5 percenként**: A beállításokat összehasonlítja a felhőalapú tárolással\n3. **A felhő nyer**: A távoli módosítások letöltése először történik meg\n4. **Helyi feltöltések**: Új helyi módosítások kerülnek feltöltésre\n5. **Kilépéskor**: A szinkronizálási szolgáltatás kecsesen leáll\n\n### Fájlok kizárása\n\nKizárhat bizonyos fájlokat vagy mintákat a szinkronizálásból:\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"exclude\": [\"custom-local-config.json\", \"temp/*\"]\n }\n}\n```\n### YAML formátum\n```yaml\nsync:\n enabled: true\n interval: 300000\n exclude: []\n includeTelemetry: false\n includeFeedback: false\n```\n---\n\n## MCP beállítások\n\nÁllítsa be az MCP-kiszolgálókat (Model Context Protocol) a Autohand külső eszközökkel történő bővítésére.\n```json\n{\n \"mcp\": {\n \"enabled\": true,\n \"servers\": [\n {\n \"name\": \"filesystem\",\n \"transport\": \"stdio\",\n \"command\": \"npx\",\n \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/tmp\"],\n \"env\": {},\n \"autoConnect\": true\n },\n {\n \"name\": \"context7\",\n \"transport\": \"http\",\n \"url\": \"https://mcp.context7.com/mcp\",\n \"headers\": {\n \"CONTEXT7_API_KEY\": \"ctx7sk-your-api-key\"\n },\n \"autoConnect\": true\n }\n ]\n }\n}\n```\n### `mcp.enabled`\n\n- **Típus**: `boolean`\n- **Alapértelmezett**: `true`\n- **Leírás**: Az összes MCP-támogatás engedélyezése vagy letiltása. Ha `false`, akkor az indításkor nem csatlakozik szerver, és az MCP-eszközök nem érhetők el.\n\n### `mcp.servers`\n\n- **Típus**: `McpServerConfigEntry[]`\n- **Alapértelmezett**: `[]`\n- **Leírás**: MCP szerver konfigurációk tömbje.\n\n### Szerver beviteli mezői\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | --------------------------------- | -------------- | ------- | -------------------------------------------------------------- |\n| `name` | `string` | Igen | - | Egyedi szerverazonosító |\n| `transport` | `\"stdio\"` \\| `\"sse\"` \\| `\"http\"` | Igen | - | Szállítás típusa |\n| `command` | `string` | Igen (stdio) | - | Parancs a szerverfolyamat elindításához |\n| `args` | `string[]` | Nem | `[]` | Érvek a parancs mellett |\n| `url` | `string` | Igen (sse/http) | - | Szervervégpont URL |\n| `headers` | `Record<string, string>` | Nem | `{}` | Egyéni HTTP-fejlécek http/sse szállításhoz (pl. hitelesítési tokenek) |\n| `env` | `Record<string, string>` | Nem | `{}` | A kiszolgálónak átadott környezeti változók |\n| `autoConnect` | `boolean` | Nem | `true` | Automatikus csatlakozás indításkor |\n\n> A szerverek aszinkron módon csatlakoznak a háttérben az indítás során anélkül, hogy blokkolnák a promptot. A `/mcp` segítségével interaktívan kezelheti a szervereket, vagy a `/mcp add` segítségével böngészhet a közösségi nyilvántartásban, vagy adhat hozzá egyéni szervereket.\n\n> A teljes MCP-dokumentációért lásd: [docs/mcp.md](mcp.md).\n\n---\n\n## Hooks beállítások\n\nKonfiguráció életciklus-horogokhoz, amelyek shell-parancsokat futtatnak az ügynökeseményeken. A részletekért lásd a [Hooks dokumentációt] (./hooks.md).\n```json\n{\n \"hooks\": {\n \"enabled\": true,\n \"hooks\": [\n {\n \"event\": \"pre-tool\",\n \"command\": \"echo \\\"Running tool: $HOOK_TOOL\\\" >> ~/.autohand/hooks.log\",\n \"description\": \"Log all tool executions\",\n \"enabled\": true\n },\n {\n \"event\": \"file-modified\",\n \"command\": \"./scripts/on-file-change.sh\",\n \"description\": \"Custom file change handler\",\n \"filter\": { \"path\": [\"src/**/*.ts\"] }\n },\n {\n \"event\": \"post-response\",\n \"command\": \"curl -X POST https://api.example.com/webhook -d '{\\\"tokens\\\": $HOOK_TOKENS}'\",\n \"description\": \"Track token usage\",\n \"async\": true\n }\n ]\n }\n}\n```\n### `hooks`\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ---------------------------------- |\n| `enabled` | logikai | `true` | Az összes hook engedélyezése/letiltása globálisan |\n| `hooks` | tömb | `[]` | Horogdefiníciók tömbje |\n\n### Hook meghatározása\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | ------- | -------- | ------- | --------------------------------- |\n| `event` | húr | Igen | - | Bekapcsolandó esemény |\n| `command` | húr | Igen | - | Shell parancs végrehajtásához |\n| `description` | húr | Nem | - | A `/hooks` kijelző leírása |\n| `enabled` | logikai | Nem | `true` | Aktív-e a horog |\n| `timeout` | szám | Nem | `5000` | Időtúllépés ezredmásodpercben |\n| `async` | logikai | Nem | `false` | Futtasson blokkolás nélkül |\n| `filter` | tárgy | Nem | - | Szűrés szerszám vagy útvonal szerint |\n\n### Hook események\n\n| Esemény | Amikor kirúgták |\n| ---------------- | -------------------------------------- |\n| `pre-tool` | Mielőtt bármilyen eszköz végrehajtaná |\n| `post-tool` | A szerszám befejezése után |\n| `file-modified` | A fájl létrehozásakor/módosításakor/törlésekor |\n| `pre-prompt` | Mielőtt elküldené az LLM-nek |\n| `post-response` | Miután az LLM válaszol |\n| `session-error` | Hiba esetén |\n\n### Környezeti változók\n\nAmikor a hook fut, ezek a környezeti változók állnak rendelkezésre:\n\n| Változó | Leírás |\n| ----------------- | ---------------------------- |\n| `HOOK_EVENT` | Esemény neve |\n| `HOOK_WORKSPACE` | Munkaterület gyökérútvonala |\n| `HOOK_TOOL` | Szerszámnév (szerszámesemények) |\n| `HOOK_ARGS` | JSON-kódolt eszköz args |\n| `HOOK_SUCCESS` | igaz/hamis (utóeszköz) |\n| `HOOK_PATH` | Fájl elérési útja (fájlmódosított) |\n| `HOOK_TOKENS` | Felhasznált tokenek (válasz után) |\n\n---\n\n## Chrome-bővítmény beállításai\n\nIrányítsd a Autohand Chrome-bővítmény integrációját. Tekintse meg a teljes útmutatót: [Autohand Chrome-ban](./autohand-in-chrome.md).\n```json\n{\n \"chrome\": {\n \"extensionId\": \"your-extension-id\",\n \"enabledByDefault\": false,\n \"browser\": \"auto\",\n \"userDataDir\": \"/path/to/chrome/user-data\",\n \"profileDirectory\": \"Default\",\n \"installUrl\": \"https://autohand.ai/chrome\"\n }\n}\n```\n| Kulcs | Típus | Alapértelmezett | Leírás |\n| ------------------- | --------- | -------- | -------------------------------------------------------------------------- |\n| `extensionId` | `string` | — | Telepített Chrome-bővítményazonosító a közvetlen átadáshoz |\n| `enabledByDefault` | `boolean` | `false` | A böngészőhíd automatikus indítása a CLI |-vel\n| `browser` | `string` | `\"auto\"` | Előnyben részesített Chromium böngésző: `auto`, `chrome`, `chromium`, `brave`, `edge` |\n| `userDataDir` | `string` | — | Böngésző felhasználói adatok könyvtára a megfelelő profil megcélzásához |\n| `profileDirectory` | `string` | — | Böngészőprofil-könyvtár neve (pl. `\"Default\"`, `\"Profile 1\"`) |\n| `installUrl` | `string` | — | Tartalék URL, ha a bővítményazonosító nincs konfigurálva |\n\n### CLI zászlók\n```bash\nautohand --browser # Start with browser bridge enabled\nautohand --no-browser # Start with browser bridge disabled\n```\n### Slash parancsok\n```\n/browser # Open browser integration panel\n/browser disconnect # Close the browser bridge connection\n```\n---\n\n## Teljes példa\n\n### JSON formátum (`~/.autohand/config.json`)\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\"\n },\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"model\": \"llama3.2\"\n },\n \"workspace\": {\n \"defaultRoot\": \"~/projects\",\n \"allowDangerousOps\": false\n },\n \"ui\": {\n \"theme\": \"dark\",\n \"autoConfirm\": false,\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n },\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n },\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\"run_command:npm *\", \"run_command:bun *\"],\n \"blacklist\": [\"run_command:rm -rf /\"],\n \"rememberSession\": true\n },\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n },\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true\n },\n \"externalAgents\": {\n \"enabled\": false,\n \"paths\": []\n },\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\"\n },\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\"\n }\n },\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n },\n \"share\": {\n \"enabled\": true\n },\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n### YAML formátum (`~/.autohand/config.yaml`)\n```yaml\nprovider: openrouter\n\nopenrouter:\n apiKey: sk-or-v1-your-key-here\n baseUrl: https://openrouter.ai/api/v1\n model: your-modelcard-id-here\n\nollama:\n baseUrl: http://localhost:11434\n model: llama3.2\n\nworkspace:\n defaultRoot: ~/projects\n allowDangerousOps: false\n\nui:\n theme: dark\n autoConfirm: false\n showCompletionNotification: true\n showThinking: true\n terminalBell: true\n checkForUpdates: true\n updateCheckInterval: 24\n\nagent:\n maxIterations: 100\n enableRequestQueue: true\n toolSelectionCache: true\n idleLogoutEnabled: true\n idleTimeoutMs: 3600000\n debug: false\n\npermissions:\n mode: interactive\n whitelist:\n - \"run_command:npm *\"\n - \"run_command:bun *\"\n blacklist:\n - \"run_command:rm -rf /\"\n rememberSession: true\n\nnetwork:\n maxRetries: 3\n timeout: 30000\n retryDelay: 1000\n\ntelemetry:\n enabled: false\n apiBaseUrl: https://api.autohand.ai\n batchSize: 20\n flushIntervalMs: 60000\n maxQueueSize: 500\n maxRetries: 3\n enableSessionSync: true\n\nexternalAgents:\n enabled: false\n paths: []\n\napi:\n baseUrl: https://api.autohand.ai\n\nauth:\n token: your-auth-token\n user:\n id: user-id\n email: user@example.com\n name: User Name\n\ncommunitySkills:\n enabled: true\n showSuggestionsOnStartup: true\n autoBackup: true\n\nshare:\n enabled: true\n\nsync:\n enabled: true\n interval: 300000\n includeTelemetry: false\n includeFeedback: false\n```\n### TOML formátum (`~/.autohand/config.toml`)\n```toml\nprovider = \"openrouter\"\n\n[openrouter]\napiKey = \"sk-or-v1-your-key-here\"\nbaseUrl = \"https://openrouter.ai/api/v1\"\nmodel = \"your-modelcard-id-here\"\n\n[ollama]\nbaseUrl = \"http://localhost:11434\"\nmodel = \"llama3.2\"\n\n[workspace]\ndefaultRoot = \"~/projects\"\nallowDangerousOps = false\n\n[ui]\ntheme = \"dark\"\nautoConfirm = false\nshowCompletionNotification = true\nshowThinking = true\nterminalBell = true\ncheckForUpdates = true\nupdateCheckInterval = 24\n\n[ui.customThemes.company.vars]\nbrand = \"#7c3aed\"\nbrandSoft = \"#a78bfa\"\n\n[ui.customThemes.company.colors]\naccent = \"brand\"\nborderAccent = \"brandSoft\"\nmdHeading = \"brand\"\n\n[agent]\nmaxIterations = 100\nenableRequestQueue = true\ntoolSelectionCache = true\nidleLogoutEnabled = true\nidleTimeoutMs = 3600000\ndebug = false\n\n[permissions]\nmode = \"interactive\"\nwhitelist = [\"run_command:npm *\", \"run_command:bun *\"]\nblacklist = [\"run_command:rm -rf /\"]\nrememberSession = true\n```\n---\n\n## Címtárszerkezet\n\nA Autohand az adatokat `~/.autohand/` (vagy `$AUTOHAND_HOME`) kódban tárolja:\n```\n~/.autohand/\n├── config.json # Main configuration\n├── config.toml # Alternative TOML config\n├── config.yaml # Alternative YAML config\n├── device-id # Unique device identifier\n├── error.log # Error log\n├── feedback.log # Feedback submissions\n├── sessions/ # Session history\n├── projects/ # Project knowledge base\n├── memory/ # User-level memory\n├── commands/ # Custom commands\n├── agents/ # Agent definitions\n├── tools/ # Custom meta-tools\n├── feedback/ # Feedback state\n└── telemetry/ # Telemetry data\n ├── queue.json\n └── session-sync-queue.json\n```\n**Projektszintű könyvtár** (a munkaterület gyökérkönyvtárában):\n```\n<project>/.autohand/\n├── settings.local.json # Local project permissions (gitignore this)\n├── memory/ # Project-specific memory\n├── skills/ # Project-specific skills\n└── tools/ # Project-specific meta-tools\n```\n---\n\n## CLI-jelzők (konfig felülbírálása)\n\nEzek a jelzők felülírják a konfigurációs fájl beállításait:\n\n### Alapjelzők\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `-v, --version` | Az aktuális verzió kiadása |\n| `-p, --prompt [text]` | Futtasson egyetlen utasítást parancs módban |\n| `--path <path>` | Munkaterület gyökér felülbírálása |\n| `--config <path>` | Egyéni konfigurációs fájl használata |\n| `--model <model>` | Modell felülírása |\n| `--temperature <n>` | Beállított mintavételi hőmérséklet (0-1) |\n| `--thinking [level]` | Gondolkodási/érvelési mélység beállítása (nincs, normál, kiterjesztett) |\n| `-y, --yes` | Automatikus megerősítési kérések |\n| `--dry-run` | Előnézet végrehajtás nélkül |\n| `-d, --debug` | Részletes hibakeresési kimenet engedélyezése |\n| `--bare` | Minimális explicit mód; beállítja a `AUTOHAND_CODE_SIMPLE=1` értéket és letiltja a perjel parancsokat |\n\n### Engedélyek és biztonság\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--unrestricted` | Nincs jóváhagyási felszólítás |\n| `--restricted` | Veszélyes műveletek megtagadása |\n| `--permissions` | Jelenítse meg az aktuális engedélybeállításokat, és lépjen ki |\n| `--no-idle-logout` | A hitelesített tétlen kijelentkezés letiltása a hosszan futó ügynöki munkamenetekhez |\n| `--yolo [pattern]` | Eszközhívások megfelelő minta automatikus jóváhagyása (pl. `allow:read,write` vagy `deny:delete`) |\n| `--timeout <seconds>` | Időtúllépés másodpercben az automatikus jóváhagyási módhoz |\n\n### Git & Worktree\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--worktree [name]` | Munkamenet futtatása elszigetelt git-munkafán (opcionális munkafa/ág neve) |\n| `--tmux` | Indítás egy dedikált tmux munkamenetben (az `--worktree`-t jelenti; nem használható a `--no-worktree` kóddal) |\n| `--no-worktree` | A git munkafa elkülönítésének letiltása automatikus módban |\n| `-c, --auto-commit` | Változások automatikus véglegesítése a feladatok elvégzése után |\n| `--patch` | Git javítás generálása változtatások alkalmazása nélkül |\n| `--output <file>` | A javítás kimeneti fájlja (a --patch-el együtt használatos) |\n\n### Automatikus mód\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-mode [prompt]` | Engedélyezze az interaktív automatikus módot, vagy indítson önálló hurkot egy soron belüli feladattal |\n| `--max-iterations <n>` | Maximális automatikus módú iterációk (alapértelmezett: 50) |\n| `--completion-promise <text>` | Befejezésjelző szövege (alapértelmezett: \"KÉSZ\") |\n| `--checkpoint-interval <n>` | A Git minden N iterációt végrehajt (alapértelmezett: 5) |\n| `--max-runtime <m>` | Maximális futási idő percekben (alapértelmezett: 120) |\n| `--max-cost <d>` | Maximális API költség dollárban (alapértelmezett: 10) |\n| `--interactive-on-complete` | Az automatikus mód vége után adja át közvetlenül az interaktív módba (csak TTY) |\n\n### Készségek és tanulás\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-skill` | Készségek automatikus generálása projektelemzés alapján (lásd még: `/learn` az interaktív tanácsadóhoz) |\n| `--learn` | Futtassa a `/learn` készségtanácsadót nem interaktív módon (a javasolt készségek elemzése és telepítése) |\n| `--learn-update` | A projekt újraelemzése és az LLM által generált elavult készségek nem interaktív módon történő regenerálása |\n| `--skill-install [name]` | Telepítsen egy közösségi képességet (megnyitja a böngészőt, ha nincs megadva név) |\n| `--project` | A készség telepítése projektszintre (a --skill-install funkcióval) |\n\n### Hitelesítés és fiók\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--login` | Jelentkezzen be Autohand-fiókjába |\n| `--logout` | Jelentkezzen ki Autohand-fiókjából |\n| `--sync-settings` | A beállítások szinkronizálásának engedélyezése/letiltása (alapértelmezett: igaz a bejelentkezett felhasználók számára) |\n\n### Beállítás és információ\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--setup` | Futtassa a telepítővarázslót a Autohand |\n| `--about` | Információk megjelenítése a Autohand-ról (verzió, linkek, hozzájárulási információk) |\n| `--feedback` | Visszajelzés küldése a Autohand csapatának |\n| `--settings` | A Autohand beállításainak konfigurálása (ugyanaz, mint a `/settings` interaktív módban) |\n\n### Munkaterület és könyvtárak\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--add-dir <path...>` | További könyvtárak hozzáadása a munkaterület hatóköréhez (többször is használható) |\n\n### Futtatási módok\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--mode <mode>` | Futtatási mód: interaktív (alapértelmezett), rpc vagy acp |\n| `--acp` | A --mode acp rövidítése (Agent Client Protocol over stdio) |\n| `--teammate-mode <mode>` | Csapat megjelenítési mód: automatikus, folyamatban lévő vagy tmux |\n\n### UI és nyelv\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--display-language <locale>` | Megjelenítési nyelv beállítása (pl. en, id, zh-cn, fr, de, ja) |\n| `--search-engine <provider>` | Internetes keresőszolgáltató beállítása (google, brave, duckduckgo, párhuzamos) |\n| `--cc, --context-compact` | Környezettömörítés engedélyezése (alapértelmezett: be) |\n| `--no-cc, --no-context-compact` | Kontextustömörítés letiltása |\n\n### Böngészőintegráció\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--browser` | A böngészőintegráció engedélyezése (ugyanaz, mint `/browser`) |\n| `--no-browser` | A böngészőintegráció letiltása |\n\n### Rendszerprompt\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-sys-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt-file <path>` | Cserélje le a teljes rendszerprompt a fájltartalommal |\n| `--append-system-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n### Kísérletváltási parancsok\n\n| Parancs | Leírás |\n| -------------------------------------- | ------------------------------------------------- |\n| `autohand experiments list` | Sorolja fel a helyi és távoli funkciók azonosítóit, a forrást, az életciklus szakaszt és az állapotot |\n| `autohand experiments status <feature>` | Mutasson egy szolgáltatáskapcsolót, konfigurációs elérési utat vagy távoli metaadatokat és állapotot |\n| `autohand experiments refresh` | Távoli funkciójelzők letöltése a Autohand API-ból |\n| `autohand experiments enable <feature>` | Konfigurációval támogatott szolgáltatáskapcsoló engedélyezése |\n| `autohand experiments disable <feature>` | A konfigurációval támogatott szolgáltatáskapcsoló letiltása |\n\nA távoli funkciójelzők lekérése innen: `/v1/feature-flags/evaluate`, gyorsítótár a `~/.autohand/feature-flags.json` címen történik, és az API által biztosított TTL lejárta után frissül. A `features.environment` segítségével válassza ki a távoli jelzőkörnyezetet, a `features.remoteOverrides` segítségével pedig a felhasználó által felülbírálható távoli jelzők helyi letiltásához.\n\nA `usage_v2` egy kísérleti funkciókapcsoló a `/usage` irányítópulthoz és a továbbfejlesztett `/status` Használat laphoz. Engedélyezze a következővel: `autohand experiments enable usage_v2`.\n\nA `token_usage_status` egy kísérleti funkciókapcsoló (konfigurációs útvonal `features.tokenUsageStatus`, alapértelmezés szerint kikapcsolva), amely a valós idejű tokenhasználatot mutatja a működő állapotsorban – kumulatív tokenek felfelé (`↑`) és lefelé (`↓`) plusz g kontextusban, cc. `↑15.7k ↓3.2k · context: 6.0% (15.7k/262.1k)`. A kontextusablak modellenként van feloldva az összes szolgáltatónál. Engedélyezze a következővel: `autohand experiments enable token_usage_status`.\n\n---\n\n## Slash parancsok\n\nAz Autohand perjel parancsok gazdag készletét kínálja interaktív használatra. A javaslatok megtekintéséhez írja be a `/` kódot a REPL-be.\n\n### Munkamenet-kezelés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/quit` | Kilépés az aktuális munkamenetből |\n| `/exit` | Kilépés az aktuális munkamenetből |\n| `/new` | Új beszélgetés indítása (memóriakivonattal) |\n| `/clear` | Tiszta beszélgetés automatikus memóriakivonással |\n| `/session` | Az aktuális munkamenet részleteinek megjelenítése |\n| `/sessions` | Korábbi munkamenetek listája |\n| `/resume` | Előző munkamenet folytatása |\n| `/history` | A munkamenet-előzmények böngészése oldalszámozással |\n| `/undo` | Git módosítások és utolsó forduló visszaállítása |\n| `/export` | Munkamenet exportálása markdown/JSON/HTML |\n| `/share` | Aktuális munkamenet megosztása |\n| `/status` | Munkamenet állapotának megjelenítése |\n| `/usage` | Modell, szolgáltató, kontextus és használati korlátok megjelenítése |\n\n### Modell és szolgáltató\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/model` | LLM-modell váltása vagy konfigurálása |\n| `/cc` | Kézi környezet tömörítése |\n\n### Projektbeállítás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/init` | Hozzon létre `AGENTS.md` fájlt az aktuális könyvtárban |\n| `/setup` | Futtassa a telepítővarázslót a Autohand | konfigurálásához\n| `/add-dir` | Könyvtárak hozzáadása a munkaterület hatóköréhez |\n\n### Ügynökök és csapatok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/agents` | Az elérhető alügynökök listája |\n| `/agents-new` | Hozzon létre egy új ügynököt a varázslón keresztül |\n| `/squad` | Nyissa meg/kezelje az önálló Autohand Squad futtatókörnyezetet |\n| `/team` | Csapat irányítása párhuzamos munkához |\n| `/tasks` | Feladatok kezelése csapatban |\n| `/message` | Üzenet küldése csapattársnak |\n\n### Készségek\n\n| Parancs | Leírás |\n| ----------------- | --------------------------------------------------- |\n| `/skills` | Készségek listája és kezelése |\n| `/skills-new` | Új készség létrehozása |\n| `/learn` | Tanulja meg és telepítse az ajánlott készségeket |\n\n### Memória és beállítások\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/memory` | Tárolt emlékek megtekintése és kezelése |\n| `/settings` | A Autohand beállításainak konfigurálása |\n| `/statusline` | A szerző állapotsor mezőinek konfigurálása |\n| `/experiments` | Kísérleti jellemzők kapcsolóinak váltása |\n| `/sync` | Beállítások szinkronizálása eszközök között |\n| `/import` | Importálhat munkameneteket, beállításokat, MCP-t, memóriát, készségeket és hook-okat a támogatott ügynökökről |\n\n### Engedélyek és akasztók\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/permissions`| Szerszámengedélyek kezelése |\n| `/hooks` | Életciklus-horogok kezelése |\n\n### Hitelesítés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/login` | Hitelesítés a Autohand API-val |\n| `/logout` | Kijelentkezés a Autohand fiókból |\n\n### Eszközök és segédprogramok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/search` | Keresés az interneten |\n| `/formatters` | Az elérhető kódformázók listája |\n| `/lint` | Sorolja fel a rendelkezésre álló kódsorokat |\n| `/completion` | Shell befejező szkriptek generálása |\n| `/plan` | Megvalósítási terv létrehozása |\n| `/review` | Kódellenőrzés végrehajtása |\n| `/pr-review` | Lehívási kérelem áttekintése |\n\n### IDE integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/ide` | A futó IDE észlelése és csatlakozása |\n\n### MCP (Model Context Protocol)\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/mcp` | Interaktív MCP-kiszolgálókezelő |\n\n### Automatizálás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/automode` | Indítsa el az autonóm kódolási módot |\n| `/repeat` | Ismétlődő munkák ütemezése |\n| `/yolo` | Yolo mód váltása (automatikus jóváhagyási eszközök) |\n\n### Böngészőintegráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/browser` | A Chrome böngésző integrációjának engedélyezése |\n\n### UI és kijelző\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/help` | Az elérhető perjel parancsok és tippek megjelenítése |\n| `/about` | Információk megjelenítése a következőről: Autohand |\n| `/theme` | Színtéma módosítása |\n| `/language` | Kijelző nyelvének módosítása |\n| `/feedback` | Visszajelzés küldése a Autohand csapatának |\n\n---\n\n## Rendszerprompt testreszabás\nAutohand lehetővé teszi az AI-ügynök által használt rendszerprompt testreszabását. Ez speciális munkafolyamatok, egyedi utasítások vagy más rendszerekkel való integráció esetén hasznos.\n\n### CLI zászlók\n\n| zászló | Leírás |\n| ------------------------------ | -------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerprompt |\n| `--append-sys-prompt <value>` | Tartalom hozzáfűzése az alapértelmezett rendszerprompthoz |\n\nMindkét zászló elfogadja a következőket:\n\n- **Inline karakterlánc**: Közvetlen szövegtartalom\n- **Fájl elérési útja**: A promptot tartalmazó fájl elérési útja (automatikusan észlelve)\n\n### Fájlútvonal észlelése\n\nEgy érték fájlútvonalként kezelendő, ha:\n\n- A következővel kezdődik: `./`, `../`, `/` vagy `~/`\n- Windows meghajtóbetűjellel kezdődik (pl. `C:\\`)\n- A következővel végződik: `.txt`, `.md` vagy `.prompt`\n- Útleválasztókat tartalmaz szóközök nélkül\n\nEllenkező esetben a rendszer soron belüli karakterláncként kezeli.\n\n### `--sys-prompt` (Teljes csere)\n\nHa rendelkezésre áll, ez **teljesen lecseréli** az alapértelmezett rendszerpromptot. Az ügynök NEM tölti be:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n```bash\n# Inline string\nautohand --sys-prompt \"You are a Python expert. Be concise.\" --prompt \"Write hello world\"\n\n# From file\nautohand --sys-prompt ./custom-prompt.txt --prompt \"Explain this code\"\n\n# Home directory\nautohand --sys-prompt ~/.autohand/prompts/python-expert.md --prompt \"Debug this function\"\n```\n**Példa egyéni prompt fájlra (`custom-prompt.txt`):**\n```\nYou are a specialized Python debugging assistant.\n\nRules:\n- Focus only on Python code\n- Always explain the root cause\n- Suggest fixes with code examples\n- Be concise and direct\n```\n### `--append-sys-prompt` (Hozzáadás az alapértelmezetthez)\n\nHa rendelkezésre áll, ez **hozzáfűzi** a tartalmat a teljes alapértelmezett rendszerprompthoz. Az ügynök továbbra is betölti:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n\nA csatolt tartalom a legvégére kerül hozzáadásra.\n```bash\n# Inline string\nautohand --append-sys-prompt \"Always use TypeScript instead of JavaScript\" --prompt \"Create a function\"\n\n# From file\nautohand --append-sys-prompt ./team-guidelines.md --prompt \"Add error handling\"\n```\n**Példa hozzáfűző fájl (`team-guidelines.md`):**\n```\n## Team Guidelines\n\n- Use 2-space indentation\n- Prefer functional patterns\n- Add JSDoc comments to public APIs\n- Run tests before committing\n```\n### Elsőbbség\n\nHa mindkét zászló rendelkezésre áll:\n\n1. A `--sys-prompt` teljes elsőbbséget élvez\n2. A `--append-sys-prompt` figyelmen kívül hagyva\n```bash\n# --append-sys-prompt is ignored in this case\nautohand --sys-prompt \"Custom only\" --append-sys-prompt \"This is ignored\"\n```\n### Használati esetek\n\n| Használati eset | Ajánlott zászló |\n| ---------------------------------- | ---------------------- |\n| Egyedi ügynök személye | `--sys-prompt` |\n| Minimális utasítások | `--sys-prompt` |\n| Csapatirányelvek hozzáadása | `--append-sys-prompt` |\n| Projektkonvenciók hozzáadása | `--append-sys-prompt` |\n| Integráció külső rendszerekkel | `--sys-prompt` |\n| Speciális hibakeresés | `--sys-prompt` |\n\n### Hibakezelés\n\n| Forgatókönyv | Viselkedés |\n| ------------------ | ------------------------- |\n| Üres érték | Hiba |\n| A fájl nem található | Soron belüli karakterláncként kezelve |\n| Üres fájl | Hiba |\n| Fájl > 1 MB | Hiba |\n| Engedély megtagadva | Hiba |\n| Címtár elérési útja | Hiba |\n\n### Példák\n```bash\n# Python expert mode\nautohand --sys-prompt \"You are a Python expert. Only write Python code.\" \\\n --prompt \"Create a web scraper\"\n\n# TypeScript enforcement\nautohand --append-sys-prompt \"Always use TypeScript, never JavaScript.\" \\\n --prompt \"Create a REST API\"\n\n# CI/CD integration (non-interactive)\nautohand --sys-prompt ./ci-prompt.txt \\\n --prompt \"Fix the failing tests\" \\\n --unrestricted \\\n --patch\n\n# Custom team workflow\nautohand --append-sys-prompt ~/.company/coding-standards.md \\\n --prompt \"Refactor this module\"\n```\n---\n\n## Több könyvtár támogatása\n\nAz Autohand a fő munkaterületen kívül több könyvtárral is működhet. Ez akkor hasznos, ha a projektben különböző könyvtárakban vannak függőségek, megosztott könyvtárak vagy kapcsolódó projektek.\n\n### CLI zászló\n\nA `--add-dir` használatával további könyvtárakat adhat hozzá (többször is használható):\n```bash\n# Add a single additional directory\nautohand --add-dir /path/to/shared-lib\n\n# Add multiple directories\nautohand --add-dir /path/to/lib1 --add-dir /path/to/lib2\n\n# With unrestricted mode (auto-approve writes to all directories)\nautohand --add-dir /path/to/shared-lib --unrestricted\n```\n### Interaktív parancs\n\n`/add-dir` használata interaktív munkamenet során:\n```\n/add-dir # Show current directories\n/add-dir /path/to/dir # Add a new directory\n```\n### Biztonsági korlátozások\n\nA következő könyvtárak nem adhatók hozzá:\n\n- Saját könyvtár (`~` vagy `$HOME`)\n- Gyökérkönyvtár (`/`)\n- Rendszerkönyvtárak (`/etc`, `/var`, `/usr`, `/bin`, `/sbin`)\n- Windows rendszerkönyvtárak (`C:\\Windows`, `C:\\Program Files`)\n- Windows felhasználói könyvtárak (`C:\\Users\\username`)\n- WSL Windows-csatlakozások (`/mnt/c`, `/mnt/c/Windows`)\n"}, "f4e86a7ca2d455c7568e1a8981b5dbf0ce128478": {"t": 1785764172.6037765, "n": 87632, "h": "7a2e1d29c7974439", "c": "# Autohand Konfigurációs referencia\n\nTeljes referencia az összes konfigurációs beállításhoz itt: `~/.autohand/config.json` (vagy `.toml`/`.yaml`/`.yml`).\n\n> **Tipp:** A legtöbb alábbi beállítás interaktívan módosítható a `/settings` paranccsal a fájl manuális szerkesztése helyett.\n\nLokalizált referenciák:\n\n- [English](./config-reference.md)\n- [日本語](./config-reference_ja.md)\n- [简体中文](./config-reference_zh.md)\n- [繁體中文](./config-reference_zh-tw.md)\n- [한국어](./config-reference_ko.md)\n- [Deutsch](./config-reference_de.md)\n- [Español](./config-reference_es.md)\n- [Français](./config-reference_fr.md)\n- [Italiano](./config-reference_it.md)\n- [Polski](./config-reference_pl.md)\n- [Русский](./config-reference_ru.md)\n- [Português (Brasil)](./config-reference_ptBR.md)\n- [Türkçe](./config-reference_tr.md)\n- [Čeština](./config-reference_cs.md)\n- [Magyar](./config-reference_hu.md)\n- [हिन्दी](./config-reference_hi.md)\n- [Bahasa Indonesia](./config-reference_id.md)\n\n## Tartalomjegyzék\n\n- [A konfigurációs fájl helye](#configuration-file-location)\n- [Környezeti változók](#environment-variables)\n- [Csupasz mód](#bare-mode)\n- [Szolgáltatói beállítások](#provider-settings)\n- [Munkaterület beállításai](#workspace-settings)\n- [UI beállítások](#ui-settings)\n- [Ügynökbeállítások](#agent-settings)\n- [Engedélyek beállításai](#permissions-settings)\n- [Javítási mód](#patch-mode)\n- [Hálózati beállítások](#network-settings)\n- [Telemetriai beállítások](#telemetry-settings)\n- [Külső ügynökök](#external-agents)\n- [Skills System](#skills-system)\n- [API beállítások](#api-settings)\n- [Authentication Settings](#authentication-settings)\n- [Közösségi készségek beállításai](#community-skills-settings)\n- [Megosztási beállítások](#share-settings)\n- [Beállítások szinkronizálása](#settings-sync)\n- [Hook beállításai](#hooks-settings)\n- [MCP beállítások](#mcp-settings)\n- [Chrome-bővítmény beállításai](#chrome-extension-settings)\n- [Teljes példa](#complete-example)\n\n---\n\n## Konfigurációs fájl helye\n\nAutohand a következő sorrendben keresi a konfigurációt:\n\n1. `AUTOHAND_CONFIG` környezeti változó (egyéni elérési út)\n2. `~/.autohand/config.toml`\n3. `~/.autohand/config.yaml`\n4. `~/.autohand/config.yml`\n5. `~/.autohand/config.json` (alapértelmezett)\n\nAz alapkönyvtárat is felülírhatja:\n```bash\nexport AUTOHAND_HOME=/custom/path # Changes ~/.autohand to /custom/path\n```\n---\n\n## Környezeti változók\n\n| Változó | Leírás | Példa |\n| --------------------------------------- | ------------------------------------------------- | --------------------------------- |\n| `AUTOHAND_HOME` | Alapkönyvtár az összes Autohand adathoz | `/custom/path` |\n| `AUTOHAND_CONFIG` | Egyéni konfigurációs fájl elérési útja | `/path/to/config.toml` |\n| `AUTOHAND_API_URL` | API-végpont (felülbírálja a konfigurációt) | `https://api.autohand.ai` |\n| `AUTOHAND_AUTH_URL` | Bejelentkezési és fiókszinkronizálási eredet (az `AUTOHAND_API_URL` értékétől független) | `https://autohand.ai` |\n| `AUTOHAND_SECRET` | Vállalat/csapat titkos kulcsa | `sk-xxx` |\n| `AUTOHAND_PERMISSION_CALLBACK_URL` | Az engedély visszahívásának URL-je (kísérleti) | `http://localhost:3000/callback` |\n| `AUTOHAND_PERMISSION_CALLBACK_TIMEOUT` | Az engedély-visszahívás időtúllépése ms-ban | `5000` |\n| `AUTOHAND_NON_INTERACTIVE` | Futtatás nem interaktív módban | `1` |\n| `AUTOHAND_YES` | Minden felszólítás automatikus megerősítése | `1` |\n| `AUTOHAND_NO_BANNER` | Indítási szalaghirdetés letiltása | `1` |\n| `AUTOHAND_STREAM_TOOL_OUTPUT` | Az eszköz kimenetének streamelése valós időben | `1` |\n| `AUTOHAND_DEBUG` | Hibakeresési naplózás engedélyezése | `1` |\n| `AUTOHAND_THINKING_LEVEL` | Érvelési mélységszint beállítása | `normal` |\n| `AUTOHAND_CLIENT_NAME` | Kliens/szerkesztő azonosító (ACP kiterjesztések által beállítva) | `zed` |\n| `AUTOHAND_CLIENT_VERSION` | Kliens verzió (az ACP-bővítmények által beállított) | `0.169.0` |\n| `AUTOHAND_CODE` | Környezetérzékelési jelző (automatikusan beállítva) | `1` |\n| `AUTOHAND_CODE_SIMPLE` | A csupasz mód engedélyezése a `--bare` | átadása nélkül `1` |\n\n### Gondolkodási szint\n\nA `AUTOHAND_THINKING_LEVEL` környezeti változó szabályozza a modell által használt érvelés mélységét:\n\n| Érték | Leírás |\n| ---------- | --------------------------------------------------------------------- |\n| `none` | Közvetlen válaszok látható indoklás nélkül |\n| `normal` | Szabványos érvelési mélység (alapértelmezett) |\n| `extended` | Mély érvelés összetett feladatokhoz, részletesebb gondolkodási folyamatot mutat |\n\nEzt általában az ACP-kliens-bővítmények (például a Zed) állítják be a konfigurációs legördülő menüben.\n```bash\n# Example: Use extended thinking for complex tasks\nAUTOHAND_THINKING_LEVEL=extended autohand --prompt \"refactor this module\"\n```\n---\n\n## Csupasz mód\n\nA csupasz mód a Autohand csak kifejezetten kért kontextus- és futásidejű integrációkkal indul. Engedélyezze a következők egyikével:\n```bash\nautohand --bare\nAUTOHAND_CODE_SIMPLE=1 autohand\n```\nA `--bare` átadásakor a Autohand a `AUTOHAND_CODE_SIMPLE=1` értéket is beállítja a futó folyamathoz.\n\nA csupasz mód letiltja az automatikus indítást és az interaktív integrációkat:\n\n- horgok és horog értesítések\n- LSP indítás\n- plugin szinkronizálás, bővítmény automatikus betöltése és meta-eszköz automatikus betöltése\n- hozzárendelés, telemetria, munkamenet-szinkronizálás, automatikus jelentéskészítés és háttérpingek\n- automatikus memória/munkamenet bootstrap kontextus\n- háttérkérdések, frissítés-ellenőrzések, funkciójelző-lekérések és modell-metaadatok előzetes letöltése\n- kulcstartó és böngésző OAuth-hitelesítési tartalék\n- automatikus `AGENTS.md` és szolgáltatói utasítás keresés\n- minden perjel parancs, beleértve a parancssorba beírt csupasz `/`\n\nA perjel alakú abszolút fájlútvonalakat, például a `/Users/alex/project/file.ts`, továbbra is normál prompt szövegként kezeli a rendszer. A parancs alakú perjel bevitel, például `/help`, `/model` vagy `/mcp`, a `Slash commands are disabled in bare mode.` kódot írja ki, és nem hajtódik végre.\n\nA csupasz módban történő hitelesítés csak explicit. A Autohand először a következőt olvassa: `AUTOHAND_API_KEY`, majd `auth.apiKeyHelper`, ha be van állítva. Nem olvassa be a kulcstartó hitelesítő adatait, és nem indítja el az OAuth/böngésző bejelentkezést. A külső szolgáltatók továbbra is a szolgáltatóspecifikus API-kulcsokat és konfigurációkat használják.\n\nEzek az explicit bemenetek csupasz módban is elérhetők:\n\n| Bemenet | Leírás |\n| ------------------------------ | -------------------------------------------------------------------------- |\n| `--system-prompt <value>` | Cserélje ki a rendszerprompt szövegközi szöveggel vagy elérési út-szerű értékkel |\n| `--system-prompt-file <path>` | Cserélje ki a rendszerpromptot a fájltartalommal |\n| `--append-system-prompt <value>` | Szövegközi szöveg vagy elérési út-szerű érték hozzáfűzése a | rendszerprompthoz\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--add-dir <path...>` | Explicit könyvtárak hozzáadása a munkaterület hatóköréhez |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--settings` | Nyissa meg a beállításokat közvetlenül a CLI jelzőből |\n| `--config <path>` | Használjon explicit Autohand konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n---\n\n## Szolgáltatói beállítások\n\n### `provider`\n\nAktív LLM szolgáltató használható.\n\n| Érték | Leírás |\n| -------------- | ----------------------------- |\n| `\"openrouter\"` | OpenRouter API (alapértelmezett) |\n| `\"ollama\"` | Helyi Ollama példány |\n| `\"llamacpp\"` | Helyi llama.cpp szerver |\n| `\"openai\"` | OpenAI API közvetlenül |\n| `\"mlx\"` | MLX az Apple Siliconon (helyi) |\n| `\"llmgateway\"` | LLM Gateway egyesített API |\n| `\"deepseek\"` | DeepSeek API |\n| `\"zai\"` | Z.ai GLM API |\n| `\"sakana\"` | Sakana.AI Fugu API |\n| `\"bedrock\"` | AWS alapkőzet |\n| `\"custom:<id>\"` | Felhasználó által meghatározott OpenAI-kompatibilis szolgáltató a következőtől: `customProviders` |\n\n### `openrouter`\n\nOpenRouter szolgáltató konfigurációja.\n```json\n{\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-xxx\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\",\n \"contextWindow\": 262144\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | --------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön OpenRouter API kulcsa |\n| `baseUrl` | húr | Nem | `https://openrouter.ai/api/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellazonosító (pl. `your-modelcard-id-here`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand kitölti ezt az OpenRouterből, ha ismert. |\n\n### `zai`\n\nZ.ai szolgáltató konfigurációja.\n```json\n{\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"baseUrl\": \"https://api.z.ai/api/paas/v4\",\n \"model\": \"glm-5.2\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | -------------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön Z.ai API-kulcsa |\n| `baseUrl` | húr | Nem | `https://api.z.ai/api/paas/v4` | API-végpont |\n| `model` | húr | Igen | `glm-5.2` | Modellazonosító, például `glm-5.2`, `glm-5.1` vagy `glm-4.5` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. A Autohand 1M-re következtet a GLM-5.2-nél és 200K-ra a GLM-5.1-nél. |\n\n### `sakana`\n\nSakana.AI szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.sakana.ai/v1`-t használja alap URL-ként.\n```json\n{\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------ | ------------------------------------------------------------------ |\n| `apiKey` | húr | Igen | - | Az Ön Sakana API kulcsa |\n| `baseUrl` | húr | Nem | `https://api.sakana.ai/v1` | API-végpont |\n| `model` | húr | Igen | `fugu` | Modellazonosító, például `fugu` vagy `fugu-ultra` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand 1M-re következtet a Fugu modelleknél. |\n\n### `customProviders`\n\nAz egyéni szolgáltatók lehetővé teszik a felhasználók számára, hogy OpenAI-kompatibilis végpontot hozzanak létre kódmódosítás vagy új csomagolt szolgáltató nélkül. Adja hozzá a szolgáltatót a `customProviders` alatt, majd válassza ki a `provider: \"custom:<id>\"` kóddal. Ugyanez a folyamat elérhető a `/model` **Új szolgáltatóval**. A telepítés során a Autohand a szolgáltató mentése előtt ellenőrzi az alap URL-t, a hitelesítést és a kiválasztott modellt az OpenAI-kompatibilis `/models` végponton keresztül.\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\",\n \"models\": [\n {\n \"id\": \"acme-code-1\",\n \"label\": \"Acme Code 1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n ]\n }\n }\n}\n```\nAzon helyi OpenAI-kompatibilis szervereknél, amelyek nem igényelnek hitelesítést, állítsa a `apiKeyRequired` értékét `false` értékre, és hagyja ki a `apiKey` értéket.\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------------ | ------- | -------- | ------- | ----------- |\n| `id` | húr | Igen | - | Stabil szolgáltatói azonosító. Meg kell egyeznie az objektumkulccsal, és a következőképpen van kiválasztva: `custom:<id>`. |\n| `displayName` | húr | Igen | - | A `/model` és a szolgáltató beállításai között látható név. |\n| `apiFormat` | húr | Igen | - | A következőnek kell lennie: `openai-compatible`. |\n| `baseUrl` | húr | Igen | - | Végpont gyökér, például `https://api.example.com/v1`. Autohand ellenőrzi a `/models` kódot, és felhívja a `/chat/completions` kódot. |\n| `apiKey` | húr | Feltételes | - | Adathordozó token a tárolt végpontokhoz. Kötelező, ha a `apiKeyRequired` igaz. |\n| `apiKeyRequired` | logikai | Nem | `true` | Állítsa be a false értéket a helyi vagy már hitelesített átjárókhoz. |\n| `model` | húr | Igen | - | Aktív modell azonosító. |\n| `contextWindow` | szám | Nem | Auto | Pontos kontextusablak a token-költségvetéshez, állapothoz, telemetriához és szinkronizálási metaadatokhoz. |\n| `reasoningEffort` | húr | Nem | - | Opcionális `none`, `low`, `medium`, `high` vagy `xhigh`. `reasoning_effort` néven küldve egyéni OpenAI-kompatibilis kérésekhez. |\n| `models` | tömb | Nem | - | Opcionális modellválasztó bejegyzések modellenkénti kontextussal és érvelési metaadatokkal. |\n\n### `ollama`\n\nOllama szolgáltató konfigurációja.\n```json\n{\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"port\": 11434,\n \"model\": \"llama3.2\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------- | ------------------------------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:11434` | Ollama szerver URL |\n| `port` | szám | Nem | `11434` | Szerverport (a baseUrl alternatívája) |\n| `model` | húr | Igen | - | Modellnév (pl. `llama3.2`, `codellama`) |\n\n### `llamacpp`\n\nllama.cpp szerver konfigurációja.\n```json\n{\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"default\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | llama.cpp szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | Modellazonosító |\n\n### `openai`\n\nOpenAI API konfiguráció.\n```json\n{\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-xxx\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\nAz OpenAI a Autohand beépített OpenAI bejelentkezési folyamatán keresztül is használhatja ChatGPT-előfizetését:\n```json\n{\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"contextWindow\": 1050000,\n \"model\": \"gpt-5.4\",\n \"chatgptAuth\": {\n \"accessToken\": \"...\",\n \"refreshToken\": \"...\",\n \"accountId\": \"...\"\n }\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | ----------------------- | ---------------------------- | -------------------------------------------------------------------------- |\n| `authMode` | húr | Nem | `api-key` | Hitelesítési mód: `api-key` vagy `chatgpt` |\n| `apiKey` | húr | Igen a `api-key` módhoz | - | OpenAI API kulcs |\n| `baseUrl` | húr | Nem | `https://api.openai.com/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-5.4`, `gpt-5.4-mini`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Állítsa be az elavult helyi feltételezések felülbírálásához. |\n| `chatgptAuth` | tárgy | Igen a `chatgpt` módhoz | - | Tárolt ChatGPT/Codex hitelesítési tokenek és fiókazonosító |\n\n### `mlx`\n\nMLX szolgáltató Apple Silicon Mac gépekhez (helyi következtetés).\n```json\n{\n \"mlx\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | MLX szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | MLX modell azonosító |\n\n### `llmgateway`\n\nLLM Gateway egységes API konfiguráció. Hozzáférést biztosít több LLM-szolgáltatóhoz egyetlen API-n keresztül.\n```json\n{\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"baseUrl\": \"https://api.llmgateway.io/v1\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------------- | ---------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | LLM Gateway API kulcs |\n| `baseUrl` | húr | Nem | `https://api.llmgateway.io/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-4o`, `claude-3-5-sonnet-20241022`) |\n\n**API-kulcs beszerzése:**\nKeresse fel a [llmgateway.io/dashboard](https://llmgateway.io/dashboard) webhelyet fiók létrehozásához és API-kulcsának beszerzéséhez.\n\n**Támogatott modellek:**\nAz LLM Gateway több szolgáltató modelljét támogatja, többek között:\n\n- OpenAI: `gpt-4o`, `gpt-4o-mini`, `gpt-4-turbo`\n`claude-3-5-haiku-20241022`\n- Google: `gemini-1.5-pro`, `gemini-1.5-flash`\n\n### `deepseek`\n\nDeepSeek szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.deepseek.com`-t használja alap URL-ként.\n```json\n{\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"baseUrl\": \"https://api.deepseek.com\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | --------------------------- | --------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | DeepSeek API kulcs |\n| `baseUrl` | húr | Nem | `https://api.deepseek.com` | API-végpont |\n| `model` | húr | Igen | - | Modellnév, például `deepseek-v4-flash` vagy `deepseek-v4-pro` |\n\n### `bedrock`\n\nAWS Bedrock szolgáltató konfigurációja. `converse` az alapértelmezett mód, és az AWS SDK hitelesítési láncot használja. Az OpenAI-kompatibilis módok Bedrock API-kulcsokat és Bedrock OpenAI-kompatibilis végpontokat használnak.\n```json\n{\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------- | ------ | -------- | ------- | ----------- |\n| `model` | húr | Igen | - | Alapkőzetmodell-azonosító, következtetési profilazonosító vagy ARN |\n| `region` | húr | Igen | `AWS_REGION`, majd `AWS_DEFAULT_REGION`, majd `us-east-1` a beállításban | AWS régió |\n| `apiMode` | húr | Nem | `converse` | `converse`, `openai-chat` vagy `openai-responses` |\n| `authMode` | húr | Nem | `aws-credentials` `converse`, `bedrock-api-key` OpenAI-kompatibilis módokhoz | Hitelesítési mód |\n| `profile` | húr | Nem | - | Opcionális AWS-profil a hitelesítő adatok láncos hitelesítéséhez |\n| `endpoint` | húr | Nem | Módból és régióból származtatva | Egyéni/privát Bedrock végpont |\n| `apiKey` | húr | Igen OpenAI-kompatibilis módokhoz | - | Bedrock API kulcs. Ne használjon OpenAI API-kulcsokat. |\n\nFuttassa a `aws configure sso` kódot, vagy állítsa be a `AWS_PROFILE=enterprise-prod autohand` értéket a profilalapú AWS-hitelesítéshez. Az IAM-szerepkört, a tárolót és a példány metaadat-hitelesítő adatait az AWS SDK támogatja. Modell használata előtt engedélyezze a modellelérést az AWS-konzolon.\n\n---\n\n## Munkaterület beállításai\n```json\n{\n \"workspace\": {\n \"defaultRoot\": \"/path/to/projects\",\n \"allowDangerousOps\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------------------ | -------------------------------------------------- |\n| `defaultRoot` | húr | Aktuális címtár | Alapértelmezett munkaterület, ha nincs megadva |\n| `allowDangerousOps` | logikai | `false` | Pusztító műveletek engedélyezése megerősítés nélkül |\n\n### Munkahelyi biztonság\n\nAutohand automatikusan blokkolja a működést a veszélyes könyvtárakban, hogy megelőzze a véletlen károsodást:\n\n- **Fájlrendszer gyökerei** (`/`, `C:\\`, `D:\\` stb.)\n- **Házikönyvtárak** (`~`, `/Users/<user>`, `/home/<user>`, `C:\\Users\\<user>`)\n- **Rendszerkönyvtárak** (`/etc`, `/var`, `/System`, `C:\\Windows` stb.)\n- **WSL Windows-csatlakozások** (`/mnt/c`, `/mnt/c/Users/<user>`)\n\nEzt az ellenőrzést nem lehet megkerülni. Ha egy veszélyes könyvtárban próbálja meg futtatni a autohand alkalmazást, hibaüzenetet fog látni, és meg kell adnia egy biztonságos projektkönyvtárat.\n```bash\n# This will be blocked\ncd ~ && autohand\n# Error: Unsafe Workspace Directory\n\n# This works\ncd ~/projects/my-app && autohand\n```\nA részletekért lásd a [Workspace Safety](./workspace-safety.md) részt.\n\n---\n\n## UI beállítások\n```json\n{\n \"ui\": {\n \"theme\": \"dark\",\n \"customThemes\": {\n \"company\": {\n \"colors\": {\n \"accent\": \"#7c3aed\",\n \"success\": \"#22c55e\"\n }\n }\n },\n \"autoConfirm\": false,\n \"readFileCharLimit\": 300,\n \"silentToolOutput\": false,\n \"activityVerbs\": [\"Compiling\", \"Parsing\", \"Reviewing\"],\n \"activityVerbsEnabled\": true,\n \"activitySymbol\": \"✳\",\n \"statusLine\": {\n \"showProviderModel\": true,\n \"showContext\": true,\n \"showCommandHint\": true,\n \"showPullRequest\": true,\n \"showSessionLines\": false,\n \"showQueue\": true,\n \"showActiveStatus\": true,\n \"showActiveMetrics\": true,\n \"showCancelHint\": true\n },\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ----------------------------- | ------ | ------- | ---------------------------------------------------------------------------------------------- |\n| `theme` | húr | `\"dark\"` | Színes téma a terminál kimenetéhez. A beépítettek a következők: `dark`, `light`, `dracula`, `sandy`, `tui`, `github-dark`, `cappadocia`, CODE és ___8__ `australia`. A régi `turkey` és `brazil` értékek továbbra is betöltődnek álnévként. |\n| `customThemes` | tárgy | `{}` | Soron belüli egyéni témadefiníciók a téma nevével. A használatához állítsa be a `theme` kulcsot ugyanarra a kulcsra. |\n| `autoConfirm` | logikai | `false` | A biztonságos működés érdekében hagyja ki a megerősítő felszólításokat |\n| `readFileCharLimit` | szám | `300` | Maximum megjeleníthető karakter az olvasási/kereső eszköz kimenetéből (a teljes tartalom továbbra is elküldésre kerül a modellnek) |\n| `silentToolOutput` | logikai | `false` | A szerszám kimeneti blokkjainak elrejtése a terminálban, miközben továbbra is megőrzi a modell/munkamenet szerszámeredményeit |\n| `activityVerbs` | karakterlánc vagy karakterlánc[] | beépített medence | Egyéni tevékenység ige vagy igekészlet a munkajelzőhöz, `Verb...` formátumban |\n| `activityVerbsEnabled` | logikai | `true` | Forgó tevékenység igék megjelenítése, például `Compiling...`, miközben az ügynök dolgozik |\n| `activitySymbol` | húr | `\"✳\"` | A tevékenységi ige előtt látható szimbólum a tevékenységmutató kimenetében |\n| `statusLine.showProviderModel` | logikai | `true` | Jelenítse meg az aktív szolgáltatót és modellt a szerző állapotsorában |\n| `statusLine.showContext` | logikai | `true` | Jelenítse meg a kontextus százalékos arányát a szerző állapotsorában |\n| `statusLine.showCommandHint` | logikai | `true` | Parancs, említés, készség és terminálbejegyzési tippek megjelenítése a szerző állapotsorában |\n| `statusLine.showPullRequest` | logikai | `true` | Mutassa meg a kapcsolódó lekérési kérés számát, vagy `PR #123`, ha nincs PR társítva |\n| `statusLine.showSessionLines` | logikai | `false` | Az aktuális munkamenet során hozzáadott és eltávolított sorok megjelenítése |\n| `statusLine.showQueue` | logikai | `true` | A sorba állított kérések számának megjelenítése az állapotsorban |\n| `statusLine.showActiveStatus` | logikai | `true` | Az aktív forduló állapotszövege megjelenítése, miközben az ügynök dolgozik |\n| `statusLine.showActiveMetrics` | logikai | `true` | Az eltelt idő és a token mérőszámainak megjelenítése, amíg az ügynök dolgozik |\n| `statusLine.showCancelHint` | logikai | `true` | Az Esc megszakítási tipp megjelenítése, miközben az ügynök dolgozik |\n| `completionReportEnabled` | logikai | `true` | Kérje meg a modellt, hogy a végrehajtott műveleti körök után tartalmazzon egy tömör befejezési jelentést |\n| `showCompletionNotification` | logikai | `true` | Rendszerértesítés megjelenítése a feladat befejezésekor |\n| `showThinking` | logikai | `true` | Az LLM érvelésének/gondolati folyamatának megjelenítése |\n| `terminalBell` | logikai | `true` | Csengessen terminálcsengőt, amikor a feladat befejeződött (jelvényt mutat a terminálfülön/dokkon) |\n| `checkForUpdates` | logikai | `true` | CLI frissítések keresése indításkor |\n| `updateCheckInterval` | szám | `24` | Órák a frissítési ellenőrzések között (a gyorsítótárazott eredményt az intervallumon belül használja) |\n\nAz egyéni témák bármely szemantikai színtokent felülírhatnak. A hiányzó tokenek a sötét témából származnak:\n```json\n{\n \"ui\": {\n \"theme\": \"company\",\n \"customThemes\": {\n \"company\": {\n \"vars\": {\n \"brand\": \"#7c3aed\",\n \"brandSoft\": \"#a78bfa\"\n },\n \"colors\": {\n \"accent\": \"brand\",\n \"borderAccent\": \"brandSoft\",\n \"mdHeading\": \"brand\"\n }\n }\n }\n }\n}\n```\nMegjegyzés: A `readFileCharLimit` és `silentToolOutput` csak a terminál megjelenítését érinti. A teljes tartalom továbbra is elküldésre kerül a modellnek, és eszközüzenetekben tárolódik.\n\nA néma eszközkimenetet a fájl szerkesztése nélkül is átkapcsolhatja:\n```bash\nautohand config set silent_tool_output true\nautohand config set silent_tool_output false\n```\nA forgó tevékenység igék között válthat a fájl szerkesztése nélkül:\n```bash\nautohand config set verbs activity true\nautohand config set verbs activity false\n```\nSzabja testre az igéket a konfigurációs fájlban, ha rögzített állapotcímkét vagy kis projektspecifikus elforgatást szeretne:\n```json\n{\n \"ui\": {\n \"activityVerbs\": \"Compiling\"\n }\n}\n```\n\n```json\n{\n \"ui\": {\n \"activityVerbs\": [\"Indexing\", \"Reviewing\", \"Testing\"],\n \"activitySymbol\": \">\"\n }\n}\n```\nA `activityVerbs` egyetlen karakterláncot vagy nem üres karakterlánc-tömböt fogad el. Ha a `activityVerbsEnabled` értéke `false`, a Autohand visszaesik a `Working...` értékre, ahelyett, hogy az egyéni vagy beépített igék között forogna.\n\nA fájl szerkesztése nélkül válthat a befejezési jelentések között, beleértve a strukturált `SITREP` promptot is:\n```bash\nautohand config set sitrep true\nautohand config set sitrep false\n```\n### Terminal Bell\n\nHa a `terminalBell` engedélyezve van (alapértelmezett), a Autohand megszólal a terminál csengőjén (`\\x07`), amikor egy feladat befejeződik. Ez kiváltja:\n\n- **Jelvény a terminál lapon** - Vizuális jelzőt mutat, hogy a munka elkészült\n- **Dokk ikon ugrál** - Felhívja a figyelmet, ha a terminál a háttérben van (macOS)\n- **Hang** - Ha a terminál hangjai engedélyezve vannak a terminál beállításaiban\n\nTerminálspecifikus beállítások:\n\n- **macOS terminál**: Beállítások > Profilok > Speciális > Bell (vizuális/hallható)\n- **iTerm2**: Beállítások > Profilok > Terminál > Értesítések\n- **VS Code Terminal**: Beállítások > Terminál > Integrált: Bell engedélyezése\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"terminalBell\": false\n }\n}\n```\n### Ink Renderer\n\nA Autohand alapértelmezés szerint az Ink 7 + React 19 renderert használja az interaktív terminálokhoz. A régi `ui.useInkRenderer` konfigurációs mezőt figyelmen kívül hagyja, így a régi konfigurációs fájlok nem kényszeríthetik a sima terminálszerkesztőt. A tinta a következőket nyújtja:\n\n- **Recgésmentes kimenet**: Minden UI-frissítés kötegelt React-egyeztetésen keresztül történik\n- **Munkasor funkció**: Írja be az utasításokat, amíg az ügynök dolgozik\n- **Jobb bemenetkezelés**: Nincsenek ütközések a readline-kezelők között\n- **Összeállítható felhasználói felület**: A jövőbeni fejlett felhasználói felületi funkciók alapja\n\nVészhelyzeti tartalék a terminál kompatibilitás érdekében:\n```bash\nAUTOHAND_LEGACY_UI=1 autohand\n```\nMegjegyzés: Ez a funkció kísérleti jellegű, és lehetnek szélső esetek. Az alapértelmezett ora-alapú felhasználói felület stabil és teljesen működőképes marad.\n\n### Frissítési ellenőrzés\n\nHa a `checkForUpdates` engedélyezve van (alapértelmezett), a Autohand indításkor ellenőrzi az új kiadásokat:\n```\n> Autohand v0.6.8 (abc1234) ✓ Up to date\n```\nHa elérhető frissítés:\n```\n> Autohand v0.6.7 (abc1234) ⬆ Update available: v0.6.8\n ↳ Run: curl -fsSL https://autohand.ai/install.sh | sh\n```\nHogyan működik:\n\n- Lekéri a GitHub API legújabb kiadását\n- A gyorsítótárak eredménye `~/.autohand/version-check.json`\n- Csak egyszer ellenőrzi `updateCheckInterval` óránként (alapértelmezett: 24)\n- Nem blokkoló: az indítás akkor is folytatódik, ha az ellenőrzés sikertelen\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"checkForUpdates\": false\n }\n}\n```\nVagy környezeti változón keresztül:\n```bash\nexport AUTOHAND_SKIP_UPDATE_CHECK=1\n```\n---\n\n## Ügynök beállításai\n\nAz ügynök viselkedésének és iterációs korlátainak szabályozása.\n```json\n{\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"autoMemory\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------- | ------------------------------------------------------------------------------ |\n| `maxIterations` | szám | `100` | Maximális szerszámiterációk felhasználói kérésenként a leállítás előtt |\n| `enableRequestQueue` | logikai | `true` | Lehetővé teszi a felhasználók számára, hogy kéréseket írjanak be és sorba állítsanak, miközben az ügynök dolgozik |\n| `toolSelectionCache` | logikai | `true` | Gyorsítótárazza a körönkénti szerszámséma helyi kiválasztását az egyenértékű szerszámkiválasztási bemenethez |\n| `autoMemory` | logikai | `true` | Tartós felhasználói/projektmemóriák kibontása és mentése sikeres interaktív fordulatok után |\n| `idleLogoutEnabled` | logikai | `true` | Jelentkezzen ki a hitelesített interaktív munkamenetekből az üresjárati időtúllépés után |\n| `idleTimeoutMs` | szám | `3600000` | Az inaktivitás ezredmásodpercei a hitelesített munkamenet kijelentkeztetése előtt (60 perc) |\n| `debug` | logikai | `false` | Részletes hibakeresési kimenet engedélyezése (naplózza az ügynök belső állapotát az stderr-be) |\n\n### Eszközséma kiválasztása\n\nA Autohand nem küld el minden teljes eszközsémát minden LLM-kérelemnél. A rendszerprompt tartalmaz egy kompakt eszközképesség-katalógust, és minden kérés csak egy kis konkrét sémát tesz közzé, amely a következők közül választható ki:\n\n- Az alapvető felderítési eszközök, például `tool_search`, `read_file`, `fff_find` és `fff_grep`\n- Szándékhoz illő eszközök szerkesztési, ellenőrzési, git, böngésző, web, függőségi vagy projektkövetési munkákhoz\n- A legutóbbi `tool_search` hívások során kért vagy kifejezetten név szerint megemlített eszközök\n\nEzzel elkerülhető a nagy előzetes kontextusköltség, ha az összes eszközséma elküldése a felhasználói szándék ismertsége előtt felmerül. `toolSelectionCache` csak a helyi választó gyorsítótárát vezérli az egyenértékű fordulatokhoz; nem hajt végre felhasználói előtti LLM-bemelegítést, és nem kényszerít ki nagy gyorsítótárazott prompt előtagot.\n\nA helyi választó gyorsítótárának letiltása:\n```json\n{\n \"agent\": {\n \"toolSelectionCache\": false\n }\n}\n```\nA hitelesített, régóta működő ügynöki munkamenetek életben tartásához, amíg munkára várnak:\n```json\n{\n \"agent\": {\n \"idleLogoutEnabled\": false\n }\n}\n```\nEgyetlen folyamathoz használja a `autohand --no-idle-logout` kódot, vagy állítsa be a `AUTOHAND_NO_IDLE_LOGOUT=1` értéket.\n\nAz inaktivitási idő módosításához állítsa az `idleTimeoutMs` értékét pozitív, ezredmásodpercben megadott időtartamra. Az alapértelmezett érték `3600000` (60 perc); az érvénytelen értékek az alapértelmezett értéket használják.\n\n### Hibakeresési mód\n\nEngedélyezze a hibakeresési módot az ügynök belső állapotának részletes naplózásához (reakcióhurok iterációi, prompt felépítés, munkamenet részletei). A kimenet az stderr-hez megy, hogy elkerülje a normál kimenet zavarását.\n\nHáromféleképpen engedélyezheti a hibakeresési módot (elsőbbségi sorrendben):\n\n1. **CLI jelző**: `autohand -d` vagy `autohand --debug`\n2. **Környezeti változó**: `AUTOHAND_DEBUG=1`\n3. **Konfigurációs fájl**: Állítsa be: `agent.debug: true`\n\n### Kérési sor\n\nHa a `enableRequestQueue` engedélyezve van, folytathatja az üzenetek beírását, miközben az ügynök feldolgoz egy korábbi kérést. A bevitel a sorba kerül, és automatikusan feldolgozásra kerül, amikor az aktuális feladat befejeződik.\n\n- Írja be az üzenetet, és nyomja meg az Enter billentyűt, hogy hozzáadja a sorhoz\n- Az állapotsor azt mutatja, hogy hány kérés van sorban\n- A kérések feldolgozása FIFO (first-in, first-out) sorrendben történik\n- A sor maximális mérete 10 kérés\n\n---\n\n## Engedélyek beállításai\n\nA szerszámengedélyek finom vezérlése.\n```json\n{\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\n \"run_command:npm *\",\n \"run_command:bun *\",\n \"run_command:git status\"\n ],\n \"blacklist\": [\"run_command:rm -rf *\", \"run_command:sudo *\"],\n \"rules\": [\n {\n \"tool\": \"run_command\",\n \"pattern\": \"npm test\",\n \"action\": \"allow\"\n }\n ],\n \"rememberSession\": true\n }\n}\n```\n### `mode`\n\n| Érték | Leírás |\n| ----------------- | ------------------------------------------------------ |\n| `\"interactive\"` | Jóváhagyás kérése veszélyes műveletekhez (alapértelmezett) |\n| `\"unrestricted\"` | Nincsenek felszólítások, engedélyezzen mindent |\n| `\"restricted\"` | Minden veszélyes művelet megtagadása |\n\n### `whitelist`\n\nSzerszámminták sora, amelyek soha nem igényelnek jóváhagyást.\n```json\n[\"run_command:npm *\", \"run_command:bun test\"]\n```\n### `blacklist`\n\nMindig blokkolt szerszámminták tömbje.\n```json\n[\"run_command:rm -rf /\", \"run_command:sudo *\"]\n```\n### `rules`\n\nFinom szemcsés engedélyezési szabályok.\n\n| Mező | Típus | Leírás |\n| --------- | --------- | -------------------------------------------- | ---------- | -------------- |\n| `tool` | húr | A megfelelő eszköznév |\n| `pattern` | húr | Opcionális minta az érvekhez való illeszkedéshez |\n| `action` | `\"allow\"` | `\"deny\"` | `\"prompt\"` | Intézkedések |\n\n### `rememberSession`\n\n| Típus | Alapértelmezett | Leírás |\n| ------- | ------- | -------------------------------------------- |\n| logikai | `true` | Emlékezzen az ülés jóváhagyási határozataira |\n\n### Helyi projektengedélyek\n\nMinden projektnek saját engedélybeállításai lehetnek, amelyek felülírják a globális konfigurációt. Ezeket a projekt gyökérkönyvtárában a `.autohand/settings.local.json` tartalmazza.\n\nAmikor jóváhagy egy fájlműveletet (szerkesztés, írás, törlés), a rendszer automatikusan ebbe a fájlba menti, így nem kéri újra ugyanazt a műveletet ebben a projektben.\n```json\n{\n \"version\": 1,\n \"permissions\": {\n \"whitelist\": [\n \"apply_patch:src/components/Button.tsx\",\n \"write_file:package.json\",\n \"run_command:bun test\"\n ]\n }\n}\n```\n**Hogyan működik:**\n\n- Amikor jóváhagy egy műveletet, a rendszer a következőbe menti: `.autohand/settings.local.json`\n- Legközelebb ugyanazt a műveletet a rendszer automatikusan jóváhagyja\n- A helyi projektbeállítások egyesülnek a globális beállításokkal (a helyi beállítások elsőbbséget élveznek)\n- Adja hozzá a `.autohand/settings.local.json` kódot a `.gitignore`-hoz, hogy a személyes beállítások privátak maradjanak\n\n**Mintaformátum:**\n\n- `tool_name:path` - Fájlműveletekhez (pl. `apply_patch:src/file.ts`)\n- `tool_name:command args` - Parancsokhoz (pl. `run_command:npm test`)\n\n### Megtekintési engedélyek\n\nJelenlegi engedélybeállításait kétféleképpen tekintheti meg:\n\n**CLI jelző (nem interaktív):**\n```bash\nautohand --permissions\n```\nEz a következőket jeleníti meg:\n\n- Jelenlegi engedélyezési mód (interaktív, korlátlan, korlátozott)\n- Munkaterület és konfigurációs fájlok elérési útjai\n- Minden jóváhagyott minta (engedélyezőlista)\n- Minden elutasított minta (feketelista)\n- Összefoglaló statisztika\n\n**Interaktív parancs:**\n```\n/permissions\n```\nInteraktív módban a `/permissions` parancs ugyanazokat az információkat és lehetőségeket biztosít a következőkhöz:\n\n- Elemek eltávolítása az engedélyezési listáról\n- Távolítsa el az elemeket a feketelistáról\n- Törölje az összes mentett engedélyt\n\n---\n\n## Patch mód\n\nA Patch mód lehetővé teszi megosztható, git-kompatibilis javítás létrehozását a munkaterület-fájlok módosítása nélkül. Ez hasznos:\n\n- A kód felülvizsgálata a változtatások alkalmazása előtt\n- Az AI által generált változások megosztása a csapat tagjaival\n- Reprodukálható változáskészletek készítése\n- CI/CD folyamatok, amelyeknek alkalmazása nélkül kell rögzíteni a változásokat\n\n### Használat\n```bash\n# Generate patch to stdout\nautohand --prompt \"add user authentication\" --patch\n\n# Save to file\nautohand --prompt \"add user authentication\" --patch --output auth.patch\n\n# Pipe to file (alternative)\nautohand --prompt \"refactor api handlers\" --patch > refactor.patch\n```\n### Viselkedés\n\nHa `--patch` meg van adva:\n\n- **Automatikus megerősítés**: Minden visszaigazolás automatikusan elfogadásra kerül (`--yes`)\n- **Nincsenek felszólítások**: Nem jelennek meg jóváhagyási értesítések (`--unrestricted` vélelmezett)\n- **Csak előnézet**: A változtatásokat rögzíti, de NEM írja lemezre\n- **Kikényszerített biztonság**: A feketelistán szereplő műveletek (`.env`, SSH-kulcsok, veszélyes parancsok) továbbra is blokkolva vannak\n\n### Javítások alkalmazása\n\nA címzettek szabványos git parancsokkal alkalmazhatják a javítást:\n```bash\n# Check what would be applied (dry-run)\ngit apply --check changes.patch\n\n# Apply the patch\ngit apply changes.patch\n\n# Apply with 3-way merge (handles conflicts better)\ngit apply -3 changes.patch\n\n# Apply and stage changes\ngit apply --index changes.patch\n\n# Reverse a patch\ngit apply -R changes.patch\n```\n### Patch formátum\n\nA generált javítás a git egységes diff formátumát követi:\n```diff\ndiff --git a/src/auth.ts b/src/auth.ts\nnew file mode 100644\n--- /dev/null\n+++ b/src/auth.ts\n@@ -0,0 +1,15 @@\n+export function authenticate(user: string, password: string) {\n+ // Implementation here\n+}\n\ndiff --git a/src/index.ts b/src/index.ts\n--- a/src/index.ts\n+++ b/src/index.ts\n@@ -1,5 +1,7 @@\n import express from 'express';\n+import { authenticate } from './auth';\n\n const app = express();\n+app.use(authenticate);\n```\n### Kilépési kódok\n\n| Kód | Jelentése |\n| ---- | ---------------------------------------------------- |\n| `0` | Siker, patch generált |\n| `1` | Hiba (hiányzó `--prompt`, engedély megtagadva stb.) |\n\n### Kombinálva más zászlókkal\n```bash\n# Use specific model\nautohand --prompt \"optimize queries\" --patch --model gpt-4o\n\n# Specify workspace\nautohand --prompt \"add tests\" --patch --path ./my-project\n\n# Use custom config\nautohand --prompt \"refactor\" --patch --config ~/.autohand/work.json\n```\n### Csapatmunkafolyamat-példa\n```bash\n# Developer A: Generate patch for a feature\nautohand --prompt \"implement user dashboard with charts\" --patch --output dashboard.patch\n\n# Share via git (create PR with just the patch file)\ngit checkout -b patch/dashboard\ngit add dashboard.patch\ngit commit -m \"Add dashboard feature patch\"\ngit push\n\n# Developer B: Review and apply\ngit fetch origin patch/dashboard\ngit apply dashboard.patch\n# Run tests, review code, then commit\ngit add -A && git commit -m \"feat: add user dashboard with charts\"\n```\n---\n\n## Hálózati beállítások\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Max | Leírás |\n| ------------ | ------ | ------- | --- | --------------------------------------- |\n| `maxRetries` | szám | `3` | `5` | Próbálkozzon újra sikertelen API-kérésekkel |\n| `timeout` | szám | `30000` | - | Kérelem időtúllépése ezredmásodpercben |\n| `retryDelay` | szám | `1000` | - | Az újrapróbálkozások közötti késleltetés ezredmásodpercben |\n\n---\n\n## Telemetriai beállítások\n\nA telemetria **alapértelmezés szerint le van tiltva** (feliratkozás). Engedélyezze a Autohand fejlesztéséhez.\n```json\n{\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true,\n \"companySecret\": \"\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | -------------------------- | ---------------------------------------------- |\n| `enabled` | logikai | `false` | Telemetria engedélyezése/letiltása (feliratkozás) |\n| `apiBaseUrl` | húr | `https://api.autohand.ai` | Telemetria API végpont |\n| `batchSize` | szám | `20` | Az automatikus kiürítés előtt kötegelt események száma |\n| `flushIntervalMs` | szám | `60000` | Öblítési időköz ezredmásodpercben (1 perc) |\n| `maxQueueSize` | szám | `500` | Maximális sorméret a régi események eldobása előtt |\n| `maxRetries` | szám | `3` | Próbálkozzon újra sikertelen telemetriai kérések esetén |\n| `enableSessionSync` | logikai | `true` | Szinkronizálja a munkameneteket a felhővel a csapatfunkciókhoz, ha a telemetria engedélyezve van |\n| `companySecret` | húr | `\"\"` | Vállalati titok API-hitelesítéshez |\n\nA szolgáltató/modell telemetria tartalmazza az aktív szolgáltatói azonosítót, a modellazonosítót és az elérhető nem titkos metaadatokat, például az egyéni szolgáltató megjelenítési nevét, API-formátumát, érvelési erőfeszítéseit és kontextusablakát. Az API-kulcsok és a vivőjogkivonatok soha nem szerepelnek benne.\n\n---\n\n## Külső ügynökök\n\nEgyéni ügynökdefiníciók betöltése külső könyvtárakból.\n```json\n{\n \"externalAgents\": {\n \"enabled\": true,\n \"paths\": [\"~/.autohand/agents\", \"/team/shared/agents\"]\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | -------- | ------- | -------------------------------- |\n| `enabled` | logikai | `false` | Külső ügynök betöltésének engedélyezése |\n| `paths` | string[] | `[]` | Könyvtárak az ügynökök betöltéséhez |\n\n---\n\n## Skills System\n\nA készségek olyan utasításcsomagok, amelyek speciális utasításokat adnak az AI-ügynöknek. Úgy működnek, mint az igény szerinti `AGENTS.md` fájlok, amelyek bizonyos feladatokhoz aktiválhatók.\n\n### Készségek felfedező helyek\n\nA készségek több helyről fedezhetők fel, és a későbbi források élveznek elsőbbséget:\n\n| Helyszín | Forrásazonosító | Leírás |\n| ----------------------------------------- | ------------------- | ------------------------------------------ |\n| `~/.codex/skills/**/SKILL.md` | `codex-user` | Felhasználói szintű Codex készségek (rekurzív) |\n| `~/.claude/skills/*/SKILL.md` | `claude-user` | Felhasználói szintű Claude-készségek (egy szint) |\n| `~/.autohand/skills/**/SKILL.md` | `autohand-user` | Felhasználói szintű Autohand készségek (rekurzív) |\n| `<project>/.claude/skills/*/SKILL.md` | `claude-project` | Projektszintű Claude-készségek (egy szint) |\n| `<project>/.autohand/skills/**/SKILL.md` | `autohand-project` | Projekt szintű Autohand készségek (rekurzív) |\n\n### Automatikus másolási viselkedés\n\nA Codex vagy Claude helyekről felfedezett készségek automatikusan átmásolódnak a megfelelő Autohand helyre:\n\n- `~/.codex/skills/` és `~/.claude/skills/` → `~/.autohand/skills/`\n- `<project>/.claude/skills/` → `<project>/.autohand/skills/`\n\nA Autohand helyeken meglévő készségek soha nem íródnak felül.\n\n### SKILL.md formátum\n\nA YAML frontmatter-t használó készségek, majd a leértékelési tartalom:\n```markdown\n---\nname: my-skill-name\ndescription: Brief description of the skill\nlicense: MIT\ncompatibility: Works with Node.js 18+\nallowed-tools: read_file write_file run_command\nmetadata:\n author: your-name\n version: \"1.0.0\"\n---\n\n# My Skill\n\nDetailed instructions for the AI agent...\n```\n| Mező | Kötelező | Max hossz | Leírás |\n| ---------------- | -------- | ---------- | ------------------------------------------- |\n| `name` | Igen | 64 karakter | Kisbetűs alfanumerikus, csak kötőjelekkel |\n| `description` | Igen | 1024 karakter | A készség rövid leírása |\n| `license` | Nem | - | Licencazonosító (pl. MIT, Apache-2.0) |\n| `compatibility` | Nem | 500 karakter | Kompatibilitási megjegyzések |\n| `allowed-tools` | Nem | - | Az engedélyezett eszközök szóközzel tagolt listája |\n| `metadata` | Nem | - | További kulcs-érték metaadatok |\n\n### Beviteli előtagok\n\nA Autohand támogatja a speciális előtagokat a beviteli promptban:\n\n| Előtag | Leírás | Példa |\n| ------ | ------------------------------- | ---------------------------------- |\n| `/` | Slash parancsok | `/help`, `/model`, `/quit`, `/exit` |\n| `@` | Fájl említések (automatikus kiegészítés) | `@src/index.ts` |\n| `$` | Szakértelem említése (automatikus kiegészítés) | `$frontend-design`, `$code-review` |\n| `!` | A terminálparancsok közvetlen futtatása | `! git status`, `! ls -la` |\n\n**Képességmegemlítések (`$`):**\n\n- Írja be a következőt: `$`, majd karaktereket az automatikus kiegészítéssel elérhető készségek megtekintéséhez\n- A Tab elfogadja a felső javaslatot (pl. `$frontend-design`)\n- A készségek a következőből fedezhetők fel: `~/.autohand/skills/` és `<project>/.autohand/skills/`\n- Az aktivált készségek a prompthoz vannak csatolva, mint speciális utasítások az aktuális munkamenethez\n- Az előnézeti panel a készség metaadatait mutatja (név, leírás, aktiválási állapot)\n\n**Shell-parancsok (`!`):**\n\n- A parancsok az aktuális munkakönyvtárban futnak\n- A kimenet közvetlenül a terminálon jelenik meg\n- Nem megy az LLM-be\n- 30 másodperces időtúllépés\n- A végrehajtás után visszatér a prompthoz\n\n### Slash parancsok\n\n#### `/skills` - Csomagkezelő\n\n| Parancs | Leírás |\n| -------------------------------- | ------------------------------------------- |\n| `/skills` | Sorolja fel az összes elérhető készséget |\n| `/skills use <name>` | Képesség aktiválása az aktuális munkamenethez |\n| `/skills deactivate <name>` | Készség deaktiválása |\n| `/skills info <name>` | Részletes képzettségi információk megjelenítése |\n| `/skills install` | Tallózás és telepítés a közösségi nyilvántartásból |\n| `/skills install @<slug>` | Telepítsen közösségi készségeket a slug |\n| `/skills search <query>` | Keresés a közösségi készségek nyilvántartásában |\n| `/skills trending` | Felkapott közösségi készségek megjelenítése |\n| `/skills remove <slug>` | Közösségi készség eltávolítása |\n| `/skills new` | Hozzon létre új készségeket interaktívan |\n| `/skills feedback <slug> <1-5>` | Értékeljen egy közösségi képességet |\n\n#### `/learn` - LLM-alapú Skill Advisor\n\n| Parancs | Leírás |\n| ---------------- | ---------------------------------------------------------------- |\n| `/learn` | A projekt elemzése és készségek ajánlása (gyors szkennelés) |\n| `/learn deep` | Mélyszkennelési projekt (forrásfájlokat olvas) a célzottabb eredmények érdekében |\n| `/learn update` | A projekt újraelemzése és az LLM által generált elavult készségek regenerálása |\n\nA `/learn` kétfázisú LLM-folyamatot használ:\n\n1. **1. fázis – Elemzés + Rangsorolás + Ellenőrzés**: Ellenőrzi a projekt szerkezetét, auditálja a telepített készségeket redundanciák/konfliktusok szempontjából, és rangsorolja a közösségi készségeket relevancia szerint (0-100).\n2. **2. fázis – Létrehozás** (feltételes): Ha egyik közösségi képesség sem ér el 60 feletti pontszámot, felajánlja a projektjéhez szabott egyéni képesség létrehozását.\nA generált készségek metaadatokat (`agentskill-source: llm-generated`, `agentskill-project-hash`) tartalmaznak, így a `/learn update` képes észlelni, ha megváltozik a kódbázis, és újra előállíthatja az elavult készségeket.\n\n### Automatikus készséggenerálás (`--auto-skill`)\n\nA `--auto-skill` CLI jelző készségeket generál az interaktív tanácsadói folyamat nélkül:\n```bash\nautohand --auto-skill\n```\nEz:\n\n1. Elemezze a projekt felépítését (package.json, követelmények.txt stb.)\n2. Nyelvek, keretrendszerek és minták észlelése\n3. Generáljon 3 releváns készséget az LLM segítségével\n4. Mentse el a készségeket ide: `<project>/.autohand/skills/`\n\nA célzottabb, interaktívabb élmény érdekében használja inkább a `/learn` kódot egy munkameneten belül.\n\nAz észlelt minták a következők:\n\n- **Nyelvek**: TypeScript, JavaScript, Python, Rust, Go\n- **Frameworks**: React, Next.js, Vue, Express, Flask, Django\n- **Minták**: CLI eszközök, tesztelés, monorepo, Docker, CI/CD\n\n---\n\n## API beállítások\n\nBackend API konfiguráció a csapatfunkciókhoz.\n```json\n{\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\",\n \"companySecret\": \"sk-team-xxx\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------------------------- | ---------------------------------------- |\n| `baseUrl` | húr | `https://api.autohand.ai` | API-végpont |\n| `companySecret` | húr | - | Csapat/vállalati titok a megosztott funkciókhoz |\n\nKörnyezeti változókkal is beállítható:\n\n- `AUTOHAND_API_URL` → `api.baseUrl`\n- `AUTOHAND_SECRET` → `api.companySecret`\n\n---\n\n## Hitelesítési beállítások\n\nHitelesítés és felhasználói munkamenet konfigurálása.\n```json\n{\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\",\n \"avatar\": \"https://example.com/avatar.png\"\n },\n \"expiresAt\": \"2025-12-31T23:59:59Z\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------- | ------ | ------- | --------------------------------------------- |\n| `token` | húr | - | Hitelesítési token API-hozzáféréshez |\n| `user` | tárgy | - | Hitelesített felhasználói adatok |\n| `user.id` | húr | - | Felhasználói azonosító |\n| `user.email` | húr | - | Felhasználó e-mail címe |\n| `user.name` | húr | - | Felhasználó megjelenített név |\n| `user.avatar` | húr | - | Felhasználói avatar URL-je (nem kötelező) |\n| `expiresAt` | húr | - | Token lejárati időbélyegzője (ISO 8601 formátum) |\n\n---\n\n## Közösségi készségek beállításai\n\nKonfiguráció a közösségi készségek felfedezéséhez és kezeléséhez.\n```json\n{\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------------------------- | ------- | ------- | -------------------------------------------------------------- |\n| `enabled` | logikai | `true` | Közösségi készségek funkcióinak engedélyezése |\n| `showSuggestionsOnStartup` | logikai | `true` | Képességi javaslatok megjelenítése indításkor, ha nem állnak rendelkezésre szállítói ismeretek |\n| `autoBackup` | logikai | `true` | A felfedezett szállítói ismeretek automatikus biztonsági mentése API |\n\n---\n\n## Megosztási beállítások\n\nKonfiguráció a munkamenet megosztásához a `/share` paranccsal. A munkamenetek a [autohand.link](https://autohand.link) címen találhatók.\n```json\n{\n \"share\": {\n \"enabled\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ------------------------------------ |\n| `enabled` | logikai | `true` | A `/share` parancs engedélyezése/letiltása |\n\n### YAML formátum\n```yaml\nshare:\n enabled: true\n```\n### Munkamenet-megosztás letiltása\n\nHa biztonsági vagy adatvédelmi okokból ki szeretné kapcsolni a munkamenet-megosztást:\n```json\n{\n \"share\": {\n \"enabled\": false\n }\n}\n```\nHa le van tiltva, a `/share` futtatásakor a következő jelenik meg:\n```\nSession sharing is disabled.\nTo enable, set share.enabled: true in your config file.\n```\n---\n\n## Beállítások szinkronizálása\n\nA Autohand szinkronizálhatja a konfigurációt az eszközök között a bejelentkezett felhasználók számára. A beállításokat a Cloudflare R2 biztonságosan tárolja, és a feltöltés előtt titkosítja.\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"exclude\": [],\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------------- | -------- | ---------------- | --------------------------------------------------- |\n| `enabled` | logikai | `true` (naplózva) | Beállítások szinkronizálásának engedélyezése/letiltása |\n| `interval` | szám | `300000` | Szinkronizálási idő ezredmásodpercben (alapértelmezett: 5 perc) |\n| `exclude` | string[] | `[]` | Globális minták a szinkronizálásból kizárandó |\n| `includeTelemetry` | logikai | `false` | Telemetriai adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n| `includeFeedback` | logikai | `false` | Visszajelzési adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n\n### CLI zászló\n```bash\n# Disable sync for this session\nautohand --sync-settings=false\n\n# Enable sync (default for logged users)\nautohand --sync-settings\n```\n### Mi lesz szinkronizálva\n\nAlapértelmezés szerint ezek az elemek szinkronizálva vannak a bejelentkezett felhasználók számára:\n\n- **Konfiguráció** (`config.json`) - Az API-kulcsok a feltöltés előtt titkosítva vannak\n- **Egyéni ügynökök** (`agents/`)\n- **Közösségi készségek** (`community-skills/`)\n- **Felhasználói akasztók** (`hooks/`)\n- **Memória** (`memory/`)\n- **Projektismeret** (`projects/`)\n- **Munkamenetek előzményei** (`sessions/`)\n- **Megosztott tartalom** (`share/`)\n- **Egyéni készségek** (`skills/`)\n\n### Mi nem szinkronizál (alapértelmezés szerint)\n\n- **Eszközazonosító** (`device-id`) - Eszközönként egyedi\n- **Hibanaplók** (`error.log`) - Csak helyi\n- **Verziógyorsítótár** (`version-*.json`) - Helyi gyorsítótár fájlok\n\n### Beleegyezés alapú szinkronizálás\n\nEzek az elemek kifejezett feliratkozást igényelnek a konfigurációban:\n\n- **Telemetriai adatok** - Állítsa be a `sync.includeTelemetry: true` szinkronizálást\n- **Visszajelzési adatok** - Állítsa be a `sync.includeFeedback: true` szinkronizálását\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"includeTelemetry\": true,\n \"includeFeedback\": true\n }\n}\n```\n### Konfliktusmegoldás\n\nHa ütközések lépnek fel (ugyanaz a fájl több eszközön módosítva), a **felhőverzió nyer**. Ez biztosítja a következetességet az új eszközökön való bejelentkezéskor.\n\n### Biztonság\n\nA `config.json` API-kulcsait és egyéb bizalmas adatait a rendszer a hitelesítési token segítségével titkosítja a feltöltés előtt. Csak az Ön hitelesítő adataival lehet visszafejteni.\n\nA távoli fájlnevek csak relatív POSIX-útvonalként fogadhatók el az engedélyezett szinkronizálási kategóriákon belül. A szinkronizálás elutasítja a könyvtárbejárást, az abszolút vagy Windows-stílusú útvonalakat, az ismétlődő vagy üres szegmenseket, valamint az engedélyezett gyökéren kívülre mutató szimbolikus hivatkozásokkal átirányított célokat.\n\nAz alkalmazás bejelentkezési tokenje az `Authorization` fejlécben csak olyan átviteli URL-ekhez kerül elküldésre, amelyek eredete megegyezik a beállított szinkronizálási API eredetével. A más eredetű, előre aláírt HTTPS URL-ek soha nem kapják meg ezt a tokent; a nem biztonságos vagy hibás más eredetű URL-ek elutasításra kerülnek.\n\n**Mi van titkosítva:**\n\n- `apiKey` nevű mezők\n- `Key`, `Token`, `Secret` végződő mezők\n- A `password` mező\n\n### Hogyan működik\n\n1. **Indításkor**: Ha be van jelentkezve, a szinkronizálási szolgáltatás automatikusan elindul\n2. **5 percenként**: A beállításokat összehasonlítja a felhőalapú tárolással\n3. **A felhő nyer**: A távoli módosítások letöltése először történik meg\n4. **Helyi feltöltések**: Új helyi módosítások kerülnek feltöltésre\n5. **Kilépéskor**: A szinkronizálási szolgáltatás kecsesen leáll\n\n### Fájlok kizárása\n\nKizárhat bizonyos fájlokat vagy mintákat a szinkronizálásból:\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"exclude\": [\"custom-local-config.json\", \"temp/*\"]\n }\n}\n```\n### YAML formátum\n```yaml\nsync:\n enabled: true\n interval: 300000\n exclude: []\n includeTelemetry: false\n includeFeedback: false\n```\n---\n\n## MCP beállítások\n\nÁllítsa be az MCP-kiszolgálókat (Model Context Protocol) a Autohand külső eszközökkel történő bővítésére.\n```json\n{\n \"mcp\": {\n \"enabled\": true,\n \"servers\": [\n {\n \"name\": \"filesystem\",\n \"transport\": \"stdio\",\n \"command\": \"npx\",\n \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/tmp\"],\n \"env\": {},\n \"autoConnect\": true\n },\n {\n \"name\": \"context7\",\n \"transport\": \"http\",\n \"url\": \"https://mcp.context7.com/mcp\",\n \"headers\": {\n \"CONTEXT7_API_KEY\": \"ctx7sk-your-api-key\"\n },\n \"autoConnect\": true\n }\n ]\n }\n}\n```\n### `mcp.enabled`\n\n- **Típus**: `boolean`\n- **Alapértelmezett**: `true`\n- **Leírás**: Az összes MCP-támogatás engedélyezése vagy letiltása. Ha `false`, akkor az indításkor nem csatlakozik szerver, és az MCP-eszközök nem érhetők el.\n\n### `mcp.servers`\n\n- **Típus**: `McpServerConfigEntry[]`\n- **Alapértelmezett**: `[]`\n- **Leírás**: MCP szerver konfigurációk tömbje.\n\n### Szerver beviteli mezői\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | --------------------------------- | -------------- | ------- | -------------------------------------------------------------- |\n| `name` | `string` | Igen | - | Egyedi szerverazonosító |\n| `transport` | `\"stdio\"` \\| `\"sse\"` \\| `\"http\"` | Igen | - | Szállítás típusa |\n| `command` | `string` | Igen (stdio) | - | Parancs a szerverfolyamat elindításához |\n| `args` | `string[]` | Nem | `[]` | Érvek a parancs mellett |\n| `url` | `string` | Igen (sse/http) | - | Szervervégpont URL |\n| `headers` | `Record<string, string>` | Nem | `{}` | Egyéni HTTP-fejlécek http/sse szállításhoz (pl. hitelesítési tokenek) |\n| `env` | `Record<string, string>` | Nem | `{}` | A kiszolgálónak átadott környezeti változók |\n| `autoConnect` | `boolean` | Nem | `true` | Automatikus csatlakozás indításkor |\n\n> A szerverek aszinkron módon csatlakoznak a háttérben az indítás során anélkül, hogy blokkolnák a promptot. A `/mcp` segítségével interaktívan kezelheti a szervereket, vagy a `/mcp add` segítségével böngészhet a közösségi nyilvántartásban, vagy adhat hozzá egyéni szervereket.\n\n> A teljes MCP-dokumentációért lásd: [docs/mcp.md](mcp.md).\n\n---\n\n## Hooks beállítások\n\nKonfiguráció életciklus-horogokhoz, amelyek shell-parancsokat futtatnak az ügynökeseményeken. A részletekért lásd a [Hooks dokumentációt] (./hooks.md).\n```json\n{\n \"hooks\": {\n \"enabled\": true,\n \"hooks\": [\n {\n \"event\": \"pre-tool\",\n \"command\": \"echo \\\"Running tool: $HOOK_TOOL\\\" >> ~/.autohand/hooks.log\",\n \"description\": \"Log all tool executions\",\n \"enabled\": true\n },\n {\n \"event\": \"file-modified\",\n \"command\": \"./scripts/on-file-change.sh\",\n \"description\": \"Custom file change handler\",\n \"filter\": { \"path\": [\"src/**/*.ts\"] }\n },\n {\n \"event\": \"post-response\",\n \"command\": \"curl -X POST https://api.example.com/webhook -d '{\\\"tokens\\\": $HOOK_TOKENS}'\",\n \"description\": \"Track token usage\",\n \"async\": true\n }\n ]\n }\n}\n```\n### `hooks`\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ---------------------------------- |\n| `enabled` | logikai | `true` | Az összes hook engedélyezése/letiltása globálisan |\n| `hooks` | tömb | `[]` | Horogdefiníciók tömbje |\n\n### Hook meghatározása\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | ------- | -------- | ------- | --------------------------------- |\n| `event` | húr | Igen | - | Bekapcsolandó esemény |\n| `command` | húr | Igen | - | Shell parancs végrehajtásához |\n| `description` | húr | Nem | - | A `/hooks` kijelző leírása |\n| `enabled` | logikai | Nem | `true` | Aktív-e a horog |\n| `timeout` | szám | Nem | `5000` | Időtúllépés ezredmásodpercben |\n| `async` | logikai | Nem | `false` | Futtasson blokkolás nélkül |\n| `filter` | tárgy | Nem | - | Szűrés szerszám vagy útvonal szerint |\n\n### Hook események\n\n| Esemény | Amikor kirúgták |\n| ---------------- | -------------------------------------- |\n| `pre-tool` | Mielőtt bármilyen eszköz végrehajtaná |\n| `post-tool` | A szerszám befejezése után |\n| `file-modified` | A fájl létrehozásakor/módosításakor/törlésekor |\n| `pre-prompt` | Mielőtt elküldené az LLM-nek |\n| `post-response` | Miután az LLM válaszol |\n| `session-error` | Hiba esetén |\n\n### Környezeti változók\n\nAmikor a hook fut, ezek a környezeti változók állnak rendelkezésre:\n\n| Változó | Leírás |\n| ----------------- | ---------------------------- |\n| `HOOK_EVENT` | Esemény neve |\n| `HOOK_WORKSPACE` | Munkaterület gyökérútvonala |\n| `HOOK_TOOL` | Szerszámnév (szerszámesemények) |\n| `HOOK_ARGS` | JSON-kódolt eszköz args |\n| `HOOK_SUCCESS` | igaz/hamis (utóeszköz) |\n| `HOOK_PATH` | Fájl elérési útja (fájlmódosított) |\n| `HOOK_TOKENS` | Felhasznált tokenek (válasz után) |\n\n---\n\n## Chrome-bővítmény beállításai\n\nIrányítsd a Autohand Chrome-bővítmény integrációját. Tekintse meg a teljes útmutatót: [Autohand Chrome-ban](./autohand-in-chrome.md).\n```json\n{\n \"chrome\": {\n \"extensionId\": \"your-extension-id\",\n \"enabledByDefault\": false,\n \"browser\": \"auto\",\n \"userDataDir\": \"/path/to/chrome/user-data\",\n \"profileDirectory\": \"Default\",\n \"installUrl\": \"https://autohand.ai/chrome\"\n }\n}\n```\n| Kulcs | Típus | Alapértelmezett | Leírás |\n| ------------------- | --------- | -------- | -------------------------------------------------------------------------- |\n| `extensionId` | `string` | — | Telepített Chrome-bővítményazonosító a közvetlen átadáshoz |\n| `enabledByDefault` | `boolean` | `false` | A böngészőhíd automatikus indítása a CLI |-vel\n| `browser` | `string` | `\"auto\"` | Előnyben részesített Chromium böngésző: `auto`, `chrome`, `chromium`, `brave`, `edge` |\n| `userDataDir` | `string` | — | Böngésző felhasználói adatok könyvtára a megfelelő profil megcélzásához |\n| `profileDirectory` | `string` | — | Böngészőprofil-könyvtár neve (pl. `\"Default\"`, `\"Profile 1\"`) |\n| `installUrl` | `string` | — | Tartalék URL, ha a bővítményazonosító nincs konfigurálva |\n\n### CLI zászlók\n```bash\nautohand --browser # Start with browser bridge enabled\nautohand --no-browser # Start with browser bridge disabled\n```\n### Slash parancsok\n```\n/browser # Open browser integration panel\n/browser disconnect # Close the browser bridge connection\n```\n---\n\n## Teljes példa\n\n### JSON formátum (`~/.autohand/config.json`)\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\"\n },\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"model\": \"llama3.2\"\n },\n \"workspace\": {\n \"defaultRoot\": \"~/projects\",\n \"allowDangerousOps\": false\n },\n \"ui\": {\n \"theme\": \"dark\",\n \"autoConfirm\": false,\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n },\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n },\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\"run_command:npm *\", \"run_command:bun *\"],\n \"blacklist\": [\"run_command:rm -rf /\"],\n \"rememberSession\": true\n },\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n },\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true\n },\n \"externalAgents\": {\n \"enabled\": false,\n \"paths\": []\n },\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\"\n },\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\"\n }\n },\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n },\n \"share\": {\n \"enabled\": true\n },\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n### YAML formátum (`~/.autohand/config.yaml`)\n```yaml\nprovider: openrouter\n\nopenrouter:\n apiKey: sk-or-v1-your-key-here\n baseUrl: https://openrouter.ai/api/v1\n model: your-modelcard-id-here\n\nollama:\n baseUrl: http://localhost:11434\n model: llama3.2\n\nworkspace:\n defaultRoot: ~/projects\n allowDangerousOps: false\n\nui:\n theme: dark\n autoConfirm: false\n showCompletionNotification: true\n showThinking: true\n terminalBell: true\n checkForUpdates: true\n updateCheckInterval: 24\n\nagent:\n maxIterations: 100\n enableRequestQueue: true\n toolSelectionCache: true\n idleLogoutEnabled: true\n idleTimeoutMs: 3600000\n debug: false\n\npermissions:\n mode: interactive\n whitelist:\n - \"run_command:npm *\"\n - \"run_command:bun *\"\n blacklist:\n - \"run_command:rm -rf /\"\n rememberSession: true\n\nnetwork:\n maxRetries: 3\n timeout: 30000\n retryDelay: 1000\n\ntelemetry:\n enabled: false\n apiBaseUrl: https://api.autohand.ai\n batchSize: 20\n flushIntervalMs: 60000\n maxQueueSize: 500\n maxRetries: 3\n enableSessionSync: true\n\nexternalAgents:\n enabled: false\n paths: []\n\napi:\n baseUrl: https://api.autohand.ai\n\nauth:\n token: your-auth-token\n user:\n id: user-id\n email: user@example.com\n name: User Name\n\ncommunitySkills:\n enabled: true\n showSuggestionsOnStartup: true\n autoBackup: true\n\nshare:\n enabled: true\n\nsync:\n enabled: true\n interval: 300000\n includeTelemetry: false\n includeFeedback: false\n```\n### TOML formátum (`~/.autohand/config.toml`)\n```toml\nprovider = \"openrouter\"\n\n[openrouter]\napiKey = \"sk-or-v1-your-key-here\"\nbaseUrl = \"https://openrouter.ai/api/v1\"\nmodel = \"your-modelcard-id-here\"\n\n[ollama]\nbaseUrl = \"http://localhost:11434\"\nmodel = \"llama3.2\"\n\n[workspace]\ndefaultRoot = \"~/projects\"\nallowDangerousOps = false\n\n[ui]\ntheme = \"dark\"\nautoConfirm = false\nshowCompletionNotification = true\nshowThinking = true\nterminalBell = true\ncheckForUpdates = true\nupdateCheckInterval = 24\n\n[ui.customThemes.company.vars]\nbrand = \"#7c3aed\"\nbrandSoft = \"#a78bfa\"\n\n[ui.customThemes.company.colors]\naccent = \"brand\"\nborderAccent = \"brandSoft\"\nmdHeading = \"brand\"\n\n[agent]\nmaxIterations = 100\nenableRequestQueue = true\ntoolSelectionCache = true\nidleLogoutEnabled = true\nidleTimeoutMs = 3600000\ndebug = false\n\n[permissions]\nmode = \"interactive\"\nwhitelist = [\"run_command:npm *\", \"run_command:bun *\"]\nblacklist = [\"run_command:rm -rf /\"]\nrememberSession = true\n```\n---\n\n## Címtárszerkezet\n\nA Autohand az adatokat `~/.autohand/` (vagy `$AUTOHAND_HOME`) kódban tárolja:\n```\n~/.autohand/\n├── config.json # Main configuration\n├── config.toml # Alternative TOML config\n├── config.yaml # Alternative YAML config\n├── device-id # Unique device identifier\n├── error.log # Error log\n├── feedback.log # Feedback submissions\n├── sessions/ # Session history\n├── projects/ # Project knowledge base\n├── memory/ # User-level memory\n├── commands/ # Custom commands\n├── agents/ # Agent definitions\n├── tools/ # Custom meta-tools\n├── feedback/ # Feedback state\n└── telemetry/ # Telemetry data\n ├── queue.json\n └── session-sync-queue.json\n```\n**Projektszintű könyvtár** (a munkaterület gyökérkönyvtárában):\n```\n<project>/.autohand/\n├── settings.local.json # Local project permissions (gitignore this)\n├── memory/ # Project-specific memory\n├── skills/ # Project-specific skills\n└── tools/ # Project-specific meta-tools\n```\n---\n\n## CLI-jelzők (konfig felülbírálása)\n\nEzek a jelzők felülírják a konfigurációs fájl beállításait:\n\n### Alapjelzők\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `-v, --version` | Az aktuális verzió kiadása |\n| `-p, --prompt [text]` | Futtasson egyetlen utasítást parancs módban |\n| `--path <path>` | Munkaterület gyökér felülbírálása |\n| `--config <path>` | Egyéni konfigurációs fájl használata |\n| `--model <model>` | Modell felülírása |\n| `--temperature <n>` | Beállított mintavételi hőmérséklet (0-1) |\n| `--thinking [level]` | Gondolkodási/érvelési mélység beállítása (nincs, normál, kiterjesztett) |\n| `-y, --yes` | Automatikus megerősítési kérések |\n| `--dry-run` | Előnézet végrehajtás nélkül |\n| `-d, --debug` | Részletes hibakeresési kimenet engedélyezése |\n| `--bare` | Minimális explicit mód; beállítja a `AUTOHAND_CODE_SIMPLE=1` értéket és letiltja a perjel parancsokat |\n\n### Engedélyek és biztonság\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--unrestricted` | Nincs jóváhagyási felszólítás |\n| `--restricted` | Veszélyes műveletek megtagadása |\n| `--permissions` | Jelenítse meg az aktuális engedélybeállításokat, és lépjen ki |\n| `--no-idle-logout` | A hitelesített tétlen kijelentkezés letiltása a hosszan futó ügynöki munkamenetekhez |\n| `--yolo [pattern]` | Eszközhívások megfelelő minta automatikus jóváhagyása (pl. `allow:read,write` vagy `deny:delete`) |\n| `--timeout <seconds>` | Időtúllépés másodpercben az automatikus jóváhagyási módhoz |\n\n### Git & Worktree\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--worktree [name]` | Munkamenet futtatása elszigetelt git-munkafán (opcionális munkafa/ág neve) |\n| `--tmux` | Indítás egy dedikált tmux munkamenetben (az `--worktree`-t jelenti; nem használható a `--no-worktree` kóddal) |\n| `--no-worktree` | A git munkafa elkülönítésének letiltása automatikus módban |\n| `-c, --auto-commit` | Változások automatikus véglegesítése a feladatok elvégzése után |\n| `--patch` | Git javítás generálása változtatások alkalmazása nélkül |\n| `--output <file>` | A javítás kimeneti fájlja (a --patch-el együtt használatos) |\n\n### Automatikus mód\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-mode [prompt]` | Engedélyezze az interaktív automatikus módot, vagy indítson önálló hurkot egy soron belüli feladattal |\n| `--max-iterations <n>` | Maximális automatikus módú iterációk (alapértelmezett: 50) |\n| `--completion-promise <text>` | Befejezésjelző szövege (alapértelmezett: \"KÉSZ\") |\n| `--checkpoint-interval <n>` | A Git minden N iterációt végrehajt (alapértelmezett: 5) |\n| `--max-runtime <m>` | Maximális futási idő percekben (alapértelmezett: 120) |\n| `--max-cost <d>` | Maximális API költség dollárban (alapértelmezett: 10) |\n| `--interactive-on-complete` | Az automatikus mód vége után adja át közvetlenül az interaktív módba (csak TTY) |\n\n### Készségek és tanulás\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-skill` | Készségek automatikus generálása projektelemzés alapján (lásd még: `/learn` az interaktív tanácsadóhoz) |\n| `--learn` | Futtassa a `/learn` készségtanácsadót nem interaktív módon (a javasolt készségek elemzése és telepítése) |\n| `--learn-update` | A projekt újraelemzése és az LLM által generált elavult készségek nem interaktív módon történő regenerálása |\n| `--skill-install [name]` | Telepítsen egy közösségi képességet (megnyitja a böngészőt, ha nincs megadva név) |\n| `--project` | A készség telepítése projektszintre (a --skill-install funkcióval) |\n\n### Hitelesítés és fiók\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--login` | Jelentkezzen be Autohand-fiókjába |\n| `--logout` | Jelentkezzen ki Autohand-fiókjából |\n| `--sync-settings` | A beállítások szinkronizálásának engedélyezése/letiltása (alapértelmezett: igaz a bejelentkezett felhasználók számára) |\n\n### Beállítás és információ\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--setup` | Futtassa a telepítővarázslót a Autohand |\n| `--about` | Információk megjelenítése a Autohand-ról (verzió, linkek, hozzájárulási információk) |\n| `--feedback` | Visszajelzés küldése a Autohand csapatának |\n| `--settings` | A Autohand beállításainak konfigurálása (ugyanaz, mint a `/settings` interaktív módban) |\n\n### Munkaterület és könyvtárak\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--add-dir <path...>` | További könyvtárak hozzáadása a munkaterület hatóköréhez (többször is használható) |\n\n### Futtatási módok\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--mode <mode>` | Futtatási mód: interaktív (alapértelmezett), rpc vagy acp |\n| `--acp` | A --mode acp rövidítése (Agent Client Protocol over stdio) |\n| `--teammate-mode <mode>` | Csapat megjelenítési mód: automatikus, folyamatban lévő vagy tmux |\n\n### UI és nyelv\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--display-language <locale>` | Megjelenítési nyelv beállítása (pl. en, id, zh-cn, fr, de, ja) |\n| `--search-engine <provider>` | Internetes keresőszolgáltató beállítása (google, brave, duckduckgo, párhuzamos) |\n| `--cc, --context-compact` | Környezettömörítés engedélyezése (alapértelmezett: be) |\n| `--no-cc, --no-context-compact` | Kontextustömörítés letiltása |\n\n### Böngészőintegráció\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--browser` | A böngészőintegráció engedélyezése (ugyanaz, mint `/browser`) |\n| `--no-browser` | A böngészőintegráció letiltása |\n\n### Rendszerprompt\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-sys-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt-file <path>` | Cserélje le a teljes rendszerprompt a fájltartalommal |\n| `--append-system-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n### Kísérletváltási parancsok\n\n| Parancs | Leírás |\n| -------------------------------------- | ------------------------------------------------- |\n| `autohand experiments list` | Sorolja fel a helyi és távoli funkciók azonosítóit, a forrást, az életciklus szakaszt és az állapotot |\n| `autohand experiments status <feature>` | Mutasson egy szolgáltatáskapcsolót, konfigurációs elérési utat vagy távoli metaadatokat és állapotot |\n| `autohand experiments refresh` | Távoli funkciójelzők letöltése a Autohand API-ból |\n| `autohand experiments enable <feature>` | Konfigurációval támogatott szolgáltatáskapcsoló engedélyezése |\n| `autohand experiments disable <feature>` | A konfigurációval támogatott szolgáltatáskapcsoló letiltása |\n\nA távoli funkciójelzők lekérése innen: `/v1/feature-flags/evaluate`, gyorsítótár a `~/.autohand/feature-flags.json` címen történik, és az API által biztosított TTL lejárta után frissül. A `features.environment` segítségével válassza ki a távoli jelzőkörnyezetet, a `features.remoteOverrides` segítségével pedig a felhasználó által felülbírálható távoli jelzők helyi letiltásához.\n\nA `usage_v2` egy kísérleti funkciókapcsoló a `/usage` irányítópulthoz és a továbbfejlesztett `/status` Használat laphoz. Engedélyezze a következővel: `autohand experiments enable usage_v2`.\n\nA `token_usage_status` egy kísérleti funkciókapcsoló (konfigurációs útvonal `features.tokenUsageStatus`, alapértelmezés szerint kikapcsolva), amely a valós idejű tokenhasználatot mutatja a működő állapotsorban – kumulatív tokenek felfelé (`↑`) és lefelé (`↓`) plusz g kontextusban, cc. `↑15.7k ↓3.2k · context: 6.0% (15.7k/262.1k)`. A kontextusablak modellenként van feloldva az összes szolgáltatónál. Engedélyezze a következővel: `autohand experiments enable token_usage_status`.\n\n---\n\n## Slash parancsok\n\nAz Autohand perjel parancsok gazdag készletét kínálja interaktív használatra. A javaslatok megtekintéséhez írja be a `/` kódot a REPL-be.\n\n### Munkamenet-kezelés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/quit` | Kilépés az aktuális munkamenetből |\n| `/exit` | Kilépés az aktuális munkamenetből |\n| `/new` | Új beszélgetés indítása (memóriakivonattal) |\n| `/clear` | Tiszta beszélgetés automatikus memóriakivonással |\n| `/session` | Az aktuális munkamenet részleteinek megjelenítése |\n| `/sessions` | Korábbi munkamenetek listája |\n| `/resume` | Előző munkamenet folytatása |\n| `/history` | A munkamenet-előzmények böngészése oldalszámozással |\n| `/undo` | Git módosítások és utolsó forduló visszaállítása |\n| `/export` | Munkamenet exportálása markdown/JSON/HTML |\n| `/share` | Aktuális munkamenet megosztása |\n| `/status` | Munkamenet állapotának megjelenítése |\n| `/usage` | Modell, szolgáltató, kontextus és használati korlátok megjelenítése |\n\n### Modell és szolgáltató\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/model` | LLM-modell váltása vagy konfigurálása |\n| `/cc` | Kézi környezet tömörítése |\n\n### Projektbeállítás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/init` | Hozzon létre `AGENTS.md` fájlt az aktuális könyvtárban |\n| `/setup` | Futtassa a telepítővarázslót a Autohand | konfigurálásához\n| `/add-dir` | Könyvtárak hozzáadása a munkaterület hatóköréhez |\n\n### Ügynökök és csapatok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/agents` | Az elérhető alügynökök listája |\n| `/agents-new` | Hozzon létre egy új ügynököt a varázslón keresztül |\n| `/squad` | Nyissa meg/kezelje az önálló Autohand Squad futtatókörnyezetet |\n| `/team` | Csapat irányítása párhuzamos munkához |\n| `/tasks` | Feladatok kezelése csapatban |\n| `/message` | Üzenet küldése csapattársnak |\n\n### Készségek\n\n| Parancs | Leírás |\n| ----------------- | --------------------------------------------------- |\n| `/skills` | Készségek listája és kezelése |\n| `/skills-new` | Új készség létrehozása |\n| `/learn` | Tanulja meg és telepítse az ajánlott készségeket |\n\n### Memória és beállítások\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/memory` | Tárolt emlékek megtekintése és kezelése |\n| `/settings` | A Autohand beállításainak konfigurálása |\n| `/statusline` | A szerző állapotsor mezőinek konfigurálása |\n| `/experiments` | Kísérleti jellemzők kapcsolóinak váltása |\n| `/sync` | Beállítások szinkronizálása eszközök között |\n| `/import` | Importálhat munkameneteket, beállításokat, MCP-t, memóriát, készségeket és hook-okat a támogatott ügynökökről |\n\n### Engedélyek és akasztók\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/permissions`| Szerszámengedélyek kezelése |\n| `/hooks` | Életciklus-horogok kezelése |\n\n### Hitelesítés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/login` | Hitelesítés a Autohand API-val |\n| `/logout` | Kijelentkezés a Autohand fiókból |\n\n### Eszközök és segédprogramok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/search` | Keresés az interneten |\n| `/formatters` | Az elérhető kódformázók listája |\n| `/lint` | Sorolja fel a rendelkezésre álló kódsorokat |\n| `/completion` | Shell befejező szkriptek generálása |\n| `/plan` | Megvalósítási terv létrehozása |\n| `/review` | Kódellenőrzés végrehajtása |\n| `/pr-review` | Lehívási kérelem áttekintése |\n\n### IDE integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/ide` | A futó IDE észlelése és csatlakozása |\n\n### MCP (Model Context Protocol)\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/mcp` | Interaktív MCP-kiszolgálókezelő |\n\n### Automatizálás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/automode` | Indítsa el az autonóm kódolási módot |\n| `/repeat` | Ismétlődő munkák ütemezése |\n| `/yolo` | Yolo mód váltása (automatikus jóváhagyási eszközök) |\n\n### Böngészőintegráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/browser` | A Chrome böngésző integrációjának engedélyezése |\n\n### UI és kijelző\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/help` | Az elérhető perjel parancsok és tippek megjelenítése |\n| `/about` | Információk megjelenítése a következőről: Autohand |\n| `/theme` | Színtéma módosítása |\n| `/language` | Kijelző nyelvének módosítása |\n| `/feedback` | Visszajelzés küldése a Autohand csapatának |\n\n---\n\n## Rendszerprompt testreszabás\nAutohand lehetővé teszi az AI-ügynök által használt rendszerprompt testreszabását. Ez speciális munkafolyamatok, egyedi utasítások vagy más rendszerekkel való integráció esetén hasznos.\n\n### CLI zászlók\n\n| zászló | Leírás |\n| ------------------------------ | -------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerprompt |\n| `--append-sys-prompt <value>` | Tartalom hozzáfűzése az alapértelmezett rendszerprompthoz |\n\nMindkét zászló elfogadja a következőket:\n\n- **Inline karakterlánc**: Közvetlen szövegtartalom\n- **Fájl elérési útja**: A promptot tartalmazó fájl elérési útja (automatikusan észlelve)\n\n### Fájlútvonal észlelése\n\nEgy érték fájlútvonalként kezelendő, ha:\n\n- A következővel kezdődik: `./`, `../`, `/` vagy `~/`\n- Windows meghajtóbetűjellel kezdődik (pl. `C:\\`)\n- A következővel végződik: `.txt`, `.md` vagy `.prompt`\n- Útleválasztókat tartalmaz szóközök nélkül\n\nEllenkező esetben a rendszer soron belüli karakterláncként kezeli.\n\n### `--sys-prompt` (Teljes csere)\n\nHa rendelkezésre áll, ez **teljesen lecseréli** az alapértelmezett rendszerpromptot. Az ügynök NEM tölti be:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n```bash\n# Inline string\nautohand --sys-prompt \"You are a Python expert. Be concise.\" --prompt \"Write hello world\"\n\n# From file\nautohand --sys-prompt ./custom-prompt.txt --prompt \"Explain this code\"\n\n# Home directory\nautohand --sys-prompt ~/.autohand/prompts/python-expert.md --prompt \"Debug this function\"\n```\n**Példa egyéni prompt fájlra (`custom-prompt.txt`):**\n```\nYou are a specialized Python debugging assistant.\n\nRules:\n- Focus only on Python code\n- Always explain the root cause\n- Suggest fixes with code examples\n- Be concise and direct\n```\n### `--append-sys-prompt` (Hozzáadás az alapértelmezetthez)\n\nHa rendelkezésre áll, ez **hozzáfűzi** a tartalmat a teljes alapértelmezett rendszerprompthoz. Az ügynök továbbra is betölti:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n\nA csatolt tartalom a legvégére kerül hozzáadásra.\n```bash\n# Inline string\nautohand --append-sys-prompt \"Always use TypeScript instead of JavaScript\" --prompt \"Create a function\"\n\n# From file\nautohand --append-sys-prompt ./team-guidelines.md --prompt \"Add error handling\"\n```\n**Példa hozzáfűző fájl (`team-guidelines.md`):**\n```\n## Team Guidelines\n\n- Use 2-space indentation\n- Prefer functional patterns\n- Add JSDoc comments to public APIs\n- Run tests before committing\n```\n### Elsőbbség\n\nHa mindkét zászló rendelkezésre áll:\n\n1. A `--sys-prompt` teljes elsőbbséget élvez\n2. A `--append-sys-prompt` figyelmen kívül hagyva\n```bash\n# --append-sys-prompt is ignored in this case\nautohand --sys-prompt \"Custom only\" --append-sys-prompt \"This is ignored\"\n```\n### Használati esetek\n\n| Használati eset | Ajánlott zászló |\n| ---------------------------------- | ---------------------- |\n| Egyedi ügynök személye | `--sys-prompt` |\n| Minimális utasítások | `--sys-prompt` |\n| Csapatirányelvek hozzáadása | `--append-sys-prompt` |\n| Projektkonvenciók hozzáadása | `--append-sys-prompt` |\n| Integráció külső rendszerekkel | `--sys-prompt` |\n| Speciális hibakeresés | `--sys-prompt` |\n\n### Hibakezelés\n\n| Forgatókönyv | Viselkedés |\n| ------------------ | ------------------------- |\n| Üres érték | Hiba |\n| A fájl nem található | Soron belüli karakterláncként kezelve |\n| Üres fájl | Hiba |\n| Fájl > 1 MB | Hiba |\n| Engedély megtagadva | Hiba |\n| Címtár elérési útja | Hiba |\n\n### Példák\n```bash\n# Python expert mode\nautohand --sys-prompt \"You are a Python expert. Only write Python code.\" \\\n --prompt \"Create a web scraper\"\n\n# TypeScript enforcement\nautohand --append-sys-prompt \"Always use TypeScript, never JavaScript.\" \\\n --prompt \"Create a REST API\"\n\n# CI/CD integration (non-interactive)\nautohand --sys-prompt ./ci-prompt.txt \\\n --prompt \"Fix the failing tests\" \\\n --unrestricted \\\n --patch\n\n# Custom team workflow\nautohand --append-sys-prompt ~/.company/coding-standards.md \\\n --prompt \"Refactor this module\"\n```\n---\n\n## Több könyvtár támogatása\n\nAz Autohand a fő munkaterületen kívül több könyvtárral is működhet. Ez akkor hasznos, ha a projektben különböző könyvtárakban vannak függőségek, megosztott könyvtárak vagy kapcsolódó projektek.\n\n### CLI zászló\n\nA `--add-dir` használatával további könyvtárakat adhat hozzá (többször is használható):\n```bash\n# Add a single additional directory\nautohand --add-dir /path/to/shared-lib\n\n# Add multiple directories\nautohand --add-dir /path/to/lib1 --add-dir /path/to/lib2\n\n# With unrestricted mode (auto-approve writes to all directories)\nautohand --add-dir /path/to/shared-lib --unrestricted\n```\n### Interaktív parancs\n\n`/add-dir` használata interaktív munkamenet során:\n```\n/add-dir # Show current directories\n/add-dir /path/to/dir # Add a new directory\n```\n### Biztonsági korlátozások\n\nA következő könyvtárak nem adhatók hozzá:\n\n- Saját könyvtár (`~` vagy `$HOME`)\n- Gyökérkönyvtár (`/`)\n- Rendszerkönyvtárak (`/etc`, `/var`, `/usr`, `/bin`, `/sbin`)\n- Windows rendszerkönyvtárak (`C:\\Windows`, `C:\\Program Files`)\n- Windows felhasználói könyvtárak (`C:\\Users\\username`)\n- WSL Windows-csatlakozások (`/mnt/c`, `/mnt/c/Windows`)\n"}, "1dc5ae98550ce62b71900d1093148b11d8acf19c": {"t": 1785764174.5870016, "n": 87180, "h": "aa584b3730f68bf2", "c": "# Autohand Konfigurációs referencia\n\nTeljes referencia az összes konfigurációs beállításhoz itt: `~/.autohand/config.json` (vagy `.toml`/`.yaml`/`.yml`).\n\n> **Tipp:** A legtöbb alábbi beállítás interaktívan módosítható a `/settings` paranccsal a fájl manuális szerkesztése helyett.\n\nLokalizált referenciák:\n\n- [English](./config-reference.md)\n- [日本語](./config-reference_ja.md)\n- [简体中文](./config-reference_zh.md)\n- [繁體中文](./config-reference_zh-tw.md)\n- [한국어](./config-reference_ko.md)\n- [Deutsch](./config-reference_de.md)\n- [Español](./config-reference_es.md)\n- [Français](./config-reference_fr.md)\n- [Italiano](./config-reference_it.md)\n- [Polski](./config-reference_pl.md)\n- [Русский](./config-reference_ru.md)\n- [Português (Brasil)](./config-reference_ptBR.md)\n- [Türkçe](./config-reference_tr.md)\n- [Čeština](./config-reference_cs.md)\n- [Magyar](./config-reference_hu.md)\n- [हिन्दी](./config-reference_hi.md)\n- [Bahasa Indonesia](./config-reference_id.md)\n\n## Tartalomjegyzék\n\n- [A konfigurációs fájl helye](#configuration-file-location)\n- [Környezeti változók](#environment-variables)\n- [Csupasz mód](#bare-mode)\n- [Szolgáltatói beállítások](#provider-settings)\n- [Munkaterület beállításai](#workspace-settings)\n- [UI beállítások](#ui-settings)\n- [Ügynökbeállítások](#agent-settings)\n- [Engedélyek beállításai](#permissions-settings)\n- [Javítási mód](#patch-mode)\n- [Hálózati beállítások](#network-settings)\n- [Telemetriai beállítások](#telemetry-settings)\n- [Külső ügynökök](#external-agents)\n- [Skills System](#skills-system)\n- [API beállítások](#api-settings)\n- [Authentication Settings](#authentication-settings)\n- [Közösségi készségek beállításai](#community-skills-settings)\n- [Megosztási beállítások](#share-settings)\n- [Beállítások szinkronizálása](#settings-sync)\n- [Hook beállításai](#hooks-settings)\n- [MCP beállítások](#mcp-settings)\n- [Chrome-bővítmény beállításai](#chrome-extension-settings)\n- [Teljes példa](#complete-example)\n\n---\n\n## Konfigurációs fájl helye\n\nAutohand a következő sorrendben keresi a konfigurációt:\n\n1. `AUTOHAND_CONFIG` környezeti változó (egyéni elérési út)\n2. `~/.autohand/config.toml`\n3. `~/.autohand/config.yaml`\n4. `~/.autohand/config.yml`\n5. `~/.autohand/config.json` (alapértelmezett)\n\nAz alapkönyvtárat is felülírhatja:\n```bash\nexport AUTOHAND_HOME=/custom/path # Changes ~/.autohand to /custom/path\n```\n---\n\n## Környezeti változók\n\n| Változó | Leírás | Példa |\n| --------------------------------------- | ------------------------------------------------- | --------------------------------- |\n| `AUTOHAND_HOME` | Alapkönyvtár az összes Autohand adathoz | `/custom/path` |\n| `AUTOHAND_CONFIG` | Egyéni konfigurációs fájl elérési útja | `/path/to/config.toml` |\n| `AUTOHAND_API_URL` | API-végpont (felülbírálja a konfigurációt) | `https://api.autohand.ai` |\n| `AUTOHAND_AUTH_URL` | Bejelentkezési és fiókszinkronizálási eredet (az `AUTOHAND_API_URL` értékétől független) | `https://autohand.ai` |\n| `AUTOHAND_SECRET` | Vállalat/csapat titkos kulcsa | `sk-xxx` |\n| `AUTOHAND_PERMISSION_CALLBACK_URL` | Az engedély visszahívásának URL-je (kísérleti) | `http://localhost:3000/callback` |\n| `AUTOHAND_PERMISSION_CALLBACK_TIMEOUT` | Az engedély-visszahívás időtúllépése ms-ban | `5000` |\n| `AUTOHAND_NON_INTERACTIVE` | Futtatás nem interaktív módban | `1` |\n| `AUTOHAND_YES` | Minden felszólítás automatikus megerősítése | `1` |\n| `AUTOHAND_NO_BANNER` | Indítási szalaghirdetés letiltása | `1` |\n| `AUTOHAND_STREAM_TOOL_OUTPUT` | Az eszköz kimenetének streamelése valós időben | `1` |\n| `AUTOHAND_DEBUG` | Hibakeresési naplózás engedélyezése | `1` |\n| `AUTOHAND_THINKING_LEVEL` | Érvelési mélységszint beállítása | `normal` |\n| `AUTOHAND_CLIENT_NAME` | Kliens/szerkesztő azonosító (ACP kiterjesztések által beállítva) | `zed` |\n| `AUTOHAND_CLIENT_VERSION` | Kliens verzió (az ACP-bővítmények által beállított) | `0.169.0` |\n| `AUTOHAND_CODE` | Környezetérzékelési jelző (automatikusan beállítva) | `1` |\n| `AUTOHAND_CODE_SIMPLE` | A csupasz mód engedélyezése a `--bare` | átadása nélkül `1` |\n\n### Gondolkodási szint\n\nA `AUTOHAND_THINKING_LEVEL` környezeti változó szabályozza a modell által használt érvelés mélységét:\n\n| Érték | Leírás |\n| ---------- | --------------------------------------------------------------------- |\n| `none` | Közvetlen válaszok látható indoklás nélkül |\n| `normal` | Szabványos érvelési mélység (alapértelmezett) |\n| `extended` | Mély érvelés összetett feladatokhoz, részletesebb gondolkodási folyamatot mutat |\n\nEzt általában az ACP-kliens-bővítmények (például a Zed) állítják be a konfigurációs legördülő menüben.\n```bash\n# Example: Use extended thinking for complex tasks\nAUTOHAND_THINKING_LEVEL=extended autohand --prompt \"refactor this module\"\n```\n---\n\n## Csupasz mód\n\nA csupasz mód a Autohand csak kifejezetten kért kontextus- és futásidejű integrációkkal indul. Engedélyezze a következők egyikével:\n```bash\nautohand --bare\nAUTOHAND_CODE_SIMPLE=1 autohand\n```\nA `--bare` átadásakor a Autohand a `AUTOHAND_CODE_SIMPLE=1` értéket is beállítja a futó folyamathoz.\n\nA csupasz mód letiltja az automatikus indítást és az interaktív integrációkat:\n\n- horgok és horog értesítések\n- LSP indítás\n- plugin szinkronizálás, bővítmény automatikus betöltése és meta-eszköz automatikus betöltése\n- hozzárendelés, telemetria, munkamenet-szinkronizálás, automatikus jelentéskészítés és háttérpingek\n- automatikus memória/munkamenet bootstrap kontextus\n- háttérkérdések, frissítés-ellenőrzések, funkciójelző-lekérések és modell-metaadatok előzetes letöltése\n- kulcstartó és böngésző OAuth-hitelesítési tartalék\n- automatikus `AGENTS.md` és szolgáltatói utasítás keresés\n- minden perjel parancs, beleértve a parancssorba beírt csupasz `/`\n\nA perjel alakú abszolút fájlútvonalakat, például a `/Users/alex/project/file.ts`, továbbra is normál prompt szövegként kezeli a rendszer. A parancs alakú perjel bevitel, például `/help`, `/model` vagy `/mcp`, a `Slash commands are disabled in bare mode.` kódot írja ki, és nem hajtódik végre.\n\nA csupasz módban történő hitelesítés csak explicit. A Autohand először a következőt olvassa: `AUTOHAND_API_KEY`, majd `auth.apiKeyHelper`, ha be van állítva. Nem olvassa be a kulcstartó hitelesítő adatait, és nem indítja el az OAuth/böngésző bejelentkezést. A külső szolgáltatók továbbra is a szolgáltatóspecifikus API-kulcsokat és konfigurációkat használják.\n\nEzek az explicit bemenetek csupasz módban is elérhetők:\n\n| Bemenet | Leírás |\n| ------------------------------ | -------------------------------------------------------------------------- |\n| `--system-prompt <value>` | Cserélje ki a rendszerprompt szövegközi szöveggel vagy elérési út-szerű értékkel |\n| `--system-prompt-file <path>` | Cserélje ki a rendszerpromptot a fájltartalommal |\n| `--append-system-prompt <value>` | Szövegközi szöveg vagy elérési út-szerű érték hozzáfűzése a | rendszerprompthoz\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--add-dir <path...>` | Explicit könyvtárak hozzáadása a munkaterület hatóköréhez |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--settings` | Nyissa meg a beállításokat közvetlenül a CLI jelzőből |\n| `--config <path>` | Használjon explicit Autohand konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n---\n\n## Szolgáltatói beállítások\n\n### `provider`\n\nAktív LLM szolgáltató használható.\n\n| Érték | Leírás |\n| -------------- | ----------------------------- |\n| `\"openrouter\"` | OpenRouter API (alapértelmezett) |\n| `\"ollama\"` | Helyi Ollama példány |\n| `\"llamacpp\"` | Helyi llama.cpp szerver |\n| `\"openai\"` | OpenAI API közvetlenül |\n| `\"mlx\"` | MLX az Apple Siliconon (helyi) |\n| `\"llmgateway\"` | LLM Gateway egyesített API |\n| `\"deepseek\"` | DeepSeek API |\n| `\"zai\"` | Z.ai GLM API |\n| `\"sakana\"` | Sakana.AI Fugu API |\n| `\"bedrock\"` | AWS alapkőzet |\n| `\"custom:<id>\"` | Felhasználó által meghatározott OpenAI-kompatibilis szolgáltató a következőtől: `customProviders` |\n\n### `openrouter`\n\nOpenRouter szolgáltató konfigurációja.\n```json\n{\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-xxx\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\",\n \"contextWindow\": 262144\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | --------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön OpenRouter API kulcsa |\n| `baseUrl` | húr | Nem | `https://openrouter.ai/api/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellazonosító (pl. `your-modelcard-id-here`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand kitölti ezt az OpenRouterből, ha ismert. |\n\n### `zai`\n\nZ.ai szolgáltató konfigurációja.\n```json\n{\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"baseUrl\": \"https://api.z.ai/api/paas/v4\",\n \"model\": \"glm-5.2\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | -------------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön Z.ai API-kulcsa |\n| `baseUrl` | húr | Nem | `https://api.z.ai/api/paas/v4` | API-végpont |\n| `model` | húr | Igen | `glm-5.2` | Modellazonosító, például `glm-5.2`, `glm-5.1` vagy `glm-4.5` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. A Autohand 1M-re következtet a GLM-5.2-nél és 200K-ra a GLM-5.1-nél. |\n\n### `sakana`\n\nSakana.AI szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.sakana.ai/v1`-t használja alap URL-ként.\n```json\n{\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------ | ------------------------------------------------------------------ |\n| `apiKey` | húr | Igen | - | Az Ön Sakana API kulcsa |\n| `baseUrl` | húr | Nem | `https://api.sakana.ai/v1` | API-végpont |\n| `model` | húr | Igen | `fugu` | Modellazonosító, például `fugu` vagy `fugu-ultra` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand 1M-re következtet a Fugu modelleknél. |\n\n### `customProviders`\n\nAz egyéni szolgáltatók lehetővé teszik a felhasználók számára, hogy OpenAI-kompatibilis végpontot hozzanak létre kódmódosítás vagy új csomagolt szolgáltató nélkül. Adja hozzá a szolgáltatót a `customProviders` alatt, majd válassza ki a `provider: \"custom:<id>\"` kóddal. Ugyanez a folyamat elérhető a `/model` **Új szolgáltatóval**. A telepítés során a Autohand a szolgáltató mentése előtt ellenőrzi az alap URL-t, a hitelesítést és a kiválasztott modellt az OpenAI-kompatibilis `/models` végponton keresztül.\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\",\n \"models\": [\n {\n \"id\": \"acme-code-1\",\n \"label\": \"Acme Code 1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n ]\n }\n }\n}\n```\nAzon helyi OpenAI-kompatibilis szervereknél, amelyek nem igényelnek hitelesítést, állítsa a `apiKeyRequired` értékét `false` értékre, és hagyja ki a `apiKey` értéket.\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------------ | ------- | -------- | ------- | ----------- |\n| `id` | húr | Igen | - | Stabil szolgáltatói azonosító. Meg kell egyeznie az objektumkulccsal, és a következőképpen van kiválasztva: `custom:<id>`. |\n| `displayName` | húr | Igen | - | A `/model` és a szolgáltató beállításai között látható név. |\n| `apiFormat` | húr | Igen | - | A következőnek kell lennie: `openai-compatible`. |\n| `baseUrl` | húr | Igen | - | Végpont gyökér, például `https://api.example.com/v1`. Autohand ellenőrzi a `/models` kódot, és felhívja a `/chat/completions` kódot. |\n| `apiKey` | húr | Feltételes | - | Adathordozó token a tárolt végpontokhoz. Kötelező, ha a `apiKeyRequired` igaz. |\n| `apiKeyRequired` | logikai | Nem | `true` | Állítsa be a false értéket a helyi vagy már hitelesített átjárókhoz. |\n| `model` | húr | Igen | - | Aktív modell azonosító. |\n| `contextWindow` | szám | Nem | Auto | Pontos kontextusablak a token-költségvetéshez, állapothoz, telemetriához és szinkronizálási metaadatokhoz. |\n| `reasoningEffort` | húr | Nem | - | Opcionális `none`, `low`, `medium`, `high` vagy `xhigh`. `reasoning_effort` néven küldve egyéni OpenAI-kompatibilis kérésekhez. |\n| `models` | tömb | Nem | - | Opcionális modellválasztó bejegyzések modellenkénti kontextussal és érvelési metaadatokkal. |\n\n### `ollama`\n\nOllama szolgáltató konfigurációja.\n```json\n{\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"port\": 11434,\n \"model\": \"llama3.2\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------- | ------------------------------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:11434` | Ollama szerver URL |\n| `port` | szám | Nem | `11434` | Szerverport (a baseUrl alternatívája) |\n| `model` | húr | Igen | - | Modellnév (pl. `llama3.2`, `codellama`) |\n\n### `llamacpp`\n\nllama.cpp szerver konfigurációja.\n```json\n{\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"default\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | llama.cpp szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | Modellazonosító |\n\n### `openai`\n\nOpenAI API konfiguráció.\n```json\n{\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-xxx\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\nAz OpenAI a Autohand beépített OpenAI bejelentkezési folyamatán keresztül is használhatja ChatGPT-előfizetését:\n```json\n{\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"contextWindow\": 1050000,\n \"model\": \"gpt-5.4\",\n \"chatgptAuth\": {\n \"accessToken\": \"...\",\n \"refreshToken\": \"...\",\n \"accountId\": \"...\"\n }\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | ----------------------- | ---------------------------- | -------------------------------------------------------------------------- |\n| `authMode` | húr | Nem | `api-key` | Hitelesítési mód: `api-key` vagy `chatgpt` |\n| `apiKey` | húr | Igen a `api-key` módhoz | - | OpenAI API kulcs |\n| `baseUrl` | húr | Nem | `https://api.openai.com/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-5.4`, `gpt-5.4-mini`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Állítsa be az elavult helyi feltételezések felülbírálásához. |\n| `chatgptAuth` | tárgy | Igen a `chatgpt` módhoz | - | Tárolt ChatGPT/Codex hitelesítési tokenek és fiókazonosító |\n\n### `mlx`\n\nMLX szolgáltató Apple Silicon Mac gépekhez (helyi következtetés).\n```json\n{\n \"mlx\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | MLX szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | MLX modell azonosító |\n\n### `llmgateway`\n\nLLM Gateway egységes API konfiguráció. Hozzáférést biztosít több LLM-szolgáltatóhoz egyetlen API-n keresztül.\n```json\n{\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"baseUrl\": \"https://api.llmgateway.io/v1\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------------- | ---------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | LLM Gateway API kulcs |\n| `baseUrl` | húr | Nem | `https://api.llmgateway.io/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-4o`, `claude-3-5-sonnet-20241022`) |\n\n**API-kulcs beszerzése:**\nKeresse fel a [llmgateway.io/dashboard](https://llmgateway.io/dashboard) webhelyet fiók létrehozásához és API-kulcsának beszerzéséhez.\n\n**Támogatott modellek:**\nAz LLM Gateway több szolgáltató modelljét támogatja, többek között:\n\n- OpenAI: `gpt-4o`, `gpt-4o-mini`, `gpt-4-turbo`\n`claude-3-5-haiku-20241022`\n- Google: `gemini-1.5-pro`, `gemini-1.5-flash`\n\n### `deepseek`\n\nDeepSeek szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.deepseek.com`-t használja alap URL-ként.\n```json\n{\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"baseUrl\": \"https://api.deepseek.com\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | --------------------------- | --------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | DeepSeek API kulcs |\n| `baseUrl` | húr | Nem | `https://api.deepseek.com` | API-végpont |\n| `model` | húr | Igen | - | Modellnév, például `deepseek-v4-flash` vagy `deepseek-v4-pro` |\n\n### `bedrock`\n\nAWS Bedrock szolgáltató konfigurációja. `converse` az alapértelmezett mód, és az AWS SDK hitelesítési láncot használja. Az OpenAI-kompatibilis módok Bedrock API-kulcsokat és Bedrock OpenAI-kompatibilis végpontokat használnak.\n```json\n{\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------- | ------ | -------- | ------- | ----------- |\n| `model` | húr | Igen | - | Alapkőzetmodell-azonosító, következtetési profilazonosító vagy ARN |\n| `region` | húr | Igen | `AWS_REGION`, majd `AWS_DEFAULT_REGION`, majd `us-east-1` a beállításban | AWS régió |\n| `apiMode` | húr | Nem | `converse` | `converse`, `openai-chat` vagy `openai-responses` |\n| `authMode` | húr | Nem | `aws-credentials` `converse`, `bedrock-api-key` OpenAI-kompatibilis módokhoz | Hitelesítési mód |\n| `profile` | húr | Nem | - | Opcionális AWS-profil a hitelesítő adatok láncos hitelesítéséhez |\n| `endpoint` | húr | Nem | Módból és régióból származtatva | Egyéni/privát Bedrock végpont |\n| `apiKey` | húr | Igen OpenAI-kompatibilis módokhoz | - | Bedrock API kulcs. Ne használjon OpenAI API-kulcsokat. |\n\nFuttassa a `aws configure sso` kódot, vagy állítsa be a `AWS_PROFILE=enterprise-prod autohand` értéket a profilalapú AWS-hitelesítéshez. Az IAM-szerepkört, a tárolót és a példány metaadat-hitelesítő adatait az AWS SDK támogatja. Modell használata előtt engedélyezze a modellelérést az AWS-konzolon.\n\n---\n\n## Munkaterület beállításai\n```json\n{\n \"workspace\": {\n \"defaultRoot\": \"/path/to/projects\",\n \"allowDangerousOps\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------------------ | -------------------------------------------------- |\n| `defaultRoot` | húr | Aktuális címtár | Alapértelmezett munkaterület, ha nincs megadva |\n| `allowDangerousOps` | logikai | `false` | Pusztító műveletek engedélyezése megerősítés nélkül |\n\n### Munkahelyi biztonság\n\nAutohand automatikusan blokkolja a működést a veszélyes könyvtárakban, hogy megelőzze a véletlen károsodást:\n\n- **Fájlrendszer gyökerei** (`/`, `C:\\`, `D:\\` stb.)\n- **Házikönyvtárak** (`~`, `/Users/<user>`, `/home/<user>`, `C:\\Users\\<user>`)\n- **Rendszerkönyvtárak** (`/etc`, `/var`, `/System`, `C:\\Windows` stb.)\n- **WSL Windows-csatlakozások** (`/mnt/c`, `/mnt/c/Users/<user>`)\n\nEzt az ellenőrzést nem lehet megkerülni. Ha egy veszélyes könyvtárban próbálja meg futtatni a autohand alkalmazást, hibaüzenetet fog látni, és meg kell adnia egy biztonságos projektkönyvtárat.\n```bash\n# This will be blocked\ncd ~ && autohand\n# Error: Unsafe Workspace Directory\n\n# This works\ncd ~/projects/my-app && autohand\n```\nA részletekért lásd a [Workspace Safety](./workspace-safety.md) részt.\n\n---\n\n## UI beállítások\n```json\n{\n \"ui\": {\n \"theme\": \"dark\",\n \"customThemes\": {\n \"company\": {\n \"colors\": {\n \"accent\": \"#7c3aed\",\n \"success\": \"#22c55e\"\n }\n }\n },\n \"autoConfirm\": false,\n \"readFileCharLimit\": 300,\n \"silentToolOutput\": false,\n \"activityVerbs\": [\"Compiling\", \"Parsing\", \"Reviewing\"],\n \"activityVerbsEnabled\": true,\n \"activitySymbol\": \"✳\",\n \"statusLine\": {\n \"showProviderModel\": true,\n \"showContext\": true,\n \"showCommandHint\": true,\n \"showPullRequest\": true,\n \"showSessionLines\": false,\n \"showQueue\": true,\n \"showActiveStatus\": true,\n \"showActiveMetrics\": true,\n \"showCancelHint\": true\n },\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ----------------------------- | ------ | ------- | ---------------------------------------------------------------------------------------------- |\n| `theme` | húr | `\"dark\"` | Színes téma a terminál kimenetéhez. A beépítettek a következők: `dark`, `light`, `dracula`, `sandy`, `tui`, `github-dark`, `cappadocia`, CODE és ___8__ `australia`. A régi `turkey` és `brazil` értékek továbbra is betöltődnek álnévként. |\n| `customThemes` | tárgy | `{}` | Soron belüli egyéni témadefiníciók a téma nevével. A használatához állítsa be a `theme` kulcsot ugyanarra a kulcsra. |\n| `autoConfirm` | logikai | `false` | A biztonságos működés érdekében hagyja ki a megerősítő felszólításokat |\n| `readFileCharLimit` | szám | `300` | Maximum megjeleníthető karakter az olvasási/kereső eszköz kimenetéből (a teljes tartalom továbbra is elküldésre kerül a modellnek) |\n| `silentToolOutput` | logikai | `false` | A szerszám kimeneti blokkjainak elrejtése a terminálban, miközben továbbra is megőrzi a modell/munkamenet szerszámeredményeit |\n| `activityVerbs` | karakterlánc vagy karakterlánc[] | beépített medence | Egyéni tevékenység ige vagy igekészlet a munkajelzőhöz, `Verb...` formátumban |\n| `activityVerbsEnabled` | logikai | `true` | Forgó tevékenység igék megjelenítése, például `Compiling...`, miközben az ügynök dolgozik |\n| `activitySymbol` | húr | `\"✳\"` | A tevékenységi ige előtt látható szimbólum a tevékenységmutató kimenetében |\n| `statusLine.showProviderModel` | logikai | `true` | Jelenítse meg az aktív szolgáltatót és modellt a szerző állapotsorában |\n| `statusLine.showContext` | logikai | `true` | Jelenítse meg a kontextus százalékos arányát a szerző állapotsorában |\n| `statusLine.showCommandHint` | logikai | `true` | Parancs, említés, készség és terminálbejegyzési tippek megjelenítése a szerző állapotsorában |\n| `statusLine.showPullRequest` | logikai | `true` | Mutassa meg a kapcsolódó lekérési kérés számát, vagy `PR #123`, ha nincs PR társítva |\n| `statusLine.showSessionLines` | logikai | `false` | Az aktuális munkamenet során hozzáadott és eltávolított sorok megjelenítése |\n| `statusLine.showQueue` | logikai | `true` | A sorba állított kérések számának megjelenítése az állapotsorban |\n| `statusLine.showActiveStatus` | logikai | `true` | Az aktív forduló állapotszövege megjelenítése, miközben az ügynök dolgozik |\n| `statusLine.showActiveMetrics` | logikai | `true` | Az eltelt idő és a token mérőszámainak megjelenítése, amíg az ügynök dolgozik |\n| `statusLine.showCancelHint` | logikai | `true` | Az Esc megszakítási tipp megjelenítése, miközben az ügynök dolgozik |\n| `completionReportEnabled` | logikai | `true` | Kérje meg a modellt, hogy a végrehajtott műveleti körök után tartalmazzon egy tömör befejezési jelentést |\n| `showCompletionNotification` | logikai | `true` | Rendszerértesítés megjelenítése a feladat befejezésekor |\n| `showThinking` | logikai | `true` | Az LLM érvelésének/gondolati folyamatának megjelenítése |\n| `terminalBell` | logikai | `true` | Csengessen terminálcsengőt, amikor a feladat befejeződött (jelvényt mutat a terminálfülön/dokkon) |\n| `checkForUpdates` | logikai | `true` | CLI frissítések keresése indításkor |\n| `updateCheckInterval` | szám | `24` | Órák a frissítési ellenőrzések között (a gyorsítótárazott eredményt az intervallumon belül használja) |\n\nAz egyéni témák bármely szemantikai színtokent felülírhatnak. A hiányzó tokenek a sötét témából származnak:\n```json\n{\n \"ui\": {\n \"theme\": \"company\",\n \"customThemes\": {\n \"company\": {\n \"vars\": {\n \"brand\": \"#7c3aed\",\n \"brandSoft\": \"#a78bfa\"\n },\n \"colors\": {\n \"accent\": \"brand\",\n \"borderAccent\": \"brandSoft\",\n \"mdHeading\": \"brand\"\n }\n }\n }\n }\n}\n```\nMegjegyzés: A `readFileCharLimit` és `silentToolOutput` csak a terminál megjelenítését érinti. A teljes tartalom továbbra is elküldésre kerül a modellnek, és eszközüzenetekben tárolódik.\n\nA néma eszközkimenetet a fájl szerkesztése nélkül is átkapcsolhatja:\n```bash\nautohand config set silent_tool_output true\nautohand config set silent_tool_output false\n```\nA forgó tevékenység igék között válthat a fájl szerkesztése nélkül:\n```bash\nautohand config set verbs activity true\nautohand config set verbs activity false\n```\nSzabja testre az igéket a konfigurációs fájlban, ha rögzített állapotcímkét vagy kis projektspecifikus elforgatást szeretne:\n```json\n{\n \"ui\": {\n \"activityVerbs\": \"Compiling\"\n }\n}\n```\n\n```json\n{\n \"ui\": {\n \"activityVerbs\": [\"Indexing\", \"Reviewing\", \"Testing\"],\n \"activitySymbol\": \">\"\n }\n}\n```\nA `activityVerbs` egyetlen karakterláncot vagy nem üres karakterlánc-tömböt fogad el. Ha a `activityVerbsEnabled` értéke `false`, a Autohand visszaesik a `Working...` értékre, ahelyett, hogy az egyéni vagy beépített igék között forogna.\n\nA fájl szerkesztése nélkül válthat a befejezési jelentések között, beleértve a strukturált `SITREP` promptot is:\n```bash\nautohand config set sitrep true\nautohand config set sitrep false\n```\n### Terminal Bell\n\nHa a `terminalBell` engedélyezve van (alapértelmezett), a Autohand megszólal a terminál csengőjén (`\\x07`), amikor egy feladat befejeződik. Ez kiváltja:\n\n- **Jelvény a terminál lapon** - Vizuális jelzőt mutat, hogy a munka elkészült\n- **Dokk ikon ugrál** - Felhívja a figyelmet, ha a terminál a háttérben van (macOS)\n- **Hang** - Ha a terminál hangjai engedélyezve vannak a terminál beállításaiban\n\nTerminálspecifikus beállítások:\n\n- **macOS terminál**: Beállítások > Profilok > Speciális > Bell (vizuális/hallható)\n- **iTerm2**: Beállítások > Profilok > Terminál > Értesítések\n- **VS Code Terminal**: Beállítások > Terminál > Integrált: Bell engedélyezése\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"terminalBell\": false\n }\n}\n```\n### Ink Renderer\n\nA Autohand alapértelmezés szerint az Ink 7 + React 19 renderert használja az interaktív terminálokhoz. A régi `ui.useInkRenderer` konfigurációs mezőt figyelmen kívül hagyja, így a régi konfigurációs fájlok nem kényszeríthetik a sima terminálszerkesztőt. A tinta a következőket nyújtja:\n\n- **Recgésmentes kimenet**: Minden UI-frissítés kötegelt React-egyeztetésen keresztül történik\n- **Munkasor funkció**: Írja be az utasításokat, amíg az ügynök dolgozik\n- **Jobb bemenetkezelés**: Nincsenek ütközések a readline-kezelők között\n- **Összeállítható felhasználói felület**: A jövőbeni fejlett felhasználói felületi funkciók alapja\n\nVészhelyzeti tartalék a terminál kompatibilitás érdekében:\n```bash\nAUTOHAND_LEGACY_UI=1 autohand\n```\nMegjegyzés: Ez a funkció kísérleti jellegű, és lehetnek szélső esetek. Az alapértelmezett ora-alapú felhasználói felület stabil és teljesen működőképes marad.\n\n### Frissítési ellenőrzés\n\nHa a `checkForUpdates` engedélyezve van (alapértelmezett), a Autohand indításkor ellenőrzi az új kiadásokat:\n```\n> Autohand v0.6.8 (abc1234) ✓ Up to date\n```\nHa elérhető frissítés:\n```\n> Autohand v0.6.7 (abc1234) ⬆ Update available: v0.6.8\n ↳ Run: curl -fsSL https://autohand.ai/install.sh | sh\n```\nHogyan működik:\n\n- Lekéri a GitHub API legújabb kiadását\n- A gyorsítótárak eredménye `~/.autohand/version-check.json`\n- Csak egyszer ellenőrzi `updateCheckInterval` óránként (alapértelmezett: 24)\n- Nem blokkoló: az indítás akkor is folytatódik, ha az ellenőrzés sikertelen\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"checkForUpdates\": false\n }\n}\n```\nVagy környezeti változón keresztül:\n```bash\nexport AUTOHAND_SKIP_UPDATE_CHECK=1\n```\n---\n\n## Ügynök beállításai\n\nAz ügynök viselkedésének és iterációs korlátainak szabályozása.\n```json\n{\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"autoMemory\": true,\n \"idleLogoutEnabled\": true,\n \"debug\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------- | ------------------------------------------------------------------------------ |\n| `maxIterations` | szám | `100` | Maximális szerszámiterációk felhasználói kérésenként a leállítás előtt |\n| `enableRequestQueue` | logikai | `true` | Lehetővé teszi a felhasználók számára, hogy kéréseket írjanak be és sorba állítsanak, miközben az ügynök dolgozik |\n| `toolSelectionCache` | logikai | `true` | Gyorsítótárazza a körönkénti szerszámséma helyi kiválasztását az egyenértékű szerszámkiválasztási bemenethez |\n| `autoMemory` | logikai | `true` | Tartós felhasználói/projektmemóriák kibontása és mentése sikeres interaktív fordulatok után |\n| `idleLogoutEnabled` | logikai | `true` | Jelentkezzen ki a hitelesített interaktív munkamenetekből az üresjárati időtúllépés után |\n| `debug` | logikai | `false` | Részletes hibakeresési kimenet engedélyezése (naplózza az ügynök belső állapotát az stderr-be) |\n\n### Eszközséma kiválasztása\n\nA Autohand nem küld el minden teljes eszközsémát minden LLM-kérelemnél. A rendszerprompt tartalmaz egy kompakt eszközképesség-katalógust, és minden kérés csak egy kis konkrét sémát tesz közzé, amely a következők közül választható ki:\n\n- Az alapvető felderítési eszközök, például `tool_search`, `read_file`, `fff_find` és `fff_grep`\n- Szándékhoz illő eszközök szerkesztési, ellenőrzési, git, böngésző, web, függőségi vagy projektkövetési munkákhoz\n- A legutóbbi `tool_search` hívások során kért vagy kifejezetten név szerint megemlített eszközök\n\nEzzel elkerülhető a nagy előzetes kontextusköltség, ha az összes eszközséma elküldése a felhasználói szándék ismertsége előtt felmerül. `toolSelectionCache` csak a helyi választó gyorsítótárát vezérli az egyenértékű fordulatokhoz; nem hajt végre felhasználói előtti LLM-bemelegítést, és nem kényszerít ki nagy gyorsítótárazott prompt előtagot.\n\nA helyi választó gyorsítótárának letiltása:\n```json\n{\n \"agent\": {\n \"toolSelectionCache\": false\n }\n}\n```\nA hitelesített, régóta működő ügynöki munkamenetek életben tartásához, amíg munkára várnak:\n```json\n{\n \"agent\": {\n \"idleLogoutEnabled\": false\n }\n}\n```\nEgyetlen folyamathoz használja a `autohand --no-idle-logout` kódot, vagy állítsa be a `AUTOHAND_NO_IDLE_LOGOUT=1` értéket.\n\n### Hibakeresési mód\n\nEngedélyezze a hibakeresési módot az ügynök belső állapotának részletes naplózásához (reakcióhurok iterációi, prompt felépítés, munkamenet részletei). A kimenet az stderr-hez megy, hogy elkerülje a normál kimenet zavarását.\n\nHáromféleképpen engedélyezheti a hibakeresési módot (elsőbbségi sorrendben):\n\n1. **CLI jelző**: `autohand -d` vagy `autohand --debug`\n2. **Környezeti változó**: `AUTOHAND_DEBUG=1`\n3. **Konfigurációs fájl**: Állítsa be: `agent.debug: true`\n\n### Kérési sor\n\nHa a `enableRequestQueue` engedélyezve van, folytathatja az üzenetek beírását, miközben az ügynök feldolgoz egy korábbi kérést. A bevitel a sorba kerül, és automatikusan feldolgozásra kerül, amikor az aktuális feladat befejeződik.\n\n- Írja be az üzenetet, és nyomja meg az Enter billentyűt, hogy hozzáadja a sorhoz\n- Az állapotsor azt mutatja, hogy hány kérés van sorban\n- A kérések feldolgozása FIFO (first-in, first-out) sorrendben történik\n- A sor maximális mérete 10 kérés\n\n---\n\n## Engedélyek beállításai\n\nA szerszámengedélyek finom vezérlése.\n```json\n{\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\n \"run_command:npm *\",\n \"run_command:bun *\",\n \"run_command:git status\"\n ],\n \"blacklist\": [\"run_command:rm -rf *\", \"run_command:sudo *\"],\n \"rules\": [\n {\n \"tool\": \"run_command\",\n \"pattern\": \"npm test\",\n \"action\": \"allow\"\n }\n ],\n \"rememberSession\": true\n }\n}\n```\n### `mode`\n\n| Érték | Leírás |\n| ----------------- | ------------------------------------------------------ |\n| `\"interactive\"` | Jóváhagyás kérése veszélyes műveletekhez (alapértelmezett) |\n| `\"unrestricted\"` | Nincsenek felszólítások, engedélyezzen mindent |\n| `\"restricted\"` | Minden veszélyes művelet megtagadása |\n\n### `whitelist`\n\nSzerszámminták sora, amelyek soha nem igényelnek jóváhagyást.\n```json\n[\"run_command:npm *\", \"run_command:bun test\"]\n```\n### `blacklist`\n\nMindig blokkolt szerszámminták tömbje.\n```json\n[\"run_command:rm -rf /\", \"run_command:sudo *\"]\n```\n### `rules`\n\nFinom szemcsés engedélyezési szabályok.\n\n| Mező | Típus | Leírás |\n| --------- | --------- | -------------------------------------------- | ---------- | -------------- |\n| `tool` | húr | A megfelelő eszköznév |\n| `pattern` | húr | Opcionális minta az érvekhez való illeszkedéshez |\n| `action` | `\"allow\"` | `\"deny\"` | `\"prompt\"` | Intézkedések |\n\n### `rememberSession`\n\n| Típus | Alapértelmezett | Leírás |\n| ------- | ------- | -------------------------------------------- |\n| logikai | `true` | Emlékezzen az ülés jóváhagyási határozataira |\n\n### Helyi projektengedélyek\n\nMinden projektnek saját engedélybeállításai lehetnek, amelyek felülírják a globális konfigurációt. Ezeket a projekt gyökérkönyvtárában a `.autohand/settings.local.json` tartalmazza.\n\nAmikor jóváhagy egy fájlműveletet (szerkesztés, írás, törlés), a rendszer automatikusan ebbe a fájlba menti, így nem kéri újra ugyanazt a műveletet ebben a projektben.\n```json\n{\n \"version\": 1,\n \"permissions\": {\n \"whitelist\": [\n \"apply_patch:src/components/Button.tsx\",\n \"write_file:package.json\",\n \"run_command:bun test\"\n ]\n }\n}\n```\n**Hogyan működik:**\n\n- Amikor jóváhagy egy műveletet, a rendszer a következőbe menti: `.autohand/settings.local.json`\n- Legközelebb ugyanazt a műveletet a rendszer automatikusan jóváhagyja\n- A helyi projektbeállítások egyesülnek a globális beállításokkal (a helyi beállítások elsőbbséget élveznek)\n- Adja hozzá a `.autohand/settings.local.json` kódot a `.gitignore`-hoz, hogy a személyes beállítások privátak maradjanak\n\n**Mintaformátum:**\n\n- `tool_name:path` - Fájlműveletekhez (pl. `apply_patch:src/file.ts`)\n- `tool_name:command args` - Parancsokhoz (pl. `run_command:npm test`)\n\n### Megtekintési engedélyek\n\nJelenlegi engedélybeállításait kétféleképpen tekintheti meg:\n\n**CLI jelző (nem interaktív):**\n```bash\nautohand --permissions\n```\nEz a következőket jeleníti meg:\n\n- Jelenlegi engedélyezési mód (interaktív, korlátlan, korlátozott)\n- Munkaterület és konfigurációs fájlok elérési útjai\n- Minden jóváhagyott minta (engedélyezőlista)\n- Minden elutasított minta (feketelista)\n- Összefoglaló statisztika\n\n**Interaktív parancs:**\n```\n/permissions\n```\nInteraktív módban a `/permissions` parancs ugyanazokat az információkat és lehetőségeket biztosít a következőkhöz:\n\n- Elemek eltávolítása az engedélyezési listáról\n- Távolítsa el az elemeket a feketelistáról\n- Törölje az összes mentett engedélyt\n\n---\n\n## Patch mód\n\nA Patch mód lehetővé teszi megosztható, git-kompatibilis javítás létrehozását a munkaterület-fájlok módosítása nélkül. Ez hasznos:\n\n- A kód felülvizsgálata a változtatások alkalmazása előtt\n- Az AI által generált változások megosztása a csapat tagjaival\n- Reprodukálható változáskészletek készítése\n- CI/CD folyamatok, amelyeknek alkalmazása nélkül kell rögzíteni a változásokat\n\n### Használat\n```bash\n# Generate patch to stdout\nautohand --prompt \"add user authentication\" --patch\n\n# Save to file\nautohand --prompt \"add user authentication\" --patch --output auth.patch\n\n# Pipe to file (alternative)\nautohand --prompt \"refactor api handlers\" --patch > refactor.patch\n```\n### Viselkedés\n\nHa `--patch` meg van adva:\n\n- **Automatikus megerősítés**: Minden visszaigazolás automatikusan elfogadásra kerül (`--yes`)\n- **Nincsenek felszólítások**: Nem jelennek meg jóváhagyási értesítések (`--unrestricted` vélelmezett)\n- **Csak előnézet**: A változtatásokat rögzíti, de NEM írja lemezre\n- **Kikényszerített biztonság**: A feketelistán szereplő műveletek (`.env`, SSH-kulcsok, veszélyes parancsok) továbbra is blokkolva vannak\n\n### Javítások alkalmazása\n\nA címzettek szabványos git parancsokkal alkalmazhatják a javítást:\n```bash\n# Check what would be applied (dry-run)\ngit apply --check changes.patch\n\n# Apply the patch\ngit apply changes.patch\n\n# Apply with 3-way merge (handles conflicts better)\ngit apply -3 changes.patch\n\n# Apply and stage changes\ngit apply --index changes.patch\n\n# Reverse a patch\ngit apply -R changes.patch\n```\n### Patch formátum\n\nA generált javítás a git egységes diff formátumát követi:\n```diff\ndiff --git a/src/auth.ts b/src/auth.ts\nnew file mode 100644\n--- /dev/null\n+++ b/src/auth.ts\n@@ -0,0 +1,15 @@\n+export function authenticate(user: string, password: string) {\n+ // Implementation here\n+}\n\ndiff --git a/src/index.ts b/src/index.ts\n--- a/src/index.ts\n+++ b/src/index.ts\n@@ -1,5 +1,7 @@\n import express from 'express';\n+import { authenticate } from './auth';\n\n const app = express();\n+app.use(authenticate);\n```\n### Kilépési kódok\n\n| Kód | Jelentése |\n| ---- | ---------------------------------------------------- |\n| `0` | Siker, patch generált |\n| `1` | Hiba (hiányzó `--prompt`, engedély megtagadva stb.) |\n\n### Kombinálva más zászlókkal\n```bash\n# Use specific model\nautohand --prompt \"optimize queries\" --patch --model gpt-4o\n\n# Specify workspace\nautohand --prompt \"add tests\" --patch --path ./my-project\n\n# Use custom config\nautohand --prompt \"refactor\" --patch --config ~/.autohand/work.json\n```\n### Csapatmunkafolyamat-példa\n```bash\n# Developer A: Generate patch for a feature\nautohand --prompt \"implement user dashboard with charts\" --patch --output dashboard.patch\n\n# Share via git (create PR with just the patch file)\ngit checkout -b patch/dashboard\ngit add dashboard.patch\ngit commit -m \"Add dashboard feature patch\"\ngit push\n\n# Developer B: Review and apply\ngit fetch origin patch/dashboard\ngit apply dashboard.patch\n# Run tests, review code, then commit\ngit add -A && git commit -m \"feat: add user dashboard with charts\"\n```\n---\n\n## Hálózati beállítások\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Max | Leírás |\n| ------------ | ------ | ------- | --- | --------------------------------------- |\n| `maxRetries` | szám | `3` | `5` | Próbálkozzon újra sikertelen API-kérésekkel |\n| `timeout` | szám | `30000` | - | Kérelem időtúllépése ezredmásodpercben |\n| `retryDelay` | szám | `1000` | - | Az újrapróbálkozások közötti késleltetés ezredmásodpercben |\n\n---\n\n## Telemetriai beállítások\n\nA telemetria **alapértelmezés szerint le van tiltva** (feliratkozás). Engedélyezze a Autohand fejlesztéséhez.\n```json\n{\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true,\n \"companySecret\": \"\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | -------------------------- | ---------------------------------------------- |\n| `enabled` | logikai | `false` | Telemetria engedélyezése/letiltása (feliratkozás) |\n| `apiBaseUrl` | húr | `https://api.autohand.ai` | Telemetria API végpont |\n| `batchSize` | szám | `20` | Az automatikus kiürítés előtt kötegelt események száma |\n| `flushIntervalMs` | szám | `60000` | Öblítési időköz ezredmásodpercben (1 perc) |\n| `maxQueueSize` | szám | `500` | Maximális sorméret a régi események eldobása előtt |\n| `maxRetries` | szám | `3` | Próbálkozzon újra sikertelen telemetriai kérések esetén |\n| `enableSessionSync` | logikai | `true` | Szinkronizálja a munkameneteket a felhővel a csapatfunkciókhoz, ha a telemetria engedélyezve van |\n| `companySecret` | húr | `\"\"` | Vállalati titok API-hitelesítéshez |\n\nA szolgáltató/modell telemetria tartalmazza az aktív szolgáltatói azonosítót, a modellazonosítót és az elérhető nem titkos metaadatokat, például az egyéni szolgáltató megjelenítési nevét, API-formátumát, érvelési erőfeszítéseit és kontextusablakát. Az API-kulcsok és a vivőjogkivonatok soha nem szerepelnek benne.\n\n---\n\n## Külső ügynökök\n\nEgyéni ügynökdefiníciók betöltése külső könyvtárakból.\n```json\n{\n \"externalAgents\": {\n \"enabled\": true,\n \"paths\": [\"~/.autohand/agents\", \"/team/shared/agents\"]\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | -------- | ------- | -------------------------------- |\n| `enabled` | logikai | `false` | Külső ügynök betöltésének engedélyezése |\n| `paths` | string[] | `[]` | Könyvtárak az ügynökök betöltéséhez |\n\n---\n\n## Skills System\n\nA készségek olyan utasításcsomagok, amelyek speciális utasításokat adnak az AI-ügynöknek. Úgy működnek, mint az igény szerinti `AGENTS.md` fájlok, amelyek bizonyos feladatokhoz aktiválhatók.\n\n### Készségek felfedező helyek\n\nA készségek több helyről fedezhetők fel, és a későbbi források élveznek elsőbbséget:\n\n| Helyszín | Forrásazonosító | Leírás |\n| ----------------------------------------- | ------------------- | ------------------------------------------ |\n| `~/.codex/skills/**/SKILL.md` | `codex-user` | Felhasználói szintű Codex készségek (rekurzív) |\n| `~/.claude/skills/*/SKILL.md` | `claude-user` | Felhasználói szintű Claude-készségek (egy szint) |\n| `~/.autohand/skills/**/SKILL.md` | `autohand-user` | Felhasználói szintű Autohand készségek (rekurzív) |\n| `<project>/.claude/skills/*/SKILL.md` | `claude-project` | Projektszintű Claude-készségek (egy szint) |\n| `<project>/.autohand/skills/**/SKILL.md` | `autohand-project` | Projekt szintű Autohand készségek (rekurzív) |\n\n### Automatikus másolási viselkedés\n\nA Codex vagy Claude helyekről felfedezett készségek automatikusan átmásolódnak a megfelelő Autohand helyre:\n\n- `~/.codex/skills/` és `~/.claude/skills/` → `~/.autohand/skills/`\n- `<project>/.claude/skills/` → `<project>/.autohand/skills/`\n\nA Autohand helyeken meglévő készségek soha nem íródnak felül.\n\n### SKILL.md formátum\n\nA YAML frontmatter-t használó készségek, majd a leértékelési tartalom:\n```markdown\n---\nname: my-skill-name\ndescription: Brief description of the skill\nlicense: MIT\ncompatibility: Works with Node.js 18+\nallowed-tools: read_file write_file run_command\nmetadata:\n author: your-name\n version: \"1.0.0\"\n---\n\n# My Skill\n\nDetailed instructions for the AI agent...\n```\n| Mező | Kötelező | Max hossz | Leírás |\n| ---------------- | -------- | ---------- | ------------------------------------------- |\n| `name` | Igen | 64 karakter | Kisbetűs alfanumerikus, csak kötőjelekkel |\n| `description` | Igen | 1024 karakter | A készség rövid leírása |\n| `license` | Nem | - | Licencazonosító (pl. MIT, Apache-2.0) |\n| `compatibility` | Nem | 500 karakter | Kompatibilitási megjegyzések |\n| `allowed-tools` | Nem | - | Az engedélyezett eszközök szóközzel tagolt listája |\n| `metadata` | Nem | - | További kulcs-érték metaadatok |\n\n### Beviteli előtagok\n\nA Autohand támogatja a speciális előtagokat a beviteli promptban:\n\n| Előtag | Leírás | Példa |\n| ------ | ------------------------------- | ---------------------------------- |\n| `/` | Slash parancsok | `/help`, `/model`, `/quit`, `/exit` |\n| `@` | Fájl említések (automatikus kiegészítés) | `@src/index.ts` |\n| `$` | Szakértelem említése (automatikus kiegészítés) | `$frontend-design`, `$code-review` |\n| `!` | A terminálparancsok közvetlen futtatása | `! git status`, `! ls -la` |\n\n**Képességmegemlítések (`$`):**\n\n- Írja be a következőt: `$`, majd karaktereket az automatikus kiegészítéssel elérhető készségek megtekintéséhez\n- A Tab elfogadja a felső javaslatot (pl. `$frontend-design`)\n- A készségek a következőből fedezhetők fel: `~/.autohand/skills/` és `<project>/.autohand/skills/`\n- Az aktivált készségek a prompthoz vannak csatolva, mint speciális utasítások az aktuális munkamenethez\n- Az előnézeti panel a készség metaadatait mutatja (név, leírás, aktiválási állapot)\n\n**Shell-parancsok (`!`):**\n\n- A parancsok az aktuális munkakönyvtárban futnak\n- A kimenet közvetlenül a terminálon jelenik meg\n- Nem megy az LLM-be\n- 30 másodperces időtúllépés\n- A végrehajtás után visszatér a prompthoz\n\n### Slash parancsok\n\n#### `/skills` - Csomagkezelő\n\n| Parancs | Leírás |\n| -------------------------------- | ------------------------------------------- |\n| `/skills` | Sorolja fel az összes elérhető készséget |\n| `/skills use <name>` | Képesség aktiválása az aktuális munkamenethez |\n| `/skills deactivate <name>` | Készség deaktiválása |\n| `/skills info <name>` | Részletes képzettségi információk megjelenítése |\n| `/skills install` | Tallózás és telepítés a közösségi nyilvántartásból |\n| `/skills install @<slug>` | Telepítsen közösségi készségeket a slug |\n| `/skills search <query>` | Keresés a közösségi készségek nyilvántartásában |\n| `/skills trending` | Felkapott közösségi készségek megjelenítése |\n| `/skills remove <slug>` | Közösségi készség eltávolítása |\n| `/skills new` | Hozzon létre új készségeket interaktívan |\n| `/skills feedback <slug> <1-5>` | Értékeljen egy közösségi képességet |\n\n#### `/learn` - LLM-alapú Skill Advisor\n\n| Parancs | Leírás |\n| ---------------- | ---------------------------------------------------------------- |\n| `/learn` | A projekt elemzése és készségek ajánlása (gyors szkennelés) |\n| `/learn deep` | Mélyszkennelési projekt (forrásfájlokat olvas) a célzottabb eredmények érdekében |\n| `/learn update` | A projekt újraelemzése és az LLM által generált elavult készségek regenerálása |\n\nA `/learn` kétfázisú LLM-folyamatot használ:\n\n1. **1. fázis – Elemzés + Rangsorolás + Ellenőrzés**: Ellenőrzi a projekt szerkezetét, auditálja a telepített készségeket redundanciák/konfliktusok szempontjából, és rangsorolja a közösségi készségeket relevancia szerint (0-100).\n2. **2. fázis – Létrehozás** (feltételes): Ha egyik közösségi képesség sem ér el 60 feletti pontszámot, felajánlja a projektjéhez szabott egyéni képesség létrehozását.\nA generált készségek metaadatokat (`agentskill-source: llm-generated`, `agentskill-project-hash`) tartalmaznak, így a `/learn update` képes észlelni, ha megváltozik a kódbázis, és újra előállíthatja az elavult készségeket.\n\n### Automatikus készséggenerálás (`--auto-skill`)\n\nA `--auto-skill` CLI jelző készségeket generál az interaktív tanácsadói folyamat nélkül:\n```bash\nautohand --auto-skill\n```\nEz:\n\n1. Elemezze a projekt felépítését (package.json, követelmények.txt stb.)\n2. Nyelvek, keretrendszerek és minták észlelése\n3. Generáljon 3 releváns készséget az LLM segítségével\n4. Mentse el a készségeket ide: `<project>/.autohand/skills/`\n\nA célzottabb, interaktívabb élmény érdekében használja inkább a `/learn` kódot egy munkameneten belül.\n\nAz észlelt minták a következők:\n\n- **Nyelvek**: TypeScript, JavaScript, Python, Rust, Go\n- **Frameworks**: React, Next.js, Vue, Express, Flask, Django\n- **Minták**: CLI eszközök, tesztelés, monorepo, Docker, CI/CD\n\n---\n\n## API beállítások\n\nBackend API konfiguráció a csapatfunkciókhoz.\n```json\n{\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\",\n \"companySecret\": \"sk-team-xxx\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------------------------- | ---------------------------------------- |\n| `baseUrl` | húr | `https://api.autohand.ai` | API-végpont |\n| `companySecret` | húr | - | Csapat/vállalati titok a megosztott funkciókhoz |\n\nKörnyezeti változókkal is beállítható:\n\n- `AUTOHAND_API_URL` → `api.baseUrl`\n- `AUTOHAND_SECRET` → `api.companySecret`\n\n---\n\n## Hitelesítési beállítások\n\nHitelesítés és felhasználói munkamenet konfigurálása.\n```json\n{\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\",\n \"avatar\": \"https://example.com/avatar.png\"\n },\n \"expiresAt\": \"2025-12-31T23:59:59Z\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------- | ------ | ------- | --------------------------------------------- |\n| `token` | húr | - | Hitelesítési token API-hozzáféréshez |\n| `user` | tárgy | - | Hitelesített felhasználói adatok |\n| `user.id` | húr | - | Felhasználói azonosító |\n| `user.email` | húr | - | Felhasználó e-mail címe |\n| `user.name` | húr | - | Felhasználó megjelenített név |\n| `user.avatar` | húr | - | Felhasználói avatar URL-je (nem kötelező) |\n| `expiresAt` | húr | - | Token lejárati időbélyegzője (ISO 8601 formátum) |\n\n---\n\n## Közösségi készségek beállításai\n\nKonfiguráció a közösségi készségek felfedezéséhez és kezeléséhez.\n```json\n{\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------------------------- | ------- | ------- | -------------------------------------------------------------- |\n| `enabled` | logikai | `true` | Közösségi készségek funkcióinak engedélyezése |\n| `showSuggestionsOnStartup` | logikai | `true` | Képességi javaslatok megjelenítése indításkor, ha nem állnak rendelkezésre szállítói ismeretek |\n| `autoBackup` | logikai | `true` | A felfedezett szállítói ismeretek automatikus biztonsági mentése API |\n\n---\n\n## Megosztási beállítások\n\nKonfiguráció a munkamenet megosztásához a `/share` paranccsal. A munkamenetek a [autohand.link](https://autohand.link) címen találhatók.\n```json\n{\n \"share\": {\n \"enabled\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ------------------------------------ |\n| `enabled` | logikai | `true` | A `/share` parancs engedélyezése/letiltása |\n\n### YAML formátum\n```yaml\nshare:\n enabled: true\n```\n### Munkamenet-megosztás letiltása\n\nHa biztonsági vagy adatvédelmi okokból ki szeretné kapcsolni a munkamenet-megosztást:\n```json\n{\n \"share\": {\n \"enabled\": false\n }\n}\n```\nHa le van tiltva, a `/share` futtatásakor a következő jelenik meg:\n```\nSession sharing is disabled.\nTo enable, set share.enabled: true in your config file.\n```\n---\n\n## Beállítások szinkronizálása\n\nA Autohand szinkronizálhatja a konfigurációt az eszközök között a bejelentkezett felhasználók számára. A beállításokat a Cloudflare R2 biztonságosan tárolja, és a feltöltés előtt titkosítja.\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"exclude\": [],\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------------- | -------- | ---------------- | --------------------------------------------------- |\n| `enabled` | logikai | `true` (naplózva) | Beállítások szinkronizálásának engedélyezése/letiltása |\n| `interval` | szám | `300000` | Szinkronizálási idő ezredmásodpercben (alapértelmezett: 5 perc) |\n| `exclude` | string[] | `[]` | Globális minták a szinkronizálásból kizárandó |\n| `includeTelemetry` | logikai | `false` | Telemetriai adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n| `includeFeedback` | logikai | `false` | Visszajelzési adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n\n### CLI zászló\n```bash\n# Disable sync for this session\nautohand --sync-settings=false\n\n# Enable sync (default for logged users)\nautohand --sync-settings\n```\n### Mi lesz szinkronizálva\n\nAlapértelmezés szerint ezek az elemek szinkronizálva vannak a bejelentkezett felhasználók számára:\n\n- **Konfiguráció** (`config.json`) - Az API-kulcsok a feltöltés előtt titkosítva vannak\n- **Egyéni ügynökök** (`agents/`)\n- **Közösségi készségek** (`community-skills/`)\n- **Felhasználói akasztók** (`hooks/`)\n- **Memória** (`memory/`)\n- **Projektismeret** (`projects/`)\n- **Munkamenetek előzményei** (`sessions/`)\n- **Megosztott tartalom** (`share/`)\n- **Egyéni készségek** (`skills/`)\n\n### Mi nem szinkronizál (alapértelmezés szerint)\n\n- **Eszközazonosító** (`device-id`) - Eszközönként egyedi\n- **Hibanaplók** (`error.log`) - Csak helyi\n- **Verziógyorsítótár** (`version-*.json`) - Helyi gyorsítótár fájlok\n\n### Beleegyezés alapú szinkronizálás\n\nEzek az elemek kifejezett feliratkozást igényelnek a konfigurációban:\n\n- **Telemetriai adatok** - Állítsa be a `sync.includeTelemetry: true` szinkronizálást\n- **Visszajelzési adatok** - Állítsa be a `sync.includeFeedback: true` szinkronizálását\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"includeTelemetry\": true,\n \"includeFeedback\": true\n }\n}\n```\n### Konfliktusmegoldás\n\nHa ütközések lépnek fel (ugyanaz a fájl több eszközön módosítva), a **felhőverzió nyer**. Ez biztosítja a következetességet az új eszközökön való bejelentkezéskor.\n\n### Biztonság\n\nA `config.json` API-kulcsait és egyéb bizalmas adatait a rendszer a hitelesítési token segítségével titkosítja a feltöltés előtt. Csak az Ön hitelesítő adataival lehet visszafejteni.\n\nA távoli fájlnevek csak relatív POSIX-útvonalként fogadhatók el az engedélyezett szinkronizálási kategóriákon belül. A szinkronizálás elutasítja a könyvtárbejárást, az abszolút vagy Windows-stílusú útvonalakat, az ismétlődő vagy üres szegmenseket, valamint az engedélyezett gyökéren kívülre mutató szimbolikus hivatkozásokkal átirányított célokat.\n\nAz alkalmazás bejelentkezési tokenje az `Authorization` fejlécben csak olyan átviteli URL-ekhez kerül elküldésre, amelyek eredete megegyezik a beállított szinkronizálási API eredetével. A más eredetű, előre aláírt HTTPS URL-ek soha nem kapják meg ezt a tokent; a nem biztonságos vagy hibás más eredetű URL-ek elutasításra kerülnek.\n\n**Mi van titkosítva:**\n\n- `apiKey` nevű mezők\n- `Key`, `Token`, `Secret` végződő mezők\n- A `password` mező\n\n### Hogyan működik\n\n1. **Indításkor**: Ha be van jelentkezve, a szinkronizálási szolgáltatás automatikusan elindul\n2. **5 percenként**: A beállításokat összehasonlítja a felhőalapú tárolással\n3. **A felhő nyer**: A távoli módosítások letöltése először történik meg\n4. **Helyi feltöltések**: Új helyi módosítások kerülnek feltöltésre\n5. **Kilépéskor**: A szinkronizálási szolgáltatás kecsesen leáll\n\n### Fájlok kizárása\n\nKizárhat bizonyos fájlokat vagy mintákat a szinkronizálásból:\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"exclude\": [\"custom-local-config.json\", \"temp/*\"]\n }\n}\n```\n### YAML formátum\n```yaml\nsync:\n enabled: true\n interval: 300000\n exclude: []\n includeTelemetry: false\n includeFeedback: false\n```\n---\n\n## MCP beállítások\n\nÁllítsa be az MCP-kiszolgálókat (Model Context Protocol) a Autohand külső eszközökkel történő bővítésére.\n```json\n{\n \"mcp\": {\n \"enabled\": true,\n \"servers\": [\n {\n \"name\": \"filesystem\",\n \"transport\": \"stdio\",\n \"command\": \"npx\",\n \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/tmp\"],\n \"env\": {},\n \"autoConnect\": true\n },\n {\n \"name\": \"context7\",\n \"transport\": \"http\",\n \"url\": \"https://mcp.context7.com/mcp\",\n \"headers\": {\n \"CONTEXT7_API_KEY\": \"ctx7sk-your-api-key\"\n },\n \"autoConnect\": true\n }\n ]\n }\n}\n```\n### `mcp.enabled`\n\n- **Típus**: `boolean`\n- **Alapértelmezett**: `true`\n- **Leírás**: Az összes MCP-támogatás engedélyezése vagy letiltása. Ha `false`, akkor az indításkor nem csatlakozik szerver, és az MCP-eszközök nem érhetők el.\n\n### `mcp.servers`\n\n- **Típus**: `McpServerConfigEntry[]`\n- **Alapértelmezett**: `[]`\n- **Leírás**: MCP szerver konfigurációk tömbje.\n\n### Szerver beviteli mezői\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | --------------------------------- | -------------- | ------- | -------------------------------------------------------------- |\n| `name` | `string` | Igen | - | Egyedi szerverazonosító |\n| `transport` | `\"stdio\"` \\| `\"sse\"` \\| `\"http\"` | Igen | - | Szállítás típusa |\n| `command` | `string` | Igen (stdio) | - | Parancs a szerverfolyamat elindításához |\n| `args` | `string[]` | Nem | `[]` | Érvek a parancs mellett |\n| `url` | `string` | Igen (sse/http) | - | Szervervégpont URL |\n| `headers` | `Record<string, string>` | Nem | `{}` | Egyéni HTTP-fejlécek http/sse szállításhoz (pl. hitelesítési tokenek) |\n| `env` | `Record<string, string>` | Nem | `{}` | A kiszolgálónak átadott környezeti változók |\n| `autoConnect` | `boolean` | Nem | `true` | Automatikus csatlakozás indításkor |\n\n> A szerverek aszinkron módon csatlakoznak a háttérben az indítás során anélkül, hogy blokkolnák a promptot. A `/mcp` segítségével interaktívan kezelheti a szervereket, vagy a `/mcp add` segítségével böngészhet a közösségi nyilvántartásban, vagy adhat hozzá egyéni szervereket.\n\n> A teljes MCP-dokumentációért lásd: [docs/mcp.md](mcp.md).\n\n---\n\n## Hooks beállítások\n\nKonfiguráció életciklus-horogokhoz, amelyek shell-parancsokat futtatnak az ügynökeseményeken. A részletekért lásd a [Hooks dokumentációt] (./hooks.md).\n```json\n{\n \"hooks\": {\n \"enabled\": true,\n \"hooks\": [\n {\n \"event\": \"pre-tool\",\n \"command\": \"echo \\\"Running tool: $HOOK_TOOL\\\" >> ~/.autohand/hooks.log\",\n \"description\": \"Log all tool executions\",\n \"enabled\": true\n },\n {\n \"event\": \"file-modified\",\n \"command\": \"./scripts/on-file-change.sh\",\n \"description\": \"Custom file change handler\",\n \"filter\": { \"path\": [\"src/**/*.ts\"] }\n },\n {\n \"event\": \"post-response\",\n \"command\": \"curl -X POST https://api.example.com/webhook -d '{\\\"tokens\\\": $HOOK_TOKENS}'\",\n \"description\": \"Track token usage\",\n \"async\": true\n }\n ]\n }\n}\n```\n### `hooks`\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ---------------------------------- |\n| `enabled` | logikai | `true` | Az összes hook engedélyezése/letiltása globálisan |\n| `hooks` | tömb | `[]` | Horogdefiníciók tömbje |\n\n### Hook meghatározása\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | ------- | -------- | ------- | --------------------------------- |\n| `event` | húr | Igen | - | Bekapcsolandó esemény |\n| `command` | húr | Igen | - | Shell parancs végrehajtásához |\n| `description` | húr | Nem | - | A `/hooks` kijelző leírása |\n| `enabled` | logikai | Nem | `true` | Aktív-e a horog |\n| `timeout` | szám | Nem | `5000` | Időtúllépés ezredmásodpercben |\n| `async` | logikai | Nem | `false` | Futtasson blokkolás nélkül |\n| `filter` | tárgy | Nem | - | Szűrés szerszám vagy útvonal szerint |\n\n### Hook események\n\n| Esemény | Amikor kirúgták |\n| ---------------- | -------------------------------------- |\n| `pre-tool` | Mielőtt bármilyen eszköz végrehajtaná |\n| `post-tool` | A szerszám befejezése után |\n| `file-modified` | A fájl létrehozásakor/módosításakor/törlésekor |\n| `pre-prompt` | Mielőtt elküldené az LLM-nek |\n| `post-response` | Miután az LLM válaszol |\n| `session-error` | Hiba esetén |\n\n### Környezeti változók\n\nAmikor a hook fut, ezek a környezeti változók állnak rendelkezésre:\n\n| Változó | Leírás |\n| ----------------- | ---------------------------- |\n| `HOOK_EVENT` | Esemény neve |\n| `HOOK_WORKSPACE` | Munkaterület gyökérútvonala |\n| `HOOK_TOOL` | Szerszámnév (szerszámesemények) |\n| `HOOK_ARGS` | JSON-kódolt eszköz args |\n| `HOOK_SUCCESS` | igaz/hamis (utóeszköz) |\n| `HOOK_PATH` | Fájl elérési útja (fájlmódosított) |\n| `HOOK_TOKENS` | Felhasznált tokenek (válasz után) |\n\n---\n\n## Chrome-bővítmény beállításai\n\nIrányítsd a Autohand Chrome-bővítmény integrációját. Tekintse meg a teljes útmutatót: [Autohand Chrome-ban](./autohand-in-chrome.md).\n```json\n{\n \"chrome\": {\n \"extensionId\": \"your-extension-id\",\n \"enabledByDefault\": false,\n \"browser\": \"auto\",\n \"userDataDir\": \"/path/to/chrome/user-data\",\n \"profileDirectory\": \"Default\",\n \"installUrl\": \"https://autohand.ai/chrome\"\n }\n}\n```\n| Kulcs | Típus | Alapértelmezett | Leírás |\n| ------------------- | --------- | -------- | -------------------------------------------------------------------------- |\n| `extensionId` | `string` | — | Telepített Chrome-bővítményazonosító a közvetlen átadáshoz |\n| `enabledByDefault` | `boolean` | `false` | A böngészőhíd automatikus indítása a CLI |-vel\n| `browser` | `string` | `\"auto\"` | Előnyben részesített Chromium böngésző: `auto`, `chrome`, `chromium`, `brave`, `edge` |\n| `userDataDir` | `string` | — | Böngésző felhasználói adatok könyvtára a megfelelő profil megcélzásához |\n| `profileDirectory` | `string` | — | Böngészőprofil-könyvtár neve (pl. `\"Default\"`, `\"Profile 1\"`) |\n| `installUrl` | `string` | — | Tartalék URL, ha a bővítményazonosító nincs konfigurálva |\n\n### CLI zászlók\n```bash\nautohand --chrome # Start with browser bridge enabled\nautohand --no-chrome # Start with browser bridge disabled\n```\n### Slash parancsok\n```\n/chrome # Open Chrome integration panel\n/chrome disconnect # Close the browser bridge connection\n```\n---\n\n## Teljes példa\n\n### JSON formátum (`~/.autohand/config.json`)\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\"\n },\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"model\": \"llama3.2\"\n },\n \"workspace\": {\n \"defaultRoot\": \"~/projects\",\n \"allowDangerousOps\": false\n },\n \"ui\": {\n \"theme\": \"dark\",\n \"autoConfirm\": false,\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n },\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"idleLogoutEnabled\": true,\n \"debug\": false\n },\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\"run_command:npm *\", \"run_command:bun *\"],\n \"blacklist\": [\"run_command:rm -rf /\"],\n \"rememberSession\": true\n },\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n },\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true\n },\n \"externalAgents\": {\n \"enabled\": false,\n \"paths\": []\n },\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\"\n },\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\"\n }\n },\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n },\n \"share\": {\n \"enabled\": true\n },\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n### YAML formátum (`~/.autohand/config.yaml`)\n```yaml\nprovider: openrouter\n\nopenrouter:\n apiKey: sk-or-v1-your-key-here\n baseUrl: https://openrouter.ai/api/v1\n model: your-modelcard-id-here\n\nollama:\n baseUrl: http://localhost:11434\n model: llama3.2\n\nworkspace:\n defaultRoot: ~/projects\n allowDangerousOps: false\n\nui:\n theme: dark\n autoConfirm: false\n showCompletionNotification: true\n showThinking: true\n terminalBell: true\n checkForUpdates: true\n updateCheckInterval: 24\n\nagent:\n maxIterations: 100\n enableRequestQueue: true\n toolSelectionCache: true\n idleLogoutEnabled: true\n debug: false\n\npermissions:\n mode: interactive\n whitelist:\n - \"run_command:npm *\"\n - \"run_command:bun *\"\n blacklist:\n - \"run_command:rm -rf /\"\n rememberSession: true\n\nnetwork:\n maxRetries: 3\n timeout: 30000\n retryDelay: 1000\n\ntelemetry:\n enabled: false\n apiBaseUrl: https://api.autohand.ai\n batchSize: 20\n flushIntervalMs: 60000\n maxQueueSize: 500\n maxRetries: 3\n enableSessionSync: true\n\nexternalAgents:\n enabled: false\n paths: []\n\napi:\n baseUrl: https://api.autohand.ai\n\nauth:\n token: your-auth-token\n user:\n id: user-id\n email: user@example.com\n name: User Name\n\ncommunitySkills:\n enabled: true\n showSuggestionsOnStartup: true\n autoBackup: true\n\nshare:\n enabled: true\n\nsync:\n enabled: true\n interval: 300000\n includeTelemetry: false\n includeFeedback: false\n```\n### TOML formátum (`~/.autohand/config.toml`)\n```toml\nprovider = \"openrouter\"\n\n[openrouter]\napiKey = \"sk-or-v1-your-key-here\"\nbaseUrl = \"https://openrouter.ai/api/v1\"\nmodel = \"your-modelcard-id-here\"\n\n[ollama]\nbaseUrl = \"http://localhost:11434\"\nmodel = \"llama3.2\"\n\n[workspace]\ndefaultRoot = \"~/projects\"\nallowDangerousOps = false\n\n[ui]\ntheme = \"dark\"\nautoConfirm = false\nshowCompletionNotification = true\nshowThinking = true\nterminalBell = true\ncheckForUpdates = true\nupdateCheckInterval = 24\n\n[ui.customThemes.company.vars]\nbrand = \"#7c3aed\"\nbrandSoft = \"#a78bfa\"\n\n[ui.customThemes.company.colors]\naccent = \"brand\"\nborderAccent = \"brandSoft\"\nmdHeading = \"brand\"\n\n[agent]\nmaxIterations = 100\nenableRequestQueue = true\ntoolSelectionCache = true\nidleLogoutEnabled = true\ndebug = false\n\n[permissions]\nmode = \"interactive\"\nwhitelist = [\"run_command:npm *\", \"run_command:bun *\"]\nblacklist = [\"run_command:rm -rf /\"]\nrememberSession = true\n```\n---\n\n## Címtárszerkezet\n\nA Autohand az adatokat `~/.autohand/` (vagy `$AUTOHAND_HOME`) kódban tárolja:\n```\n~/.autohand/\n├── config.json # Main configuration\n├── config.toml # Alternative TOML config\n├── config.yaml # Alternative YAML config\n├── device-id # Unique device identifier\n├── error.log # Error log\n├── feedback.log # Feedback submissions\n├── sessions/ # Session history\n├── projects/ # Project knowledge base\n├── memory/ # User-level memory\n├── commands/ # Custom commands\n├── agents/ # Agent definitions\n├── tools/ # Custom meta-tools\n├── feedback/ # Feedback state\n└── telemetry/ # Telemetry data\n ├── queue.json\n └── session-sync-queue.json\n```\n**Projektszintű könyvtár** (a munkaterület gyökérkönyvtárában):\n```\n<project>/.autohand/\n├── settings.local.json # Local project permissions (gitignore this)\n├── memory/ # Project-specific memory\n├── skills/ # Project-specific skills\n└── tools/ # Project-specific meta-tools\n```\n---\n\n## CLI-jelzők (konfig felülbírálása)\n\nEzek a jelzők felülírják a konfigurációs fájl beállításait:\n\n### Alapjelzők\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `-v, --version` | Az aktuális verzió kiadása |\n| `-p, --prompt [text]` | Futtasson egyetlen utasítást parancs módban |\n| `--path <path>` | Munkaterület gyökér felülbírálása |\n| `--config <path>` | Egyéni konfigurációs fájl használata |\n| `--model <model>` | Modell felülírása |\n| `--temperature <n>` | Beállított mintavételi hőmérséklet (0-1) |\n| `--thinking [level]` | Gondolkodási/érvelési mélység beállítása (nincs, normál, kiterjesztett) |\n| `-y, --yes` | Automatikus megerősítési kérések |\n| `--dry-run` | Előnézet végrehajtás nélkül |\n| `-d, --debug` | Részletes hibakeresési kimenet engedélyezése |\n| `--bare` | Minimális explicit mód; beállítja a `AUTOHAND_CODE_SIMPLE=1` értéket és letiltja a perjel parancsokat |\n\n### Engedélyek és biztonság\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--unrestricted` | Nincs jóváhagyási felszólítás |\n| `--restricted` | Veszélyes műveletek megtagadása |\n| `--permissions` | Jelenítse meg az aktuális engedélybeállításokat, és lépjen ki |\n| `--no-idle-logout` | A hitelesített tétlen kijelentkezés letiltása a hosszan futó ügynöki munkamenetekhez |\n| `--yolo [pattern]` | Eszközhívások megfelelő minta automatikus jóváhagyása (pl. `allow:read,write` vagy `deny:delete`) |\n| `--timeout <seconds>` | Időtúllépés másodpercben az automatikus jóváhagyási módhoz |\n\n### Git & Worktree\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--worktree [name]` | Munkamenet futtatása elszigetelt git-munkafán (opcionális munkafa/ág neve) |\n| `--tmux` | Indítás egy dedikált tmux munkamenetben (az `--worktree`-t jelenti; nem használható a `--no-worktree` kóddal) |\n| `--no-worktree` | A git munkafa elkülönítésének letiltása automatikus módban |\n| `-c, --auto-commit` | Változások automatikus véglegesítése a feladatok elvégzése után |\n| `--patch` | Git javítás generálása változtatások alkalmazása nélkül |\n| `--output <file>` | A javítás kimeneti fájlja (a --patch-el együtt használatos) |\n\n### Automatikus mód\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-mode [prompt]` | Engedélyezze az interaktív automatikus módot, vagy indítson önálló hurkot egy soron belüli feladattal |\n| `--max-iterations <n>` | Maximális automatikus módú iterációk (alapértelmezett: 50) |\n| `--completion-promise <text>` | Befejezésjelző szövege (alapértelmezett: \"KÉSZ\") |\n| `--checkpoint-interval <n>` | A Git minden N iterációt végrehajt (alapértelmezett: 5) |\n| `--max-runtime <m>` | Maximális futási idő percekben (alapértelmezett: 120) |\n| `--max-cost <d>` | Maximális API költség dollárban (alapértelmezett: 10) |\n| `--interactive-on-complete` | Az automatikus mód vége után adja át közvetlenül az interaktív módba (csak TTY) |\n\n### Készségek és tanulás\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-skill` | Készségek automatikus generálása projektelemzés alapján (lásd még: `/learn` az interaktív tanácsadóhoz) |\n| `--learn` | Futtassa a `/learn` készségtanácsadót nem interaktív módon (a javasolt készségek elemzése és telepítése) |\n| `--learn-update` | A projekt újraelemzése és az LLM által generált elavult készségek nem interaktív módon történő regenerálása |\n| `--skill-install [name]` | Telepítsen egy közösségi képességet (megnyitja a böngészőt, ha nincs megadva név) |\n| `--project` | A készség telepítése projektszintre (a --skill-install funkcióval) |\n\n### Hitelesítés és fiók\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--login` | Jelentkezzen be Autohand-fiókjába |\n| `--logout` | Jelentkezzen ki Autohand-fiókjából |\n| `--sync-settings` | A beállítások szinkronizálásának engedélyezése/letiltása (alapértelmezett: igaz a bejelentkezett felhasználók számára) |\n\n### Beállítás és információ\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--setup` | Futtassa a telepítővarázslót a Autohand |\n| `--about` | Információk megjelenítése a Autohand-ról (verzió, linkek, hozzájárulási információk) |\n| `--feedback` | Visszajelzés küldése a Autohand csapatának |\n| `--settings` | A Autohand beállításainak konfigurálása (ugyanaz, mint a `/settings` interaktív módban) |\n\n### Munkaterület és könyvtárak\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--add-dir <path...>` | További könyvtárak hozzáadása a munkaterület hatóköréhez (többször is használható) |\n\n### Futtatási módok\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--mode <mode>` | Futtatási mód: interaktív (alapértelmezett), rpc vagy acp |\n| `--acp` | A --mode acp rövidítése (Agent Client Protocol over stdio) |\n| `--teammate-mode <mode>` | Csapat megjelenítési mód: automatikus, folyamatban lévő vagy tmux |\n\n### UI és nyelv\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--display-language <locale>` | Megjelenítési nyelv beállítása (pl. en, id, zh-cn, fr, de, ja) |\n| `--search-engine <provider>` | Internetes keresőszolgáltató beállítása (google, brave, duckduckgo, párhuzamos) |\n| `--cc, --context-compact` | Környezettömörítés engedélyezése (alapértelmezett: be) |\n| `--no-cc, --no-context-compact` | Kontextustömörítés letiltása |\n\n### Chrome integráció\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--chrome` | A Chrome böngésző integrációjának engedélyezése (ugyanaz, mint `/chrome`) |\n| `--no-chrome` | A Chrome böngésző integrációjának letiltása |\n\n### Rendszerprompt\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-sys-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt-file <path>` | Cserélje le a teljes rendszerprompt a fájltartalommal |\n| `--append-system-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n### Kísérletváltási parancsok\n\n| Parancs | Leírás |\n| -------------------------------------- | ------------------------------------------------- |\n| `autohand experiments list` | Sorolja fel a helyi és távoli funkciók azonosítóit, a forrást, az életciklus szakaszt és az állapotot |\n| `autohand experiments status <feature>` | Mutasson egy szolgáltatáskapcsolót, konfigurációs elérési utat vagy távoli metaadatokat és állapotot |\n| `autohand experiments refresh` | Távoli funkciójelzők letöltése a Autohand API-ból |\n| `autohand experiments enable <feature>` | Konfigurációval támogatott szolgáltatáskapcsoló engedélyezése |\n| `autohand experiments disable <feature>` | A konfigurációval támogatott szolgáltatáskapcsoló letiltása |\n\nA távoli funkciójelzők lekérése innen: `/v1/feature-flags/evaluate`, gyorsítótár a `~/.autohand/feature-flags.json` címen történik, és az API által biztosított TTL lejárta után frissül. A `features.environment` segítségével válassza ki a távoli jelzőkörnyezetet, a `features.remoteOverrides` segítségével pedig a felhasználó által felülbírálható távoli jelzők helyi letiltásához.\n\nA `usage_v2` egy kísérleti funkciókapcsoló a `/usage` irányítópulthoz és a továbbfejlesztett `/status` Használat laphoz. Engedélyezze a következővel: `autohand experiments enable usage_v2`.\n\nA `token_usage_status` egy kísérleti funkciókapcsoló (konfigurációs útvonal `features.tokenUsageStatus`, alapértelmezés szerint kikapcsolva), amely a valós idejű tokenhasználatot mutatja a működő állapotsorban – kumulatív tokenek felfelé (`↑`) és lefelé (`↓`) plusz g kontextusban, cc. `↑15.7k ↓3.2k · context: 6.0% (15.7k/262.1k)`. A kontextusablak modellenként van feloldva az összes szolgáltatónál. Engedélyezze a következővel: `autohand experiments enable token_usage_status`.\n\n---\n\n## Slash parancsok\n\nAz Autohand perjel parancsok gazdag készletét kínálja interaktív használatra. A javaslatok megtekintéséhez írja be a `/` kódot a REPL-be.\n\n### Munkamenet-kezelés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/quit` | Kilépés az aktuális munkamenetből |\n| `/exit` | Kilépés az aktuális munkamenetből |\n| `/new` | Új beszélgetés indítása (memóriakivonattal) |\n| `/clear` | Tiszta beszélgetés automatikus memóriakivonással |\n| `/session` | Az aktuális munkamenet részleteinek megjelenítése |\n| `/sessions` | Korábbi munkamenetek listája |\n| `/resume` | Előző munkamenet folytatása |\n| `/history` | A munkamenet-előzmények böngészése oldalszámozással |\n| `/undo` | Git módosítások és utolsó forduló visszaállítása |\n| `/export` | Munkamenet exportálása markdown/JSON/HTML |\n| `/share` | Aktuális munkamenet megosztása |\n| `/status` | Munkamenet állapotának megjelenítése |\n| `/usage` | Modell, szolgáltató, kontextus és használati korlátok megjelenítése |\n\n### Modell és szolgáltató\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/model` | LLM-modell váltása vagy konfigurálása |\n| `/cc` | Kézi környezet tömörítése |\n\n### Projektbeállítás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/init` | Hozzon létre `AGENTS.md` fájlt az aktuális könyvtárban |\n| `/setup` | Futtassa a telepítővarázslót a Autohand | konfigurálásához\n| `/add-dir` | Könyvtárak hozzáadása a munkaterület hatóköréhez |\n\n### Ügynökök és csapatok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/agents` | Az elérhető alügynökök listája |\n| `/agents-new` | Hozzon létre egy új ügynököt a varázslón keresztül |\n| `/squad` | Nyissa meg/kezelje az önálló Autohand Squad futtatókörnyezetet |\n| `/team` | Csapat irányítása párhuzamos munkához |\n| `/tasks` | Feladatok kezelése csapatban |\n| `/message` | Üzenet küldése csapattársnak |\n\n### Készségek\n\n| Parancs | Leírás |\n| ----------------- | --------------------------------------------------- |\n| `/skills` | Készségek listája és kezelése |\n| `/skills-new` | Új készség létrehozása |\n| `/learn` | Tanulja meg és telepítse az ajánlott készségeket |\n\n### Memória és beállítások\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/memory` | Tárolt emlékek megtekintése és kezelése |\n| `/settings` | A Autohand beállításainak konfigurálása |\n| `/statusline` | A szerző állapotsor mezőinek konfigurálása |\n| `/experiments` | Kísérleti jellemzők kapcsolóinak váltása |\n| `/sync` | Beállítások szinkronizálása eszközök között |\n| `/import` | Importálhat munkameneteket, beállításokat, MCP-t, memóriát, készségeket és hook-okat a támogatott ügynökökről |\n\n### Engedélyek és akasztók\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/permissions`| Szerszámengedélyek kezelése |\n| `/hooks` | Életciklus-horogok kezelése |\n\n### Hitelesítés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/login` | Hitelesítés a Autohand API-val |\n| `/logout` | Kijelentkezés a Autohand fiókból |\n\n### Eszközök és segédprogramok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/search` | Keresés az interneten |\n| `/formatters` | Az elérhető kódformázók listája |\n| `/lint` | Sorolja fel a rendelkezésre álló kódsorokat |\n| `/completion` | Shell befejező szkriptek generálása |\n| `/plan` | Megvalósítási terv létrehozása |\n| `/review` | Kódellenőrzés végrehajtása |\n| `/pr-review` | Lehívási kérelem áttekintése |\n\n### IDE integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/ide` | A futó IDE észlelése és csatlakozása |\n\n### MCP (Model Context Protocol)\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/mcp` | Interaktív MCP-kiszolgálókezelő |\n\n### Automatizálás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/automode` | Indítsa el az autonóm kódolási módot |\n| `/repeat` | Ismétlődő munkák ütemezése |\n| `/yolo` | Yolo mód váltása (automatikus jóváhagyási eszközök) |\n\n### Chrome integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/chrome` | A Chrome böngésző integrációjának engedélyezése |\n\n### UI és kijelző\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/help` | Az elérhető perjel parancsok és tippek megjelenítése |\n| `/about` | Információk megjelenítése a következőről: Autohand |\n| `/theme` | Színtéma módosítása |\n| `/language` | Kijelző nyelvének módosítása |\n| `/feedback` | Visszajelzés küldése a Autohand csapatának |\n\n---\n\n## Rendszerprompt testreszabás\nAutohand lehetővé teszi az AI-ügynök által használt rendszerprompt testreszabását. Ez speciális munkafolyamatok, egyedi utasítások vagy más rendszerekkel való integráció esetén hasznos.\n\n### CLI zászlók\n\n| zászló | Leírás |\n| ------------------------------ | -------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerprompt |\n| `--append-sys-prompt <value>` | Tartalom hozzáfűzése az alapértelmezett rendszerprompthoz |\n\nMindkét zászló elfogadja a következőket:\n\n- **Inline karakterlánc**: Közvetlen szövegtartalom\n- **Fájl elérési útja**: A promptot tartalmazó fájl elérési útja (automatikusan észlelve)\n\n### Fájlútvonal észlelése\n\nEgy érték fájlútvonalként kezelendő, ha:\n\n- A következővel kezdődik: `./`, `../`, `/` vagy `~/`\n- Windows meghajtóbetűjellel kezdődik (pl. `C:\\`)\n- A következővel végződik: `.txt`, `.md` vagy `.prompt`\n- Útleválasztókat tartalmaz szóközök nélkül\n\nEllenkező esetben a rendszer soron belüli karakterláncként kezeli.\n\n### `--sys-prompt` (Teljes csere)\n\nHa rendelkezésre áll, ez **teljesen lecseréli** az alapértelmezett rendszerpromptot. Az ügynök NEM tölti be:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n```bash\n# Inline string\nautohand --sys-prompt \"You are a Python expert. Be concise.\" --prompt \"Write hello world\"\n\n# From file\nautohand --sys-prompt ./custom-prompt.txt --prompt \"Explain this code\"\n\n# Home directory\nautohand --sys-prompt ~/.autohand/prompts/python-expert.md --prompt \"Debug this function\"\n```\n**Példa egyéni prompt fájlra (`custom-prompt.txt`):**\n```\nYou are a specialized Python debugging assistant.\n\nRules:\n- Focus only on Python code\n- Always explain the root cause\n- Suggest fixes with code examples\n- Be concise and direct\n```\n### `--append-sys-prompt` (Hozzáadás az alapértelmezetthez)\n\nHa rendelkezésre áll, ez **hozzáfűzi** a tartalmat a teljes alapértelmezett rendszerprompthoz. Az ügynök továbbra is betölti:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n\nA csatolt tartalom a legvégére kerül hozzáadásra.\n```bash\n# Inline string\nautohand --append-sys-prompt \"Always use TypeScript instead of JavaScript\" --prompt \"Create a function\"\n\n# From file\nautohand --append-sys-prompt ./team-guidelines.md --prompt \"Add error handling\"\n```\n**Példa hozzáfűző fájl (`team-guidelines.md`):**\n```\n## Team Guidelines\n\n- Use 2-space indentation\n- Prefer functional patterns\n- Add JSDoc comments to public APIs\n- Run tests before committing\n```\n### Elsőbbség\n\nHa mindkét zászló rendelkezésre áll:\n\n1. A `--sys-prompt` teljes elsőbbséget élvez\n2. A `--append-sys-prompt` figyelmen kívül hagyva\n```bash\n# --append-sys-prompt is ignored in this case\nautohand --sys-prompt \"Custom only\" --append-sys-prompt \"This is ignored\"\n```\n### Használati esetek\n\n| Használati eset | Ajánlott zászló |\n| ---------------------------------- | ---------------------- |\n| Egyedi ügynök személye | `--sys-prompt` |\n| Minimális utasítások | `--sys-prompt` |\n| Csapatirányelvek hozzáadása | `--append-sys-prompt` |\n| Projektkonvenciók hozzáadása | `--append-sys-prompt` |\n| Integráció külső rendszerekkel | `--sys-prompt` |\n| Speciális hibakeresés | `--sys-prompt` |\n\n### Hibakezelés\n\n| Forgatókönyv | Viselkedés |\n| ------------------ | ------------------------- |\n| Üres érték | Hiba |\n| A fájl nem található | Soron belüli karakterláncként kezelve |\n| Üres fájl | Hiba |\n| Fájl > 1 MB | Hiba |\n| Engedély megtagadva | Hiba |\n| Címtár elérési útja | Hiba |\n\n### Példák\n```bash\n# Python expert mode\nautohand --sys-prompt \"You are a Python expert. Only write Python code.\" \\\n --prompt \"Create a web scraper\"\n\n# TypeScript enforcement\nautohand --append-sys-prompt \"Always use TypeScript, never JavaScript.\" \\\n --prompt \"Create a REST API\"\n\n# CI/CD integration (non-interactive)\nautohand --sys-prompt ./ci-prompt.txt \\\n --prompt \"Fix the failing tests\" \\\n --unrestricted \\\n --patch\n\n# Custom team workflow\nautohand --append-sys-prompt ~/.company/coding-standards.md \\\n --prompt \"Refactor this module\"\n```\n---\n\n## Több könyvtár támogatása\n\nAz Autohand a fő munkaterületen kívül több könyvtárral is működhet. Ez akkor hasznos, ha a projektben különböző könyvtárakban vannak függőségek, megosztott könyvtárak vagy kapcsolódó projektek.\n\n### CLI zászló\n\nA `--add-dir` használatával további könyvtárakat adhat hozzá (többször is használható):\n```bash\n# Add a single additional directory\nautohand --add-dir /path/to/shared-lib\n\n# Add multiple directories\nautohand --add-dir /path/to/lib1 --add-dir /path/to/lib2\n\n# With unrestricted mode (auto-approve writes to all directories)\nautohand --add-dir /path/to/shared-lib --unrestricted\n```\n### Interaktív parancs\n\n`/add-dir` használata interaktív munkamenet során:\n```\n/add-dir # Show current directories\n/add-dir /path/to/dir # Add a new directory\n```\n### Biztonsági korlátozások\n\nA következő könyvtárak nem adhatók hozzá:\n\n- Saját könyvtár (`~` vagy `$HOME`)\n- Gyökérkönyvtár (`/`)\n- Rendszerkönyvtárak (`/etc`, `/var`, `/usr`, `/bin`, `/sbin`)\n- Windows rendszerkönyvtárak (`C:\\Windows`, `C:\\Program Files`)\n- Windows felhasználói könyvtárak (`C:\\Users\\username`)\n- WSL Windows-csatlakozások (`/mnt/c`, `/mnt/c/Windows`)\n"}, "d5fa4aceece9a22e5030402a6d8bbc84745afc69": {"t": 1785764176.317689, "n": 87041, "h": "2edbcf8886a95f73", "c": "# Autohand Konfigurációs referencia\n\nTeljes referencia az összes konfigurációs beállításhoz itt: `~/.autohand/config.json` (vagy `.toml`/`.yaml`/`.yml`).\n\n> **Tipp:** A legtöbb alábbi beállítás interaktívan módosítható a `/settings` paranccsal a fájl manuális szerkesztése helyett.\n\nLokalizált referenciák:\n\n- [English](./config-reference.md)\n- [日本語](./config-reference_ja.md)\n- [简体中文](./config-reference_zh.md)\n- [繁體中文](./config-reference_zh-tw.md)\n- [한국어](./config-reference_ko.md)\n- [Deutsch](./config-reference_de.md)\n- [Español](./config-reference_es.md)\n- [Français](./config-reference_fr.md)\n- [Italiano](./config-reference_it.md)\n- [Polski](./config-reference_pl.md)\n- [Русский](./config-reference_ru.md)\n- [Português (Brasil)](./config-reference_ptBR.md)\n- [Türkçe](./config-reference_tr.md)\n- [Čeština](./config-reference_cs.md)\n- [Magyar](./config-reference_hu.md)\n- [हिन्दी](./config-reference_hi.md)\n- [Bahasa Indonesia](./config-reference_id.md)\n\n## Tartalomjegyzék\n\n- [A konfigurációs fájl helye](#configuration-file-location)\n- [Környezeti változók](#environment-variables)\n- [Csupasz mód](#bare-mode)\n- [Szolgáltatói beállítások](#provider-settings)\n- [Munkaterület beállításai](#workspace-settings)\n- [UI beállítások](#ui-settings)\n- [Ügynökbeállítások](#agent-settings)\n- [Engedélyek beállításai](#permissions-settings)\n- [Javítási mód](#patch-mode)\n- [Hálózati beállítások](#network-settings)\n- [Telemetriai beállítások](#telemetry-settings)\n- [Külső ügynökök](#external-agents)\n- [Skills System](#skills-system)\n- [API beállítások](#api-settings)\n- [Authentication Settings](#authentication-settings)\n- [Közösségi készségek beállításai](#community-skills-settings)\n- [Megosztási beállítások](#share-settings)\n- [Beállítások szinkronizálása](#settings-sync)\n- [Hook beállításai](#hooks-settings)\n- [MCP beállítások](#mcp-settings)\n- [Chrome-bővítmény beállításai](#chrome-extension-settings)\n- [Teljes példa](#complete-example)\n\n---\n\n## Konfigurációs fájl helye\n\nAutohand a következő sorrendben keresi a konfigurációt:\n\n1. `AUTOHAND_CONFIG` környezeti változó (egyéni elérési út)\n2. `~/.autohand/config.toml`\n3. `~/.autohand/config.yaml`\n4. `~/.autohand/config.yml`\n5. `~/.autohand/config.json` (alapértelmezett)\n\nAz alapkönyvtárat is felülírhatja:\n```bash\nexport AUTOHAND_HOME=/custom/path # Changes ~/.autohand to /custom/path\n```\n---\n\n## Környezeti változók\n\n| Változó | Leírás | Példa |\n| --------------------------------------- | ------------------------------------------------- | --------------------------------- |\n| `AUTOHAND_HOME` | Alapkönyvtár az összes Autohand adathoz | `/custom/path` |\n| `AUTOHAND_CONFIG` | Egyéni konfigurációs fájl elérési útja | `/path/to/config.toml` |\n| `AUTOHAND_API_URL` | API-végpont (felülbírálja a konfigurációt) | `https://api.autohand.ai` |\n| `AUTOHAND_SECRET` | Vállalat/csapat titkos kulcsa | `sk-xxx` |\n| `AUTOHAND_PERMISSION_CALLBACK_URL` | Az engedély visszahívásának URL-je (kísérleti) | `http://localhost:3000/callback` |\n| `AUTOHAND_PERMISSION_CALLBACK_TIMEOUT` | Az engedély-visszahívás időtúllépése ms-ban | `5000` |\n| `AUTOHAND_NON_INTERACTIVE` | Futtatás nem interaktív módban | `1` |\n| `AUTOHAND_YES` | Minden felszólítás automatikus megerősítése | `1` |\n| `AUTOHAND_NO_BANNER` | Indítási szalaghirdetés letiltása | `1` |\n| `AUTOHAND_STREAM_TOOL_OUTPUT` | Az eszköz kimenetének streamelése valós időben | `1` |\n| `AUTOHAND_DEBUG` | Hibakeresési naplózás engedélyezése | `1` |\n| `AUTOHAND_THINKING_LEVEL` | Érvelési mélységszint beállítása | `normal` |\n| `AUTOHAND_CLIENT_NAME` | Kliens/szerkesztő azonosító (ACP kiterjesztések által beállítva) | `zed` |\n| `AUTOHAND_CLIENT_VERSION` | Kliens verzió (az ACP-bővítmények által beállított) | `0.169.0` |\n| `AUTOHAND_CODE` | Környezetérzékelési jelző (automatikusan beállítva) | `1` |\n| `AUTOHAND_CODE_SIMPLE` | A csupasz mód engedélyezése a `--bare` | átadása nélkül `1` |\n\n### Gondolkodási szint\n\nA `AUTOHAND_THINKING_LEVEL` környezeti változó szabályozza a modell által használt érvelés mélységét:\n\n| Érték | Leírás |\n| ---------- | --------------------------------------------------------------------- |\n| `none` | Közvetlen válaszok látható indoklás nélkül |\n| `normal` | Szabványos érvelési mélység (alapértelmezett) |\n| `extended` | Mély érvelés összetett feladatokhoz, részletesebb gondolkodási folyamatot mutat |\n\nEzt általában az ACP-kliens-bővítmények (például a Zed) állítják be a konfigurációs legördülő menüben.\n```bash\n# Example: Use extended thinking for complex tasks\nAUTOHAND_THINKING_LEVEL=extended autohand --prompt \"refactor this module\"\n```\n---\n\n## Csupasz mód\n\nA csupasz mód a Autohand csak kifejezetten kért kontextus- és futásidejű integrációkkal indul. Engedélyezze a következők egyikével:\n```bash\nautohand --bare\nAUTOHAND_CODE_SIMPLE=1 autohand\n```\nA `--bare` átadásakor a Autohand a `AUTOHAND_CODE_SIMPLE=1` értéket is beállítja a futó folyamathoz.\n\nA csupasz mód letiltja az automatikus indítást és az interaktív integrációkat:\n\n- horgok és horog értesítések\n- LSP indítás\n- plugin szinkronizálás, bővítmény automatikus betöltése és meta-eszköz automatikus betöltése\n- hozzárendelés, telemetria, munkamenet-szinkronizálás, automatikus jelentéskészítés és háttérpingek\n- automatikus memória/munkamenet bootstrap kontextus\n- háttérkérdések, frissítés-ellenőrzések, funkciójelző-lekérések és modell-metaadatok előzetes letöltése\n- kulcstartó és böngésző OAuth-hitelesítési tartalék\n- automatikus `AGENTS.md` és szolgáltatói utasítás keresés\n- minden perjel parancs, beleértve a parancssorba beírt csupasz `/`\n\nA perjel alakú abszolút fájlútvonalakat, például a `/Users/alex/project/file.ts`, továbbra is normál prompt szövegként kezeli a rendszer. A parancs alakú perjel bevitel, például `/help`, `/model` vagy `/mcp`, a `Slash commands are disabled in bare mode.` kódot írja ki, és nem hajtódik végre.\n\nA csupasz módban történő hitelesítés csak explicit. A Autohand először a következőt olvassa: `AUTOHAND_API_KEY`, majd `auth.apiKeyHelper`, ha be van állítva. Nem olvassa be a kulcstartó hitelesítő adatait, és nem indítja el az OAuth/böngésző bejelentkezést. A külső szolgáltatók továbbra is a szolgáltatóspecifikus API-kulcsokat és konfigurációkat használják.\n\nEzek az explicit bemenetek csupasz módban is elérhetők:\n\n| Bemenet | Leírás |\n| ------------------------------ | -------------------------------------------------------------------------- |\n| `--system-prompt <value>` | Cserélje ki a rendszerprompt szövegközi szöveggel vagy elérési út-szerű értékkel |\n| `--system-prompt-file <path>` | Cserélje ki a rendszerpromptot a fájltartalommal |\n| `--append-system-prompt <value>` | Szövegközi szöveg vagy elérési út-szerű érték hozzáfűzése a | rendszerprompthoz\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--add-dir <path...>` | Explicit könyvtárak hozzáadása a munkaterület hatóköréhez |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--settings` | Nyissa meg a beállításokat közvetlenül a CLI jelzőből |\n| `--config <path>` | Használjon explicit Autohand konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n---\n\n## Szolgáltatói beállítások\n\n### `provider`\n\nAktív LLM szolgáltató használható.\n\n| Érték | Leírás |\n| -------------- | ----------------------------- |\n| `\"openrouter\"` | OpenRouter API (alapértelmezett) |\n| `\"ollama\"` | Helyi Ollama példány |\n| `\"llamacpp\"` | Helyi llama.cpp szerver |\n| `\"openai\"` | OpenAI API közvetlenül |\n| `\"mlx\"` | MLX az Apple Siliconon (helyi) |\n| `\"llmgateway\"` | LLM Gateway egyesített API |\n| `\"deepseek\"` | DeepSeek API |\n| `\"zai\"` | Z.ai GLM API |\n| `\"sakana\"` | Sakana.AI Fugu API |\n| `\"bedrock\"` | AWS alapkőzet |\n| `\"custom:<id>\"` | Felhasználó által meghatározott OpenAI-kompatibilis szolgáltató a következőtől: `customProviders` |\n\n### `openrouter`\n\nOpenRouter szolgáltató konfigurációja.\n```json\n{\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-xxx\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\",\n \"contextWindow\": 262144\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | --------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön OpenRouter API kulcsa |\n| `baseUrl` | húr | Nem | `https://openrouter.ai/api/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellazonosító (pl. `your-modelcard-id-here`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand kitölti ezt az OpenRouterből, ha ismert. |\n\n### `zai`\n\nZ.ai szolgáltató konfigurációja.\n```json\n{\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"baseUrl\": \"https://api.z.ai/api/paas/v4\",\n \"model\": \"glm-5.2\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | -------------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön Z.ai API-kulcsa |\n| `baseUrl` | húr | Nem | `https://api.z.ai/api/paas/v4` | API-végpont |\n| `model` | húr | Igen | `glm-5.2` | Modellazonosító, például `glm-5.2`, `glm-5.1` vagy `glm-4.5` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. A Autohand 1M-re következtet a GLM-5.2-nél és 200K-ra a GLM-5.1-nél. |\n\n### `sakana`\n\nSakana.AI szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.sakana.ai/v1`-t használja alap URL-ként.\n```json\n{\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------ | ------------------------------------------------------------------ |\n| `apiKey` | húr | Igen | - | Az Ön Sakana API kulcsa |\n| `baseUrl` | húr | Nem | `https://api.sakana.ai/v1` | API-végpont |\n| `model` | húr | Igen | `fugu` | Modellazonosító, például `fugu` vagy `fugu-ultra` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand 1M-re következtet a Fugu modelleknél. |\n\n### `customProviders`\n\nAz egyéni szolgáltatók lehetővé teszik a felhasználók számára, hogy OpenAI-kompatibilis végpontot hozzanak létre kódmódosítás vagy új csomagolt szolgáltató nélkül. Adja hozzá a szolgáltatót a `customProviders` alatt, majd válassza ki a `provider: \"custom:<id>\"` kóddal. Ugyanez a folyamat elérhető a `/model` **Új szolgáltatóval**. A telepítés során a Autohand a szolgáltató mentése előtt ellenőrzi az alap URL-t, a hitelesítést és a kiválasztott modellt az OpenAI-kompatibilis `/models` végponton keresztül.\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\",\n \"models\": [\n {\n \"id\": \"acme-code-1\",\n \"label\": \"Acme Code 1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n ]\n }\n }\n}\n```\nAzon helyi OpenAI-kompatibilis szervereknél, amelyek nem igényelnek hitelesítést, állítsa a `apiKeyRequired` értékét `false` értékre, és hagyja ki a `apiKey` értéket.\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------------ | ------- | -------- | ------- | ----------- |\n| `id` | húr | Igen | - | Stabil szolgáltatói azonosító. Meg kell egyeznie az objektumkulccsal, és a következőképpen van kiválasztva: `custom:<id>`. |\n| `displayName` | húr | Igen | - | A `/model` és a szolgáltató beállításai között látható név. |\n| `apiFormat` | húr | Igen | - | A következőnek kell lennie: `openai-compatible`. |\n| `baseUrl` | húr | Igen | - | Végpont gyökér, például `https://api.example.com/v1`. Autohand ellenőrzi a `/models` kódot, és felhívja a `/chat/completions` kódot. |\n| `apiKey` | húr | Feltételes | - | Adathordozó token a tárolt végpontokhoz. Kötelező, ha a `apiKeyRequired` igaz. |\n| `apiKeyRequired` | logikai | Nem | `true` | Állítsa be a false értéket a helyi vagy már hitelesített átjárókhoz. |\n| `model` | húr | Igen | - | Aktív modell azonosító. |\n| `contextWindow` | szám | Nem | Auto | Pontos kontextusablak a token-költségvetéshez, állapothoz, telemetriához és szinkronizálási metaadatokhoz. |\n| `reasoningEffort` | húr | Nem | - | Opcionális `none`, `low`, `medium`, `high` vagy `xhigh`. `reasoning_effort` néven küldve egyéni OpenAI-kompatibilis kérésekhez. |\n| `models` | tömb | Nem | - | Opcionális modellválasztó bejegyzések modellenkénti kontextussal és érvelési metaadatokkal. |\n\n### `ollama`\n\nOllama szolgáltató konfigurációja.\n```json\n{\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"port\": 11434,\n \"model\": \"llama3.2\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------- | ------------------------------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:11434` | Ollama szerver URL |\n| `port` | szám | Nem | `11434` | Szerverport (a baseUrl alternatívája) |\n| `model` | húr | Igen | - | Modellnév (pl. `llama3.2`, `codellama`) |\n\n### `llamacpp`\n\nllama.cpp szerver konfigurációja.\n```json\n{\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"default\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | llama.cpp szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | Modellazonosító |\n\n### `openai`\n\nOpenAI API konfiguráció.\n```json\n{\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-xxx\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\nAz OpenAI a Autohand beépített OpenAI bejelentkezési folyamatán keresztül is használhatja ChatGPT-előfizetését:\n```json\n{\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"contextWindow\": 1050000,\n \"model\": \"gpt-5.4\",\n \"chatgptAuth\": {\n \"accessToken\": \"...\",\n \"refreshToken\": \"...\",\n \"accountId\": \"...\"\n }\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | ----------------------- | ---------------------------- | -------------------------------------------------------------------------- |\n| `authMode` | húr | Nem | `api-key` | Hitelesítési mód: `api-key` vagy `chatgpt` |\n| `apiKey` | húr | Igen a `api-key` módhoz | - | OpenAI API kulcs |\n| `baseUrl` | húr | Nem | `https://api.openai.com/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-5.4`, `gpt-5.4-mini`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Állítsa be az elavult helyi feltételezések felülbírálásához. |\n| `chatgptAuth` | tárgy | Igen a `chatgpt` módhoz | - | Tárolt ChatGPT/Codex hitelesítési tokenek és fiókazonosító |\n\n### `mlx`\n\nMLX szolgáltató Apple Silicon Mac gépekhez (helyi következtetés).\n```json\n{\n \"mlx\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | MLX szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | MLX modell azonosító |\n\n### `llmgateway`\n\nLLM Gateway egységes API konfiguráció. Hozzáférést biztosít több LLM-szolgáltatóhoz egyetlen API-n keresztül.\n```json\n{\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"baseUrl\": \"https://api.llmgateway.io/v1\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------------- | ---------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | LLM Gateway API kulcs |\n| `baseUrl` | húr | Nem | `https://api.llmgateway.io/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-4o`, `claude-3-5-sonnet-20241022`) |\n\n**API-kulcs beszerzése:**\nKeresse fel a [llmgateway.io/dashboard](https://llmgateway.io/dashboard) webhelyet fiók létrehozásához és API-kulcsának beszerzéséhez.\n\n**Támogatott modellek:**\nAz LLM Gateway több szolgáltató modelljét támogatja, többek között:\n\n- OpenAI: `gpt-4o`, `gpt-4o-mini`, `gpt-4-turbo`\n`claude-3-5-haiku-20241022`\n- Google: `gemini-1.5-pro`, `gemini-1.5-flash`\n\n### `deepseek`\n\nDeepSeek szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.deepseek.com`-t használja alap URL-ként.\n```json\n{\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"baseUrl\": \"https://api.deepseek.com\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | --------------------------- | --------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | DeepSeek API kulcs |\n| `baseUrl` | húr | Nem | `https://api.deepseek.com` | API-végpont |\n| `model` | húr | Igen | - | Modellnév, például `deepseek-v4-flash` vagy `deepseek-v4-pro` |\n\n### `bedrock`\n\nAWS Bedrock szolgáltató konfigurációja. `converse` az alapértelmezett mód, és az AWS SDK hitelesítési láncot használja. Az OpenAI-kompatibilis módok Bedrock API-kulcsokat és Bedrock OpenAI-kompatibilis végpontokat használnak.\n```json\n{\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------- | ------ | -------- | ------- | ----------- |\n| `model` | húr | Igen | - | Alapkőzetmodell-azonosító, következtetési profilazonosító vagy ARN |\n| `region` | húr | Igen | `AWS_REGION`, majd `AWS_DEFAULT_REGION`, majd `us-east-1` a beállításban | AWS régió |\n| `apiMode` | húr | Nem | `converse` | `converse`, `openai-chat` vagy `openai-responses` |\n| `authMode` | húr | Nem | `aws-credentials` `converse`, `bedrock-api-key` OpenAI-kompatibilis módokhoz | Hitelesítési mód |\n| `profile` | húr | Nem | - | Opcionális AWS-profil a hitelesítő adatok láncos hitelesítéséhez |\n| `endpoint` | húr | Nem | Módból és régióból származtatva | Egyéni/privát Bedrock végpont |\n| `apiKey` | húr | Igen OpenAI-kompatibilis módokhoz | - | Bedrock API kulcs. Ne használjon OpenAI API-kulcsokat. |\n\nFuttassa a `aws configure sso` kódot, vagy állítsa be a `AWS_PROFILE=enterprise-prod autohand` értéket a profilalapú AWS-hitelesítéshez. Az IAM-szerepkört, a tárolót és a példány metaadat-hitelesítő adatait az AWS SDK támogatja. Modell használata előtt engedélyezze a modellelérést az AWS-konzolon.\n\n---\n\n## Munkaterület beállításai\n```json\n{\n \"workspace\": {\n \"defaultRoot\": \"/path/to/projects\",\n \"allowDangerousOps\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------------------ | -------------------------------------------------- |\n| `defaultRoot` | húr | Aktuális címtár | Alapértelmezett munkaterület, ha nincs megadva |\n| `allowDangerousOps` | logikai | `false` | Pusztító műveletek engedélyezése megerősítés nélkül |\n\n### Munkahelyi biztonság\n\nAutohand automatikusan blokkolja a működést a veszélyes könyvtárakban, hogy megelőzze a véletlen károsodást:\n\n- **Fájlrendszer gyökerei** (`/`, `C:\\`, `D:\\` stb.)\n- **Házikönyvtárak** (`~`, `/Users/<user>`, `/home/<user>`, `C:\\Users\\<user>`)\n- **Rendszerkönyvtárak** (`/etc`, `/var`, `/System`, `C:\\Windows` stb.)\n- **WSL Windows-csatlakozások** (`/mnt/c`, `/mnt/c/Users/<user>`)\n\nEzt az ellenőrzést nem lehet megkerülni. Ha egy veszélyes könyvtárban próbálja meg futtatni a autohand alkalmazást, hibaüzenetet fog látni, és meg kell adnia egy biztonságos projektkönyvtárat.\n```bash\n# This will be blocked\ncd ~ && autohand\n# Error: Unsafe Workspace Directory\n\n# This works\ncd ~/projects/my-app && autohand\n```\nA részletekért lásd a [Workspace Safety](./workspace-safety.md) részt.\n\n---\n\n## UI beállítások\n```json\n{\n \"ui\": {\n \"theme\": \"dark\",\n \"customThemes\": {\n \"company\": {\n \"colors\": {\n \"accent\": \"#7c3aed\",\n \"success\": \"#22c55e\"\n }\n }\n },\n \"autoConfirm\": false,\n \"readFileCharLimit\": 300,\n \"silentToolOutput\": false,\n \"activityVerbs\": [\"Compiling\", \"Parsing\", \"Reviewing\"],\n \"activityVerbsEnabled\": true,\n \"activitySymbol\": \"✳\",\n \"statusLine\": {\n \"showProviderModel\": true,\n \"showContext\": true,\n \"showCommandHint\": true,\n \"showPullRequest\": true,\n \"showSessionLines\": false,\n \"showQueue\": true,\n \"showActiveStatus\": true,\n \"showActiveMetrics\": true,\n \"showCancelHint\": true\n },\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ----------------------------- | ------ | ------- | ---------------------------------------------------------------------------------------------- |\n| `theme` | húr | `\"dark\"` | Színes téma a terminál kimenetéhez. A beépítettek a következők: `dark`, `light`, `dracula`, `sandy`, `tui`, `github-dark`, `cappadocia`, CODE és ___8__ `australia`. A régi `turkey` és `brazil` értékek továbbra is betöltődnek álnévként. |\n| `customThemes` | tárgy | `{}` | Soron belüli egyéni témadefiníciók a téma nevével. A használatához állítsa be a `theme` kulcsot ugyanarra a kulcsra. |\n| `autoConfirm` | logikai | `false` | A biztonságos működés érdekében hagyja ki a megerősítő felszólításokat |\n| `readFileCharLimit` | szám | `300` | Maximum megjeleníthető karakter az olvasási/kereső eszköz kimenetéből (a teljes tartalom továbbra is elküldésre kerül a modellnek) |\n| `silentToolOutput` | logikai | `false` | A szerszám kimeneti blokkjainak elrejtése a terminálban, miközben továbbra is megőrzi a modell/munkamenet szerszámeredményeit |\n| `activityVerbs` | karakterlánc vagy karakterlánc[] | beépített medence | Egyéni tevékenység ige vagy igekészlet a munkajelzőhöz, `Verb...` formátumban |\n| `activityVerbsEnabled` | logikai | `true` | Forgó tevékenység igék megjelenítése, például `Compiling...`, miközben az ügynök dolgozik |\n| `activitySymbol` | húr | `\"✳\"` | A tevékenységi ige előtt látható szimbólum a tevékenységmutató kimenetében |\n| `statusLine.showProviderModel` | logikai | `true` | Jelenítse meg az aktív szolgáltatót és modellt a szerző állapotsorában |\n| `statusLine.showContext` | logikai | `true` | Jelenítse meg a kontextus százalékos arányát a szerző állapotsorában |\n| `statusLine.showCommandHint` | logikai | `true` | Parancs, említés, készség és terminálbejegyzési tippek megjelenítése a szerző állapotsorában |\n| `statusLine.showPullRequest` | logikai | `true` | Mutassa meg a kapcsolódó lekérési kérés számát, vagy `PR #123`, ha nincs PR társítva |\n| `statusLine.showSessionLines` | logikai | `false` | Az aktuális munkamenet során hozzáadott és eltávolított sorok megjelenítése |\n| `statusLine.showQueue` | logikai | `true` | A sorba állított kérések számának megjelenítése az állapotsorban |\n| `statusLine.showActiveStatus` | logikai | `true` | Az aktív forduló állapotszövege megjelenítése, miközben az ügynök dolgozik |\n| `statusLine.showActiveMetrics` | logikai | `true` | Az eltelt idő és a token mérőszámainak megjelenítése, amíg az ügynök dolgozik |\n| `statusLine.showCancelHint` | logikai | `true` | Az Esc megszakítási tipp megjelenítése, miközben az ügynök dolgozik |\n| `completionReportEnabled` | logikai | `true` | Kérje meg a modellt, hogy a végrehajtott műveleti körök után tartalmazzon egy tömör befejezési jelentést |\n| `showCompletionNotification` | logikai | `true` | Rendszerértesítés megjelenítése a feladat befejezésekor |\n| `showThinking` | logikai | `true` | Az LLM érvelésének/gondolati folyamatának megjelenítése |\n| `terminalBell` | logikai | `true` | Csengessen terminálcsengőt, amikor a feladat befejeződött (jelvényt mutat a terminálfülön/dokkon) |\n| `checkForUpdates` | logikai | `true` | CLI frissítések keresése indításkor |\n| `updateCheckInterval` | szám | `24` | Órák a frissítési ellenőrzések között (a gyorsítótárazott eredményt az intervallumon belül használja) |\n\nAz egyéni témák bármely szemantikai színtokent felülírhatnak. A hiányzó tokenek a sötét témából származnak:\n```json\n{\n \"ui\": {\n \"theme\": \"company\",\n \"customThemes\": {\n \"company\": {\n \"vars\": {\n \"brand\": \"#7c3aed\",\n \"brandSoft\": \"#a78bfa\"\n },\n \"colors\": {\n \"accent\": \"brand\",\n \"borderAccent\": \"brandSoft\",\n \"mdHeading\": \"brand\"\n }\n }\n }\n }\n}\n```\nMegjegyzés: A `readFileCharLimit` és `silentToolOutput` csak a terminál megjelenítését érinti. A teljes tartalom továbbra is elküldésre kerül a modellnek, és eszközüzenetekben tárolódik.\n\nA néma eszközkimenetet a fájl szerkesztése nélkül is átkapcsolhatja:\n```bash\nautohand config set silent_tool_output true\nautohand config set silent_tool_output false\n```\nA forgó tevékenység igék között válthat a fájl szerkesztése nélkül:\n```bash\nautohand config set verbs activity true\nautohand config set verbs activity false\n```\nSzabja testre az igéket a konfigurációs fájlban, ha rögzített állapotcímkét vagy kis projektspecifikus elforgatást szeretne:\n```json\n{\n \"ui\": {\n \"activityVerbs\": \"Compiling\"\n }\n}\n```\n\n```json\n{\n \"ui\": {\n \"activityVerbs\": [\"Indexing\", \"Reviewing\", \"Testing\"],\n \"activitySymbol\": \">\"\n }\n}\n```\nA `activityVerbs` egyetlen karakterláncot vagy nem üres karakterlánc-tömböt fogad el. Ha a `activityVerbsEnabled` értéke `false`, a Autohand visszaesik a `Working...` értékre, ahelyett, hogy az egyéni vagy beépített igék között forogna.\n\nA fájl szerkesztése nélkül válthat a befejezési jelentések között, beleértve a strukturált `SITREP` promptot is:\n```bash\nautohand config set sitrep true\nautohand config set sitrep false\n```\n### Terminal Bell\n\nHa a `terminalBell` engedélyezve van (alapértelmezett), a Autohand megszólal a terminál csengőjén (`\\x07`), amikor egy feladat befejeződik. Ez kiváltja:\n\n- **Jelvény a terminál lapon** - Vizuális jelzőt mutat, hogy a munka elkészült\n- **Dokk ikon ugrál** - Felhívja a figyelmet, ha a terminál a háttérben van (macOS)\n- **Hang** - Ha a terminál hangjai engedélyezve vannak a terminál beállításaiban\n\nTerminálspecifikus beállítások:\n\n- **macOS terminál**: Beállítások > Profilok > Speciális > Bell (vizuális/hallható)\n- **iTerm2**: Beállítások > Profilok > Terminál > Értesítések\n- **VS Code Terminal**: Beállítások > Terminál > Integrált: Bell engedélyezése\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"terminalBell\": false\n }\n}\n```\n### Ink Renderer\n\nA Autohand alapértelmezés szerint az Ink 7 + React 19 renderert használja az interaktív terminálokhoz. A régi `ui.useInkRenderer` konfigurációs mezőt figyelmen kívül hagyja, így a régi konfigurációs fájlok nem kényszeríthetik a sima terminálszerkesztőt. A tinta a következőket nyújtja:\n\n- **Recgésmentes kimenet**: Minden UI-frissítés kötegelt React-egyeztetésen keresztül történik\n- **Munkasor funkció**: Írja be az utasításokat, amíg az ügynök dolgozik\n- **Jobb bemenetkezelés**: Nincsenek ütközések a readline-kezelők között\n- **Összeállítható felhasználói felület**: A jövőbeni fejlett felhasználói felületi funkciók alapja\n\nVészhelyzeti tartalék a terminál kompatibilitás érdekében:\n```bash\nAUTOHAND_LEGACY_UI=1 autohand\n```\nMegjegyzés: Ez a funkció kísérleti jellegű, és lehetnek szélső esetek. Az alapértelmezett ora-alapú felhasználói felület stabil és teljesen működőképes marad.\n\n### Frissítési ellenőrzés\n\nHa a `checkForUpdates` engedélyezve van (alapértelmezett), a Autohand indításkor ellenőrzi az új kiadásokat:\n```\n> Autohand v0.6.8 (abc1234) ✓ Up to date\n```\nHa elérhető frissítés:\n```\n> Autohand v0.6.7 (abc1234) ⬆ Update available: v0.6.8\n ↳ Run: curl -fsSL https://autohand.ai/install.sh | sh\n```\nHogyan működik:\n\n- Lekéri a GitHub API legújabb kiadását\n- A gyorsítótárak eredménye `~/.autohand/version-check.json`\n- Csak egyszer ellenőrzi `updateCheckInterval` óránként (alapértelmezett: 24)\n- Nem blokkoló: az indítás akkor is folytatódik, ha az ellenőrzés sikertelen\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"checkForUpdates\": false\n }\n}\n```\nVagy környezeti változón keresztül:\n```bash\nexport AUTOHAND_SKIP_UPDATE_CHECK=1\n```\n---\n\n## Ügynök beállításai\n\nAz ügynök viselkedésének és iterációs korlátainak szabályozása.\n```json\n{\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"autoMemory\": true,\n \"idleLogoutEnabled\": true,\n \"debug\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------- | ------------------------------------------------------------------------------ |\n| `maxIterations` | szám | `100` | Maximális szerszámiterációk felhasználói kérésenként a leállítás előtt |\n| `enableRequestQueue` | logikai | `true` | Lehetővé teszi a felhasználók számára, hogy kéréseket írjanak be és sorba állítsanak, miközben az ügynök dolgozik |\n| `toolSelectionCache` | logikai | `true` | Gyorsítótárazza a körönkénti szerszámséma helyi kiválasztását az egyenértékű szerszámkiválasztási bemenethez |\n| `autoMemory` | logikai | `true` | Tartós felhasználói/projektmemóriák kibontása és mentése sikeres interaktív fordulatok után |\n| `idleLogoutEnabled` | logikai | `true` | Jelentkezzen ki a hitelesített interaktív munkamenetekből az üresjárati időtúllépés után |\n| `debug` | logikai | `false` | Részletes hibakeresési kimenet engedélyezése (naplózza az ügynök belső állapotát az stderr-be) |\n\n### Eszközséma kiválasztása\n\nA Autohand nem küld el minden teljes eszközsémát minden LLM-kérelemnél. A rendszerprompt tartalmaz egy kompakt eszközképesség-katalógust, és minden kérés csak egy kis konkrét sémát tesz közzé, amely a következők közül választható ki:\n\n- Az alapvető felderítési eszközök, például `tool_search`, `read_file`, `fff_find` és `fff_grep`\n- Szándékhoz illő eszközök szerkesztési, ellenőrzési, git, böngésző, web, függőségi vagy projektkövetési munkákhoz\n- A legutóbbi `tool_search` hívások során kért vagy kifejezetten név szerint megemlített eszközök\n\nEzzel elkerülhető a nagy előzetes kontextusköltség, ha az összes eszközséma elküldése a felhasználói szándék ismertsége előtt felmerül. `toolSelectionCache` csak a helyi választó gyorsítótárát vezérli az egyenértékű fordulatokhoz; nem hajt végre felhasználói előtti LLM-bemelegítést, és nem kényszerít ki nagy gyorsítótárazott prompt előtagot.\n\nA helyi választó gyorsítótárának letiltása:\n```json\n{\n \"agent\": {\n \"toolSelectionCache\": false\n }\n}\n```\nA hitelesített, régóta működő ügynöki munkamenetek életben tartásához, amíg munkára várnak:\n```json\n{\n \"agent\": {\n \"idleLogoutEnabled\": false\n }\n}\n```\nEgyetlen folyamathoz használja a `autohand --no-idle-logout` kódot, vagy állítsa be a `AUTOHAND_NO_IDLE_LOGOUT=1` értéket.\n\n### Hibakeresési mód\n\nEngedélyezze a hibakeresési módot az ügynök belső állapotának részletes naplózásához (reakcióhurok iterációi, prompt felépítés, munkamenet részletei). A kimenet az stderr-hez megy, hogy elkerülje a normál kimenet zavarását.\n\nHáromféleképpen engedélyezheti a hibakeresési módot (elsőbbségi sorrendben):\n\n1. **CLI jelző**: `autohand -d` vagy `autohand --debug`\n2. **Környezeti változó**: `AUTOHAND_DEBUG=1`\n3. **Konfigurációs fájl**: Állítsa be: `agent.debug: true`\n\n### Kérési sor\n\nHa a `enableRequestQueue` engedélyezve van, folytathatja az üzenetek beírását, miközben az ügynök feldolgoz egy korábbi kérést. A bevitel a sorba kerül, és automatikusan feldolgozásra kerül, amikor az aktuális feladat befejeződik.\n\n- Írja be az üzenetet, és nyomja meg az Enter billentyűt, hogy hozzáadja a sorhoz\n- Az állapotsor azt mutatja, hogy hány kérés van sorban\n- A kérések feldolgozása FIFO (first-in, first-out) sorrendben történik\n- A sor maximális mérete 10 kérés\n\n---\n\n## Engedélyek beállításai\n\nA szerszámengedélyek finom vezérlése.\n```json\n{\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\n \"run_command:npm *\",\n \"run_command:bun *\",\n \"run_command:git status\"\n ],\n \"blacklist\": [\"run_command:rm -rf *\", \"run_command:sudo *\"],\n \"rules\": [\n {\n \"tool\": \"run_command\",\n \"pattern\": \"npm test\",\n \"action\": \"allow\"\n }\n ],\n \"rememberSession\": true\n }\n}\n```\n### `mode`\n\n| Érték | Leírás |\n| ----------------- | ------------------------------------------------------ |\n| `\"interactive\"` | Jóváhagyás kérése veszélyes műveletekhez (alapértelmezett) |\n| `\"unrestricted\"` | Nincsenek felszólítások, engedélyezzen mindent |\n| `\"restricted\"` | Minden veszélyes művelet megtagadása |\n\n### `whitelist`\n\nSzerszámminták sora, amelyek soha nem igényelnek jóváhagyást.\n```json\n[\"run_command:npm *\", \"run_command:bun test\"]\n```\n### `blacklist`\n\nMindig blokkolt szerszámminták tömbje.\n```json\n[\"run_command:rm -rf /\", \"run_command:sudo *\"]\n```\n### `rules`\n\nFinom szemcsés engedélyezési szabályok.\n\n| Mező | Típus | Leírás |\n| --------- | --------- | -------------------------------------------- | ---------- | -------------- |\n| `tool` | húr | A megfelelő eszköznév |\n| `pattern` | húr | Opcionális minta az érvekhez való illeszkedéshez |\n| `action` | `\"allow\"` | `\"deny\"` | `\"prompt\"` | Intézkedések |\n\n### `rememberSession`\n\n| Típus | Alapértelmezett | Leírás |\n| ------- | ------- | -------------------------------------------- |\n| logikai | `true` | Emlékezzen az ülés jóváhagyási határozataira |\n\n### Helyi projektengedélyek\n\nMinden projektnek saját engedélybeállításai lehetnek, amelyek felülírják a globális konfigurációt. Ezeket a projekt gyökérkönyvtárában a `.autohand/settings.local.json` tartalmazza.\n\nAmikor jóváhagy egy fájlműveletet (szerkesztés, írás, törlés), a rendszer automatikusan ebbe a fájlba menti, így nem kéri újra ugyanazt a műveletet ebben a projektben.\n```json\n{\n \"version\": 1,\n \"permissions\": {\n \"whitelist\": [\n \"apply_patch:src/components/Button.tsx\",\n \"write_file:package.json\",\n \"run_command:bun test\"\n ]\n }\n}\n```\n**Hogyan működik:**\n\n- Amikor jóváhagy egy műveletet, a rendszer a következőbe menti: `.autohand/settings.local.json`\n- Legközelebb ugyanazt a műveletet a rendszer automatikusan jóváhagyja\n- A helyi projektbeállítások egyesülnek a globális beállításokkal (a helyi beállítások elsőbbséget élveznek)\n- Adja hozzá a `.autohand/settings.local.json` kódot a `.gitignore`-hoz, hogy a személyes beállítások privátak maradjanak\n\n**Mintaformátum:**\n\n- `tool_name:path` - Fájlműveletekhez (pl. `apply_patch:src/file.ts`)\n- `tool_name:command args` - Parancsokhoz (pl. `run_command:npm test`)\n\n### Megtekintési engedélyek\n\nJelenlegi engedélybeállításait kétféleképpen tekintheti meg:\n\n**CLI jelző (nem interaktív):**\n```bash\nautohand --permissions\n```\nEz a következőket jeleníti meg:\n\n- Jelenlegi engedélyezési mód (interaktív, korlátlan, korlátozott)\n- Munkaterület és konfigurációs fájlok elérési útjai\n- Minden jóváhagyott minta (engedélyezőlista)\n- Minden elutasított minta (feketelista)\n- Összefoglaló statisztika\n\n**Interaktív parancs:**\n```\n/permissions\n```\nInteraktív módban a `/permissions` parancs ugyanazokat az információkat és lehetőségeket biztosít a következőkhöz:\n\n- Elemek eltávolítása az engedélyezési listáról\n- Távolítsa el az elemeket a feketelistáról\n- Törölje az összes mentett engedélyt\n\n---\n\n## Patch mód\n\nA Patch mód lehetővé teszi megosztható, git-kompatibilis javítás létrehozását a munkaterület-fájlok módosítása nélkül. Ez hasznos:\n\n- A kód felülvizsgálata a változtatások alkalmazása előtt\n- Az AI által generált változások megosztása a csapat tagjaival\n- Reprodukálható változáskészletek készítése\n- CI/CD folyamatok, amelyeknek alkalmazása nélkül kell rögzíteni a változásokat\n\n### Használat\n```bash\n# Generate patch to stdout\nautohand --prompt \"add user authentication\" --patch\n\n# Save to file\nautohand --prompt \"add user authentication\" --patch --output auth.patch\n\n# Pipe to file (alternative)\nautohand --prompt \"refactor api handlers\" --patch > refactor.patch\n```\n### Viselkedés\n\nHa `--patch` meg van adva:\n\n- **Automatikus megerősítés**: Minden visszaigazolás automatikusan elfogadásra kerül (`--yes`)\n- **Nincsenek felszólítások**: Nem jelennek meg jóváhagyási értesítések (`--unrestricted` vélelmezett)\n- **Csak előnézet**: A változtatásokat rögzíti, de NEM írja lemezre\n- **Kikényszerített biztonság**: A feketelistán szereplő műveletek (`.env`, SSH-kulcsok, veszélyes parancsok) továbbra is blokkolva vannak\n\n### Javítások alkalmazása\n\nA címzettek szabványos git parancsokkal alkalmazhatják a javítást:\n```bash\n# Check what would be applied (dry-run)\ngit apply --check changes.patch\n\n# Apply the patch\ngit apply changes.patch\n\n# Apply with 3-way merge (handles conflicts better)\ngit apply -3 changes.patch\n\n# Apply and stage changes\ngit apply --index changes.patch\n\n# Reverse a patch\ngit apply -R changes.patch\n```\n### Patch formátum\n\nA generált javítás a git egységes diff formátumát követi:\n```diff\ndiff --git a/src/auth.ts b/src/auth.ts\nnew file mode 100644\n--- /dev/null\n+++ b/src/auth.ts\n@@ -0,0 +1,15 @@\n+export function authenticate(user: string, password: string) {\n+ // Implementation here\n+}\n\ndiff --git a/src/index.ts b/src/index.ts\n--- a/src/index.ts\n+++ b/src/index.ts\n@@ -1,5 +1,7 @@\n import express from 'express';\n+import { authenticate } from './auth';\n\n const app = express();\n+app.use(authenticate);\n```\n### Kilépési kódok\n\n| Kód | Jelentése |\n| ---- | ---------------------------------------------------- |\n| `0` | Siker, patch generált |\n| `1` | Hiba (hiányzó `--prompt`, engedély megtagadva stb.) |\n\n### Kombinálva más zászlókkal\n```bash\n# Use specific model\nautohand --prompt \"optimize queries\" --patch --model gpt-4o\n\n# Specify workspace\nautohand --prompt \"add tests\" --patch --path ./my-project\n\n# Use custom config\nautohand --prompt \"refactor\" --patch --config ~/.autohand/work.json\n```\n### Csapatmunkafolyamat-példa\n```bash\n# Developer A: Generate patch for a feature\nautohand --prompt \"implement user dashboard with charts\" --patch --output dashboard.patch\n\n# Share via git (create PR with just the patch file)\ngit checkout -b patch/dashboard\ngit add dashboard.patch\ngit commit -m \"Add dashboard feature patch\"\ngit push\n\n# Developer B: Review and apply\ngit fetch origin patch/dashboard\ngit apply dashboard.patch\n# Run tests, review code, then commit\ngit add -A && git commit -m \"feat: add user dashboard with charts\"\n```\n---\n\n## Hálózati beállítások\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Max | Leírás |\n| ------------ | ------ | ------- | --- | --------------------------------------- |\n| `maxRetries` | szám | `3` | `5` | Próbálkozzon újra sikertelen API-kérésekkel |\n| `timeout` | szám | `30000` | - | Kérelem időtúllépése ezredmásodpercben |\n| `retryDelay` | szám | `1000` | - | Az újrapróbálkozások közötti késleltetés ezredmásodpercben |\n\n---\n\n## Telemetriai beállítások\n\nA telemetria **alapértelmezés szerint le van tiltva** (feliratkozás). Engedélyezze a Autohand fejlesztéséhez.\n```json\n{\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true,\n \"companySecret\": \"\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | -------------------------- | ---------------------------------------------- |\n| `enabled` | logikai | `false` | Telemetria engedélyezése/letiltása (feliratkozás) |\n| `apiBaseUrl` | húr | `https://api.autohand.ai` | Telemetria API végpont |\n| `batchSize` | szám | `20` | Az automatikus kiürítés előtt kötegelt események száma |\n| `flushIntervalMs` | szám | `60000` | Öblítési időköz ezredmásodpercben (1 perc) |\n| `maxQueueSize` | szám | `500` | Maximális sorméret a régi események eldobása előtt |\n| `maxRetries` | szám | `3` | Próbálkozzon újra sikertelen telemetriai kérések esetén |\n| `enableSessionSync` | logikai | `true` | Szinkronizálja a munkameneteket a felhővel a csapatfunkciókhoz, ha a telemetria engedélyezve van |\n| `companySecret` | húr | `\"\"` | Vállalati titok API-hitelesítéshez |\n\nA szolgáltató/modell telemetria tartalmazza az aktív szolgáltatói azonosítót, a modellazonosítót és az elérhető nem titkos metaadatokat, például az egyéni szolgáltató megjelenítési nevét, API-formátumát, érvelési erőfeszítéseit és kontextusablakát. Az API-kulcsok és a vivőjogkivonatok soha nem szerepelnek benne.\n\n---\n\n## Külső ügynökök\n\nEgyéni ügynökdefiníciók betöltése külső könyvtárakból.\n```json\n{\n \"externalAgents\": {\n \"enabled\": true,\n \"paths\": [\"~/.autohand/agents\", \"/team/shared/agents\"]\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | -------- | ------- | -------------------------------- |\n| `enabled` | logikai | `false` | Külső ügynök betöltésének engedélyezése |\n| `paths` | string[] | `[]` | Könyvtárak az ügynökök betöltéséhez |\n\n---\n\n## Skills System\n\nA készségek olyan utasításcsomagok, amelyek speciális utasításokat adnak az AI-ügynöknek. Úgy működnek, mint az igény szerinti `AGENTS.md` fájlok, amelyek bizonyos feladatokhoz aktiválhatók.\n\n### Készségek felfedező helyek\n\nA készségek több helyről fedezhetők fel, és a későbbi források élveznek elsőbbséget:\n\n| Helyszín | Forrásazonosító | Leírás |\n| ----------------------------------------- | ------------------- | ------------------------------------------ |\n| `~/.codex/skills/**/SKILL.md` | `codex-user` | Felhasználói szintű Codex készségek (rekurzív) |\n| `~/.claude/skills/*/SKILL.md` | `claude-user` | Felhasználói szintű Claude-készségek (egy szint) |\n| `~/.autohand/skills/**/SKILL.md` | `autohand-user` | Felhasználói szintű Autohand készségek (rekurzív) |\n| `<project>/.claude/skills/*/SKILL.md` | `claude-project` | Projektszintű Claude-készségek (egy szint) |\n| `<project>/.autohand/skills/**/SKILL.md` | `autohand-project` | Projekt szintű Autohand készségek (rekurzív) |\n\n### Automatikus másolási viselkedés\n\nA Codex vagy Claude helyekről felfedezett készségek automatikusan átmásolódnak a megfelelő Autohand helyre:\n\n- `~/.codex/skills/` és `~/.claude/skills/` → `~/.autohand/skills/`\n- `<project>/.claude/skills/` → `<project>/.autohand/skills/`\n\nA Autohand helyeken meglévő készségek soha nem íródnak felül.\n\n### SKILL.md formátum\n\nA YAML frontmatter-t használó készségek, majd a leértékelési tartalom:\n```markdown\n---\nname: my-skill-name\ndescription: Brief description of the skill\nlicense: MIT\ncompatibility: Works with Node.js 18+\nallowed-tools: read_file write_file run_command\nmetadata:\n author: your-name\n version: \"1.0.0\"\n---\n\n# My Skill\n\nDetailed instructions for the AI agent...\n```\n| Mező | Kötelező | Max hossz | Leírás |\n| ---------------- | -------- | ---------- | ------------------------------------------- |\n| `name` | Igen | 64 karakter | Kisbetűs alfanumerikus, csak kötőjelekkel |\n| `description` | Igen | 1024 karakter | A készség rövid leírása |\n| `license` | Nem | - | Licencazonosító (pl. MIT, Apache-2.0) |\n| `compatibility` | Nem | 500 karakter | Kompatibilitási megjegyzések |\n| `allowed-tools` | Nem | - | Az engedélyezett eszközök szóközzel tagolt listája |\n| `metadata` | Nem | - | További kulcs-érték metaadatok |\n\n### Beviteli előtagok\n\nA Autohand támogatja a speciális előtagokat a beviteli promptban:\n\n| Előtag | Leírás | Példa |\n| ------ | ------------------------------- | ---------------------------------- |\n| `/` | Slash parancsok | `/help`, `/model`, `/quit`, `/exit` |\n| `@` | Fájl említések (automatikus kiegészítés) | `@src/index.ts` |\n| `$` | Szakértelem említése (automatikus kiegészítés) | `$frontend-design`, `$code-review` |\n| `!` | A terminálparancsok közvetlen futtatása | `! git status`, `! ls -la` |\n\n**Képességmegemlítések (`$`):**\n\n- Írja be a következőt: `$`, majd karaktereket az automatikus kiegészítéssel elérhető készségek megtekintéséhez\n- A Tab elfogadja a felső javaslatot (pl. `$frontend-design`)\n- A készségek a következőből fedezhetők fel: `~/.autohand/skills/` és `<project>/.autohand/skills/`\n- Az aktivált készségek a prompthoz vannak csatolva, mint speciális utasítások az aktuális munkamenethez\n- Az előnézeti panel a készség metaadatait mutatja (név, leírás, aktiválási állapot)\n\n**Shell-parancsok (`!`):**\n\n- A parancsok az aktuális munkakönyvtárban futnak\n- A kimenet közvetlenül a terminálon jelenik meg\n- Nem megy az LLM-be\n- 30 másodperces időtúllépés\n- A végrehajtás után visszatér a prompthoz\n\n### Slash parancsok\n\n#### `/skills` - Csomagkezelő\n\n| Parancs | Leírás |\n| -------------------------------- | ------------------------------------------- |\n| `/skills` | Sorolja fel az összes elérhető készséget |\n| `/skills use <name>` | Képesség aktiválása az aktuális munkamenethez |\n| `/skills deactivate <name>` | Készség deaktiválása |\n| `/skills info <name>` | Részletes képzettségi információk megjelenítése |\n| `/skills install` | Tallózás és telepítés a közösségi nyilvántartásból |\n| `/skills install @<slug>` | Telepítsen közösségi készségeket a slug |\n| `/skills search <query>` | Keresés a közösségi készségek nyilvántartásában |\n| `/skills trending` | Felkapott közösségi készségek megjelenítése |\n| `/skills remove <slug>` | Közösségi készség eltávolítása |\n| `/skills new` | Hozzon létre új készségeket interaktívan |\n| `/skills feedback <slug> <1-5>` | Értékeljen egy közösségi képességet |\n\n#### `/learn` - LLM-alapú Skill Advisor\n\n| Parancs | Leírás |\n| ---------------- | ---------------------------------------------------------------- |\n| `/learn` | A projekt elemzése és készségek ajánlása (gyors szkennelés) |\n| `/learn deep` | Mélyszkennelési projekt (forrásfájlokat olvas) a célzottabb eredmények érdekében |\n| `/learn update` | A projekt újraelemzése és az LLM által generált elavult készségek regenerálása |\n\nA `/learn` kétfázisú LLM-folyamatot használ:\n\n1. **1. fázis – Elemzés + Rangsorolás + Ellenőrzés**: Ellenőrzi a projekt szerkezetét, auditálja a telepített készségeket redundanciák/konfliktusok szempontjából, és rangsorolja a közösségi készségeket relevancia szerint (0-100).\n2. **2. fázis – Létrehozás** (feltételes): Ha egyik közösségi képesség sem ér el 60 feletti pontszámot, felajánlja a projektjéhez szabott egyéni képesség létrehozását.\nA generált készségek metaadatokat (`agentskill-source: llm-generated`, `agentskill-project-hash`) tartalmaznak, így a `/learn update` képes észlelni, ha megváltozik a kódbázis, és újra előállíthatja az elavult készségeket.\n\n### Automatikus készséggenerálás (`--auto-skill`)\n\nA `--auto-skill` CLI jelző készségeket generál az interaktív tanácsadói folyamat nélkül:\n```bash\nautohand --auto-skill\n```\nEz:\n\n1. Elemezze a projekt felépítését (package.json, követelmények.txt stb.)\n2. Nyelvek, keretrendszerek és minták észlelése\n3. Generáljon 3 releváns készséget az LLM segítségével\n4. Mentse el a készségeket ide: `<project>/.autohand/skills/`\n\nA célzottabb, interaktívabb élmény érdekében használja inkább a `/learn` kódot egy munkameneten belül.\n\nAz észlelt minták a következők:\n\n- **Nyelvek**: TypeScript, JavaScript, Python, Rust, Go\n- **Frameworks**: React, Next.js, Vue, Express, Flask, Django\n- **Minták**: CLI eszközök, tesztelés, monorepo, Docker, CI/CD\n\n---\n\n## API beállítások\n\nBackend API konfiguráció a csapatfunkciókhoz.\n```json\n{\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\",\n \"companySecret\": \"sk-team-xxx\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------------------------- | ---------------------------------------- |\n| `baseUrl` | húr | `https://api.autohand.ai` | API-végpont |\n| `companySecret` | húr | - | Csapat/vállalati titok a megosztott funkciókhoz |\n\nKörnyezeti változókkal is beállítható:\n\n- `AUTOHAND_API_URL` → `api.baseUrl`\n- `AUTOHAND_SECRET` → `api.companySecret`\n\n---\n\n## Hitelesítési beállítások\n\nHitelesítés és felhasználói munkamenet konfigurálása.\n```json\n{\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\",\n \"avatar\": \"https://example.com/avatar.png\"\n },\n \"expiresAt\": \"2025-12-31T23:59:59Z\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------- | ------ | ------- | --------------------------------------------- |\n| `token` | húr | - | Hitelesítési token API-hozzáféréshez |\n| `user` | tárgy | - | Hitelesített felhasználói adatok |\n| `user.id` | húr | - | Felhasználói azonosító |\n| `user.email` | húr | - | Felhasználó e-mail címe |\n| `user.name` | húr | - | Felhasználó megjelenített név |\n| `user.avatar` | húr | - | Felhasználói avatar URL-je (nem kötelező) |\n| `expiresAt` | húr | - | Token lejárati időbélyegzője (ISO 8601 formátum) |\n\n---\n\n## Közösségi készségek beállításai\n\nKonfiguráció a közösségi készségek felfedezéséhez és kezeléséhez.\n```json\n{\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------------------------- | ------- | ------- | -------------------------------------------------------------- |\n| `enabled` | logikai | `true` | Közösségi készségek funkcióinak engedélyezése |\n| `showSuggestionsOnStartup` | logikai | `true` | Képességi javaslatok megjelenítése indításkor, ha nem állnak rendelkezésre szállítói ismeretek |\n| `autoBackup` | logikai | `true` | A felfedezett szállítói ismeretek automatikus biztonsági mentése API |\n\n---\n\n## Megosztási beállítások\n\nKonfiguráció a munkamenet megosztásához a `/share` paranccsal. A munkamenetek a [autohand.link](https://autohand.link) címen találhatók.\n```json\n{\n \"share\": {\n \"enabled\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ------------------------------------ |\n| `enabled` | logikai | `true` | A `/share` parancs engedélyezése/letiltása |\n\n### YAML formátum\n```yaml\nshare:\n enabled: true\n```\n### Munkamenet-megosztás letiltása\n\nHa biztonsági vagy adatvédelmi okokból ki szeretné kapcsolni a munkamenet-megosztást:\n```json\n{\n \"share\": {\n \"enabled\": false\n }\n}\n```\nHa le van tiltva, a `/share` futtatásakor a következő jelenik meg:\n```\nSession sharing is disabled.\nTo enable, set share.enabled: true in your config file.\n```\n---\n\n## Beállítások szinkronizálása\n\nA Autohand szinkronizálhatja a konfigurációt az eszközök között a bejelentkezett felhasználók számára. A beállításokat a Cloudflare R2 biztonságosan tárolja, és a feltöltés előtt titkosítja.\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"exclude\": [],\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------------- | -------- | ---------------- | --------------------------------------------------- |\n| `enabled` | logikai | `true` (naplózva) | Beállítások szinkronizálásának engedélyezése/letiltása |\n| `interval` | szám | `300000` | Szinkronizálási idő ezredmásodpercben (alapértelmezett: 5 perc) |\n| `exclude` | string[] | `[]` | Globális minták a szinkronizálásból kizárandó |\n| `includeTelemetry` | logikai | `false` | Telemetriai adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n| `includeFeedback` | logikai | `false` | Visszajelzési adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n\n### CLI zászló\n```bash\n# Disable sync for this session\nautohand --sync-settings=false\n\n# Enable sync (default for logged users)\nautohand --sync-settings\n```\n### Mi lesz szinkronizálva\n\nAlapértelmezés szerint ezek az elemek szinkronizálva vannak a bejelentkezett felhasználók számára:\n\n- **Konfiguráció** (`config.json`) - Az API-kulcsok a feltöltés előtt titkosítva vannak\n- **Egyéni ügynökök** (`agents/`)\n- **Közösségi készségek** (`community-skills/`)\n- **Felhasználói akasztók** (`hooks/`)\n- **Memória** (`memory/`)\n- **Projektismeret** (`projects/`)\n- **Munkamenetek előzményei** (`sessions/`)\n- **Megosztott tartalom** (`share/`)\n- **Egyéni készségek** (`skills/`)\n\n### Mi nem szinkronizál (alapértelmezés szerint)\n\n- **Eszközazonosító** (`device-id`) - Eszközönként egyedi\n- **Hibanaplók** (`error.log`) - Csak helyi\n- **Verziógyorsítótár** (`version-*.json`) - Helyi gyorsítótár fájlok\n\n### Beleegyezés alapú szinkronizálás\n\nEzek az elemek kifejezett feliratkozást igényelnek a konfigurációban:\n\n- **Telemetriai adatok** - Állítsa be a `sync.includeTelemetry: true` szinkronizálást\n- **Visszajelzési adatok** - Állítsa be a `sync.includeFeedback: true` szinkronizálását\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"includeTelemetry\": true,\n \"includeFeedback\": true\n }\n}\n```\n### Konfliktusmegoldás\n\nHa ütközések lépnek fel (ugyanaz a fájl több eszközön módosítva), a **felhőverzió nyer**. Ez biztosítja a következetességet az új eszközökön való bejelentkezéskor.\n\n### Biztonság\n\nA `config.json` API-kulcsait és egyéb bizalmas adatait a rendszer a hitelesítési token segítségével titkosítja a feltöltés előtt. Csak az Ön hitelesítő adataival lehet visszafejteni.\n\nA távoli fájlnevek csak relatív POSIX-útvonalként fogadhatók el az engedélyezett szinkronizálási kategóriákon belül. A szinkronizálás elutasítja a könyvtárbejárást, az abszolút vagy Windows-stílusú útvonalakat, az ismétlődő vagy üres szegmenseket, valamint az engedélyezett gyökéren kívülre mutató szimbolikus hivatkozásokkal átirányított célokat.\n\nAz alkalmazás bejelentkezési tokenje az `Authorization` fejlécben csak olyan átviteli URL-ekhez kerül elküldésre, amelyek eredete megegyezik a beállított szinkronizálási API eredetével. A más eredetű, előre aláírt HTTPS URL-ek soha nem kapják meg ezt a tokent; a nem biztonságos vagy hibás más eredetű URL-ek elutasításra kerülnek.\n\n**Mi van titkosítva:**\n\n- `apiKey` nevű mezők\n- `Key`, `Token`, `Secret` végződő mezők\n- A `password` mező\n\n### Hogyan működik\n\n1. **Indításkor**: Ha be van jelentkezve, a szinkronizálási szolgáltatás automatikusan elindul\n2. **5 percenként**: A beállításokat összehasonlítja a felhőalapú tárolással\n3. **A felhő nyer**: A távoli módosítások letöltése először történik meg\n4. **Helyi feltöltések**: Új helyi módosítások kerülnek feltöltésre\n5. **Kilépéskor**: A szinkronizálási szolgáltatás kecsesen leáll\n\n### Fájlok kizárása\n\nKizárhat bizonyos fájlokat vagy mintákat a szinkronizálásból:\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"exclude\": [\"custom-local-config.json\", \"temp/*\"]\n }\n}\n```\n### YAML formátum\n```yaml\nsync:\n enabled: true\n interval: 300000\n exclude: []\n includeTelemetry: false\n includeFeedback: false\n```\n---\n\n## MCP beállítások\n\nÁllítsa be az MCP-kiszolgálókat (Model Context Protocol) a Autohand külső eszközökkel történő bővítésére.\n```json\n{\n \"mcp\": {\n \"enabled\": true,\n \"servers\": [\n {\n \"name\": \"filesystem\",\n \"transport\": \"stdio\",\n \"command\": \"npx\",\n \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/tmp\"],\n \"env\": {},\n \"autoConnect\": true\n },\n {\n \"name\": \"context7\",\n \"transport\": \"http\",\n \"url\": \"https://mcp.context7.com/mcp\",\n \"headers\": {\n \"CONTEXT7_API_KEY\": \"ctx7sk-your-api-key\"\n },\n \"autoConnect\": true\n }\n ]\n }\n}\n```\n### `mcp.enabled`\n\n- **Típus**: `boolean`\n- **Alapértelmezett**: `true`\n- **Leírás**: Az összes MCP-támogatás engedélyezése vagy letiltása. Ha `false`, akkor az indításkor nem csatlakozik szerver, és az MCP-eszközök nem érhetők el.\n\n### `mcp.servers`\n\n- **Típus**: `McpServerConfigEntry[]`\n- **Alapértelmezett**: `[]`\n- **Leírás**: MCP szerver konfigurációk tömbje.\n\n### Szerver beviteli mezői\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | --------------------------------- | -------------- | ------- | -------------------------------------------------------------- |\n| `name` | `string` | Igen | - | Egyedi szerverazonosító |\n| `transport` | `\"stdio\"` \\| `\"sse\"` \\| `\"http\"` | Igen | - | Szállítás típusa |\n| `command` | `string` | Igen (stdio) | - | Parancs a szerverfolyamat elindításához |\n| `args` | `string[]` | Nem | `[]` | Érvek a parancs mellett |\n| `url` | `string` | Igen (sse/http) | - | Szervervégpont URL |\n| `headers` | `Record<string, string>` | Nem | `{}` | Egyéni HTTP-fejlécek http/sse szállításhoz (pl. hitelesítési tokenek) |\n| `env` | `Record<string, string>` | Nem | `{}` | A kiszolgálónak átadott környezeti változók |\n| `autoConnect` | `boolean` | Nem | `true` | Automatikus csatlakozás indításkor |\n\n> A szerverek aszinkron módon csatlakoznak a háttérben az indítás során anélkül, hogy blokkolnák a promptot. A `/mcp` segítségével interaktívan kezelheti a szervereket, vagy a `/mcp add` segítségével böngészhet a közösségi nyilvántartásban, vagy adhat hozzá egyéni szervereket.\n\n> A teljes MCP-dokumentációért lásd: [docs/mcp.md](mcp.md).\n\n---\n\n## Hooks beállítások\n\nKonfiguráció életciklus-horogokhoz, amelyek shell-parancsokat futtatnak az ügynökeseményeken. A részletekért lásd a [Hooks dokumentációt] (./hooks.md).\n```json\n{\n \"hooks\": {\n \"enabled\": true,\n \"hooks\": [\n {\n \"event\": \"pre-tool\",\n \"command\": \"echo \\\"Running tool: $HOOK_TOOL\\\" >> ~/.autohand/hooks.log\",\n \"description\": \"Log all tool executions\",\n \"enabled\": true\n },\n {\n \"event\": \"file-modified\",\n \"command\": \"./scripts/on-file-change.sh\",\n \"description\": \"Custom file change handler\",\n \"filter\": { \"path\": [\"src/**/*.ts\"] }\n },\n {\n \"event\": \"post-response\",\n \"command\": \"curl -X POST https://api.example.com/webhook -d '{\\\"tokens\\\": $HOOK_TOKENS}'\",\n \"description\": \"Track token usage\",\n \"async\": true\n }\n ]\n }\n}\n```\n### `hooks`\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ---------------------------------- |\n| `enabled` | logikai | `true` | Az összes hook engedélyezése/letiltása globálisan |\n| `hooks` | tömb | `[]` | Horogdefiníciók tömbje |\n\n### Hook meghatározása\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | ------- | -------- | ------- | --------------------------------- |\n| `event` | húr | Igen | - | Bekapcsolandó esemény |\n| `command` | húr | Igen | - | Shell parancs végrehajtásához |\n| `description` | húr | Nem | - | A `/hooks` kijelző leírása |\n| `enabled` | logikai | Nem | `true` | Aktív-e a horog |\n| `timeout` | szám | Nem | `5000` | Időtúllépés ezredmásodpercben |\n| `async` | logikai | Nem | `false` | Futtasson blokkolás nélkül |\n| `filter` | tárgy | Nem | - | Szűrés szerszám vagy útvonal szerint |\n\n### Hook események\n\n| Esemény | Amikor kirúgták |\n| ---------------- | -------------------------------------- |\n| `pre-tool` | Mielőtt bármilyen eszköz végrehajtaná |\n| `post-tool` | A szerszám befejezése után |\n| `file-modified` | A fájl létrehozásakor/módosításakor/törlésekor |\n| `pre-prompt` | Mielőtt elküldené az LLM-nek |\n| `post-response` | Miután az LLM válaszol |\n| `session-error` | Hiba esetén |\n\n### Környezeti változók\n\nAmikor a hook fut, ezek a környezeti változók állnak rendelkezésre:\n\n| Változó | Leírás |\n| ----------------- | ---------------------------- |\n| `HOOK_EVENT` | Esemény neve |\n| `HOOK_WORKSPACE` | Munkaterület gyökérútvonala |\n| `HOOK_TOOL` | Szerszámnév (szerszámesemények) |\n| `HOOK_ARGS` | JSON-kódolt eszköz args |\n| `HOOK_SUCCESS` | igaz/hamis (utóeszköz) |\n| `HOOK_PATH` | Fájl elérési útja (fájlmódosított) |\n| `HOOK_TOKENS` | Felhasznált tokenek (válasz után) |\n\n---\n\n## Chrome-bővítmény beállításai\n\nIrányítsd a Autohand Chrome-bővítmény integrációját. Tekintse meg a teljes útmutatót: [Autohand Chrome-ban](./autohand-in-chrome.md).\n```json\n{\n \"chrome\": {\n \"extensionId\": \"your-extension-id\",\n \"enabledByDefault\": false,\n \"browser\": \"auto\",\n \"userDataDir\": \"/path/to/chrome/user-data\",\n \"profileDirectory\": \"Default\",\n \"installUrl\": \"https://autohand.ai/chrome\"\n }\n}\n```\n| Kulcs | Típus | Alapértelmezett | Leírás |\n| ------------------- | --------- | -------- | -------------------------------------------------------------------------- |\n| `extensionId` | `string` | — | Telepített Chrome-bővítményazonosító a közvetlen átadáshoz |\n| `enabledByDefault` | `boolean` | `false` | A böngészőhíd automatikus indítása a CLI |-vel\n| `browser` | `string` | `\"auto\"` | Előnyben részesített Chromium böngésző: `auto`, `chrome`, `chromium`, `brave`, `edge` |\n| `userDataDir` | `string` | — | Böngésző felhasználói adatok könyvtára a megfelelő profil megcélzásához |\n| `profileDirectory` | `string` | — | Böngészőprofil-könyvtár neve (pl. `\"Default\"`, `\"Profile 1\"`) |\n| `installUrl` | `string` | — | Tartalék URL, ha a bővítményazonosító nincs konfigurálva |\n\n### CLI zászlók\n```bash\nautohand --chrome # Start with browser bridge enabled\nautohand --no-chrome # Start with browser bridge disabled\n```\n### Slash parancsok\n```\n/chrome # Open Chrome integration panel\n/chrome disconnect # Close the browser bridge connection\n```\n---\n\n## Teljes példa\n\n### JSON formátum (`~/.autohand/config.json`)\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\"\n },\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"model\": \"llama3.2\"\n },\n \"workspace\": {\n \"defaultRoot\": \"~/projects\",\n \"allowDangerousOps\": false\n },\n \"ui\": {\n \"theme\": \"dark\",\n \"autoConfirm\": false,\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n },\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"idleLogoutEnabled\": true,\n \"debug\": false\n },\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\"run_command:npm *\", \"run_command:bun *\"],\n \"blacklist\": [\"run_command:rm -rf /\"],\n \"rememberSession\": true\n },\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n },\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true\n },\n \"externalAgents\": {\n \"enabled\": false,\n \"paths\": []\n },\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\"\n },\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\"\n }\n },\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n },\n \"share\": {\n \"enabled\": true\n },\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n### YAML formátum (`~/.autohand/config.yaml`)\n```yaml\nprovider: openrouter\n\nopenrouter:\n apiKey: sk-or-v1-your-key-here\n baseUrl: https://openrouter.ai/api/v1\n model: your-modelcard-id-here\n\nollama:\n baseUrl: http://localhost:11434\n model: llama3.2\n\nworkspace:\n defaultRoot: ~/projects\n allowDangerousOps: false\n\nui:\n theme: dark\n autoConfirm: false\n showCompletionNotification: true\n showThinking: true\n terminalBell: true\n checkForUpdates: true\n updateCheckInterval: 24\n\nagent:\n maxIterations: 100\n enableRequestQueue: true\n toolSelectionCache: true\n idleLogoutEnabled: true\n debug: false\n\npermissions:\n mode: interactive\n whitelist:\n - \"run_command:npm *\"\n - \"run_command:bun *\"\n blacklist:\n - \"run_command:rm -rf /\"\n rememberSession: true\n\nnetwork:\n maxRetries: 3\n timeout: 30000\n retryDelay: 1000\n\ntelemetry:\n enabled: false\n apiBaseUrl: https://api.autohand.ai\n batchSize: 20\n flushIntervalMs: 60000\n maxQueueSize: 500\n maxRetries: 3\n enableSessionSync: true\n\nexternalAgents:\n enabled: false\n paths: []\n\napi:\n baseUrl: https://api.autohand.ai\n\nauth:\n token: your-auth-token\n user:\n id: user-id\n email: user@example.com\n name: User Name\n\ncommunitySkills:\n enabled: true\n showSuggestionsOnStartup: true\n autoBackup: true\n\nshare:\n enabled: true\n\nsync:\n enabled: true\n interval: 300000\n includeTelemetry: false\n includeFeedback: false\n```\n### TOML formátum (`~/.autohand/config.toml`)\n```toml\nprovider = \"openrouter\"\n\n[openrouter]\napiKey = \"sk-or-v1-your-key-here\"\nbaseUrl = \"https://openrouter.ai/api/v1\"\nmodel = \"your-modelcard-id-here\"\n\n[ollama]\nbaseUrl = \"http://localhost:11434\"\nmodel = \"llama3.2\"\n\n[workspace]\ndefaultRoot = \"~/projects\"\nallowDangerousOps = false\n\n[ui]\ntheme = \"dark\"\nautoConfirm = false\nshowCompletionNotification = true\nshowThinking = true\nterminalBell = true\ncheckForUpdates = true\nupdateCheckInterval = 24\n\n[ui.customThemes.company.vars]\nbrand = \"#7c3aed\"\nbrandSoft = \"#a78bfa\"\n\n[ui.customThemes.company.colors]\naccent = \"brand\"\nborderAccent = \"brandSoft\"\nmdHeading = \"brand\"\n\n[agent]\nmaxIterations = 100\nenableRequestQueue = true\ntoolSelectionCache = true\nidleLogoutEnabled = true\ndebug = false\n\n[permissions]\nmode = \"interactive\"\nwhitelist = [\"run_command:npm *\", \"run_command:bun *\"]\nblacklist = [\"run_command:rm -rf /\"]\nrememberSession = true\n```\n---\n\n## Címtárszerkezet\n\nA Autohand az adatokat `~/.autohand/` (vagy `$AUTOHAND_HOME`) kódban tárolja:\n```\n~/.autohand/\n├── config.json # Main configuration\n├── config.toml # Alternative TOML config\n├── config.yaml # Alternative YAML config\n├── device-id # Unique device identifier\n├── error.log # Error log\n├── feedback.log # Feedback submissions\n├── sessions/ # Session history\n├── projects/ # Project knowledge base\n├── memory/ # User-level memory\n├── commands/ # Custom commands\n├── agents/ # Agent definitions\n├── tools/ # Custom meta-tools\n├── feedback/ # Feedback state\n└── telemetry/ # Telemetry data\n ├── queue.json\n └── session-sync-queue.json\n```\n**Projektszintű könyvtár** (a munkaterület gyökérkönyvtárában):\n```\n<project>/.autohand/\n├── settings.local.json # Local project permissions (gitignore this)\n├── memory/ # Project-specific memory\n├── skills/ # Project-specific skills\n└── tools/ # Project-specific meta-tools\n```\n---\n\n## CLI-jelzők (konfig felülbírálása)\n\nEzek a jelzők felülírják a konfigurációs fájl beállításait:\n\n### Alapjelzők\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `-v, --version` | Az aktuális verzió kiadása |\n| `-p, --prompt [text]` | Futtasson egyetlen utasítást parancs módban |\n| `--path <path>` | Munkaterület gyökér felülbírálása |\n| `--config <path>` | Egyéni konfigurációs fájl használata |\n| `--model <model>` | Modell felülírása |\n| `--temperature <n>` | Beállított mintavételi hőmérséklet (0-1) |\n| `--thinking [level]` | Gondolkodási/érvelési mélység beállítása (nincs, normál, kiterjesztett) |\n| `-y, --yes` | Automatikus megerősítési kérések |\n| `--dry-run` | Előnézet végrehajtás nélkül |\n| `-d, --debug` | Részletes hibakeresési kimenet engedélyezése |\n| `--bare` | Minimális explicit mód; beállítja a `AUTOHAND_CODE_SIMPLE=1` értéket és letiltja a perjel parancsokat |\n\n### Engedélyek és biztonság\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--unrestricted` | Nincs jóváhagyási felszólítás |\n| `--restricted` | Veszélyes műveletek megtagadása |\n| `--permissions` | Jelenítse meg az aktuális engedélybeállításokat, és lépjen ki |\n| `--no-idle-logout` | A hitelesített tétlen kijelentkezés letiltása a hosszan futó ügynöki munkamenetekhez |\n| `--yolo [pattern]` | Eszközhívások megfelelő minta automatikus jóváhagyása (pl. `allow:read,write` vagy `deny:delete`) |\n| `--timeout <seconds>` | Időtúllépés másodpercben az automatikus jóváhagyási módhoz |\n\n### Git & Worktree\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--worktree [name]` | Munkamenet futtatása elszigetelt git-munkafán (opcionális munkafa/ág neve) |\n| `--tmux` | Indítás egy dedikált tmux munkamenetben (az `--worktree`-t jelenti; nem használható a `--no-worktree` kóddal) |\n| `--no-worktree` | A git munkafa elkülönítésének letiltása automatikus módban |\n| `-c, --auto-commit` | Változások automatikus véglegesítése a feladatok elvégzése után |\n| `--patch` | Git javítás generálása változtatások alkalmazása nélkül |\n| `--output <file>` | A javítás kimeneti fájlja (a --patch-el együtt használatos) |\n\n### Automatikus mód\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-mode [prompt]` | Engedélyezze az interaktív automatikus módot, vagy indítson önálló hurkot egy soron belüli feladattal |\n| `--max-iterations <n>` | Maximális automatikus módú iterációk (alapértelmezett: 50) |\n| `--completion-promise <text>` | Befejezésjelző szövege (alapértelmezett: \"KÉSZ\") |\n| `--checkpoint-interval <n>` | A Git minden N iterációt végrehajt (alapértelmezett: 5) |\n| `--max-runtime <m>` | Maximális futási idő percekben (alapértelmezett: 120) |\n| `--max-cost <d>` | Maximális API költség dollárban (alapértelmezett: 10) |\n| `--interactive-on-complete` | Az automatikus mód vége után adja át közvetlenül az interaktív módba (csak TTY) |\n\n### Készségek és tanulás\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-skill` | Készségek automatikus generálása projektelemzés alapján (lásd még: `/learn` az interaktív tanácsadóhoz) |\n| `--learn` | Futtassa a `/learn` készségtanácsadót nem interaktív módon (a javasolt készségek elemzése és telepítése) |\n| `--learn-update` | A projekt újraelemzése és az LLM által generált elavult készségek nem interaktív módon történő regenerálása |\n| `--skill-install [name]` | Telepítsen egy közösségi képességet (megnyitja a böngészőt, ha nincs megadva név) |\n| `--project` | A készség telepítése projektszintre (a --skill-install funkcióval) |\n\n### Hitelesítés és fiók\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--login` | Jelentkezzen be Autohand-fiókjába |\n| `--logout` | Jelentkezzen ki Autohand-fiókjából |\n| `--sync-settings` | A beállítások szinkronizálásának engedélyezése/letiltása (alapértelmezett: igaz a bejelentkezett felhasználók számára) |\n\n### Beállítás és információ\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--setup` | Futtassa a telepítővarázslót a Autohand |\n| `--about` | Információk megjelenítése a Autohand-ról (verzió, linkek, hozzájárulási információk) |\n| `--feedback` | Visszajelzés küldése a Autohand csapatának |\n| `--settings` | A Autohand beállításainak konfigurálása (ugyanaz, mint a `/settings` interaktív módban) |\n\n### Munkaterület és könyvtárak\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--add-dir <path...>` | További könyvtárak hozzáadása a munkaterület hatóköréhez (többször is használható) |\n\n### Futtatási módok\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--mode <mode>` | Futtatási mód: interaktív (alapértelmezett), rpc vagy acp |\n| `--acp` | A --mode acp rövidítése (Agent Client Protocol over stdio) |\n| `--teammate-mode <mode>` | Csapat megjelenítési mód: automatikus, folyamatban lévő vagy tmux |\n\n### UI és nyelv\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--display-language <locale>` | Megjelenítési nyelv beállítása (pl. en, id, zh-cn, fr, de, ja) |\n| `--search-engine <provider>` | Internetes keresőszolgáltató beállítása (google, brave, duckduckgo, párhuzamos) |\n| `--cc, --context-compact` | Környezettömörítés engedélyezése (alapértelmezett: be) |\n| `--no-cc, --no-context-compact` | Kontextustömörítés letiltása |\n\n### Chrome integráció\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--chrome` | A Chrome böngésző integrációjának engedélyezése (ugyanaz, mint `/chrome`) |\n| `--no-chrome` | A Chrome böngésző integrációjának letiltása |\n\n### Rendszerprompt\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-sys-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt-file <path>` | Cserélje le a teljes rendszerprompt a fájltartalommal |\n| `--append-system-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n### Kísérletváltási parancsok\n\n| Parancs | Leírás |\n| -------------------------------------- | ------------------------------------------------- |\n| `autohand experiments list` | Sorolja fel a helyi és távoli funkciók azonosítóit, a forrást, az életciklus szakaszt és az állapotot |\n| `autohand experiments status <feature>` | Mutasson egy szolgáltatáskapcsolót, konfigurációs elérési utat vagy távoli metaadatokat és állapotot |\n| `autohand experiments refresh` | Távoli funkciójelzők letöltése a Autohand API-ból |\n| `autohand experiments enable <feature>` | Konfigurációval támogatott szolgáltatáskapcsoló engedélyezése |\n| `autohand experiments disable <feature>` | A konfigurációval támogatott szolgáltatáskapcsoló letiltása |\n\nA távoli funkciójelzők lekérése innen: `/v1/feature-flags/evaluate`, gyorsítótár a `~/.autohand/feature-flags.json` címen történik, és az API által biztosított TTL lejárta után frissül. A `features.environment` segítségével válassza ki a távoli jelzőkörnyezetet, a `features.remoteOverrides` segítségével pedig a felhasználó által felülbírálható távoli jelzők helyi letiltásához.\n\nA `usage_v2` egy kísérleti funkciókapcsoló a `/usage` irányítópulthoz és a továbbfejlesztett `/status` Használat laphoz. Engedélyezze a következővel: `autohand experiments enable usage_v2`.\n\nA `token_usage_status` egy kísérleti funkciókapcsoló (konfigurációs útvonal `features.tokenUsageStatus`, alapértelmezés szerint kikapcsolva), amely a valós idejű tokenhasználatot mutatja a működő állapotsorban – kumulatív tokenek felfelé (`↑`) és lefelé (`↓`) plusz g kontextusban, cc. `↑15.7k ↓3.2k · context: 6.0% (15.7k/262.1k)`. A kontextusablak modellenként van feloldva az összes szolgáltatónál. Engedélyezze a következővel: `autohand experiments enable token_usage_status`.\n\n---\n\n## Slash parancsok\n\nAz Autohand perjel parancsok gazdag készletét kínálja interaktív használatra. A javaslatok megtekintéséhez írja be a `/` kódot a REPL-be.\n\n### Munkamenet-kezelés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/quit` | Kilépés az aktuális munkamenetből |\n| `/exit` | Kilépés az aktuális munkamenetből |\n| `/new` | Új beszélgetés indítása (memóriakivonattal) |\n| `/clear` | Tiszta beszélgetés automatikus memóriakivonással |\n| `/session` | Az aktuális munkamenet részleteinek megjelenítése |\n| `/sessions` | Korábbi munkamenetek listája |\n| `/resume` | Előző munkamenet folytatása |\n| `/history` | A munkamenet-előzmények böngészése oldalszámozással |\n| `/undo` | Git módosítások és utolsó forduló visszaállítása |\n| `/export` | Munkamenet exportálása markdown/JSON/HTML |\n| `/share` | Aktuális munkamenet megosztása |\n| `/status` | Munkamenet állapotának megjelenítése |\n| `/usage` | Modell, szolgáltató, kontextus és használati korlátok megjelenítése |\n\n### Modell és szolgáltató\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/model` | LLM-modell váltása vagy konfigurálása |\n| `/cc` | Kézi környezet tömörítése |\n\n### Projektbeállítás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/init` | Hozzon létre `AGENTS.md` fájlt az aktuális könyvtárban |\n| `/setup` | Futtassa a telepítővarázslót a Autohand | konfigurálásához\n| `/add-dir` | Könyvtárak hozzáadása a munkaterület hatóköréhez |\n\n### Ügynökök és csapatok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/agents` | Az elérhető alügynökök listája |\n| `/agents-new` | Hozzon létre egy új ügynököt a varázslón keresztül |\n| `/squad` | Nyissa meg/kezelje az önálló Autohand Squad futtatókörnyezetet |\n| `/team` | Csapat irányítása párhuzamos munkához |\n| `/tasks` | Feladatok kezelése csapatban |\n| `/message` | Üzenet küldése csapattársnak |\n\n### Készségek\n\n| Parancs | Leírás |\n| ----------------- | --------------------------------------------------- |\n| `/skills` | Készségek listája és kezelése |\n| `/skills-new` | Új készség létrehozása |\n| `/learn` | Tanulja meg és telepítse az ajánlott készségeket |\n\n### Memória és beállítások\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/memory` | Tárolt emlékek megtekintése és kezelése |\n| `/settings` | A Autohand beállításainak konfigurálása |\n| `/statusline` | A szerző állapotsor mezőinek konfigurálása |\n| `/experiments` | Kísérleti jellemzők kapcsolóinak váltása |\n| `/sync` | Beállítások szinkronizálása eszközök között |\n| `/import` | Importálhat munkameneteket, beállításokat, MCP-t, memóriát, készségeket és hook-okat a támogatott ügynökökről |\n\n### Engedélyek és akasztók\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/permissions`| Szerszámengedélyek kezelése |\n| `/hooks` | Életciklus-horogok kezelése |\n\n### Hitelesítés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/login` | Hitelesítés a Autohand API-val |\n| `/logout` | Kijelentkezés a Autohand fiókból |\n\n### Eszközök és segédprogramok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/search` | Keresés az interneten |\n| `/formatters` | Az elérhető kódformázók listája |\n| `/lint` | Sorolja fel a rendelkezésre álló kódsorokat |\n| `/completion` | Shell befejező szkriptek generálása |\n| `/plan` | Megvalósítási terv létrehozása |\n| `/review` | Kódellenőrzés végrehajtása |\n| `/pr-review` | Lehívási kérelem áttekintése |\n\n### IDE integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/ide` | A futó IDE észlelése és csatlakozása |\n\n### MCP (Model Context Protocol)\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/mcp` | Interaktív MCP-kiszolgálókezelő |\n\n### Automatizálás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/automode` | Indítsa el az autonóm kódolási módot |\n| `/repeat` | Ismétlődő munkák ütemezése |\n| `/yolo` | Yolo mód váltása (automatikus jóváhagyási eszközök) |\n\n### Chrome integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/chrome` | A Chrome böngésző integrációjának engedélyezése |\n\n### UI és kijelző\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/help` | Az elérhető perjel parancsok és tippek megjelenítése |\n| `/about` | Információk megjelenítése a következőről: Autohand |\n| `/theme` | Színtéma módosítása |\n| `/language` | Kijelző nyelvének módosítása |\n| `/feedback` | Visszajelzés küldése a Autohand csapatának |\n\n---\n\n## Rendszerprompt testreszabás\nAutohand lehetővé teszi az AI-ügynök által használt rendszerprompt testreszabását. Ez speciális munkafolyamatok, egyedi utasítások vagy más rendszerekkel való integráció esetén hasznos.\n\n### CLI zászlók\n\n| zászló | Leírás |\n| ------------------------------ | -------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerprompt |\n| `--append-sys-prompt <value>` | Tartalom hozzáfűzése az alapértelmezett rendszerprompthoz |\n\nMindkét zászló elfogadja a következőket:\n\n- **Inline karakterlánc**: Közvetlen szövegtartalom\n- **Fájl elérési útja**: A promptot tartalmazó fájl elérési útja (automatikusan észlelve)\n\n### Fájlútvonal észlelése\n\nEgy érték fájlútvonalként kezelendő, ha:\n\n- A következővel kezdődik: `./`, `../`, `/` vagy `~/`\n- Windows meghajtóbetűjellel kezdődik (pl. `C:\\`)\n- A következővel végződik: `.txt`, `.md` vagy `.prompt`\n- Útleválasztókat tartalmaz szóközök nélkül\n\nEllenkező esetben a rendszer soron belüli karakterláncként kezeli.\n\n### `--sys-prompt` (Teljes csere)\n\nHa rendelkezésre áll, ez **teljesen lecseréli** az alapértelmezett rendszerpromptot. Az ügynök NEM tölti be:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n```bash\n# Inline string\nautohand --sys-prompt \"You are a Python expert. Be concise.\" --prompt \"Write hello world\"\n\n# From file\nautohand --sys-prompt ./custom-prompt.txt --prompt \"Explain this code\"\n\n# Home directory\nautohand --sys-prompt ~/.autohand/prompts/python-expert.md --prompt \"Debug this function\"\n```\n**Példa egyéni prompt fájlra (`custom-prompt.txt`):**\n```\nYou are a specialized Python debugging assistant.\n\nRules:\n- Focus only on Python code\n- Always explain the root cause\n- Suggest fixes with code examples\n- Be concise and direct\n```\n### `--append-sys-prompt` (Hozzáadás az alapértelmezetthez)\n\nHa rendelkezésre áll, ez **hozzáfűzi** a tartalmat a teljes alapértelmezett rendszerprompthoz. Az ügynök továbbra is betölti:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n\nA csatolt tartalom a legvégére kerül hozzáadásra.\n```bash\n# Inline string\nautohand --append-sys-prompt \"Always use TypeScript instead of JavaScript\" --prompt \"Create a function\"\n\n# From file\nautohand --append-sys-prompt ./team-guidelines.md --prompt \"Add error handling\"\n```\n**Példa hozzáfűző fájl (`team-guidelines.md`):**\n```\n## Team Guidelines\n\n- Use 2-space indentation\n- Prefer functional patterns\n- Add JSDoc comments to public APIs\n- Run tests before committing\n```\n### Elsőbbség\n\nHa mindkét zászló rendelkezésre áll:\n\n1. A `--sys-prompt` teljes elsőbbséget élvez\n2. A `--append-sys-prompt` figyelmen kívül hagyva\n```bash\n# --append-sys-prompt is ignored in this case\nautohand --sys-prompt \"Custom only\" --append-sys-prompt \"This is ignored\"\n```\n### Használati esetek\n\n| Használati eset | Ajánlott zászló |\n| ---------------------------------- | ---------------------- |\n| Egyedi ügynök személye | `--sys-prompt` |\n| Minimális utasítások | `--sys-prompt` |\n| Csapatirányelvek hozzáadása | `--append-sys-prompt` |\n| Projektkonvenciók hozzáadása | `--append-sys-prompt` |\n| Integráció külső rendszerekkel | `--sys-prompt` |\n| Speciális hibakeresés | `--sys-prompt` |\n\n### Hibakezelés\n\n| Forgatókönyv | Viselkedés |\n| ------------------ | ------------------------- |\n| Üres érték | Hiba |\n| A fájl nem található | Soron belüli karakterláncként kezelve |\n| Üres fájl | Hiba |\n| Fájl > 1 MB | Hiba |\n| Engedély megtagadva | Hiba |\n| Címtár elérési útja | Hiba |\n\n### Példák\n```bash\n# Python expert mode\nautohand --sys-prompt \"You are a Python expert. Only write Python code.\" \\\n --prompt \"Create a web scraper\"\n\n# TypeScript enforcement\nautohand --append-sys-prompt \"Always use TypeScript, never JavaScript.\" \\\n --prompt \"Create a REST API\"\n\n# CI/CD integration (non-interactive)\nautohand --sys-prompt ./ci-prompt.txt \\\n --prompt \"Fix the failing tests\" \\\n --unrestricted \\\n --patch\n\n# Custom team workflow\nautohand --append-sys-prompt ~/.company/coding-standards.md \\\n --prompt \"Refactor this module\"\n```\n---\n\n## Több könyvtár támogatása\n\nAz Autohand a fő munkaterületen kívül több könyvtárral is működhet. Ez akkor hasznos, ha a projektben különböző könyvtárakban vannak függőségek, megosztott könyvtárak vagy kapcsolódó projektek.\n\n### CLI zászló\n\nA `--add-dir` használatával további könyvtárakat adhat hozzá (többször is használható):\n```bash\n# Add a single additional directory\nautohand --add-dir /path/to/shared-lib\n\n# Add multiple directories\nautohand --add-dir /path/to/lib1 --add-dir /path/to/lib2\n\n# With unrestricted mode (auto-approve writes to all directories)\nautohand --add-dir /path/to/shared-lib --unrestricted\n```\n### Interaktív parancs\n\n`/add-dir` használata interaktív munkamenet során:\n```\n/add-dir # Show current directories\n/add-dir /path/to/dir # Add a new directory\n```\n### Biztonsági korlátozások\n\nA következő könyvtárak nem adhatók hozzá:\n\n- Saját könyvtár (`~` vagy `$HOME`)\n- Gyökérkönyvtár (`/`)\n- Rendszerkönyvtárak (`/etc`, `/var`, `/usr`, `/bin`, `/sbin`)\n- Windows rendszerkönyvtárak (`C:\\Windows`, `C:\\Program Files`)\n- Windows felhasználói könyvtárak (`C:\\Users\\username`)\n- WSL Windows-csatlakozások (`/mnt/c`, `/mnt/c/Windows`)\n"}, "1e642e8b77d66a70e67a6a4b6703373c5db4b51a": {"t": 1785764179.0149653, "n": 86811, "h": "23379a9b899d93f1", "c": "# Autohand Konfigurációs referencia\n\nTeljes referencia az összes konfigurációs beállításhoz itt: `~/.autohand/config.json` (vagy `.toml`/`.yaml`/`.yml`).\n\n> **Tipp:** A legtöbb alábbi beállítás interaktívan módosítható a `/settings` paranccsal a fájl manuális szerkesztése helyett.\n\nLokalizált referenciák:\n\n- [English](./config-reference.md)\n- [日本語](./config-reference_ja.md)\n- [简体中文](./config-reference_zh.md)\n- [繁體中文](./config-reference_zh-tw.md)\n- [한국어](./config-reference_ko.md)\n- [Deutsch](./config-reference_de.md)\n- [Español](./config-reference_es.md)\n- [Français](./config-reference_fr.md)\n- [Italiano](./config-reference_it.md)\n- [Polski](./config-reference_pl.md)\n- [Русский](./config-reference_ru.md)\n- [Português (Brasil)](./config-reference_ptBR.md)\n- [Türkçe](./config-reference_tr.md)\n- [Čeština](./config-reference_cs.md)\n- [Magyar](./config-reference_hu.md)\n- [हिन्दी](./config-reference_hi.md)\n- [Bahasa Indonesia](./config-reference_id.md)\n\n## Tartalomjegyzék\n\n- [A konfigurációs fájl helye](#configuration-file-location)\n- [Környezeti változók](#environment-variables)\n- [Csupasz mód](#bare-mode)\n- [Szolgáltatói beállítások](#provider-settings)\n- [Munkaterület beállításai](#workspace-settings)\n- [UI beállítások](#ui-settings)\n- [Ügynökbeállítások](#agent-settings)\n- [Engedélyek beállításai](#permissions-settings)\n- [Javítási mód](#patch-mode)\n- [Hálózati beállítások](#network-settings)\n- [Telemetriai beállítások](#telemetry-settings)\n- [Külső ügynökök](#external-agents)\n- [Skills System](#skills-system)\n- [API beállítások](#api-settings)\n- [Authentication Settings](#authentication-settings)\n- [Közösségi készségek beállításai](#community-skills-settings)\n- [Megosztási beállítások](#share-settings)\n- [Beállítások szinkronizálása](#settings-sync)\n- [Hook beállításai](#hooks-settings)\n- [MCP beállítások](#mcp-settings)\n- [Chrome-bővítmény beállításai](#chrome-extension-settings)\n- [Teljes példa](#complete-example)\n\n---\n\n## Konfigurációs fájl helye\n\nAutohand a következő sorrendben keresi a konfigurációt:\n\n1. `AUTOHAND_CONFIG` környezeti változó (egyéni elérési út)\n2. `~/.autohand/config.toml`\n3. `~/.autohand/config.yaml`\n4. `~/.autohand/config.yml`\n5. `~/.autohand/config.json` (alapértelmezett)\n\nAz alapkönyvtárat is felülírhatja:\n```bash\nexport AUTOHAND_HOME=/custom/path # Changes ~/.autohand to /custom/path\n```\n---\n\n## Környezeti változók\n\n| Változó | Leírás | Példa |\n| --------------------------------------- | ------------------------------------------------- | --------------------------------- |\n| `AUTOHAND_HOME` | Alapkönyvtár az összes Autohand adathoz | `/custom/path` |\n| `AUTOHAND_CONFIG` | Egyéni konfigurációs fájl elérési útja | `/path/to/config.toml` |\n| `AUTOHAND_API_URL` | API-végpont (felülbírálja a konfigurációt) | `https://api.autohand.ai` |\n| `AUTOHAND_SECRET` | Vállalat/csapat titkos kulcsa | `sk-xxx` |\n| `AUTOHAND_PERMISSION_CALLBACK_URL` | Az engedély visszahívásának URL-je (kísérleti) | `http://localhost:3000/callback` |\n| `AUTOHAND_PERMISSION_CALLBACK_TIMEOUT` | Az engedély-visszahívás időtúllépése ms-ban | `5000` |\n| `AUTOHAND_NON_INTERACTIVE` | Futtatás nem interaktív módban | `1` |\n| `AUTOHAND_YES` | Minden felszólítás automatikus megerősítése | `1` |\n| `AUTOHAND_NO_BANNER` | Indítási szalaghirdetés letiltása | `1` |\n| `AUTOHAND_STREAM_TOOL_OUTPUT` | Az eszköz kimenetének streamelése valós időben | `1` |\n| `AUTOHAND_DEBUG` | Hibakeresési naplózás engedélyezése | `1` |\n| `AUTOHAND_THINKING_LEVEL` | Érvelési mélységszint beállítása | `normal` |\n| `AUTOHAND_CLIENT_NAME` | Kliens/szerkesztő azonosító (ACP kiterjesztések által beállítva) | `zed` |\n| `AUTOHAND_CLIENT_VERSION` | Kliens verzió (az ACP-bővítmények által beállított) | `0.169.0` |\n| `AUTOHAND_CODE` | Környezetérzékelési jelző (automatikusan beállítva) | `1` |\n| `AUTOHAND_CODE_SIMPLE` | A csupasz mód engedélyezése a `--bare` | átadása nélkül `1` |\n\n### Gondolkodási szint\n\nA `AUTOHAND_THINKING_LEVEL` környezeti változó szabályozza a modell által használt érvelés mélységét:\n\n| Érték | Leírás |\n| ---------- | --------------------------------------------------------------------- |\n| `none` | Közvetlen válaszok látható indoklás nélkül |\n| `normal` | Szabványos érvelési mélység (alapértelmezett) |\n| `extended` | Mély érvelés összetett feladatokhoz, részletesebb gondolkodási folyamatot mutat |\n\nEzt általában az ACP-kliens-bővítmények (például a Zed) állítják be a konfigurációs legördülő menüben.\n```bash\n# Example: Use extended thinking for complex tasks\nAUTOHAND_THINKING_LEVEL=extended autohand --prompt \"refactor this module\"\n```\n---\n\n## Csupasz mód\n\nA csupasz mód a Autohand csak kifejezetten kért kontextus- és futásidejű integrációkkal indul. Engedélyezze a következők egyikével:\n```bash\nautohand --bare\nAUTOHAND_CODE_SIMPLE=1 autohand\n```\nA `--bare` átadásakor a Autohand a `AUTOHAND_CODE_SIMPLE=1` értéket is beállítja a futó folyamathoz.\n\nA csupasz mód letiltja az automatikus indítást és az interaktív integrációkat:\n\n- horgok és horog értesítések\n- LSP indítás\n- plugin szinkronizálás, bővítmény automatikus betöltése és meta-eszköz automatikus betöltése\n- hozzárendelés, telemetria, munkamenet-szinkronizálás, automatikus jelentéskészítés és háttérpingek\n- automatikus memória/munkamenet bootstrap kontextus\n- háttérkérdések, frissítés-ellenőrzések, funkciójelző-lekérések és modell-metaadatok előzetes letöltése\n- kulcstartó és böngésző OAuth-hitelesítési tartalék\n- automatikus `AGENTS.md` és szolgáltatói utasítás keresés\n- minden perjel parancs, beleértve a parancssorba beírt csupasz `/`\n\nA perjel alakú abszolút fájlútvonalakat, például a `/Users/alex/project/file.ts`, továbbra is normál prompt szövegként kezeli a rendszer. A parancs alakú perjel bevitel, például `/help`, `/model` vagy `/mcp`, a `Slash commands are disabled in bare mode.` kódot írja ki, és nem hajtódik végre.\n\nA csupasz módban történő hitelesítés csak explicit. A Autohand először a következőt olvassa: `AUTOHAND_API_KEY`, majd `auth.apiKeyHelper`, ha be van állítva. Nem olvassa be a kulcstartó hitelesítő adatait, és nem indítja el az OAuth/böngésző bejelentkezést. A külső szolgáltatók továbbra is a szolgáltatóspecifikus API-kulcsokat és konfigurációkat használják.\n\nEzek az explicit bemenetek csupasz módban is elérhetők:\n\n| Bemenet | Leírás |\n| ------------------------------ | -------------------------------------------------------------------------- |\n| `--system-prompt <value>` | Cserélje ki a rendszerprompt szövegközi szöveggel vagy elérési út-szerű értékkel |\n| `--system-prompt-file <path>` | Cserélje ki a rendszerpromptot a fájltartalommal |\n| `--append-system-prompt <value>` | Szövegközi szöveg vagy elérési út-szerű érték hozzáfűzése a | rendszerprompthoz\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--add-dir <path...>` | Explicit könyvtárak hozzáadása a munkaterület hatóköréhez |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--settings` | Nyissa meg a beállításokat közvetlenül a CLI jelzőből |\n| `--config <path>` | Használjon explicit Autohand konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n---\n\n## Szolgáltatói beállítások\n\n### `provider`\n\nAktív LLM szolgáltató használható.\n\n| Érték | Leírás |\n| -------------- | ----------------------------- |\n| `\"openrouter\"` | OpenRouter API (alapértelmezett) |\n| `\"ollama\"` | Helyi Ollama példány |\n| `\"llamacpp\"` | Helyi llama.cpp szerver |\n| `\"openai\"` | OpenAI API közvetlenül |\n| `\"mlx\"` | MLX az Apple Siliconon (helyi) |\n| `\"llmgateway\"` | LLM Gateway egyesített API |\n| `\"deepseek\"` | DeepSeek API |\n| `\"zai\"` | Z.ai GLM API |\n| `\"sakana\"` | Sakana.AI Fugu API |\n| `\"bedrock\"` | AWS alapkőzet |\n| `\"custom:<id>\"` | Felhasználó által meghatározott OpenAI-kompatibilis szolgáltató a következőtől: `customProviders` |\n\n### `openrouter`\n\nOpenRouter szolgáltató konfigurációja.\n```json\n{\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-xxx\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\",\n \"contextWindow\": 262144\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | --------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön OpenRouter API kulcsa |\n| `baseUrl` | húr | Nem | `https://openrouter.ai/api/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellazonosító (pl. `your-modelcard-id-here`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand kitölti ezt az OpenRouterből, ha ismert. |\n\n### `zai`\n\nZ.ai szolgáltató konfigurációja.\n```json\n{\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"baseUrl\": \"https://api.z.ai/api/paas/v4\",\n \"model\": \"glm-5.2\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | -------------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön Z.ai API-kulcsa |\n| `baseUrl` | húr | Nem | `https://api.z.ai/api/paas/v4` | API-végpont |\n| `model` | húr | Igen | `glm-5.2` | Modellazonosító, például `glm-5.2`, `glm-5.1` vagy `glm-4.5` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. A Autohand 1M-re következtet a GLM-5.2-nél és 200K-ra a GLM-5.1-nél. |\n\n### `sakana`\n\nSakana.AI szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.sakana.ai/v1`-t használja alap URL-ként.\n```json\n{\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------ | ------------------------------------------------------------------ |\n| `apiKey` | húr | Igen | - | Az Ön Sakana API kulcsa |\n| `baseUrl` | húr | Nem | `https://api.sakana.ai/v1` | API-végpont |\n| `model` | húr | Igen | `fugu` | Modellazonosító, például `fugu` vagy `fugu-ultra` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand 1M-re következtet a Fugu modelleknél. |\n\n### `customProviders`\n\nAz egyéni szolgáltatók lehetővé teszik a felhasználók számára, hogy OpenAI-kompatibilis végpontot hozzanak létre kódmódosítás vagy új csomagolt szolgáltató nélkül. Adja hozzá a szolgáltatót a `customProviders` alatt, majd válassza ki a `provider: \"custom:<id>\"` kóddal. Ugyanez a folyamat elérhető a `/model` **Új szolgáltatóval**. A telepítés során a Autohand a szolgáltató mentése előtt ellenőrzi az alap URL-t, a hitelesítést és a kiválasztott modellt az OpenAI-kompatibilis `/models` végponton keresztül.\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\",\n \"models\": [\n {\n \"id\": \"acme-code-1\",\n \"label\": \"Acme Code 1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n ]\n }\n }\n}\n```\nAzon helyi OpenAI-kompatibilis szervereknél, amelyek nem igényelnek hitelesítést, állítsa a `apiKeyRequired` értékét `false` értékre, és hagyja ki a `apiKey` értéket.\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------------ | ------- | -------- | ------- | ----------- |\n| `id` | húr | Igen | - | Stabil szolgáltatói azonosító. Meg kell egyeznie az objektumkulccsal, és a következőképpen van kiválasztva: `custom:<id>`. |\n| `displayName` | húr | Igen | - | A `/model` és a szolgáltató beállításai között látható név. |\n| `apiFormat` | húr | Igen | - | A következőnek kell lennie: `openai-compatible`. |\n| `baseUrl` | húr | Igen | - | Végpont gyökér, például `https://api.example.com/v1`. Autohand ellenőrzi a `/models` kódot, és felhívja a `/chat/completions` kódot. |\n| `apiKey` | húr | Feltételes | - | Adathordozó token a tárolt végpontokhoz. Kötelező, ha a `apiKeyRequired` igaz. |\n| `apiKeyRequired` | logikai | Nem | `true` | Állítsa be a false értéket a helyi vagy már hitelesített átjárókhoz. |\n| `model` | húr | Igen | - | Aktív modell azonosító. |\n| `contextWindow` | szám | Nem | Auto | Pontos kontextusablak a token-költségvetéshez, állapothoz, telemetriához és szinkronizálási metaadatokhoz. |\n| `reasoningEffort` | húr | Nem | - | Opcionális `none`, `low`, `medium`, `high` vagy `xhigh`. `reasoning_effort` néven küldve egyéni OpenAI-kompatibilis kérésekhez. |\n| `models` | tömb | Nem | - | Opcionális modellválasztó bejegyzések modellenkénti kontextussal és érvelési metaadatokkal. |\n\n### `ollama`\n\nOllama szolgáltató konfigurációja.\n```json\n{\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"port\": 11434,\n \"model\": \"llama3.2\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------- | ------------------------------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:11434` | Ollama szerver URL |\n| `port` | szám | Nem | `11434` | Szerverport (a baseUrl alternatívája) |\n| `model` | húr | Igen | - | Modellnév (pl. `llama3.2`, `codellama`) |\n\n### `llamacpp`\n\nllama.cpp szerver konfigurációja.\n```json\n{\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"default\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | llama.cpp szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | Modellazonosító |\n\n### `openai`\n\nOpenAI API konfiguráció.\n```json\n{\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-xxx\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\nAz OpenAI a Autohand beépített OpenAI bejelentkezési folyamatán keresztül is használhatja ChatGPT-előfizetését:\n```json\n{\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"contextWindow\": 1050000,\n \"model\": \"gpt-5.4\",\n \"chatgptAuth\": {\n \"accessToken\": \"...\",\n \"refreshToken\": \"...\",\n \"accountId\": \"...\"\n }\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | ----------------------- | ---------------------------- | -------------------------------------------------------------------------- |\n| `authMode` | húr | Nem | `api-key` | Hitelesítési mód: `api-key` vagy `chatgpt` |\n| `apiKey` | húr | Igen a `api-key` módhoz | - | OpenAI API kulcs |\n| `baseUrl` | húr | Nem | `https://api.openai.com/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-5.4`, `gpt-5.4-mini`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Állítsa be az elavult helyi feltételezések felülbírálásához. |\n| `chatgptAuth` | tárgy | Igen a `chatgpt` módhoz | - | Tárolt ChatGPT/Codex hitelesítési tokenek és fiókazonosító |\n\n### `mlx`\n\nMLX szolgáltató Apple Silicon Mac gépekhez (helyi következtetés).\n```json\n{\n \"mlx\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | MLX szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | MLX modell azonosító |\n\n### `llmgateway`\n\nLLM Gateway egységes API konfiguráció. Hozzáférést biztosít több LLM-szolgáltatóhoz egyetlen API-n keresztül.\n```json\n{\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"baseUrl\": \"https://api.llmgateway.io/v1\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------------- | ---------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | LLM Gateway API kulcs |\n| `baseUrl` | húr | Nem | `https://api.llmgateway.io/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-4o`, `claude-3-5-sonnet-20241022`) |\n\n**API-kulcs beszerzése:**\nKeresse fel a [llmgateway.io/dashboard](https://llmgateway.io/dashboard) webhelyet fiók létrehozásához és API-kulcsának beszerzéséhez.\n\n**Támogatott modellek:**\nAz LLM Gateway több szolgáltató modelljét támogatja, többek között:\n\n- OpenAI: `gpt-4o`, `gpt-4o-mini`, `gpt-4-turbo`\n`claude-3-5-haiku-20241022`\n- Google: `gemini-1.5-pro`, `gemini-1.5-flash`\n\n### `deepseek`\n\nDeepSeek szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.deepseek.com`-t használja alap URL-ként.\n```json\n{\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"baseUrl\": \"https://api.deepseek.com\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | --------------------------- | --------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | DeepSeek API kulcs |\n| `baseUrl` | húr | Nem | `https://api.deepseek.com` | API-végpont |\n| `model` | húr | Igen | - | Modellnév, például `deepseek-v4-flash` vagy `deepseek-v4-pro` |\n\n### `bedrock`\n\nAWS Bedrock szolgáltató konfigurációja. `converse` az alapértelmezett mód, és az AWS SDK hitelesítési láncot használja. Az OpenAI-kompatibilis módok Bedrock API-kulcsokat és Bedrock OpenAI-kompatibilis végpontokat használnak.\n```json\n{\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------- | ------ | -------- | ------- | ----------- |\n| `model` | húr | Igen | - | Alapkőzetmodell-azonosító, következtetési profilazonosító vagy ARN |\n| `region` | húr | Igen | `AWS_REGION`, majd `AWS_DEFAULT_REGION`, majd `us-east-1` a beállításban | AWS régió |\n| `apiMode` | húr | Nem | `converse` | `converse`, `openai-chat` vagy `openai-responses` |\n| `authMode` | húr | Nem | `aws-credentials` `converse`, `bedrock-api-key` OpenAI-kompatibilis módokhoz | Hitelesítési mód |\n| `profile` | húr | Nem | - | Opcionális AWS-profil a hitelesítő adatok láncos hitelesítéséhez |\n| `endpoint` | húr | Nem | Módból és régióból származtatva | Egyéni/privát Bedrock végpont |\n| `apiKey` | húr | Igen OpenAI-kompatibilis módokhoz | - | Bedrock API kulcs. Ne használjon OpenAI API-kulcsokat. |\n\nFuttassa a `aws configure sso` kódot, vagy állítsa be a `AWS_PROFILE=enterprise-prod autohand` értéket a profilalapú AWS-hitelesítéshez. Az IAM-szerepkört, a tárolót és a példány metaadat-hitelesítő adatait az AWS SDK támogatja. Modell használata előtt engedélyezze a modellelérést az AWS-konzolon.\n\n---\n\n## Munkaterület beállításai\n```json\n{\n \"workspace\": {\n \"defaultRoot\": \"/path/to/projects\",\n \"allowDangerousOps\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------------------ | -------------------------------------------------- |\n| `defaultRoot` | húr | Aktuális címtár | Alapértelmezett munkaterület, ha nincs megadva |\n| `allowDangerousOps` | logikai | `false` | Pusztító műveletek engedélyezése megerősítés nélkül |\n\n### Munkahelyi biztonság\n\nAutohand automatikusan blokkolja a működést a veszélyes könyvtárakban, hogy megelőzze a véletlen károsodást:\n\n- **Fájlrendszer gyökerei** (`/`, `C:\\`, `D:\\` stb.)\n- **Házikönyvtárak** (`~`, `/Users/<user>`, `/home/<user>`, `C:\\Users\\<user>`)\n- **Rendszerkönyvtárak** (`/etc`, `/var`, `/System`, `C:\\Windows` stb.)\n- **WSL Windows-csatlakozások** (`/mnt/c`, `/mnt/c/Users/<user>`)\n\nEzt az ellenőrzést nem lehet megkerülni. Ha egy veszélyes könyvtárban próbálja meg futtatni a autohand alkalmazást, hibaüzenetet fog látni, és meg kell adnia egy biztonságos projektkönyvtárat.\n```bash\n# This will be blocked\ncd ~ && autohand\n# Error: Unsafe Workspace Directory\n\n# This works\ncd ~/projects/my-app && autohand\n```\nA részletekért lásd a [Workspace Safety](./workspace-safety.md) részt.\n\n---\n\n## UI beállítások\n```json\n{\n \"ui\": {\n \"theme\": \"dark\",\n \"customThemes\": {\n \"company\": {\n \"colors\": {\n \"accent\": \"#7c3aed\",\n \"success\": \"#22c55e\"\n }\n }\n },\n \"autoConfirm\": false,\n \"readFileCharLimit\": 300,\n \"silentToolOutput\": false,\n \"activityVerbs\": [\"Compiling\", \"Parsing\", \"Reviewing\"],\n \"activityVerbsEnabled\": true,\n \"activitySymbol\": \"✳\",\n \"statusLine\": {\n \"showProviderModel\": true,\n \"showContext\": true,\n \"showCommandHint\": true,\n \"showPullRequest\": true,\n \"showSessionLines\": false,\n \"showQueue\": true,\n \"showActiveStatus\": true,\n \"showActiveMetrics\": true,\n \"showCancelHint\": true\n },\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ----------------------------- | ------ | ------- | ---------------------------------------------------------------------------------------------- |\n| `theme` | húr | `\"dark\"` | Színes téma a terminál kimenetéhez. A beépítettek a következők: `dark`, `light`, `dracula`, `sandy`, `tui`, `github-dark`, `cappadocia`, CODE és ___8__ `australia`. A régi `turkey` és `brazil` értékek továbbra is betöltődnek álnévként. |\n| `customThemes` | tárgy | `{}` | Soron belüli egyéni témadefiníciók a téma nevével. A használatához állítsa be a `theme` kulcsot ugyanarra a kulcsra. |\n| `autoConfirm` | logikai | `false` | A biztonságos működés érdekében hagyja ki a megerősítő felszólításokat |\n| `readFileCharLimit` | szám | `300` | Maximum megjeleníthető karakter az olvasási/kereső eszköz kimenetéből (a teljes tartalom továbbra is elküldésre kerül a modellnek) |\n| `silentToolOutput` | logikai | `false` | A szerszám kimeneti blokkjainak elrejtése a terminálban, miközben továbbra is megőrzi a modell/munkamenet szerszámeredményeit |\n| `activityVerbs` | karakterlánc vagy karakterlánc[] | beépített medence | Egyéni tevékenység ige vagy igekészlet a munkajelzőhöz, `Verb...` formátumban |\n| `activityVerbsEnabled` | logikai | `true` | Forgó tevékenység igék megjelenítése, például `Compiling...`, miközben az ügynök dolgozik |\n| `activitySymbol` | húr | `\"✳\"` | A tevékenységi ige előtt látható szimbólum a tevékenységmutató kimenetében |\n| `statusLine.showProviderModel` | logikai | `true` | Jelenítse meg az aktív szolgáltatót és modellt a szerző állapotsorában |\n| `statusLine.showContext` | logikai | `true` | Jelenítse meg a kontextus százalékos arányát a szerző állapotsorában |\n| `statusLine.showCommandHint` | logikai | `true` | Parancs, említés, készség és terminálbejegyzési tippek megjelenítése a szerző állapotsorában |\n| `statusLine.showPullRequest` | logikai | `true` | Mutassa meg a kapcsolódó lekérési kérés számát, vagy `PR #123`, ha nincs PR társítva |\n| `statusLine.showSessionLines` | logikai | `false` | Az aktuális munkamenet során hozzáadott és eltávolított sorok megjelenítése |\n| `statusLine.showQueue` | logikai | `true` | A sorba állított kérések számának megjelenítése az állapotsorban |\n| `statusLine.showActiveStatus` | logikai | `true` | Az aktív forduló állapotszövege megjelenítése, miközben az ügynök dolgozik |\n| `statusLine.showActiveMetrics` | logikai | `true` | Az eltelt idő és a token mérőszámainak megjelenítése, amíg az ügynök dolgozik |\n| `statusLine.showCancelHint` | logikai | `true` | Az Esc megszakítási tipp megjelenítése, miközben az ügynök dolgozik |\n| `completionReportEnabled` | logikai | `true` | Kérje meg a modellt, hogy a végrehajtott műveleti körök után tartalmazzon egy tömör befejezési jelentést |\n| `showCompletionNotification` | logikai | `true` | Rendszerértesítés megjelenítése a feladat befejezésekor |\n| `showThinking` | logikai | `true` | Az LLM érvelésének/gondolati folyamatának megjelenítése |\n| `terminalBell` | logikai | `true` | Csengessen terminálcsengőt, amikor a feladat befejeződött (jelvényt mutat a terminálfülön/dokkon) |\n| `checkForUpdates` | logikai | `true` | CLI frissítések keresése indításkor |\n| `updateCheckInterval` | szám | `24` | Órák a frissítési ellenőrzések között (a gyorsítótárazott eredményt az intervallumon belül használja) |\n\nAz egyéni témák bármely szemantikai színtokent felülírhatnak. A hiányzó tokenek a sötét témából származnak:\n```json\n{\n \"ui\": {\n \"theme\": \"company\",\n \"customThemes\": {\n \"company\": {\n \"vars\": {\n \"brand\": \"#7c3aed\",\n \"brandSoft\": \"#a78bfa\"\n },\n \"colors\": {\n \"accent\": \"brand\",\n \"borderAccent\": \"brandSoft\",\n \"mdHeading\": \"brand\"\n }\n }\n }\n }\n}\n```\nMegjegyzés: A `readFileCharLimit` és `silentToolOutput` csak a terminál megjelenítését érinti. A teljes tartalom továbbra is elküldésre kerül a modellnek, és eszközüzenetekben tárolódik.\n\nA néma eszközkimenetet a fájl szerkesztése nélkül is átkapcsolhatja:\n```bash\nautohand config set silent_tool_output true\nautohand config set silent_tool_output false\n```\nA forgó tevékenység igék között válthat a fájl szerkesztése nélkül:\n```bash\nautohand config set verbs activity true\nautohand config set verbs activity false\n```\nSzabja testre az igéket a konfigurációs fájlban, ha rögzített állapotcímkét vagy kis projektspecifikus elforgatást szeretne:\n```json\n{\n \"ui\": {\n \"activityVerbs\": \"Compiling\"\n }\n}\n```\n\n```json\n{\n \"ui\": {\n \"activityVerbs\": [\"Indexing\", \"Reviewing\", \"Testing\"],\n \"activitySymbol\": \">\"\n }\n}\n```\nA `activityVerbs` egyetlen karakterláncot vagy nem üres karakterlánc-tömböt fogad el. Ha a `activityVerbsEnabled` értéke `false`, a Autohand visszaesik a `Working...` értékre, ahelyett, hogy az egyéni vagy beépített igék között forogna.\n\nA fájl szerkesztése nélkül válthat a befejezési jelentések között, beleértve a strukturált `SITREP` promptot is:\n```bash\nautohand config set sitrep true\nautohand config set sitrep false\n```\n### Terminal Bell\n\nHa a `terminalBell` engedélyezve van (alapértelmezett), a Autohand megszólal a terminál csengőjén (`\\x07`), amikor egy feladat befejeződik. Ez kiváltja:\n\n- **Jelvény a terminál lapon** - Vizuális jelzőt mutat, hogy a munka elkészült\n- **Dokk ikon ugrál** - Felhívja a figyelmet, ha a terminál a háttérben van (macOS)\n- **Hang** - Ha a terminál hangjai engedélyezve vannak a terminál beállításaiban\n\nTerminálspecifikus beállítások:\n\n- **macOS terminál**: Beállítások > Profilok > Speciális > Bell (vizuális/hallható)\n- **iTerm2**: Beállítások > Profilok > Terminál > Értesítések\n- **VS Code Terminal**: Beállítások > Terminál > Integrált: Bell engedélyezése\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"terminalBell\": false\n }\n}\n```\n### Ink Renderer\n\nA Autohand alapértelmezés szerint az Ink 7 + React 19 renderert használja az interaktív terminálokhoz. A régi `ui.useInkRenderer` konfigurációs mezőt figyelmen kívül hagyja, így a régi konfigurációs fájlok nem kényszeríthetik a sima terminálszerkesztőt. A tinta a következőket nyújtja:\n\n- **Recgésmentes kimenet**: Minden UI-frissítés kötegelt React-egyeztetésen keresztül történik\n- **Munkasor funkció**: Írja be az utasításokat, amíg az ügynök dolgozik\n- **Jobb bemenetkezelés**: Nincsenek ütközések a readline-kezelők között\n- **Összeállítható felhasználói felület**: A jövőbeni fejlett felhasználói felületi funkciók alapja\n\nVészhelyzeti tartalék a terminál kompatibilitás érdekében:\n```bash\nAUTOHAND_LEGACY_UI=1 autohand\n```\nMegjegyzés: Ez a funkció kísérleti jellegű, és lehetnek szélső esetek. Az alapértelmezett ora-alapú felhasználói felület stabil és teljesen működőképes marad.\n\n### Frissítési ellenőrzés\n\nHa a `checkForUpdates` engedélyezve van (alapértelmezett), a Autohand indításkor ellenőrzi az új kiadásokat:\n```\n> Autohand v0.6.8 (abc1234) ✓ Up to date\n```\nHa elérhető frissítés:\n```\n> Autohand v0.6.7 (abc1234) ⬆ Update available: v0.6.8\n ↳ Run: curl -fsSL https://autohand.ai/install.sh | sh\n```\nHogyan működik:\n\n- Lekéri a GitHub API legújabb kiadását\n- A gyorsítótárak eredménye `~/.autohand/version-check.json`\n- Csak egyszer ellenőrzi `updateCheckInterval` óránként (alapértelmezett: 24)\n- Nem blokkoló: az indítás akkor is folytatódik, ha az ellenőrzés sikertelen\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"checkForUpdates\": false\n }\n}\n```\nVagy környezeti változón keresztül:\n```bash\nexport AUTOHAND_SKIP_UPDATE_CHECK=1\n```\n---\n\n## Ügynök beállításai\n\nAz ügynök viselkedésének és iterációs korlátainak szabályozása.\n```json\n{\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"autoMemory\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------- | ------------------------------------------------------------------------------ |\n| `maxIterations` | szám | `100` | Maximális szerszámiterációk felhasználói kérésenként a leállítás előtt |\n| `enableRequestQueue` | logikai | `true` | Lehetővé teszi a felhasználók számára, hogy kéréseket írjanak be és sorba állítsanak, miközben az ügynök dolgozik |\n| `toolSelectionCache` | logikai | `true` | Gyorsítótárazza a körönkénti szerszámséma helyi kiválasztását az egyenértékű szerszámkiválasztási bemenethez |\n| `autoMemory` | logikai | `true` | Tartós felhasználói/projektmemóriák kibontása és mentése sikeres interaktív fordulatok után |\n| `idleLogoutEnabled` | logikai | `true` | Jelentkezzen ki a hitelesített interaktív munkamenetekből az üresjárati időtúllépés után |\n| `idleTimeoutMs` | szám | `3600000` | Az inaktivitás ezredmásodpercei a hitelesített munkamenet kijelentkeztetése előtt (60 perc) |\n| `debug` | logikai | `false` | Részletes hibakeresési kimenet engedélyezése (naplózza az ügynök belső állapotát az stderr-be) |\n\n### Eszközséma kiválasztása\n\nA Autohand nem küld el minden teljes eszközsémát minden LLM-kérelemnél. A rendszerprompt tartalmaz egy kompakt eszközképesség-katalógust, és minden kérés csak egy kis konkrét sémát tesz közzé, amely a következők közül választható ki:\n\n- Az alapvető felderítési eszközök, például `tool_search`, `read_file`, `fff_find` és `fff_grep`\n- Szándékhoz illő eszközök szerkesztési, ellenőrzési, git, böngésző, web, függőségi vagy projektkövetési munkákhoz\n- A legutóbbi `tool_search` hívások során kért vagy kifejezetten név szerint megemlített eszközök\n\nEzzel elkerülhető a nagy előzetes kontextusköltség, ha az összes eszközséma elküldése a felhasználói szándék ismertsége előtt felmerül. `toolSelectionCache` csak a helyi választó gyorsítótárát vezérli az egyenértékű fordulatokhoz; nem hajt végre felhasználói előtti LLM-bemelegítést, és nem kényszerít ki nagy gyorsítótárazott prompt előtagot.\n\nA helyi választó gyorsítótárának letiltása:\n```json\n{\n \"agent\": {\n \"toolSelectionCache\": false\n }\n}\n```\nA hitelesített, régóta működő ügynöki munkamenetek életben tartásához, amíg munkára várnak:\n```json\n{\n \"agent\": {\n \"idleLogoutEnabled\": false\n }\n}\n```\nEgyetlen folyamathoz használja a `autohand --no-idle-logout` kódot, vagy állítsa be a `AUTOHAND_NO_IDLE_LOGOUT=1` értéket.\n\nAz inaktivitási idő módosításához állítsa az `idleTimeoutMs` értékét pozitív, ezredmásodpercben megadott időtartamra. Az alapértelmezett érték `3600000` (60 perc); az érvénytelen értékek az alapértelmezett értéket használják.\n\n### Hibakeresési mód\n\nEngedélyezze a hibakeresési módot az ügynök belső állapotának részletes naplózásához (reakcióhurok iterációi, prompt felépítés, munkamenet részletei). A kimenet az stderr-hez megy, hogy elkerülje a normál kimenet zavarását.\n\nHáromféleképpen engedélyezheti a hibakeresési módot (elsőbbségi sorrendben):\n\n1. **CLI jelző**: `autohand -d` vagy `autohand --debug`\n2. **Környezeti változó**: `AUTOHAND_DEBUG=1`\n3. **Konfigurációs fájl**: Állítsa be: `agent.debug: true`\n\n### Kérési sor\n\nHa a `enableRequestQueue` engedélyezve van, folytathatja az üzenetek beírását, miközben az ügynök feldolgoz egy korábbi kérést. A bevitel a sorba kerül, és automatikusan feldolgozásra kerül, amikor az aktuális feladat befejeződik.\n\n- Írja be az üzenetet, és nyomja meg az Enter billentyűt, hogy hozzáadja a sorhoz\n- Az állapotsor azt mutatja, hogy hány kérés van sorban\n- A kérések feldolgozása FIFO (first-in, first-out) sorrendben történik\n- A sor maximális mérete 10 kérés\n\n---\n\n## Engedélyek beállításai\n\nA szerszámengedélyek finom vezérlése.\n```json\n{\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\n \"run_command:npm *\",\n \"run_command:bun *\",\n \"run_command:git status\"\n ],\n \"blacklist\": [\"run_command:rm -rf *\", \"run_command:sudo *\"],\n \"rules\": [\n {\n \"tool\": \"run_command\",\n \"pattern\": \"npm test\",\n \"action\": \"allow\"\n }\n ],\n \"rememberSession\": true\n }\n}\n```\n### `mode`\n\n| Érték | Leírás |\n| ----------------- | ------------------------------------------------------ |\n| `\"interactive\"` | Jóváhagyás kérése veszélyes műveletekhez (alapértelmezett) |\n| `\"unrestricted\"` | Nincsenek felszólítások, engedélyezzen mindent |\n| `\"restricted\"` | Minden veszélyes művelet megtagadása |\n\n### `whitelist`\n\nSzerszámminták sora, amelyek soha nem igényelnek jóváhagyást.\n```json\n[\"run_command:npm *\", \"run_command:bun test\"]\n```\n### `blacklist`\n\nMindig blokkolt szerszámminták tömbje.\n```json\n[\"run_command:rm -rf /\", \"run_command:sudo *\"]\n```\n### `rules`\n\nFinom szemcsés engedélyezési szabályok.\n\n| Mező | Típus | Leírás |\n| --------- | --------- | -------------------------------------------- | ---------- | -------------- |\n| `tool` | húr | A megfelelő eszköznév |\n| `pattern` | húr | Opcionális minta az érvekhez való illeszkedéshez |\n| `action` | `\"allow\"` | `\"deny\"` | `\"prompt\"` | Intézkedések |\n\n### `rememberSession`\n\n| Típus | Alapértelmezett | Leírás |\n| ------- | ------- | -------------------------------------------- |\n| logikai | `true` | Emlékezzen az ülés jóváhagyási határozataira |\n\n### Helyi projektengedélyek\n\nMinden projektnek saját engedélybeállításai lehetnek, amelyek felülírják a globális konfigurációt. Ezeket a projekt gyökérkönyvtárában a `.autohand/settings.local.json` tartalmazza.\n\nAmikor jóváhagy egy fájlműveletet (szerkesztés, írás, törlés), a rendszer automatikusan ebbe a fájlba menti, így nem kéri újra ugyanazt a műveletet ebben a projektben.\n```json\n{\n \"version\": 1,\n \"permissions\": {\n \"whitelist\": [\n \"apply_patch:src/components/Button.tsx\",\n \"write_file:package.json\",\n \"run_command:bun test\"\n ]\n }\n}\n```\n**Hogyan működik:**\n\n- Amikor jóváhagy egy műveletet, a rendszer a következőbe menti: `.autohand/settings.local.json`\n- Legközelebb ugyanazt a műveletet a rendszer automatikusan jóváhagyja\n- A helyi projektbeállítások egyesülnek a globális beállításokkal (a helyi beállítások elsőbbséget élveznek)\n- Adja hozzá a `.autohand/settings.local.json` kódot a `.gitignore`-hoz, hogy a személyes beállítások privátak maradjanak\n\n**Mintaformátum:**\n\n- `tool_name:path` - Fájlműveletekhez (pl. `apply_patch:src/file.ts`)\n- `tool_name:command args` - Parancsokhoz (pl. `run_command:npm test`)\n\n### Megtekintési engedélyek\n\nJelenlegi engedélybeállításait kétféleképpen tekintheti meg:\n\n**CLI jelző (nem interaktív):**\n```bash\nautohand --permissions\n```\nEz a következőket jeleníti meg:\n\n- Jelenlegi engedélyezési mód (interaktív, korlátlan, korlátozott)\n- Munkaterület és konfigurációs fájlok elérési útjai\n- Minden jóváhagyott minta (engedélyezőlista)\n- Minden elutasított minta (feketelista)\n- Összefoglaló statisztika\n\n**Interaktív parancs:**\n```\n/permissions\n```\nInteraktív módban a `/permissions` parancs ugyanazokat az információkat és lehetőségeket biztosít a következőkhöz:\n\n- Elemek eltávolítása az engedélyezési listáról\n- Távolítsa el az elemeket a feketelistáról\n- Törölje az összes mentett engedélyt\n\n---\n\n## Patch mód\n\nA Patch mód lehetővé teszi megosztható, git-kompatibilis javítás létrehozását a munkaterület-fájlok módosítása nélkül. Ez hasznos:\n\n- A kód felülvizsgálata a változtatások alkalmazása előtt\n- Az AI által generált változások megosztása a csapat tagjaival\n- Reprodukálható változáskészletek készítése\n- CI/CD folyamatok, amelyeknek alkalmazása nélkül kell rögzíteni a változásokat\n\n### Használat\n```bash\n# Generate patch to stdout\nautohand --prompt \"add user authentication\" --patch\n\n# Save to file\nautohand --prompt \"add user authentication\" --patch --output auth.patch\n\n# Pipe to file (alternative)\nautohand --prompt \"refactor api handlers\" --patch > refactor.patch\n```\n### Viselkedés\n\nHa `--patch` meg van adva:\n\n- **Automatikus megerősítés**: Minden visszaigazolás automatikusan elfogadásra kerül (`--yes`)\n- **Nincsenek felszólítások**: Nem jelennek meg jóváhagyási értesítések (`--unrestricted` vélelmezett)\n- **Csak előnézet**: A változtatásokat rögzíti, de NEM írja lemezre\n- **Kikényszerített biztonság**: A feketelistán szereplő műveletek (`.env`, SSH-kulcsok, veszélyes parancsok) továbbra is blokkolva vannak\n\n### Javítások alkalmazása\n\nA címzettek szabványos git parancsokkal alkalmazhatják a javítást:\n```bash\n# Check what would be applied (dry-run)\ngit apply --check changes.patch\n\n# Apply the patch\ngit apply changes.patch\n\n# Apply with 3-way merge (handles conflicts better)\ngit apply -3 changes.patch\n\n# Apply and stage changes\ngit apply --index changes.patch\n\n# Reverse a patch\ngit apply -R changes.patch\n```\n### Patch formátum\n\nA generált javítás a git egységes diff formátumát követi:\n```diff\ndiff --git a/src/auth.ts b/src/auth.ts\nnew file mode 100644\n--- /dev/null\n+++ b/src/auth.ts\n@@ -0,0 +1,15 @@\n+export function authenticate(user: string, password: string) {\n+ // Implementation here\n+}\n\ndiff --git a/src/index.ts b/src/index.ts\n--- a/src/index.ts\n+++ b/src/index.ts\n@@ -1,5 +1,7 @@\n import express from 'express';\n+import { authenticate } from './auth';\n\n const app = express();\n+app.use(authenticate);\n```\n### Kilépési kódok\n\n| Kód | Jelentése |\n| ---- | ---------------------------------------------------- |\n| `0` | Siker, patch generált |\n| `1` | Hiba (hiányzó `--prompt`, engedély megtagadva stb.) |\n\n### Kombinálva más zászlókkal\n```bash\n# Use specific model\nautohand --prompt \"optimize queries\" --patch --model gpt-4o\n\n# Specify workspace\nautohand --prompt \"add tests\" --patch --path ./my-project\n\n# Use custom config\nautohand --prompt \"refactor\" --patch --config ~/.autohand/work.json\n```\n### Csapatmunkafolyamat-példa\n```bash\n# Developer A: Generate patch for a feature\nautohand --prompt \"implement user dashboard with charts\" --patch --output dashboard.patch\n\n# Share via git (create PR with just the patch file)\ngit checkout -b patch/dashboard\ngit add dashboard.patch\ngit commit -m \"Add dashboard feature patch\"\ngit push\n\n# Developer B: Review and apply\ngit fetch origin patch/dashboard\ngit apply dashboard.patch\n# Run tests, review code, then commit\ngit add -A && git commit -m \"feat: add user dashboard with charts\"\n```\n---\n\n## Hálózati beállítások\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Max | Leírás |\n| ------------ | ------ | ------- | --- | --------------------------------------- |\n| `maxRetries` | szám | `3` | `5` | Próbálkozzon újra sikertelen API-kérésekkel |\n| `timeout` | szám | `30000` | - | Kérelem időtúllépése ezredmásodpercben |\n| `retryDelay` | szám | `1000` | - | Az újrapróbálkozások közötti késleltetés ezredmásodpercben |\n\n---\n\n## Telemetriai beállítások\n\nA telemetria **alapértelmezés szerint le van tiltva** (feliratkozás). Engedélyezze a Autohand fejlesztéséhez.\n```json\n{\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true,\n \"companySecret\": \"\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | -------------------------- | ---------------------------------------------- |\n| `enabled` | logikai | `false` | Telemetria engedélyezése/letiltása (feliratkozás) |\n| `apiBaseUrl` | húr | `https://api.autohand.ai` | Telemetria API végpont |\n| `batchSize` | szám | `20` | Az automatikus kiürítés előtt kötegelt események száma |\n| `flushIntervalMs` | szám | `60000` | Öblítési időköz ezredmásodpercben (1 perc) |\n| `maxQueueSize` | szám | `500` | Maximális sorméret a régi események eldobása előtt |\n| `maxRetries` | szám | `3` | Próbálkozzon újra sikertelen telemetriai kérések esetén |\n| `enableSessionSync` | logikai | `true` | Szinkronizálja a munkameneteket a felhővel a csapatfunkciókhoz, ha a telemetria engedélyezve van |\n| `companySecret` | húr | `\"\"` | Vállalati titok API-hitelesítéshez |\n\nA szolgáltató/modell telemetria tartalmazza az aktív szolgáltatói azonosítót, a modellazonosítót és az elérhető nem titkos metaadatokat, például az egyéni szolgáltató megjelenítési nevét, API-formátumát, érvelési erőfeszítéseit és kontextusablakát. Az API-kulcsok és a vivőjogkivonatok soha nem szerepelnek benne.\n\n---\n\n## Külső ügynökök\n\nEgyéni ügynökdefiníciók betöltése külső könyvtárakból.\n```json\n{\n \"externalAgents\": {\n \"enabled\": true,\n \"paths\": [\"~/.autohand/agents\", \"/team/shared/agents\"]\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | -------- | ------- | -------------------------------- |\n| `enabled` | logikai | `false` | Külső ügynök betöltésének engedélyezése |\n| `paths` | string[] | `[]` | Könyvtárak az ügynökök betöltéséhez |\n\n---\n\n## Skills System\n\nA készségek olyan utasításcsomagok, amelyek speciális utasításokat adnak az AI-ügynöknek. Úgy működnek, mint az igény szerinti `AGENTS.md` fájlok, amelyek bizonyos feladatokhoz aktiválhatók.\n\n### Készségek felfedező helyek\n\nA készségek több helyről fedezhetők fel, és a későbbi források élveznek elsőbbséget:\n\n| Helyszín | Forrásazonosító | Leírás |\n| ----------------------------------------- | ------------------- | ------------------------------------------ |\n| `~/.codex/skills/**/SKILL.md` | `codex-user` | Felhasználói szintű Codex készségek (rekurzív) |\n| `~/.claude/skills/*/SKILL.md` | `claude-user` | Felhasználói szintű Claude-készségek (egy szint) |\n| `~/.autohand/skills/**/SKILL.md` | `autohand-user` | Felhasználói szintű Autohand készségek (rekurzív) |\n| `<project>/.claude/skills/*/SKILL.md` | `claude-project` | Projektszintű Claude-készségek (egy szint) |\n| `<project>/.autohand/skills/**/SKILL.md` | `autohand-project` | Projekt szintű Autohand készségek (rekurzív) |\n\n### Automatikus másolási viselkedés\n\nA Codex vagy Claude helyekről felfedezett készségek automatikusan átmásolódnak a megfelelő Autohand helyre:\n\n- `~/.codex/skills/` és `~/.claude/skills/` → `~/.autohand/skills/`\n- `<project>/.claude/skills/` → `<project>/.autohand/skills/`\n\nA Autohand helyeken meglévő készségek soha nem íródnak felül.\n\n### SKILL.md formátum\n\nA YAML frontmatter-t használó készségek, majd a leértékelési tartalom:\n```markdown\n---\nname: my-skill-name\ndescription: Brief description of the skill\nlicense: MIT\ncompatibility: Works with Node.js 18+\nallowed-tools: read_file write_file run_command\nmetadata:\n author: your-name\n version: \"1.0.0\"\n---\n\n# My Skill\n\nDetailed instructions for the AI agent...\n```\n| Mező | Kötelező | Max hossz | Leírás |\n| ---------------- | -------- | ---------- | ------------------------------------------- |\n| `name` | Igen | 64 karakter | Kisbetűs alfanumerikus, csak kötőjelekkel |\n| `description` | Igen | 1024 karakter | A készség rövid leírása |\n| `license` | Nem | - | Licencazonosító (pl. MIT, Apache-2.0) |\n| `compatibility` | Nem | 500 karakter | Kompatibilitási megjegyzések |\n| `allowed-tools` | Nem | - | Az engedélyezett eszközök szóközzel tagolt listája |\n| `metadata` | Nem | - | További kulcs-érték metaadatok |\n\n### Beviteli előtagok\n\nA Autohand támogatja a speciális előtagokat a beviteli promptban:\n\n| Előtag | Leírás | Példa |\n| ------ | ------------------------------- | ---------------------------------- |\n| `/` | Slash parancsok | `/help`, `/model`, `/quit`, `/exit` |\n| `@` | Fájl említések (automatikus kiegészítés) | `@src/index.ts` |\n| `$` | Szakértelem említése (automatikus kiegészítés) | `$frontend-design`, `$code-review` |\n| `!` | A terminálparancsok közvetlen futtatása | `! git status`, `! ls -la` |\n\n**Képességmegemlítések (`$`):**\n\n- Írja be a következőt: `$`, majd karaktereket az automatikus kiegészítéssel elérhető készségek megtekintéséhez\n- A Tab elfogadja a felső javaslatot (pl. `$frontend-design`)\n- A készségek a következőből fedezhetők fel: `~/.autohand/skills/` és `<project>/.autohand/skills/`\n- Az aktivált készségek a prompthoz vannak csatolva, mint speciális utasítások az aktuális munkamenethez\n- Az előnézeti panel a készség metaadatait mutatja (név, leírás, aktiválási állapot)\n\n**Shell-parancsok (`!`):**\n\n- A parancsok az aktuális munkakönyvtárban futnak\n- A kimenet közvetlenül a terminálon jelenik meg\n- Nem megy az LLM-be\n- 30 másodperces időtúllépés\n- A végrehajtás után visszatér a prompthoz\n\n### Slash parancsok\n\n#### `/skills` - Csomagkezelő\n\n| Parancs | Leírás |\n| -------------------------------- | ------------------------------------------- |\n| `/skills` | Sorolja fel az összes elérhető készséget |\n| `/skills use <name>` | Képesség aktiválása az aktuális munkamenethez |\n| `/skills deactivate <name>` | Készség deaktiválása |\n| `/skills info <name>` | Részletes képzettségi információk megjelenítése |\n| `/skills install` | Tallózás és telepítés a közösségi nyilvántartásból |\n| `/skills install @<slug>` | Telepítsen közösségi készségeket a slug |\n| `/skills search <query>` | Keresés a közösségi készségek nyilvántartásában |\n| `/skills trending` | Felkapott közösségi készségek megjelenítése |\n| `/skills remove <slug>` | Közösségi készség eltávolítása |\n| `/skills new` | Hozzon létre új készségeket interaktívan |\n| `/skills feedback <slug> <1-5>` | Értékeljen egy közösségi képességet |\n\n#### `/learn` - LLM-alapú Skill Advisor\n\n| Parancs | Leírás |\n| ---------------- | ---------------------------------------------------------------- |\n| `/learn` | A projekt elemzése és készségek ajánlása (gyors szkennelés) |\n| `/learn deep` | Mélyszkennelési projekt (forrásfájlokat olvas) a célzottabb eredmények érdekében |\n| `/learn update` | A projekt újraelemzése és az LLM által generált elavult készségek regenerálása |\n\nA `/learn` kétfázisú LLM-folyamatot használ:\n\n1. **1. fázis – Elemzés + Rangsorolás + Ellenőrzés**: Ellenőrzi a projekt szerkezetét, auditálja a telepített készségeket redundanciák/konfliktusok szempontjából, és rangsorolja a közösségi készségeket relevancia szerint (0-100).\n2. **2. fázis – Létrehozás** (feltételes): Ha egyik közösségi képesség sem ér el 60 feletti pontszámot, felajánlja a projektjéhez szabott egyéni képesség létrehozását.\nA generált készségek metaadatokat (`agentskill-source: llm-generated`, `agentskill-project-hash`) tartalmaznak, így a `/learn update` képes észlelni, ha megváltozik a kódbázis, és újra előállíthatja az elavult készségeket.\n\n### Automatikus készséggenerálás (`--auto-skill`)\n\nA `--auto-skill` CLI jelző készségeket generál az interaktív tanácsadói folyamat nélkül:\n```bash\nautohand --auto-skill\n```\nEz:\n\n1. Elemezze a projekt felépítését (package.json, követelmények.txt stb.)\n2. Nyelvek, keretrendszerek és minták észlelése\n3. Generáljon 3 releváns készséget az LLM segítségével\n4. Mentse el a készségeket ide: `<project>/.autohand/skills/`\n\nA célzottabb, interaktívabb élmény érdekében használja inkább a `/learn` kódot egy munkameneten belül.\n\nAz észlelt minták a következők:\n\n- **Nyelvek**: TypeScript, JavaScript, Python, Rust, Go\n- **Frameworks**: React, Next.js, Vue, Express, Flask, Django\n- **Minták**: CLI eszközök, tesztelés, monorepo, Docker, CI/CD\n\n---\n\n## API beállítások\n\nBackend API konfiguráció a csapatfunkciókhoz.\n```json\n{\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\",\n \"companySecret\": \"sk-team-xxx\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------------------------- | ---------------------------------------- |\n| `baseUrl` | húr | `https://api.autohand.ai` | API-végpont |\n| `companySecret` | húr | - | Csapat/vállalati titok a megosztott funkciókhoz |\n\nKörnyezeti változókkal is beállítható:\n\n- `AUTOHAND_API_URL` → `api.baseUrl`\n- `AUTOHAND_SECRET` → `api.companySecret`\n\n---\n\n## Hitelesítési beállítások\n\nHitelesítés és felhasználói munkamenet konfigurálása.\n```json\n{\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\",\n \"avatar\": \"https://example.com/avatar.png\"\n },\n \"expiresAt\": \"2025-12-31T23:59:59Z\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------- | ------ | ------- | --------------------------------------------- |\n| `token` | húr | - | Hitelesítési token API-hozzáféréshez |\n| `user` | tárgy | - | Hitelesített felhasználói adatok |\n| `user.id` | húr | - | Felhasználói azonosító |\n| `user.email` | húr | - | Felhasználó e-mail címe |\n| `user.name` | húr | - | Felhasználó megjelenített név |\n| `user.avatar` | húr | - | Felhasználói avatar URL-je (nem kötelező) |\n| `expiresAt` | húr | - | Token lejárati időbélyegzője (ISO 8601 formátum) |\n\n---\n\n## Közösségi készségek beállításai\n\nKonfiguráció a közösségi készségek felfedezéséhez és kezeléséhez.\n```json\n{\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------------------------- | ------- | ------- | -------------------------------------------------------------- |\n| `enabled` | logikai | `true` | Közösségi készségek funkcióinak engedélyezése |\n| `showSuggestionsOnStartup` | logikai | `true` | Képességi javaslatok megjelenítése indításkor, ha nem állnak rendelkezésre szállítói ismeretek |\n| `autoBackup` | logikai | `true` | A felfedezett szállítói ismeretek automatikus biztonsági mentése API |\n\n---\n\n## Megosztási beállítások\n\nKonfiguráció a munkamenet megosztásához a `/share` paranccsal. A munkamenetek a [autohand.link](https://autohand.link) címen találhatók.\n```json\n{\n \"share\": {\n \"enabled\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ------------------------------------ |\n| `enabled` | logikai | `true` | A `/share` parancs engedélyezése/letiltása |\n\n### YAML formátum\n```yaml\nshare:\n enabled: true\n```\n### Munkamenet-megosztás letiltása\n\nHa biztonsági vagy adatvédelmi okokból ki szeretné kapcsolni a munkamenet-megosztást:\n```json\n{\n \"share\": {\n \"enabled\": false\n }\n}\n```\nHa le van tiltva, a `/share` futtatásakor a következő jelenik meg:\n```\nSession sharing is disabled.\nTo enable, set share.enabled: true in your config file.\n```\n---\n\n## Beállítások szinkronizálása\n\nA Autohand szinkronizálhatja a konfigurációt az eszközök között a bejelentkezett felhasználók számára. A beállításokat a Cloudflare R2 biztonságosan tárolja, és a feltöltés előtt titkosítja.\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"exclude\": [],\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------------- | -------- | ---------------- | --------------------------------------------------- |\n| `enabled` | logikai | `true` (naplózva) | Beállítások szinkronizálásának engedélyezése/letiltása |\n| `interval` | szám | `300000` | Szinkronizálási idő ezredmásodpercben (alapértelmezett: 5 perc) |\n| `exclude` | string[] | `[]` | Globális minták a szinkronizálásból kizárandó |\n| `includeTelemetry` | logikai | `false` | Telemetriai adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n| `includeFeedback` | logikai | `false` | Visszajelzési adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n\n### CLI zászló\n```bash\n# Disable sync for this session\nautohand --sync-settings=false\n\n# Enable sync (default for logged users)\nautohand --sync-settings\n```\n### Mi lesz szinkronizálva\n\nAlapértelmezés szerint ezek az elemek szinkronizálva vannak a bejelentkezett felhasználók számára:\n\n- **Konfiguráció** (`config.json`) - Az API-kulcsok a feltöltés előtt titkosítva vannak\n- **Egyéni ügynökök** (`agents/`)\n- **Közösségi készségek** (`community-skills/`)\n- **Felhasználói akasztók** (`hooks/`)\n- **Memória** (`memory/`)\n- **Projektismeret** (`projects/`)\n- **Munkamenetek előzményei** (`sessions/`)\n- **Megosztott tartalom** (`share/`)\n- **Egyéni készségek** (`skills/`)\n\n### Mi nem szinkronizál (alapértelmezés szerint)\n\n- **Eszközazonosító** (`device-id`) - Eszközönként egyedi\n- **Hibanaplók** (`error.log`) - Csak helyi\n- **Verziógyorsítótár** (`version-*.json`) - Helyi gyorsítótár fájlok\n\n### Beleegyezés alapú szinkronizálás\n\nEzek az elemek kifejezett feliratkozást igényelnek a konfigurációban:\n\n- **Telemetriai adatok** - Állítsa be a `sync.includeTelemetry: true` szinkronizálást\n- **Visszajelzési adatok** - Állítsa be a `sync.includeFeedback: true` szinkronizálását\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"includeTelemetry\": true,\n \"includeFeedback\": true\n }\n}\n```\n### Konfliktusmegoldás\n\nHa ütközések lépnek fel (ugyanaz a fájl több eszközön módosítva), a **felhőverzió nyer**. Ez biztosítja a következetességet az új eszközökön való bejelentkezéskor.\n\n### Biztonság\n\nA `config.json` API-kulcsait és egyéb bizalmas adatait a rendszer a hitelesítési token segítségével titkosítja a feltöltés előtt. Csak az Ön hitelesítő adataival lehet visszafejteni.\n\n**Mi van titkosítva:**\n\n- `apiKey` nevű mezők\n- `Key`, `Token`, `Secret` végződő mezők\n- A `password` mező\n\n### Hogyan működik\n\n1. **Indításkor**: Ha be van jelentkezve, a szinkronizálási szolgáltatás automatikusan elindul\n2. **5 percenként**: A beállításokat összehasonlítja a felhőalapú tárolással\n3. **A felhő nyer**: A távoli módosítások letöltése először történik meg\n4. **Helyi feltöltések**: Új helyi módosítások kerülnek feltöltésre\n5. **Kilépéskor**: A szinkronizálási szolgáltatás kecsesen leáll\n\n### Fájlok kizárása\n\nKizárhat bizonyos fájlokat vagy mintákat a szinkronizálásból:\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"exclude\": [\"custom-local-config.json\", \"temp/*\"]\n }\n}\n```\n### YAML formátum\n```yaml\nsync:\n enabled: true\n interval: 300000\n exclude: []\n includeTelemetry: false\n includeFeedback: false\n```\n---\n\n## MCP beállítások\n\nÁllítsa be az MCP-kiszolgálókat (Model Context Protocol) a Autohand külső eszközökkel történő bővítésére.\n```json\n{\n \"mcp\": {\n \"enabled\": true,\n \"servers\": [\n {\n \"name\": \"filesystem\",\n \"transport\": \"stdio\",\n \"command\": \"npx\",\n \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/tmp\"],\n \"env\": {},\n \"autoConnect\": true\n },\n {\n \"name\": \"context7\",\n \"transport\": \"http\",\n \"url\": \"https://mcp.context7.com/mcp\",\n \"headers\": {\n \"CONTEXT7_API_KEY\": \"ctx7sk-your-api-key\"\n },\n \"autoConnect\": true\n }\n ]\n }\n}\n```\n### `mcp.enabled`\n\n- **Típus**: `boolean`\n- **Alapértelmezett**: `true`\n- **Leírás**: Az összes MCP-támogatás engedélyezése vagy letiltása. Ha `false`, akkor az indításkor nem csatlakozik szerver, és az MCP-eszközök nem érhetők el.\n\n### `mcp.servers`\n\n- **Típus**: `McpServerConfigEntry[]`\n- **Alapértelmezett**: `[]`\n- **Leírás**: MCP szerver konfigurációk tömbje.\n\n### Szerver beviteli mezői\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | --------------------------------- | -------------- | ------- | -------------------------------------------------------------- |\n| `name` | `string` | Igen | - | Egyedi szerverazonosító |\n| `transport` | `\"stdio\"` \\| `\"sse\"` \\| `\"http\"` | Igen | - | Szállítás típusa |\n| `command` | `string` | Igen (stdio) | - | Parancs a szerverfolyamat elindításához |\n| `args` | `string[]` | Nem | `[]` | Érvek a parancs mellett |\n| `url` | `string` | Igen (sse/http) | - | Szervervégpont URL |\n| `headers` | `Record<string, string>` | Nem | `{}` | Egyéni HTTP-fejlécek http/sse szállításhoz (pl. hitelesítési tokenek) |\n| `env` | `Record<string, string>` | Nem | `{}` | A kiszolgálónak átadott környezeti változók |\n| `autoConnect` | `boolean` | Nem | `true` | Automatikus csatlakozás indításkor |\n\n> A szerverek aszinkron módon csatlakoznak a háttérben az indítás során anélkül, hogy blokkolnák a promptot. A `/mcp` segítségével interaktívan kezelheti a szervereket, vagy a `/mcp add` segítségével böngészhet a közösségi nyilvántartásban, vagy adhat hozzá egyéni szervereket.\n\n> A teljes MCP-dokumentációért lásd: [docs/mcp.md](mcp.md).\n\n---\n\n## Hooks beállítások\n\nKonfiguráció életciklus-horogokhoz, amelyek shell-parancsokat futtatnak az ügynökeseményeken. A részletekért lásd a [Hooks dokumentációt] (./hooks.md).\n```json\n{\n \"hooks\": {\n \"enabled\": true,\n \"hooks\": [\n {\n \"event\": \"pre-tool\",\n \"command\": \"echo \\\"Running tool: $HOOK_TOOL\\\" >> ~/.autohand/hooks.log\",\n \"description\": \"Log all tool executions\",\n \"enabled\": true\n },\n {\n \"event\": \"file-modified\",\n \"command\": \"./scripts/on-file-change.sh\",\n \"description\": \"Custom file change handler\",\n \"filter\": { \"path\": [\"src/**/*.ts\"] }\n },\n {\n \"event\": \"post-response\",\n \"command\": \"curl -X POST https://api.example.com/webhook -d '{\\\"tokens\\\": $HOOK_TOKENS}'\",\n \"description\": \"Track token usage\",\n \"async\": true\n }\n ]\n }\n}\n```\n### `hooks`\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ---------------------------------- |\n| `enabled` | logikai | `true` | Az összes hook engedélyezése/letiltása globálisan |\n| `hooks` | tömb | `[]` | Horogdefiníciók tömbje |\n\n### Hook meghatározása\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | ------- | -------- | ------- | --------------------------------- |\n| `event` | húr | Igen | - | Bekapcsolandó esemény |\n| `command` | húr | Igen | - | Shell parancs végrehajtásához |\n| `description` | húr | Nem | - | A `/hooks` kijelző leírása |\n| `enabled` | logikai | Nem | `true` | Aktív-e a horog |\n| `timeout` | szám | Nem | `5000` | Időtúllépés ezredmásodpercben |\n| `async` | logikai | Nem | `false` | Futtasson blokkolás nélkül |\n| `filter` | tárgy | Nem | - | Szűrés szerszám vagy útvonal szerint |\n\n### Hook események\n\n| Esemény | Amikor kirúgták |\n| ---------------- | -------------------------------------- |\n| `pre-tool` | Mielőtt bármilyen eszköz végrehajtaná |\n| `post-tool` | A szerszám befejezése után |\n| `file-modified` | A fájl létrehozásakor/módosításakor/törlésekor |\n| `pre-prompt` | Mielőtt elküldené az LLM-nek |\n| `post-response` | Miután az LLM válaszol |\n| `session-error` | Hiba esetén |\n\n### Környezeti változók\n\nAmikor a hook fut, ezek a környezeti változók állnak rendelkezésre:\n\n| Változó | Leírás |\n| ----------------- | ---------------------------- |\n| `HOOK_EVENT` | Esemény neve |\n| `HOOK_WORKSPACE` | Munkaterület gyökérútvonala |\n| `HOOK_TOOL` | Szerszámnév (szerszámesemények) |\n| `HOOK_ARGS` | JSON-kódolt eszköz args |\n| `HOOK_SUCCESS` | igaz/hamis (utóeszköz) |\n| `HOOK_PATH` | Fájl elérési útja (fájlmódosított) |\n| `HOOK_TOKENS` | Felhasznált tokenek (válasz után) |\n\n---\n\n## Chrome-bővítmény beállításai\n\nIrányítsd a Autohand Chrome-bővítmény integrációját. Tekintse meg a teljes útmutatót: [Autohand Chrome-ban](./autohand-in-chrome.md).\n```json\n{\n \"chrome\": {\n \"extensionId\": \"your-extension-id\",\n \"enabledByDefault\": false,\n \"browser\": \"auto\",\n \"userDataDir\": \"/path/to/chrome/user-data\",\n \"profileDirectory\": \"Default\",\n \"installUrl\": \"https://autohand.ai/chrome\"\n }\n}\n```\n| Kulcs | Típus | Alapértelmezett | Leírás |\n| ------------------- | --------- | -------- | -------------------------------------------------------------------------- |\n| `extensionId` | `string` | — | Telepített Chrome-bővítményazonosító a közvetlen átadáshoz |\n| `enabledByDefault` | `boolean` | `false` | A böngészőhíd automatikus indítása a CLI |-vel\n| `browser` | `string` | `\"auto\"` | Előnyben részesített Chromium böngésző: `auto`, `chrome`, `chromium`, `brave`, `edge` |\n| `userDataDir` | `string` | — | Böngésző felhasználói adatok könyvtára a megfelelő profil megcélzásához |\n| `profileDirectory` | `string` | — | Böngészőprofil-könyvtár neve (pl. `\"Default\"`, `\"Profile 1\"`) |\n| `installUrl` | `string` | — | Tartalék URL, ha a bővítményazonosító nincs konfigurálva |\n\n### CLI zászlók\n```bash\nautohand --browser # Start with browser bridge enabled\nautohand --no-browser # Start with browser bridge disabled\n```\n### Slash parancsok\n```\n/browser # Open browser integration panel\n/browser disconnect # Close the browser bridge connection\n```\n---\n\n## Teljes példa\n\n### JSON formátum (`~/.autohand/config.json`)\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\"\n },\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"model\": \"llama3.2\"\n },\n \"workspace\": {\n \"defaultRoot\": \"~/projects\",\n \"allowDangerousOps\": false\n },\n \"ui\": {\n \"theme\": \"dark\",\n \"autoConfirm\": false,\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n },\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n },\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\"run_command:npm *\", \"run_command:bun *\"],\n \"blacklist\": [\"run_command:rm -rf /\"],\n \"rememberSession\": true\n },\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n },\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true\n },\n \"externalAgents\": {\n \"enabled\": false,\n \"paths\": []\n },\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\"\n },\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\"\n }\n },\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n },\n \"share\": {\n \"enabled\": true\n },\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n### YAML formátum (`~/.autohand/config.yaml`)\n```yaml\nprovider: openrouter\n\nopenrouter:\n apiKey: sk-or-v1-your-key-here\n baseUrl: https://openrouter.ai/api/v1\n model: your-modelcard-id-here\n\nollama:\n baseUrl: http://localhost:11434\n model: llama3.2\n\nworkspace:\n defaultRoot: ~/projects\n allowDangerousOps: false\n\nui:\n theme: dark\n autoConfirm: false\n showCompletionNotification: true\n showThinking: true\n terminalBell: true\n checkForUpdates: true\n updateCheckInterval: 24\n\nagent:\n maxIterations: 100\n enableRequestQueue: true\n toolSelectionCache: true\n idleLogoutEnabled: true\n idleTimeoutMs: 3600000\n debug: false\n\npermissions:\n mode: interactive\n whitelist:\n - \"run_command:npm *\"\n - \"run_command:bun *\"\n blacklist:\n - \"run_command:rm -rf /\"\n rememberSession: true\n\nnetwork:\n maxRetries: 3\n timeout: 30000\n retryDelay: 1000\n\ntelemetry:\n enabled: false\n apiBaseUrl: https://api.autohand.ai\n batchSize: 20\n flushIntervalMs: 60000\n maxQueueSize: 500\n maxRetries: 3\n enableSessionSync: true\n\nexternalAgents:\n enabled: false\n paths: []\n\napi:\n baseUrl: https://api.autohand.ai\n\nauth:\n token: your-auth-token\n user:\n id: user-id\n email: user@example.com\n name: User Name\n\ncommunitySkills:\n enabled: true\n showSuggestionsOnStartup: true\n autoBackup: true\n\nshare:\n enabled: true\n\nsync:\n enabled: true\n interval: 300000\n includeTelemetry: false\n includeFeedback: false\n```\n### TOML formátum (`~/.autohand/config.toml`)\n```toml\nprovider = \"openrouter\"\n\n[openrouter]\napiKey = \"sk-or-v1-your-key-here\"\nbaseUrl = \"https://openrouter.ai/api/v1\"\nmodel = \"your-modelcard-id-here\"\n\n[ollama]\nbaseUrl = \"http://localhost:11434\"\nmodel = \"llama3.2\"\n\n[workspace]\ndefaultRoot = \"~/projects\"\nallowDangerousOps = false\n\n[ui]\ntheme = \"dark\"\nautoConfirm = false\nshowCompletionNotification = true\nshowThinking = true\nterminalBell = true\ncheckForUpdates = true\nupdateCheckInterval = 24\n\n[ui.customThemes.company.vars]\nbrand = \"#7c3aed\"\nbrandSoft = \"#a78bfa\"\n\n[ui.customThemes.company.colors]\naccent = \"brand\"\nborderAccent = \"brandSoft\"\nmdHeading = \"brand\"\n\n[agent]\nmaxIterations = 100\nenableRequestQueue = true\ntoolSelectionCache = true\nidleLogoutEnabled = true\nidleTimeoutMs = 3600000\ndebug = false\n\n[permissions]\nmode = \"interactive\"\nwhitelist = [\"run_command:npm *\", \"run_command:bun *\"]\nblacklist = [\"run_command:rm -rf /\"]\nrememberSession = true\n```\n---\n\n## Címtárszerkezet\n\nA Autohand az adatokat `~/.autohand/` (vagy `$AUTOHAND_HOME`) kódban tárolja:\n```\n~/.autohand/\n├── config.json # Main configuration\n├── config.toml # Alternative TOML config\n├── config.yaml # Alternative YAML config\n├── device-id # Unique device identifier\n├── error.log # Error log\n├── feedback.log # Feedback submissions\n├── sessions/ # Session history\n├── projects/ # Project knowledge base\n├── memory/ # User-level memory\n├── commands/ # Custom commands\n├── agents/ # Agent definitions\n├── tools/ # Custom meta-tools\n├── feedback/ # Feedback state\n└── telemetry/ # Telemetry data\n ├── queue.json\n └── session-sync-queue.json\n```\n**Projektszintű könyvtár** (a munkaterület gyökérkönyvtárában):\n```\n<project>/.autohand/\n├── settings.local.json # Local project permissions (gitignore this)\n├── memory/ # Project-specific memory\n├── skills/ # Project-specific skills\n└── tools/ # Project-specific meta-tools\n```\n---\n\n## CLI-jelzők (konfig felülbírálása)\n\nEzek a jelzők felülírják a konfigurációs fájl beállításait:\n\n### Alapjelzők\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `-v, --version` | Az aktuális verzió kiadása |\n| `-p, --prompt [text]` | Futtasson egyetlen utasítást parancs módban |\n| `--path <path>` | Munkaterület gyökér felülbírálása |\n| `--config <path>` | Egyéni konfigurációs fájl használata |\n| `--model <model>` | Modell felülírása |\n| `--temperature <n>` | Beállított mintavételi hőmérséklet (0-1) |\n| `--thinking [level]` | Gondolkodási/érvelési mélység beállítása (nincs, normál, kiterjesztett) |\n| `-y, --yes` | Automatikus megerősítési kérések |\n| `--dry-run` | Előnézet végrehajtás nélkül |\n| `-d, --debug` | Részletes hibakeresési kimenet engedélyezése |\n| `--bare` | Minimális explicit mód; beállítja a `AUTOHAND_CODE_SIMPLE=1` értéket és letiltja a perjel parancsokat |\n\n### Engedélyek és biztonság\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--unrestricted` | Nincs jóváhagyási felszólítás |\n| `--restricted` | Veszélyes műveletek megtagadása |\n| `--permissions` | Jelenítse meg az aktuális engedélybeállításokat, és lépjen ki |\n| `--no-idle-logout` | A hitelesített tétlen kijelentkezés letiltása a hosszan futó ügynöki munkamenetekhez |\n| `--yolo [pattern]` | Eszközhívások megfelelő minta automatikus jóváhagyása (pl. `allow:read,write` vagy `deny:delete`) |\n| `--timeout <seconds>` | Időtúllépés másodpercben az automatikus jóváhagyási módhoz |\n\n### Git & Worktree\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--worktree [name]` | Munkamenet futtatása elszigetelt git-munkafán (opcionális munkafa/ág neve) |\n| `--tmux` | Indítás egy dedikált tmux munkamenetben (az `--worktree`-t jelenti; nem használható a `--no-worktree` kóddal) |\n| `--no-worktree` | A git munkafa elkülönítésének letiltása automatikus módban |\n| `-c, --auto-commit` | Változások automatikus véglegesítése a feladatok elvégzése után |\n| `--patch` | Git javítás generálása változtatások alkalmazása nélkül |\n| `--output <file>` | A javítás kimeneti fájlja (a --patch-el együtt használatos) |\n\n### Automatikus mód\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-mode [prompt]` | Engedélyezze az interaktív automatikus módot, vagy indítson önálló hurkot egy soron belüli feladattal |\n| `--max-iterations <n>` | Maximális automatikus módú iterációk (alapértelmezett: 50) |\n| `--completion-promise <text>` | Befejezésjelző szövege (alapértelmezett: \"KÉSZ\") |\n| `--checkpoint-interval <n>` | A Git minden N iterációt végrehajt (alapértelmezett: 5) |\n| `--max-runtime <m>` | Maximális futási idő percekben (alapértelmezett: 120) |\n| `--max-cost <d>` | Maximális API költség dollárban (alapértelmezett: 10) |\n| `--interactive-on-complete` | Az automatikus mód vége után adja át közvetlenül az interaktív módba (csak TTY) |\n\n### Készségek és tanulás\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-skill` | Készségek automatikus generálása projektelemzés alapján (lásd még: `/learn` az interaktív tanácsadóhoz) |\n| `--learn` | Futtassa a `/learn` készségtanácsadót nem interaktív módon (a javasolt készségek elemzése és telepítése) |\n| `--learn-update` | A projekt újraelemzése és az LLM által generált elavult készségek nem interaktív módon történő regenerálása |\n| `--skill-install [name]` | Telepítsen egy közösségi képességet (megnyitja a böngészőt, ha nincs megadva név) |\n| `--project` | A készség telepítése projektszintre (a --skill-install funkcióval) |\n\n### Hitelesítés és fiók\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--login` | Jelentkezzen be Autohand-fiókjába |\n| `--logout` | Jelentkezzen ki Autohand-fiókjából |\n| `--sync-settings` | A beállítások szinkronizálásának engedélyezése/letiltása (alapértelmezett: igaz a bejelentkezett felhasználók számára) |\n\n### Beállítás és információ\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--setup` | Futtassa a telepítővarázslót a Autohand |\n| `--about` | Információk megjelenítése a Autohand-ról (verzió, linkek, hozzájárulási információk) |\n| `--feedback` | Visszajelzés küldése a Autohand csapatának |\n| `--settings` | A Autohand beállításainak konfigurálása (ugyanaz, mint a `/settings` interaktív módban) |\n\n### Munkaterület és könyvtárak\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--add-dir <path...>` | További könyvtárak hozzáadása a munkaterület hatóköréhez (többször is használható) |\n\n### Futtatási módok\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--mode <mode>` | Futtatási mód: interaktív (alapértelmezett), rpc vagy acp |\n| `--acp` | A --mode acp rövidítése (Agent Client Protocol over stdio) |\n| `--teammate-mode <mode>` | Csapat megjelenítési mód: automatikus, folyamatban lévő vagy tmux |\n\n### UI és nyelv\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--display-language <locale>` | Megjelenítési nyelv beállítása (pl. en, id, zh-cn, fr, de, ja) |\n| `--search-engine <provider>` | Internetes keresőszolgáltató beállítása (google, brave, duckduckgo, párhuzamos) |\n| `--cc, --context-compact` | Környezettömörítés engedélyezése (alapértelmezett: be) |\n| `--no-cc, --no-context-compact` | Kontextustömörítés letiltása |\n\n### Böngészőintegráció\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--browser` | A böngészőintegráció engedélyezése (ugyanaz, mint `/browser`) |\n| `--no-browser` | A böngészőintegráció letiltása |\n\n### Rendszerprompt\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-sys-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt-file <path>` | Cserélje le a teljes rendszerprompt a fájltartalommal |\n| `--append-system-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n### Kísérletváltási parancsok\n\n| Parancs | Leírás |\n| -------------------------------------- | ------------------------------------------------- |\n| `autohand experiments list` | Sorolja fel a helyi és távoli funkciók azonosítóit, a forrást, az életciklus szakaszt és az állapotot |\n| `autohand experiments status <feature>` | Mutasson egy szolgáltatáskapcsolót, konfigurációs elérési utat vagy távoli metaadatokat és állapotot |\n| `autohand experiments refresh` | Távoli funkciójelzők letöltése a Autohand API-ból |\n| `autohand experiments enable <feature>` | Konfigurációval támogatott szolgáltatáskapcsoló engedélyezése |\n| `autohand experiments disable <feature>` | A konfigurációval támogatott szolgáltatáskapcsoló letiltása |\n\nA távoli funkciójelzők lekérése innen: `/v1/feature-flags/evaluate`, gyorsítótár a `~/.autohand/feature-flags.json` címen történik, és az API által biztosított TTL lejárta után frissül. A `features.environment` segítségével válassza ki a távoli jelzőkörnyezetet, a `features.remoteOverrides` segítségével pedig a felhasználó által felülbírálható távoli jelzők helyi letiltásához.\n\nA `usage_v2` egy kísérleti funkciókapcsoló a `/usage` irányítópulthoz és a továbbfejlesztett `/status` Használat laphoz. Engedélyezze a következővel: `autohand experiments enable usage_v2`.\n\nA `token_usage_status` egy kísérleti funkciókapcsoló (konfigurációs útvonal `features.tokenUsageStatus`, alapértelmezés szerint kikapcsolva), amely a valós idejű tokenhasználatot mutatja a működő állapotsorban – kumulatív tokenek felfelé (`↑`) és lefelé (`↓`) plusz g kontextusban, cc. `↑15.7k ↓3.2k · context: 6.0% (15.7k/262.1k)`. A kontextusablak modellenként van feloldva az összes szolgáltatónál. Engedélyezze a következővel: `autohand experiments enable token_usage_status`.\n\n---\n\n## Slash parancsok\n\nAz Autohand perjel parancsok gazdag készletét kínálja interaktív használatra. A javaslatok megtekintéséhez írja be a `/` kódot a REPL-be.\n\n### Munkamenet-kezelés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/quit` | Kilépés az aktuális munkamenetből |\n| `/exit` | Kilépés az aktuális munkamenetből |\n| `/new` | Új beszélgetés indítása (memóriakivonattal) |\n| `/clear` | Tiszta beszélgetés automatikus memóriakivonással |\n| `/session` | Az aktuális munkamenet részleteinek megjelenítése |\n| `/sessions` | Korábbi munkamenetek listája |\n| `/resume` | Előző munkamenet folytatása |\n| `/history` | A munkamenet-előzmények böngészése oldalszámozással |\n| `/undo` | Git módosítások és utolsó forduló visszaállítása |\n| `/export` | Munkamenet exportálása markdown/JSON/HTML |\n| `/share` | Aktuális munkamenet megosztása |\n| `/status` | Munkamenet állapotának megjelenítése |\n| `/usage` | Modell, szolgáltató, kontextus és használati korlátok megjelenítése |\n\n### Modell és szolgáltató\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/model` | LLM-modell váltása vagy konfigurálása |\n| `/cc` | Kézi környezet tömörítése |\n\n### Projektbeállítás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/init` | Hozzon létre `AGENTS.md` fájlt az aktuális könyvtárban |\n| `/setup` | Futtassa a telepítővarázslót a Autohand | konfigurálásához\n| `/add-dir` | Könyvtárak hozzáadása a munkaterület hatóköréhez |\n\n### Ügynökök és csapatok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/agents` | Az elérhető alügynökök listája |\n| `/agents-new` | Hozzon létre egy új ügynököt a varázslón keresztül |\n| `/squad` | Nyissa meg/kezelje az önálló Autohand Squad futtatókörnyezetet |\n| `/team` | Csapat irányítása párhuzamos munkához |\n| `/tasks` | Feladatok kezelése csapatban |\n| `/message` | Üzenet küldése csapattársnak |\n\n### Készségek\n\n| Parancs | Leírás |\n| ----------------- | --------------------------------------------------- |\n| `/skills` | Készségek listája és kezelése |\n| `/skills-new` | Új készség létrehozása |\n| `/learn` | Tanulja meg és telepítse az ajánlott készségeket |\n\n### Memória és beállítások\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/memory` | Tárolt emlékek megtekintése és kezelése |\n| `/settings` | A Autohand beállításainak konfigurálása |\n| `/statusline` | A szerző állapotsor mezőinek konfigurálása |\n| `/experiments` | Kísérleti jellemzők kapcsolóinak váltása |\n| `/sync` | Beállítások szinkronizálása eszközök között |\n| `/import` | Importálhat munkameneteket, beállításokat, MCP-t, memóriát, készségeket és hook-okat a támogatott ügynökökről |\n\n### Engedélyek és akasztók\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/permissions`| Szerszámengedélyek kezelése |\n| `/hooks` | Életciklus-horogok kezelése |\n\n### Hitelesítés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/login` | Hitelesítés a Autohand API-val |\n| `/logout` | Kijelentkezés a Autohand fiókból |\n\n### Eszközök és segédprogramok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/search` | Keresés az interneten |\n| `/formatters` | Az elérhető kódformázók listája |\n| `/lint` | Sorolja fel a rendelkezésre álló kódsorokat |\n| `/completion` | Shell befejező szkriptek generálása |\n| `/plan` | Megvalósítási terv létrehozása |\n| `/review` | Kódellenőrzés végrehajtása |\n| `/pr-review` | Lehívási kérelem áttekintése |\n\n### IDE integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/ide` | A futó IDE észlelése és csatlakozása |\n\n### MCP (Model Context Protocol)\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/mcp` | Interaktív MCP-kiszolgálókezelő |\n\n### Automatizálás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/automode` | Indítsa el az autonóm kódolási módot |\n| `/repeat` | Ismétlődő munkák ütemezése |\n| `/yolo` | Yolo mód váltása (automatikus jóváhagyási eszközök) |\n\n### Böngészőintegráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/browser` | A Chrome böngésző integrációjának engedélyezése |\n\n### UI és kijelző\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/help` | Az elérhető perjel parancsok és tippek megjelenítése |\n| `/about` | Információk megjelenítése a következőről: Autohand |\n| `/theme` | Színtéma módosítása |\n| `/language` | Kijelző nyelvének módosítása |\n| `/feedback` | Visszajelzés küldése a Autohand csapatának |\n\n---\n\n## Rendszerprompt testreszabás\nAutohand lehetővé teszi az AI-ügynök által használt rendszerprompt testreszabását. Ez speciális munkafolyamatok, egyedi utasítások vagy más rendszerekkel való integráció esetén hasznos.\n\n### CLI zászlók\n\n| zászló | Leírás |\n| ------------------------------ | -------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerprompt |\n| `--append-sys-prompt <value>` | Tartalom hozzáfűzése az alapértelmezett rendszerprompthoz |\n\nMindkét zászló elfogadja a következőket:\n\n- **Inline karakterlánc**: Közvetlen szövegtartalom\n- **Fájl elérési útja**: A promptot tartalmazó fájl elérési útja (automatikusan észlelve)\n\n### Fájlútvonal észlelése\n\nEgy érték fájlútvonalként kezelendő, ha:\n\n- A következővel kezdődik: `./`, `../`, `/` vagy `~/`\n- Windows meghajtóbetűjellel kezdődik (pl. `C:\\`)\n- A következővel végződik: `.txt`, `.md` vagy `.prompt`\n- Útleválasztókat tartalmaz szóközök nélkül\n\nEllenkező esetben a rendszer soron belüli karakterláncként kezeli.\n\n### `--sys-prompt` (Teljes csere)\n\nHa rendelkezésre áll, ez **teljesen lecseréli** az alapértelmezett rendszerpromptot. Az ügynök NEM tölti be:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n```bash\n# Inline string\nautohand --sys-prompt \"You are a Python expert. Be concise.\" --prompt \"Write hello world\"\n\n# From file\nautohand --sys-prompt ./custom-prompt.txt --prompt \"Explain this code\"\n\n# Home directory\nautohand --sys-prompt ~/.autohand/prompts/python-expert.md --prompt \"Debug this function\"\n```\n**Példa egyéni prompt fájlra (`custom-prompt.txt`):**\n```\nYou are a specialized Python debugging assistant.\n\nRules:\n- Focus only on Python code\n- Always explain the root cause\n- Suggest fixes with code examples\n- Be concise and direct\n```\n### `--append-sys-prompt` (Hozzáadás az alapértelmezetthez)\n\nHa rendelkezésre áll, ez **hozzáfűzi** a tartalmat a teljes alapértelmezett rendszerprompthoz. Az ügynök továbbra is betölti:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n\nA csatolt tartalom a legvégére kerül hozzáadásra.\n```bash\n# Inline string\nautohand --append-sys-prompt \"Always use TypeScript instead of JavaScript\" --prompt \"Create a function\"\n\n# From file\nautohand --append-sys-prompt ./team-guidelines.md --prompt \"Add error handling\"\n```\n**Példa hozzáfűző fájl (`team-guidelines.md`):**\n```\n## Team Guidelines\n\n- Use 2-space indentation\n- Prefer functional patterns\n- Add JSDoc comments to public APIs\n- Run tests before committing\n```\n### Elsőbbség\n\nHa mindkét zászló rendelkezésre áll:\n\n1. A `--sys-prompt` teljes elsőbbséget élvez\n2. A `--append-sys-prompt` figyelmen kívül hagyva\n```bash\n# --append-sys-prompt is ignored in this case\nautohand --sys-prompt \"Custom only\" --append-sys-prompt \"This is ignored\"\n```\n### Használati esetek\n\n| Használati eset | Ajánlott zászló |\n| ---------------------------------- | ---------------------- |\n| Egyedi ügynök személye | `--sys-prompt` |\n| Minimális utasítások | `--sys-prompt` |\n| Csapatirányelvek hozzáadása | `--append-sys-prompt` |\n| Projektkonvenciók hozzáadása | `--append-sys-prompt` |\n| Integráció külső rendszerekkel | `--sys-prompt` |\n| Speciális hibakeresés | `--sys-prompt` |\n\n### Hibakezelés\n\n| Forgatókönyv | Viselkedés |\n| ------------------ | ------------------------- |\n| Üres érték | Hiba |\n| A fájl nem található | Soron belüli karakterláncként kezelve |\n| Üres fájl | Hiba |\n| Fájl > 1 MB | Hiba |\n| Engedély megtagadva | Hiba |\n| Címtár elérési útja | Hiba |\n\n### Példák\n```bash\n# Python expert mode\nautohand --sys-prompt \"You are a Python expert. Only write Python code.\" \\\n --prompt \"Create a web scraper\"\n\n# TypeScript enforcement\nautohand --append-sys-prompt \"Always use TypeScript, never JavaScript.\" \\\n --prompt \"Create a REST API\"\n\n# CI/CD integration (non-interactive)\nautohand --sys-prompt ./ci-prompt.txt \\\n --prompt \"Fix the failing tests\" \\\n --unrestricted \\\n --patch\n\n# Custom team workflow\nautohand --append-sys-prompt ~/.company/coding-standards.md \\\n --prompt \"Refactor this module\"\n```\n---\n\n## Több könyvtár támogatása\n\nAz Autohand a fő munkaterületen kívül több könyvtárral is működhet. Ez akkor hasznos, ha a projektben különböző könyvtárakban vannak függőségek, megosztott könyvtárak vagy kapcsolódó projektek.\n\n### CLI zászló\n\nA `--add-dir` használatával további könyvtárakat adhat hozzá (többször is használható):\n```bash\n# Add a single additional directory\nautohand --add-dir /path/to/shared-lib\n\n# Add multiple directories\nautohand --add-dir /path/to/lib1 --add-dir /path/to/lib2\n\n# With unrestricted mode (auto-approve writes to all directories)\nautohand --add-dir /path/to/shared-lib --unrestricted\n```\n### Interaktív parancs\n\n`/add-dir` használata interaktív munkamenet során:\n```\n/add-dir # Show current directories\n/add-dir /path/to/dir # Add a new directory\n```\n### Biztonsági korlátozások\n\nA következő könyvtárak nem adhatók hozzá:\n\n- Saját könyvtár (`~` vagy `$HOME`)\n- Gyökérkönyvtár (`/`)\n- Rendszerkönyvtárak (`/etc`, `/var`, `/usr`, `/bin`, `/sbin`)\n- Windows rendszerkönyvtárak (`C:\\Windows`, `C:\\Program Files`)\n- Windows felhasználói könyvtárak (`C:\\Users\\username`)\n- WSL Windows-csatlakozások (`/mnt/c`, `/mnt/c/Windows`)\n"}, "a9f1c9cff4457d787432d0242bcb5a77ca18be3c": {"t": 1785764180.7430074, "n": 86830, "h": "34f44d677e07f97d", "c": "# Autohand Konfigurációs referencia\n\nTeljes referencia az összes konfigurációs beállításhoz itt: `~/.autohand/config.json` (vagy `.toml`/`.yaml`/`.yml`).\n\n> **Tipp:** A legtöbb alábbi beállítás interaktívan módosítható a `/settings` paranccsal a fájl manuális szerkesztése helyett.\n\nLokalizált referenciák:\n\n- [English](./config-reference.md)\n- [日本語](./config-reference_ja.md)\n- [简体中文](./config-reference_zh.md)\n- [繁體中文](./config-reference_zh-tw.md)\n- [한국어](./config-reference_ko.md)\n- [Deutsch](./config-reference_de.md)\n- [Español](./config-reference_es.md)\n- [Français](./config-reference_fr.md)\n- [Italiano](./config-reference_it.md)\n- [Polski](./config-reference_pl.md)\n- [Русский](./config-reference_ru.md)\n- [Português (Brasil)](./config-reference_ptBR.md)\n- [Türkçe](./config-reference_tr.md)\n- [Čeština](./config-reference_cs.md)\n- [Magyar](./config-reference_hu.md)\n- [हिन्दी](./config-reference_hi.md)\n- [Bahasa Indonesia](./config-reference_id.md)\n\n## Tartalomjegyzék\n\n- [A konfigurációs fájl helye](#configuration-file-location)\n- [Környezeti változók](#environment-variables)\n- [Csupasz mód](#bare-mode)\n- [Szolgáltatói beállítások](#provider-settings)\n- [Munkaterület beállításai](#workspace-settings)\n- [UI beállítások](#ui-settings)\n- [Ügynökbeállítások](#agent-settings)\n- [Engedélyek beállításai](#permissions-settings)\n- [Javítási mód](#patch-mode)\n- [Hálózati beállítások](#network-settings)\n- [Telemetriai beállítások](#telemetry-settings)\n- [Külső ügynökök](#external-agents)\n- [Skills System](#skills-system)\n- [API beállítások](#api-settings)\n- [Authentication Settings](#authentication-settings)\n- [Közösségi készségek beállításai](#community-skills-settings)\n- [Megosztási beállítások](#share-settings)\n- [Beállítások szinkronizálása](#settings-sync)\n- [Hook beállításai](#hooks-settings)\n- [MCP beállítások](#mcp-settings)\n- [Chrome-bővítmény beállításai](#chrome-extension-settings)\n- [Teljes példa](#complete-example)\n\n---\n\n## Konfigurációs fájl helye\n\nAutohand a következő sorrendben keresi a konfigurációt:\n\n1. `AUTOHAND_CONFIG` környezeti változó (egyéni elérési út)\n2. `~/.autohand/config.toml`\n3. `~/.autohand/config.yaml`\n4. `~/.autohand/config.yml`\n5. `~/.autohand/config.json` (alapértelmezett)\n\nAz alapkönyvtárat is felülírhatja:\n```bash\nexport AUTOHAND_HOME=/custom/path # Changes ~/.autohand to /custom/path\n```\n---\n\n## Környezeti változók\n\n| Változó | Leírás | Példa |\n| --------------------------------------- | ------------------------------------------------- | --------------------------------- |\n| `AUTOHAND_HOME` | Alapkönyvtár az összes Autohand adathoz | `/custom/path` |\n| `AUTOHAND_CONFIG` | Egyéni konfigurációs fájl elérési útja | `/path/to/config.toml` |\n| `AUTOHAND_API_URL` | API-végpont (felülbírálja a konfigurációt) | `https://api.autohand.ai` |\n| `AUTOHAND_SECRET` | Vállalat/csapat titkos kulcsa | `sk-xxx` |\n| `AUTOHAND_PERMISSION_CALLBACK_URL` | Az engedély visszahívásának URL-je (kísérleti) | `http://localhost:3000/callback` |\n| `AUTOHAND_PERMISSION_CALLBACK_TIMEOUT` | Az engedély-visszahívás időtúllépése ms-ban | `5000` |\n| `AUTOHAND_NON_INTERACTIVE` | Futtatás nem interaktív módban | `1` |\n| `AUTOHAND_YES` | Minden felszólítás automatikus megerősítése | `1` |\n| `AUTOHAND_NO_BANNER` | Indítási szalaghirdetés letiltása | `1` |\n| `AUTOHAND_STREAM_TOOL_OUTPUT` | Az eszköz kimenetének streamelése valós időben | `1` |\n| `AUTOHAND_DEBUG` | Hibakeresési naplózás engedélyezése | `1` |\n| `AUTOHAND_THINKING_LEVEL` | Érvelési mélységszint beállítása | `normal` |\n| `AUTOHAND_CLIENT_NAME` | Kliens/szerkesztő azonosító (ACP kiterjesztések által beállítva) | `zed` |\n| `AUTOHAND_CLIENT_VERSION` | Kliens verzió (az ACP-bővítmények által beállított) | `0.169.0` |\n| `AUTOHAND_CODE` | Környezetérzékelési jelző (automatikusan beállítva) | `1` |\n| `AUTOHAND_CODE_SIMPLE` | A csupasz mód engedélyezése a `--bare` | átadása nélkül `1` |\n\n### Gondolkodási szint\n\nA `AUTOHAND_THINKING_LEVEL` környezeti változó szabályozza a modell által használt érvelés mélységét:\n\n| Érték | Leírás |\n| ---------- | --------------------------------------------------------------------- |\n| `none` | Közvetlen válaszok látható indoklás nélkül |\n| `normal` | Szabványos érvelési mélység (alapértelmezett) |\n| `extended` | Mély érvelés összetett feladatokhoz, részletesebb gondolkodási folyamatot mutat |\n\nEzt általában az ACP-kliens-bővítmények (például a Zed) állítják be a konfigurációs legördülő menüben.\n```bash\n# Example: Use extended thinking for complex tasks\nAUTOHAND_THINKING_LEVEL=extended autohand --prompt \"refactor this module\"\n```\n---\n\n## Csupasz mód\n\nA csupasz mód a Autohand csak kifejezetten kért kontextus- és futásidejű integrációkkal indul. Engedélyezze a következők egyikével:\n```bash\nautohand --bare\nAUTOHAND_CODE_SIMPLE=1 autohand\n```\nA `--bare` átadásakor a Autohand a `AUTOHAND_CODE_SIMPLE=1` értéket is beállítja a futó folyamathoz.\n\nA csupasz mód letiltja az automatikus indítást és az interaktív integrációkat:\n\n- horgok és horog értesítések\n- LSP indítás\n- plugin szinkronizálás, bővítmény automatikus betöltése és meta-eszköz automatikus betöltése\n- hozzárendelés, telemetria, munkamenet-szinkronizálás, automatikus jelentéskészítés és háttérpingek\n- automatikus memória/munkamenet bootstrap kontextus\n- háttérkérdések, frissítés-ellenőrzések, funkciójelző-lekérések és modell-metaadatok előzetes letöltése\n- kulcstartó és böngésző OAuth-hitelesítési tartalék\n- automatikus `AGENTS.md` és szolgáltatói utasítás keresés\n- minden perjel parancs, beleértve a parancssorba beírt csupasz `/`\n\nA perjel alakú abszolút fájlútvonalakat, például a `/Users/alex/project/file.ts`, továbbra is normál prompt szövegként kezeli a rendszer. A parancs alakú perjel bevitel, például `/help`, `/model` vagy `/mcp`, a `Slash commands are disabled in bare mode.` kódot írja ki, és nem hajtódik végre.\n\nA csupasz módban történő hitelesítés csak explicit. A Autohand először a következőt olvassa: `AUTOHAND_API_KEY`, majd `auth.apiKeyHelper`, ha be van állítva. Nem olvassa be a kulcstartó hitelesítő adatait, és nem indítja el az OAuth/böngésző bejelentkezést. A külső szolgáltatók továbbra is a szolgáltatóspecifikus API-kulcsokat és konfigurációkat használják.\n\nEzek az explicit bemenetek csupasz módban is elérhetők:\n\n| Bemenet | Leírás |\n| ------------------------------ | -------------------------------------------------------------------------- |\n| `--system-prompt <value>` | Cserélje ki a rendszerprompt szövegközi szöveggel vagy elérési út-szerű értékkel |\n| `--system-prompt-file <path>` | Cserélje ki a rendszerpromptot a fájltartalommal |\n| `--append-system-prompt <value>` | Szövegközi szöveg vagy elérési út-szerű érték hozzáfűzése a | rendszerprompthoz\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--add-dir <path...>` | Explicit könyvtárak hozzáadása a munkaterület hatóköréhez |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--settings` | Nyissa meg a beállításokat közvetlenül a CLI jelzőből |\n| `--config <path>` | Használjon explicit Autohand konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n---\n\n## Szolgáltatói beállítások\n\n### `provider`\n\nAktív LLM szolgáltató használható.\n\n| Érték | Leírás |\n| -------------- | ----------------------------- |\n| `\"openrouter\"` | OpenRouter API (alapértelmezett) |\n| `\"ollama\"` | Helyi Ollama példány |\n| `\"llamacpp\"` | Helyi llama.cpp szerver |\n| `\"openai\"` | OpenAI API közvetlenül |\n| `\"mlx\"` | MLX az Apple Siliconon (helyi) |\n| `\"llmgateway\"` | LLM Gateway egyesített API |\n| `\"deepseek\"` | DeepSeek API |\n| `\"zai\"` | Z.ai GLM API |\n| `\"sakana\"` | Sakana.AI Fugu API |\n| `\"bedrock\"` | AWS alapkőzet |\n| `\"custom:<id>\"` | Felhasználó által meghatározott OpenAI-kompatibilis szolgáltató a következőtől: `customProviders` |\n\n### `openrouter`\n\nOpenRouter szolgáltató konfigurációja.\n```json\n{\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-xxx\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\",\n \"contextWindow\": 262144\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | --------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön OpenRouter API kulcsa |\n| `baseUrl` | húr | Nem | `https://openrouter.ai/api/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellazonosító (pl. `your-modelcard-id-here`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand kitölti ezt az OpenRouterből, ha ismert. |\n\n### `zai`\n\nZ.ai szolgáltató konfigurációja.\n```json\n{\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"baseUrl\": \"https://api.z.ai/api/paas/v4\",\n \"model\": \"glm-5.2\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | -------------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön Z.ai API-kulcsa |\n| `baseUrl` | húr | Nem | `https://api.z.ai/api/paas/v4` | API-végpont |\n| `model` | húr | Igen | `glm-5.2` | Modellazonosító, például `glm-5.2`, `glm-5.1` vagy `glm-4.5` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. A Autohand 1M-re következtet a GLM-5.2-nél és 200K-ra a GLM-5.1-nél. |\n\n### `sakana`\n\nSakana.AI szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.sakana.ai/v1`-t használja alap URL-ként.\n```json\n{\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------ | ------------------------------------------------------------------ |\n| `apiKey` | húr | Igen | - | Az Ön Sakana API kulcsa |\n| `baseUrl` | húr | Nem | `https://api.sakana.ai/v1` | API-végpont |\n| `model` | húr | Igen | `fugu` | Modellazonosító, például `fugu` vagy `fugu-ultra` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand 1M-re következtet a Fugu modelleknél. |\n\n### `customProviders`\n\nAz egyéni szolgáltatók lehetővé teszik a felhasználók számára, hogy OpenAI-kompatibilis végpontot hozzanak létre kódmódosítás vagy új csomagolt szolgáltató nélkül. Adja hozzá a szolgáltatót a `customProviders` alatt, majd válassza ki a `provider: \"custom:<id>\"` kóddal. Ugyanez a folyamat elérhető a `/model` **Új szolgáltatóval**. A telepítés során a Autohand a szolgáltató mentése előtt ellenőrzi az alap URL-t, a hitelesítést és a kiválasztott modellt az OpenAI-kompatibilis `/models` végponton keresztül.\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\",\n \"models\": [\n {\n \"id\": \"acme-code-1\",\n \"label\": \"Acme Code 1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n ]\n }\n }\n}\n```\nAzon helyi OpenAI-kompatibilis szervereknél, amelyek nem igényelnek hitelesítést, állítsa a `apiKeyRequired` értékét `false` értékre, és hagyja ki a `apiKey` értéket.\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------------ | ------- | -------- | ------- | ----------- |\n| `id` | húr | Igen | - | Stabil szolgáltatói azonosító. Meg kell egyeznie az objektumkulccsal, és a következőképpen van kiválasztva: `custom:<id>`. |\n| `displayName` | húr | Igen | - | A `/model` és a szolgáltató beállításai között látható név. |\n| `apiFormat` | húr | Igen | - | A következőnek kell lennie: `openai-compatible`. |\n| `baseUrl` | húr | Igen | - | Végpont gyökér, például `https://api.example.com/v1`. Autohand ellenőrzi a `/models` kódot, és felhívja a `/chat/completions` kódot. |\n| `apiKey` | húr | Feltételes | - | Adathordozó token a tárolt végpontokhoz. Kötelező, ha a `apiKeyRequired` igaz. |\n| `apiKeyRequired` | logikai | Nem | `true` | Állítsa be a false értéket a helyi vagy már hitelesített átjárókhoz. |\n| `model` | húr | Igen | - | Aktív modell azonosító. |\n| `contextWindow` | szám | Nem | Auto | Pontos kontextusablak a token-költségvetéshez, állapothoz, telemetriához és szinkronizálási metaadatokhoz. |\n| `reasoningEffort` | húr | Nem | - | Opcionális `none`, `low`, `medium`, `high` vagy `xhigh`. `reasoning_effort` néven küldve egyéni OpenAI-kompatibilis kérésekhez. |\n| `models` | tömb | Nem | - | Opcionális modellválasztó bejegyzések modellenkénti kontextussal és érvelési metaadatokkal. |\n\n### `ollama`\n\nOllama szolgáltató konfigurációja.\n```json\n{\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"port\": 11434,\n \"model\": \"llama3.2\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------- | ------------------------------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:11434` | Ollama szerver URL |\n| `port` | szám | Nem | `11434` | Szerverport (a baseUrl alternatívája) |\n| `model` | húr | Igen | - | Modellnév (pl. `llama3.2`, `codellama`) |\n\n### `llamacpp`\n\nllama.cpp szerver konfigurációja.\n```json\n{\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"default\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | llama.cpp szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | Modellazonosító |\n\n### `openai`\n\nOpenAI API konfiguráció.\n```json\n{\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-xxx\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\nAz OpenAI a Autohand beépített OpenAI bejelentkezési folyamatán keresztül is használhatja ChatGPT-előfizetését:\n```json\n{\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"contextWindow\": 1050000,\n \"model\": \"gpt-5.4\",\n \"chatgptAuth\": {\n \"accessToken\": \"...\",\n \"refreshToken\": \"...\",\n \"accountId\": \"...\"\n }\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | ----------------------- | ---------------------------- | -------------------------------------------------------------------------- |\n| `authMode` | húr | Nem | `api-key` | Hitelesítési mód: `api-key` vagy `chatgpt` |\n| `apiKey` | húr | Igen a `api-key` módhoz | - | OpenAI API kulcs |\n| `baseUrl` | húr | Nem | `https://api.openai.com/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-5.4`, `gpt-5.4-mini`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Állítsa be az elavult helyi feltételezések felülbírálásához. |\n| `chatgptAuth` | tárgy | Igen a `chatgpt` módhoz | - | Tárolt ChatGPT/Codex hitelesítési tokenek és fiókazonosító |\n\n### `mlx`\n\nMLX szolgáltató Apple Silicon Mac gépekhez (helyi következtetés).\n```json\n{\n \"mlx\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | MLX szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | MLX modell azonosító |\n\n### `llmgateway`\n\nLLM Gateway egységes API konfiguráció. Hozzáférést biztosít több LLM-szolgáltatóhoz egyetlen API-n keresztül.\n```json\n{\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"baseUrl\": \"https://api.llmgateway.io/v1\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------------- | ---------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | LLM Gateway API kulcs |\n| `baseUrl` | húr | Nem | `https://api.llmgateway.io/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-4o`, `claude-3-5-sonnet-20241022`) |\n\n**API-kulcs beszerzése:**\nKeresse fel a [llmgateway.io/dashboard](https://llmgateway.io/dashboard) webhelyet fiók létrehozásához és API-kulcsának beszerzéséhez.\n\n**Támogatott modellek:**\nAz LLM Gateway több szolgáltató modelljét támogatja, többek között:\n\n- OpenAI: `gpt-4o`, `gpt-4o-mini`, `gpt-4-turbo`\n`claude-3-5-haiku-20241022`\n- Google: `gemini-1.5-pro`, `gemini-1.5-flash`\n\n### `deepseek`\n\nDeepSeek szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.deepseek.com`-t használja alap URL-ként.\n```json\n{\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"baseUrl\": \"https://api.deepseek.com\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | --------------------------- | --------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | DeepSeek API kulcs |\n| `baseUrl` | húr | Nem | `https://api.deepseek.com` | API-végpont |\n| `model` | húr | Igen | - | Modellnév, például `deepseek-v4-flash` vagy `deepseek-v4-pro` |\n\n### `bedrock`\n\nAWS Bedrock szolgáltató konfigurációja. `converse` az alapértelmezett mód, és az AWS SDK hitelesítési láncot használja. Az OpenAI-kompatibilis módok Bedrock API-kulcsokat és Bedrock OpenAI-kompatibilis végpontokat használnak.\n```json\n{\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------- | ------ | -------- | ------- | ----------- |\n| `model` | húr | Igen | - | Alapkőzetmodell-azonosító, következtetési profilazonosító vagy ARN |\n| `region` | húr | Igen | `AWS_REGION`, majd `AWS_DEFAULT_REGION`, majd `us-east-1` a beállításban | AWS régió |\n| `apiMode` | húr | Nem | `converse` | `converse`, `openai-chat` vagy `openai-responses` |\n| `authMode` | húr | Nem | `aws-credentials` `converse`, `bedrock-api-key` OpenAI-kompatibilis módokhoz | Hitelesítési mód |\n| `profile` | húr | Nem | - | Opcionális AWS-profil a hitelesítő adatok láncos hitelesítéséhez |\n| `endpoint` | húr | Nem | Módból és régióból származtatva | Egyéni/privát Bedrock végpont |\n| `apiKey` | húr | Igen OpenAI-kompatibilis módokhoz | - | Bedrock API kulcs. Ne használjon OpenAI API-kulcsokat. |\n\nFuttassa a `aws configure sso` kódot, vagy állítsa be a `AWS_PROFILE=enterprise-prod autohand` értéket a profilalapú AWS-hitelesítéshez. Az IAM-szerepkört, a tárolót és a példány metaadat-hitelesítő adatait az AWS SDK támogatja. Modell használata előtt engedélyezze a modellelérést az AWS-konzolon.\n\n---\n\n## Munkaterület beállításai\n```json\n{\n \"workspace\": {\n \"defaultRoot\": \"/path/to/projects\",\n \"allowDangerousOps\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------------------ | -------------------------------------------------- |\n| `defaultRoot` | húr | Aktuális címtár | Alapértelmezett munkaterület, ha nincs megadva |\n| `allowDangerousOps` | logikai | `false` | Pusztító műveletek engedélyezése megerősítés nélkül |\n\n### Munkahelyi biztonság\n\nAutohand automatikusan blokkolja a működést a veszélyes könyvtárakban, hogy megelőzze a véletlen károsodást:\n\n- **Fájlrendszer gyökerei** (`/`, `C:\\`, `D:\\` stb.)\n- **Házikönyvtárak** (`~`, `/Users/<user>`, `/home/<user>`, `C:\\Users\\<user>`)\n- **Rendszerkönyvtárak** (`/etc`, `/var`, `/System`, `C:\\Windows` stb.)\n- **WSL Windows-csatlakozások** (`/mnt/c`, `/mnt/c/Users/<user>`)\n\nEzt az ellenőrzést nem lehet megkerülni. Ha egy veszélyes könyvtárban próbálja meg futtatni a autohand alkalmazást, hibaüzenetet fog látni, és meg kell adnia egy biztonságos projektkönyvtárat.\n```bash\n# This will be blocked\ncd ~ && autohand\n# Error: Unsafe Workspace Directory\n\n# This works\ncd ~/projects/my-app && autohand\n```\nA részletekért lásd a [Workspace Safety](./workspace-safety.md) részt.\n\n---\n\n## UI beállítások\n```json\n{\n \"ui\": {\n \"theme\": \"dark\",\n \"customThemes\": {\n \"company\": {\n \"colors\": {\n \"accent\": \"#7c3aed\",\n \"success\": \"#22c55e\"\n }\n }\n },\n \"autoConfirm\": false,\n \"readFileCharLimit\": 300,\n \"silentToolOutput\": false,\n \"activityVerbs\": [\"Compiling\", \"Parsing\", \"Reviewing\"],\n \"activityVerbsEnabled\": true,\n \"activitySymbol\": \"✳\",\n \"statusLine\": {\n \"showProviderModel\": true,\n \"showContext\": true,\n \"showCommandHint\": true,\n \"showPullRequest\": true,\n \"showSessionLines\": false,\n \"showQueue\": true,\n \"showActiveStatus\": true,\n \"showActiveMetrics\": true,\n \"showCancelHint\": true\n },\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ----------------------------- | ------ | ------- | ---------------------------------------------------------------------------------------------- |\n| `theme` | húr | `\"dark\"` | Színes téma a terminál kimenetéhez. A beépítettek a következők: `dark`, `light`, `dracula`, `sandy`, `tui`, `github-dark`, `cappadocia`, CODE és ___8__ `australia`. A régi `turkey` és `brazil` értékek továbbra is betöltődnek álnévként. |\n| `customThemes` | tárgy | `{}` | Soron belüli egyéni témadefiníciók a téma nevével. A használatához állítsa be a `theme` kulcsot ugyanarra a kulcsra. |\n| `autoConfirm` | logikai | `false` | A biztonságos működés érdekében hagyja ki a megerősítő felszólításokat |\n| `readFileCharLimit` | szám | `300` | Maximum megjeleníthető karakter az olvasási/kereső eszköz kimenetéből (a teljes tartalom továbbra is elküldésre kerül a modellnek) |\n| `silentToolOutput` | logikai | `false` | A szerszám kimeneti blokkjainak elrejtése a terminálban, miközben továbbra is megőrzi a modell/munkamenet szerszámeredményeit |\n| `activityVerbs` | karakterlánc vagy karakterlánc[] | beépített medence | Egyéni tevékenység ige vagy igekészlet a munkajelzőhöz, `Verb...` formátumban |\n| `activityVerbsEnabled` | logikai | `true` | Forgó tevékenység igék megjelenítése, például `Compiling...`, miközben az ügynök dolgozik |\n| `activitySymbol` | húr | `\"✳\"` | A tevékenységi ige előtt látható szimbólum a tevékenységmutató kimenetében |\n| `statusLine.showProviderModel` | logikai | `true` | Jelenítse meg az aktív szolgáltatót és modellt a szerző állapotsorában |\n| `statusLine.showContext` | logikai | `true` | Jelenítse meg a kontextus százalékos arányát a szerző állapotsorában |\n| `statusLine.showCommandHint` | logikai | `true` | Parancs, említés, készség és terminálbejegyzési tippek megjelenítése a szerző állapotsorában |\n| `statusLine.showPullRequest` | logikai | `true` | Mutassa meg a kapcsolódó lekérési kérés számát, vagy `PR #123`, ha nincs PR társítva |\n| `statusLine.showSessionLines` | logikai | `false` | Az aktuális munkamenet során hozzáadott és eltávolított sorok megjelenítése |\n| `statusLine.showQueue` | logikai | `true` | A sorba állított kérések számának megjelenítése az állapotsorban |\n| `statusLine.showActiveStatus` | logikai | `true` | Az aktív forduló állapotszövege megjelenítése, miközben az ügynök dolgozik |\n| `statusLine.showActiveMetrics` | logikai | `true` | Az eltelt idő és a token mérőszámainak megjelenítése, amíg az ügynök dolgozik |\n| `statusLine.showCancelHint` | logikai | `true` | Az Esc megszakítási tipp megjelenítése, miközben az ügynök dolgozik |\n| `completionReportEnabled` | logikai | `true` | Kérje meg a modellt, hogy a végrehajtott műveleti körök után tartalmazzon egy tömör befejezési jelentést |\n| `showCompletionNotification` | logikai | `true` | Rendszerértesítés megjelenítése a feladat befejezésekor |\n| `showThinking` | logikai | `true` | Az LLM érvelésének/gondolati folyamatának megjelenítése |\n| `terminalBell` | logikai | `true` | Csengessen terminálcsengőt, amikor a feladat befejeződött (jelvényt mutat a terminálfülön/dokkon) |\n| `checkForUpdates` | logikai | `true` | CLI frissítések keresése indításkor |\n| `updateCheckInterval` | szám | `24` | Órák a frissítési ellenőrzések között (a gyorsítótárazott eredményt az intervallumon belül használja) |\n\nAz egyéni témák bármely szemantikai színtokent felülírhatnak. A hiányzó tokenek a sötét témából származnak:\n```json\n{\n \"ui\": {\n \"theme\": \"company\",\n \"customThemes\": {\n \"company\": {\n \"vars\": {\n \"brand\": \"#7c3aed\",\n \"brandSoft\": \"#a78bfa\"\n },\n \"colors\": {\n \"accent\": \"brand\",\n \"borderAccent\": \"brandSoft\",\n \"mdHeading\": \"brand\"\n }\n }\n }\n }\n}\n```\nMegjegyzés: A `readFileCharLimit` és `silentToolOutput` csak a terminál megjelenítését érinti. A teljes tartalom továbbra is elküldésre kerül a modellnek, és eszközüzenetekben tárolódik.\n\nA néma eszközkimenetet a fájl szerkesztése nélkül is átkapcsolhatja:\n```bash\nautohand config set silent_tool_output true\nautohand config set silent_tool_output false\n```\nA forgó tevékenység igék között válthat a fájl szerkesztése nélkül:\n```bash\nautohand config set verbs activity true\nautohand config set verbs activity false\n```\nSzabja testre az igéket a konfigurációs fájlban, ha rögzített állapotcímkét vagy kis projektspecifikus elforgatást szeretne:\n```json\n{\n \"ui\": {\n \"activityVerbs\": \"Compiling\"\n }\n}\n```\n\n```json\n{\n \"ui\": {\n \"activityVerbs\": [\"Indexing\", \"Reviewing\", \"Testing\"],\n \"activitySymbol\": \">\"\n }\n}\n```\nA `activityVerbs` egyetlen karakterláncot vagy nem üres karakterlánc-tömböt fogad el. Ha a `activityVerbsEnabled` értéke `false`, a Autohand visszaesik a `Working...` értékre, ahelyett, hogy az egyéni vagy beépített igék között forogna.\n\nA fájl szerkesztése nélkül válthat a befejezési jelentések között, beleértve a strukturált `SITREP` promptot is:\n```bash\nautohand config set sitrep true\nautohand config set sitrep false\n```\n### Terminal Bell\n\nHa a `terminalBell` engedélyezve van (alapértelmezett), a Autohand megszólal a terminál csengőjén (`\\x07`), amikor egy feladat befejeződik. Ez kiváltja:\n\n- **Jelvény a terminál lapon** - Vizuális jelzőt mutat, hogy a munka elkészült\n- **Dokk ikon ugrál** - Felhívja a figyelmet, ha a terminál a háttérben van (macOS)\n- **Hang** - Ha a terminál hangjai engedélyezve vannak a terminál beállításaiban\n\nTerminálspecifikus beállítások:\n\n- **macOS terminál**: Beállítások > Profilok > Speciális > Bell (vizuális/hallható)\n- **iTerm2**: Beállítások > Profilok > Terminál > Értesítések\n- **VS Code Terminal**: Beállítások > Terminál > Integrált: Bell engedélyezése\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"terminalBell\": false\n }\n}\n```\n### Ink Renderer\n\nA Autohand alapértelmezés szerint az Ink 7 + React 19 renderert használja az interaktív terminálokhoz. A régi `ui.useInkRenderer` konfigurációs mezőt figyelmen kívül hagyja, így a régi konfigurációs fájlok nem kényszeríthetik a sima terminálszerkesztőt. A tinta a következőket nyújtja:\n\n- **Recgésmentes kimenet**: Minden UI-frissítés kötegelt React-egyeztetésen keresztül történik\n- **Munkasor funkció**: Írja be az utasításokat, amíg az ügynök dolgozik\n- **Jobb bemenetkezelés**: Nincsenek ütközések a readline-kezelők között\n- **Összeállítható felhasználói felület**: A jövőbeni fejlett felhasználói felületi funkciók alapja\n\nVészhelyzeti tartalék a terminál kompatibilitás érdekében:\n```bash\nAUTOHAND_LEGACY_UI=1 autohand\n```\nMegjegyzés: Ez a funkció kísérleti jellegű, és lehetnek szélső esetek. Az alapértelmezett ora-alapú felhasználói felület stabil és teljesen működőképes marad.\n\n### Frissítési ellenőrzés\n\nHa a `checkForUpdates` engedélyezve van (alapértelmezett), a Autohand indításkor ellenőrzi az új kiadásokat:\n```\n> Autohand v0.6.8 (abc1234) ✓ Up to date\n```\nHa elérhető frissítés:\n```\n> Autohand v0.6.7 (abc1234) ⬆ Update available: v0.6.8\n ↳ Run: curl -fsSL https://autohand.ai/install.sh | sh\n```\nHogyan működik:\n\n- Lekéri a GitHub API legújabb kiadását\n- A gyorsítótárak eredménye `~/.autohand/version-check.json`\n- Csak egyszer ellenőrzi `updateCheckInterval` óránként (alapértelmezett: 24)\n- Nem blokkoló: az indítás akkor is folytatódik, ha az ellenőrzés sikertelen\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"checkForUpdates\": false\n }\n}\n```\nVagy környezeti változón keresztül:\n```bash\nexport AUTOHAND_SKIP_UPDATE_CHECK=1\n```\n---\n\n## Ügynök beállításai\n\nAz ügynök viselkedésének és iterációs korlátainak szabályozása.\n```json\n{\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"autoMemory\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------- | ------------------------------------------------------------------------------ |\n| `maxIterations` | szám | `100` | Maximális szerszámiterációk felhasználói kérésenként a leállítás előtt |\n| `enableRequestQueue` | logikai | `true` | Lehetővé teszi a felhasználók számára, hogy kéréseket írjanak be és sorba állítsanak, miközben az ügynök dolgozik |\n| `toolSelectionCache` | logikai | `true` | Gyorsítótárazza a körönkénti szerszámséma helyi kiválasztását az egyenértékű szerszámkiválasztási bemenethez |\n| `autoMemory` | logikai | `true` | Tartós felhasználói/projektmemóriák kibontása és mentése sikeres interaktív fordulatok után |\n| `idleLogoutEnabled` | logikai | `true` | Jelentkezzen ki a hitelesített interaktív munkamenetekből az üresjárati időtúllépés után |\n| `idleTimeoutMs` | szám | `3600000` | Az inaktivitás ezredmásodpercei a hitelesített munkamenet kijelentkeztetése előtt (60 perc) |\n| `debug` | logikai | `false` | Részletes hibakeresési kimenet engedélyezése (naplózza az ügynök belső állapotát az stderr-be) |\n\n### Eszközséma kiválasztása\n\nA Autohand nem küld el minden teljes eszközsémát minden LLM-kérelemnél. A rendszerprompt tartalmaz egy kompakt eszközképesség-katalógust, és minden kérés csak egy kis konkrét sémát tesz közzé, amely a következők közül választható ki:\n\n- Az alapvető felderítési eszközök, például `tool_search`, `read_file`, `fff_find` és `fff_grep`\n- Szándékhoz illő eszközök szerkesztési, ellenőrzési, git, böngésző, web, függőségi vagy projektkövetési munkákhoz\n- A legutóbbi `tool_search` hívások során kért vagy kifejezetten név szerint megemlített eszközök\n\nEzzel elkerülhető a nagy előzetes kontextusköltség, ha az összes eszközséma elküldése a felhasználói szándék ismertsége előtt felmerül. `toolSelectionCache` csak a helyi választó gyorsítótárát vezérli az egyenértékű fordulatokhoz; nem hajt végre felhasználói előtti LLM-bemelegítést, és nem kényszerít ki nagy gyorsítótárazott prompt előtagot.\n\nA helyi választó gyorsítótárának letiltása:\n```json\n{\n \"agent\": {\n \"toolSelectionCache\": false\n }\n}\n```\nA hitelesített, régóta működő ügynöki munkamenetek életben tartásához, amíg munkára várnak:\n```json\n{\n \"agent\": {\n \"idleLogoutEnabled\": false\n }\n}\n```\nEgyetlen folyamathoz használja a `autohand --no-idle-logout` kódot, vagy állítsa be a `AUTOHAND_NO_IDLE_LOGOUT=1` értéket.\n\nAz inaktivitási idő módosításához állítsa az `idleTimeoutMs` értékét pozitív, ezredmásodpercben megadott időtartamra. Az alapértelmezett érték `3600000` (60 perc); az érvénytelen értékek az alapértelmezett értéket használják.\n\n### Hibakeresési mód\n\nEngedélyezze a hibakeresési módot az ügynök belső állapotának részletes naplózásához (reakcióhurok iterációi, prompt felépítés, munkamenet részletei). A kimenet az stderr-hez megy, hogy elkerülje a normál kimenet zavarását.\n\nHáromféleképpen engedélyezheti a hibakeresési módot (elsőbbségi sorrendben):\n\n1. **CLI jelző**: `autohand -d` vagy `autohand --debug`\n2. **Környezeti változó**: `AUTOHAND_DEBUG=1`\n3. **Konfigurációs fájl**: Állítsa be: `agent.debug: true`\n\n### Kérési sor\n\nHa a `enableRequestQueue` engedélyezve van, folytathatja az üzenetek beírását, miközben az ügynök feldolgoz egy korábbi kérést. A bevitel a sorba kerül, és automatikusan feldolgozásra kerül, amikor az aktuális feladat befejeződik.\n\n- Írja be az üzenetet, és nyomja meg az Enter billentyűt, hogy hozzáadja a sorhoz\n- Az állapotsor azt mutatja, hogy hány kérés van sorban\n- A kérések feldolgozása FIFO (first-in, first-out) sorrendben történik\n- A sor maximális mérete 10 kérés\n\n---\n\n## Engedélyek beállításai\n\nA szerszámengedélyek finom vezérlése.\n```json\n{\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\n \"run_command:npm *\",\n \"run_command:bun *\",\n \"run_command:git status\"\n ],\n \"blacklist\": [\"run_command:rm -rf *\", \"run_command:sudo *\"],\n \"rules\": [\n {\n \"tool\": \"run_command\",\n \"pattern\": \"npm test\",\n \"action\": \"allow\"\n }\n ],\n \"rememberSession\": true\n }\n}\n```\n### `mode`\n\n| Érték | Leírás |\n| ----------------- | ------------------------------------------------------ |\n| `\"interactive\"` | Jóváhagyás kérése veszélyes műveletekhez (alapértelmezett) |\n| `\"unrestricted\"` | Nincsenek felszólítások, engedélyezzen mindent |\n| `\"restricted\"` | Minden veszélyes művelet megtagadása |\n\n### `whitelist`\n\nSzerszámminták sora, amelyek soha nem igényelnek jóváhagyást.\n```json\n[\"run_command:npm *\", \"run_command:bun test\"]\n```\n### `blacklist`\n\nMindig blokkolt szerszámminták tömbje.\n```json\n[\"run_command:rm -rf /\", \"run_command:sudo *\"]\n```\n### `rules`\n\nFinom szemcsés engedélyezési szabályok.\n\n| Mező | Típus | Leírás |\n| --------- | --------- | -------------------------------------------- | ---------- | -------------- |\n| `tool` | húr | A megfelelő eszköznév |\n| `pattern` | húr | Opcionális minta az érvekhez való illeszkedéshez |\n| `action` | `\"allow\"` | `\"deny\"` | `\"prompt\"` | Intézkedések |\n\n### `rememberSession`\n\n| Típus | Alapértelmezett | Leírás |\n| ------- | ------- | -------------------------------------------- |\n| logikai | `true` | Emlékezzen az ülés jóváhagyási határozataira |\n\n### Helyi projektengedélyek\n\nMinden projektnek saját engedélybeállításai lehetnek, amelyek felülírják a globális konfigurációt. Ezeket a projekt gyökérkönyvtárában a `.autohand/settings.local.json` tartalmazza.\n\nAmikor jóváhagy egy fájlműveletet (szerkesztés, írás, törlés), a rendszer automatikusan ebbe a fájlba menti, így nem kéri újra ugyanazt a műveletet ebben a projektben.\n```json\n{\n \"version\": 1,\n \"permissions\": {\n \"whitelist\": [\n \"apply_patch:src/components/Button.tsx\",\n \"write_file:package.json\",\n \"run_command:bun test\"\n ]\n }\n}\n```\n**Hogyan működik:**\n\n- Amikor jóváhagy egy műveletet, a rendszer a következőbe menti: `.autohand/settings.local.json`\n- Legközelebb ugyanazt a műveletet a rendszer automatikusan jóváhagyja\n- A helyi projektbeállítások egyesülnek a globális beállításokkal (a helyi beállítások elsőbbséget élveznek)\n- Adja hozzá a `.autohand/settings.local.json` kódot a `.gitignore`-hoz, hogy a személyes beállítások privátak maradjanak\n\n**Mintaformátum:**\n\n- `tool_name:path` - Fájlműveletekhez (pl. `apply_patch:src/file.ts`)\n- `tool_name:command args` - Parancsokhoz (pl. `run_command:npm test`)\n\n### Megtekintési engedélyek\n\nJelenlegi engedélybeállításait kétféleképpen tekintheti meg:\n\n**CLI jelző (nem interaktív):**\n```bash\nautohand --permissions\n```\nEz a következőket jeleníti meg:\n\n- Jelenlegi engedélyezési mód (interaktív, korlátlan, korlátozott)\n- Munkaterület és konfigurációs fájlok elérési útjai\n- Minden jóváhagyott minta (engedélyezőlista)\n- Minden elutasított minta (feketelista)\n- Összefoglaló statisztika\n\n**Interaktív parancs:**\n```\n/permissions\n```\nInteraktív módban a `/permissions` parancs ugyanazokat az információkat és lehetőségeket biztosít a következőkhöz:\n\n- Elemek eltávolítása az engedélyezési listáról\n- Távolítsa el az elemeket a feketelistáról\n- Törölje az összes mentett engedélyt\n\n---\n\n## Patch mód\n\nA Patch mód lehetővé teszi megosztható, git-kompatibilis javítás létrehozását a munkaterület-fájlok módosítása nélkül. Ez hasznos:\n\n- A kód felülvizsgálata a változtatások alkalmazása előtt\n- Az AI által generált változások megosztása a csapat tagjaival\n- Reprodukálható változáskészletek készítése\n- CI/CD folyamatok, amelyeknek alkalmazása nélkül kell rögzíteni a változásokat\n\n### Használat\n```bash\n# Generate patch to stdout\nautohand --prompt \"add user authentication\" --patch\n\n# Save to file\nautohand --prompt \"add user authentication\" --patch --output auth.patch\n\n# Pipe to file (alternative)\nautohand --prompt \"refactor api handlers\" --patch > refactor.patch\n```\n### Viselkedés\n\nHa `--patch` meg van adva:\n\n- **Automatikus megerősítés**: Minden visszaigazolás automatikusan elfogadásra kerül (`--yes`)\n- **Nincsenek felszólítások**: Nem jelennek meg jóváhagyási értesítések (`--unrestricted` vélelmezett)\n- **Csak előnézet**: A változtatásokat rögzíti, de NEM írja lemezre\n- **Kikényszerített biztonság**: A feketelistán szereplő műveletek (`.env`, SSH-kulcsok, veszélyes parancsok) továbbra is blokkolva vannak\n\n### Javítások alkalmazása\n\nA címzettek szabványos git parancsokkal alkalmazhatják a javítást:\n```bash\n# Check what would be applied (dry-run)\ngit apply --check changes.patch\n\n# Apply the patch\ngit apply changes.patch\n\n# Apply with 3-way merge (handles conflicts better)\ngit apply -3 changes.patch\n\n# Apply and stage changes\ngit apply --index changes.patch\n\n# Reverse a patch\ngit apply -R changes.patch\n```\n### Patch formátum\n\nA generált javítás a git egységes diff formátumát követi:\n```diff\ndiff --git a/src/auth.ts b/src/auth.ts\nnew file mode 100644\n--- /dev/null\n+++ b/src/auth.ts\n@@ -0,0 +1,15 @@\n+export function authenticate(user: string, password: string) {\n+ // Implementation here\n+}\n\ndiff --git a/src/index.ts b/src/index.ts\n--- a/src/index.ts\n+++ b/src/index.ts\n@@ -1,5 +1,7 @@\n import express from 'express';\n+import { authenticate } from './auth';\n\n const app = express();\n+app.use(authenticate);\n```\n### Kilépési kódok\n\n| Kód | Jelentése |\n| ---- | ---------------------------------------------------- |\n| `0` | Siker, patch generált |\n| `1` | Hiba (hiányzó `--prompt`, engedély megtagadva stb.) |\n\n### Kombinálva más zászlókkal\n```bash\n# Use specific model\nautohand --prompt \"optimize queries\" --patch --model gpt-4o\n\n# Specify workspace\nautohand --prompt \"add tests\" --patch --path ./my-project\n\n# Use custom config\nautohand --prompt \"refactor\" --patch --config ~/.autohand/work.json\n```\n### Csapatmunkafolyamat-példa\n```bash\n# Developer A: Generate patch for a feature\nautohand --prompt \"implement user dashboard with charts\" --patch --output dashboard.patch\n\n# Share via git (create PR with just the patch file)\ngit checkout -b patch/dashboard\ngit add dashboard.patch\ngit commit -m \"Add dashboard feature patch\"\ngit push\n\n# Developer B: Review and apply\ngit fetch origin patch/dashboard\ngit apply dashboard.patch\n# Run tests, review code, then commit\ngit add -A && git commit -m \"feat: add user dashboard with charts\"\n```\n---\n\n## Hálózati beállítások\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Max | Leírás |\n| ------------ | ------ | ------- | --- | --------------------------------------- |\n| `maxRetries` | szám | `3` | `5` | Próbálkozzon újra sikertelen API-kérésekkel |\n| `timeout` | szám | `30000` | - | Kérelem időtúllépése ezredmásodpercben |\n| `retryDelay` | szám | `1000` | - | Az újrapróbálkozások közötti késleltetés ezredmásodpercben |\n\n---\n\n## Telemetriai beállítások\n\nA telemetria **alapértelmezés szerint le van tiltva** (feliratkozás). Engedélyezze a Autohand fejlesztéséhez.\n```json\n{\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true,\n \"companySecret\": \"\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | -------------------------- | ---------------------------------------------- |\n| `enabled` | logikai | `false` | Telemetria engedélyezése/letiltása (feliratkozás) |\n| `apiBaseUrl` | húr | `https://api.autohand.ai` | Telemetria API végpont |\n| `batchSize` | szám | `20` | Az automatikus kiürítés előtt kötegelt események száma |\n| `flushIntervalMs` | szám | `60000` | Öblítési időköz ezredmásodpercben (1 perc) |\n| `maxQueueSize` | szám | `500` | Maximális sorméret a régi események eldobása előtt |\n| `maxRetries` | szám | `3` | Próbálkozzon újra sikertelen telemetriai kérések esetén |\n| `enableSessionSync` | logikai | `true` | Szinkronizálja a munkameneteket a felhővel a csapatfunkciókhoz, ha a telemetria engedélyezve van |\n| `companySecret` | húr | `\"\"` | Vállalati titok API-hitelesítéshez |\n\nA szolgáltató/modell telemetria tartalmazza az aktív szolgáltatói azonosítót, a modellazonosítót és az elérhető nem titkos metaadatokat, például az egyéni szolgáltató megjelenítési nevét, API-formátumát, érvelési erőfeszítéseit és kontextusablakát. Az API-kulcsok és a vivőjogkivonatok soha nem szerepelnek benne.\n\n---\n\n## Külső ügynökök\n\nEgyéni ügynökdefiníciók betöltése külső könyvtárakból.\n```json\n{\n \"externalAgents\": {\n \"enabled\": true,\n \"paths\": [\"~/.autohand/agents\", \"/team/shared/agents\"]\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | -------- | ------- | -------------------------------- |\n| `enabled` | logikai | `false` | Külső ügynök betöltésének engedélyezése |\n| `paths` | string[] | `[]` | Könyvtárak az ügynökök betöltéséhez |\n\n---\n\n## Skills System\n\nA készségek olyan utasításcsomagok, amelyek speciális utasításokat adnak az AI-ügynöknek. Úgy működnek, mint az igény szerinti `AGENTS.md` fájlok, amelyek bizonyos feladatokhoz aktiválhatók.\n\n### Készségek felfedező helyek\n\nA készségek több helyről fedezhetők fel, és a későbbi források élveznek elsőbbséget:\n\n| Helyszín | Forrásazonosító | Leírás |\n| ----------------------------------------- | ------------------- | ------------------------------------------ |\n| `~/.codex/skills/**/SKILL.md` | `codex-user` | Felhasználói szintű Codex készségek (rekurzív) |\n| `~/.claude/skills/*/SKILL.md` | `claude-user` | Felhasználói szintű Claude-készségek (egy szint) |\n| `~/.autohand/skills/**/SKILL.md` | `autohand-user` | Felhasználói szintű Autohand készségek (rekurzív) |\n| `<project>/.claude/skills/*/SKILL.md` | `claude-project` | Projektszintű Claude-készségek (egy szint) |\n| `<project>/.autohand/skills/**/SKILL.md` | `autohand-project` | Projekt szintű Autohand készségek (rekurzív) |\n\n### Automatikus másolási viselkedés\n\nA Codex vagy Claude helyekről felfedezett készségek automatikusan átmásolódnak a megfelelő Autohand helyre:\n\n- `~/.codex/skills/` és `~/.claude/skills/` → `~/.autohand/skills/`\n- `<project>/.claude/skills/` → `<project>/.autohand/skills/`\n\nA Autohand helyeken meglévő készségek soha nem íródnak felül.\n\n### SKILL.md formátum\n\nA YAML frontmatter-t használó készségek, majd a leértékelési tartalom:\n```markdown\n---\nname: my-skill-name\ndescription: Brief description of the skill\nlicense: MIT\ncompatibility: Works with Node.js 18+\nallowed-tools: read_file write_file run_command\nmetadata:\n author: your-name\n version: \"1.0.0\"\n---\n\n# My Skill\n\nDetailed instructions for the AI agent...\n```\n| Mező | Kötelező | Max hossz | Leírás |\n| ---------------- | -------- | ---------- | ------------------------------------------- |\n| `name` | Igen | 64 karakter | Kisbetűs alfanumerikus, csak kötőjelekkel |\n| `description` | Igen | 1024 karakter | A készség rövid leírása |\n| `license` | Nem | - | Licencazonosító (pl. MIT, Apache-2.0) |\n| `compatibility` | Nem | 500 karakter | Kompatibilitási megjegyzések |\n| `allowed-tools` | Nem | - | Az engedélyezett eszközök szóközzel tagolt listája |\n| `metadata` | Nem | - | További kulcs-érték metaadatok |\n\n### Beviteli előtagok\n\nA Autohand támogatja a speciális előtagokat a beviteli promptban:\n\n| Előtag | Leírás | Példa |\n| ------ | ------------------------------- | ---------------------------------- |\n| `/` | Slash parancsok | `/help`, `/model`, `/quit`, `/exit` |\n| `@` | Fájl említések (automatikus kiegészítés) | `@src/index.ts` |\n| `$` | Szakértelem említése (automatikus kiegészítés) | `$frontend-design`, `$code-review` |\n| `!` | A terminálparancsok közvetlen futtatása | `! git status`, `! ls -la` |\n\n**Képességmegemlítések (`$`):**\n\n- Írja be a következőt: `$`, majd karaktereket az automatikus kiegészítéssel elérhető készségek megtekintéséhez\n- A Tab elfogadja a felső javaslatot (pl. `$frontend-design`)\n- A készségek a következőből fedezhetők fel: `~/.autohand/skills/` és `<project>/.autohand/skills/`\n- Az aktivált készségek a prompthoz vannak csatolva, mint speciális utasítások az aktuális munkamenethez\n- Az előnézeti panel a készség metaadatait mutatja (név, leírás, aktiválási állapot)\n\n**Shell-parancsok (`!`):**\n\n- A parancsok az aktuális munkakönyvtárban futnak\n- A kimenet közvetlenül a terminálon jelenik meg\n- Nem megy az LLM-be\n- 30 másodperces időtúllépés\n- A végrehajtás után visszatér a prompthoz\n\n### Slash parancsok\n\n#### `/skills` - Csomagkezelő\n\n| Parancs | Leírás |\n| -------------------------------- | ------------------------------------------- |\n| `/skills` | Sorolja fel az összes elérhető készséget |\n| `/skills use <name>` | Képesség aktiválása az aktuális munkamenethez |\n| `/skills deactivate <name>` | Készség deaktiválása |\n| `/skills info <name>` | Részletes képzettségi információk megjelenítése |\n| `/skills install` | Tallózás és telepítés a közösségi nyilvántartásból |\n| `/skills install @<slug>` | Telepítsen közösségi készségeket a slug |\n| `/skills search <query>` | Keresés a közösségi készségek nyilvántartásában |\n| `/skills trending` | Felkapott közösségi készségek megjelenítése |\n| `/skills remove <slug>` | Közösségi készség eltávolítása |\n| `/skills new` | Hozzon létre új készségeket interaktívan |\n| `/skills feedback <slug> <1-5>` | Értékeljen egy közösségi képességet |\n\n#### `/learn` - LLM-alapú Skill Advisor\n\n| Parancs | Leírás |\n| ---------------- | ---------------------------------------------------------------- |\n| `/learn` | A projekt elemzése és készségek ajánlása (gyors szkennelés) |\n| `/learn deep` | Mélyszkennelési projekt (forrásfájlokat olvas) a célzottabb eredmények érdekében |\n| `/learn update` | A projekt újraelemzése és az LLM által generált elavult készségek regenerálása |\n\nA `/learn` kétfázisú LLM-folyamatot használ:\n\n1. **1. fázis – Elemzés + Rangsorolás + Ellenőrzés**: Ellenőrzi a projekt szerkezetét, auditálja a telepített készségeket redundanciák/konfliktusok szempontjából, és rangsorolja a közösségi készségeket relevancia szerint (0-100).\n2. **2. fázis – Létrehozás** (feltételes): Ha egyik közösségi képesség sem ér el 60 feletti pontszámot, felajánlja a projektjéhez szabott egyéni képesség létrehozását.\nA generált készségek metaadatokat (`agentskill-source: llm-generated`, `agentskill-project-hash`) tartalmaznak, így a `/learn update` képes észlelni, ha megváltozik a kódbázis, és újra előállíthatja az elavult készségeket.\n\n### Automatikus készséggenerálás (`--auto-skill`)\n\nA `--auto-skill` CLI jelző készségeket generál az interaktív tanácsadói folyamat nélkül:\n```bash\nautohand --auto-skill\n```\nEz:\n\n1. Elemezze a projekt felépítését (package.json, követelmények.txt stb.)\n2. Nyelvek, keretrendszerek és minták észlelése\n3. Generáljon 3 releváns készséget az LLM segítségével\n4. Mentse el a készségeket ide: `<project>/.autohand/skills/`\n\nA célzottabb, interaktívabb élmény érdekében használja inkább a `/learn` kódot egy munkameneten belül.\n\nAz észlelt minták a következők:\n\n- **Nyelvek**: TypeScript, JavaScript, Python, Rust, Go\n- **Frameworks**: React, Next.js, Vue, Express, Flask, Django\n- **Minták**: CLI eszközök, tesztelés, monorepo, Docker, CI/CD\n\n---\n\n## API beállítások\n\nBackend API konfiguráció a csapatfunkciókhoz.\n```json\n{\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\",\n \"companySecret\": \"sk-team-xxx\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------------------------- | ---------------------------------------- |\n| `baseUrl` | húr | `https://api.autohand.ai` | API-végpont |\n| `companySecret` | húr | - | Csapat/vállalati titok a megosztott funkciókhoz |\n\nKörnyezeti változókkal is beállítható:\n\n- `AUTOHAND_API_URL` → `api.baseUrl`\n- `AUTOHAND_SECRET` → `api.companySecret`\n\n---\n\n## Hitelesítési beállítások\n\nHitelesítés és felhasználói munkamenet konfigurálása.\n```json\n{\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\",\n \"avatar\": \"https://example.com/avatar.png\"\n },\n \"expiresAt\": \"2025-12-31T23:59:59Z\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------- | ------ | ------- | --------------------------------------------- |\n| `token` | húr | - | Hitelesítési token API-hozzáféréshez |\n| `user` | tárgy | - | Hitelesített felhasználói adatok |\n| `user.id` | húr | - | Felhasználói azonosító |\n| `user.email` | húr | - | Felhasználó e-mail címe |\n| `user.name` | húr | - | Felhasználó megjelenített név |\n| `user.avatar` | húr | - | Felhasználói avatar URL-je (nem kötelező) |\n| `expiresAt` | húr | - | Token lejárati időbélyegzője (ISO 8601 formátum) |\n\n---\n\n## Közösségi készségek beállításai\n\nKonfiguráció a közösségi készségek felfedezéséhez és kezeléséhez.\n```json\n{\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------------------------- | ------- | ------- | -------------------------------------------------------------- |\n| `enabled` | logikai | `true` | Közösségi készségek funkcióinak engedélyezése |\n| `showSuggestionsOnStartup` | logikai | `true` | Képességi javaslatok megjelenítése indításkor, ha nem állnak rendelkezésre szállítói ismeretek |\n| `autoBackup` | logikai | `true` | A felfedezett szállítói ismeretek automatikus biztonsági mentése API |\n\n---\n\n## Megosztási beállítások\n\nKonfiguráció a munkamenet megosztásához a `/share` paranccsal. A munkamenetek a [autohand.link](https://autohand.link) címen találhatók.\n```json\n{\n \"share\": {\n \"enabled\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ------------------------------------ |\n| `enabled` | logikai | `true` | A `/share` parancs engedélyezése/letiltása |\n\n### YAML formátum\n```yaml\nshare:\n enabled: true\n```\n### Munkamenet-megosztás letiltása\n\nHa biztonsági vagy adatvédelmi okokból ki szeretné kapcsolni a munkamenet-megosztást:\n```json\n{\n \"share\": {\n \"enabled\": false\n }\n}\n```\nHa le van tiltva, a `/share` futtatásakor a következő jelenik meg:\n```\nSession sharing is disabled.\nTo enable, set share.enabled: true in your config file.\n```\n---\n\n## Beállítások szinkronizálása\n\nA Autohand szinkronizálhatja a konfigurációt az eszközök között a bejelentkezett felhasználók számára. A beállításokat a Cloudflare R2 biztonságosan tárolja, és a feltöltés előtt titkosítja.\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"exclude\": [],\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------------- | -------- | ---------------- | --------------------------------------------------- |\n| `enabled` | logikai | `true` (naplózva) | Beállítások szinkronizálásának engedélyezése/letiltása |\n| `interval` | szám | `300000` | Szinkronizálási idő ezredmásodpercben (alapértelmezett: 5 perc) |\n| `exclude` | string[] | `[]` | Globális minták a szinkronizálásból kizárandó |\n| `includeTelemetry` | logikai | `false` | Telemetriai adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n| `includeFeedback` | logikai | `false` | Visszajelzési adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n\n### CLI zászló\n```bash\n# Disable sync for this session\nautohand --sync-settings=false\n\n# Enable sync (default for logged users)\nautohand --sync-settings\n```\n### Mi lesz szinkronizálva\n\nAlapértelmezés szerint ezek az elemek szinkronizálva vannak a bejelentkezett felhasználók számára:\n\n- **Konfiguráció** (`config.json`) - Az API-kulcsok a feltöltés előtt titkosítva vannak\n- **Egyéni ügynökök** (`agents/`)\n- **Közösségi készségek** (`community-skills/`)\n- **Felhasználói akasztók** (`hooks/`)\n- **Memória** (`memory/`)\n- **Projektismeret** (`projects/`)\n- **Munkamenetek előzményei** (`sessions/`)\n- **Megosztott tartalom** (`share/`)\n- **Egyéni készségek** (`skills/`)\n\n### Mi nem szinkronizál (alapértelmezés szerint)\n\n- **Eszközazonosító** (`device-id`) - Eszközönként egyedi\n- **Hibanaplók** (`error.log`) - Csak helyi\n- **Verziógyorsítótár** (`version-*.json`) - Helyi gyorsítótár fájlok\n\n### Beleegyezés alapú szinkronizálás\n\nEzek az elemek kifejezett feliratkozást igényelnek a konfigurációban:\n\n- **Telemetriai adatok** - Állítsa be a `sync.includeTelemetry: true` szinkronizálást\n- **Visszajelzési adatok** - Állítsa be a `sync.includeFeedback: true` szinkronizálását\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"includeTelemetry\": true,\n \"includeFeedback\": true\n }\n}\n```\n### Konfliktusmegoldás\n\nHa ütközések lépnek fel (ugyanaz a fájl több eszközön módosítva), a **felhőverzió nyer**. Ez biztosítja a következetességet az új eszközökön való bejelentkezéskor.\n\n### Biztonság\n\nA `config.json` API-kulcsait és egyéb bizalmas adatait a rendszer a hitelesítési token segítségével titkosítja a feltöltés előtt. Csak az Ön hitelesítő adataival lehet visszafejteni.\n\n**Mi van titkosítva:**\n\n- `apiKey` nevű mezők\n- `Key`, `Token`, `Secret` végződő mezők\n- A `password` mező\n\n### Hogyan működik\n\n1. **Indításkor**: Ha be van jelentkezve, a szinkronizálási szolgáltatás automatikusan elindul\n2. **5 percenként**: A beállításokat összehasonlítja a felhőalapú tárolással\n3. **A felhő nyer**: A távoli módosítások letöltése először történik meg\n4. **Helyi feltöltések**: Új helyi módosítások kerülnek feltöltésre\n5. **Kilépéskor**: A szinkronizálási szolgáltatás kecsesen leáll\n\n### Fájlok kizárása\n\nKizárhat bizonyos fájlokat vagy mintákat a szinkronizálásból:\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"exclude\": [\"custom-local-config.json\", \"temp/*\"]\n }\n}\n```\n### YAML formátum\n```yaml\nsync:\n enabled: true\n interval: 300000\n exclude: []\n includeTelemetry: false\n includeFeedback: false\n```\n---\n\n## MCP beállítások\n\nÁllítsa be az MCP-kiszolgálókat (Model Context Protocol) a Autohand külső eszközökkel történő bővítésére.\n```json\n{\n \"mcp\": {\n \"enabled\": true,\n \"servers\": [\n {\n \"name\": \"filesystem\",\n \"transport\": \"stdio\",\n \"command\": \"npx\",\n \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/tmp\"],\n \"env\": {},\n \"autoConnect\": true\n },\n {\n \"name\": \"context7\",\n \"transport\": \"http\",\n \"url\": \"https://mcp.context7.com/mcp\",\n \"headers\": {\n \"CONTEXT7_API_KEY\": \"ctx7sk-your-api-key\"\n },\n \"autoConnect\": true\n }\n ]\n }\n}\n```\n### `mcp.enabled`\n\n- **Típus**: `boolean`\n- **Alapértelmezett**: `true`\n- **Leírás**: Az összes MCP-támogatás engedélyezése vagy letiltása. Ha `false`, akkor az indításkor nem csatlakozik szerver, és az MCP-eszközök nem érhetők el.\n\n### `mcp.servers`\n\n- **Típus**: `McpServerConfigEntry[]`\n- **Alapértelmezett**: `[]`\n- **Leírás**: MCP szerver konfigurációk tömbje.\n\n### Szerver beviteli mezői\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | --------------------------------- | -------------- | ------- | -------------------------------------------------------------- |\n| `name` | `string` | Igen | - | Egyedi szerverazonosító |\n| `transport` | `\"stdio\"` \\| `\"sse\"` \\| `\"http\"` | Igen | - | Szállítás típusa |\n| `command` | `string` | Igen (stdio) | - | Parancs a szerverfolyamat elindításához |\n| `args` | `string[]` | Nem | `[]` | Érvek a parancs mellett |\n| `url` | `string` | Igen (sse/http) | - | Szervervégpont URL |\n| `headers` | `Record<string, string>` | Nem | `{}` | Egyéni HTTP-fejlécek http/sse szállításhoz (pl. hitelesítési tokenek) |\n| `env` | `Record<string, string>` | Nem | `{}` | A kiszolgálónak átadott környezeti változók |\n| `autoConnect` | `boolean` | Nem | `true` | Automatikus csatlakozás indításkor |\n\n> A szerverek aszinkron módon csatlakoznak a háttérben az indítás során anélkül, hogy blokkolnák a promptot. A `/mcp` segítségével interaktívan kezelheti a szervereket, vagy a `/mcp add` segítségével böngészhet a közösségi nyilvántartásban, vagy adhat hozzá egyéni szervereket.\n\n> A teljes MCP-dokumentációért lásd: [docs/mcp.md](mcp.md).\n\n---\n\n## Hooks beállítások\n\nKonfiguráció életciklus-horogokhoz, amelyek shell-parancsokat futtatnak az ügynökeseményeken. A részletekért lásd a [Hooks dokumentációt] (./hooks.md).\n```json\n{\n \"hooks\": {\n \"enabled\": true,\n \"hooks\": [\n {\n \"event\": \"pre-tool\",\n \"command\": \"echo \\\"Running tool: $HOOK_TOOL\\\" >> ~/.autohand/hooks.log\",\n \"description\": \"Log all tool executions\",\n \"enabled\": true\n },\n {\n \"event\": \"file-modified\",\n \"command\": \"./scripts/on-file-change.sh\",\n \"description\": \"Custom file change handler\",\n \"filter\": { \"path\": [\"src/**/*.ts\"] }\n },\n {\n \"event\": \"post-response\",\n \"command\": \"curl -X POST https://api.example.com/webhook -d '{\\\"tokens\\\": $HOOK_TOKENS}'\",\n \"description\": \"Track token usage\",\n \"async\": true\n }\n ]\n }\n}\n```\n### `hooks`\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ---------------------------------- |\n| `enabled` | logikai | `true` | Az összes hook engedélyezése/letiltása globálisan |\n| `hooks` | tömb | `[]` | Horogdefiníciók tömbje |\n\n### Hook meghatározása\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | ------- | -------- | ------- | --------------------------------- |\n| `event` | húr | Igen | - | Bekapcsolandó esemény |\n| `command` | húr | Igen | - | Shell parancs végrehajtásához |\n| `description` | húr | Nem | - | A `/hooks` kijelző leírása |\n| `enabled` | logikai | Nem | `true` | Aktív-e a horog |\n| `timeout` | szám | Nem | `5000` | Időtúllépés ezredmásodpercben |\n| `async` | logikai | Nem | `false` | Futtasson blokkolás nélkül |\n| `filter` | tárgy | Nem | - | Szűrés szerszám vagy útvonal szerint |\n\n### Hook események\n\n| Esemény | Amikor kirúgták |\n| ---------------- | -------------------------------------- |\n| `pre-tool` | Mielőtt bármilyen eszköz végrehajtaná |\n| `post-tool` | A szerszám befejezése után |\n| `file-modified` | A fájl létrehozásakor/módosításakor/törlésekor |\n| `pre-prompt` | Mielőtt elküldené az LLM-nek |\n| `post-response` | Miután az LLM válaszol |\n| `session-error` | Hiba esetén |\n\n### Környezeti változók\n\nAmikor a hook fut, ezek a környezeti változók állnak rendelkezésre:\n\n| Változó | Leírás |\n| ----------------- | ---------------------------- |\n| `HOOK_EVENT` | Esemény neve |\n| `HOOK_WORKSPACE` | Munkaterület gyökérútvonala |\n| `HOOK_TOOL` | Szerszámnév (szerszámesemények) |\n| `HOOK_ARGS` | JSON-kódolt eszköz args |\n| `HOOK_SUCCESS` | igaz/hamis (utóeszköz) |\n| `HOOK_PATH` | Fájl elérési útja (fájlmódosított) |\n| `HOOK_TOKENS` | Felhasznált tokenek (válasz után) |\n\n---\n\n## Chrome-bővítmény beállításai\n\nIrányítsd a Autohand Chrome-bővítmény integrációját. Tekintse meg a teljes útmutatót: [Autohand Chrome-ban](./autohand-in-chrome.md).\n```json\n{\n \"chrome\": {\n \"extensionId\": \"your-extension-id\",\n \"enabledByDefault\": false,\n \"browser\": \"auto\",\n \"userDataDir\": \"/path/to/chrome/user-data\",\n \"profileDirectory\": \"Default\",\n \"installUrl\": \"https://autohand.ai/chrome\"\n }\n}\n```\n| Kulcs | Típus | Alapértelmezett | Leírás |\n| ------------------- | --------- | -------- | -------------------------------------------------------------------------- |\n| `extensionId` | `string` | — | Telepített Chrome-bővítményazonosító a közvetlen átadáshoz |\n| `enabledByDefault` | `boolean` | `false` | A böngészőhíd automatikus indítása a CLI |-vel\n| `browser` | `string` | `\"auto\"` | Előnyben részesített Chromium böngésző: `auto`, `chrome`, `chromium`, `brave`, `edge` |\n| `userDataDir` | `string` | — | Böngésző felhasználói adatok könyvtára a megfelelő profil megcélzásához |\n| `profileDirectory` | `string` | — | Böngészőprofil-könyvtár neve (pl. `\"Default\"`, `\"Profile 1\"`) |\n| `installUrl` | `string` | — | Tartalék URL, ha a bővítményazonosító nincs konfigurálva |\n\n### CLI zászlók\n```bash\nautohand --chrome # Start with browser bridge enabled\nautohand --no-chrome # Start with browser bridge disabled\n```\n### Slash parancsok\n```\n/browser # Open Chrome integration panel\n/browser disconnect # Close the browser bridge connection\n```\n---\n\n## Teljes példa\n\n### JSON formátum (`~/.autohand/config.json`)\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\"\n },\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"model\": \"llama3.2\"\n },\n \"workspace\": {\n \"defaultRoot\": \"~/projects\",\n \"allowDangerousOps\": false\n },\n \"ui\": {\n \"theme\": \"dark\",\n \"autoConfirm\": false,\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n },\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n },\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\"run_command:npm *\", \"run_command:bun *\"],\n \"blacklist\": [\"run_command:rm -rf /\"],\n \"rememberSession\": true\n },\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n },\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true\n },\n \"externalAgents\": {\n \"enabled\": false,\n \"paths\": []\n },\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\"\n },\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\"\n }\n },\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n },\n \"share\": {\n \"enabled\": true\n },\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n### YAML formátum (`~/.autohand/config.yaml`)\n```yaml\nprovider: openrouter\n\nopenrouter:\n apiKey: sk-or-v1-your-key-here\n baseUrl: https://openrouter.ai/api/v1\n model: your-modelcard-id-here\n\nollama:\n baseUrl: http://localhost:11434\n model: llama3.2\n\nworkspace:\n defaultRoot: ~/projects\n allowDangerousOps: false\n\nui:\n theme: dark\n autoConfirm: false\n showCompletionNotification: true\n showThinking: true\n terminalBell: true\n checkForUpdates: true\n updateCheckInterval: 24\n\nagent:\n maxIterations: 100\n enableRequestQueue: true\n toolSelectionCache: true\n idleLogoutEnabled: true\n idleTimeoutMs: 3600000\n debug: false\n\npermissions:\n mode: interactive\n whitelist:\n - \"run_command:npm *\"\n - \"run_command:bun *\"\n blacklist:\n - \"run_command:rm -rf /\"\n rememberSession: true\n\nnetwork:\n maxRetries: 3\n timeout: 30000\n retryDelay: 1000\n\ntelemetry:\n enabled: false\n apiBaseUrl: https://api.autohand.ai\n batchSize: 20\n flushIntervalMs: 60000\n maxQueueSize: 500\n maxRetries: 3\n enableSessionSync: true\n\nexternalAgents:\n enabled: false\n paths: []\n\napi:\n baseUrl: https://api.autohand.ai\n\nauth:\n token: your-auth-token\n user:\n id: user-id\n email: user@example.com\n name: User Name\n\ncommunitySkills:\n enabled: true\n showSuggestionsOnStartup: true\n autoBackup: true\n\nshare:\n enabled: true\n\nsync:\n enabled: true\n interval: 300000\n includeTelemetry: false\n includeFeedback: false\n```\n### TOML formátum (`~/.autohand/config.toml`)\n```toml\nprovider = \"openrouter\"\n\n[openrouter]\napiKey = \"sk-or-v1-your-key-here\"\nbaseUrl = \"https://openrouter.ai/api/v1\"\nmodel = \"your-modelcard-id-here\"\n\n[ollama]\nbaseUrl = \"http://localhost:11434\"\nmodel = \"llama3.2\"\n\n[workspace]\ndefaultRoot = \"~/projects\"\nallowDangerousOps = false\n\n[ui]\ntheme = \"dark\"\nautoConfirm = false\nshowCompletionNotification = true\nshowThinking = true\nterminalBell = true\ncheckForUpdates = true\nupdateCheckInterval = 24\n\n[ui.customThemes.company.vars]\nbrand = \"#7c3aed\"\nbrandSoft = \"#a78bfa\"\n\n[ui.customThemes.company.colors]\naccent = \"brand\"\nborderAccent = \"brandSoft\"\nmdHeading = \"brand\"\n\n[agent]\nmaxIterations = 100\nenableRequestQueue = true\ntoolSelectionCache = true\nidleLogoutEnabled = true\nidleTimeoutMs = 3600000\ndebug = false\n\n[permissions]\nmode = \"interactive\"\nwhitelist = [\"run_command:npm *\", \"run_command:bun *\"]\nblacklist = [\"run_command:rm -rf /\"]\nrememberSession = true\n```\n---\n\n## Címtárszerkezet\n\nA Autohand az adatokat `~/.autohand/` (vagy `$AUTOHAND_HOME`) kódban tárolja:\n```\n~/.autohand/\n├── config.json # Main configuration\n├── config.toml # Alternative TOML config\n├── config.yaml # Alternative YAML config\n├── device-id # Unique device identifier\n├── error.log # Error log\n├── feedback.log # Feedback submissions\n├── sessions/ # Session history\n├── projects/ # Project knowledge base\n├── memory/ # User-level memory\n├── commands/ # Custom commands\n├── agents/ # Agent definitions\n├── tools/ # Custom meta-tools\n├── feedback/ # Feedback state\n└── telemetry/ # Telemetry data\n ├── queue.json\n └── session-sync-queue.json\n```\n**Projektszintű könyvtár** (a munkaterület gyökérkönyvtárában):\n```\n<project>/.autohand/\n├── settings.local.json # Local project permissions (gitignore this)\n├── memory/ # Project-specific memory\n├── skills/ # Project-specific skills\n└── tools/ # Project-specific meta-tools\n```\n---\n\n## CLI-jelzők (konfig felülbírálása)\n\nEzek a jelzők felülírják a konfigurációs fájl beállításait:\n\n### Alapjelzők\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `-v, --version` | Az aktuális verzió kiadása |\n| `-p, --prompt [text]` | Futtasson egyetlen utasítást parancs módban |\n| `--path <path>` | Munkaterület gyökér felülbírálása |\n| `--config <path>` | Egyéni konfigurációs fájl használata |\n| `--model <model>` | Modell felülírása |\n| `--temperature <n>` | Beállított mintavételi hőmérséklet (0-1) |\n| `--thinking [level]` | Gondolkodási/érvelési mélység beállítása (nincs, normál, kiterjesztett) |\n| `-y, --yes` | Automatikus megerősítési kérések |\n| `--dry-run` | Előnézet végrehajtás nélkül |\n| `-d, --debug` | Részletes hibakeresési kimenet engedélyezése |\n| `--bare` | Minimális explicit mód; beállítja a `AUTOHAND_CODE_SIMPLE=1` értéket és letiltja a perjel parancsokat |\n\n### Engedélyek és biztonság\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--unrestricted` | Nincs jóváhagyási felszólítás |\n| `--restricted` | Veszélyes műveletek megtagadása |\n| `--permissions` | Jelenítse meg az aktuális engedélybeállításokat, és lépjen ki |\n| `--no-idle-logout` | A hitelesített tétlen kijelentkezés letiltása a hosszan futó ügynöki munkamenetekhez |\n| `--yolo [pattern]` | Eszközhívások megfelelő minta automatikus jóváhagyása (pl. `allow:read,write` vagy `deny:delete`) |\n| `--timeout <seconds>` | Időtúllépés másodpercben az automatikus jóváhagyási módhoz |\n\n### Git & Worktree\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--worktree [name]` | Munkamenet futtatása elszigetelt git-munkafán (opcionális munkafa/ág neve) |\n| `--tmux` | Indítás egy dedikált tmux munkamenetben (az `--worktree`-t jelenti; nem használható a `--no-worktree` kóddal) |\n| `--no-worktree` | A git munkafa elkülönítésének letiltása automatikus módban |\n| `-c, --auto-commit` | Változások automatikus véglegesítése a feladatok elvégzése után |\n| `--patch` | Git javítás generálása változtatások alkalmazása nélkül |\n| `--output <file>` | A javítás kimeneti fájlja (a --patch-el együtt használatos) |\n\n### Automatikus mód\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-mode [prompt]` | Engedélyezze az interaktív automatikus módot, vagy indítson önálló hurkot egy soron belüli feladattal |\n| `--max-iterations <n>` | Maximális automatikus módú iterációk (alapértelmezett: 50) |\n| `--completion-promise <text>` | Befejezésjelző szövege (alapértelmezett: \"KÉSZ\") |\n| `--checkpoint-interval <n>` | A Git minden N iterációt végrehajt (alapértelmezett: 5) |\n| `--max-runtime <m>` | Maximális futási idő percekben (alapértelmezett: 120) |\n| `--max-cost <d>` | Maximális API költség dollárban (alapértelmezett: 10) |\n| `--interactive-on-complete` | Az automatikus mód vége után adja át közvetlenül az interaktív módba (csak TTY) |\n\n### Készségek és tanulás\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-skill` | Készségek automatikus generálása projektelemzés alapján (lásd még: `/learn` az interaktív tanácsadóhoz) |\n| `--learn` | Futtassa a `/learn` készségtanácsadót nem interaktív módon (a javasolt készségek elemzése és telepítése) |\n| `--learn-update` | A projekt újraelemzése és az LLM által generált elavult készségek nem interaktív módon történő regenerálása |\n| `--skill-install [name]` | Telepítsen egy közösségi képességet (megnyitja a böngészőt, ha nincs megadva név) |\n| `--project` | A készség telepítése projektszintre (a --skill-install funkcióval) |\n\n### Hitelesítés és fiók\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--login` | Jelentkezzen be Autohand-fiókjába |\n| `--logout` | Jelentkezzen ki Autohand-fiókjából |\n| `--sync-settings` | A beállítások szinkronizálásának engedélyezése/letiltása (alapértelmezett: igaz a bejelentkezett felhasználók számára) |\n\n### Beállítás és információ\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--setup` | Futtassa a telepítővarázslót a Autohand |\n| `--about` | Információk megjelenítése a Autohand-ról (verzió, linkek, hozzájárulási információk) |\n| `--feedback` | Visszajelzés küldése a Autohand csapatának |\n| `--settings` | A Autohand beállításainak konfigurálása (ugyanaz, mint a `/settings` interaktív módban) |\n\n### Munkaterület és könyvtárak\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--add-dir <path...>` | További könyvtárak hozzáadása a munkaterület hatóköréhez (többször is használható) |\n\n### Futtatási módok\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--mode <mode>` | Futtatási mód: interaktív (alapértelmezett), rpc vagy acp |\n| `--acp` | A --mode acp rövidítése (Agent Client Protocol over stdio) |\n| `--teammate-mode <mode>` | Csapat megjelenítési mód: automatikus, folyamatban lévő vagy tmux |\n\n### UI és nyelv\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--display-language <locale>` | Megjelenítési nyelv beállítása (pl. en, id, zh-cn, fr, de, ja) |\n| `--search-engine <provider>` | Internetes keresőszolgáltató beállítása (google, brave, duckduckgo, párhuzamos) |\n| `--cc, --context-compact` | Környezettömörítés engedélyezése (alapértelmezett: be) |\n| `--no-cc, --no-context-compact` | Kontextustömörítés letiltása |\n\n### Chrome integráció\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--chrome` | A Chrome böngésző integrációjának engedélyezése (ugyanaz, mint `/browser`) |\n| `--no-chrome` | A Chrome böngésző integrációjának letiltása |\n\n### Rendszerprompt\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-sys-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt-file <path>` | Cserélje le a teljes rendszerprompt a fájltartalommal |\n| `--append-system-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n### Kísérletváltási parancsok\n\n| Parancs | Leírás |\n| -------------------------------------- | ------------------------------------------------- |\n| `autohand experiments list` | Sorolja fel a helyi és távoli funkciók azonosítóit, a forrást, az életciklus szakaszt és az állapotot |\n| `autohand experiments status <feature>` | Mutasson egy szolgáltatáskapcsolót, konfigurációs elérési utat vagy távoli metaadatokat és állapotot |\n| `autohand experiments refresh` | Távoli funkciójelzők letöltése a Autohand API-ból |\n| `autohand experiments enable <feature>` | Konfigurációval támogatott szolgáltatáskapcsoló engedélyezése |\n| `autohand experiments disable <feature>` | A konfigurációval támogatott szolgáltatáskapcsoló letiltása |\n\nA távoli funkciójelzők lekérése innen: `/v1/feature-flags/evaluate`, gyorsítótár a `~/.autohand/feature-flags.json` címen történik, és az API által biztosított TTL lejárta után frissül. A `features.environment` segítségével válassza ki a távoli jelzőkörnyezetet, a `features.remoteOverrides` segítségével pedig a felhasználó által felülbírálható távoli jelzők helyi letiltásához.\n\nA `usage_v2` egy kísérleti funkciókapcsoló a `/usage` irányítópulthoz és a továbbfejlesztett `/status` Használat laphoz. Engedélyezze a következővel: `autohand experiments enable usage_v2`.\n\nA `token_usage_status` egy kísérleti funkciókapcsoló (konfigurációs útvonal `features.tokenUsageStatus`, alapértelmezés szerint kikapcsolva), amely a valós idejű tokenhasználatot mutatja a működő állapotsorban – kumulatív tokenek felfelé (`↑`) és lefelé (`↓`) plusz g kontextusban, cc. `↑15.7k ↓3.2k · context: 6.0% (15.7k/262.1k)`. A kontextusablak modellenként van feloldva az összes szolgáltatónál. Engedélyezze a következővel: `autohand experiments enable token_usage_status`.\n\n---\n\n## Slash parancsok\n\nAz Autohand perjel parancsok gazdag készletét kínálja interaktív használatra. A javaslatok megtekintéséhez írja be a `/` kódot a REPL-be.\n\n### Munkamenet-kezelés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/quit` | Kilépés az aktuális munkamenetből |\n| `/exit` | Kilépés az aktuális munkamenetből |\n| `/new` | Új beszélgetés indítása (memóriakivonattal) |\n| `/clear` | Tiszta beszélgetés automatikus memóriakivonással |\n| `/session` | Az aktuális munkamenet részleteinek megjelenítése |\n| `/sessions` | Korábbi munkamenetek listája |\n| `/resume` | Előző munkamenet folytatása |\n| `/history` | A munkamenet-előzmények böngészése oldalszámozással |\n| `/undo` | Git módosítások és utolsó forduló visszaállítása |\n| `/export` | Munkamenet exportálása markdown/JSON/HTML |\n| `/share` | Aktuális munkamenet megosztása |\n| `/status` | Munkamenet állapotának megjelenítése |\n| `/usage` | Modell, szolgáltató, kontextus és használati korlátok megjelenítése |\n\n### Modell és szolgáltató\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/model` | LLM-modell váltása vagy konfigurálása |\n| `/cc` | Kézi környezet tömörítése |\n\n### Projektbeállítás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/init` | Hozzon létre `AGENTS.md` fájlt az aktuális könyvtárban |\n| `/setup` | Futtassa a telepítővarázslót a Autohand | konfigurálásához\n| `/add-dir` | Könyvtárak hozzáadása a munkaterület hatóköréhez |\n\n### Ügynökök és csapatok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/agents` | Az elérhető alügynökök listája |\n| `/agents-new` | Hozzon létre egy új ügynököt a varázslón keresztül |\n| `/squad` | Nyissa meg/kezelje az önálló Autohand Squad futtatókörnyezetet |\n| `/team` | Csapat irányítása párhuzamos munkához |\n| `/tasks` | Feladatok kezelése csapatban |\n| `/message` | Üzenet küldése csapattársnak |\n\n### Készségek\n\n| Parancs | Leírás |\n| ----------------- | --------------------------------------------------- |\n| `/skills` | Készségek listája és kezelése |\n| `/skills-new` | Új készség létrehozása |\n| `/learn` | Tanulja meg és telepítse az ajánlott készségeket |\n\n### Memória és beállítások\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/memory` | Tárolt emlékek megtekintése és kezelése |\n| `/settings` | A Autohand beállításainak konfigurálása |\n| `/statusline` | A szerző állapotsor mezőinek konfigurálása |\n| `/experiments` | Kísérleti jellemzők kapcsolóinak váltása |\n| `/sync` | Beállítások szinkronizálása eszközök között |\n| `/import` | Importálhat munkameneteket, beállításokat, MCP-t, memóriát, készségeket és hook-okat a támogatott ügynökökről |\n\n### Engedélyek és akasztók\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/permissions`| Szerszámengedélyek kezelése |\n| `/hooks` | Életciklus-horogok kezelése |\n\n### Hitelesítés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/login` | Hitelesítés a Autohand API-val |\n| `/logout` | Kijelentkezés a Autohand fiókból |\n\n### Eszközök és segédprogramok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/search` | Keresés az interneten |\n| `/formatters` | Az elérhető kódformázók listája |\n| `/lint` | Sorolja fel a rendelkezésre álló kódsorokat |\n| `/completion` | Shell befejező szkriptek generálása |\n| `/plan` | Megvalósítási terv létrehozása |\n| `/review` | Kódellenőrzés végrehajtása |\n| `/pr-review` | Lehívási kérelem áttekintése |\n\n### IDE integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/ide` | A futó IDE észlelése és csatlakozása |\n\n### MCP (Model Context Protocol)\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/mcp` | Interaktív MCP-kiszolgálókezelő |\n\n### Automatizálás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/automode` | Indítsa el az autonóm kódolási módot |\n| `/repeat` | Ismétlődő munkák ütemezése |\n| `/yolo` | Yolo mód váltása (automatikus jóváhagyási eszközök) |\n\n### Chrome integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/browser` | A Chrome böngésző integrációjának engedélyezése |\n\n### UI és kijelző\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/help` | Az elérhető perjel parancsok és tippek megjelenítése |\n| `/about` | Információk megjelenítése a következőről: Autohand |\n| `/theme` | Színtéma módosítása |\n| `/language` | Kijelző nyelvének módosítása |\n| `/feedback` | Visszajelzés küldése a Autohand csapatának |\n\n---\n\n## Rendszerprompt testreszabás\nAutohand lehetővé teszi az AI-ügynök által használt rendszerprompt testreszabását. Ez speciális munkafolyamatok, egyedi utasítások vagy más rendszerekkel való integráció esetén hasznos.\n\n### CLI zászlók\n\n| zászló | Leírás |\n| ------------------------------ | -------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerprompt |\n| `--append-sys-prompt <value>` | Tartalom hozzáfűzése az alapértelmezett rendszerprompthoz |\n\nMindkét zászló elfogadja a következőket:\n\n- **Inline karakterlánc**: Közvetlen szövegtartalom\n- **Fájl elérési útja**: A promptot tartalmazó fájl elérési útja (automatikusan észlelve)\n\n### Fájlútvonal észlelése\n\nEgy érték fájlútvonalként kezelendő, ha:\n\n- A következővel kezdődik: `./`, `../`, `/` vagy `~/`\n- Windows meghajtóbetűjellel kezdődik (pl. `C:\\`)\n- A következővel végződik: `.txt`, `.md` vagy `.prompt`\n- Útleválasztókat tartalmaz szóközök nélkül\n\nEllenkező esetben a rendszer soron belüli karakterláncként kezeli.\n\n### `--sys-prompt` (Teljes csere)\n\nHa rendelkezésre áll, ez **teljesen lecseréli** az alapértelmezett rendszerpromptot. Az ügynök NEM tölti be:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n```bash\n# Inline string\nautohand --sys-prompt \"You are a Python expert. Be concise.\" --prompt \"Write hello world\"\n\n# From file\nautohand --sys-prompt ./custom-prompt.txt --prompt \"Explain this code\"\n\n# Home directory\nautohand --sys-prompt ~/.autohand/prompts/python-expert.md --prompt \"Debug this function\"\n```\n**Példa egyéni prompt fájlra (`custom-prompt.txt`):**\n```\nYou are a specialized Python debugging assistant.\n\nRules:\n- Focus only on Python code\n- Always explain the root cause\n- Suggest fixes with code examples\n- Be concise and direct\n```\n### `--append-sys-prompt` (Hozzáadás az alapértelmezetthez)\n\nHa rendelkezésre áll, ez **hozzáfűzi** a tartalmat a teljes alapértelmezett rendszerprompthoz. Az ügynök továbbra is betölti:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n\nA csatolt tartalom a legvégére kerül hozzáadásra.\n```bash\n# Inline string\nautohand --append-sys-prompt \"Always use TypeScript instead of JavaScript\" --prompt \"Create a function\"\n\n# From file\nautohand --append-sys-prompt ./team-guidelines.md --prompt \"Add error handling\"\n```\n**Példa hozzáfűző fájl (`team-guidelines.md`):**\n```\n## Team Guidelines\n\n- Use 2-space indentation\n- Prefer functional patterns\n- Add JSDoc comments to public APIs\n- Run tests before committing\n```\n### Elsőbbség\n\nHa mindkét zászló rendelkezésre áll:\n\n1. A `--sys-prompt` teljes elsőbbséget élvez\n2. A `--append-sys-prompt` figyelmen kívül hagyva\n```bash\n# --append-sys-prompt is ignored in this case\nautohand --sys-prompt \"Custom only\" --append-sys-prompt \"This is ignored\"\n```\n### Használati esetek\n\n| Használati eset | Ajánlott zászló |\n| ---------------------------------- | ---------------------- |\n| Egyedi ügynök személye | `--sys-prompt` |\n| Minimális utasítások | `--sys-prompt` |\n| Csapatirányelvek hozzáadása | `--append-sys-prompt` |\n| Projektkonvenciók hozzáadása | `--append-sys-prompt` |\n| Integráció külső rendszerekkel | `--sys-prompt` |\n| Speciális hibakeresés | `--sys-prompt` |\n\n### Hibakezelés\n\n| Forgatókönyv | Viselkedés |\n| ------------------ | ------------------------- |\n| Üres érték | Hiba |\n| A fájl nem található | Soron belüli karakterláncként kezelve |\n| Üres fájl | Hiba |\n| Fájl > 1 MB | Hiba |\n| Engedély megtagadva | Hiba |\n| Címtár elérési útja | Hiba |\n\n### Példák\n```bash\n# Python expert mode\nautohand --sys-prompt \"You are a Python expert. Only write Python code.\" \\\n --prompt \"Create a web scraper\"\n\n# TypeScript enforcement\nautohand --append-sys-prompt \"Always use TypeScript, never JavaScript.\" \\\n --prompt \"Create a REST API\"\n\n# CI/CD integration (non-interactive)\nautohand --sys-prompt ./ci-prompt.txt \\\n --prompt \"Fix the failing tests\" \\\n --unrestricted \\\n --patch\n\n# Custom team workflow\nautohand --append-sys-prompt ~/.company/coding-standards.md \\\n --prompt \"Refactor this module\"\n```\n---\n\n## Több könyvtár támogatása\n\nAz Autohand a fő munkaterületen kívül több könyvtárral is működhet. Ez akkor hasznos, ha a projektben különböző könyvtárakban vannak függőségek, megosztott könyvtárak vagy kapcsolódó projektek.\n\n### CLI zászló\n\nA `--add-dir` használatával további könyvtárakat adhat hozzá (többször is használható):\n```bash\n# Add a single additional directory\nautohand --add-dir /path/to/shared-lib\n\n# Add multiple directories\nautohand --add-dir /path/to/lib1 --add-dir /path/to/lib2\n\n# With unrestricted mode (auto-approve writes to all directories)\nautohand --add-dir /path/to/shared-lib --unrestricted\n```\n### Interaktív parancs\n\n`/add-dir` használata interaktív munkamenet során:\n```\n/add-dir # Show current directories\n/add-dir /path/to/dir # Add a new directory\n```\n### Biztonsági korlátozások\n\nA következő könyvtárak nem adhatók hozzá:\n\n- Saját könyvtár (`~` vagy `$HOME`)\n- Gyökérkönyvtár (`/`)\n- Rendszerkönyvtárak (`/etc`, `/var`, `/usr`, `/bin`, `/sbin`)\n- Windows rendszerkönyvtárak (`C:\\Windows`, `C:\\Program Files`)\n- Windows felhasználói könyvtárak (`C:\\Users\\username`)\n- WSL Windows-csatlakozások (`/mnt/c`, `/mnt/c/Windows`)\n"}, "fb0064b07950ef41b7729ce1a3e37ba18ac33324": {"t": 1785764182.5011492, "n": 86828, "h": "8fcd15f83e75f17f", "c": "# Autohand Konfigurációs referencia\n\nTeljes referencia az összes konfigurációs beállításhoz itt: `~/.autohand/config.json` (vagy `.toml`/`.yaml`/`.yml`).\n\n> **Tipp:** A legtöbb alábbi beállítás interaktívan módosítható a `/settings` paranccsal a fájl manuális szerkesztése helyett.\n\nLokalizált referenciák:\n\n- [English](./config-reference.md)\n- [日本語](./config-reference_ja.md)\n- [简体中文](./config-reference_zh.md)\n- [繁體中文](./config-reference_zh-tw.md)\n- [한국어](./config-reference_ko.md)\n- [Deutsch](./config-reference_de.md)\n- [Español](./config-reference_es.md)\n- [Français](./config-reference_fr.md)\n- [Italiano](./config-reference_it.md)\n- [Polski](./config-reference_pl.md)\n- [Русский](./config-reference_ru.md)\n- [Português (Brasil)](./config-reference_ptBR.md)\n- [Türkçe](./config-reference_tr.md)\n- [Čeština](./config-reference_cs.md)\n- [Magyar](./config-reference_hu.md)\n- [हिन्दी](./config-reference_hi.md)\n- [Bahasa Indonesia](./config-reference_id.md)\n\n## Tartalomjegyzék\n\n- [A konfigurációs fájl helye](#configuration-file-location)\n- [Környezeti változók](#environment-variables)\n- [Csupasz mód](#bare-mode)\n- [Szolgáltatói beállítások](#provider-settings)\n- [Munkaterület beállításai](#workspace-settings)\n- [UI beállítások](#ui-settings)\n- [Ügynökbeállítások](#agent-settings)\n- [Engedélyek beállításai](#permissions-settings)\n- [Javítási mód](#patch-mode)\n- [Hálózati beállítások](#network-settings)\n- [Telemetriai beállítások](#telemetry-settings)\n- [Külső ügynökök](#external-agents)\n- [Skills System](#skills-system)\n- [API beállítások](#api-settings)\n- [Authentication Settings](#authentication-settings)\n- [Közösségi készségek beállításai](#community-skills-settings)\n- [Megosztási beállítások](#share-settings)\n- [Beállítások szinkronizálása](#settings-sync)\n- [Hook beállításai](#hooks-settings)\n- [MCP beállítások](#mcp-settings)\n- [Chrome-bővítmény beállításai](#chrome-extension-settings)\n- [Teljes példa](#complete-example)\n\n---\n\n## Konfigurációs fájl helye\n\nAutohand a következő sorrendben keresi a konfigurációt:\n\n1. `AUTOHAND_CONFIG` környezeti változó (egyéni elérési út)\n2. `~/.autohand/config.toml`\n3. `~/.autohand/config.yaml`\n4. `~/.autohand/config.yml`\n5. `~/.autohand/config.json` (alapértelmezett)\n\nAz alapkönyvtárat is felülírhatja:\n```bash\nexport AUTOHAND_HOME=/custom/path # Changes ~/.autohand to /custom/path\n```\n---\n\n## Környezeti változók\n\n| Változó | Leírás | Példa |\n| --------------------------------------- | ------------------------------------------------- | --------------------------------- |\n| `AUTOHAND_HOME` | Alapkönyvtár az összes Autohand adathoz | `/custom/path` |\n| `AUTOHAND_CONFIG` | Egyéni konfigurációs fájl elérési útja | `/path/to/config.toml` |\n| `AUTOHAND_API_URL` | API-végpont (felülbírálja a konfigurációt) | `https://api.autohand.ai` |\n| `AUTOHAND_SECRET` | Vállalat/csapat titkos kulcsa | `sk-xxx` |\n| `AUTOHAND_PERMISSION_CALLBACK_URL` | Az engedély visszahívásának URL-je (kísérleti) | `http://localhost:3000/callback` |\n| `AUTOHAND_PERMISSION_CALLBACK_TIMEOUT` | Az engedély-visszahívás időtúllépése ms-ban | `5000` |\n| `AUTOHAND_NON_INTERACTIVE` | Futtatás nem interaktív módban | `1` |\n| `AUTOHAND_YES` | Minden felszólítás automatikus megerősítése | `1` |\n| `AUTOHAND_NO_BANNER` | Indítási szalaghirdetés letiltása | `1` |\n| `AUTOHAND_STREAM_TOOL_OUTPUT` | Az eszköz kimenetének streamelése valós időben | `1` |\n| `AUTOHAND_DEBUG` | Hibakeresési naplózás engedélyezése | `1` |\n| `AUTOHAND_THINKING_LEVEL` | Érvelési mélységszint beállítása | `normal` |\n| `AUTOHAND_CLIENT_NAME` | Kliens/szerkesztő azonosító (ACP kiterjesztések által beállítva) | `zed` |\n| `AUTOHAND_CLIENT_VERSION` | Kliens verzió (az ACP-bővítmények által beállított) | `0.169.0` |\n| `AUTOHAND_CODE` | Környezetérzékelési jelző (automatikusan beállítva) | `1` |\n| `AUTOHAND_CODE_SIMPLE` | A csupasz mód engedélyezése a `--bare` | átadása nélkül `1` |\n\n### Gondolkodási szint\n\nA `AUTOHAND_THINKING_LEVEL` környezeti változó szabályozza a modell által használt érvelés mélységét:\n\n| Érték | Leírás |\n| ---------- | --------------------------------------------------------------------- |\n| `none` | Közvetlen válaszok látható indoklás nélkül |\n| `normal` | Szabványos érvelési mélység (alapértelmezett) |\n| `extended` | Mély érvelés összetett feladatokhoz, részletesebb gondolkodási folyamatot mutat |\n\nEzt általában az ACP-kliens-bővítmények (például a Zed) állítják be a konfigurációs legördülő menüben.\n```bash\n# Example: Use extended thinking for complex tasks\nAUTOHAND_THINKING_LEVEL=extended autohand --prompt \"refactor this module\"\n```\n---\n\n## Csupasz mód\n\nA csupasz mód a Autohand csak kifejezetten kért kontextus- és futásidejű integrációkkal indul. Engedélyezze a következők egyikével:\n```bash\nautohand --bare\nAUTOHAND_CODE_SIMPLE=1 autohand\n```\nA `--bare` átadásakor a Autohand a `AUTOHAND_CODE_SIMPLE=1` értéket is beállítja a futó folyamathoz.\n\nA csupasz mód letiltja az automatikus indítást és az interaktív integrációkat:\n\n- horgok és horog értesítések\n- LSP indítás\n- plugin szinkronizálás, bővítmény automatikus betöltése és meta-eszköz automatikus betöltése\n- hozzárendelés, telemetria, munkamenet-szinkronizálás, automatikus jelentéskészítés és háttérpingek\n- automatikus memória/munkamenet bootstrap kontextus\n- háttérkérdések, frissítés-ellenőrzések, funkciójelző-lekérések és modell-metaadatok előzetes letöltése\n- kulcstartó és böngésző OAuth-hitelesítési tartalék\n- automatikus `AGENTS.md` és szolgáltatói utasítás keresés\n- minden perjel parancs, beleértve a parancssorba beírt csupasz `/`\n\nA perjel alakú abszolút fájlútvonalakat, például a `/Users/alex/project/file.ts`, továbbra is normál prompt szövegként kezeli a rendszer. A parancs alakú perjel bevitel, például `/help`, `/model` vagy `/mcp`, a `Slash commands are disabled in bare mode.` kódot írja ki, és nem hajtódik végre.\n\nA csupasz módban történő hitelesítés csak explicit. A Autohand először a következőt olvassa: `AUTOHAND_API_KEY`, majd `auth.apiKeyHelper`, ha be van állítva. Nem olvassa be a kulcstartó hitelesítő adatait, és nem indítja el az OAuth/böngésző bejelentkezést. A külső szolgáltatók továbbra is a szolgáltatóspecifikus API-kulcsokat és konfigurációkat használják.\n\nEzek az explicit bemenetek csupasz módban is elérhetők:\n\n| Bemenet | Leírás |\n| ------------------------------ | -------------------------------------------------------------------------- |\n| `--system-prompt <value>` | Cserélje ki a rendszerprompt szövegközi szöveggel vagy elérési út-szerű értékkel |\n| `--system-prompt-file <path>` | Cserélje ki a rendszerpromptot a fájltartalommal |\n| `--append-system-prompt <value>` | Szövegközi szöveg vagy elérési út-szerű érték hozzáfűzése a | rendszerprompthoz\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--add-dir <path...>` | Explicit könyvtárak hozzáadása a munkaterület hatóköréhez |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--settings` | Nyissa meg a beállításokat közvetlenül a CLI jelzőből |\n| `--config <path>` | Használjon explicit Autohand konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n---\n\n## Szolgáltatói beállítások\n\n### `provider`\n\nAktív LLM szolgáltató használható.\n\n| Érték | Leírás |\n| -------------- | ----------------------------- |\n| `\"openrouter\"` | OpenRouter API (alapértelmezett) |\n| `\"ollama\"` | Helyi Ollama példány |\n| `\"llamacpp\"` | Helyi llama.cpp szerver |\n| `\"openai\"` | OpenAI API közvetlenül |\n| `\"mlx\"` | MLX az Apple Siliconon (helyi) |\n| `\"llmgateway\"` | LLM Gateway egyesített API |\n| `\"deepseek\"` | DeepSeek API |\n| `\"zai\"` | Z.ai GLM API |\n| `\"sakana\"` | Sakana.AI Fugu API |\n| `\"bedrock\"` | AWS alapkőzet |\n| `\"custom:<id>\"` | Felhasználó által meghatározott OpenAI-kompatibilis szolgáltató a következőtől: `customProviders` |\n\n### `openrouter`\n\nOpenRouter szolgáltató konfigurációja.\n```json\n{\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-xxx\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\",\n \"contextWindow\": 262144\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | --------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön OpenRouter API kulcsa |\n| `baseUrl` | húr | Nem | `https://openrouter.ai/api/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellazonosító (pl. `your-modelcard-id-here`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand kitölti ezt az OpenRouterből, ha ismert. |\n\n### `zai`\n\nZ.ai szolgáltató konfigurációja.\n```json\n{\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"baseUrl\": \"https://api.z.ai/api/paas/v4\",\n \"model\": \"glm-5.2\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | -------------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön Z.ai API-kulcsa |\n| `baseUrl` | húr | Nem | `https://api.z.ai/api/paas/v4` | API-végpont |\n| `model` | húr | Igen | `glm-5.2` | Modellazonosító, például `glm-5.2`, `glm-5.1` vagy `glm-4.5` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. A Autohand 1M-re következtet a GLM-5.2-nél és 200K-ra a GLM-5.1-nél. |\n\n### `sakana`\n\nSakana.AI szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.sakana.ai/v1`-t használja alap URL-ként.\n```json\n{\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------ | ------------------------------------------------------------------ |\n| `apiKey` | húr | Igen | - | Az Ön Sakana API kulcsa |\n| `baseUrl` | húr | Nem | `https://api.sakana.ai/v1` | API-végpont |\n| `model` | húr | Igen | `fugu` | Modellazonosító, például `fugu` vagy `fugu-ultra` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand 1M-re következtet a Fugu modelleknél. |\n\n### `customProviders`\n\nAz egyéni szolgáltatók lehetővé teszik a felhasználók számára, hogy OpenAI-kompatibilis végpontot hozzanak létre kódmódosítás vagy új csomagolt szolgáltató nélkül. Adja hozzá a szolgáltatót a `customProviders` alatt, majd válassza ki a `provider: \"custom:<id>\"` kóddal. Ugyanez a folyamat elérhető a `/model` **Új szolgáltatóval**. A telepítés során a Autohand a szolgáltató mentése előtt ellenőrzi az alap URL-t, a hitelesítést és a kiválasztott modellt az OpenAI-kompatibilis `/models` végponton keresztül.\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\",\n \"models\": [\n {\n \"id\": \"acme-code-1\",\n \"label\": \"Acme Code 1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n ]\n }\n }\n}\n```\nAzon helyi OpenAI-kompatibilis szervereknél, amelyek nem igényelnek hitelesítést, állítsa a `apiKeyRequired` értékét `false` értékre, és hagyja ki a `apiKey` értéket.\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------------ | ------- | -------- | ------- | ----------- |\n| `id` | húr | Igen | - | Stabil szolgáltatói azonosító. Meg kell egyeznie az objektumkulccsal, és a következőképpen van kiválasztva: `custom:<id>`. |\n| `displayName` | húr | Igen | - | A `/model` és a szolgáltató beállításai között látható név. |\n| `apiFormat` | húr | Igen | - | A következőnek kell lennie: `openai-compatible`. |\n| `baseUrl` | húr | Igen | - | Végpont gyökér, például `https://api.example.com/v1`. Autohand ellenőrzi a `/models` kódot, és felhívja a `/chat/completions` kódot. |\n| `apiKey` | húr | Feltételes | - | Adathordozó token a tárolt végpontokhoz. Kötelező, ha a `apiKeyRequired` igaz. |\n| `apiKeyRequired` | logikai | Nem | `true` | Állítsa be a false értéket a helyi vagy már hitelesített átjárókhoz. |\n| `model` | húr | Igen | - | Aktív modell azonosító. |\n| `contextWindow` | szám | Nem | Auto | Pontos kontextusablak a token-költségvetéshez, állapothoz, telemetriához és szinkronizálási metaadatokhoz. |\n| `reasoningEffort` | húr | Nem | - | Opcionális `none`, `low`, `medium`, `high` vagy `xhigh`. `reasoning_effort` néven küldve egyéni OpenAI-kompatibilis kérésekhez. |\n| `models` | tömb | Nem | - | Opcionális modellválasztó bejegyzések modellenkénti kontextussal és érvelési metaadatokkal. |\n\n### `ollama`\n\nOllama szolgáltató konfigurációja.\n```json\n{\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"port\": 11434,\n \"model\": \"llama3.2\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------- | ------------------------------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:11434` | Ollama szerver URL |\n| `port` | szám | Nem | `11434` | Szerverport (a baseUrl alternatívája) |\n| `model` | húr | Igen | - | Modellnév (pl. `llama3.2`, `codellama`) |\n\n### `llamacpp`\n\nllama.cpp szerver konfigurációja.\n```json\n{\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"default\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | llama.cpp szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | Modellazonosító |\n\n### `openai`\n\nOpenAI API konfiguráció.\n```json\n{\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-xxx\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\nAz OpenAI a Autohand beépített OpenAI bejelentkezési folyamatán keresztül is használhatja ChatGPT-előfizetését:\n```json\n{\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"contextWindow\": 1050000,\n \"model\": \"gpt-5.4\",\n \"chatgptAuth\": {\n \"accessToken\": \"...\",\n \"refreshToken\": \"...\",\n \"accountId\": \"...\"\n }\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | ----------------------- | ---------------------------- | -------------------------------------------------------------------------- |\n| `authMode` | húr | Nem | `api-key` | Hitelesítési mód: `api-key` vagy `chatgpt` |\n| `apiKey` | húr | Igen a `api-key` módhoz | - | OpenAI API kulcs |\n| `baseUrl` | húr | Nem | `https://api.openai.com/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-5.4`, `gpt-5.4-mini`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Állítsa be az elavult helyi feltételezések felülbírálásához. |\n| `chatgptAuth` | tárgy | Igen a `chatgpt` módhoz | - | Tárolt ChatGPT/Codex hitelesítési tokenek és fiókazonosító |\n\n### `mlx`\n\nMLX szolgáltató Apple Silicon Mac gépekhez (helyi következtetés).\n```json\n{\n \"mlx\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | MLX szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | MLX modell azonosító |\n\n### `llmgateway`\n\nLLM Gateway egységes API konfiguráció. Hozzáférést biztosít több LLM-szolgáltatóhoz egyetlen API-n keresztül.\n```json\n{\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"baseUrl\": \"https://api.llmgateway.io/v1\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------------- | ---------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | LLM Gateway API kulcs |\n| `baseUrl` | húr | Nem | `https://api.llmgateway.io/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-4o`, `claude-3-5-sonnet-20241022`) |\n\n**API-kulcs beszerzése:**\nKeresse fel a [llmgateway.io/dashboard](https://llmgateway.io/dashboard) webhelyet fiók létrehozásához és API-kulcsának beszerzéséhez.\n\n**Támogatott modellek:**\nAz LLM Gateway több szolgáltató modelljét támogatja, többek között:\n\n- OpenAI: `gpt-4o`, `gpt-4o-mini`, `gpt-4-turbo`\n`claude-3-5-haiku-20241022`\n- Google: `gemini-1.5-pro`, `gemini-1.5-flash`\n\n### `deepseek`\n\nDeepSeek szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.deepseek.com`-t használja alap URL-ként.\n```json\n{\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"baseUrl\": \"https://api.deepseek.com\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | --------------------------- | --------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | DeepSeek API kulcs |\n| `baseUrl` | húr | Nem | `https://api.deepseek.com` | API-végpont |\n| `model` | húr | Igen | - | Modellnév, például `deepseek-v4-flash` vagy `deepseek-v4-pro` |\n\n### `bedrock`\n\nAWS Bedrock szolgáltató konfigurációja. `converse` az alapértelmezett mód, és az AWS SDK hitelesítési láncot használja. Az OpenAI-kompatibilis módok Bedrock API-kulcsokat és Bedrock OpenAI-kompatibilis végpontokat használnak.\n```json\n{\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------- | ------ | -------- | ------- | ----------- |\n| `model` | húr | Igen | - | Alapkőzetmodell-azonosító, következtetési profilazonosító vagy ARN |\n| `region` | húr | Igen | `AWS_REGION`, majd `AWS_DEFAULT_REGION`, majd `us-east-1` a beállításban | AWS régió |\n| `apiMode` | húr | Nem | `converse` | `converse`, `openai-chat` vagy `openai-responses` |\n| `authMode` | húr | Nem | `aws-credentials` `converse`, `bedrock-api-key` OpenAI-kompatibilis módokhoz | Hitelesítési mód |\n| `profile` | húr | Nem | - | Opcionális AWS-profil a hitelesítő adatok láncos hitelesítéséhez |\n| `endpoint` | húr | Nem | Módból és régióból származtatva | Egyéni/privát Bedrock végpont |\n| `apiKey` | húr | Igen OpenAI-kompatibilis módokhoz | - | Bedrock API kulcs. Ne használjon OpenAI API-kulcsokat. |\n\nFuttassa a `aws configure sso` kódot, vagy állítsa be a `AWS_PROFILE=enterprise-prod autohand` értéket a profilalapú AWS-hitelesítéshez. Az IAM-szerepkört, a tárolót és a példány metaadat-hitelesítő adatait az AWS SDK támogatja. Modell használata előtt engedélyezze a modellelérést az AWS-konzolon.\n\n---\n\n## Munkaterület beállításai\n```json\n{\n \"workspace\": {\n \"defaultRoot\": \"/path/to/projects\",\n \"allowDangerousOps\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------------------ | -------------------------------------------------- |\n| `defaultRoot` | húr | Aktuális címtár | Alapértelmezett munkaterület, ha nincs megadva |\n| `allowDangerousOps` | logikai | `false` | Pusztító műveletek engedélyezése megerősítés nélkül |\n\n### Munkahelyi biztonság\n\nAutohand automatikusan blokkolja a működést a veszélyes könyvtárakban, hogy megelőzze a véletlen károsodást:\n\n- **Fájlrendszer gyökerei** (`/`, `C:\\`, `D:\\` stb.)\n- **Házikönyvtárak** (`~`, `/Users/<user>`, `/home/<user>`, `C:\\Users\\<user>`)\n- **Rendszerkönyvtárak** (`/etc`, `/var`, `/System`, `C:\\Windows` stb.)\n- **WSL Windows-csatlakozások** (`/mnt/c`, `/mnt/c/Users/<user>`)\n\nEzt az ellenőrzést nem lehet megkerülni. Ha egy veszélyes könyvtárban próbálja meg futtatni a autohand alkalmazást, hibaüzenetet fog látni, és meg kell adnia egy biztonságos projektkönyvtárat.\n```bash\n# This will be blocked\ncd ~ && autohand\n# Error: Unsafe Workspace Directory\n\n# This works\ncd ~/projects/my-app && autohand\n```\nA részletekért lásd a [Workspace Safety](./workspace-safety.md) részt.\n\n---\n\n## UI beállítások\n```json\n{\n \"ui\": {\n \"theme\": \"dark\",\n \"customThemes\": {\n \"company\": {\n \"colors\": {\n \"accent\": \"#7c3aed\",\n \"success\": \"#22c55e\"\n }\n }\n },\n \"autoConfirm\": false,\n \"readFileCharLimit\": 300,\n \"silentToolOutput\": false,\n \"activityVerbs\": [\"Compiling\", \"Parsing\", \"Reviewing\"],\n \"activityVerbsEnabled\": true,\n \"activitySymbol\": \"✳\",\n \"statusLine\": {\n \"showProviderModel\": true,\n \"showContext\": true,\n \"showCommandHint\": true,\n \"showPullRequest\": true,\n \"showSessionLines\": false,\n \"showQueue\": true,\n \"showActiveStatus\": true,\n \"showActiveMetrics\": true,\n \"showCancelHint\": true\n },\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ----------------------------- | ------ | ------- | ---------------------------------------------------------------------------------------------- |\n| `theme` | húr | `\"dark\"` | Színes téma a terminál kimenetéhez. A beépítettek a következők: `dark`, `light`, `dracula`, `sandy`, `tui`, `github-dark`, `cappadocia`, CODE és ___8__ `australia`. A régi `turkey` és `brazil` értékek továbbra is betöltődnek álnévként. |\n| `customThemes` | tárgy | `{}` | Soron belüli egyéni témadefiníciók a téma nevével. A használatához állítsa be a `theme` kulcsot ugyanarra a kulcsra. |\n| `autoConfirm` | logikai | `false` | A biztonságos működés érdekében hagyja ki a megerősítő felszólításokat |\n| `readFileCharLimit` | szám | `300` | Maximum megjeleníthető karakter az olvasási/kereső eszköz kimenetéből (a teljes tartalom továbbra is elküldésre kerül a modellnek) |\n| `silentToolOutput` | logikai | `false` | A szerszám kimeneti blokkjainak elrejtése a terminálban, miközben továbbra is megőrzi a modell/munkamenet szerszámeredményeit |\n| `activityVerbs` | karakterlánc vagy karakterlánc[] | beépített medence | Egyéni tevékenység ige vagy igekészlet a munkajelzőhöz, `Verb...` formátumban |\n| `activityVerbsEnabled` | logikai | `true` | Forgó tevékenység igék megjelenítése, például `Compiling...`, miközben az ügynök dolgozik |\n| `activitySymbol` | húr | `\"✳\"` | A tevékenységi ige előtt látható szimbólum a tevékenységmutató kimenetében |\n| `statusLine.showProviderModel` | logikai | `true` | Jelenítse meg az aktív szolgáltatót és modellt a szerző állapotsorában |\n| `statusLine.showContext` | logikai | `true` | Jelenítse meg a kontextus százalékos arányát a szerző állapotsorában |\n| `statusLine.showCommandHint` | logikai | `true` | Parancs, említés, készség és terminálbejegyzési tippek megjelenítése a szerző állapotsorában |\n| `statusLine.showPullRequest` | logikai | `true` | Mutassa meg a kapcsolódó lekérési kérés számát, vagy `PR #123`, ha nincs PR társítva |\n| `statusLine.showSessionLines` | logikai | `false` | Az aktuális munkamenet során hozzáadott és eltávolított sorok megjelenítése |\n| `statusLine.showQueue` | logikai | `true` | A sorba állított kérések számának megjelenítése az állapotsorban |\n| `statusLine.showActiveStatus` | logikai | `true` | Az aktív forduló állapotszövege megjelenítése, miközben az ügynök dolgozik |\n| `statusLine.showActiveMetrics` | logikai | `true` | Az eltelt idő és a token mérőszámainak megjelenítése, amíg az ügynök dolgozik |\n| `statusLine.showCancelHint` | logikai | `true` | Az Esc megszakítási tipp megjelenítése, miközben az ügynök dolgozik |\n| `completionReportEnabled` | logikai | `true` | Kérje meg a modellt, hogy a végrehajtott műveleti körök után tartalmazzon egy tömör befejezési jelentést |\n| `showCompletionNotification` | logikai | `true` | Rendszerértesítés megjelenítése a feladat befejezésekor |\n| `showThinking` | logikai | `true` | Az LLM érvelésének/gondolati folyamatának megjelenítése |\n| `terminalBell` | logikai | `true` | Csengessen terminálcsengőt, amikor a feladat befejeződött (jelvényt mutat a terminálfülön/dokkon) |\n| `checkForUpdates` | logikai | `true` | CLI frissítések keresése indításkor |\n| `updateCheckInterval` | szám | `24` | Órák a frissítési ellenőrzések között (a gyorsítótárazott eredményt az intervallumon belül használja) |\n\nAz egyéni témák bármely szemantikai színtokent felülírhatnak. A hiányzó tokenek a sötét témából származnak:\n```json\n{\n \"ui\": {\n \"theme\": \"company\",\n \"customThemes\": {\n \"company\": {\n \"vars\": {\n \"brand\": \"#7c3aed\",\n \"brandSoft\": \"#a78bfa\"\n },\n \"colors\": {\n \"accent\": \"brand\",\n \"borderAccent\": \"brandSoft\",\n \"mdHeading\": \"brand\"\n }\n }\n }\n }\n}\n```\nMegjegyzés: A `readFileCharLimit` és `silentToolOutput` csak a terminál megjelenítését érinti. A teljes tartalom továbbra is elküldésre kerül a modellnek, és eszközüzenetekben tárolódik.\n\nA néma eszközkimenetet a fájl szerkesztése nélkül is átkapcsolhatja:\n```bash\nautohand config set silent_tool_output true\nautohand config set silent_tool_output false\n```\nA forgó tevékenység igék között válthat a fájl szerkesztése nélkül:\n```bash\nautohand config set verbs activity true\nautohand config set verbs activity false\n```\nSzabja testre az igéket a konfigurációs fájlban, ha rögzített állapotcímkét vagy kis projektspecifikus elforgatást szeretne:\n```json\n{\n \"ui\": {\n \"activityVerbs\": \"Compiling\"\n }\n}\n```\n\n```json\n{\n \"ui\": {\n \"activityVerbs\": [\"Indexing\", \"Reviewing\", \"Testing\"],\n \"activitySymbol\": \">\"\n }\n}\n```\nA `activityVerbs` egyetlen karakterláncot vagy nem üres karakterlánc-tömböt fogad el. Ha a `activityVerbsEnabled` értéke `false`, a Autohand visszaesik a `Working...` értékre, ahelyett, hogy az egyéni vagy beépített igék között forogna.\n\nA fájl szerkesztése nélkül válthat a befejezési jelentések között, beleértve a strukturált `SITREP` promptot is:\n```bash\nautohand config set sitrep true\nautohand config set sitrep false\n```\n### Terminal Bell\n\nHa a `terminalBell` engedélyezve van (alapértelmezett), a Autohand megszólal a terminál csengőjén (`\\x07`), amikor egy feladat befejeződik. Ez kiváltja:\n\n- **Jelvény a terminál lapon** - Vizuális jelzőt mutat, hogy a munka elkészült\n- **Dokk ikon ugrál** - Felhívja a figyelmet, ha a terminál a háttérben van (macOS)\n- **Hang** - Ha a terminál hangjai engedélyezve vannak a terminál beállításaiban\n\nTerminálspecifikus beállítások:\n\n- **macOS terminál**: Beállítások > Profilok > Speciális > Bell (vizuális/hallható)\n- **iTerm2**: Beállítások > Profilok > Terminál > Értesítések\n- **VS Code Terminal**: Beállítások > Terminál > Integrált: Bell engedélyezése\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"terminalBell\": false\n }\n}\n```\n### Ink Renderer\n\nA Autohand alapértelmezés szerint az Ink 7 + React 19 renderert használja az interaktív terminálokhoz. A régi `ui.useInkRenderer` konfigurációs mezőt figyelmen kívül hagyja, így a régi konfigurációs fájlok nem kényszeríthetik a sima terminálszerkesztőt. A tinta a következőket nyújtja:\n\n- **Recgésmentes kimenet**: Minden UI-frissítés kötegelt React-egyeztetésen keresztül történik\n- **Munkasor funkció**: Írja be az utasításokat, amíg az ügynök dolgozik\n- **Jobb bemenetkezelés**: Nincsenek ütközések a readline-kezelők között\n- **Összeállítható felhasználói felület**: A jövőbeni fejlett felhasználói felületi funkciók alapja\n\nVészhelyzeti tartalék a terminál kompatibilitás érdekében:\n```bash\nAUTOHAND_LEGACY_UI=1 autohand\n```\nMegjegyzés: Ez a funkció kísérleti jellegű, és lehetnek szélső esetek. Az alapértelmezett ora-alapú felhasználói felület stabil és teljesen működőképes marad.\n\n### Frissítési ellenőrzés\n\nHa a `checkForUpdates` engedélyezve van (alapértelmezett), a Autohand indításkor ellenőrzi az új kiadásokat:\n```\n> Autohand v0.6.8 (abc1234) ✓ Up to date\n```\nHa elérhető frissítés:\n```\n> Autohand v0.6.7 (abc1234) ⬆ Update available: v0.6.8\n ↳ Run: curl -fsSL https://autohand.ai/install.sh | sh\n```\nHogyan működik:\n\n- Lekéri a GitHub API legújabb kiadását\n- A gyorsítótárak eredménye `~/.autohand/version-check.json`\n- Csak egyszer ellenőrzi `updateCheckInterval` óránként (alapértelmezett: 24)\n- Nem blokkoló: az indítás akkor is folytatódik, ha az ellenőrzés sikertelen\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"checkForUpdates\": false\n }\n}\n```\nVagy környezeti változón keresztül:\n```bash\nexport AUTOHAND_SKIP_UPDATE_CHECK=1\n```\n---\n\n## Ügynök beállításai\n\nAz ügynök viselkedésének és iterációs korlátainak szabályozása.\n```json\n{\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"autoMemory\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------- | ------------------------------------------------------------------------------ |\n| `maxIterations` | szám | `100` | Maximális szerszámiterációk felhasználói kérésenként a leállítás előtt |\n| `enableRequestQueue` | logikai | `true` | Lehetővé teszi a felhasználók számára, hogy kéréseket írjanak be és sorba állítsanak, miközben az ügynök dolgozik |\n| `toolSelectionCache` | logikai | `true` | Gyorsítótárazza a körönkénti szerszámséma helyi kiválasztását az egyenértékű szerszámkiválasztási bemenethez |\n| `autoMemory` | logikai | `true` | Tartós felhasználói/projektmemóriák kibontása és mentése sikeres interaktív fordulatok után |\n| `idleLogoutEnabled` | logikai | `true` | Jelentkezzen ki a hitelesített interaktív munkamenetekből az üresjárati időtúllépés után |\n| `idleTimeoutMs` | szám | `3600000` | Az inaktivitás ezredmásodpercei a hitelesített munkamenet kijelentkeztetése előtt (60 perc) |\n| `debug` | logikai | `false` | Részletes hibakeresési kimenet engedélyezése (naplózza az ügynök belső állapotát az stderr-be) |\n\n### Eszközséma kiválasztása\n\nA Autohand nem küld el minden teljes eszközsémát minden LLM-kérelemnél. A rendszerprompt tartalmaz egy kompakt eszközképesség-katalógust, és minden kérés csak egy kis konkrét sémát tesz közzé, amely a következők közül választható ki:\n\n- Az alapvető felderítési eszközök, például `tool_search`, `read_file`, `fff_find` és `fff_grep`\n- Szándékhoz illő eszközök szerkesztési, ellenőrzési, git, böngésző, web, függőségi vagy projektkövetési munkákhoz\n- A legutóbbi `tool_search` hívások során kért vagy kifejezetten név szerint megemlített eszközök\n\nEzzel elkerülhető a nagy előzetes kontextusköltség, ha az összes eszközséma elküldése a felhasználói szándék ismertsége előtt felmerül. `toolSelectionCache` csak a helyi választó gyorsítótárát vezérli az egyenértékű fordulatokhoz; nem hajt végre felhasználói előtti LLM-bemelegítést, és nem kényszerít ki nagy gyorsítótárazott prompt előtagot.\n\nA helyi választó gyorsítótárának letiltása:\n```json\n{\n \"agent\": {\n \"toolSelectionCache\": false\n }\n}\n```\nA hitelesített, régóta működő ügynöki munkamenetek életben tartásához, amíg munkára várnak:\n```json\n{\n \"agent\": {\n \"idleLogoutEnabled\": false\n }\n}\n```\nEgyetlen folyamathoz használja a `autohand --no-idle-logout` kódot, vagy állítsa be a `AUTOHAND_NO_IDLE_LOGOUT=1` értéket.\n\nAz inaktivitási idő módosításához állítsa az `idleTimeoutMs` értékét pozitív, ezredmásodpercben megadott időtartamra. Az alapértelmezett érték `3600000` (60 perc); az érvénytelen értékek az alapértelmezett értéket használják.\n\n### Hibakeresési mód\n\nEngedélyezze a hibakeresési módot az ügynök belső állapotának részletes naplózásához (reakcióhurok iterációi, prompt felépítés, munkamenet részletei). A kimenet az stderr-hez megy, hogy elkerülje a normál kimenet zavarását.\n\nHáromféleképpen engedélyezheti a hibakeresési módot (elsőbbségi sorrendben):\n\n1. **CLI jelző**: `autohand -d` vagy `autohand --debug`\n2. **Környezeti változó**: `AUTOHAND_DEBUG=1`\n3. **Konfigurációs fájl**: Állítsa be: `agent.debug: true`\n\n### Kérési sor\n\nHa a `enableRequestQueue` engedélyezve van, folytathatja az üzenetek beírását, miközben az ügynök feldolgoz egy korábbi kérést. A bevitel a sorba kerül, és automatikusan feldolgozásra kerül, amikor az aktuális feladat befejeződik.\n\n- Írja be az üzenetet, és nyomja meg az Enter billentyűt, hogy hozzáadja a sorhoz\n- Az állapotsor azt mutatja, hogy hány kérés van sorban\n- A kérések feldolgozása FIFO (first-in, first-out) sorrendben történik\n- A sor maximális mérete 10 kérés\n\n---\n\n## Engedélyek beállításai\n\nA szerszámengedélyek finom vezérlése.\n```json\n{\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\n \"run_command:npm *\",\n \"run_command:bun *\",\n \"run_command:git status\"\n ],\n \"blacklist\": [\"run_command:rm -rf *\", \"run_command:sudo *\"],\n \"rules\": [\n {\n \"tool\": \"run_command\",\n \"pattern\": \"npm test\",\n \"action\": \"allow\"\n }\n ],\n \"rememberSession\": true\n }\n}\n```\n### `mode`\n\n| Érték | Leírás |\n| ----------------- | ------------------------------------------------------ |\n| `\"interactive\"` | Jóváhagyás kérése veszélyes műveletekhez (alapértelmezett) |\n| `\"unrestricted\"` | Nincsenek felszólítások, engedélyezzen mindent |\n| `\"restricted\"` | Minden veszélyes művelet megtagadása |\n\n### `whitelist`\n\nSzerszámminták sora, amelyek soha nem igényelnek jóváhagyást.\n```json\n[\"run_command:npm *\", \"run_command:bun test\"]\n```\n### `blacklist`\n\nMindig blokkolt szerszámminták tömbje.\n```json\n[\"run_command:rm -rf /\", \"run_command:sudo *\"]\n```\n### `rules`\n\nFinom szemcsés engedélyezési szabályok.\n\n| Mező | Típus | Leírás |\n| --------- | --------- | -------------------------------------------- | ---------- | -------------- |\n| `tool` | húr | A megfelelő eszköznév |\n| `pattern` | húr | Opcionális minta az érvekhez való illeszkedéshez |\n| `action` | `\"allow\"` | `\"deny\"` | `\"prompt\"` | Intézkedések |\n\n### `rememberSession`\n\n| Típus | Alapértelmezett | Leírás |\n| ------- | ------- | -------------------------------------------- |\n| logikai | `true` | Emlékezzen az ülés jóváhagyási határozataira |\n\n### Helyi projektengedélyek\n\nMinden projektnek saját engedélybeállításai lehetnek, amelyek felülírják a globális konfigurációt. Ezeket a projekt gyökérkönyvtárában a `.autohand/settings.local.json` tartalmazza.\n\nAmikor jóváhagy egy fájlműveletet (szerkesztés, írás, törlés), a rendszer automatikusan ebbe a fájlba menti, így nem kéri újra ugyanazt a műveletet ebben a projektben.\n```json\n{\n \"version\": 1,\n \"permissions\": {\n \"whitelist\": [\n \"apply_patch:src/components/Button.tsx\",\n \"write_file:package.json\",\n \"run_command:bun test\"\n ]\n }\n}\n```\n**Hogyan működik:**\n\n- Amikor jóváhagy egy műveletet, a rendszer a következőbe menti: `.autohand/settings.local.json`\n- Legközelebb ugyanazt a műveletet a rendszer automatikusan jóváhagyja\n- A helyi projektbeállítások egyesülnek a globális beállításokkal (a helyi beállítások elsőbbséget élveznek)\n- Adja hozzá a `.autohand/settings.local.json` kódot a `.gitignore`-hoz, hogy a személyes beállítások privátak maradjanak\n\n**Mintaformátum:**\n\n- `tool_name:path` - Fájlműveletekhez (pl. `apply_patch:src/file.ts`)\n- `tool_name:command args` - Parancsokhoz (pl. `run_command:npm test`)\n\n### Megtekintési engedélyek\n\nJelenlegi engedélybeállításait kétféleképpen tekintheti meg:\n\n**CLI jelző (nem interaktív):**\n```bash\nautohand --permissions\n```\nEz a következőket jeleníti meg:\n\n- Jelenlegi engedélyezési mód (interaktív, korlátlan, korlátozott)\n- Munkaterület és konfigurációs fájlok elérési útjai\n- Minden jóváhagyott minta (engedélyezőlista)\n- Minden elutasított minta (feketelista)\n- Összefoglaló statisztika\n\n**Interaktív parancs:**\n```\n/permissions\n```\nInteraktív módban a `/permissions` parancs ugyanazokat az információkat és lehetőségeket biztosít a következőkhöz:\n\n- Elemek eltávolítása az engedélyezési listáról\n- Távolítsa el az elemeket a feketelistáról\n- Törölje az összes mentett engedélyt\n\n---\n\n## Patch mód\n\nA Patch mód lehetővé teszi megosztható, git-kompatibilis javítás létrehozását a munkaterület-fájlok módosítása nélkül. Ez hasznos:\n\n- A kód felülvizsgálata a változtatások alkalmazása előtt\n- Az AI által generált változások megosztása a csapat tagjaival\n- Reprodukálható változáskészletek készítése\n- CI/CD folyamatok, amelyeknek alkalmazása nélkül kell rögzíteni a változásokat\n\n### Használat\n```bash\n# Generate patch to stdout\nautohand --prompt \"add user authentication\" --patch\n\n# Save to file\nautohand --prompt \"add user authentication\" --patch --output auth.patch\n\n# Pipe to file (alternative)\nautohand --prompt \"refactor api handlers\" --patch > refactor.patch\n```\n### Viselkedés\n\nHa `--patch` meg van adva:\n\n- **Automatikus megerősítés**: Minden visszaigazolás automatikusan elfogadásra kerül (`--yes`)\n- **Nincsenek felszólítások**: Nem jelennek meg jóváhagyási értesítések (`--unrestricted` vélelmezett)\n- **Csak előnézet**: A változtatásokat rögzíti, de NEM írja lemezre\n- **Kikényszerített biztonság**: A feketelistán szereplő műveletek (`.env`, SSH-kulcsok, veszélyes parancsok) továbbra is blokkolva vannak\n\n### Javítások alkalmazása\n\nA címzettek szabványos git parancsokkal alkalmazhatják a javítást:\n```bash\n# Check what would be applied (dry-run)\ngit apply --check changes.patch\n\n# Apply the patch\ngit apply changes.patch\n\n# Apply with 3-way merge (handles conflicts better)\ngit apply -3 changes.patch\n\n# Apply and stage changes\ngit apply --index changes.patch\n\n# Reverse a patch\ngit apply -R changes.patch\n```\n### Patch formátum\n\nA generált javítás a git egységes diff formátumát követi:\n```diff\ndiff --git a/src/auth.ts b/src/auth.ts\nnew file mode 100644\n--- /dev/null\n+++ b/src/auth.ts\n@@ -0,0 +1,15 @@\n+export function authenticate(user: string, password: string) {\n+ // Implementation here\n+}\n\ndiff --git a/src/index.ts b/src/index.ts\n--- a/src/index.ts\n+++ b/src/index.ts\n@@ -1,5 +1,7 @@\n import express from 'express';\n+import { authenticate } from './auth';\n\n const app = express();\n+app.use(authenticate);\n```\n### Kilépési kódok\n\n| Kód | Jelentése |\n| ---- | ---------------------------------------------------- |\n| `0` | Siker, patch generált |\n| `1` | Hiba (hiányzó `--prompt`, engedély megtagadva stb.) |\n\n### Kombinálva más zászlókkal\n```bash\n# Use specific model\nautohand --prompt \"optimize queries\" --patch --model gpt-4o\n\n# Specify workspace\nautohand --prompt \"add tests\" --patch --path ./my-project\n\n# Use custom config\nautohand --prompt \"refactor\" --patch --config ~/.autohand/work.json\n```\n### Csapatmunkafolyamat-példa\n```bash\n# Developer A: Generate patch for a feature\nautohand --prompt \"implement user dashboard with charts\" --patch --output dashboard.patch\n\n# Share via git (create PR with just the patch file)\ngit checkout -b patch/dashboard\ngit add dashboard.patch\ngit commit -m \"Add dashboard feature patch\"\ngit push\n\n# Developer B: Review and apply\ngit fetch origin patch/dashboard\ngit apply dashboard.patch\n# Run tests, review code, then commit\ngit add -A && git commit -m \"feat: add user dashboard with charts\"\n```\n---\n\n## Hálózati beállítások\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Max | Leírás |\n| ------------ | ------ | ------- | --- | --------------------------------------- |\n| `maxRetries` | szám | `3` | `5` | Próbálkozzon újra sikertelen API-kérésekkel |\n| `timeout` | szám | `30000` | - | Kérelem időtúllépése ezredmásodpercben |\n| `retryDelay` | szám | `1000` | - | Az újrapróbálkozások közötti késleltetés ezredmásodpercben |\n\n---\n\n## Telemetriai beállítások\n\nA telemetria **alapértelmezés szerint le van tiltva** (feliratkozás). Engedélyezze a Autohand fejlesztéséhez.\n```json\n{\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true,\n \"companySecret\": \"\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | -------------------------- | ---------------------------------------------- |\n| `enabled` | logikai | `false` | Telemetria engedélyezése/letiltása (feliratkozás) |\n| `apiBaseUrl` | húr | `https://api.autohand.ai` | Telemetria API végpont |\n| `batchSize` | szám | `20` | Az automatikus kiürítés előtt kötegelt események száma |\n| `flushIntervalMs` | szám | `60000` | Öblítési időköz ezredmásodpercben (1 perc) |\n| `maxQueueSize` | szám | `500` | Maximális sorméret a régi események eldobása előtt |\n| `maxRetries` | szám | `3` | Próbálkozzon újra sikertelen telemetriai kérések esetén |\n| `enableSessionSync` | logikai | `true` | Szinkronizálja a munkameneteket a felhővel a csapatfunkciókhoz, ha a telemetria engedélyezve van |\n| `companySecret` | húr | `\"\"` | Vállalati titok API-hitelesítéshez |\n\nA szolgáltató/modell telemetria tartalmazza az aktív szolgáltatói azonosítót, a modellazonosítót és az elérhető nem titkos metaadatokat, például az egyéni szolgáltató megjelenítési nevét, API-formátumát, érvelési erőfeszítéseit és kontextusablakát. Az API-kulcsok és a vivőjogkivonatok soha nem szerepelnek benne.\n\n---\n\n## Külső ügynökök\n\nEgyéni ügynökdefiníciók betöltése külső könyvtárakból.\n```json\n{\n \"externalAgents\": {\n \"enabled\": true,\n \"paths\": [\"~/.autohand/agents\", \"/team/shared/agents\"]\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | -------- | ------- | -------------------------------- |\n| `enabled` | logikai | `false` | Külső ügynök betöltésének engedélyezése |\n| `paths` | string[] | `[]` | Könyvtárak az ügynökök betöltéséhez |\n\n---\n\n## Skills System\n\nA készségek olyan utasításcsomagok, amelyek speciális utasításokat adnak az AI-ügynöknek. Úgy működnek, mint az igény szerinti `AGENTS.md` fájlok, amelyek bizonyos feladatokhoz aktiválhatók.\n\n### Készségek felfedező helyek\n\nA készségek több helyről fedezhetők fel, és a későbbi források élveznek elsőbbséget:\n\n| Helyszín | Forrásazonosító | Leírás |\n| ----------------------------------------- | ------------------- | ------------------------------------------ |\n| `~/.codex/skills/**/SKILL.md` | `codex-user` | Felhasználói szintű Codex készségek (rekurzív) |\n| `~/.claude/skills/*/SKILL.md` | `claude-user` | Felhasználói szintű Claude-készségek (egy szint) |\n| `~/.autohand/skills/**/SKILL.md` | `autohand-user` | Felhasználói szintű Autohand készségek (rekurzív) |\n| `<project>/.claude/skills/*/SKILL.md` | `claude-project` | Projektszintű Claude-készségek (egy szint) |\n| `<project>/.autohand/skills/**/SKILL.md` | `autohand-project` | Projekt szintű Autohand készségek (rekurzív) |\n\n### Automatikus másolási viselkedés\n\nA Codex vagy Claude helyekről felfedezett készségek automatikusan átmásolódnak a megfelelő Autohand helyre:\n\n- `~/.codex/skills/` és `~/.claude/skills/` → `~/.autohand/skills/`\n- `<project>/.claude/skills/` → `<project>/.autohand/skills/`\n\nA Autohand helyeken meglévő készségek soha nem íródnak felül.\n\n### SKILL.md formátum\n\nA YAML frontmatter-t használó készségek, majd a leértékelési tartalom:\n```markdown\n---\nname: my-skill-name\ndescription: Brief description of the skill\nlicense: MIT\ncompatibility: Works with Node.js 18+\nallowed-tools: read_file write_file run_command\nmetadata:\n author: your-name\n version: \"1.0.0\"\n---\n\n# My Skill\n\nDetailed instructions for the AI agent...\n```\n| Mező | Kötelező | Max hossz | Leírás |\n| ---------------- | -------- | ---------- | ------------------------------------------- |\n| `name` | Igen | 64 karakter | Kisbetűs alfanumerikus, csak kötőjelekkel |\n| `description` | Igen | 1024 karakter | A készség rövid leírása |\n| `license` | Nem | - | Licencazonosító (pl. MIT, Apache-2.0) |\n| `compatibility` | Nem | 500 karakter | Kompatibilitási megjegyzések |\n| `allowed-tools` | Nem | - | Az engedélyezett eszközök szóközzel tagolt listája |\n| `metadata` | Nem | - | További kulcs-érték metaadatok |\n\n### Beviteli előtagok\n\nA Autohand támogatja a speciális előtagokat a beviteli promptban:\n\n| Előtag | Leírás | Példa |\n| ------ | ------------------------------- | ---------------------------------- |\n| `/` | Slash parancsok | `/help`, `/model`, `/quit`, `/exit` |\n| `@` | Fájl említések (automatikus kiegészítés) | `@src/index.ts` |\n| `$` | Szakértelem említése (automatikus kiegészítés) | `$frontend-design`, `$code-review` |\n| `!` | A terminálparancsok közvetlen futtatása | `! git status`, `! ls -la` |\n\n**Képességmegemlítések (`$`):**\n\n- Írja be a következőt: `$`, majd karaktereket az automatikus kiegészítéssel elérhető készségek megtekintéséhez\n- A Tab elfogadja a felső javaslatot (pl. `$frontend-design`)\n- A készségek a következőből fedezhetők fel: `~/.autohand/skills/` és `<project>/.autohand/skills/`\n- Az aktivált készségek a prompthoz vannak csatolva, mint speciális utasítások az aktuális munkamenethez\n- Az előnézeti panel a készség metaadatait mutatja (név, leírás, aktiválási állapot)\n\n**Shell-parancsok (`!`):**\n\n- A parancsok az aktuális munkakönyvtárban futnak\n- A kimenet közvetlenül a terminálon jelenik meg\n- Nem megy az LLM-be\n- 30 másodperces időtúllépés\n- A végrehajtás után visszatér a prompthoz\n\n### Slash parancsok\n\n#### `/skills` - Csomagkezelő\n\n| Parancs | Leírás |\n| -------------------------------- | ------------------------------------------- |\n| `/skills` | Sorolja fel az összes elérhető készséget |\n| `/skills use <name>` | Képesség aktiválása az aktuális munkamenethez |\n| `/skills deactivate <name>` | Készség deaktiválása |\n| `/skills info <name>` | Részletes képzettségi információk megjelenítése |\n| `/skills install` | Tallózás és telepítés a közösségi nyilvántartásból |\n| `/skills install @<slug>` | Telepítsen közösségi készségeket a slug |\n| `/skills search <query>` | Keresés a közösségi készségek nyilvántartásában |\n| `/skills trending` | Felkapott közösségi készségek megjelenítése |\n| `/skills remove <slug>` | Közösségi készség eltávolítása |\n| `/skills new` | Hozzon létre új készségeket interaktívan |\n| `/skills feedback <slug> <1-5>` | Értékeljen egy közösségi képességet |\n\n#### `/learn` - LLM-alapú Skill Advisor\n\n| Parancs | Leírás |\n| ---------------- | ---------------------------------------------------------------- |\n| `/learn` | A projekt elemzése és készségek ajánlása (gyors szkennelés) |\n| `/learn deep` | Mélyszkennelési projekt (forrásfájlokat olvas) a célzottabb eredmények érdekében |\n| `/learn update` | A projekt újraelemzése és az LLM által generált elavult készségek regenerálása |\n\nA `/learn` kétfázisú LLM-folyamatot használ:\n\n1. **1. fázis – Elemzés + Rangsorolás + Ellenőrzés**: Ellenőrzi a projekt szerkezetét, auditálja a telepített készségeket redundanciák/konfliktusok szempontjából, és rangsorolja a közösségi készségeket relevancia szerint (0-100).\n2. **2. fázis – Létrehozás** (feltételes): Ha egyik közösségi képesség sem ér el 60 feletti pontszámot, felajánlja a projektjéhez szabott egyéni képesség létrehozását.\nA generált készségek metaadatokat (`agentskill-source: llm-generated`, `agentskill-project-hash`) tartalmaznak, így a `/learn update` képes észlelni, ha megváltozik a kódbázis, és újra előállíthatja az elavult készségeket.\n\n### Automatikus készséggenerálás (`--auto-skill`)\n\nA `--auto-skill` CLI jelző készségeket generál az interaktív tanácsadói folyamat nélkül:\n```bash\nautohand --auto-skill\n```\nEz:\n\n1. Elemezze a projekt felépítését (package.json, követelmények.txt stb.)\n2. Nyelvek, keretrendszerek és minták észlelése\n3. Generáljon 3 releváns készséget az LLM segítségével\n4. Mentse el a készségeket ide: `<project>/.autohand/skills/`\n\nA célzottabb, interaktívabb élmény érdekében használja inkább a `/learn` kódot egy munkameneten belül.\n\nAz észlelt minták a következők:\n\n- **Nyelvek**: TypeScript, JavaScript, Python, Rust, Go\n- **Frameworks**: React, Next.js, Vue, Express, Flask, Django\n- **Minták**: CLI eszközök, tesztelés, monorepo, Docker, CI/CD\n\n---\n\n## API beállítások\n\nBackend API konfiguráció a csapatfunkciókhoz.\n```json\n{\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\",\n \"companySecret\": \"sk-team-xxx\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------------------------- | ---------------------------------------- |\n| `baseUrl` | húr | `https://api.autohand.ai` | API-végpont |\n| `companySecret` | húr | - | Csapat/vállalati titok a megosztott funkciókhoz |\n\nKörnyezeti változókkal is beállítható:\n\n- `AUTOHAND_API_URL` → `api.baseUrl`\n- `AUTOHAND_SECRET` → `api.companySecret`\n\n---\n\n## Hitelesítési beállítások\n\nHitelesítés és felhasználói munkamenet konfigurálása.\n```json\n{\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\",\n \"avatar\": \"https://example.com/avatar.png\"\n },\n \"expiresAt\": \"2025-12-31T23:59:59Z\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------- | ------ | ------- | --------------------------------------------- |\n| `token` | húr | - | Hitelesítési token API-hozzáféréshez |\n| `user` | tárgy | - | Hitelesített felhasználói adatok |\n| `user.id` | húr | - | Felhasználói azonosító |\n| `user.email` | húr | - | Felhasználó e-mail címe |\n| `user.name` | húr | - | Felhasználó megjelenített név |\n| `user.avatar` | húr | - | Felhasználói avatar URL-je (nem kötelező) |\n| `expiresAt` | húr | - | Token lejárati időbélyegzője (ISO 8601 formátum) |\n\n---\n\n## Közösségi készségek beállításai\n\nKonfiguráció a közösségi készségek felfedezéséhez és kezeléséhez.\n```json\n{\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------------------------- | ------- | ------- | -------------------------------------------------------------- |\n| `enabled` | logikai | `true` | Közösségi készségek funkcióinak engedélyezése |\n| `showSuggestionsOnStartup` | logikai | `true` | Képességi javaslatok megjelenítése indításkor, ha nem állnak rendelkezésre szállítói ismeretek |\n| `autoBackup` | logikai | `true` | A felfedezett szállítói ismeretek automatikus biztonsági mentése API |\n\n---\n\n## Megosztási beállítások\n\nKonfiguráció a munkamenet megosztásához a `/share` paranccsal. A munkamenetek a [autohand.link](https://autohand.link) címen találhatók.\n```json\n{\n \"share\": {\n \"enabled\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ------------------------------------ |\n| `enabled` | logikai | `true` | A `/share` parancs engedélyezése/letiltása |\n\n### YAML formátum\n```yaml\nshare:\n enabled: true\n```\n### Munkamenet-megosztás letiltása\n\nHa biztonsági vagy adatvédelmi okokból ki szeretné kapcsolni a munkamenet-megosztást:\n```json\n{\n \"share\": {\n \"enabled\": false\n }\n}\n```\nHa le van tiltva, a `/share` futtatásakor a következő jelenik meg:\n```\nSession sharing is disabled.\nTo enable, set share.enabled: true in your config file.\n```\n---\n\n## Beállítások szinkronizálása\n\nA Autohand szinkronizálhatja a konfigurációt az eszközök között a bejelentkezett felhasználók számára. A beállításokat a Cloudflare R2 biztonságosan tárolja, és a feltöltés előtt titkosítja.\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"exclude\": [],\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------------- | -------- | ---------------- | --------------------------------------------------- |\n| `enabled` | logikai | `true` (naplózva) | Beállítások szinkronizálásának engedélyezése/letiltása |\n| `interval` | szám | `300000` | Szinkronizálási idő ezredmásodpercben (alapértelmezett: 5 perc) |\n| `exclude` | string[] | `[]` | Globális minták a szinkronizálásból kizárandó |\n| `includeTelemetry` | logikai | `false` | Telemetriai adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n| `includeFeedback` | logikai | `false` | Visszajelzési adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n\n### CLI zászló\n```bash\n# Disable sync for this session\nautohand --sync-settings=false\n\n# Enable sync (default for logged users)\nautohand --sync-settings\n```\n### Mi lesz szinkronizálva\n\nAlapértelmezés szerint ezek az elemek szinkronizálva vannak a bejelentkezett felhasználók számára:\n\n- **Konfiguráció** (`config.json`) - Az API-kulcsok a feltöltés előtt titkosítva vannak\n- **Egyéni ügynökök** (`agents/`)\n- **Közösségi készségek** (`community-skills/`)\n- **Felhasználói akasztók** (`hooks/`)\n- **Memória** (`memory/`)\n- **Projektismeret** (`projects/`)\n- **Munkamenetek előzményei** (`sessions/`)\n- **Megosztott tartalom** (`share/`)\n- **Egyéni készségek** (`skills/`)\n\n### Mi nem szinkronizál (alapértelmezés szerint)\n\n- **Eszközazonosító** (`device-id`) - Eszközönként egyedi\n- **Hibanaplók** (`error.log`) - Csak helyi\n- **Verziógyorsítótár** (`version-*.json`) - Helyi gyorsítótár fájlok\n\n### Beleegyezés alapú szinkronizálás\n\nEzek az elemek kifejezett feliratkozást igényelnek a konfigurációban:\n\n- **Telemetriai adatok** - Állítsa be a `sync.includeTelemetry: true` szinkronizálást\n- **Visszajelzési adatok** - Állítsa be a `sync.includeFeedback: true` szinkronizálását\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"includeTelemetry\": true,\n \"includeFeedback\": true\n }\n}\n```\n### Konfliktusmegoldás\n\nHa ütközések lépnek fel (ugyanaz a fájl több eszközön módosítva), a **felhőverzió nyer**. Ez biztosítja a következetességet az új eszközökön való bejelentkezéskor.\n\n### Biztonság\n\nA `config.json` API-kulcsait és egyéb bizalmas adatait a rendszer a hitelesítési token segítségével titkosítja a feltöltés előtt. Csak az Ön hitelesítő adataival lehet visszafejteni.\n\n**Mi van titkosítva:**\n\n- `apiKey` nevű mezők\n- `Key`, `Token`, `Secret` végződő mezők\n- A `password` mező\n\n### Hogyan működik\n\n1. **Indításkor**: Ha be van jelentkezve, a szinkronizálási szolgáltatás automatikusan elindul\n2. **5 percenként**: A beállításokat összehasonlítja a felhőalapú tárolással\n3. **A felhő nyer**: A távoli módosítások letöltése először történik meg\n4. **Helyi feltöltések**: Új helyi módosítások kerülnek feltöltésre\n5. **Kilépéskor**: A szinkronizálási szolgáltatás kecsesen leáll\n\n### Fájlok kizárása\n\nKizárhat bizonyos fájlokat vagy mintákat a szinkronizálásból:\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"exclude\": [\"custom-local-config.json\", \"temp/*\"]\n }\n}\n```\n### YAML formátum\n```yaml\nsync:\n enabled: true\n interval: 300000\n exclude: []\n includeTelemetry: false\n includeFeedback: false\n```\n---\n\n## MCP beállítások\n\nÁllítsa be az MCP-kiszolgálókat (Model Context Protocol) a Autohand külső eszközökkel történő bővítésére.\n```json\n{\n \"mcp\": {\n \"enabled\": true,\n \"servers\": [\n {\n \"name\": \"filesystem\",\n \"transport\": \"stdio\",\n \"command\": \"npx\",\n \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/tmp\"],\n \"env\": {},\n \"autoConnect\": true\n },\n {\n \"name\": \"context7\",\n \"transport\": \"http\",\n \"url\": \"https://mcp.context7.com/mcp\",\n \"headers\": {\n \"CONTEXT7_API_KEY\": \"ctx7sk-your-api-key\"\n },\n \"autoConnect\": true\n }\n ]\n }\n}\n```\n### `mcp.enabled`\n\n- **Típus**: `boolean`\n- **Alapértelmezett**: `true`\n- **Leírás**: Az összes MCP-támogatás engedélyezése vagy letiltása. Ha `false`, akkor az indításkor nem csatlakozik szerver, és az MCP-eszközök nem érhetők el.\n\n### `mcp.servers`\n\n- **Típus**: `McpServerConfigEntry[]`\n- **Alapértelmezett**: `[]`\n- **Leírás**: MCP szerver konfigurációk tömbje.\n\n### Szerver beviteli mezői\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | --------------------------------- | -------------- | ------- | -------------------------------------------------------------- |\n| `name` | `string` | Igen | - | Egyedi szerverazonosító |\n| `transport` | `\"stdio\"` \\| `\"sse\"` \\| `\"http\"` | Igen | - | Szállítás típusa |\n| `command` | `string` | Igen (stdio) | - | Parancs a szerverfolyamat elindításához |\n| `args` | `string[]` | Nem | `[]` | Érvek a parancs mellett |\n| `url` | `string` | Igen (sse/http) | - | Szervervégpont URL |\n| `headers` | `Record<string, string>` | Nem | `{}` | Egyéni HTTP-fejlécek http/sse szállításhoz (pl. hitelesítési tokenek) |\n| `env` | `Record<string, string>` | Nem | `{}` | A kiszolgálónak átadott környezeti változók |\n| `autoConnect` | `boolean` | Nem | `true` | Automatikus csatlakozás indításkor |\n\n> A szerverek aszinkron módon csatlakoznak a háttérben az indítás során anélkül, hogy blokkolnák a promptot. A `/mcp` segítségével interaktívan kezelheti a szervereket, vagy a `/mcp add` segítségével böngészhet a közösségi nyilvántartásban, vagy adhat hozzá egyéni szervereket.\n\n> A teljes MCP-dokumentációért lásd: [docs/mcp.md](mcp.md).\n\n---\n\n## Hooks beállítások\n\nKonfiguráció életciklus-horogokhoz, amelyek shell-parancsokat futtatnak az ügynökeseményeken. A részletekért lásd a [Hooks dokumentációt] (./hooks.md).\n```json\n{\n \"hooks\": {\n \"enabled\": true,\n \"hooks\": [\n {\n \"event\": \"pre-tool\",\n \"command\": \"echo \\\"Running tool: $HOOK_TOOL\\\" >> ~/.autohand/hooks.log\",\n \"description\": \"Log all tool executions\",\n \"enabled\": true\n },\n {\n \"event\": \"file-modified\",\n \"command\": \"./scripts/on-file-change.sh\",\n \"description\": \"Custom file change handler\",\n \"filter\": { \"path\": [\"src/**/*.ts\"] }\n },\n {\n \"event\": \"post-response\",\n \"command\": \"curl -X POST https://api.example.com/webhook -d '{\\\"tokens\\\": $HOOK_TOKENS}'\",\n \"description\": \"Track token usage\",\n \"async\": true\n }\n ]\n }\n}\n```\n### `hooks`\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ---------------------------------- |\n| `enabled` | logikai | `true` | Az összes hook engedélyezése/letiltása globálisan |\n| `hooks` | tömb | `[]` | Horogdefiníciók tömbje |\n\n### Hook meghatározása\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | ------- | -------- | ------- | --------------------------------- |\n| `event` | húr | Igen | - | Bekapcsolandó esemény |\n| `command` | húr | Igen | - | Shell parancs végrehajtásához |\n| `description` | húr | Nem | - | A `/hooks` kijelző leírása |\n| `enabled` | logikai | Nem | `true` | Aktív-e a horog |\n| `timeout` | szám | Nem | `5000` | Időtúllépés ezredmásodpercben |\n| `async` | logikai | Nem | `false` | Futtasson blokkolás nélkül |\n| `filter` | tárgy | Nem | - | Szűrés szerszám vagy útvonal szerint |\n\n### Hook események\n\n| Esemény | Amikor kirúgták |\n| ---------------- | -------------------------------------- |\n| `pre-tool` | Mielőtt bármilyen eszköz végrehajtaná |\n| `post-tool` | A szerszám befejezése után |\n| `file-modified` | A fájl létrehozásakor/módosításakor/törlésekor |\n| `pre-prompt` | Mielőtt elküldené az LLM-nek |\n| `post-response` | Miután az LLM válaszol |\n| `session-error` | Hiba esetén |\n\n### Környezeti változók\n\nAmikor a hook fut, ezek a környezeti változók állnak rendelkezésre:\n\n| Változó | Leírás |\n| ----------------- | ---------------------------- |\n| `HOOK_EVENT` | Esemény neve |\n| `HOOK_WORKSPACE` | Munkaterület gyökérútvonala |\n| `HOOK_TOOL` | Szerszámnév (szerszámesemények) |\n| `HOOK_ARGS` | JSON-kódolt eszköz args |\n| `HOOK_SUCCESS` | igaz/hamis (utóeszköz) |\n| `HOOK_PATH` | Fájl elérési útja (fájlmódosított) |\n| `HOOK_TOKENS` | Felhasznált tokenek (válasz után) |\n\n---\n\n## Chrome-bővítmény beállításai\n\nIrányítsd a Autohand Chrome-bővítmény integrációját. Tekintse meg a teljes útmutatót: [Autohand Chrome-ban](./autohand-in-chrome.md).\n```json\n{\n \"chrome\": {\n \"extensionId\": \"your-extension-id\",\n \"enabledByDefault\": false,\n \"browser\": \"auto\",\n \"userDataDir\": \"/path/to/chrome/user-data\",\n \"profileDirectory\": \"Default\",\n \"installUrl\": \"https://autohand.ai/chrome\"\n }\n}\n```\n| Kulcs | Típus | Alapértelmezett | Leírás |\n| ------------------- | --------- | -------- | -------------------------------------------------------------------------- |\n| `extensionId` | `string` | — | Telepített Chrome-bővítményazonosító a közvetlen átadáshoz |\n| `enabledByDefault` | `boolean` | `false` | A böngészőhíd automatikus indítása a CLI |-vel\n| `browser` | `string` | `\"auto\"` | Előnyben részesített Chromium böngésző: `auto`, `chrome`, `chromium`, `brave`, `edge` |\n| `userDataDir` | `string` | — | Böngésző felhasználói adatok könyvtára a megfelelő profil megcélzásához |\n| `profileDirectory` | `string` | — | Böngészőprofil-könyvtár neve (pl. `\"Default\"`, `\"Profile 1\"`) |\n| `installUrl` | `string` | — | Tartalék URL, ha a bővítményazonosító nincs konfigurálva |\n\n### CLI zászlók\n```bash\nautohand --chrome # Start with browser bridge enabled\nautohand --no-chrome # Start with browser bridge disabled\n```\n### Slash parancsok\n```\n/chrome # Open Chrome integration panel\n/chrome disconnect # Close the browser bridge connection\n```\n---\n\n## Teljes példa\n\n### JSON formátum (`~/.autohand/config.json`)\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\"\n },\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"model\": \"llama3.2\"\n },\n \"workspace\": {\n \"defaultRoot\": \"~/projects\",\n \"allowDangerousOps\": false\n },\n \"ui\": {\n \"theme\": \"dark\",\n \"autoConfirm\": false,\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n },\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n },\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\"run_command:npm *\", \"run_command:bun *\"],\n \"blacklist\": [\"run_command:rm -rf /\"],\n \"rememberSession\": true\n },\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n },\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true\n },\n \"externalAgents\": {\n \"enabled\": false,\n \"paths\": []\n },\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\"\n },\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\"\n }\n },\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n },\n \"share\": {\n \"enabled\": true\n },\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n### YAML formátum (`~/.autohand/config.yaml`)\n```yaml\nprovider: openrouter\n\nopenrouter:\n apiKey: sk-or-v1-your-key-here\n baseUrl: https://openrouter.ai/api/v1\n model: your-modelcard-id-here\n\nollama:\n baseUrl: http://localhost:11434\n model: llama3.2\n\nworkspace:\n defaultRoot: ~/projects\n allowDangerousOps: false\n\nui:\n theme: dark\n autoConfirm: false\n showCompletionNotification: true\n showThinking: true\n terminalBell: true\n checkForUpdates: true\n updateCheckInterval: 24\n\nagent:\n maxIterations: 100\n enableRequestQueue: true\n toolSelectionCache: true\n idleLogoutEnabled: true\n idleTimeoutMs: 3600000\n debug: false\n\npermissions:\n mode: interactive\n whitelist:\n - \"run_command:npm *\"\n - \"run_command:bun *\"\n blacklist:\n - \"run_command:rm -rf /\"\n rememberSession: true\n\nnetwork:\n maxRetries: 3\n timeout: 30000\n retryDelay: 1000\n\ntelemetry:\n enabled: false\n apiBaseUrl: https://api.autohand.ai\n batchSize: 20\n flushIntervalMs: 60000\n maxQueueSize: 500\n maxRetries: 3\n enableSessionSync: true\n\nexternalAgents:\n enabled: false\n paths: []\n\napi:\n baseUrl: https://api.autohand.ai\n\nauth:\n token: your-auth-token\n user:\n id: user-id\n email: user@example.com\n name: User Name\n\ncommunitySkills:\n enabled: true\n showSuggestionsOnStartup: true\n autoBackup: true\n\nshare:\n enabled: true\n\nsync:\n enabled: true\n interval: 300000\n includeTelemetry: false\n includeFeedback: false\n```\n### TOML formátum (`~/.autohand/config.toml`)\n```toml\nprovider = \"openrouter\"\n\n[openrouter]\napiKey = \"sk-or-v1-your-key-here\"\nbaseUrl = \"https://openrouter.ai/api/v1\"\nmodel = \"your-modelcard-id-here\"\n\n[ollama]\nbaseUrl = \"http://localhost:11434\"\nmodel = \"llama3.2\"\n\n[workspace]\ndefaultRoot = \"~/projects\"\nallowDangerousOps = false\n\n[ui]\ntheme = \"dark\"\nautoConfirm = false\nshowCompletionNotification = true\nshowThinking = true\nterminalBell = true\ncheckForUpdates = true\nupdateCheckInterval = 24\n\n[ui.customThemes.company.vars]\nbrand = \"#7c3aed\"\nbrandSoft = \"#a78bfa\"\n\n[ui.customThemes.company.colors]\naccent = \"brand\"\nborderAccent = \"brandSoft\"\nmdHeading = \"brand\"\n\n[agent]\nmaxIterations = 100\nenableRequestQueue = true\ntoolSelectionCache = true\nidleLogoutEnabled = true\nidleTimeoutMs = 3600000\ndebug = false\n\n[permissions]\nmode = \"interactive\"\nwhitelist = [\"run_command:npm *\", \"run_command:bun *\"]\nblacklist = [\"run_command:rm -rf /\"]\nrememberSession = true\n```\n---\n\n## Címtárszerkezet\n\nA Autohand az adatokat `~/.autohand/` (vagy `$AUTOHAND_HOME`) kódban tárolja:\n```\n~/.autohand/\n├── config.json # Main configuration\n├── config.toml # Alternative TOML config\n├── config.yaml # Alternative YAML config\n├── device-id # Unique device identifier\n├── error.log # Error log\n├── feedback.log # Feedback submissions\n├── sessions/ # Session history\n├── projects/ # Project knowledge base\n├── memory/ # User-level memory\n├── commands/ # Custom commands\n├── agents/ # Agent definitions\n├── tools/ # Custom meta-tools\n├── feedback/ # Feedback state\n└── telemetry/ # Telemetry data\n ├── queue.json\n └── session-sync-queue.json\n```\n**Projektszintű könyvtár** (a munkaterület gyökérkönyvtárában):\n```\n<project>/.autohand/\n├── settings.local.json # Local project permissions (gitignore this)\n├── memory/ # Project-specific memory\n├── skills/ # Project-specific skills\n└── tools/ # Project-specific meta-tools\n```\n---\n\n## CLI-jelzők (konfig felülbírálása)\n\nEzek a jelzők felülírják a konfigurációs fájl beállításait:\n\n### Alapjelzők\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `-v, --version` | Az aktuális verzió kiadása |\n| `-p, --prompt [text]` | Futtasson egyetlen utasítást parancs módban |\n| `--path <path>` | Munkaterület gyökér felülbírálása |\n| `--config <path>` | Egyéni konfigurációs fájl használata |\n| `--model <model>` | Modell felülírása |\n| `--temperature <n>` | Beállított mintavételi hőmérséklet (0-1) |\n| `--thinking [level]` | Gondolkodási/érvelési mélység beállítása (nincs, normál, kiterjesztett) |\n| `-y, --yes` | Automatikus megerősítési kérések |\n| `--dry-run` | Előnézet végrehajtás nélkül |\n| `-d, --debug` | Részletes hibakeresési kimenet engedélyezése |\n| `--bare` | Minimális explicit mód; beállítja a `AUTOHAND_CODE_SIMPLE=1` értéket és letiltja a perjel parancsokat |\n\n### Engedélyek és biztonság\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--unrestricted` | Nincs jóváhagyási felszólítás |\n| `--restricted` | Veszélyes műveletek megtagadása |\n| `--permissions` | Jelenítse meg az aktuális engedélybeállításokat, és lépjen ki |\n| `--no-idle-logout` | A hitelesített tétlen kijelentkezés letiltása a hosszan futó ügynöki munkamenetekhez |\n| `--yolo [pattern]` | Eszközhívások megfelelő minta automatikus jóváhagyása (pl. `allow:read,write` vagy `deny:delete`) |\n| `--timeout <seconds>` | Időtúllépés másodpercben az automatikus jóváhagyási módhoz |\n\n### Git & Worktree\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--worktree [name]` | Munkamenet futtatása elszigetelt git-munkafán (opcionális munkafa/ág neve) |\n| `--tmux` | Indítás egy dedikált tmux munkamenetben (az `--worktree`-t jelenti; nem használható a `--no-worktree` kóddal) |\n| `--no-worktree` | A git munkafa elkülönítésének letiltása automatikus módban |\n| `-c, --auto-commit` | Változások automatikus véglegesítése a feladatok elvégzése után |\n| `--patch` | Git javítás generálása változtatások alkalmazása nélkül |\n| `--output <file>` | A javítás kimeneti fájlja (a --patch-el együtt használatos) |\n\n### Automatikus mód\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-mode [prompt]` | Engedélyezze az interaktív automatikus módot, vagy indítson önálló hurkot egy soron belüli feladattal |\n| `--max-iterations <n>` | Maximális automatikus módú iterációk (alapértelmezett: 50) |\n| `--completion-promise <text>` | Befejezésjelző szövege (alapértelmezett: \"KÉSZ\") |\n| `--checkpoint-interval <n>` | A Git minden N iterációt végrehajt (alapértelmezett: 5) |\n| `--max-runtime <m>` | Maximális futási idő percekben (alapértelmezett: 120) |\n| `--max-cost <d>` | Maximális API költség dollárban (alapértelmezett: 10) |\n| `--interactive-on-complete` | Az automatikus mód vége után adja át közvetlenül az interaktív módba (csak TTY) |\n\n### Készségek és tanulás\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-skill` | Készségek automatikus generálása projektelemzés alapján (lásd még: `/learn` az interaktív tanácsadóhoz) |\n| `--learn` | Futtassa a `/learn` készségtanácsadót nem interaktív módon (a javasolt készségek elemzése és telepítése) |\n| `--learn-update` | A projekt újraelemzése és az LLM által generált elavult készségek nem interaktív módon történő regenerálása |\n| `--skill-install [name]` | Telepítsen egy közösségi képességet (megnyitja a böngészőt, ha nincs megadva név) |\n| `--project` | A készség telepítése projektszintre (a --skill-install funkcióval) |\n\n### Hitelesítés és fiók\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--login` | Jelentkezzen be Autohand-fiókjába |\n| `--logout` | Jelentkezzen ki Autohand-fiókjából |\n| `--sync-settings` | A beállítások szinkronizálásának engedélyezése/letiltása (alapértelmezett: igaz a bejelentkezett felhasználók számára) |\n\n### Beállítás és információ\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--setup` | Futtassa a telepítővarázslót a Autohand |\n| `--about` | Információk megjelenítése a Autohand-ról (verzió, linkek, hozzájárulási információk) |\n| `--feedback` | Visszajelzés küldése a Autohand csapatának |\n| `--settings` | A Autohand beállításainak konfigurálása (ugyanaz, mint a `/settings` interaktív módban) |\n\n### Munkaterület és könyvtárak\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--add-dir <path...>` | További könyvtárak hozzáadása a munkaterület hatóköréhez (többször is használható) |\n\n### Futtatási módok\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--mode <mode>` | Futtatási mód: interaktív (alapértelmezett), rpc vagy acp |\n| `--acp` | A --mode acp rövidítése (Agent Client Protocol over stdio) |\n| `--teammate-mode <mode>` | Csapat megjelenítési mód: automatikus, folyamatban lévő vagy tmux |\n\n### UI és nyelv\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--display-language <locale>` | Megjelenítési nyelv beállítása (pl. en, id, zh-cn, fr, de, ja) |\n| `--search-engine <provider>` | Internetes keresőszolgáltató beállítása (google, brave, duckduckgo, párhuzamos) |\n| `--cc, --context-compact` | Környezettömörítés engedélyezése (alapértelmezett: be) |\n| `--no-cc, --no-context-compact` | Kontextustömörítés letiltása |\n\n### Chrome integráció\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--chrome` | A Chrome böngésző integrációjának engedélyezése (ugyanaz, mint `/chrome`) |\n| `--no-chrome` | A Chrome böngésző integrációjának letiltása |\n\n### Rendszerprompt\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-sys-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt-file <path>` | Cserélje le a teljes rendszerprompt a fájltartalommal |\n| `--append-system-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n### Kísérletváltási parancsok\n\n| Parancs | Leírás |\n| -------------------------------------- | ------------------------------------------------- |\n| `autohand experiments list` | Sorolja fel a helyi és távoli funkciók azonosítóit, a forrást, az életciklus szakaszt és az állapotot |\n| `autohand experiments status <feature>` | Mutasson egy szolgáltatáskapcsolót, konfigurációs elérési utat vagy távoli metaadatokat és állapotot |\n| `autohand experiments refresh` | Távoli funkciójelzők letöltése a Autohand API-ból |\n| `autohand experiments enable <feature>` | Konfigurációval támogatott szolgáltatáskapcsoló engedélyezése |\n| `autohand experiments disable <feature>` | A konfigurációval támogatott szolgáltatáskapcsoló letiltása |\n\nA távoli funkciójelzők lekérése innen: `/v1/feature-flags/evaluate`, gyorsítótár a `~/.autohand/feature-flags.json` címen történik, és az API által biztosított TTL lejárta után frissül. A `features.environment` segítségével válassza ki a távoli jelzőkörnyezetet, a `features.remoteOverrides` segítségével pedig a felhasználó által felülbírálható távoli jelzők helyi letiltásához.\n\nA `usage_v2` egy kísérleti funkciókapcsoló a `/usage` irányítópulthoz és a továbbfejlesztett `/status` Használat laphoz. Engedélyezze a következővel: `autohand experiments enable usage_v2`.\n\nA `token_usage_status` egy kísérleti funkciókapcsoló (konfigurációs útvonal `features.tokenUsageStatus`, alapértelmezés szerint kikapcsolva), amely a valós idejű tokenhasználatot mutatja a működő állapotsorban – kumulatív tokenek felfelé (`↑`) és lefelé (`↓`) plusz g kontextusban, cc. `↑15.7k ↓3.2k · context: 6.0% (15.7k/262.1k)`. A kontextusablak modellenként van feloldva az összes szolgáltatónál. Engedélyezze a következővel: `autohand experiments enable token_usage_status`.\n\n---\n\n## Slash parancsok\n\nAz Autohand perjel parancsok gazdag készletét kínálja interaktív használatra. A javaslatok megtekintéséhez írja be a `/` kódot a REPL-be.\n\n### Munkamenet-kezelés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/quit` | Kilépés az aktuális munkamenetből |\n| `/exit` | Kilépés az aktuális munkamenetből |\n| `/new` | Új beszélgetés indítása (memóriakivonattal) |\n| `/clear` | Tiszta beszélgetés automatikus memóriakivonással |\n| `/session` | Az aktuális munkamenet részleteinek megjelenítése |\n| `/sessions` | Korábbi munkamenetek listája |\n| `/resume` | Előző munkamenet folytatása |\n| `/history` | A munkamenet-előzmények böngészése oldalszámozással |\n| `/undo` | Git módosítások és utolsó forduló visszaállítása |\n| `/export` | Munkamenet exportálása markdown/JSON/HTML |\n| `/share` | Aktuális munkamenet megosztása |\n| `/status` | Munkamenet állapotának megjelenítése |\n| `/usage` | Modell, szolgáltató, kontextus és használati korlátok megjelenítése |\n\n### Modell és szolgáltató\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/model` | LLM-modell váltása vagy konfigurálása |\n| `/cc` | Kézi környezet tömörítése |\n\n### Projektbeállítás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/init` | Hozzon létre `AGENTS.md` fájlt az aktuális könyvtárban |\n| `/setup` | Futtassa a telepítővarázslót a Autohand | konfigurálásához\n| `/add-dir` | Könyvtárak hozzáadása a munkaterület hatóköréhez |\n\n### Ügynökök és csapatok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/agents` | Az elérhető alügynökök listája |\n| `/agents-new` | Hozzon létre egy új ügynököt a varázslón keresztül |\n| `/squad` | Nyissa meg/kezelje az önálló Autohand Squad futtatókörnyezetet |\n| `/team` | Csapat irányítása párhuzamos munkához |\n| `/tasks` | Feladatok kezelése csapatban |\n| `/message` | Üzenet küldése csapattársnak |\n\n### Készségek\n\n| Parancs | Leírás |\n| ----------------- | --------------------------------------------------- |\n| `/skills` | Készségek listája és kezelése |\n| `/skills-new` | Új készség létrehozása |\n| `/learn` | Tanulja meg és telepítse az ajánlott készségeket |\n\n### Memória és beállítások\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/memory` | Tárolt emlékek megtekintése és kezelése |\n| `/settings` | A Autohand beállításainak konfigurálása |\n| `/statusline` | A szerző állapotsor mezőinek konfigurálása |\n| `/experiments` | Kísérleti jellemzők kapcsolóinak váltása |\n| `/sync` | Beállítások szinkronizálása eszközök között |\n| `/import` | Importálhat munkameneteket, beállításokat, MCP-t, memóriát, készségeket és hook-okat a támogatott ügynökökről |\n\n### Engedélyek és akasztók\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/permissions`| Szerszámengedélyek kezelése |\n| `/hooks` | Életciklus-horogok kezelése |\n\n### Hitelesítés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/login` | Hitelesítés a Autohand API-val |\n| `/logout` | Kijelentkezés a Autohand fiókból |\n\n### Eszközök és segédprogramok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/search` | Keresés az interneten |\n| `/formatters` | Az elérhető kódformázók listája |\n| `/lint` | Sorolja fel a rendelkezésre álló kódsorokat |\n| `/completion` | Shell befejező szkriptek generálása |\n| `/plan` | Megvalósítási terv létrehozása |\n| `/review` | Kódellenőrzés végrehajtása |\n| `/pr-review` | Lehívási kérelem áttekintése |\n\n### IDE integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/ide` | A futó IDE észlelése és csatlakozása |\n\n### MCP (Model Context Protocol)\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/mcp` | Interaktív MCP-kiszolgálókezelő |\n\n### Automatizálás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/automode` | Indítsa el az autonóm kódolási módot |\n| `/repeat` | Ismétlődő munkák ütemezése |\n| `/yolo` | Yolo mód váltása (automatikus jóváhagyási eszközök) |\n\n### Chrome integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/chrome` | A Chrome böngésző integrációjának engedélyezése |\n\n### UI és kijelző\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/help` | Az elérhető perjel parancsok és tippek megjelenítése |\n| `/about` | Információk megjelenítése a következőről: Autohand |\n| `/theme` | Színtéma módosítása |\n| `/language` | Kijelző nyelvének módosítása |\n| `/feedback` | Visszajelzés küldése a Autohand csapatának |\n\n---\n\n## Rendszerprompt testreszabás\nAutohand lehetővé teszi az AI-ügynök által használt rendszerprompt testreszabását. Ez speciális munkafolyamatok, egyedi utasítások vagy más rendszerekkel való integráció esetén hasznos.\n\n### CLI zászlók\n\n| zászló | Leírás |\n| ------------------------------ | -------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerprompt |\n| `--append-sys-prompt <value>` | Tartalom hozzáfűzése az alapértelmezett rendszerprompthoz |\n\nMindkét zászló elfogadja a következőket:\n\n- **Inline karakterlánc**: Közvetlen szövegtartalom\n- **Fájl elérési útja**: A promptot tartalmazó fájl elérési útja (automatikusan észlelve)\n\n### Fájlútvonal észlelése\n\nEgy érték fájlútvonalként kezelendő, ha:\n\n- A következővel kezdődik: `./`, `../`, `/` vagy `~/`\n- Windows meghajtóbetűjellel kezdődik (pl. `C:\\`)\n- A következővel végződik: `.txt`, `.md` vagy `.prompt`\n- Útleválasztókat tartalmaz szóközök nélkül\n\nEllenkező esetben a rendszer soron belüli karakterláncként kezeli.\n\n### `--sys-prompt` (Teljes csere)\n\nHa rendelkezésre áll, ez **teljesen lecseréli** az alapértelmezett rendszerpromptot. Az ügynök NEM tölti be:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n```bash\n# Inline string\nautohand --sys-prompt \"You are a Python expert. Be concise.\" --prompt \"Write hello world\"\n\n# From file\nautohand --sys-prompt ./custom-prompt.txt --prompt \"Explain this code\"\n\n# Home directory\nautohand --sys-prompt ~/.autohand/prompts/python-expert.md --prompt \"Debug this function\"\n```\n**Példa egyéni prompt fájlra (`custom-prompt.txt`):**\n```\nYou are a specialized Python debugging assistant.\n\nRules:\n- Focus only on Python code\n- Always explain the root cause\n- Suggest fixes with code examples\n- Be concise and direct\n```\n### `--append-sys-prompt` (Hozzáadás az alapértelmezetthez)\n\nHa rendelkezésre áll, ez **hozzáfűzi** a tartalmat a teljes alapértelmezett rendszerprompthoz. Az ügynök továbbra is betölti:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n\nA csatolt tartalom a legvégére kerül hozzáadásra.\n```bash\n# Inline string\nautohand --append-sys-prompt \"Always use TypeScript instead of JavaScript\" --prompt \"Create a function\"\n\n# From file\nautohand --append-sys-prompt ./team-guidelines.md --prompt \"Add error handling\"\n```\n**Példa hozzáfűző fájl (`team-guidelines.md`):**\n```\n## Team Guidelines\n\n- Use 2-space indentation\n- Prefer functional patterns\n- Add JSDoc comments to public APIs\n- Run tests before committing\n```\n### Elsőbbség\n\nHa mindkét zászló rendelkezésre áll:\n\n1. A `--sys-prompt` teljes elsőbbséget élvez\n2. A `--append-sys-prompt` figyelmen kívül hagyva\n```bash\n# --append-sys-prompt is ignored in this case\nautohand --sys-prompt \"Custom only\" --append-sys-prompt \"This is ignored\"\n```\n### Használati esetek\n\n| Használati eset | Ajánlott zászló |\n| ---------------------------------- | ---------------------- |\n| Egyedi ügynök személye | `--sys-prompt` |\n| Minimális utasítások | `--sys-prompt` |\n| Csapatirányelvek hozzáadása | `--append-sys-prompt` |\n| Projektkonvenciók hozzáadása | `--append-sys-prompt` |\n| Integráció külső rendszerekkel | `--sys-prompt` |\n| Speciális hibakeresés | `--sys-prompt` |\n\n### Hibakezelés\n\n| Forgatókönyv | Viselkedés |\n| ------------------ | ------------------------- |\n| Üres érték | Hiba |\n| A fájl nem található | Soron belüli karakterláncként kezelve |\n| Üres fájl | Hiba |\n| Fájl > 1 MB | Hiba |\n| Engedély megtagadva | Hiba |\n| Címtár elérési útja | Hiba |\n\n### Példák\n```bash\n# Python expert mode\nautohand --sys-prompt \"You are a Python expert. Only write Python code.\" \\\n --prompt \"Create a web scraper\"\n\n# TypeScript enforcement\nautohand --append-sys-prompt \"Always use TypeScript, never JavaScript.\" \\\n --prompt \"Create a REST API\"\n\n# CI/CD integration (non-interactive)\nautohand --sys-prompt ./ci-prompt.txt \\\n --prompt \"Fix the failing tests\" \\\n --unrestricted \\\n --patch\n\n# Custom team workflow\nautohand --append-sys-prompt ~/.company/coding-standards.md \\\n --prompt \"Refactor this module\"\n```\n---\n\n## Több könyvtár támogatása\n\nAz Autohand a fő munkaterületen kívül több könyvtárral is működhet. Ez akkor hasznos, ha a projektben különböző könyvtárakban vannak függőségek, megosztott könyvtárak vagy kapcsolódó projektek.\n\n### CLI zászló\n\nA `--add-dir` használatával további könyvtárakat adhat hozzá (többször is használható):\n```bash\n# Add a single additional directory\nautohand --add-dir /path/to/shared-lib\n\n# Add multiple directories\nautohand --add-dir /path/to/lib1 --add-dir /path/to/lib2\n\n# With unrestricted mode (auto-approve writes to all directories)\nautohand --add-dir /path/to/shared-lib --unrestricted\n```\n### Interaktív parancs\n\n`/add-dir` használata interaktív munkamenet során:\n```\n/add-dir # Show current directories\n/add-dir /path/to/dir # Add a new directory\n```\n### Biztonsági korlátozások\n\nA következő könyvtárak nem adhatók hozzá:\n\n- Saját könyvtár (`~` vagy `$HOME`)\n- Gyökérkönyvtár (`/`)\n- Rendszerkönyvtárak (`/etc`, `/var`, `/usr`, `/bin`, `/sbin`)\n- Windows rendszerkönyvtárak (`C:\\Windows`, `C:\\Program Files`)\n- Windows felhasználói könyvtárak (`C:\\Users\\username`)\n- WSL Windows-csatlakozások (`/mnt/c`, `/mnt/c/Windows`)\n"}, "b0b2e898d804d258e859c33a2e71eba5fb810177": {"t": 1785764184.5806434, "n": 86359, "h": "5b64c72ceedbf2ef", "c": "# Autohand Konfigurációs referencia\n\nTeljes referencia az összes konfigurációs beállításhoz itt: `~/.autohand/config.json` (vagy `.toml`/`.yaml`/`.yml`).\n\n> **Tipp:** A legtöbb alábbi beállítás interaktívan módosítható a `/settings` paranccsal a fájl manuális szerkesztése helyett.\n\nLokalizált referenciák:\n\n- [English](./config-reference.md)\n- [日本語](./config-reference_ja.md)\n- [简体中文](./config-reference_zh.md)\n- [繁體中文](./config-reference_zh-tw.md)\n- [한국어](./config-reference_ko.md)\n- [Deutsch](./config-reference_de.md)\n- [Español](./config-reference_es.md)\n- [Français](./config-reference_fr.md)\n- [Italiano](./config-reference_it.md)\n- [Polski](./config-reference_pl.md)\n- [Русский](./config-reference_ru.md)\n- [Português (Brasil)](./config-reference_ptBR.md)\n- [Türkçe](./config-reference_tr.md)\n- [Čeština](./config-reference_cs.md)\n- [Magyar](./config-reference_hu.md)\n- [हिन्दी](./config-reference_hi.md)\n- [Bahasa Indonesia](./config-reference_id.md)\n\n## Tartalomjegyzék\n\n- [A konfigurációs fájl helye](#configuration-file-location)\n- [Környezeti változók](#environment-variables)\n- [Csupasz mód](#bare-mode)\n- [Szolgáltatói beállítások](#provider-settings)\n- [Munkaterület beállításai](#workspace-settings)\n- [UI beállítások](#ui-settings)\n- [Ügynökbeállítások](#agent-settings)\n- [Engedélyek beállításai](#permissions-settings)\n- [Javítási mód](#patch-mode)\n- [Hálózati beállítások](#network-settings)\n- [Telemetriai beállítások](#telemetry-settings)\n- [Külső ügynökök](#external-agents)\n- [Skills System](#skills-system)\n- [API beállítások](#api-settings)\n- [Authentication Settings](#authentication-settings)\n- [Közösségi készségek beállításai](#community-skills-settings)\n- [Megosztási beállítások](#share-settings)\n- [Beállítások szinkronizálása](#settings-sync)\n- [Hook beállításai](#hooks-settings)\n- [MCP beállítások](#mcp-settings)\n- [Chrome-bővítmény beállításai](#chrome-extension-settings)\n- [Teljes példa](#complete-example)\n\n---\n\n## Konfigurációs fájl helye\n\nAutohand a következő sorrendben keresi a konfigurációt:\n\n1. `AUTOHAND_CONFIG` környezeti változó (egyéni elérési út)\n2. `~/.autohand/config.toml`\n3. `~/.autohand/config.yaml`\n4. `~/.autohand/config.yml`\n5. `~/.autohand/config.json` (alapértelmezett)\n\nAz alapkönyvtárat is felülírhatja:\n```bash\nexport AUTOHAND_HOME=/custom/path # Changes ~/.autohand to /custom/path\n```\n---\n\n## Környezeti változók\n\n| Változó | Leírás | Példa |\n| --------------------------------------- | ------------------------------------------------- | --------------------------------- |\n| `AUTOHAND_HOME` | Alapkönyvtár az összes Autohand adathoz | `/custom/path` |\n| `AUTOHAND_CONFIG` | Egyéni konfigurációs fájl elérési útja | `/path/to/config.toml` |\n| `AUTOHAND_API_URL` | API-végpont (felülbírálja a konfigurációt) | `https://api.autohand.ai` |\n| `AUTOHAND_SECRET` | Vállalat/csapat titkos kulcsa | `sk-xxx` |\n| `AUTOHAND_PERMISSION_CALLBACK_URL` | Az engedély visszahívásának URL-je (kísérleti) | `http://localhost:3000/callback` |\n| `AUTOHAND_PERMISSION_CALLBACK_TIMEOUT` | Az engedély-visszahívás időtúllépése ms-ban | `5000` |\n| `AUTOHAND_NON_INTERACTIVE` | Futtatás nem interaktív módban | `1` |\n| `AUTOHAND_YES` | Minden felszólítás automatikus megerősítése | `1` |\n| `AUTOHAND_NO_BANNER` | Indítási szalaghirdetés letiltása | `1` |\n| `AUTOHAND_STREAM_TOOL_OUTPUT` | Az eszköz kimenetének streamelése valós időben | `1` |\n| `AUTOHAND_DEBUG` | Hibakeresési naplózás engedélyezése | `1` |\n| `AUTOHAND_THINKING_LEVEL` | Érvelési mélységszint beállítása | `normal` |\n| `AUTOHAND_CLIENT_NAME` | Kliens/szerkesztő azonosító (ACP kiterjesztések által beállítva) | `zed` |\n| `AUTOHAND_CLIENT_VERSION` | Kliens verzió (az ACP-bővítmények által beállított) | `0.169.0` |\n| `AUTOHAND_CODE` | Környezetérzékelési jelző (automatikusan beállítva) | `1` |\n| `AUTOHAND_CODE_SIMPLE` | A csupasz mód engedélyezése a `--bare` | átadása nélkül `1` |\n\n### Gondolkodási szint\n\nA `AUTOHAND_THINKING_LEVEL` környezeti változó szabályozza a modell által használt érvelés mélységét:\n\n| Érték | Leírás |\n| ---------- | --------------------------------------------------------------------- |\n| `none` | Közvetlen válaszok látható indoklás nélkül |\n| `normal` | Szabványos érvelési mélység (alapértelmezett) |\n| `extended` | Mély érvelés összetett feladatokhoz, részletesebb gondolkodási folyamatot mutat |\n\nEzt általában az ACP-kliens-bővítmények (például a Zed) állítják be a konfigurációs legördülő menüben.\n```bash\n# Example: Use extended thinking for complex tasks\nAUTOHAND_THINKING_LEVEL=extended autohand --prompt \"refactor this module\"\n```\n---\n\n## Csupasz mód\n\nA csupasz mód a Autohand csak kifejezetten kért kontextus- és futásidejű integrációkkal indul. Engedélyezze a következők egyikével:\n```bash\nautohand --bare\nAUTOHAND_CODE_SIMPLE=1 autohand\n```\nA `--bare` átadásakor a Autohand a `AUTOHAND_CODE_SIMPLE=1` értéket is beállítja a futó folyamathoz.\n\nA csupasz mód letiltja az automatikus indítást és az interaktív integrációkat:\n\n- horgok és horog értesítések\n- LSP indítás\n- plugin szinkronizálás, bővítmény automatikus betöltése és meta-eszköz automatikus betöltése\n- hozzárendelés, telemetria, munkamenet-szinkronizálás, automatikus jelentéskészítés és háttérpingek\n- automatikus memória/munkamenet bootstrap kontextus\n- háttérkérdések, frissítés-ellenőrzések, funkciójelző-lekérések és modell-metaadatok előzetes letöltése\n- kulcstartó és böngésző OAuth-hitelesítési tartalék\n- automatikus `AGENTS.md` és szolgáltatói utasítás keresés\n- minden perjel parancs, beleértve a parancssorba beírt csupasz `/`\n\nA perjel alakú abszolút fájlútvonalakat, például a `/Users/alex/project/file.ts`, továbbra is normál prompt szövegként kezeli a rendszer. A parancs alakú perjel bevitel, például `/help`, `/model` vagy `/mcp`, a `Slash commands are disabled in bare mode.` kódot írja ki, és nem hajtódik végre.\n\nA csupasz módban történő hitelesítés csak explicit. A Autohand először a következőt olvassa: `AUTOHAND_API_KEY`, majd `auth.apiKeyHelper`, ha be van állítva. Nem olvassa be a kulcstartó hitelesítő adatait, és nem indítja el az OAuth/böngésző bejelentkezést. A külső szolgáltatók továbbra is a szolgáltatóspecifikus API-kulcsokat és konfigurációkat használják.\n\nEzek az explicit bemenetek csupasz módban is elérhetők:\n\n| Bemenet | Leírás |\n| ------------------------------ | -------------------------------------------------------------------------- |\n| `--system-prompt <value>` | Cserélje ki a rendszerprompt szövegközi szöveggel vagy elérési út-szerű értékkel |\n| `--system-prompt-file <path>` | Cserélje ki a rendszerpromptot a fájltartalommal |\n| `--append-system-prompt <value>` | Szövegközi szöveg vagy elérési út-szerű érték hozzáfűzése a | rendszerprompthoz\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--add-dir <path...>` | Explicit könyvtárak hozzáadása a munkaterület hatóköréhez |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--settings` | Nyissa meg a beállításokat közvetlenül a CLI jelzőből |\n| `--config <path>` | Használjon explicit Autohand konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n---\n\n## Szolgáltatói beállítások\n\n### `provider`\n\nAktív LLM szolgáltató használható.\n\n| Érték | Leírás |\n| -------------- | ----------------------------- |\n| `\"openrouter\"` | OpenRouter API (alapértelmezett) |\n| `\"ollama\"` | Helyi Ollama példány |\n| `\"llamacpp\"` | Helyi llama.cpp szerver |\n| `\"openai\"` | OpenAI API közvetlenül |\n| `\"mlx\"` | MLX az Apple Siliconon (helyi) |\n| `\"llmgateway\"` | LLM Gateway egyesített API |\n| `\"deepseek\"` | DeepSeek API |\n| `\"zai\"` | Z.ai GLM API |\n| `\"sakana\"` | Sakana.AI Fugu API |\n| `\"bedrock\"` | AWS alapkőzet |\n| `\"custom:<id>\"` | Felhasználó által meghatározott OpenAI-kompatibilis szolgáltató a következőtől: `customProviders` |\n\n### `openrouter`\n\nOpenRouter szolgáltató konfigurációja.\n```json\n{\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-xxx\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\",\n \"contextWindow\": 262144\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | --------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön OpenRouter API kulcsa |\n| `baseUrl` | húr | Nem | `https://openrouter.ai/api/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellazonosító (pl. `your-modelcard-id-here`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand kitölti ezt az OpenRouterből, ha ismert. |\n\n### `zai`\n\nZ.ai szolgáltató konfigurációja.\n```json\n{\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"baseUrl\": \"https://api.z.ai/api/paas/v4\",\n \"model\": \"glm-5.2\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | -------------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön Z.ai API-kulcsa |\n| `baseUrl` | húr | Nem | `https://api.z.ai/api/paas/v4` | API-végpont |\n| `model` | húr | Igen | `glm-5.2` | Modellazonosító, például `glm-5.2`, `glm-5.1` vagy `glm-4.5` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. A Autohand 1M-re következtet a GLM-5.2-nél és 200K-ra a GLM-5.1-nél. |\n\n### `sakana`\n\nSakana.AI szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.sakana.ai/v1`-t használja alap URL-ként.\n```json\n{\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------ | ------------------------------------------------------------------ |\n| `apiKey` | húr | Igen | - | Az Ön Sakana API kulcsa |\n| `baseUrl` | húr | Nem | `https://api.sakana.ai/v1` | API-végpont |\n| `model` | húr | Igen | `fugu` | Modellazonosító, például `fugu` vagy `fugu-ultra` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand 1M-re következtet a Fugu modelleknél. |\n\n### `customProviders`\n\nAz egyéni szolgáltatók lehetővé teszik a felhasználók számára, hogy OpenAI-kompatibilis végpontot hozzanak létre kódmódosítás vagy új csomagolt szolgáltató nélkül. Adja hozzá a szolgáltatót a `customProviders` alatt, majd válassza ki a `provider: \"custom:<id>\"` kóddal. Ugyanez a folyamat elérhető a `/model` **Új szolgáltatóval**. A telepítés során a Autohand a szolgáltató mentése előtt ellenőrzi az alap URL-t, a hitelesítést és a kiválasztott modellt az OpenAI-kompatibilis `/models` végponton keresztül.\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\",\n \"models\": [\n {\n \"id\": \"acme-code-1\",\n \"label\": \"Acme Code 1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n ]\n }\n }\n}\n```\nAzon helyi OpenAI-kompatibilis szervereknél, amelyek nem igényelnek hitelesítést, állítsa a `apiKeyRequired` értékét `false` értékre, és hagyja ki a `apiKey` értéket.\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------------ | ------- | -------- | ------- | ----------- |\n| `id` | húr | Igen | - | Stabil szolgáltatói azonosító. Meg kell egyeznie az objektumkulccsal, és a következőképpen van kiválasztva: `custom:<id>`. |\n| `displayName` | húr | Igen | - | A `/model` és a szolgáltató beállításai között látható név. |\n| `apiFormat` | húr | Igen | - | A következőnek kell lennie: `openai-compatible`. |\n| `baseUrl` | húr | Igen | - | Végpont gyökér, például `https://api.example.com/v1`. Autohand ellenőrzi a `/models` kódot, és felhívja a `/chat/completions` kódot. |\n| `apiKey` | húr | Feltételes | - | Adathordozó token a tárolt végpontokhoz. Kötelező, ha a `apiKeyRequired` igaz. |\n| `apiKeyRequired` | logikai | Nem | `true` | Állítsa be a false értéket a helyi vagy már hitelesített átjárókhoz. |\n| `model` | húr | Igen | - | Aktív modell azonosító. |\n| `contextWindow` | szám | Nem | Auto | Pontos kontextusablak a token-költségvetéshez, állapothoz, telemetriához és szinkronizálási metaadatokhoz. |\n| `reasoningEffort` | húr | Nem | - | Opcionális `none`, `low`, `medium`, `high` vagy `xhigh`. `reasoning_effort` néven küldve egyéni OpenAI-kompatibilis kérésekhez. |\n| `models` | tömb | Nem | - | Opcionális modellválasztó bejegyzések modellenkénti kontextussal és érvelési metaadatokkal. |\n\n### `ollama`\n\nOllama szolgáltató konfigurációja.\n```json\n{\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"port\": 11434,\n \"model\": \"llama3.2\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------- | ------------------------------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:11434` | Ollama szerver URL |\n| `port` | szám | Nem | `11434` | Szerverport (a baseUrl alternatívája) |\n| `model` | húr | Igen | - | Modellnév (pl. `llama3.2`, `codellama`) |\n\n### `llamacpp`\n\nllama.cpp szerver konfigurációja.\n```json\n{\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"default\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | llama.cpp szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | Modellazonosító |\n\n### `openai`\n\nOpenAI API konfiguráció.\n```json\n{\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-xxx\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\nAz OpenAI a Autohand beépített OpenAI bejelentkezési folyamatán keresztül is használhatja ChatGPT-előfizetését:\n```json\n{\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"contextWindow\": 1050000,\n \"model\": \"gpt-5.4\",\n \"chatgptAuth\": {\n \"accessToken\": \"...\",\n \"refreshToken\": \"...\",\n \"accountId\": \"...\"\n }\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | ----------------------- | ---------------------------- | -------------------------------------------------------------------------- |\n| `authMode` | húr | Nem | `api-key` | Hitelesítési mód: `api-key` vagy `chatgpt` |\n| `apiKey` | húr | Igen a `api-key` módhoz | - | OpenAI API kulcs |\n| `baseUrl` | húr | Nem | `https://api.openai.com/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-5.4`, `gpt-5.4-mini`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Állítsa be az elavult helyi feltételezések felülbírálásához. |\n| `chatgptAuth` | tárgy | Igen a `chatgpt` módhoz | - | Tárolt ChatGPT/Codex hitelesítési tokenek és fiókazonosító |\n\n### `mlx`\n\nMLX szolgáltató Apple Silicon Mac gépekhez (helyi következtetés).\n```json\n{\n \"mlx\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | MLX szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | MLX modell azonosító |\n\n### `llmgateway`\n\nLLM Gateway egységes API konfiguráció. Hozzáférést biztosít több LLM-szolgáltatóhoz egyetlen API-n keresztül.\n```json\n{\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"baseUrl\": \"https://api.llmgateway.io/v1\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------------- | ---------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | LLM Gateway API kulcs |\n| `baseUrl` | húr | Nem | `https://api.llmgateway.io/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-4o`, `claude-3-5-sonnet-20241022`) |\n\n**API-kulcs beszerzése:**\nKeresse fel a [llmgateway.io/dashboard](https://llmgateway.io/dashboard) webhelyet fiók létrehozásához és API-kulcsának beszerzéséhez.\n\n**Támogatott modellek:**\nAz LLM Gateway több szolgáltató modelljét támogatja, többek között:\n\n- OpenAI: `gpt-4o`, `gpt-4o-mini`, `gpt-4-turbo`\n`claude-3-5-haiku-20241022`\n- Google: `gemini-1.5-pro`, `gemini-1.5-flash`\n\n### `deepseek`\n\nDeepSeek szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.deepseek.com`-t használja alap URL-ként.\n```json\n{\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"baseUrl\": \"https://api.deepseek.com\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | --------------------------- | --------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | DeepSeek API kulcs |\n| `baseUrl` | húr | Nem | `https://api.deepseek.com` | API-végpont |\n| `model` | húr | Igen | - | Modellnév, például `deepseek-v4-flash` vagy `deepseek-v4-pro` |\n\n### `bedrock`\n\nAWS Bedrock szolgáltató konfigurációja. `converse` az alapértelmezett mód, és az AWS SDK hitelesítési láncot használja. Az OpenAI-kompatibilis módok Bedrock API-kulcsokat és Bedrock OpenAI-kompatibilis végpontokat használnak.\n```json\n{\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------- | ------ | -------- | ------- | ----------- |\n| `model` | húr | Igen | - | Alapkőzetmodell-azonosító, következtetési profilazonosító vagy ARN |\n| `region` | húr | Igen | `AWS_REGION`, majd `AWS_DEFAULT_REGION`, majd `us-east-1` a beállításban | AWS régió |\n| `apiMode` | húr | Nem | `converse` | `converse`, `openai-chat` vagy `openai-responses` |\n| `authMode` | húr | Nem | `aws-credentials` `converse`, `bedrock-api-key` OpenAI-kompatibilis módokhoz | Hitelesítési mód |\n| `profile` | húr | Nem | - | Opcionális AWS-profil a hitelesítő adatok láncos hitelesítéséhez |\n| `endpoint` | húr | Nem | Módból és régióból származtatva | Egyéni/privát Bedrock végpont |\n| `apiKey` | húr | Igen OpenAI-kompatibilis módokhoz | - | Bedrock API kulcs. Ne használjon OpenAI API-kulcsokat. |\n\nFuttassa a `aws configure sso` kódot, vagy állítsa be a `AWS_PROFILE=enterprise-prod autohand` értéket a profilalapú AWS-hitelesítéshez. Az IAM-szerepkört, a tárolót és a példány metaadat-hitelesítő adatait az AWS SDK támogatja. Modell használata előtt engedélyezze a modellelérést az AWS-konzolon.\n\n---\n\n## Munkaterület beállításai\n```json\n{\n \"workspace\": {\n \"defaultRoot\": \"/path/to/projects\",\n \"allowDangerousOps\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------------------ | -------------------------------------------------- |\n| `defaultRoot` | húr | Aktuális címtár | Alapértelmezett munkaterület, ha nincs megadva |\n| `allowDangerousOps` | logikai | `false` | Pusztító műveletek engedélyezése megerősítés nélkül |\n\n### Munkahelyi biztonság\n\nAutohand automatikusan blokkolja a működést a veszélyes könyvtárakban, hogy megelőzze a véletlen károsodást:\n\n- **Fájlrendszer gyökerei** (`/`, `C:\\`, `D:\\` stb.)\n- **Házikönyvtárak** (`~`, `/Users/<user>`, `/home/<user>`, `C:\\Users\\<user>`)\n- **Rendszerkönyvtárak** (`/etc`, `/var`, `/System`, `C:\\Windows` stb.)\n- **WSL Windows-csatlakozások** (`/mnt/c`, `/mnt/c/Users/<user>`)\n\nEzt az ellenőrzést nem lehet megkerülni. Ha egy veszélyes könyvtárban próbálja meg futtatni a autohand alkalmazást, hibaüzenetet fog látni, és meg kell adnia egy biztonságos projektkönyvtárat.\n```bash\n# This will be blocked\ncd ~ && autohand\n# Error: Unsafe Workspace Directory\n\n# This works\ncd ~/projects/my-app && autohand\n```\nA részletekért lásd a [Workspace Safety](./workspace-safety.md) részt.\n\n---\n\n## UI beállítások\n```json\n{\n \"ui\": {\n \"theme\": \"dark\",\n \"customThemes\": {\n \"company\": {\n \"colors\": {\n \"accent\": \"#7c3aed\",\n \"success\": \"#22c55e\"\n }\n }\n },\n \"autoConfirm\": false,\n \"readFileCharLimit\": 300,\n \"silentToolOutput\": false,\n \"activityVerbs\": [\"Compiling\", \"Parsing\", \"Reviewing\"],\n \"activityVerbsEnabled\": true,\n \"activitySymbol\": \"✳\",\n \"statusLine\": {\n \"showProviderModel\": true,\n \"showContext\": true,\n \"showCommandHint\": true,\n \"showPullRequest\": true,\n \"showSessionLines\": false,\n \"showQueue\": true,\n \"showActiveStatus\": true,\n \"showActiveMetrics\": true,\n \"showCancelHint\": true\n },\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ----------------------------- | ------ | ------- | ---------------------------------------------------------------------------------------------- |\n| `theme` | húr | `\"dark\"` | Színes téma a terminál kimenetéhez. A beépítettek a következők: `dark`, `light`, `dracula`, `sandy`, `tui`, `github-dark`, `cappadocia`, CODE és ___8__ `australia`. A régi `turkey` és `brazil` értékek továbbra is betöltődnek álnévként. |\n| `customThemes` | tárgy | `{}` | Soron belüli egyéni témadefiníciók a téma nevével. A használatához állítsa be a `theme` kulcsot ugyanarra a kulcsra. |\n| `autoConfirm` | logikai | `false` | A biztonságos működés érdekében hagyja ki a megerősítő felszólításokat |\n| `readFileCharLimit` | szám | `300` | Maximum megjeleníthető karakter az olvasási/kereső eszköz kimenetéből (a teljes tartalom továbbra is elküldésre kerül a modellnek) |\n| `silentToolOutput` | logikai | `false` | A szerszám kimeneti blokkjainak elrejtése a terminálban, miközben továbbra is megőrzi a modell/munkamenet szerszámeredményeit |\n| `activityVerbs` | karakterlánc vagy karakterlánc[] | beépített medence | Egyéni tevékenység ige vagy igekészlet a munkajelzőhöz, `Verb...` formátumban |\n| `activityVerbsEnabled` | logikai | `true` | Forgó tevékenység igék megjelenítése, például `Compiling...`, miközben az ügynök dolgozik |\n| `activitySymbol` | húr | `\"✳\"` | A tevékenységi ige előtt látható szimbólum a tevékenységmutató kimenetében |\n| `statusLine.showProviderModel` | logikai | `true` | Jelenítse meg az aktív szolgáltatót és modellt a szerző állapotsorában |\n| `statusLine.showContext` | logikai | `true` | Jelenítse meg a kontextus százalékos arányát a szerző állapotsorában |\n| `statusLine.showCommandHint` | logikai | `true` | Parancs, említés, készség és terminálbejegyzési tippek megjelenítése a szerző állapotsorában |\n| `statusLine.showPullRequest` | logikai | `true` | Mutassa meg a kapcsolódó lekérési kérés számát, vagy `PR #123`, ha nincs PR társítva |\n| `statusLine.showSessionLines` | logikai | `false` | Az aktuális munkamenet során hozzáadott és eltávolított sorok megjelenítése |\n| `statusLine.showQueue` | logikai | `true` | A sorba állított kérések számának megjelenítése az állapotsorban |\n| `statusLine.showActiveStatus` | logikai | `true` | Az aktív forduló állapotszövege megjelenítése, miközben az ügynök dolgozik |\n| `statusLine.showActiveMetrics` | logikai | `true` | Az eltelt idő és a token mérőszámainak megjelenítése, amíg az ügynök dolgozik |\n| `statusLine.showCancelHint` | logikai | `true` | Az Esc megszakítási tipp megjelenítése, miközben az ügynök dolgozik |\n| `completionReportEnabled` | logikai | `true` | Kérje meg a modellt, hogy a végrehajtott műveleti körök után tartalmazzon egy tömör befejezési jelentést |\n| `showCompletionNotification` | logikai | `true` | Rendszerértesítés megjelenítése a feladat befejezésekor |\n| `showThinking` | logikai | `true` | Az LLM érvelésének/gondolati folyamatának megjelenítése |\n| `terminalBell` | logikai | `true` | Csengessen terminálcsengőt, amikor a feladat befejeződött (jelvényt mutat a terminálfülön/dokkon) |\n| `checkForUpdates` | logikai | `true` | CLI frissítések keresése indításkor |\n| `updateCheckInterval` | szám | `24` | Órák a frissítési ellenőrzések között (a gyorsítótárazott eredményt az intervallumon belül használja) |\n\nAz egyéni témák bármely szemantikai színtokent felülírhatnak. A hiányzó tokenek a sötét témából származnak:\n```json\n{\n \"ui\": {\n \"theme\": \"company\",\n \"customThemes\": {\n \"company\": {\n \"vars\": {\n \"brand\": \"#7c3aed\",\n \"brandSoft\": \"#a78bfa\"\n },\n \"colors\": {\n \"accent\": \"brand\",\n \"borderAccent\": \"brandSoft\",\n \"mdHeading\": \"brand\"\n }\n }\n }\n }\n}\n```\nMegjegyzés: A `readFileCharLimit` és `silentToolOutput` csak a terminál megjelenítését érinti. A teljes tartalom továbbra is elküldésre kerül a modellnek, és eszközüzenetekben tárolódik.\n\nA néma eszközkimenetet a fájl szerkesztése nélkül is átkapcsolhatja:\n```bash\nautohand config set silent_tool_output true\nautohand config set silent_tool_output false\n```\nA forgó tevékenység igék között válthat a fájl szerkesztése nélkül:\n```bash\nautohand config set verbs activity true\nautohand config set verbs activity false\n```\nSzabja testre az igéket a konfigurációs fájlban, ha rögzített állapotcímkét vagy kis projektspecifikus elforgatást szeretne:\n```json\n{\n \"ui\": {\n \"activityVerbs\": \"Compiling\"\n }\n}\n```\n\n```json\n{\n \"ui\": {\n \"activityVerbs\": [\"Indexing\", \"Reviewing\", \"Testing\"],\n \"activitySymbol\": \">\"\n }\n}\n```\nA `activityVerbs` egyetlen karakterláncot vagy nem üres karakterlánc-tömböt fogad el. Ha a `activityVerbsEnabled` értéke `false`, a Autohand visszaesik a `Working...` értékre, ahelyett, hogy az egyéni vagy beépített igék között forogna.\n\nA fájl szerkesztése nélkül válthat a befejezési jelentések között, beleértve a strukturált `SITREP` promptot is:\n```bash\nautohand config set sitrep true\nautohand config set sitrep false\n```\n### Terminal Bell\n\nHa a `terminalBell` engedélyezve van (alapértelmezett), a Autohand megszólal a terminál csengőjén (`\\x07`), amikor egy feladat befejeződik. Ez kiváltja:\n\n- **Jelvény a terminál lapon** - Vizuális jelzőt mutat, hogy a munka elkészült\n- **Dokk ikon ugrál** - Felhívja a figyelmet, ha a terminál a háttérben van (macOS)\n- **Hang** - Ha a terminál hangjai engedélyezve vannak a terminál beállításaiban\n\nTerminálspecifikus beállítások:\n\n- **macOS terminál**: Beállítások > Profilok > Speciális > Bell (vizuális/hallható)\n- **iTerm2**: Beállítások > Profilok > Terminál > Értesítések\n- **VS Code Terminal**: Beállítások > Terminál > Integrált: Bell engedélyezése\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"terminalBell\": false\n }\n}\n```\n### Ink Renderer\n\nA Autohand alapértelmezés szerint az Ink 7 + React 19 renderert használja az interaktív terminálokhoz. A régi `ui.useInkRenderer` konfigurációs mezőt figyelmen kívül hagyja, így a régi konfigurációs fájlok nem kényszeríthetik a sima terminálszerkesztőt. A tinta a következőket nyújtja:\n\n- **Recgésmentes kimenet**: Minden UI-frissítés kötegelt React-egyeztetésen keresztül történik\n- **Munkasor funkció**: Írja be az utasításokat, amíg az ügynök dolgozik\n- **Jobb bemenetkezelés**: Nincsenek ütközések a readline-kezelők között\n- **Összeállítható felhasználói felület**: A jövőbeni fejlett felhasználói felületi funkciók alapja\n\nVészhelyzeti tartalék a terminál kompatibilitás érdekében:\n```bash\nAUTOHAND_LEGACY_UI=1 autohand\n```\nMegjegyzés: Ez a funkció kísérleti jellegű, és lehetnek szélső esetek. Az alapértelmezett ora-alapú felhasználói felület stabil és teljesen működőképes marad.\n\n### Frissítési ellenőrzés\n\nHa a `checkForUpdates` engedélyezve van (alapértelmezett), a Autohand indításkor ellenőrzi az új kiadásokat:\n```\n> Autohand v0.6.8 (abc1234) ✓ Up to date\n```\nHa elérhető frissítés:\n```\n> Autohand v0.6.7 (abc1234) ⬆ Update available: v0.6.8\n ↳ Run: curl -fsSL https://autohand.ai/install.sh | sh\n```\nHogyan működik:\n\n- Lekéri a GitHub API legújabb kiadását\n- A gyorsítótárak eredménye `~/.autohand/version-check.json`\n- Csak egyszer ellenőrzi `updateCheckInterval` óránként (alapértelmezett: 24)\n- Nem blokkoló: az indítás akkor is folytatódik, ha az ellenőrzés sikertelen\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"checkForUpdates\": false\n }\n}\n```\nVagy környezeti változón keresztül:\n```bash\nexport AUTOHAND_SKIP_UPDATE_CHECK=1\n```\n---\n\n## Ügynök beállításai\n\nAz ügynök viselkedésének és iterációs korlátainak szabályozása.\n```json\n{\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"autoMemory\": true,\n \"idleLogoutEnabled\": true,\n \"debug\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------- | ------------------------------------------------------------------------------ |\n| `maxIterations` | szám | `100` | Maximális szerszámiterációk felhasználói kérésenként a leállítás előtt |\n| `enableRequestQueue` | logikai | `true` | Lehetővé teszi a felhasználók számára, hogy kéréseket írjanak be és sorba állítsanak, miközben az ügynök dolgozik |\n| `toolSelectionCache` | logikai | `true` | Gyorsítótárazza a körönkénti szerszámséma helyi kiválasztását az egyenértékű szerszámkiválasztási bemenethez |\n| `autoMemory` | logikai | `true` | Tartós felhasználói/projektmemóriák kibontása és mentése sikeres interaktív fordulatok után |\n| `idleLogoutEnabled` | logikai | `true` | Jelentkezzen ki a hitelesített interaktív munkamenetekből az üresjárati időtúllépés után |\n| `debug` | logikai | `false` | Részletes hibakeresési kimenet engedélyezése (naplózza az ügynök belső állapotát az stderr-be) |\n\n### Eszközséma kiválasztása\n\nA Autohand nem küld el minden teljes eszközsémát minden LLM-kérelemnél. A rendszerprompt tartalmaz egy kompakt eszközképesség-katalógust, és minden kérés csak egy kis konkrét sémát tesz közzé, amely a következők közül választható ki:\n\n- Az alapvető felderítési eszközök, például `tool_search`, `read_file`, `fff_find` és `fff_grep`\n- Szándékhoz illő eszközök szerkesztési, ellenőrzési, git, böngésző, web, függőségi vagy projektkövetési munkákhoz\n- A legutóbbi `tool_search` hívások során kért vagy kifejezetten név szerint megemlített eszközök\n\nEzzel elkerülhető a nagy előzetes kontextusköltség, ha az összes eszközséma elküldése a felhasználói szándék ismertsége előtt felmerül. `toolSelectionCache` csak a helyi választó gyorsítótárát vezérli az egyenértékű fordulatokhoz; nem hajt végre felhasználói előtti LLM-bemelegítést, és nem kényszerít ki nagy gyorsítótárazott prompt előtagot.\n\nA helyi választó gyorsítótárának letiltása:\n```json\n{\n \"agent\": {\n \"toolSelectionCache\": false\n }\n}\n```\nA hitelesített, régóta működő ügynöki munkamenetek életben tartásához, amíg munkára várnak:\n```json\n{\n \"agent\": {\n \"idleLogoutEnabled\": false\n }\n}\n```\nEgyetlen folyamathoz használja a `autohand --no-idle-logout` kódot, vagy állítsa be a `AUTOHAND_NO_IDLE_LOGOUT=1` értéket.\n\n### Hibakeresési mód\n\nEngedélyezze a hibakeresési módot az ügynök belső állapotának részletes naplózásához (reakcióhurok iterációi, prompt felépítés, munkamenet részletei). A kimenet az stderr-hez megy, hogy elkerülje a normál kimenet zavarását.\n\nHáromféleképpen engedélyezheti a hibakeresési módot (elsőbbségi sorrendben):\n\n1. **CLI jelző**: `autohand -d` vagy `autohand --debug`\n2. **Környezeti változó**: `AUTOHAND_DEBUG=1`\n3. **Konfigurációs fájl**: Állítsa be: `agent.debug: true`\n\n### Kérési sor\n\nHa a `enableRequestQueue` engedélyezve van, folytathatja az üzenetek beírását, miközben az ügynök feldolgoz egy korábbi kérést. A bevitel a sorba kerül, és automatikusan feldolgozásra kerül, amikor az aktuális feladat befejeződik.\n\n- Írja be az üzenetet, és nyomja meg az Enter billentyűt, hogy hozzáadja a sorhoz\n- Az állapotsor azt mutatja, hogy hány kérés van sorban\n- A kérések feldolgozása FIFO (first-in, first-out) sorrendben történik\n- A sor maximális mérete 10 kérés\n\n---\n\n## Engedélyek beállításai\n\nA szerszámengedélyek finom vezérlése.\n```json\n{\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\n \"run_command:npm *\",\n \"run_command:bun *\",\n \"run_command:git status\"\n ],\n \"blacklist\": [\"run_command:rm -rf *\", \"run_command:sudo *\"],\n \"rules\": [\n {\n \"tool\": \"run_command\",\n \"pattern\": \"npm test\",\n \"action\": \"allow\"\n }\n ],\n \"rememberSession\": true\n }\n}\n```\n### `mode`\n\n| Érték | Leírás |\n| ----------------- | ------------------------------------------------------ |\n| `\"interactive\"` | Jóváhagyás kérése veszélyes műveletekhez (alapértelmezett) |\n| `\"unrestricted\"` | Nincsenek felszólítások, engedélyezzen mindent |\n| `\"restricted\"` | Minden veszélyes művelet megtagadása |\n\n### `whitelist`\n\nSzerszámminták sora, amelyek soha nem igényelnek jóváhagyást.\n```json\n[\"run_command:npm *\", \"run_command:bun test\"]\n```\n### `blacklist`\n\nMindig blokkolt szerszámminták tömbje.\n```json\n[\"run_command:rm -rf /\", \"run_command:sudo *\"]\n```\n### `rules`\n\nFinom szemcsés engedélyezési szabályok.\n\n| Mező | Típus | Leírás |\n| --------- | --------- | -------------------------------------------- | ---------- | -------------- |\n| `tool` | húr | A megfelelő eszköznév |\n| `pattern` | húr | Opcionális minta az érvekhez való illeszkedéshez |\n| `action` | `\"allow\"` | `\"deny\"` | `\"prompt\"` | Intézkedések |\n\n### `rememberSession`\n\n| Típus | Alapértelmezett | Leírás |\n| ------- | ------- | -------------------------------------------- |\n| logikai | `true` | Emlékezzen az ülés jóváhagyási határozataira |\n\n### Helyi projektengedélyek\n\nMinden projektnek saját engedélybeállításai lehetnek, amelyek felülírják a globális konfigurációt. Ezeket a projekt gyökérkönyvtárában a `.autohand/settings.local.json` tartalmazza.\n\nAmikor jóváhagy egy fájlműveletet (szerkesztés, írás, törlés), a rendszer automatikusan ebbe a fájlba menti, így nem kéri újra ugyanazt a műveletet ebben a projektben.\n```json\n{\n \"version\": 1,\n \"permissions\": {\n \"whitelist\": [\n \"apply_patch:src/components/Button.tsx\",\n \"write_file:package.json\",\n \"run_command:bun test\"\n ]\n }\n}\n```\n**Hogyan működik:**\n\n- Amikor jóváhagy egy műveletet, a rendszer a következőbe menti: `.autohand/settings.local.json`\n- Legközelebb ugyanazt a műveletet a rendszer automatikusan jóváhagyja\n- A helyi projektbeállítások egyesülnek a globális beállításokkal (a helyi beállítások elsőbbséget élveznek)\n- Adja hozzá a `.autohand/settings.local.json` kódot a `.gitignore`-hoz, hogy a személyes beállítások privátak maradjanak\n\n**Mintaformátum:**\n\n- `tool_name:path` - Fájlműveletekhez (pl. `apply_patch:src/file.ts`)\n- `tool_name:command args` - Parancsokhoz (pl. `run_command:npm test`)\n\n### Megtekintési engedélyek\n\nJelenlegi engedélybeállításait kétféleképpen tekintheti meg:\n\n**CLI jelző (nem interaktív):**\n```bash\nautohand --permissions\n```\nEz a következőket jeleníti meg:\n\n- Jelenlegi engedélyezési mód (interaktív, korlátlan, korlátozott)\n- Munkaterület és konfigurációs fájlok elérési útjai\n- Minden jóváhagyott minta (engedélyezőlista)\n- Minden elutasított minta (feketelista)\n- Összefoglaló statisztika\n\n**Interaktív parancs:**\n```\n/permissions\n```\nInteraktív módban a `/permissions` parancs ugyanazokat az információkat és lehetőségeket biztosít a következőkhöz:\n\n- Elemek eltávolítása az engedélyezési listáról\n- Távolítsa el az elemeket a feketelistáról\n- Törölje az összes mentett engedélyt\n\n---\n\n## Patch mód\n\nA Patch mód lehetővé teszi megosztható, git-kompatibilis javítás létrehozását a munkaterület-fájlok módosítása nélkül. Ez hasznos:\n\n- A kód felülvizsgálata a változtatások alkalmazása előtt\n- Az AI által generált változások megosztása a csapat tagjaival\n- Reprodukálható változáskészletek készítése\n- CI/CD folyamatok, amelyeknek alkalmazása nélkül kell rögzíteni a változásokat\n\n### Használat\n```bash\n# Generate patch to stdout\nautohand --prompt \"add user authentication\" --patch\n\n# Save to file\nautohand --prompt \"add user authentication\" --patch --output auth.patch\n\n# Pipe to file (alternative)\nautohand --prompt \"refactor api handlers\" --patch > refactor.patch\n```\n### Viselkedés\n\nHa `--patch` meg van adva:\n\n- **Automatikus megerősítés**: Minden visszaigazolás automatikusan elfogadásra kerül (`--yes`)\n- **Nincsenek felszólítások**: Nem jelennek meg jóváhagyási értesítések (`--unrestricted` vélelmezett)\n- **Csak előnézet**: A változtatásokat rögzíti, de NEM írja lemezre\n- **Kikényszerített biztonság**: A feketelistán szereplő műveletek (`.env`, SSH-kulcsok, veszélyes parancsok) továbbra is blokkolva vannak\n\n### Javítások alkalmazása\n\nA címzettek szabványos git parancsokkal alkalmazhatják a javítást:\n```bash\n# Check what would be applied (dry-run)\ngit apply --check changes.patch\n\n# Apply the patch\ngit apply changes.patch\n\n# Apply with 3-way merge (handles conflicts better)\ngit apply -3 changes.patch\n\n# Apply and stage changes\ngit apply --index changes.patch\n\n# Reverse a patch\ngit apply -R changes.patch\n```\n### Patch formátum\n\nA generált javítás a git egységes diff formátumát követi:\n```diff\ndiff --git a/src/auth.ts b/src/auth.ts\nnew file mode 100644\n--- /dev/null\n+++ b/src/auth.ts\n@@ -0,0 +1,15 @@\n+export function authenticate(user: string, password: string) {\n+ // Implementation here\n+}\n\ndiff --git a/src/index.ts b/src/index.ts\n--- a/src/index.ts\n+++ b/src/index.ts\n@@ -1,5 +1,7 @@\n import express from 'express';\n+import { authenticate } from './auth';\n\n const app = express();\n+app.use(authenticate);\n```\n### Kilépési kódok\n\n| Kód | Jelentése |\n| ---- | ---------------------------------------------------- |\n| `0` | Siker, patch generált |\n| `1` | Hiba (hiányzó `--prompt`, engedély megtagadva stb.) |\n\n### Kombinálva más zászlókkal\n```bash\n# Use specific model\nautohand --prompt \"optimize queries\" --patch --model gpt-4o\n\n# Specify workspace\nautohand --prompt \"add tests\" --patch --path ./my-project\n\n# Use custom config\nautohand --prompt \"refactor\" --patch --config ~/.autohand/work.json\n```\n### Csapatmunkafolyamat-példa\n```bash\n# Developer A: Generate patch for a feature\nautohand --prompt \"implement user dashboard with charts\" --patch --output dashboard.patch\n\n# Share via git (create PR with just the patch file)\ngit checkout -b patch/dashboard\ngit add dashboard.patch\ngit commit -m \"Add dashboard feature patch\"\ngit push\n\n# Developer B: Review and apply\ngit fetch origin patch/dashboard\ngit apply dashboard.patch\n# Run tests, review code, then commit\ngit add -A && git commit -m \"feat: add user dashboard with charts\"\n```\n---\n\n## Hálózati beállítások\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Max | Leírás |\n| ------------ | ------ | ------- | --- | --------------------------------------- |\n| `maxRetries` | szám | `3` | `5` | Próbálkozzon újra sikertelen API-kérésekkel |\n| `timeout` | szám | `30000` | - | Kérelem időtúllépése ezredmásodpercben |\n| `retryDelay` | szám | `1000` | - | Az újrapróbálkozások közötti késleltetés ezredmásodpercben |\n\n---\n\n## Telemetriai beállítások\n\nA telemetria **alapértelmezés szerint le van tiltva** (feliratkozás). Engedélyezze a Autohand fejlesztéséhez.\n```json\n{\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true,\n \"companySecret\": \"\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | -------------------------- | ---------------------------------------------- |\n| `enabled` | logikai | `false` | Telemetria engedélyezése/letiltása (feliratkozás) |\n| `apiBaseUrl` | húr | `https://api.autohand.ai` | Telemetria API végpont |\n| `batchSize` | szám | `20` | Az automatikus kiürítés előtt kötegelt események száma |\n| `flushIntervalMs` | szám | `60000` | Öblítési időköz ezredmásodpercben (1 perc) |\n| `maxQueueSize` | szám | `500` | Maximális sorméret a régi események eldobása előtt |\n| `maxRetries` | szám | `3` | Próbálkozzon újra sikertelen telemetriai kérések esetén |\n| `enableSessionSync` | logikai | `true` | Szinkronizálja a munkameneteket a felhővel a csapatfunkciókhoz, ha a telemetria engedélyezve van |\n| `companySecret` | húr | `\"\"` | Vállalati titok API-hitelesítéshez |\n\nA szolgáltató/modell telemetria tartalmazza az aktív szolgáltatói azonosítót, a modellazonosítót és az elérhető nem titkos metaadatokat, például az egyéni szolgáltató megjelenítési nevét, API-formátumát, érvelési erőfeszítéseit és kontextusablakát. Az API-kulcsok és a vivőjogkivonatok soha nem szerepelnek benne.\n\n---\n\n## Külső ügynökök\n\nEgyéni ügynökdefiníciók betöltése külső könyvtárakból.\n```json\n{\n \"externalAgents\": {\n \"enabled\": true,\n \"paths\": [\"~/.autohand/agents\", \"/team/shared/agents\"]\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | -------- | ------- | -------------------------------- |\n| `enabled` | logikai | `false` | Külső ügynök betöltésének engedélyezése |\n| `paths` | string[] | `[]` | Könyvtárak az ügynökök betöltéséhez |\n\n---\n\n## Skills System\n\nA készségek olyan utasításcsomagok, amelyek speciális utasításokat adnak az AI-ügynöknek. Úgy működnek, mint az igény szerinti `AGENTS.md` fájlok, amelyek bizonyos feladatokhoz aktiválhatók.\n\n### Készségek felfedező helyek\n\nA készségek több helyről fedezhetők fel, és a későbbi források élveznek elsőbbséget:\n\n| Helyszín | Forrásazonosító | Leírás |\n| ----------------------------------------- | ------------------- | ------------------------------------------ |\n| `~/.codex/skills/**/SKILL.md` | `codex-user` | Felhasználói szintű Codex készségek (rekurzív) |\n| `~/.claude/skills/*/SKILL.md` | `claude-user` | Felhasználói szintű Claude-készségek (egy szint) |\n| `~/.autohand/skills/**/SKILL.md` | `autohand-user` | Felhasználói szintű Autohand készségek (rekurzív) |\n| `<project>/.claude/skills/*/SKILL.md` | `claude-project` | Projektszintű Claude-készségek (egy szint) |\n| `<project>/.autohand/skills/**/SKILL.md` | `autohand-project` | Projekt szintű Autohand készségek (rekurzív) |\n\n### Automatikus másolási viselkedés\n\nA Codex vagy Claude helyekről felfedezett készségek automatikusan átmásolódnak a megfelelő Autohand helyre:\n\n- `~/.codex/skills/` és `~/.claude/skills/` → `~/.autohand/skills/`\n- `<project>/.claude/skills/` → `<project>/.autohand/skills/`\n\nA Autohand helyeken meglévő készségek soha nem íródnak felül.\n\n### SKILL.md formátum\n\nA YAML frontmatter-t használó készségek, majd a leértékelési tartalom:\n```markdown\n---\nname: my-skill-name\ndescription: Brief description of the skill\nlicense: MIT\ncompatibility: Works with Node.js 18+\nallowed-tools: read_file write_file run_command\nmetadata:\n author: your-name\n version: \"1.0.0\"\n---\n\n# My Skill\n\nDetailed instructions for the AI agent...\n```\n| Mező | Kötelező | Max hossz | Leírás |\n| ---------------- | -------- | ---------- | ------------------------------------------- |\n| `name` | Igen | 64 karakter | Kisbetűs alfanumerikus, csak kötőjelekkel |\n| `description` | Igen | 1024 karakter | A készség rövid leírása |\n| `license` | Nem | - | Licencazonosító (pl. MIT, Apache-2.0) |\n| `compatibility` | Nem | 500 karakter | Kompatibilitási megjegyzések |\n| `allowed-tools` | Nem | - | Az engedélyezett eszközök szóközzel tagolt listája |\n| `metadata` | Nem | - | További kulcs-érték metaadatok |\n\n### Beviteli előtagok\n\nA Autohand támogatja a speciális előtagokat a beviteli promptban:\n\n| Előtag | Leírás | Példa |\n| ------ | ------------------------------- | ---------------------------------- |\n| `/` | Slash parancsok | `/help`, `/model`, `/quit`, `/exit` |\n| `@` | Fájl említések (automatikus kiegészítés) | `@src/index.ts` |\n| `$` | Szakértelem említése (automatikus kiegészítés) | `$frontend-design`, `$code-review` |\n| `!` | A terminálparancsok közvetlen futtatása | `! git status`, `! ls -la` |\n\n**Képességmegemlítések (`$`):**\n\n- Írja be a következőt: `$`, majd karaktereket az automatikus kiegészítéssel elérhető készségek megtekintéséhez\n- A Tab elfogadja a felső javaslatot (pl. `$frontend-design`)\n- A készségek a következőből fedezhetők fel: `~/.autohand/skills/` és `<project>/.autohand/skills/`\n- Az aktivált készségek a prompthoz vannak csatolva, mint speciális utasítások az aktuális munkamenethez\n- Az előnézeti panel a készség metaadatait mutatja (név, leírás, aktiválási állapot)\n\n**Shell-parancsok (`!`):**\n\n- A parancsok az aktuális munkakönyvtárban futnak\n- A kimenet közvetlenül a terminálon jelenik meg\n- Nem megy az LLM-be\n- 30 másodperces időtúllépés\n- A végrehajtás után visszatér a prompthoz\n\n### Slash parancsok\n\n#### `/skills` - Csomagkezelő\n\n| Parancs | Leírás |\n| -------------------------------- | ------------------------------------------- |\n| `/skills` | Sorolja fel az összes elérhető készséget |\n| `/skills use <name>` | Képesség aktiválása az aktuális munkamenethez |\n| `/skills deactivate <name>` | Készség deaktiválása |\n| `/skills info <name>` | Részletes képzettségi információk megjelenítése |\n| `/skills install` | Tallózás és telepítés a közösségi nyilvántartásból |\n| `/skills install @<slug>` | Telepítsen közösségi készségeket a slug |\n| `/skills search <query>` | Keresés a közösségi készségek nyilvántartásában |\n| `/skills trending` | Felkapott közösségi készségek megjelenítése |\n| `/skills remove <slug>` | Közösségi készség eltávolítása |\n| `/skills new` | Hozzon létre új készségeket interaktívan |\n| `/skills feedback <slug> <1-5>` | Értékeljen egy közösségi képességet |\n\n#### `/learn` - LLM-alapú Skill Advisor\n\n| Parancs | Leírás |\n| ---------------- | ---------------------------------------------------------------- |\n| `/learn` | A projekt elemzése és készségek ajánlása (gyors szkennelés) |\n| `/learn deep` | Mélyszkennelési projekt (forrásfájlokat olvas) a célzottabb eredmények érdekében |\n| `/learn update` | A projekt újraelemzése és az LLM által generált elavult készségek regenerálása |\n\nA `/learn` kétfázisú LLM-folyamatot használ:\n\n1. **1. fázis – Elemzés + Rangsorolás + Ellenőrzés**: Ellenőrzi a projekt szerkezetét, auditálja a telepített készségeket redundanciák/konfliktusok szempontjából, és rangsorolja a közösségi készségeket relevancia szerint (0-100).\n2. **2. fázis – Létrehozás** (feltételes): Ha egyik közösségi képesség sem ér el 60 feletti pontszámot, felajánlja a projektjéhez szabott egyéni képesség létrehozását.\nA generált készségek metaadatokat (`agentskill-source: llm-generated`, `agentskill-project-hash`) tartalmaznak, így a `/learn update` képes észlelni, ha megváltozik a kódbázis, és újra előállíthatja az elavult készségeket.\n\n### Automatikus készséggenerálás (`--auto-skill`)\n\nA `--auto-skill` CLI jelző készségeket generál az interaktív tanácsadói folyamat nélkül:\n```bash\nautohand --auto-skill\n```\nEz:\n\n1. Elemezze a projekt felépítését (package.json, követelmények.txt stb.)\n2. Nyelvek, keretrendszerek és minták észlelése\n3. Generáljon 3 releváns készséget az LLM segítségével\n4. Mentse el a készségeket ide: `<project>/.autohand/skills/`\n\nA célzottabb, interaktívabb élmény érdekében használja inkább a `/learn` kódot egy munkameneten belül.\n\nAz észlelt minták a következők:\n\n- **Nyelvek**: TypeScript, JavaScript, Python, Rust, Go\n- **Frameworks**: React, Next.js, Vue, Express, Flask, Django\n- **Minták**: CLI eszközök, tesztelés, monorepo, Docker, CI/CD\n\n---\n\n## API beállítások\n\nBackend API konfiguráció a csapatfunkciókhoz.\n```json\n{\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\",\n \"companySecret\": \"sk-team-xxx\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------------------------- | ---------------------------------------- |\n| `baseUrl` | húr | `https://api.autohand.ai` | API-végpont |\n| `companySecret` | húr | - | Csapat/vállalati titok a megosztott funkciókhoz |\n\nKörnyezeti változókkal is beállítható:\n\n- `AUTOHAND_API_URL` → `api.baseUrl`\n- `AUTOHAND_SECRET` → `api.companySecret`\n\n---\n\n## Hitelesítési beállítások\n\nHitelesítés és felhasználói munkamenet konfigurálása.\n```json\n{\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\",\n \"avatar\": \"https://example.com/avatar.png\"\n },\n \"expiresAt\": \"2025-12-31T23:59:59Z\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------- | ------ | ------- | --------------------------------------------- |\n| `token` | húr | - | Hitelesítési token API-hozzáféréshez |\n| `user` | tárgy | - | Hitelesített felhasználói adatok |\n| `user.id` | húr | - | Felhasználói azonosító |\n| `user.email` | húr | - | Felhasználó e-mail címe |\n| `user.name` | húr | - | Felhasználó megjelenített név |\n| `user.avatar` | húr | - | Felhasználói avatar URL-je (nem kötelező) |\n| `expiresAt` | húr | - | Token lejárati időbélyegzője (ISO 8601 formátum) |\n\n---\n\n## Közösségi készségek beállításai\n\nKonfiguráció a közösségi készségek felfedezéséhez és kezeléséhez.\n```json\n{\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------------------------- | ------- | ------- | -------------------------------------------------------------- |\n| `enabled` | logikai | `true` | Közösségi készségek funkcióinak engedélyezése |\n| `showSuggestionsOnStartup` | logikai | `true` | Képességi javaslatok megjelenítése indításkor, ha nem állnak rendelkezésre szállítói ismeretek |\n| `autoBackup` | logikai | `true` | A felfedezett szállítói ismeretek automatikus biztonsági mentése API |\n\n---\n\n## Megosztási beállítások\n\nKonfiguráció a munkamenet megosztásához a `/share` paranccsal. A munkamenetek a [autohand.link](https://autohand.link) címen találhatók.\n```json\n{\n \"share\": {\n \"enabled\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ------------------------------------ |\n| `enabled` | logikai | `true` | A `/share` parancs engedélyezése/letiltása |\n\n### YAML formátum\n```yaml\nshare:\n enabled: true\n```\n### Munkamenet-megosztás letiltása\n\nHa biztonsági vagy adatvédelmi okokból ki szeretné kapcsolni a munkamenet-megosztást:\n```json\n{\n \"share\": {\n \"enabled\": false\n }\n}\n```\nHa le van tiltva, a `/share` futtatásakor a következő jelenik meg:\n```\nSession sharing is disabled.\nTo enable, set share.enabled: true in your config file.\n```\n---\n\n## Beállítások szinkronizálása\n\nA Autohand szinkronizálhatja a konfigurációt az eszközök között a bejelentkezett felhasználók számára. A beállításokat a Cloudflare R2 biztonságosan tárolja, és a feltöltés előtt titkosítja.\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"exclude\": [],\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------------- | -------- | ---------------- | --------------------------------------------------- |\n| `enabled` | logikai | `true` (naplózva) | Beállítások szinkronizálásának engedélyezése/letiltása |\n| `interval` | szám | `300000` | Szinkronizálási idő ezredmásodpercben (alapértelmezett: 5 perc) |\n| `exclude` | string[] | `[]` | Globális minták a szinkronizálásból kizárandó |\n| `includeTelemetry` | logikai | `false` | Telemetriai adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n| `includeFeedback` | logikai | `false` | Visszajelzési adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n\n### CLI zászló\n```bash\n# Disable sync for this session\nautohand --sync-settings=false\n\n# Enable sync (default for logged users)\nautohand --sync-settings\n```\n### Mi lesz szinkronizálva\n\nAlapértelmezés szerint ezek az elemek szinkronizálva vannak a bejelentkezett felhasználók számára:\n\n- **Konfiguráció** (`config.json`) - Az API-kulcsok a feltöltés előtt titkosítva vannak\n- **Egyéni ügynökök** (`agents/`)\n- **Közösségi készségek** (`community-skills/`)\n- **Felhasználói akasztók** (`hooks/`)\n- **Memória** (`memory/`)\n- **Projektismeret** (`projects/`)\n- **Munkamenetek előzményei** (`sessions/`)\n- **Megosztott tartalom** (`share/`)\n- **Egyéni készségek** (`skills/`)\n\n### Mi nem szinkronizál (alapértelmezés szerint)\n\n- **Eszközazonosító** (`device-id`) - Eszközönként egyedi\n- **Hibanaplók** (`error.log`) - Csak helyi\n- **Verziógyorsítótár** (`version-*.json`) - Helyi gyorsítótár fájlok\n\n### Beleegyezés alapú szinkronizálás\n\nEzek az elemek kifejezett feliratkozást igényelnek a konfigurációban:\n\n- **Telemetriai adatok** - Állítsa be a `sync.includeTelemetry: true` szinkronizálást\n- **Visszajelzési adatok** - Állítsa be a `sync.includeFeedback: true` szinkronizálását\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"includeTelemetry\": true,\n \"includeFeedback\": true\n }\n}\n```\n### Konfliktusmegoldás\n\nHa ütközések lépnek fel (ugyanaz a fájl több eszközön módosítva), a **felhőverzió nyer**. Ez biztosítja a következetességet az új eszközökön való bejelentkezéskor.\n\n### Biztonság\n\nA `config.json` API-kulcsait és egyéb bizalmas adatait a rendszer a hitelesítési token segítségével titkosítja a feltöltés előtt. Csak az Ön hitelesítő adataival lehet visszafejteni.\n\n**Mi van titkosítva:**\n\n- `apiKey` nevű mezők\n- `Key`, `Token`, `Secret` végződő mezők\n- A `password` mező\n\n### Hogyan működik\n\n1. **Indításkor**: Ha be van jelentkezve, a szinkronizálási szolgáltatás automatikusan elindul\n2. **5 percenként**: A beállításokat összehasonlítja a felhőalapú tárolással\n3. **A felhő nyer**: A távoli módosítások letöltése először történik meg\n4. **Helyi feltöltések**: Új helyi módosítások kerülnek feltöltésre\n5. **Kilépéskor**: A szinkronizálási szolgáltatás kecsesen leáll\n\n### Fájlok kizárása\n\nKizárhat bizonyos fájlokat vagy mintákat a szinkronizálásból:\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"exclude\": [\"custom-local-config.json\", \"temp/*\"]\n }\n}\n```\n### YAML formátum\n```yaml\nsync:\n enabled: true\n interval: 300000\n exclude: []\n includeTelemetry: false\n includeFeedback: false\n```\n---\n\n## MCP beállítások\n\nÁllítsa be az MCP-kiszolgálókat (Model Context Protocol) a Autohand külső eszközökkel történő bővítésére.\n```json\n{\n \"mcp\": {\n \"enabled\": true,\n \"servers\": [\n {\n \"name\": \"filesystem\",\n \"transport\": \"stdio\",\n \"command\": \"npx\",\n \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/tmp\"],\n \"env\": {},\n \"autoConnect\": true\n },\n {\n \"name\": \"context7\",\n \"transport\": \"http\",\n \"url\": \"https://mcp.context7.com/mcp\",\n \"headers\": {\n \"CONTEXT7_API_KEY\": \"ctx7sk-your-api-key\"\n },\n \"autoConnect\": true\n }\n ]\n }\n}\n```\n### `mcp.enabled`\n\n- **Típus**: `boolean`\n- **Alapértelmezett**: `true`\n- **Leírás**: Az összes MCP-támogatás engedélyezése vagy letiltása. Ha `false`, akkor az indításkor nem csatlakozik szerver, és az MCP-eszközök nem érhetők el.\n\n### `mcp.servers`\n\n- **Típus**: `McpServerConfigEntry[]`\n- **Alapértelmezett**: `[]`\n- **Leírás**: MCP szerver konfigurációk tömbje.\n\n### Szerver beviteli mezői\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | --------------------------------- | -------------- | ------- | -------------------------------------------------------------- |\n| `name` | `string` | Igen | - | Egyedi szerverazonosító |\n| `transport` | `\"stdio\"` \\| `\"sse\"` \\| `\"http\"` | Igen | - | Szállítás típusa |\n| `command` | `string` | Igen (stdio) | - | Parancs a szerverfolyamat elindításához |\n| `args` | `string[]` | Nem | `[]` | Érvek a parancs mellett |\n| `url` | `string` | Igen (sse/http) | - | Szervervégpont URL |\n| `headers` | `Record<string, string>` | Nem | `{}` | Egyéni HTTP-fejlécek http/sse szállításhoz (pl. hitelesítési tokenek) |\n| `env` | `Record<string, string>` | Nem | `{}` | A kiszolgálónak átadott környezeti változók |\n| `autoConnect` | `boolean` | Nem | `true` | Automatikus csatlakozás indításkor |\n\n> A szerverek aszinkron módon csatlakoznak a háttérben az indítás során anélkül, hogy blokkolnák a promptot. A `/mcp` segítségével interaktívan kezelheti a szervereket, vagy a `/mcp add` segítségével böngészhet a közösségi nyilvántartásban, vagy adhat hozzá egyéni szervereket.\n\n> A teljes MCP-dokumentációért lásd: [docs/mcp.md](mcp.md).\n\n---\n\n## Hooks beállítások\n\nKonfiguráció életciklus-horogokhoz, amelyek shell-parancsokat futtatnak az ügynökeseményeken. A részletekért lásd a [Hooks dokumentációt] (./hooks.md).\n```json\n{\n \"hooks\": {\n \"enabled\": true,\n \"hooks\": [\n {\n \"event\": \"pre-tool\",\n \"command\": \"echo \\\"Running tool: $HOOK_TOOL\\\" >> ~/.autohand/hooks.log\",\n \"description\": \"Log all tool executions\",\n \"enabled\": true\n },\n {\n \"event\": \"file-modified\",\n \"command\": \"./scripts/on-file-change.sh\",\n \"description\": \"Custom file change handler\",\n \"filter\": { \"path\": [\"src/**/*.ts\"] }\n },\n {\n \"event\": \"post-response\",\n \"command\": \"curl -X POST https://api.example.com/webhook -d '{\\\"tokens\\\": $HOOK_TOKENS}'\",\n \"description\": \"Track token usage\",\n \"async\": true\n }\n ]\n }\n}\n```\n### `hooks`\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ---------------------------------- |\n| `enabled` | logikai | `true` | Az összes hook engedélyezése/letiltása globálisan |\n| `hooks` | tömb | `[]` | Horogdefiníciók tömbje |\n\n### Hook meghatározása\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | ------- | -------- | ------- | --------------------------------- |\n| `event` | húr | Igen | - | Bekapcsolandó esemény |\n| `command` | húr | Igen | - | Shell parancs végrehajtásához |\n| `description` | húr | Nem | - | A `/hooks` kijelző leírása |\n| `enabled` | logikai | Nem | `true` | Aktív-e a horog |\n| `timeout` | szám | Nem | `5000` | Időtúllépés ezredmásodpercben |\n| `async` | logikai | Nem | `false` | Futtasson blokkolás nélkül |\n| `filter` | tárgy | Nem | - | Szűrés szerszám vagy útvonal szerint |\n\n### Hook események\n\n| Esemény | Amikor kirúgták |\n| ---------------- | -------------------------------------- |\n| `pre-tool` | Mielőtt bármilyen eszköz végrehajtaná |\n| `post-tool` | A szerszám befejezése után |\n| `file-modified` | A fájl létrehozásakor/módosításakor/törlésekor |\n| `pre-prompt` | Mielőtt elküldené az LLM-nek |\n| `post-response` | Miután az LLM válaszol |\n| `session-error` | Hiba esetén |\n\n### Környezeti változók\n\nAmikor a hook fut, ezek a környezeti változók állnak rendelkezésre:\n\n| Változó | Leírás |\n| ----------------- | ---------------------------- |\n| `HOOK_EVENT` | Esemény neve |\n| `HOOK_WORKSPACE` | Munkaterület gyökérútvonala |\n| `HOOK_TOOL` | Szerszámnév (szerszámesemények) |\n| `HOOK_ARGS` | JSON-kódolt eszköz args |\n| `HOOK_SUCCESS` | igaz/hamis (utóeszköz) |\n| `HOOK_PATH` | Fájl elérési útja (fájlmódosított) |\n| `HOOK_TOKENS` | Felhasznált tokenek (válasz után) |\n\n---\n\n## Chrome-bővítmény beállításai\n\nIrányítsd a Autohand Chrome-bővítmény integrációját. Tekintse meg a teljes útmutatót: [Autohand Chrome-ban](./autohand-in-chrome.md).\n```json\n{\n \"chrome\": {\n \"extensionId\": \"your-extension-id\",\n \"enabledByDefault\": false,\n \"browser\": \"auto\",\n \"userDataDir\": \"/path/to/chrome/user-data\",\n \"profileDirectory\": \"Default\",\n \"installUrl\": \"https://autohand.ai/chrome\"\n }\n}\n```\n| Kulcs | Típus | Alapértelmezett | Leírás |\n| ------------------- | --------- | -------- | -------------------------------------------------------------------------- |\n| `extensionId` | `string` | — | Telepített Chrome-bővítményazonosító a közvetlen átadáshoz |\n| `enabledByDefault` | `boolean` | `false` | A böngészőhíd automatikus indítása a CLI |-vel\n| `browser` | `string` | `\"auto\"` | Előnyben részesített Chromium böngésző: `auto`, `chrome`, `chromium`, `brave`, `edge` |\n| `userDataDir` | `string` | — | Böngésző felhasználói adatok könyvtára a megfelelő profil megcélzásához |\n| `profileDirectory` | `string` | — | Böngészőprofil-könyvtár neve (pl. `\"Default\"`, `\"Profile 1\"`) |\n| `installUrl` | `string` | — | Tartalék URL, ha a bővítményazonosító nincs konfigurálva |\n\n### CLI zászlók\n```bash\nautohand --chrome # Start with browser bridge enabled\nautohand --no-chrome # Start with browser bridge disabled\n```\n### Slash parancsok\n```\n/chrome # Open Chrome integration panel\n/chrome disconnect # Close the browser bridge connection\n```\n---\n\n## Teljes példa\n\n### JSON formátum (`~/.autohand/config.json`)\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\"\n },\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"model\": \"llama3.2\"\n },\n \"workspace\": {\n \"defaultRoot\": \"~/projects\",\n \"allowDangerousOps\": false\n },\n \"ui\": {\n \"theme\": \"dark\",\n \"autoConfirm\": false,\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n },\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"idleLogoutEnabled\": true,\n \"debug\": false\n },\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\"run_command:npm *\", \"run_command:bun *\"],\n \"blacklist\": [\"run_command:rm -rf /\"],\n \"rememberSession\": true\n },\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n },\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true\n },\n \"externalAgents\": {\n \"enabled\": false,\n \"paths\": []\n },\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\"\n },\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\"\n }\n },\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n },\n \"share\": {\n \"enabled\": true\n },\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n### YAML formátum (`~/.autohand/config.yaml`)\n```yaml\nprovider: openrouter\n\nopenrouter:\n apiKey: sk-or-v1-your-key-here\n baseUrl: https://openrouter.ai/api/v1\n model: your-modelcard-id-here\n\nollama:\n baseUrl: http://localhost:11434\n model: llama3.2\n\nworkspace:\n defaultRoot: ~/projects\n allowDangerousOps: false\n\nui:\n theme: dark\n autoConfirm: false\n showCompletionNotification: true\n showThinking: true\n terminalBell: true\n checkForUpdates: true\n updateCheckInterval: 24\n\nagent:\n maxIterations: 100\n enableRequestQueue: true\n toolSelectionCache: true\n idleLogoutEnabled: true\n debug: false\n\npermissions:\n mode: interactive\n whitelist:\n - \"run_command:npm *\"\n - \"run_command:bun *\"\n blacklist:\n - \"run_command:rm -rf /\"\n rememberSession: true\n\nnetwork:\n maxRetries: 3\n timeout: 30000\n retryDelay: 1000\n\ntelemetry:\n enabled: false\n apiBaseUrl: https://api.autohand.ai\n batchSize: 20\n flushIntervalMs: 60000\n maxQueueSize: 500\n maxRetries: 3\n enableSessionSync: true\n\nexternalAgents:\n enabled: false\n paths: []\n\napi:\n baseUrl: https://api.autohand.ai\n\nauth:\n token: your-auth-token\n user:\n id: user-id\n email: user@example.com\n name: User Name\n\ncommunitySkills:\n enabled: true\n showSuggestionsOnStartup: true\n autoBackup: true\n\nshare:\n enabled: true\n\nsync:\n enabled: true\n interval: 300000\n includeTelemetry: false\n includeFeedback: false\n```\n### TOML formátum (`~/.autohand/config.toml`)\n```toml\nprovider = \"openrouter\"\n\n[openrouter]\napiKey = \"sk-or-v1-your-key-here\"\nbaseUrl = \"https://openrouter.ai/api/v1\"\nmodel = \"your-modelcard-id-here\"\n\n[ollama]\nbaseUrl = \"http://localhost:11434\"\nmodel = \"llama3.2\"\n\n[workspace]\ndefaultRoot = \"~/projects\"\nallowDangerousOps = false\n\n[ui]\ntheme = \"dark\"\nautoConfirm = false\nshowCompletionNotification = true\nshowThinking = true\nterminalBell = true\ncheckForUpdates = true\nupdateCheckInterval = 24\n\n[ui.customThemes.company.vars]\nbrand = \"#7c3aed\"\nbrandSoft = \"#a78bfa\"\n\n[ui.customThemes.company.colors]\naccent = \"brand\"\nborderAccent = \"brandSoft\"\nmdHeading = \"brand\"\n\n[agent]\nmaxIterations = 100\nenableRequestQueue = true\ntoolSelectionCache = true\nidleLogoutEnabled = true\ndebug = false\n\n[permissions]\nmode = \"interactive\"\nwhitelist = [\"run_command:npm *\", \"run_command:bun *\"]\nblacklist = [\"run_command:rm -rf /\"]\nrememberSession = true\n```\n---\n\n## Címtárszerkezet\n\nA Autohand az adatokat `~/.autohand/` (vagy `$AUTOHAND_HOME`) kódban tárolja:\n```\n~/.autohand/\n├── config.json # Main configuration\n├── config.toml # Alternative TOML config\n├── config.yaml # Alternative YAML config\n├── device-id # Unique device identifier\n├── error.log # Error log\n├── feedback.log # Feedback submissions\n├── sessions/ # Session history\n├── projects/ # Project knowledge base\n├── memory/ # User-level memory\n├── commands/ # Custom commands\n├── agents/ # Agent definitions\n├── tools/ # Custom meta-tools\n├── feedback/ # Feedback state\n└── telemetry/ # Telemetry data\n ├── queue.json\n └── session-sync-queue.json\n```\n**Projektszintű könyvtár** (a munkaterület gyökérkönyvtárában):\n```\n<project>/.autohand/\n├── settings.local.json # Local project permissions (gitignore this)\n├── memory/ # Project-specific memory\n├── skills/ # Project-specific skills\n└── tools/ # Project-specific meta-tools\n```\n---\n\n## CLI-jelzők (konfig felülbírálása)\n\nEzek a jelzők felülírják a konfigurációs fájl beállításait:\n\n### Alapjelzők\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `-v, --version` | Az aktuális verzió kiadása |\n| `-p, --prompt [text]` | Futtasson egyetlen utasítást parancs módban |\n| `--path <path>` | Munkaterület gyökér felülbírálása |\n| `--config <path>` | Egyéni konfigurációs fájl használata |\n| `--model <model>` | Modell felülírása |\n| `--temperature <n>` | Beállított mintavételi hőmérséklet (0-1) |\n| `--thinking [level]` | Gondolkodási/érvelési mélység beállítása (nincs, normál, kiterjesztett) |\n| `-y, --yes` | Automatikus megerősítési kérések |\n| `--dry-run` | Előnézet végrehajtás nélkül |\n| `-d, --debug` | Részletes hibakeresési kimenet engedélyezése |\n| `--bare` | Minimális explicit mód; beállítja a `AUTOHAND_CODE_SIMPLE=1` értéket és letiltja a perjel parancsokat |\n\n### Engedélyek és biztonság\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--unrestricted` | Nincs jóváhagyási felszólítás |\n| `--restricted` | Veszélyes műveletek megtagadása |\n| `--permissions` | Jelenítse meg az aktuális engedélybeállításokat, és lépjen ki |\n| `--no-idle-logout` | A hitelesített tétlen kijelentkezés letiltása a hosszan futó ügynöki munkamenetekhez |\n| `--yolo [pattern]` | Eszközhívások megfelelő minta automatikus jóváhagyása (pl. `allow:read,write` vagy `deny:delete`) |\n| `--timeout <seconds>` | Időtúllépés másodpercben az automatikus jóváhagyási módhoz |\n\n### Git & Worktree\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--worktree [name]` | Munkamenet futtatása elszigetelt git-munkafán (opcionális munkafa/ág neve) |\n| `--tmux` | Indítás egy dedikált tmux munkamenetben (az `--worktree`-t jelenti; nem használható a `--no-worktree` kóddal) |\n| `--no-worktree` | A git munkafa elkülönítésének letiltása automatikus módban |\n| `-c, --auto-commit` | Változások automatikus véglegesítése a feladatok elvégzése után |\n| `--patch` | Git javítás generálása változtatások alkalmazása nélkül |\n| `--output <file>` | A javítás kimeneti fájlja (a --patch-el együtt használatos) |\n\n### Automatikus mód\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-mode [prompt]` | Engedélyezze az interaktív automatikus módot, vagy indítson önálló hurkot egy soron belüli feladattal |\n| `--max-iterations <n>` | Maximális automatikus módú iterációk (alapértelmezett: 50) |\n| `--completion-promise <text>` | Befejezésjelző szövege (alapértelmezett: \"KÉSZ\") |\n| `--checkpoint-interval <n>` | A Git minden N iterációt végrehajt (alapértelmezett: 5) |\n| `--max-runtime <m>` | Maximális futási idő percekben (alapértelmezett: 120) |\n| `--max-cost <d>` | Maximális API költség dollárban (alapértelmezett: 10) |\n| `--interactive-on-complete` | Az automatikus mód vége után adja át közvetlenül az interaktív módba (csak TTY) |\n\n### Készségek és tanulás\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-skill` | Készségek automatikus generálása projektelemzés alapján (lásd még: `/learn` az interaktív tanácsadóhoz) |\n| `--learn` | Futtassa a `/learn` készségtanácsadót nem interaktív módon (a javasolt készségek elemzése és telepítése) |\n| `--learn-update` | A projekt újraelemzése és az LLM által generált elavult készségek nem interaktív módon történő regenerálása |\n| `--skill-install [name]` | Telepítsen egy közösségi képességet (megnyitja a böngészőt, ha nincs megadva név) |\n| `--project` | A készség telepítése projektszintre (a --skill-install funkcióval) |\n\n### Hitelesítés és fiók\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--login` | Jelentkezzen be Autohand-fiókjába |\n| `--logout` | Jelentkezzen ki Autohand-fiókjából |\n| `--sync-settings` | A beállítások szinkronizálásának engedélyezése/letiltása (alapértelmezett: igaz a bejelentkezett felhasználók számára) |\n\n### Beállítás és információ\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--setup` | Futtassa a telepítővarázslót a Autohand |\n| `--about` | Információk megjelenítése a Autohand-ról (verzió, linkek, hozzájárulási információk) |\n| `--feedback` | Visszajelzés küldése a Autohand csapatának |\n| `--settings` | A Autohand beállításainak konfigurálása (ugyanaz, mint a `/settings` interaktív módban) |\n\n### Munkaterület és könyvtárak\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--add-dir <path...>` | További könyvtárak hozzáadása a munkaterület hatóköréhez (többször is használható) |\n\n### Futtatási módok\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--mode <mode>` | Futtatási mód: interaktív (alapértelmezett), rpc vagy acp |\n| `--acp` | A --mode acp rövidítése (Agent Client Protocol over stdio) |\n| `--teammate-mode <mode>` | Csapat megjelenítési mód: automatikus, folyamatban lévő vagy tmux |\n\n### UI és nyelv\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--display-language <locale>` | Megjelenítési nyelv beállítása (pl. en, id, zh-cn, fr, de, ja) |\n| `--search-engine <provider>` | Internetes keresőszolgáltató beállítása (google, brave, duckduckgo, párhuzamos) |\n| `--cc, --context-compact` | Környezettömörítés engedélyezése (alapértelmezett: be) |\n| `--no-cc, --no-context-compact` | Kontextustömörítés letiltása |\n\n### Chrome integráció\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--chrome` | A Chrome böngésző integrációjának engedélyezése (ugyanaz, mint `/chrome`) |\n| `--no-chrome` | A Chrome böngésző integrációjának letiltása |\n\n### Rendszerprompt\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-sys-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt-file <path>` | Cserélje le a teljes rendszerprompt a fájltartalommal |\n| `--append-system-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n### Kísérletváltási parancsok\n\n| Parancs | Leírás |\n| -------------------------------------- | ------------------------------------------------- |\n| `autohand experiments list` | Sorolja fel a helyi és távoli funkciók azonosítóit, a forrást, az életciklus szakaszt és az állapotot |\n| `autohand experiments status <feature>` | Mutasson egy szolgáltatáskapcsolót, konfigurációs elérési utat vagy távoli metaadatokat és állapotot |\n| `autohand experiments refresh` | Távoli funkciójelzők letöltése a Autohand API-ból |\n| `autohand experiments enable <feature>` | Konfigurációval támogatott szolgáltatáskapcsoló engedélyezése |\n| `autohand experiments disable <feature>` | A konfigurációval támogatott szolgáltatáskapcsoló letiltása |\n\nA távoli funkciójelzők lekérése innen: `/v1/feature-flags/evaluate`, gyorsítótár a `~/.autohand/feature-flags.json` címen történik, és az API által biztosított TTL lejárta után frissül. A `features.environment` segítségével válassza ki a távoli jelzőkörnyezetet, a `features.remoteOverrides` segítségével pedig a felhasználó által felülbírálható távoli jelzők helyi letiltásához.\n\nA `usage_v2` egy kísérleti funkciókapcsoló a `/usage` irányítópulthoz és a továbbfejlesztett `/status` Használat laphoz. Engedélyezze a következővel: `autohand experiments enable usage_v2`.\n\nA `token_usage_status` egy kísérleti funkciókapcsoló (konfigurációs útvonal `features.tokenUsageStatus`, alapértelmezés szerint kikapcsolva), amely a valós idejű tokenhasználatot mutatja a működő állapotsorban – kumulatív tokenek felfelé (`↑`) és lefelé (`↓`) plusz g kontextusban, cc. `↑15.7k ↓3.2k · context: 6.0% (15.7k/262.1k)`. A kontextusablak modellenként van feloldva az összes szolgáltatónál. Engedélyezze a következővel: `autohand experiments enable token_usage_status`.\n\n---\n\n## Slash parancsok\n\nAz Autohand perjel parancsok gazdag készletét kínálja interaktív használatra. A javaslatok megtekintéséhez írja be a `/` kódot a REPL-be.\n\n### Munkamenet-kezelés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/quit` | Kilépés az aktuális munkamenetből |\n| `/exit` | Kilépés az aktuális munkamenetből |\n| `/new` | Új beszélgetés indítása (memóriakivonattal) |\n| `/clear` | Tiszta beszélgetés automatikus memóriakivonással |\n| `/session` | Az aktuális munkamenet részleteinek megjelenítése |\n| `/sessions` | Korábbi munkamenetek listája |\n| `/resume` | Előző munkamenet folytatása |\n| `/history` | A munkamenet-előzmények böngészése oldalszámozással |\n| `/undo` | Git módosítások és utolsó forduló visszaállítása |\n| `/export` | Munkamenet exportálása markdown/JSON/HTML |\n| `/share` | Aktuális munkamenet megosztása |\n| `/status` | Munkamenet állapotának megjelenítése |\n| `/usage` | Modell, szolgáltató, kontextus és használati korlátok megjelenítése |\n\n### Modell és szolgáltató\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/model` | LLM-modell váltása vagy konfigurálása |\n| `/cc` | Kézi környezet tömörítése |\n\n### Projektbeállítás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/init` | Hozzon létre `AGENTS.md` fájlt az aktuális könyvtárban |\n| `/setup` | Futtassa a telepítővarázslót a Autohand | konfigurálásához\n| `/add-dir` | Könyvtárak hozzáadása a munkaterület hatóköréhez |\n\n### Ügynökök és csapatok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/agents` | Az elérhető alügynökök listája |\n| `/agents-new` | Hozzon létre egy új ügynököt a varázslón keresztül |\n| `/squad` | Nyissa meg/kezelje az önálló Autohand Squad futtatókörnyezetet |\n| `/team` | Csapat irányítása párhuzamos munkához |\n| `/tasks` | Feladatok kezelése csapatban |\n| `/message` | Üzenet küldése csapattársnak |\n\n### Készségek\n\n| Parancs | Leírás |\n| ----------------- | --------------------------------------------------- |\n| `/skills` | Készségek listája és kezelése |\n| `/skills-new` | Új készség létrehozása |\n| `/learn` | Tanulja meg és telepítse az ajánlott készségeket |\n\n### Memória és beállítások\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/memory` | Tárolt emlékek megtekintése és kezelése |\n| `/settings` | A Autohand beállításainak konfigurálása |\n| `/statusline` | A szerző állapotsor mezőinek konfigurálása |\n| `/experiments` | Kísérleti jellemzők kapcsolóinak váltása |\n| `/sync` | Beállítások szinkronizálása eszközök között |\n| `/import` | Importálhat munkameneteket, beállításokat, MCP-t, memóriát, készségeket és hook-okat a támogatott ügynökökről |\n\n### Engedélyek és akasztók\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/permissions`| Szerszámengedélyek kezelése |\n| `/hooks` | Életciklus-horogok kezelése |\n\n### Hitelesítés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/login` | Hitelesítés a Autohand API-val |\n| `/logout` | Kijelentkezés a Autohand fiókból |\n\n### Eszközök és segédprogramok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/search` | Keresés az interneten |\n| `/formatters` | Az elérhető kódformázók listája |\n| `/lint` | Sorolja fel a rendelkezésre álló kódsorokat |\n| `/completion` | Shell befejező szkriptek generálása |\n| `/plan` | Megvalósítási terv létrehozása |\n| `/review` | Kódellenőrzés végrehajtása |\n| `/pr-review` | Lehívási kérelem áttekintése |\n\n### IDE integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/ide` | A futó IDE észlelése és csatlakozása |\n\n### MCP (Model Context Protocol)\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/mcp` | Interaktív MCP-kiszolgálókezelő |\n\n### Automatizálás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/automode` | Indítsa el az autonóm kódolási módot |\n| `/repeat` | Ismétlődő munkák ütemezése |\n| `/yolo` | Yolo mód váltása (automatikus jóváhagyási eszközök) |\n\n### Chrome integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/chrome` | A Chrome böngésző integrációjának engedélyezése |\n\n### UI és kijelző\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/help` | Az elérhető perjel parancsok és tippek megjelenítése |\n| `/about` | Információk megjelenítése a következőről: Autohand |\n| `/theme` | Színtéma módosítása |\n| `/language` | Kijelző nyelvének módosítása |\n| `/feedback` | Visszajelzés küldése a Autohand csapatának |\n\n---\n\n## Rendszerprompt testreszabás\nAutohand lehetővé teszi az AI-ügynök által használt rendszerprompt testreszabását. Ez speciális munkafolyamatok, egyedi utasítások vagy más rendszerekkel való integráció esetén hasznos.\n\n### CLI zászlók\n\n| zászló | Leírás |\n| ------------------------------ | -------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerprompt |\n| `--append-sys-prompt <value>` | Tartalom hozzáfűzése az alapértelmezett rendszerprompthoz |\n\nMindkét zászló elfogadja a következőket:\n\n- **Inline karakterlánc**: Közvetlen szövegtartalom\n- **Fájl elérési útja**: A promptot tartalmazó fájl elérési útja (automatikusan észlelve)\n\n### Fájlútvonal észlelése\n\nEgy érték fájlútvonalként kezelendő, ha:\n\n- A következővel kezdődik: `./`, `../`, `/` vagy `~/`\n- Windows meghajtóbetűjellel kezdődik (pl. `C:\\`)\n- A következővel végződik: `.txt`, `.md` vagy `.prompt`\n- Útleválasztókat tartalmaz szóközök nélkül\n\nEllenkező esetben a rendszer soron belüli karakterláncként kezeli.\n\n### `--sys-prompt` (Teljes csere)\n\nHa rendelkezésre áll, ez **teljesen lecseréli** az alapértelmezett rendszerpromptot. Az ügynök NEM tölti be:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n```bash\n# Inline string\nautohand --sys-prompt \"You are a Python expert. Be concise.\" --prompt \"Write hello world\"\n\n# From file\nautohand --sys-prompt ./custom-prompt.txt --prompt \"Explain this code\"\n\n# Home directory\nautohand --sys-prompt ~/.autohand/prompts/python-expert.md --prompt \"Debug this function\"\n```\n**Példa egyéni prompt fájlra (`custom-prompt.txt`):**\n```\nYou are a specialized Python debugging assistant.\n\nRules:\n- Focus only on Python code\n- Always explain the root cause\n- Suggest fixes with code examples\n- Be concise and direct\n```\n### `--append-sys-prompt` (Hozzáadás az alapértelmezetthez)\n\nHa rendelkezésre áll, ez **hozzáfűzi** a tartalmat a teljes alapértelmezett rendszerprompthoz. Az ügynök továbbra is betölti:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n\nA csatolt tartalom a legvégére kerül hozzáadásra.\n```bash\n# Inline string\nautohand --append-sys-prompt \"Always use TypeScript instead of JavaScript\" --prompt \"Create a function\"\n\n# From file\nautohand --append-sys-prompt ./team-guidelines.md --prompt \"Add error handling\"\n```\n**Példa hozzáfűző fájl (`team-guidelines.md`):**\n```\n## Team Guidelines\n\n- Use 2-space indentation\n- Prefer functional patterns\n- Add JSDoc comments to public APIs\n- Run tests before committing\n```\n### Elsőbbség\n\nHa mindkét zászló rendelkezésre áll:\n\n1. A `--sys-prompt` teljes elsőbbséget élvez\n2. A `--append-sys-prompt` figyelmen kívül hagyva\n```bash\n# --append-sys-prompt is ignored in this case\nautohand --sys-prompt \"Custom only\" --append-sys-prompt \"This is ignored\"\n```\n### Használati esetek\n\n| Használati eset | Ajánlott zászló |\n| ---------------------------------- | ---------------------- |\n| Egyedi ügynök személye | `--sys-prompt` |\n| Minimális utasítások | `--sys-prompt` |\n| Csapatirányelvek hozzáadása | `--append-sys-prompt` |\n| Projektkonvenciók hozzáadása | `--append-sys-prompt` |\n| Integráció külső rendszerekkel | `--sys-prompt` |\n| Speciális hibakeresés | `--sys-prompt` |\n\n### Hibakezelés\n\n| Forgatókönyv | Viselkedés |\n| ------------------ | ------------------------- |\n| Üres érték | Hiba |\n| A fájl nem található | Soron belüli karakterláncként kezelve |\n| Üres fájl | Hiba |\n| Fájl > 1 MB | Hiba |\n| Engedély megtagadva | Hiba |\n| Címtár elérési útja | Hiba |\n\n### Példák\n```bash\n# Python expert mode\nautohand --sys-prompt \"You are a Python expert. Only write Python code.\" \\\n --prompt \"Create a web scraper\"\n\n# TypeScript enforcement\nautohand --append-sys-prompt \"Always use TypeScript, never JavaScript.\" \\\n --prompt \"Create a REST API\"\n\n# CI/CD integration (non-interactive)\nautohand --sys-prompt ./ci-prompt.txt \\\n --prompt \"Fix the failing tests\" \\\n --unrestricted \\\n --patch\n\n# Custom team workflow\nautohand --append-sys-prompt ~/.company/coding-standards.md \\\n --prompt \"Refactor this module\"\n```\n---\n\n## Több könyvtár támogatása\n\nAz Autohand a fő munkaterületen kívül több könyvtárral is működhet. Ez akkor hasznos, ha a projektben különböző könyvtárakban vannak függőségek, megosztott könyvtárak vagy kapcsolódó projektek.\n\n### CLI zászló\n\nA `--add-dir` használatával további könyvtárakat adhat hozzá (többször is használható):\n```bash\n# Add a single additional directory\nautohand --add-dir /path/to/shared-lib\n\n# Add multiple directories\nautohand --add-dir /path/to/lib1 --add-dir /path/to/lib2\n\n# With unrestricted mode (auto-approve writes to all directories)\nautohand --add-dir /path/to/shared-lib --unrestricted\n```\n### Interaktív parancs\n\n`/add-dir` használata interaktív munkamenet során:\n```\n/add-dir # Show current directories\n/add-dir /path/to/dir # Add a new directory\n```\n### Biztonsági korlátozások\n\nA következő könyvtárak nem adhatók hozzá:\n\n- Saját könyvtár (`~` vagy `$HOME`)\n- Gyökérkönyvtár (`/`)\n- Rendszerkönyvtárak (`/etc`, `/var`, `/usr`, `/bin`, `/sbin`)\n- Windows rendszerkönyvtárak (`C:\\Windows`, `C:\\Program Files`)\n- Windows felhasználói könyvtárak (`C:\\Users\\username`)\n- WSL Windows-csatlakozások (`/mnt/c`, `/mnt/c/Windows`)\n"}, "80d1dd2f1137d50a107970387f4512a5f6371e0b": {"t": 1786067761.770327, "n": 88144, "h": "56b4d8145f275097", "c": "# Autohand Konfigurációs referencia\n\nTeljes referencia az összes konfigurációs beállításhoz itt: `~/.autohand/config.json` (vagy `.toml`/`.yaml`/`.yml`).\n\n> **Tipp:** A legtöbb alábbi beállítás interaktívan módosítható a `/settings` paranccsal a fájl manuális szerkesztése helyett.\n\nLokalizált referenciák:\n\n- [English](./config-reference.md)\n- [日本語](./config-reference_ja.md)\n- [简体中文](./config-reference_zh.md)\n- [繁體中文](./config-reference_zh-tw.md)\n- [한국어](./config-reference_ko.md)\n- [Deutsch](./config-reference_de.md)\n- [Español](./config-reference_es.md)\n- [Français](./config-reference_fr.md)\n- [Italiano](./config-reference_it.md)\n- [Polski](./config-reference_pl.md)\n- [Русский](./config-reference_ru.md)\n- [Português (Brasil)](./config-reference_ptBR.md)\n- [Türkçe](./config-reference_tr.md)\n- [Čeština](./config-reference_cs.md)\n- [Magyar](./config-reference_hu.md)\n- [हिन्दी](./config-reference_hi.md)\n- [Bahasa Indonesia](./config-reference_id.md)\n\n## Tartalomjegyzék\n\n- [A konfigurációs fájl helye](#configuration-file-location)\n- [Környezeti változók](#environment-variables)\n- [Csupasz mód](#bare-mode)\n- [Szolgáltatói beállítások](#provider-settings)\n- [Munkaterület beállításai](#workspace-settings)\n- [UI beállítások](#ui-settings)\n- [Ügynökbeállítások](#agent-settings)\n- [Engedélyek beállításai](#permissions-settings)\n- [Javítási mód](#patch-mode)\n- [Hálózati beállítások](#network-settings)\n- [Telemetriai beállítások](#telemetry-settings)\n- [Külső ügynökök](#external-agents)\n- [Skills System](#skills-system)\n- [API beállítások](#api-settings)\n- [Authentication Settings](#authentication-settings)\n- [Közösségi készségek beállításai](#community-skills-settings)\n- [Megosztási beállítások](#share-settings)\n- [Beállítások szinkronizálása](#settings-sync)\n- [Hook beállításai](#hooks-settings)\n- [MCP beállítások](#mcp-settings)\n- [Chrome-bővítmény beállításai](#chrome-extension-settings)\n- [Teljes példa](#complete-example)\n\n---\n\n## Konfigurációs fájl helye\n\nAutohand a következő sorrendben keresi a konfigurációt:\n\n1. `AUTOHAND_CONFIG` környezeti változó (egyéni elérési út)\n2. `~/.autohand/config.toml`\n3. `~/.autohand/config.yaml`\n4. `~/.autohand/config.yml`\n5. `~/.autohand/config.json` (alapértelmezett)\n\nAz alapkönyvtárat is felülírhatja:\n```bash\nexport AUTOHAND_HOME=/custom/path # Changes ~/.autohand to /custom/path\n```\n---\n\n## Környezeti változók\n\n| Változó | Leírás | Példa |\n| --------------------------------------- | ------------------------------------------------- | --------------------------------- |\n| `AUTOHAND_HOME` | Alapkönyvtár az összes Autohand adathoz | `/custom/path` |\n| `AUTOHAND_CONFIG` | Egyéni konfigurációs fájl elérési útja | `/path/to/config.toml` |\n| `AUTOHAND_API_URL` | API-végpont (felülbírálja a konfigurációt) | `https://api.autohand.ai` |\n| `AUTOHAND_AUTH_URL` | Bejelentkezési és fiókszinkronizálási eredet (az `AUTOHAND_API_URL` értékétől független) | `https://autohand.ai` |\n| `AUTOHAND_SECRET` | Vállalat/csapat titkos kulcsa | `sk-xxx` |\n| `AUTOHAND_PERMISSION_CALLBACK_URL` | Az engedély visszahívásának URL-je (kísérleti) | `http://localhost:3000/callback` |\n| `AUTOHAND_PERMISSION_CALLBACK_TIMEOUT` | Az engedély-visszahívás időtúllépése ms-ban | `5000` |\n| `AUTOHAND_NON_INTERACTIVE` | Futtatás nem interaktív módban | `1` |\n| `AUTOHAND_YES` | Minden felszólítás automatikus megerősítése | `1` |\n| `AUTOHAND_NO_BANNER` | Indítási szalaghirdetés letiltása | `1` |\n| `AUTOHAND_STREAM_TOOL_OUTPUT` | Az eszköz kimenetének streamelése valós időben | `1` |\n| `AUTOHAND_DEBUG` | Hibakeresési naplózás engedélyezése | `1` |\n| `AUTOHAND_THINKING_LEVEL` | Érvelési mélységszint beállítása | `normal` |\n| `AUTOHAND_CLIENT_NAME` | Kliens/szerkesztő azonosító (ACP kiterjesztések által beállítva) | `zed` |\n| `AUTOHAND_CLIENT_VERSION` | Kliens verzió (az ACP-bővítmények által beállított) | `0.169.0` |\n| `AUTOHAND_CODE` | Környezetérzékelési jelző (automatikusan beállítva) | `1` |\n| `AUTOHAND_CODE_SIMPLE` | A csupasz mód engedélyezése a `--bare` | átadása nélkül `1` |\n\n### Gondolkodási szint\n\nA `AUTOHAND_THINKING_LEVEL` környezeti változó szabályozza a modell által használt érvelés mélységét:\n\n| Érték | Leírás |\n| ---------- | --------------------------------------------------------------------- |\n| `none` | Közvetlen válaszok látható indoklás nélkül |\n| `normal` | Szabványos érvelési mélység (alapértelmezett) |\n| `extended` | Mély érvelés összetett feladatokhoz, részletesebb gondolkodási folyamatot mutat |\n\nEzt általában az ACP-kliens-bővítmények (például a Zed) állítják be a konfigurációs legördülő menüben.\n```bash\n# Example: Use extended thinking for complex tasks\nAUTOHAND_THINKING_LEVEL=extended autohand --prompt \"refactor this module\"\n```\n---\n\n## Csupasz mód\n\nA csupasz mód a Autohand csak kifejezetten kért kontextus- és futásidejű integrációkkal indul. Engedélyezze a következők egyikével:\n```bash\nautohand --bare\nAUTOHAND_CODE_SIMPLE=1 autohand\n```\nA `--bare` átadásakor a Autohand a `AUTOHAND_CODE_SIMPLE=1` értéket is beállítja a futó folyamathoz.\n\nA csupasz mód letiltja az automatikus indítást és az interaktív integrációkat:\n\n- horgok és horog értesítések\n- LSP indítás\n- plugin szinkronizálás, bővítmény automatikus betöltése és meta-eszköz automatikus betöltése\n- hozzárendelés, telemetria, munkamenet-szinkronizálás, automatikus jelentéskészítés és háttérpingek\n- automatikus memória/munkamenet bootstrap kontextus\n- háttérkérdések, frissítés-ellenőrzések, funkciójelző-lekérések és modell-metaadatok előzetes letöltése\n- kulcstartó és böngésző OAuth-hitelesítési tartalék\n- automatikus `AGENTS.md` és szolgáltatói utasítás keresés\n- minden perjel parancs, beleértve a parancssorba beírt csupasz `/`\n\nA perjel alakú abszolút fájlútvonalakat, például a `/Users/alex/project/file.ts`, továbbra is normál prompt szövegként kezeli a rendszer. A parancs alakú perjel bevitel, például `/help`, `/model` vagy `/mcp`, a `Slash commands are disabled in bare mode.` kódot írja ki, és nem hajtódik végre.\n\nA csupasz módban történő hitelesítés csak explicit. A Autohand először a következőt olvassa: `AUTOHAND_API_KEY`, majd `auth.apiKeyHelper`, ha be van állítva. Nem olvassa be a kulcstartó hitelesítő adatait, és nem indítja el az OAuth/böngésző bejelentkezést. A külső szolgáltatók továbbra is a szolgáltatóspecifikus API-kulcsokat és konfigurációkat használják.\n\nEzek az explicit bemenetek csupasz módban is elérhetők:\n\n| Bemenet | Leírás |\n| ------------------------------ | -------------------------------------------------------------------------- |\n| `--system-prompt <value>` | Cserélje ki a rendszerprompt szövegközi szöveggel vagy elérési út-szerű értékkel |\n| `--system-prompt-file <path>` | Cserélje ki a rendszerpromptot a fájltartalommal |\n| `--append-system-prompt <value>` | Szövegközi szöveg vagy elérési út-szerű érték hozzáfűzése a | rendszerprompthoz\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--add-dir <path...>` | Explicit könyvtárak hozzáadása a munkaterület hatóköréhez |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--settings` | Nyissa meg a beállításokat közvetlenül a CLI jelzőből |\n| `--config <path>` | Használjon explicit Autohand konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n---\n\n## Szolgáltatói beállítások\n\n### `provider`\n\nAktív LLM szolgáltató használható.\n\n| Érték | Leírás |\n| -------------- | ----------------------------- |\n| `\"openrouter\"` | OpenRouter API (alapértelmezett) |\n| `\"ollama\"` | Helyi Ollama példány |\n| `\"llamacpp\"` | Helyi llama.cpp szerver |\n| `\"openai\"` | OpenAI API közvetlenül |\n| `\"mlx\"` | MLX az Apple Siliconon (helyi) |\n| `\"llmgateway\"` | LLM Gateway egyesített API |\n| `\"deepseek\"` | DeepSeek API |\n| `\"zai\"` | Z.ai GLM API |\n| `\"sakana\"` | Sakana.AI Fugu API |\n| `\"bedrock\"` | AWS alapkőzet |\n| `\"custom:<id>\"` | Felhasználó által meghatározott OpenAI-kompatibilis szolgáltató a következőtől: `customProviders` |\n\n### `openrouter`\n\nOpenRouter szolgáltató konfigurációja.\n```json\n{\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-xxx\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\",\n \"contextWindow\": 262144\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | --------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön OpenRouter API kulcsa |\n| `baseUrl` | húr | Nem | `https://openrouter.ai/api/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellazonosító (pl. `your-modelcard-id-here`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand kitölti ezt az OpenRouterből, ha ismert. |\n\n### `zai`\n\nZ.ai szolgáltató konfigurációja.\n```json\n{\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"baseUrl\": \"https://api.z.ai/api/paas/v4\",\n \"model\": \"glm-5.2\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------- | -------------------------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | Az Ön Z.ai API-kulcsa |\n| `baseUrl` | húr | Nem | `https://api.z.ai/api/paas/v4` | API-végpont |\n| `model` | húr | Igen | `glm-5.2` | Modellazonosító, például `glm-5.2`, `glm-5.1` vagy `glm-4.5` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. A Autohand 1M-re következtet a GLM-5.2-nél és 200K-ra a GLM-5.1-nél. |\n\n### `sakana`\n\nSakana.AI szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.sakana.ai/v1`-t használja alap URL-ként.\n```json\n{\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\",\n \"contextWindow\": 1000000\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------- | ------------------------------ | ------------------------------------------------------------------ |\n| `apiKey` | húr | Igen | - | Az Ön Sakana API kulcsa |\n| `baseUrl` | húr | Nem | `https://api.sakana.ai/v1` | API-végpont |\n| `model` | húr | Igen | `fugu` | Modellazonosító, például `fugu` vagy `fugu-ultra` |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Autohand 1M-re következtet a Fugu modelleknél. |\n\n### `customProviders`\n\nAz egyéni szolgáltatók lehetővé teszik a felhasználók számára, hogy OpenAI-kompatibilis végpontot hozzanak létre kódmódosítás vagy új csomagolt szolgáltató nélkül. Adja hozzá a szolgáltatót a `customProviders` alatt, majd válassza ki a `provider: \"custom:<id>\"` kóddal. Ugyanez a folyamat elérhető a `/model` **Új szolgáltatóval**. A telepítés során a Autohand a szolgáltató mentése előtt ellenőrzi az alap URL-t, a hitelesítést és a kiválasztott modellt az OpenAI-kompatibilis `/models` végponton keresztül.\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\",\n \"models\": [\n {\n \"id\": \"acme-code-1\",\n \"label\": \"Acme Code 1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n ]\n }\n }\n}\n```\nAzon helyi OpenAI-kompatibilis szervereknél, amelyek nem igényelnek hitelesítést, állítsa a `apiKeyRequired` értékét `false` értékre, és hagyja ki a `apiKey` értéket.\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------------ | ------- | -------- | ------- | ----------- |\n| `id` | húr | Igen | - | Stabil szolgáltatói azonosító. Meg kell egyeznie az objektumkulccsal, és a következőképpen van kiválasztva: `custom:<id>`. |\n| `displayName` | húr | Igen | - | A `/model` és a szolgáltató beállításai között látható név. |\n| `apiFormat` | húr | Igen | - | A következőnek kell lennie: `openai-compatible`. |\n| `baseUrl` | húr | Igen | - | Végpont gyökér, például `https://api.example.com/v1`. Autohand ellenőrzi a `/models` kódot, és felhívja a `/chat/completions` kódot. |\n| `apiKey` | húr | Feltételes | - | Adathordozó token a tárolt végpontokhoz. Kötelező, ha a `apiKeyRequired` igaz. |\n| `apiKeyRequired` | logikai | Nem | `true` | Állítsa be a false értéket a helyi vagy már hitelesített átjárókhoz. |\n| `model` | húr | Igen | - | Aktív modell azonosító. |\n| `contextWindow` | szám | Nem | Auto | Pontos kontextusablak a token-költségvetéshez, állapothoz, telemetriához és szinkronizálási metaadatokhoz. |\n| `reasoningEffort` | húr | Nem | - | Opcionális `none`, `low`, `medium`, `high` vagy `xhigh`. `reasoning_effort` néven küldve egyéni OpenAI-kompatibilis kérésekhez. |\n| `models` | tömb | Nem | - | Opcionális modellválasztó bejegyzések modellenkénti kontextussal és érvelési metaadatokkal. |\n\n### `ollama`\n\nOllama szolgáltató konfigurációja.\n```json\n{\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"port\": 11434,\n \"model\": \"llama3.2\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------- | ------------------------------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:11434` | Ollama szerver URL |\n| `port` | szám | Nem | `11434` | Szerverport (a baseUrl alternatívája) |\n| `model` | húr | Igen | - | Modellnév (pl. `llama3.2`, `codellama`) |\n\n### `llamacpp`\n\nllama.cpp szerver konfigurációja.\n```json\n{\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"default\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | llama.cpp szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | Modellazonosító |\n\n### `openai`\n\nOpenAI API konfiguráció.\n```json\n{\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-xxx\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\nAz OpenAI a Autohand beépített OpenAI bejelentkezési folyamatán keresztül is használhatja ChatGPT-előfizetését:\n```json\n{\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"baseUrl\": \"https://api.openai.com/v1\",\n \"contextWindow\": 1050000,\n \"model\": \"gpt-5.4\",\n \"chatgptAuth\": {\n \"accessToken\": \"...\",\n \"refreshToken\": \"...\",\n \"accountId\": \"...\"\n }\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------------- | ------ | ----------------------- | ---------------------------- | -------------------------------------------------------------------------- |\n| `authMode` | húr | Nem | `api-key` | Hitelesítési mód: `api-key` vagy `chatgpt` |\n| `apiKey` | húr | Igen a `api-key` módhoz | - | OpenAI API kulcs |\n| `baseUrl` | húr | Nem | `https://api.openai.com/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-5.4`, `gpt-5.4-mini`) |\n| `contextWindow` | szám | Nem | Auto | Pontos modell kontextusablak. Állítsa be az elavult helyi feltételezések felülbírálásához. |\n| `chatgptAuth` | tárgy | Igen a `chatgpt` módhoz | - | Tárolt ChatGPT/Codex hitelesítési tokenek és fiókazonosító |\n\n### `mlx`\n\nMLX szolgáltató Apple Silicon Mac gépekhez (helyi következtetés).\n```json\n{\n \"mlx\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------ | -------------------- |\n| `baseUrl` | húr | Nem | `http://localhost:8080` | MLX szerver URL |\n| `port` | szám | Nem | `8080` | Szerver port |\n| `model` | húr | Igen | - | MLX modell azonosító |\n\n### `llmgateway`\n\nLLM Gateway egységes API konfiguráció. Hozzáférést biztosít több LLM-szolgáltatóhoz egyetlen API-n keresztül.\n```json\n{\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"baseUrl\": \"https://api.llmgateway.io/v1\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | ------------------------------- | ---------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | LLM Gateway API kulcs |\n| `baseUrl` | húr | Nem | `https://api.llmgateway.io/v1` | API-végpont |\n| `model` | húr | Igen | - | Modellnév (pl. `gpt-4o`, `claude-3-5-sonnet-20241022`) |\n\n**API-kulcs beszerzése:**\nKeresse fel a [llmgateway.io/dashboard](https://llmgateway.io/dashboard) webhelyet fiók létrehozásához és API-kulcsának beszerzéséhez.\n\n**Támogatott modellek:**\nAz LLM Gateway több szolgáltató modelljét támogatja, többek között:\n\n- OpenAI: `gpt-4o`, `gpt-4o-mini`, `gpt-4-turbo`\n`claude-3-5-haiku-20241022`\n- Google: `gemini-1.5-pro`, `gemini-1.5-flash`\n\n### `deepseek`\n\nDeepSeek szolgáltató konfigurációja. Az API OpenAI-kompatibilis, és a `https://api.deepseek.com`-t használja alap URL-ként.\n```json\n{\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"baseUrl\": \"https://api.deepseek.com\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| --------- | ------ | -------- | --------------------------- | --------------------------------------------------------------- |\n| `apiKey` | húr | Igen | - | DeepSeek API kulcs |\n| `baseUrl` | húr | Nem | `https://api.deepseek.com` | API-végpont |\n| `model` | húr | Igen | - | Modellnév, például `deepseek-v4-flash` vagy `deepseek-v4-pro` |\n\n### `bedrock`\n\nAWS Bedrock szolgáltató konfigurációja. `converse` az alapértelmezett mód, és az AWS SDK hitelesítési láncot használja. Az OpenAI-kompatibilis módok Bedrock API-kulcsokat és Bedrock OpenAI-kompatibilis végpontokat használnak.\n```json\n{\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ---------- | ------ | -------- | ------- | ----------- |\n| `model` | húr | Igen | - | Alapkőzetmodell-azonosító, következtetési profilazonosító vagy ARN |\n| `region` | húr | Igen | `AWS_REGION`, majd `AWS_DEFAULT_REGION`, majd `us-east-1` a beállításban | AWS régió |\n| `apiMode` | húr | Nem | `converse` | `converse`, `openai-chat` vagy `openai-responses` |\n| `authMode` | húr | Nem | `aws-credentials` `converse`, `bedrock-api-key` OpenAI-kompatibilis módokhoz | Hitelesítési mód |\n| `profile` | húr | Nem | - | Opcionális AWS-profil a hitelesítő adatok láncos hitelesítéséhez |\n| `endpoint` | húr | Nem | Módból és régióból származtatva | Egyéni/privát Bedrock végpont |\n| `apiKey` | húr | Igen OpenAI-kompatibilis módokhoz | - | Bedrock API kulcs. Ne használjon OpenAI API-kulcsokat. |\n\nFuttassa a `aws configure sso` kódot, vagy állítsa be a `AWS_PROFILE=enterprise-prod autohand` értéket a profilalapú AWS-hitelesítéshez. Az IAM-szerepkört, a tárolót és a példány metaadat-hitelesítő adatait az AWS SDK támogatja. Modell használata előtt engedélyezze a modellelérést az AWS-konzolon.\n\n---\n\n## Munkaterület beállításai\n```json\n{\n \"workspace\": {\n \"defaultRoot\": \"/path/to/projects\",\n \"allowDangerousOps\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------------------ | -------------------------------------------------- |\n| `defaultRoot` | húr | Aktuális címtár | Alapértelmezett munkaterület, ha nincs megadva |\n| `allowDangerousOps` | logikai | `false` | Pusztító műveletek engedélyezése megerősítés nélkül |\n\n### Munkahelyi biztonság\n\nAutohand automatikusan blokkolja a működést a veszélyes könyvtárakban, hogy megelőzze a véletlen károsodást:\n\n- **Fájlrendszer gyökerei** (`/`, `C:\\`, `D:\\` stb.)\n- **Házikönyvtárak** (`~`, `/Users/<user>`, `/home/<user>`, `C:\\Users\\<user>`)\n- **Rendszerkönyvtárak** (`/etc`, `/var`, `/System`, `C:\\Windows` stb.)\n- **WSL Windows-csatlakozások** (`/mnt/c`, `/mnt/c/Users/<user>`)\n\nEzt az ellenőrzést nem lehet megkerülni. Ha egy veszélyes könyvtárban próbálja meg futtatni a autohand alkalmazást, hibaüzenetet fog látni, és meg kell adnia egy biztonságos projektkönyvtárat.\n```bash\n# This will be blocked\ncd ~ && autohand\n# Error: Unsafe Workspace Directory\n\n# This works\ncd ~/projects/my-app && autohand\n```\nA részletekért lásd a [Workspace Safety](./workspace-safety.md) részt.\n\n---\n\n## UI beállítások\n```json\n{\n \"ui\": {\n \"theme\": \"dark\",\n \"customThemes\": {\n \"company\": {\n \"colors\": {\n \"accent\": \"#7c3aed\",\n \"success\": \"#22c55e\"\n }\n }\n },\n \"autoConfirm\": false,\n \"readFileCharLimit\": 300,\n \"silentToolOutput\": false,\n \"activityVerbs\": [\"Compiling\", \"Parsing\", \"Reviewing\"],\n \"activityVerbsEnabled\": true,\n \"activitySymbol\": \"✳\",\n \"statusLine\": {\n \"showProviderModel\": true,\n \"showContext\": true,\n \"showCommandHint\": true,\n \"showPullRequest\": true,\n \"showSessionLines\": false,\n \"showQueue\": true,\n \"showActiveStatus\": true,\n \"showActiveMetrics\": true,\n \"showCancelHint\": true\n },\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ----------------------------- | ------ | ------- | ---------------------------------------------------------------------------------------------- |\n| `theme` | húr | `\"dark\"` | Színes téma a terminál kimenetéhez. A beépítettek a következők: `dark`, `light`, `dracula`, `sandy`, `tui`, `github-dark`, `cappadocia`, CODE és ___8__ `australia`. A régi `turkey` és `brazil` értékek továbbra is betöltődnek álnévként. |\n| `customThemes` | tárgy | `{}` | Soron belüli egyéni témadefiníciók a téma nevével. A használatához állítsa be a `theme` kulcsot ugyanarra a kulcsra. |\n| `autoConfirm` | logikai | `false` | A biztonságos működés érdekében hagyja ki a megerősítő felszólításokat |\n| `readFileCharLimit` | szám | `300` | Maximum megjeleníthető karakter az olvasási/kereső eszköz kimenetéből (a teljes tartalom továbbra is elküldésre kerül a modellnek) |\n| `silentToolOutput` | logikai | `false` | A szerszám kimeneti blokkjainak elrejtése a terminálban, miközben továbbra is megőrzi a modell/munkamenet szerszámeredményeit |\n| `activityVerbs` | karakterlánc vagy karakterlánc[] | beépített medence | Egyéni tevékenység ige vagy igekészlet a munkajelzőhöz, `Verb...` formátumban |\n| `activityVerbsEnabled` | logikai | `true` | Forgó tevékenység igék megjelenítése, például `Compiling...`, miközben az ügynök dolgozik |\n| `activitySymbol` | húr | `\"✳\"` | A tevékenységi ige előtt látható szimbólum a tevékenységmutató kimenetében |\n| `statusLine.showProviderModel` | logikai | `true` | Jelenítse meg az aktív szolgáltatót és modellt a szerző állapotsorában |\n| `statusLine.showContext` | logikai | `true` | Jelenítse meg a kontextus százalékos arányát a szerző állapotsorában |\n| `statusLine.showCommandHint` | logikai | `true` | Parancs, említés, készség és terminálbejegyzési tippek megjelenítése a szerző állapotsorában |\n| `statusLine.showPullRequest` | logikai | `true` | Mutassa meg a kapcsolódó lekérési kérés számát, vagy `PR #123`, ha nincs PR társítva |\n| `statusLine.showSessionLines` | logikai | `false` | Az aktuális munkamenet során hozzáadott és eltávolított sorok megjelenítése |\n| `statusLine.showQueue` | logikai | `true` | A sorba állított kérések számának megjelenítése az állapotsorban |\n| `statusLine.showActiveStatus` | logikai | `true` | Az aktív forduló állapotszövege megjelenítése, miközben az ügynök dolgozik |\n| `statusLine.showActiveMetrics` | logikai | `true` | Az eltelt idő és a token mérőszámainak megjelenítése, amíg az ügynök dolgozik |\n| `statusLine.showCancelHint` | logikai | `true` | Az Esc megszakítási tipp megjelenítése, miközben az ügynök dolgozik |\n| `completionReportEnabled` | logikai | `true` | Kérje meg a modellt, hogy a végrehajtott műveleti körök után tartalmazzon egy tömör befejezési jelentést |\n| `showCompletionNotification` | logikai | `true` | Rendszerértesítés megjelenítése a feladat befejezésekor |\n| `showThinking` | logikai | `true` | Az LLM érvelésének/gondolati folyamatának megjelenítése |\n| `terminalBell` | logikai | `true` | Csengessen terminálcsengőt, amikor a feladat befejeződött (jelvényt mutat a terminálfülön/dokkon) |\n| `checkForUpdates` | logikai | `true` | CLI frissítések keresése indításkor |\n| `updateCheckInterval` | szám | `24` | Órák a frissítési ellenőrzések között (a gyorsítótárazott eredményt az intervallumon belül használja) |\n\nAz egyéni témák bármely szemantikai színtokent felülírhatnak. A hiányzó tokenek a sötét témából származnak:\n```json\n{\n \"ui\": {\n \"theme\": \"company\",\n \"customThemes\": {\n \"company\": {\n \"vars\": {\n \"brand\": \"#7c3aed\",\n \"brandSoft\": \"#a78bfa\"\n },\n \"colors\": {\n \"accent\": \"brand\",\n \"borderAccent\": \"brandSoft\",\n \"mdHeading\": \"brand\"\n }\n }\n }\n }\n}\n```\nMegjegyzés: A `readFileCharLimit` és `silentToolOutput` csak a terminál megjelenítését érinti. A teljes tartalom továbbra is elküldésre kerül a modellnek, és eszközüzenetekben tárolódik.\n\nA néma eszközkimenetet a fájl szerkesztése nélkül is átkapcsolhatja:\n```bash\nautohand config set silent_tool_output true\nautohand config set silent_tool_output false\n```\nA forgó tevékenység igék között válthat a fájl szerkesztése nélkül:\n```bash\nautohand config set verbs activity true\nautohand config set verbs activity false\n```\nSzabja testre az igéket a konfigurációs fájlban, ha rögzített állapotcímkét vagy kis projektspecifikus elforgatást szeretne:\n```json\n{\n \"ui\": {\n \"activityVerbs\": \"Compiling\"\n }\n}\n```\n\n```json\n{\n \"ui\": {\n \"activityVerbs\": [\"Indexing\", \"Reviewing\", \"Testing\"],\n \"activitySymbol\": \">\"\n }\n}\n```\nA `activityVerbs` egyetlen karakterláncot vagy nem üres karakterlánc-tömböt fogad el. Ha a `activityVerbsEnabled` értéke `false`, a Autohand visszaesik a `Working...` értékre, ahelyett, hogy az egyéni vagy beépített igék között forogna.\n\nA fájl szerkesztése nélkül válthat a befejezési jelentések között, beleértve a strukturált `SITREP` promptot is:\n```bash\nautohand config set sitrep true\nautohand config set sitrep false\n```\n### Terminal Bell\n\nHa a `terminalBell` engedélyezve van (alapértelmezett), a Autohand megszólal a terminál csengőjén (`\\x07`), amikor egy feladat befejeződik. Ez kiváltja:\n\n- **Jelvény a terminál lapon** - Vizuális jelzőt mutat, hogy a munka elkészült\n- **Dokk ikon ugrál** - Felhívja a figyelmet, ha a terminál a háttérben van (macOS)\n- **Hang** - Ha a terminál hangjai engedélyezve vannak a terminál beállításaiban\n\nTerminálspecifikus beállítások:\n\n- **macOS terminál**: Beállítások > Profilok > Speciális > Bell (vizuális/hallható)\n- **iTerm2**: Beállítások > Profilok > Terminál > Értesítések\n- **VS Code Terminal**: Beállítások > Terminál > Integrált: Bell engedélyezése\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"terminalBell\": false\n }\n}\n```\n### Ink Renderer\n\nA Autohand alapértelmezés szerint az Ink 7 + React 19 renderert használja az interaktív terminálokhoz. A régi `ui.useInkRenderer` konfigurációs mezőt figyelmen kívül hagyja, így a régi konfigurációs fájlok nem kényszeríthetik a sima terminálszerkesztőt. A tinta a következőket nyújtja:\n\n- **Recgésmentes kimenet**: Minden UI-frissítés kötegelt React-egyeztetésen keresztül történik\n- **Munkasor funkció**: Írja be az utasításokat, amíg az ügynök dolgozik\n- **Jobb bemenetkezelés**: Nincsenek ütközések a readline-kezelők között\n- **Összeállítható felhasználói felület**: A jövőbeni fejlett felhasználói felületi funkciók alapja\n\nVészhelyzeti tartalék a terminál kompatibilitás érdekében:\n```bash\nAUTOHAND_LEGACY_UI=1 autohand\n```\nMegjegyzés: Ez a funkció kísérleti jellegű, és lehetnek szélső esetek. Az alapértelmezett ora-alapú felhasználói felület stabil és teljesen működőképes marad.\n\n### Frissítési ellenőrzés\n\nHa a `checkForUpdates` engedélyezve van (alapértelmezett), a Autohand indításkor ellenőrzi az új kiadásokat:\n```\n> Autohand v0.6.8 (abc1234) ✓ Up to date\n```\nHa elérhető frissítés:\n```\n> Autohand v0.6.7 (abc1234) ⬆ Update available: v0.6.8\n ↳ Run: curl -fsSL https://autohand.ai/install.sh | sh\n```\nHogyan működik:\n\n- Lekéri a GitHub API legújabb kiadását\n- A gyorsítótárak eredménye `~/.autohand/version-check.json`\n- Csak egyszer ellenőrzi `updateCheckInterval` óránként (alapértelmezett: 24)\n- Nem blokkoló: az indítás akkor is folytatódik, ha az ellenőrzés sikertelen\n\nLetiltása:\n```json\n{\n \"ui\": {\n \"checkForUpdates\": false\n }\n}\n```\nVagy környezeti változón keresztül:\n```bash\nexport AUTOHAND_SKIP_UPDATE_CHECK=1\n```\n---\n\n## Ügynök beállításai\n\nAz ügynök viselkedésének és iterációs korlátainak szabályozása.\n```json\n{\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"autoMemory\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | ------- | ------------------------------------------------------------------------------ |\n| `maxIterations` | szám | `100` | Maximális szerszámiterációk felhasználói kérésenként a leállítás előtt |\n| `enableRequestQueue` | logikai | `true` | Lehetővé teszi a felhasználók számára, hogy kéréseket írjanak be és sorba állítsanak, miközben az ügynök dolgozik |\n| `toolSelectionCache` | logikai | `true` | Gyorsítótárazza a körönkénti szerszámséma helyi kiválasztását az egyenértékű szerszámkiválasztási bemenethez |\n| `autoMemory` | logikai | `true` | Tartós felhasználói-/projektmemóriák kinyerése és mentése a befejezett interaktív fordulók után, beleértve a hibákból és megszakításokból származó, bizonyítékokkal alátámasztott tanulságokat |\n| `idleLogoutEnabled` | logikai | `true` | Jelentkezzen ki a hitelesített interaktív munkamenetekből az üresjárati időtúllépés után |\n| `idleTimeoutMs` | szám | `3600000` | Az inaktivitás ezredmásodpercei a hitelesített munkamenet kijelentkeztetése előtt (60 perc) |\n| `debug` | logikai | `false` | Részletes hibakeresési kimenet engedélyezése (naplózza az ügynök belső állapotát az stderr-be) |\n\n## Egyidejű munkamenetek észlelése\n\n```json\n{\n \"sessions\": {\n \"awareness\": \"warn\"\n }\n}\n```\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --- | --- | --- | --- |\n| `awareness` | karakterlánc | `\"warn\"` | A `passive` megjeleníti a többi munkamenetet, a `warn` a kockázatos Git- és fájlütközéseket is jelzi, a `coordinate` pedig megerősítést kér egy másik élő munkamenet által lefoglalt útvonal írása előtt |\n\n### Eszközséma kiválasztása\n\nA Autohand nem küld el minden teljes eszközsémát minden LLM-kérelemnél. A rendszerprompt tartalmaz egy kompakt eszközképesség-katalógust, és minden kérés csak egy kis konkrét sémát tesz közzé, amely a következők közül választható ki:\n\n- Az alapvető felderítési eszközök, például `tool_search`, `read_file`, `fff_find` és `fff_grep`\n- Szándékhoz illő eszközök szerkesztési, ellenőrzési, git, böngésző, web, függőségi vagy projektkövetési munkákhoz\n- A legutóbbi `tool_search` hívások során kért vagy kifejezetten név szerint megemlített eszközök\n\nEzzel elkerülhető a nagy előzetes kontextusköltség, ha az összes eszközséma elküldése a felhasználói szándék ismertsége előtt felmerül. `toolSelectionCache` csak a helyi választó gyorsítótárát vezérli az egyenértékű fordulatokhoz; nem hajt végre felhasználói előtti LLM-bemelegítést, és nem kényszerít ki nagy gyorsítótárazott prompt előtagot.\n\nA helyi választó gyorsítótárának letiltása:\n```json\n{\n \"agent\": {\n \"toolSelectionCache\": false\n }\n}\n```\nA hitelesített, régóta működő ügynöki munkamenetek életben tartásához, amíg munkára várnak:\n```json\n{\n \"agent\": {\n \"idleLogoutEnabled\": false\n }\n}\n```\nEgyetlen folyamathoz használja a `autohand --no-idle-logout` kódot, vagy állítsa be a `AUTOHAND_NO_IDLE_LOGOUT=1` értéket.\n\nAz inaktivitási idő módosításához állítsa az `idleTimeoutMs` értékét pozitív, ezredmásodpercben megadott időtartamra. Az alapértelmezett érték `3600000` (60 perc); az érvénytelen értékek az alapértelmezett értéket használják.\n\n### Hibakeresési mód\n\nEngedélyezze a hibakeresési módot az ügynök belső állapotának részletes naplózásához (reakcióhurok iterációi, prompt felépítés, munkamenet részletei). A kimenet az stderr-hez megy, hogy elkerülje a normál kimenet zavarását.\n\nHáromféleképpen engedélyezheti a hibakeresési módot (elsőbbségi sorrendben):\n\n1. **CLI jelző**: `autohand -d` vagy `autohand --debug`\n2. **Környezeti változó**: `AUTOHAND_DEBUG=1`\n3. **Konfigurációs fájl**: Állítsa be: `agent.debug: true`\n\n### Kérési sor\n\nHa a `enableRequestQueue` engedélyezve van, folytathatja az üzenetek beírását, miközben az ügynök feldolgoz egy korábbi kérést. A bevitel a sorba kerül, és automatikusan feldolgozásra kerül, amikor az aktuális feladat befejeződik.\n\n- Írja be az üzenetet, és nyomja meg az Enter billentyűt, hogy hozzáadja a sorhoz\n- Az állapotsor azt mutatja, hogy hány kérés van sorban\n- A kérések feldolgozása FIFO (first-in, first-out) sorrendben történik\n- A sor maximális mérete 10 kérés\n\n---\n\n## Engedélyek beállításai\n\nA szerszámengedélyek finom vezérlése.\n```json\n{\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\n \"run_command:npm *\",\n \"run_command:bun *\",\n \"run_command:git status\"\n ],\n \"blacklist\": [\"run_command:rm -rf *\", \"run_command:sudo *\"],\n \"rules\": [\n {\n \"tool\": \"run_command\",\n \"pattern\": \"npm test\",\n \"action\": \"allow\"\n }\n ],\n \"rememberSession\": true\n }\n}\n```\n### `mode`\n\n| Érték | Leírás |\n| ----------------- | ------------------------------------------------------ |\n| `\"interactive\"` | Jóváhagyás kérése veszélyes műveletekhez (alapértelmezett) |\n| `\"unrestricted\"` | Nincsenek felszólítások, engedélyezzen mindent |\n| `\"restricted\"` | Minden veszélyes művelet megtagadása |\n\n### `whitelist`\n\nSzerszámminták sora, amelyek soha nem igényelnek jóváhagyást.\n```json\n[\"run_command:npm *\", \"run_command:bun test\"]\n```\n### `blacklist`\n\nMindig blokkolt szerszámminták tömbje.\n```json\n[\"run_command:rm -rf /\", \"run_command:sudo *\"]\n```\n### `rules`\n\nFinom szemcsés engedélyezési szabályok.\n\n| Mező | Típus | Leírás |\n| --------- | --------- | -------------------------------------------- | ---------- | -------------- |\n| `tool` | húr | A megfelelő eszköznév |\n| `pattern` | húr | Opcionális minta az érvekhez való illeszkedéshez |\n| `action` | `\"allow\"` | `\"deny\"` | `\"prompt\"` | Intézkedések |\n\n### `rememberSession`\n\n| Típus | Alapértelmezett | Leírás |\n| ------- | ------- | -------------------------------------------- |\n| logikai | `true` | Emlékezzen az ülés jóváhagyási határozataira |\n\n### Helyi projektengedélyek\n\nMinden projektnek saját engedélybeállításai lehetnek, amelyek felülírják a globális konfigurációt. Ezeket a projekt gyökérkönyvtárában a `.autohand/settings.local.json` tartalmazza.\n\nAmikor jóváhagy egy fájlműveletet (szerkesztés, írás, törlés), a rendszer automatikusan ebbe a fájlba menti, így nem kéri újra ugyanazt a műveletet ebben a projektben.\n```json\n{\n \"version\": 1,\n \"permissions\": {\n \"whitelist\": [\n \"apply_patch:src/components/Button.tsx\",\n \"write_file:package.json\",\n \"run_command:bun test\"\n ]\n }\n}\n```\n**Hogyan működik:**\n\n- Amikor jóváhagy egy műveletet, a rendszer a következőbe menti: `.autohand/settings.local.json`\n- Legközelebb ugyanazt a műveletet a rendszer automatikusan jóváhagyja\n- A helyi projektbeállítások egyesülnek a globális beállításokkal (a helyi beállítások elsőbbséget élveznek)\n- Adja hozzá a `.autohand/settings.local.json` kódot a `.gitignore`-hoz, hogy a személyes beállítások privátak maradjanak\n\n**Mintaformátum:**\n\n- `tool_name:path` - Fájlműveletekhez (pl. `apply_patch:src/file.ts`)\n- `tool_name:command args` - Parancsokhoz (pl. `run_command:npm test`)\n\n### Megtekintési engedélyek\n\nJelenlegi engedélybeállításait kétféleképpen tekintheti meg:\n\n**CLI jelző (nem interaktív):**\n```bash\nautohand --permissions\n```\nEz a következőket jeleníti meg:\n\n- Jelenlegi engedélyezési mód (interaktív, korlátlan, korlátozott)\n- Munkaterület és konfigurációs fájlok elérési útjai\n- Minden jóváhagyott minta (engedélyezőlista)\n- Minden elutasított minta (feketelista)\n- Összefoglaló statisztika\n\n**Interaktív parancs:**\n```\n/permissions\n```\nInteraktív módban a `/permissions` parancs ugyanazokat az információkat és lehetőségeket biztosít a következőkhöz:\n\n- Elemek eltávolítása az engedélyezési listáról\n- Távolítsa el az elemeket a feketelistáról\n- Törölje az összes mentett engedélyt\n\n---\n\n## Patch mód\n\nA Patch mód lehetővé teszi megosztható, git-kompatibilis javítás létrehozását a munkaterület-fájlok módosítása nélkül. Ez hasznos:\n\n- A kód felülvizsgálata a változtatások alkalmazása előtt\n- Az AI által generált változások megosztása a csapat tagjaival\n- Reprodukálható változáskészletek készítése\n- CI/CD folyamatok, amelyeknek alkalmazása nélkül kell rögzíteni a változásokat\n\n### Használat\n```bash\n# Generate patch to stdout\nautohand --prompt \"add user authentication\" --patch\n\n# Save to file\nautohand --prompt \"add user authentication\" --patch --output auth.patch\n\n# Pipe to file (alternative)\nautohand --prompt \"refactor api handlers\" --patch > refactor.patch\n```\n### Viselkedés\n\nHa `--patch` meg van adva:\n\n- **Automatikus megerősítés**: Minden visszaigazolás automatikusan elfogadásra kerül (`--yes`)\n- **Nincsenek felszólítások**: Nem jelennek meg jóváhagyási értesítések (`--unrestricted` vélelmezett)\n- **Csak előnézet**: A változtatásokat rögzíti, de NEM írja lemezre\n- **Kikényszerített biztonság**: A feketelistán szereplő műveletek (`.env`, SSH-kulcsok, veszélyes parancsok) továbbra is blokkolva vannak\n\n### Javítások alkalmazása\n\nA címzettek szabványos git parancsokkal alkalmazhatják a javítást:\n```bash\n# Check what would be applied (dry-run)\ngit apply --check changes.patch\n\n# Apply the patch\ngit apply changes.patch\n\n# Apply with 3-way merge (handles conflicts better)\ngit apply -3 changes.patch\n\n# Apply and stage changes\ngit apply --index changes.patch\n\n# Reverse a patch\ngit apply -R changes.patch\n```\n### Patch formátum\n\nA generált javítás a git egységes diff formátumát követi:\n```diff\ndiff --git a/src/auth.ts b/src/auth.ts\nnew file mode 100644\n--- /dev/null\n+++ b/src/auth.ts\n@@ -0,0 +1,15 @@\n+export function authenticate(user: string, password: string) {\n+ // Implementation here\n+}\n\ndiff --git a/src/index.ts b/src/index.ts\n--- a/src/index.ts\n+++ b/src/index.ts\n@@ -1,5 +1,7 @@\n import express from 'express';\n+import { authenticate } from './auth';\n\n const app = express();\n+app.use(authenticate);\n```\n### Kilépési kódok\n\n| Kód | Jelentése |\n| ---- | ---------------------------------------------------- |\n| `0` | Siker, patch generált |\n| `1` | Hiba (hiányzó `--prompt`, engedély megtagadva stb.) |\n\n### Kombinálva más zászlókkal\n```bash\n# Use specific model\nautohand --prompt \"optimize queries\" --patch --model gpt-4o\n\n# Specify workspace\nautohand --prompt \"add tests\" --patch --path ./my-project\n\n# Use custom config\nautohand --prompt \"refactor\" --patch --config ~/.autohand/work.json\n```\n### Csapatmunkafolyamat-példa\n```bash\n# Developer A: Generate patch for a feature\nautohand --prompt \"implement user dashboard with charts\" --patch --output dashboard.patch\n\n# Share via git (create PR with just the patch file)\ngit checkout -b patch/dashboard\ngit add dashboard.patch\ngit commit -m \"Add dashboard feature patch\"\ngit push\n\n# Developer B: Review and apply\ngit fetch origin patch/dashboard\ngit apply dashboard.patch\n# Run tests, review code, then commit\ngit add -A && git commit -m \"feat: add user dashboard with charts\"\n```\n---\n\n## Hálózati beállítások\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Max | Leírás |\n| ------------ | ------ | ------- | --- | --------------------------------------- |\n| `maxRetries` | szám | `3` | `5` | Próbálkozzon újra sikertelen API-kérésekkel |\n| `timeout` | szám | `30000` | - | Kérelem időtúllépése ezredmásodpercben |\n| `retryDelay` | szám | `1000` | - | Az újrapróbálkozások közötti késleltetés ezredmásodpercben |\n\n---\n\n## Telemetriai beállítások\n\nA telemetria **alapértelmezés szerint le van tiltva** (feliratkozás). Engedélyezze a Autohand fejlesztéséhez.\n```json\n{\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true,\n \"companySecret\": \"\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| -------------------- | ------- | -------------------------- | ---------------------------------------------- |\n| `enabled` | logikai | `false` | Telemetria engedélyezése/letiltása (feliratkozás) |\n| `apiBaseUrl` | húr | `https://api.autohand.ai` | Telemetria API végpont |\n| `batchSize` | szám | `20` | Az automatikus kiürítés előtt kötegelt események száma |\n| `flushIntervalMs` | szám | `60000` | Öblítési időköz ezredmásodpercben (1 perc) |\n| `maxQueueSize` | szám | `500` | Maximális sorméret a régi események eldobása előtt |\n| `maxRetries` | szám | `3` | Próbálkozzon újra sikertelen telemetriai kérések esetén |\n| `enableSessionSync` | logikai | `true` | Szinkronizálja a munkameneteket a felhővel a csapatfunkciókhoz, ha a telemetria engedélyezve van |\n| `companySecret` | húr | `\"\"` | Vállalati titok API-hitelesítéshez |\n\nA szolgáltató/modell telemetria tartalmazza az aktív szolgáltatói azonosítót, a modellazonosítót és az elérhető nem titkos metaadatokat, például az egyéni szolgáltató megjelenítési nevét, API-formátumát, érvelési erőfeszítéseit és kontextusablakát. Az API-kulcsok és a vivőjogkivonatok soha nem szerepelnek benne.\n\n---\n\n## Külső ügynökök\n\nEgyéni ügynökdefiníciók betöltése külső könyvtárakból.\n```json\n{\n \"externalAgents\": {\n \"enabled\": true,\n \"paths\": [\"~/.autohand/agents\", \"/team/shared/agents\"]\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | -------- | ------- | -------------------------------- |\n| `enabled` | logikai | `false` | Külső ügynök betöltésének engedélyezése |\n| `paths` | string[] | `[]` | Könyvtárak az ügynökök betöltéséhez |\n\n---\n\n## Skills System\n\nA készségek olyan utasításcsomagok, amelyek speciális utasításokat adnak az AI-ügynöknek. Úgy működnek, mint az igény szerinti `AGENTS.md` fájlok, amelyek bizonyos feladatokhoz aktiválhatók.\n\n### Készségek felfedező helyek\n\nA készségek több helyről fedezhetők fel, és a későbbi források élveznek elsőbbséget:\n\n| Helyszín | Forrásazonosító | Leírás |\n| ----------------------------------------- | ------------------- | ------------------------------------------ |\n| `~/.codex/skills/**/SKILL.md` | `codex-user` | Felhasználói szintű Codex készségek (rekurzív) |\n| `~/.claude/skills/*/SKILL.md` | `claude-user` | Felhasználói szintű Claude-készségek (egy szint) |\n| `~/.autohand/skills/**/SKILL.md` | `autohand-user` | Felhasználói szintű Autohand készségek (rekurzív) |\n| `<project>/.claude/skills/*/SKILL.md` | `claude-project` | Projektszintű Claude-készségek (egy szint) |\n| `<project>/.autohand/skills/**/SKILL.md` | `autohand-project` | Projekt szintű Autohand készségek (rekurzív) |\n\n### Automatikus másolási viselkedés\n\nA Codex vagy Claude helyekről felfedezett készségek automatikusan átmásolódnak a megfelelő Autohand helyre:\n\n- `~/.codex/skills/` és `~/.claude/skills/` → `~/.autohand/skills/`\n- `<project>/.claude/skills/` → `<project>/.autohand/skills/`\n\nA Autohand helyeken meglévő készségek soha nem íródnak felül.\n\n### SKILL.md formátum\n\nA YAML frontmatter-t használó készségek, majd a leértékelési tartalom:\n```markdown\n---\nname: my-skill-name\ndescription: Brief description of the skill\nlicense: MIT\ncompatibility: Works with Node.js 18+\nallowed-tools: read_file write_file run_command\nmetadata:\n author: your-name\n version: \"1.0.0\"\n---\n\n# My Skill\n\nDetailed instructions for the AI agent...\n```\n| Mező | Kötelező | Max hossz | Leírás |\n| ---------------- | -------- | ---------- | ------------------------------------------- |\n| `name` | Igen | 64 karakter | Kisbetűs alfanumerikus, csak kötőjelekkel |\n| `description` | Igen | 1024 karakter | A készség rövid leírása |\n| `license` | Nem | - | Licencazonosító (pl. MIT, Apache-2.0) |\n| `compatibility` | Nem | 500 karakter | Kompatibilitási megjegyzések |\n| `allowed-tools` | Nem | - | Az engedélyezett eszközök szóközzel tagolt listája |\n| `metadata` | Nem | - | További kulcs-érték metaadatok |\n\n### Beviteli előtagok\n\nA Autohand támogatja a speciális előtagokat a beviteli promptban:\n\n| Előtag | Leírás | Példa |\n| ------ | ------------------------------- | ---------------------------------- |\n| `/` | Slash parancsok | `/help`, `/model`, `/quit`, `/exit` |\n| `@` | Fájl említések (automatikus kiegészítés) | `@src/index.ts` |\n| `$` | Szakértelem említése (automatikus kiegészítés) | `$frontend-design`, `$code-review` |\n| `!` | A terminálparancsok közvetlen futtatása | `! git status`, `! ls -la` |\n\n**Képességmegemlítések (`$`):**\n\n- Írja be a következőt: `$`, majd karaktereket az automatikus kiegészítéssel elérhető készségek megtekintéséhez\n- A Tab elfogadja a felső javaslatot (pl. `$frontend-design`)\n- A készségek a következőből fedezhetők fel: `~/.autohand/skills/` és `<project>/.autohand/skills/`\n- Az aktivált készségek a prompthoz vannak csatolva, mint speciális utasítások az aktuális munkamenethez\n- Az előnézeti panel a készség metaadatait mutatja (név, leírás, aktiválási állapot)\n\n**Shell-parancsok (`!`):**\n\n- A parancsok az aktuális munkakönyvtárban futnak\n- A kimenet közvetlenül a terminálon jelenik meg\n- Nem megy az LLM-be\n- 30 másodperces időtúllépés\n- A végrehajtás után visszatér a prompthoz\n\n### Slash parancsok\n\n#### `/skills` - Csomagkezelő\n\n| Parancs | Leírás |\n| -------------------------------- | ------------------------------------------- |\n| `/skills` | Sorolja fel az összes elérhető készséget |\n| `/skills use <name>` | Képesség aktiválása az aktuális munkamenethez |\n| `/skills deactivate <name>` | Készség deaktiválása |\n| `/skills info <name>` | Részletes képzettségi információk megjelenítése |\n| `/skills install` | Tallózás és telepítés a közösségi nyilvántartásból |\n| `/skills install @<slug>` | Telepítsen közösségi készségeket a slug |\n| `/skills search <query>` | Keresés a közösségi készségek nyilvántartásában |\n| `/skills trending` | Felkapott közösségi készségek megjelenítése |\n| `/skills remove <slug>` | Közösségi készség eltávolítása |\n| `/skills new` | Hozzon létre új készségeket interaktívan |\n| `/skills feedback <slug> <1-5>` | Értékeljen egy közösségi képességet |\n\n#### `/learn` - LLM-alapú Skill Advisor\n\n| Parancs | Leírás |\n| ---------------- | ---------------------------------------------------------------- |\n| `/learn` | A projekt elemzése és készségek ajánlása (gyors szkennelés) |\n| `/learn deep` | Mélyszkennelési projekt (forrásfájlokat olvas) a célzottabb eredmények érdekében |\n| `/learn update` | A projekt újraelemzése és az LLM által generált elavult készségek regenerálása |\n\nA `/learn` kétfázisú LLM-folyamatot használ:\n\n1. **1. fázis – Elemzés + Rangsorolás + Ellenőrzés**: Ellenőrzi a projekt szerkezetét, auditálja a telepített készségeket redundanciák/konfliktusok szempontjából, és rangsorolja a közösségi készségeket relevancia szerint (0-100).\n2. **2. fázis – Létrehozás** (feltételes): Ha egyik közösségi képesség sem ér el 60 feletti pontszámot, felajánlja a projektjéhez szabott egyéni képesség létrehozását.\nA generált készségek metaadatokat (`agentskill-source: llm-generated`, `agentskill-project-hash`) tartalmaznak, így a `/learn update` képes észlelni, ha megváltozik a kódbázis, és újra előállíthatja az elavult készségeket.\n\n### Automatikus készséggenerálás (`--auto-skill`)\n\nA `--auto-skill` CLI jelző készségeket generál az interaktív tanácsadói folyamat nélkül:\n```bash\nautohand --auto-skill\n```\nEz:\n\n1. Elemezze a projekt felépítését (package.json, követelmények.txt stb.)\n2. Nyelvek, keretrendszerek és minták észlelése\n3. Generáljon 3 releváns készséget az LLM segítségével\n4. Mentse el a készségeket ide: `<project>/.autohand/skills/`\n\nA célzottabb, interaktívabb élmény érdekében használja inkább a `/learn` kódot egy munkameneten belül.\n\nAz észlelt minták a következők:\n\n- **Nyelvek**: TypeScript, JavaScript, Python, Rust, Go\n- **Frameworks**: React, Next.js, Vue, Express, Flask, Django\n- **Minták**: CLI eszközök, tesztelés, monorepo, Docker, CI/CD\n\n---\n\n## API beállítások\n\nBackend API konfiguráció a csapatfunkciókhoz.\n```json\n{\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\",\n \"companySecret\": \"sk-team-xxx\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ---------------- | ------ | -------------------------- | ---------------------------------------- |\n| `baseUrl` | húr | `https://api.autohand.ai` | API-végpont |\n| `companySecret` | húr | - | Csapat/vállalati titok a megosztott funkciókhoz |\n\nKörnyezeti változókkal is beállítható:\n\n- `AUTOHAND_API_URL` → `api.baseUrl`\n- `AUTOHAND_SECRET` → `api.companySecret`\n\n---\n\n## Hitelesítési beállítások\n\nHitelesítés és felhasználói munkamenet konfigurálása.\n```json\n{\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\",\n \"avatar\": \"https://example.com/avatar.png\"\n },\n \"expiresAt\": \"2025-12-31T23:59:59Z\"\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------- | ------ | ------- | --------------------------------------------- |\n| `token` | húr | - | Hitelesítési token API-hozzáféréshez |\n| `user` | tárgy | - | Hitelesített felhasználói adatok |\n| `user.id` | húr | - | Felhasználói azonosító |\n| `user.email` | húr | - | Felhasználó e-mail címe |\n| `user.name` | húr | - | Felhasználó megjelenített név |\n| `user.avatar` | húr | - | Felhasználói avatar URL-je (nem kötelező) |\n| `expiresAt` | húr | - | Token lejárati időbélyegzője (ISO 8601 formátum) |\n\n---\n\n## Közösségi készségek beállításai\n\nKonfiguráció a közösségi készségek felfedezéséhez és kezeléséhez.\n```json\n{\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------------------------- | ------- | ------- | -------------------------------------------------------------- |\n| `enabled` | logikai | `true` | Közösségi készségek funkcióinak engedélyezése |\n| `showSuggestionsOnStartup` | logikai | `true` | Képességi javaslatok megjelenítése indításkor, ha nem állnak rendelkezésre szállítói ismeretek |\n| `autoBackup` | logikai | `true` | A felfedezett szállítói ismeretek automatikus biztonsági mentése API |\n\n---\n\n## Megosztási beállítások\n\nKonfiguráció a munkamenet megosztásához a `/share` paranccsal. A munkamenetek a [autohand.link](https://autohand.link) címen találhatók.\n```json\n{\n \"share\": {\n \"enabled\": true\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ------------------------------------ |\n| `enabled` | logikai | `true` | A `/share` parancs engedélyezése/letiltása |\n\n### YAML formátum\n```yaml\nshare:\n enabled: true\n```\n### Munkamenet-megosztás letiltása\n\nHa biztonsági vagy adatvédelmi okokból ki szeretné kapcsolni a munkamenet-megosztást:\n```json\n{\n \"share\": {\n \"enabled\": false\n }\n}\n```\nHa le van tiltva, a `/share` futtatásakor a következő jelenik meg:\n```\nSession sharing is disabled.\nTo enable, set share.enabled: true in your config file.\n```\n---\n\n## Beállítások szinkronizálása\n\nA Autohand szinkronizálhatja a konfigurációt az eszközök között a bejelentkezett felhasználók számára. A beállításokat a Cloudflare R2 biztonságosan tárolja, és a feltöltés előtt titkosítja.\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"exclude\": [],\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n| Mező | Típus | Alapértelmezett | Leírás |\n| ------------------- | -------- | ---------------- | --------------------------------------------------- |\n| `enabled` | logikai | `true` (naplózva) | Beállítások szinkronizálásának engedélyezése/letiltása |\n| `interval` | szám | `300000` | Szinkronizálási idő ezredmásodpercben (alapértelmezett: 5 perc) |\n| `exclude` | string[] | `[]` | Globális minták a szinkronizálásból kizárandó |\n| `includeTelemetry` | logikai | `false` | Telemetriai adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n| `includeFeedback` | logikai | `false` | Visszajelzési adatok szinkronizálása (felhasználói hozzájárulás szükséges) |\n\n### CLI zászló\n```bash\n# Disable sync for this session\nautohand --sync-settings=false\n\n# Enable sync (default for logged users)\nautohand --sync-settings\n```\n### Mi lesz szinkronizálva\n\nAlapértelmezés szerint ezek az elemek szinkronizálva vannak a bejelentkezett felhasználók számára:\n\n- **Konfiguráció** (`config.json`) - Az API-kulcsok a feltöltés előtt titkosítva vannak\n- **Egyéni ügynökök** (`agents/`)\n- **Közösségi készségek** (`community-skills/`)\n- **Felhasználói akasztók** (`hooks/`)\n- **Memória** (`memory/`)\n- **Projektismeret** (`projects/`)\n- **Munkamenetek előzményei** (`sessions/`)\n- **Megosztott tartalom** (`share/`)\n- **Egyéni készségek** (`skills/`)\n\n### Mi nem szinkronizál (alapértelmezés szerint)\n\n- **Eszközazonosító** (`device-id`) - Eszközönként egyedi\n- **Hibanaplók** (`error.log`) - Csak helyi\n- **Verziógyorsítótár** (`version-*.json`) - Helyi gyorsítótár fájlok\n\n### Beleegyezés alapú szinkronizálás\n\nEzek az elemek kifejezett feliratkozást igényelnek a konfigurációban:\n\n- **Telemetriai adatok** - Állítsa be a `sync.includeTelemetry: true` szinkronizálást\n- **Visszajelzési adatok** - Állítsa be a `sync.includeFeedback: true` szinkronizálását\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"includeTelemetry\": true,\n \"includeFeedback\": true\n }\n}\n```\n### Konfliktusmegoldás\n\nHa ütközések lépnek fel (ugyanaz a fájl több eszközön módosítva), a **felhőverzió nyer**. Ez biztosítja a következetességet az új eszközökön való bejelentkezéskor.\n\n### Biztonság\n\nA `config.json` API-kulcsait és egyéb bizalmas adatait a rendszer a hitelesítési token segítségével titkosítja a feltöltés előtt. Csak az Ön hitelesítő adataival lehet visszafejteni.\n\nA távoli fájlnevek csak relatív POSIX-útvonalként fogadhatók el az engedélyezett szinkronizálási kategóriákon belül. A szinkronizálás elutasítja a könyvtárbejárást, az abszolút vagy Windows-stílusú útvonalakat, az ismétlődő vagy üres szegmenseket, valamint az engedélyezett gyökéren kívülre mutató szimbolikus hivatkozásokkal átirányított célokat.\n\nAz alkalmazás bejelentkezési tokenje az `Authorization` fejlécben csak olyan átviteli URL-ekhez kerül elküldésre, amelyek eredete megegyezik a beállított szinkronizálási API eredetével. A más eredetű, előre aláírt HTTPS URL-ek soha nem kapják meg ezt a tokent; a nem biztonságos vagy hibás más eredetű URL-ek elutasításra kerülnek.\n\n**Mi van titkosítva:**\n\n- `apiKey` nevű mezők\n- `Key`, `Token`, `Secret` végződő mezők\n- A `password` mező\n\n### Hogyan működik\n\n1. **Indításkor**: Ha be van jelentkezve, a szinkronizálási szolgáltatás automatikusan elindul\n2. **5 percenként**: A beállításokat összehasonlítja a felhőalapú tárolással\n3. **A felhő nyer**: A távoli módosítások letöltése először történik meg\n4. **Helyi feltöltések**: Új helyi módosítások kerülnek feltöltésre\n5. **Kilépéskor**: A szinkronizálási szolgáltatás kecsesen leáll\n\n### Fájlok kizárása\n\nKizárhat bizonyos fájlokat vagy mintákat a szinkronizálásból:\n```json\n{\n \"sync\": {\n \"enabled\": true,\n \"exclude\": [\"custom-local-config.json\", \"temp/*\"]\n }\n}\n```\n### YAML formátum\n```yaml\nsync:\n enabled: true\n interval: 300000\n exclude: []\n includeTelemetry: false\n includeFeedback: false\n```\n---\n\n## MCP beállítások\n\nÁllítsa be az MCP-kiszolgálókat (Model Context Protocol) a Autohand külső eszközökkel történő bővítésére.\n```json\n{\n \"mcp\": {\n \"enabled\": true,\n \"servers\": [\n {\n \"name\": \"filesystem\",\n \"transport\": \"stdio\",\n \"command\": \"npx\",\n \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/tmp\"],\n \"env\": {},\n \"autoConnect\": true\n },\n {\n \"name\": \"context7\",\n \"transport\": \"http\",\n \"url\": \"https://mcp.context7.com/mcp\",\n \"headers\": {\n \"CONTEXT7_API_KEY\": \"ctx7sk-your-api-key\"\n },\n \"autoConnect\": true\n }\n ]\n }\n}\n```\n### `mcp.enabled`\n\n- **Típus**: `boolean`\n- **Alapértelmezett**: `true`\n- **Leírás**: Az összes MCP-támogatás engedélyezése vagy letiltása. Ha `false`, akkor az indításkor nem csatlakozik szerver, és az MCP-eszközök nem érhetők el.\n\n### `mcp.servers`\n\n- **Típus**: `McpServerConfigEntry[]`\n- **Alapértelmezett**: `[]`\n- **Leírás**: MCP szerver konfigurációk tömbje.\n\n### Szerver beviteli mezői\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | --------------------------------- | -------------- | ------- | -------------------------------------------------------------- |\n| `name` | `string` | Igen | - | Egyedi szerverazonosító |\n| `transport` | `\"stdio\"` \\| `\"sse\"` \\| `\"http\"` | Igen | - | Szállítás típusa |\n| `command` | `string` | Igen (stdio) | - | Parancs a szerverfolyamat elindításához |\n| `args` | `string[]` | Nem | `[]` | Érvek a parancs mellett |\n| `url` | `string` | Igen (sse/http) | - | Szervervégpont URL |\n| `headers` | `Record<string, string>` | Nem | `{}` | Egyéni HTTP-fejlécek http/sse szállításhoz (pl. hitelesítési tokenek) |\n| `env` | `Record<string, string>` | Nem | `{}` | A kiszolgálónak átadott környezeti változók |\n| `autoConnect` | `boolean` | Nem | `true` | Automatikus csatlakozás indításkor |\n\n> A szerverek aszinkron módon csatlakoznak a háttérben az indítás során anélkül, hogy blokkolnák a promptot. A `/mcp` segítségével interaktívan kezelheti a szervereket, vagy a `/mcp add` segítségével böngészhet a közösségi nyilvántartásban, vagy adhat hozzá egyéni szervereket.\n\n> A teljes MCP-dokumentációért lásd: [docs/mcp.md](mcp.md).\n\n---\n\n## Hooks beállítások\n\nKonfiguráció életciklus-horogokhoz, amelyek shell-parancsokat futtatnak az ügynökeseményeken. A részletekért lásd a [Hooks dokumentációt] (./hooks.md).\n```json\n{\n \"hooks\": {\n \"enabled\": true,\n \"hooks\": [\n {\n \"event\": \"pre-tool\",\n \"command\": \"echo \\\"Running tool: $HOOK_TOOL\\\" >> ~/.autohand/hooks.log\",\n \"description\": \"Log all tool executions\",\n \"enabled\": true\n },\n {\n \"event\": \"file-modified\",\n \"command\": \"./scripts/on-file-change.sh\",\n \"description\": \"Custom file change handler\",\n \"filter\": { \"path\": [\"src/**/*.ts\"] }\n },\n {\n \"event\": \"post-response\",\n \"command\": \"curl -X POST https://api.example.com/webhook -d '{\\\"tokens\\\": $HOOK_TOKENS}'\",\n \"description\": \"Track token usage\",\n \"async\": true\n }\n ]\n }\n}\n```\n### `hooks`\n\n| Mező | Típus | Alapértelmezett | Leírás |\n| --------- | ------- | ------- | ---------------------------------- |\n| `enabled` | logikai | `true` | Az összes hook engedélyezése/letiltása globálisan |\n| `hooks` | tömb | `[]` | Horogdefiníciók tömbje |\n\n### Hook meghatározása\n\n| Mező | Típus | Kötelező | Alapértelmezett | Leírás |\n| ------------- | ------- | -------- | ------- | --------------------------------- |\n| `event` | húr | Igen | - | Bekapcsolandó esemény |\n| `command` | húr | Igen | - | Shell parancs végrehajtásához |\n| `description` | húr | Nem | - | A `/hooks` kijelző leírása |\n| `enabled` | logikai | Nem | `true` | Aktív-e a horog |\n| `timeout` | szám | Nem | `5000` | Időtúllépés ezredmásodpercben |\n| `async` | logikai | Nem | `false` | Futtasson blokkolás nélkül |\n| `filter` | tárgy | Nem | - | Szűrés szerszám vagy útvonal szerint |\n\n### Hook események\n\n| Esemény | Amikor kirúgták |\n| ---------------- | -------------------------------------- |\n| `pre-tool` | Mielőtt bármilyen eszköz végrehajtaná |\n| `post-tool` | A szerszám befejezése után |\n| `file-modified` | A fájl létrehozásakor/módosításakor/törlésekor |\n| `pre-prompt` | Mielőtt elküldené az LLM-nek |\n| `post-response` | Miután az LLM válaszol |\n| `session-error` | Hiba esetén |\n\n### Környezeti változók\n\nAmikor a hook fut, ezek a környezeti változók állnak rendelkezésre:\n\n| Változó | Leírás |\n| ----------------- | ---------------------------- |\n| `HOOK_EVENT` | Esemény neve |\n| `HOOK_WORKSPACE` | Munkaterület gyökérútvonala |\n| `HOOK_TOOL` | Szerszámnév (szerszámesemények) |\n| `HOOK_ARGS` | JSON-kódolt eszköz args |\n| `HOOK_SUCCESS` | igaz/hamis (utóeszköz) |\n| `HOOK_PATH` | Fájl elérési útja (fájlmódosított) |\n| `HOOK_TOKENS` | Felhasznált tokenek (válasz után) |\n\n---\n\n## Chrome-bővítmény beállításai\n\nIrányítsd a Autohand Chrome-bővítmény integrációját. Tekintse meg a teljes útmutatót: [Autohand Chrome-ban](./autohand-in-chrome.md).\n```json\n{\n \"chrome\": {\n \"extensionId\": \"your-extension-id\",\n \"enabledByDefault\": false,\n \"browser\": \"auto\",\n \"userDataDir\": \"/path/to/chrome/user-data\",\n \"profileDirectory\": \"Default\",\n \"installUrl\": \"https://autohand.ai/chrome\"\n }\n}\n```\n| Kulcs | Típus | Alapértelmezett | Leírás |\n| ------------------- | --------- | -------- | -------------------------------------------------------------------------- |\n| `extensionId` | `string` | — | Telepített Chrome-bővítményazonosító a közvetlen átadáshoz |\n| `enabledByDefault` | `boolean` | `false` | A böngészőhíd automatikus indítása a CLI |-vel\n| `browser` | `string` | `\"auto\"` | Előnyben részesített Chromium böngésző: `auto`, `chrome`, `chromium`, `brave`, `edge` |\n| `userDataDir` | `string` | — | Böngésző felhasználói adatok könyvtára a megfelelő profil megcélzásához |\n| `profileDirectory` | `string` | — | Böngészőprofil-könyvtár neve (pl. `\"Default\"`, `\"Profile 1\"`) |\n| `installUrl` | `string` | — | Tartalék URL, ha a bővítményazonosító nincs konfigurálva |\n\n### CLI zászlók\n```bash\nautohand --browser # Start with browser bridge enabled\nautohand --no-browser # Start with browser bridge disabled\n```\n### Slash parancsok\n```\n/browser # Open browser integration panel\n/browser disconnect # Close the browser bridge connection\n```\n---\n\n## Teljes példa\n\n### JSON formátum (`~/.autohand/config.json`)\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"baseUrl\": \"https://openrouter.ai/api/v1\",\n \"model\": \"your-modelcard-id-here\"\n },\n \"ollama\": {\n \"baseUrl\": \"http://localhost:11434\",\n \"model\": \"llama3.2\"\n },\n \"workspace\": {\n \"defaultRoot\": \"~/projects\",\n \"allowDangerousOps\": false\n },\n \"ui\": {\n \"theme\": \"dark\",\n \"autoConfirm\": false,\n \"showCompletionNotification\": true,\n \"showThinking\": true,\n \"terminalBell\": true,\n \"checkForUpdates\": true,\n \"updateCheckInterval\": 24\n },\n \"agent\": {\n \"maxIterations\": 100,\n \"enableRequestQueue\": true,\n \"toolSelectionCache\": true,\n \"idleLogoutEnabled\": true,\n \"idleTimeoutMs\": 3600000,\n \"debug\": false\n },\n \"permissions\": {\n \"mode\": \"interactive\",\n \"whitelist\": [\"run_command:npm *\", \"run_command:bun *\"],\n \"blacklist\": [\"run_command:rm -rf /\"],\n \"rememberSession\": true\n },\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n },\n \"telemetry\": {\n \"enabled\": false,\n \"apiBaseUrl\": \"https://api.autohand.ai\",\n \"batchSize\": 20,\n \"flushIntervalMs\": 60000,\n \"maxQueueSize\": 500,\n \"maxRetries\": 3,\n \"enableSessionSync\": true\n },\n \"externalAgents\": {\n \"enabled\": false,\n \"paths\": []\n },\n \"api\": {\n \"baseUrl\": \"https://api.autohand.ai\"\n },\n \"auth\": {\n \"token\": \"your-auth-token\",\n \"user\": {\n \"id\": \"user-id\",\n \"email\": \"user@example.com\",\n \"name\": \"User Name\"\n }\n },\n \"communitySkills\": {\n \"enabled\": true,\n \"showSuggestionsOnStartup\": true,\n \"autoBackup\": true\n },\n \"share\": {\n \"enabled\": true\n },\n \"sync\": {\n \"enabled\": true,\n \"interval\": 300000,\n \"includeTelemetry\": false,\n \"includeFeedback\": false\n }\n}\n```\n### YAML formátum (`~/.autohand/config.yaml`)\n```yaml\nprovider: openrouter\n\nopenrouter:\n apiKey: sk-or-v1-your-key-here\n baseUrl: https://openrouter.ai/api/v1\n model: your-modelcard-id-here\n\nollama:\n baseUrl: http://localhost:11434\n model: llama3.2\n\nworkspace:\n defaultRoot: ~/projects\n allowDangerousOps: false\n\nui:\n theme: dark\n autoConfirm: false\n showCompletionNotification: true\n showThinking: true\n terminalBell: true\n checkForUpdates: true\n updateCheckInterval: 24\n\nagent:\n maxIterations: 100\n enableRequestQueue: true\n toolSelectionCache: true\n idleLogoutEnabled: true\n idleTimeoutMs: 3600000\n debug: false\n\npermissions:\n mode: interactive\n whitelist:\n - \"run_command:npm *\"\n - \"run_command:bun *\"\n blacklist:\n - \"run_command:rm -rf /\"\n rememberSession: true\n\nnetwork:\n maxRetries: 3\n timeout: 30000\n retryDelay: 1000\n\ntelemetry:\n enabled: false\n apiBaseUrl: https://api.autohand.ai\n batchSize: 20\n flushIntervalMs: 60000\n maxQueueSize: 500\n maxRetries: 3\n enableSessionSync: true\n\nexternalAgents:\n enabled: false\n paths: []\n\napi:\n baseUrl: https://api.autohand.ai\n\nauth:\n token: your-auth-token\n user:\n id: user-id\n email: user@example.com\n name: User Name\n\ncommunitySkills:\n enabled: true\n showSuggestionsOnStartup: true\n autoBackup: true\n\nshare:\n enabled: true\n\nsync:\n enabled: true\n interval: 300000\n includeTelemetry: false\n includeFeedback: false\n```\n### TOML formátum (`~/.autohand/config.toml`)\n```toml\nprovider = \"openrouter\"\n\n[openrouter]\napiKey = \"sk-or-v1-your-key-here\"\nbaseUrl = \"https://openrouter.ai/api/v1\"\nmodel = \"your-modelcard-id-here\"\n\n[ollama]\nbaseUrl = \"http://localhost:11434\"\nmodel = \"llama3.2\"\n\n[workspace]\ndefaultRoot = \"~/projects\"\nallowDangerousOps = false\n\n[ui]\ntheme = \"dark\"\nautoConfirm = false\nshowCompletionNotification = true\nshowThinking = true\nterminalBell = true\ncheckForUpdates = true\nupdateCheckInterval = 24\n\n[ui.customThemes.company.vars]\nbrand = \"#7c3aed\"\nbrandSoft = \"#a78bfa\"\n\n[ui.customThemes.company.colors]\naccent = \"brand\"\nborderAccent = \"brandSoft\"\nmdHeading = \"brand\"\n\n[agent]\nmaxIterations = 100\nenableRequestQueue = true\ntoolSelectionCache = true\nidleLogoutEnabled = true\nidleTimeoutMs = 3600000\ndebug = false\n\n[permissions]\nmode = \"interactive\"\nwhitelist = [\"run_command:npm *\", \"run_command:bun *\"]\nblacklist = [\"run_command:rm -rf /\"]\nrememberSession = true\n```\n---\n\n## Címtárszerkezet\n\nA Autohand az adatokat `~/.autohand/` (vagy `$AUTOHAND_HOME`) kódban tárolja:\n```\n~/.autohand/\n├── config.json # Main configuration\n├── config.toml # Alternative TOML config\n├── config.yaml # Alternative YAML config\n├── device-id # Unique device identifier\n├── error.log # Error log\n├── feedback.log # Feedback submissions\n├── sessions/ # Session history\n├── projects/ # Project knowledge base\n├── memory/ # User-level memory\n├── commands/ # Custom commands\n├── agents/ # Agent definitions\n├── tools/ # Custom meta-tools\n├── feedback/ # Feedback state\n└── telemetry/ # Telemetry data\n ├── queue.json\n └── session-sync-queue.json\n```\n**Projektszintű könyvtár** (a munkaterület gyökérkönyvtárában):\n```\n<project>/.autohand/\n├── settings.local.json # Local project permissions (gitignore this)\n├── memory/ # Project-specific memory\n├── skills/ # Project-specific skills\n└── tools/ # Project-specific meta-tools\n```\n---\n\n## CLI-jelzők (konfig felülbírálása)\n\nEzek a jelzők felülírják a konfigurációs fájl beállításait:\n\n### Alapjelzők\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `-v, --version` | Az aktuális verzió kiadása |\n| `-p, --prompt [text]` | Futtasson egyetlen utasítást parancs módban |\n| `--path <path>` | Munkaterület gyökér felülbírálása |\n| `--config <path>` | Egyéni konfigurációs fájl használata |\n| `--model <model>` | Modell felülírása |\n| `--temperature <n>` | Beállított mintavételi hőmérséklet (0-1) |\n| `--thinking [level]` | Gondolkodási/érvelési mélység beállítása (nincs, normál, kiterjesztett) |\n| `-y, --yes` | Automatikus megerősítési kérések |\n| `--dry-run` | Előnézet végrehajtás nélkül |\n| `-d, --debug` | Részletes hibakeresési kimenet engedélyezése |\n| `--bare` | Minimális explicit mód; beállítja a `AUTOHAND_CODE_SIMPLE=1` értéket és letiltja a perjel parancsokat |\n\n### Engedélyek és biztonság\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--unrestricted` | Nincs jóváhagyási felszólítás |\n| `--restricted` | Veszélyes műveletek megtagadása |\n| `--permissions` | Jelenítse meg az aktuális engedélybeállításokat, és lépjen ki |\n| `--no-idle-logout` | A hitelesített tétlen kijelentkezés letiltása a hosszan futó ügynöki munkamenetekhez |\n| `--yolo [pattern]` | Eszközhívások megfelelő minta automatikus jóváhagyása (pl. `allow:read,write` vagy `deny:delete`) |\n| `--timeout <seconds>` | Időtúllépés másodpercben az automatikus jóváhagyási módhoz |\n\n### Git & Worktree\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--worktree [name]` | Munkamenet futtatása elszigetelt git-munkafán (opcionális munkafa/ág neve) |\n| `--tmux` | Indítás egy dedikált tmux munkamenetben (az `--worktree`-t jelenti; nem használható a `--no-worktree` kóddal) |\n| `--no-worktree` | A git munkafa elkülönítésének letiltása automatikus módban |\n| `-c, --auto-commit` | Változások automatikus véglegesítése a feladatok elvégzése után |\n| `--patch` | Git javítás generálása változtatások alkalmazása nélkül |\n| `--output <file>` | A javítás kimeneti fájlja (a --patch-el együtt használatos) |\n\n### Automatikus mód\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-mode [prompt]` | Engedélyezze az interaktív automatikus módot, vagy indítson önálló hurkot egy soron belüli feladattal |\n| `--max-iterations <n>` | Maximális automatikus módú iterációk (alapértelmezett: 50) |\n| `--completion-promise <text>` | Befejezésjelző szövege (alapértelmezett: \"KÉSZ\") |\n| `--checkpoint-interval <n>` | A Git minden N iterációt végrehajt (alapértelmezett: 5) |\n| `--max-runtime <m>` | Maximális futási idő percekben (alapértelmezett: 120) |\n| `--max-cost <d>` | Maximális API költség dollárban (alapértelmezett: 10) |\n| `--interactive-on-complete` | Az automatikus mód vége után adja át közvetlenül az interaktív módba (csak TTY) |\n\n### Készségek és tanulás\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--auto-skill` | Készségek automatikus generálása projektelemzés alapján (lásd még: `/learn` az interaktív tanácsadóhoz) |\n| `--learn` | Futtassa a `/learn` készségtanácsadót nem interaktív módon (a javasolt készségek elemzése és telepítése) |\n| `--learn-update` | A projekt újraelemzése és az LLM által generált elavult készségek nem interaktív módon történő regenerálása |\n| `--skill-install [name]` | Telepítsen egy közösségi képességet (megnyitja a böngészőt, ha nincs megadva név) |\n| `--project` | A készség telepítése projektszintre (a --skill-install funkcióval) |\n\n### Hitelesítés és fiók\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--login` | Jelentkezzen be Autohand-fiókjába |\n| `--logout` | Jelentkezzen ki Autohand-fiókjából |\n| `--sync-settings` | A beállítások szinkronizálásának engedélyezése/letiltása (alapértelmezett: igaz a bejelentkezett felhasználók számára) |\n\n### Beállítás és információ\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--setup` | Futtassa a telepítővarázslót a Autohand |\n| `--about` | Információk megjelenítése a Autohand-ról (verzió, linkek, hozzájárulási információk) |\n| `--feedback` | Visszajelzés küldése a Autohand csapatának |\n| `--settings` | A Autohand beállításainak konfigurálása (ugyanaz, mint a `/settings` interaktív módban) |\n\n### Munkaterület és könyvtárak\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--add-dir <path...>` | További könyvtárak hozzáadása a munkaterület hatóköréhez (többször is használható) |\n\n### Futtatási módok\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--mode <mode>` | Futtatási mód: interaktív (alapértelmezett), rpc vagy acp |\n| `--acp` | A --mode acp rövidítése (Agent Client Protocol over stdio) |\n| `--teammate-mode <mode>` | Csapat megjelenítési mód: automatikus, folyamatban lévő vagy tmux |\n\n### UI és nyelv\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--display-language <locale>` | Megjelenítési nyelv beállítása (pl. en, id, zh-cn, fr, de, ja) |\n| `--search-engine <provider>` | Internetes keresőszolgáltató beállítása (google, brave, duckduckgo, párhuzamos) |\n| `--cc, --context-compact` | Környezettömörítés engedélyezése (alapértelmezett: be) |\n| `--no-cc, --no-context-compact` | Kontextustömörítés letiltása |\n\n### Böngészőintegráció\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--browser` | A böngészőintegráció engedélyezése (ugyanaz, mint `/browser`) |\n| `--no-browser` | A böngészőintegráció letiltása |\n\n### Rendszerprompt\n\n| zászló | Leírás |\n| ------------------------------ | ---------------------------------------------------------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-sys-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt <value>` | Cserélje ki a teljes rendszerpromptot (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--system-prompt-file <path>` | Cserélje le a teljes rendszerprompt a fájltartalommal |\n| `--append-system-prompt <value>` | Hozzáfűzés a rendszerprompthoz (soron belüli karakterlánc vagy fájl elérési útja) |\n| `--append-system-prompt-file <path>` | Fájl tartalmának hozzáfűzése a rendszerprompthoz |\n| `--mcp-config <path>` | Töltsön be egy explicit MCP konfigurációs fájlt |\n| `--agents <json\\|path>` | Explicit beépített ügynökök JSON vagy explicit ügynökök könyvtárának betöltése |\n| `--plugin-dir <path>` | Töltsön be egy explicit plugin/meta-tool könyvtárat |\n\n### Kísérletváltási parancsok\n\n| Parancs | Leírás |\n| -------------------------------------- | ------------------------------------------------- |\n| `autohand experiments list` | Sorolja fel a helyi és távoli funkciók azonosítóit, a forrást, az életciklus szakaszt és az állapotot |\n| `autohand experiments status <feature>` | Mutasson egy szolgáltatáskapcsolót, konfigurációs elérési utat vagy távoli metaadatokat és állapotot |\n| `autohand experiments refresh` | Távoli funkciójelzők letöltése a Autohand API-ból |\n| `autohand experiments enable <feature>` | Konfigurációval támogatott szolgáltatáskapcsoló engedélyezése |\n| `autohand experiments disable <feature>` | A konfigurációval támogatott szolgáltatáskapcsoló letiltása |\n\nA távoli funkciójelzők lekérése innen: `/v1/feature-flags/evaluate`, gyorsítótár a `~/.autohand/feature-flags.json` címen történik, és az API által biztosított TTL lejárta után frissül. A `features.environment` segítségével válassza ki a távoli jelzőkörnyezetet, a `features.remoteOverrides` segítségével pedig a felhasználó által felülbírálható távoli jelzők helyi letiltásához.\n\nA `usage_v2` egy kísérleti funkciókapcsoló a `/usage` irányítópulthoz és a továbbfejlesztett `/status` Használat laphoz. Engedélyezze a következővel: `autohand experiments enable usage_v2`.\n\nA `token_usage_status` egy kísérleti funkciókapcsoló (konfigurációs útvonal `features.tokenUsageStatus`, alapértelmezés szerint kikapcsolva), amely a valós idejű tokenhasználatot mutatja a működő állapotsorban – kumulatív tokenek felfelé (`↑`) és lefelé (`↓`) plusz g kontextusban, cc. `↑15.7k ↓3.2k · context: 6.0% (15.7k/262.1k)`. A kontextusablak modellenként van feloldva az összes szolgáltatónál. Engedélyezze a következővel: `autohand experiments enable token_usage_status`.\n\n---\n\n## Slash parancsok\n\nAz Autohand perjel parancsok gazdag készletét kínálja interaktív használatra. A javaslatok megtekintéséhez írja be a `/` kódot a REPL-be.\n\n### Munkamenet-kezelés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/quit` | Kilépés az aktuális munkamenetből |\n| `/exit` | Kilépés az aktuális munkamenetből |\n| `/new` | Új beszélgetés indítása (memóriakivonattal) |\n| `/clear` | Tiszta beszélgetés automatikus memóriakivonással |\n| `/session` | Az aktuális munkamenet részleteinek megjelenítése |\n| `/sessions` | Korábbi munkamenetek listája |\n| `/resume` | Előző munkamenet folytatása |\n| `/history` | A munkamenet-előzmények böngészése oldalszámozással |\n| `/undo` | Git módosítások és utolsó forduló visszaállítása |\n| `/export` | Munkamenet exportálása markdown/JSON/HTML |\n| `/share` | Aktuális munkamenet megosztása |\n| `/status` | Munkamenet állapotának megjelenítése |\n| `/usage` | Modell, szolgáltató, kontextus és használati korlátok megjelenítése |\n\n### Modell és szolgáltató\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/model` | LLM-modell váltása vagy konfigurálása |\n| `/cc` | Kézi környezet tömörítése |\n\n### Projektbeállítás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/init` | Hozzon létre `AGENTS.md` fájlt az aktuális könyvtárban |\n| `/setup` | Futtassa a telepítővarázslót a Autohand | konfigurálásához\n| `/add-dir` | Könyvtárak hozzáadása a munkaterület hatóköréhez |\n\n### Ügynökök és csapatok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/agents` | Az elérhető alügynökök listája |\n| `/agents-new` | Hozzon létre egy új ügynököt a varázslón keresztül |\n| `/squad` | Nyissa meg/kezelje az önálló Autohand Squad futtatókörnyezetet |\n| `/team` | Csapat irányítása párhuzamos munkához |\n| `/tasks` | Feladatok kezelése csapatban |\n| `/message` | Üzenet küldése csapattársnak |\n\n### Készségek\n\n| Parancs | Leírás |\n| ----------------- | --------------------------------------------------- |\n| `/skills` | Készségek listája és kezelése |\n| `/skills-new` | Új készség létrehozása |\n| `/learn` | Tanulja meg és telepítse az ajánlott készségeket |\n\n### Memória és beállítások\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/memory` | Tárolt emlékek megtekintése és kezelése |\n| `/settings` | A Autohand beállításainak konfigurálása |\n| `/statusline` | A szerző állapotsor mezőinek konfigurálása |\n| `/experiments` | Kísérleti jellemzők kapcsolóinak váltása |\n| `/sync` | Beállítások szinkronizálása eszközök között |\n| `/import` | Importálhat munkameneteket, beállításokat, MCP-t, memóriát, készségeket és hook-okat a támogatott ügynökökről |\n\n### Engedélyek és akasztók\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/permissions`| Szerszámengedélyek kezelése |\n| `/hooks` | Életciklus-horogok kezelése |\n\n### Hitelesítés\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/login` | Hitelesítés a Autohand API-val |\n| `/logout` | Kijelentkezés a Autohand fiókból |\n\n### Eszközök és segédprogramok\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/search` | Keresés az interneten |\n| `/formatters` | Az elérhető kódformázók listája |\n| `/lint` | Sorolja fel a rendelkezésre álló kódsorokat |\n| `/completion` | Shell befejező szkriptek generálása |\n| `/plan` | Megvalósítási terv létrehozása |\n| `/review` | Kódellenőrzés végrehajtása |\n| `/pr-review` | Lehívási kérelem áttekintése |\n\n### IDE integráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/ide` | A futó IDE észlelése és csatlakozása |\n\n### MCP (Model Context Protocol)\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/mcp` | Interaktív MCP-kiszolgálókezelő |\n\n### Automatizálás\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/automode` | Indítsa el az autonóm kódolási módot |\n| `/repeat` | Ismétlődő munkák ütemezése |\n| `/yolo` | Yolo mód váltása (automatikus jóváhagyási eszközök) |\n\n### Böngészőintegráció\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/browser` | A Chrome böngésző integrációjának engedélyezése |\n\n### UI és kijelző\n\n| Parancs | Leírás |\n| ------------- | ------------------------------------------------------ |\n| `/help` | Az elérhető perjel parancsok és tippek megjelenítése |\n| `/about` | Információk megjelenítése a következőről: Autohand |\n| `/theme` | Színtéma módosítása |\n| `/language` | Kijelző nyelvének módosítása |\n| `/feedback` | Visszajelzés küldése a Autohand csapatának |\n\n---\n\n## Rendszerprompt testreszabás\nAutohand lehetővé teszi az AI-ügynök által használt rendszerprompt testreszabását. Ez speciális munkafolyamatok, egyedi utasítások vagy más rendszerekkel való integráció esetén hasznos.\n\n### CLI zászlók\n\n| zászló | Leírás |\n| ------------------------------ | -------------------------------------------- |\n| `--sys-prompt <value>` | Cserélje ki a teljes rendszerprompt |\n| `--append-sys-prompt <value>` | Tartalom hozzáfűzése az alapértelmezett rendszerprompthoz |\n\nMindkét zászló elfogadja a következőket:\n\n- **Inline karakterlánc**: Közvetlen szövegtartalom\n- **Fájl elérési útja**: A promptot tartalmazó fájl elérési útja (automatikusan észlelve)\n\n### Fájlútvonal észlelése\n\nEgy érték fájlútvonalként kezelendő, ha:\n\n- A következővel kezdődik: `./`, `../`, `/` vagy `~/`\n- Windows meghajtóbetűjellel kezdődik (pl. `C:\\`)\n- A következővel végződik: `.txt`, `.md` vagy `.prompt`\n- Útleválasztókat tartalmaz szóközök nélkül\n\nEllenkező esetben a rendszer soron belüli karakterláncként kezeli.\n\n### `--sys-prompt` (Teljes csere)\n\nHa rendelkezésre áll, ez **teljesen lecseréli** az alapértelmezett rendszerpromptot. Az ügynök NEM tölti be:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n```bash\n# Inline string\nautohand --sys-prompt \"You are a Python expert. Be concise.\" --prompt \"Write hello world\"\n\n# From file\nautohand --sys-prompt ./custom-prompt.txt --prompt \"Explain this code\"\n\n# Home directory\nautohand --sys-prompt ~/.autohand/prompts/python-expert.md --prompt \"Debug this function\"\n```\n**Példa egyéni prompt fájlra (`custom-prompt.txt`):**\n```\nYou are a specialized Python debugging assistant.\n\nRules:\n- Focus only on Python code\n- Always explain the root cause\n- Suggest fixes with code examples\n- Be concise and direct\n```\n### `--append-sys-prompt` (Hozzáadás az alapértelmezetthez)\n\nHa rendelkezésre áll, ez **hozzáfűzi** a tartalmat a teljes alapértelmezett rendszerprompthoz. Az ügynök továbbra is betölti:\n\n- Alapértelmezett Autohand utasítások\n- AGENTS.md projekt utasítások\n- Felhasználói/projekt memóriák\n- Aktív készségek\n\nA csatolt tartalom a legvégére kerül hozzáadásra.\n```bash\n# Inline string\nautohand --append-sys-prompt \"Always use TypeScript instead of JavaScript\" --prompt \"Create a function\"\n\n# From file\nautohand --append-sys-prompt ./team-guidelines.md --prompt \"Add error handling\"\n```\n**Példa hozzáfűző fájl (`team-guidelines.md`):**\n```\n## Team Guidelines\n\n- Use 2-space indentation\n- Prefer functional patterns\n- Add JSDoc comments to public APIs\n- Run tests before committing\n```\n### Elsőbbség\n\nHa mindkét zászló rendelkezésre áll:\n\n1. A `--sys-prompt` teljes elsőbbséget élvez\n2. A `--append-sys-prompt` figyelmen kívül hagyva\n```bash\n# --append-sys-prompt is ignored in this case\nautohand --sys-prompt \"Custom only\" --append-sys-prompt \"This is ignored\"\n```\n### Használati esetek\n\n| Használati eset | Ajánlott zászló |\n| ---------------------------------- | ---------------------- |\n| Egyedi ügynök személye | `--sys-prompt` |\n| Minimális utasítások | `--sys-prompt` |\n| Csapatirányelvek hozzáadása | `--append-sys-prompt` |\n| Projektkonvenciók hozzáadása | `--append-sys-prompt` |\n| Integráció külső rendszerekkel | `--sys-prompt` |\n| Speciális hibakeresés | `--sys-prompt` |\n\n### Hibakezelés\n\n| Forgatókönyv | Viselkedés |\n| ------------------ | ------------------------- |\n| Üres érték | Hiba |\n| A fájl nem található | Soron belüli karakterláncként kezelve |\n| Üres fájl | Hiba |\n| Fájl > 1 MB | Hiba |\n| Engedély megtagadva | Hiba |\n| Címtár elérési útja | Hiba |\n\n### Példák\n```bash\n# Python expert mode\nautohand --sys-prompt \"You are a Python expert. Only write Python code.\" \\\n --prompt \"Create a web scraper\"\n\n# TypeScript enforcement\nautohand --append-sys-prompt \"Always use TypeScript, never JavaScript.\" \\\n --prompt \"Create a REST API\"\n\n# CI/CD integration (non-interactive)\nautohand --sys-prompt ./ci-prompt.txt \\\n --prompt \"Fix the failing tests\" \\\n --unrestricted \\\n --patch\n\n# Custom team workflow\nautohand --append-sys-prompt ~/.company/coding-standards.md \\\n --prompt \"Refactor this module\"\n```\n---\n\n## Több könyvtár támogatása\n\nAz Autohand a fő munkaterületen kívül több könyvtárral is működhet. Ez akkor hasznos, ha a projektben különböző könyvtárakban vannak függőségek, megosztott könyvtárak vagy kapcsolódó projektek.\n\n### CLI zászló\n\nA `--add-dir` használatával további könyvtárakat adhat hozzá (többször is használható):\n```bash\n# Add a single additional directory\nautohand --add-dir /path/to/shared-lib\n\n# Add multiple directories\nautohand --add-dir /path/to/lib1 --add-dir /path/to/lib2\n\n# With unrestricted mode (auto-approve writes to all directories)\nautohand --add-dir /path/to/shared-lib --unrestricted\n```\n### Interaktív parancs\n\n`/add-dir` használata interaktív munkamenet során:\n```\n/add-dir # Show current directories\n/add-dir /path/to/dir # Add a new directory\n```\n### Biztonsági korlátozások\n\nA következő könyvtárak nem adhatók hozzá:\n\n- Saját könyvtár (`~` vagy `$HOME`)\n- Gyökérkönyvtár (`/`)\n- Rendszerkönyvtárak (`/etc`, `/var`, `/usr`, `/bin`, `/sbin`)\n- Windows rendszerkönyvtárak (`C:\\Windows`, `C:\\Program Files`)\n- Windows felhasználói könyvtárak (`C:\\Users\\username`)\n- WSL Windows-csatlakozások (`/mnt/c`, `/mnt/c/Windows`)\n"}}, "docs/providers.md": {"59468034019715857d19e12cdab687a4f235b56b": {"t": 1785746548.9477034, "n": 22606, "h": "7d4a3e8c2fbc3a44", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n - [DeepSeek](#deepseek)\n - [AWS Bedrock](#aws-bedrock)\n - [Z.ai](#zai)\n - [Sakana.AI](#sakanaai)\n - [Custom OpenAI-Compatible Providers](#custom-openai-compatible-providers)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\nEOF\n```\n\nBundled provider model choices live in `src/providers/models.json` and packaged builds include the same catalog at `dist/providers/models.json`. The CLI checks the validated public catalog every four hours and retains the bundled data plus its last valid download for offline fallback. To add a newly released model without changing TypeScript, update the relevant provider entry in that JSON file. For local-only overrides, use `~/.autohand/models.json` or set `AUTOHAND_MODELS_CATALOG=/path/to/models.json`; those entries are merged ahead of the downloaded and bundled catalogs. See [Model catalog updates](model-catalog.md) for manual refresh and publication details.\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n| --------------- | ----- | ----------- | ------- | ----------------------------------------------- |\n| **Autohand AI** | Cloud/Local | Account, API key, or local | Low | Fantail ultra-fast coding, Moa thinking, or local MLX coding models |\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-5, o3 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **DeepSeek** | Cloud | Pay-per-use | Low | DeepSeek V4 Flash and V4 Pro models |\n| **AWS Bedrock** | Cloud | Pay-per-use | Low | Enterprise AWS credential-chain and Bedrock APIs |\n| **Z.ai** | Cloud | Pay-per-use | Low | GLM-5.2/5.1 long-context models, CogView image generation |\n| **Sakana.AI** | Cloud | Pay-per-use | Medium | Sakana Fugu multi-agent coding and reasoning models |\n| **Custom** | Cloud/local | Varies | Varies | Any OpenAI-compatible `/chat/completions` endpoint |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### Autohand AI\n\nAutohand AI is the preferred first-party provider. Use `autohandai` with `plan: \"cloud\"` for Autohand-hosted Fantail and Moa models at `https://api.autohand.ai/v1`, or `plan: \"local\"` for Apple Silicon MLX local inference.\n\nCloud mode uses the OpenAI-compatible `/chat/completions` API and defaults to temperature `0.1`.\n\n| Model | Notes |\n| ----- | ----- |\n| `fantail` | Ultra-fast coding model, image input, tool calls, 16k input context |\n| `moa` | Thinking model, image input, medium/high/xhigh effort, 1M input context |\n\nCLI Cloud can use your logged-in Autohand account automatically. SDK Cloud usage must pass an Autohand AI API key (`AUTOHAND_AI_API_KEY`) so SDK workloads are tied to Autohand's API-key systems instead of silently borrowing CLI account auth.\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"cloud\",\n \"authMode\": \"account\",\n \"baseUrl\": \"https://api.autohand.ai/v1\",\n \"model\": \"moa\",\n \"contextWindow\": 1000000,\n \"reasoningEffort\": \"high\"\n }\n}\n```\n\nFor SDK/client-driven Cloud calls:\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"cloud\",\n \"authMode\": \"api-key\",\n \"apiKey\": \"ah-...\",\n \"baseUrl\": \"https://api.autohand.ai/v1\",\n \"model\": \"fantail\"\n }\n}\n```\n\nLocal mode requires macOS on Apple Silicon. When selected from `/model` or setup, Autohand checks for `mlx_lm.server` and `llmfit`, installs missing pieces, asks `llmfit` for coding-focused MLX models this Mac can run, downloads the selected model, starts the MLX OpenAI-compatible server, and persists the server command:\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"local\",\n \"baseUrl\": \"http://127.0.0.1:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Qwen2.5-Coder-7B-Instruct-4bit\",\n \"contextWindow\": 256000,\n \"serverCommand\": \"mlx_lm.server --model mlx-community/Qwen2.5-Coder-7B-Instruct-4bit --port 8080\"\n }\n}\n```\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic via Azure Foundry Models, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `your-modelcard-id-here` | Best balance of speed and capability |\n| `anthropic/claude-5-opus` | Most capable Claude model |\n| `openai/gpt-5` | OpenAI's flagship model |\n| `google/gemini-3.0-pro` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n\n```\n/model anthropic/claude-5-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-5, o3, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-5` | Flagship multimodal model |\n| `gpt-5-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-5\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-5` | OpenAI |\n| `gpt-5-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-5-sonnet` | Anthropic |\n| `claude-5-haiku` | Anthropic |\n| `gemini-3.0-pro` | Google |\n| `gemini-3.0-flash` | Google |\n\n**Benefits:**\n\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-5\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n### DeepSeek\n\nDeepSeek provides an OpenAI-compatible chat completions API for DeepSeek V4 Flash, V4 Pro, and the legacy `deepseek-chat` / `deepseek-reasoner` model IDs.\n\n**Setup:**\n\n1. Get your API key at [platform.deepseek.com/api_keys](https://platform.deepseek.com/api_keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"deepseek\",\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n\n**Available Models:**\n\n| Model | Description |\n| --------------------- | ------------------------------------------------ |\n| `deepseek-v4-flash` | Current fast V4 model, recommended default |\n| `deepseek-v4-pro` | Current stronger V4 model |\n| `deepseek-chat` | Legacy non-thinking alias, deprecated 2026-07-24 |\n| `deepseek-reasoner` | Legacy thinking alias, deprecated 2026-07-24 |\n\n**Example Usage:**\n\n```bash\ncurl -X POST \"https://api.deepseek.com/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DEEPSEEK_API_KEY\" \\\n -d '{\n \"model\": \"deepseek-v4-flash\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### AWS Bedrock\n\nAWS Bedrock is available as `bedrock` for enterprise AWS customers. Autohand supports three inference modes:\n\n| Mode | Choose When |\n| --- | --- |\n| `converse` | Default Bedrock-native mode using AWS credential-chain auth and Bedrock Runtime `Converse`. |\n| `openai-chat` | You are migrating OpenAI Chat Completions clients to Bedrock OpenAI-compatible endpoints. |\n| `openai-responses` | You are migrating OpenAI Responses clients to Bedrock OpenAI-compatible endpoints. |\n\nFor `converse`, configure AWS credentials outside Autohand. Autohand never stores AWS access key IDs or secret access keys. Good setup paths include:\n\n```bash\naws configure sso\nAWS_PROFILE=enterprise-prod autohand\n```\n\nIAM roles, container credentials, and instance metadata also work through the AWS SDK credential chain. Before using a model, enable access for that model in the AWS Bedrock console for the selected region.\n\n**Converse with AWS profile:**\n\n```json\n{\n \"provider\": \"bedrock\",\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n**OpenAI Chat Completions with Bedrock API key:**\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n**OpenAI Responses with Bedrock API key and private endpoint:**\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n\nSecurity note: Bedrock API keys are not OpenAI API keys. Never point Bedrock config at OpenAI base URLs.\n\n**Troubleshooting:**\n\n| Symptom | Fix |\n| --- | --- |\n| Missing AWS credentials | Run `aws configure sso`, set `AWS_PROFILE`, or run Autohand on AWS infrastructure with an IAM role. |\n| Missing region | Set `bedrock.region`, `AWS_REGION`, or `AWS_DEFAULT_REGION`. |\n| Invalid Bedrock API key | Use a Bedrock API key only with `openai-chat` or `openai-responses`. |\n| Model access not enabled | Enable the model in the AWS Bedrock console for the selected region. |\n| Model not available in region | Switch `region`, choose a regional model, or use an inference profile or ARN. |\n| Unsupported API mode | Use `converse` for Bedrock-native models, or an OpenAI-compatible Bedrock model for OpenAI modes. |\n| Throttling or quota | Wait and retry, or request a Bedrock quota increase. |\n| Private endpoint/network failure | Check `endpoint`, VPC endpoint DNS, proxy, and AWS network policy. |\n\n---\n\n### Z.ai\n\nZ.ai (Zhipu AI) provides access to the GLM family of models and CogView for image generation. The API is fully OpenAI-compatible.\n\n**Setup:**\n\n1. Get your API key at [platform.z.ai](https://platform.z.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"zai\",\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"model\": \"glm-5.2\"\n }\n}\n```\n\n**Popular Models:**\n\n| Model | Description |\n| ------------------ | ------------------------------------------------------------------------------- |\n| `glm-5.2` | Latest flagship GLM model for project-scale coding, 1M context, 128K max output |\n| `glm-5.1` | Flagship long-horizon model, 200K context, 128K max output |\n| `glm-4.5` | Previous-generation GLM model, strong reasoning |\n| `glm-4.5v` | Vision-language model |\n| `glm-4.5-air` | Faster, lighter variant |\n| `glm-4.5-prior` | Priority access variant |\n| `glm-4.5-flash` | Low-latency model |\n| `glm-4.5-air-2504` | April 2025 Air variant |\n| `cogview-4.5` | Image generation model |\n\nGLM-5.2 and GLM-5.1 both support thinking mode, streaming output, function calling, context caching, structured output, and MCP.\n\n**Example Usage:**\n\n```bash\n# Test with curl\ncurl -X POST \"https://api.z.ai/api/paas/v4/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $ZAI_API_KEY\" \\\n -d '{\n \"model\": \"glm-5.2\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### Sakana.AI\n\nSakana.AI provides Sakana Fugu through an OpenAI-compatible API. Fugu is a multi-agent system, but Autohand uses it like a standard hosted LLM through the Sakana API.\n\n**Setup:**\n\n1. Create a Sakana API key and store it securely.\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"sakana\",\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\"\n }\n}\n```\n\n**Supported Models:**\n\n| Model | Description |\n| ------------ | ------------------------------------------------- |\n| `fugu` | Default Sakana Fugu model with provider routing |\n| `fugu-ultra` | Stronger Fugu model for complex, long-running work |\n\nFor complex `fugu-ultra` tasks, consider increasing the global network timeout in your Autohand config.\n\n**Example Usage:**\n\n```bash\nexport SAKANA_API_KEY=your-key\n\ncurl -X POST \"https://api.sakana.ai/v1/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $SAKANA_API_KEY\" \\\n -d '{\n \"model\": \"fugu\",\n \"messages\": [{\"role\": \"user\", \"content\": \"How many r are in strawberry?\"}]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-5 # Switch to GPT-5\n/model anthropic/claude-5-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-5\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-5-sonnet\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n### Custom OpenAI-Compatible Providers\n\nUse custom providers when a service exposes an OpenAI-compatible API but is not bundled into Autohand. This keeps the built-in provider list small while still supporting team gateways, private deployments, and new hosted providers.\n\nFrom the TUI, run `/model`, choose **New provider...**, then enter:\n\n- provider display name\n- OpenAI-compatible base URL\n- whether an API key is required\n- model id\n- optional context window and reasoning effort\n\nAutohand verifies the base URL, API key, and selected model through the OpenAI-compatible `/models` endpoint before saving the provider. If `/models` returns model IDs, the selected model must be present in that list.\n\nThe saved config uses `provider: \"custom:<id>\"` and stores provider details under `customProviders`:\n\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n }\n}\n```\n\nFor local gateways without bearer auth:\n\n```json\n{\n \"provider\": \"custom:local-openai\",\n \"customProviders\": {\n \"local-openai\": {\n \"id\": \"local-openai\",\n \"displayName\": \"Local OpenAI Proxy\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"http://localhost:8080/v1\",\n \"apiKeyRequired\": false,\n \"model\": \"local-code-model\",\n \"contextWindow\": 131072\n }\n }\n}\n```\n\nCustom provider telemetry and session sync include the provider id, display name, API format, model id, reasoning effort, and context window when available. Secrets such as `apiKey` are not sent. When `reasoningEffort` is set, Autohand sends it to the provider as `reasoning_effort`.\n\nYou can remove a custom provider from `/model` by opening that provider's settings and choosing **Remove custom provider**.\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n| ------------ | ------- | -------------------------------- |\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "e55e26e58e947c7b5d89f1f1b19fd306cc46e454": {"t": 1785764168.1733057, "n": 22606, "h": "7d4a3e8c2fbc3a44", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n - [DeepSeek](#deepseek)\n - [AWS Bedrock](#aws-bedrock)\n - [Z.ai](#zai)\n - [Sakana.AI](#sakanaai)\n - [Custom OpenAI-Compatible Providers](#custom-openai-compatible-providers)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\nEOF\n```\n\nBundled provider model choices live in `src/providers/models.json` and packaged builds include the same catalog at `dist/providers/models.json`. The CLI checks the validated public catalog every four hours and retains the bundled data plus its last valid download for offline fallback. To add a newly released model without changing TypeScript, update the relevant provider entry in that JSON file. For local-only overrides, use `~/.autohand/models.json` or set `AUTOHAND_MODELS_CATALOG=/path/to/models.json`; those entries are merged ahead of the downloaded and bundled catalogs. See [Model catalog updates](model-catalog.md) for manual refresh and publication details.\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n| --------------- | ----- | ----------- | ------- | ----------------------------------------------- |\n| **Autohand AI** | Cloud/Local | Account, API key, or local | Low | Fantail ultra-fast coding, Moa thinking, or local MLX coding models |\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-5, o3 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **DeepSeek** | Cloud | Pay-per-use | Low | DeepSeek V4 Flash and V4 Pro models |\n| **AWS Bedrock** | Cloud | Pay-per-use | Low | Enterprise AWS credential-chain and Bedrock APIs |\n| **Z.ai** | Cloud | Pay-per-use | Low | GLM-5.2/5.1 long-context models, CogView image generation |\n| **Sakana.AI** | Cloud | Pay-per-use | Medium | Sakana Fugu multi-agent coding and reasoning models |\n| **Custom** | Cloud/local | Varies | Varies | Any OpenAI-compatible `/chat/completions` endpoint |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### Autohand AI\n\nAutohand AI is the preferred first-party provider. Use `autohandai` with `plan: \"cloud\"` for Autohand-hosted Fantail and Moa models at `https://api.autohand.ai/v1`, or `plan: \"local\"` for Apple Silicon MLX local inference.\n\nCloud mode uses the OpenAI-compatible `/chat/completions` API and defaults to temperature `0.1`.\n\n| Model | Notes |\n| ----- | ----- |\n| `fantail` | Ultra-fast coding model, image input, tool calls, 16k input context |\n| `moa` | Thinking model, image input, medium/high/xhigh effort, 1M input context |\n\nCLI Cloud can use your logged-in Autohand account automatically. SDK Cloud usage must pass an Autohand AI API key (`AUTOHAND_AI_API_KEY`) so SDK workloads are tied to Autohand's API-key systems instead of silently borrowing CLI account auth.\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"cloud\",\n \"authMode\": \"account\",\n \"baseUrl\": \"https://api.autohand.ai/v1\",\n \"model\": \"moa\",\n \"contextWindow\": 1000000,\n \"reasoningEffort\": \"high\"\n }\n}\n```\n\nFor SDK/client-driven Cloud calls:\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"cloud\",\n \"authMode\": \"api-key\",\n \"apiKey\": \"ah-...\",\n \"baseUrl\": \"https://api.autohand.ai/v1\",\n \"model\": \"fantail\"\n }\n}\n```\n\nLocal mode requires macOS on Apple Silicon. When selected from `/model` or setup, Autohand checks for `mlx_lm.server` and `llmfit`, installs missing pieces, asks `llmfit` for coding-focused MLX models this Mac can run, downloads the selected model, starts the MLX OpenAI-compatible server, and persists the server command:\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"local\",\n \"baseUrl\": \"http://127.0.0.1:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Qwen2.5-Coder-7B-Instruct-4bit\",\n \"contextWindow\": 256000,\n \"serverCommand\": \"mlx_lm.server --model mlx-community/Qwen2.5-Coder-7B-Instruct-4bit --port 8080\"\n }\n}\n```\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic via Azure Foundry Models, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `your-modelcard-id-here` | Best balance of speed and capability |\n| `anthropic/claude-5-opus` | Most capable Claude model |\n| `openai/gpt-5` | OpenAI's flagship model |\n| `google/gemini-3.0-pro` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n\n```\n/model anthropic/claude-5-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-5, o3, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-5` | Flagship multimodal model |\n| `gpt-5-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-5\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-5` | OpenAI |\n| `gpt-5-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-5-sonnet` | Anthropic |\n| `claude-5-haiku` | Anthropic |\n| `gemini-3.0-pro` | Google |\n| `gemini-3.0-flash` | Google |\n\n**Benefits:**\n\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-5\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n### DeepSeek\n\nDeepSeek provides an OpenAI-compatible chat completions API for DeepSeek V4 Flash, V4 Pro, and the legacy `deepseek-chat` / `deepseek-reasoner` model IDs.\n\n**Setup:**\n\n1. Get your API key at [platform.deepseek.com/api_keys](https://platform.deepseek.com/api_keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"deepseek\",\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n\n**Available Models:**\n\n| Model | Description |\n| --------------------- | ------------------------------------------------ |\n| `deepseek-v4-flash` | Current fast V4 model, recommended default |\n| `deepseek-v4-pro` | Current stronger V4 model |\n| `deepseek-chat` | Legacy non-thinking alias, deprecated 2026-07-24 |\n| `deepseek-reasoner` | Legacy thinking alias, deprecated 2026-07-24 |\n\n**Example Usage:**\n\n```bash\ncurl -X POST \"https://api.deepseek.com/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DEEPSEEK_API_KEY\" \\\n -d '{\n \"model\": \"deepseek-v4-flash\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### AWS Bedrock\n\nAWS Bedrock is available as `bedrock` for enterprise AWS customers. Autohand supports three inference modes:\n\n| Mode | Choose When |\n| --- | --- |\n| `converse` | Default Bedrock-native mode using AWS credential-chain auth and Bedrock Runtime `Converse`. |\n| `openai-chat` | You are migrating OpenAI Chat Completions clients to Bedrock OpenAI-compatible endpoints. |\n| `openai-responses` | You are migrating OpenAI Responses clients to Bedrock OpenAI-compatible endpoints. |\n\nFor `converse`, configure AWS credentials outside Autohand. Autohand never stores AWS access key IDs or secret access keys. Good setup paths include:\n\n```bash\naws configure sso\nAWS_PROFILE=enterprise-prod autohand\n```\n\nIAM roles, container credentials, and instance metadata also work through the AWS SDK credential chain. Before using a model, enable access for that model in the AWS Bedrock console for the selected region.\n\n**Converse with AWS profile:**\n\n```json\n{\n \"provider\": \"bedrock\",\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n**OpenAI Chat Completions with Bedrock API key:**\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n**OpenAI Responses with Bedrock API key and private endpoint:**\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n\nSecurity note: Bedrock API keys are not OpenAI API keys. Never point Bedrock config at OpenAI base URLs.\n\n**Troubleshooting:**\n\n| Symptom | Fix |\n| --- | --- |\n| Missing AWS credentials | Run `aws configure sso`, set `AWS_PROFILE`, or run Autohand on AWS infrastructure with an IAM role. |\n| Missing region | Set `bedrock.region`, `AWS_REGION`, or `AWS_DEFAULT_REGION`. |\n| Invalid Bedrock API key | Use a Bedrock API key only with `openai-chat` or `openai-responses`. |\n| Model access not enabled | Enable the model in the AWS Bedrock console for the selected region. |\n| Model not available in region | Switch `region`, choose a regional model, or use an inference profile or ARN. |\n| Unsupported API mode | Use `converse` for Bedrock-native models, or an OpenAI-compatible Bedrock model for OpenAI modes. |\n| Throttling or quota | Wait and retry, or request a Bedrock quota increase. |\n| Private endpoint/network failure | Check `endpoint`, VPC endpoint DNS, proxy, and AWS network policy. |\n\n---\n\n### Z.ai\n\nZ.ai (Zhipu AI) provides access to the GLM family of models and CogView for image generation. The API is fully OpenAI-compatible.\n\n**Setup:**\n\n1. Get your API key at [platform.z.ai](https://platform.z.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"zai\",\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"model\": \"glm-5.2\"\n }\n}\n```\n\n**Popular Models:**\n\n| Model | Description |\n| ------------------ | ------------------------------------------------------------------------------- |\n| `glm-5.2` | Latest flagship GLM model for project-scale coding, 1M context, 128K max output |\n| `glm-5.1` | Flagship long-horizon model, 200K context, 128K max output |\n| `glm-4.5` | Previous-generation GLM model, strong reasoning |\n| `glm-4.5v` | Vision-language model |\n| `glm-4.5-air` | Faster, lighter variant |\n| `glm-4.5-prior` | Priority access variant |\n| `glm-4.5-flash` | Low-latency model |\n| `glm-4.5-air-2504` | April 2025 Air variant |\n| `cogview-4.5` | Image generation model |\n\nGLM-5.2 and GLM-5.1 both support thinking mode, streaming output, function calling, context caching, structured output, and MCP.\n\n**Example Usage:**\n\n```bash\n# Test with curl\ncurl -X POST \"https://api.z.ai/api/paas/v4/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $ZAI_API_KEY\" \\\n -d '{\n \"model\": \"glm-5.2\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### Sakana.AI\n\nSakana.AI provides Sakana Fugu through an OpenAI-compatible API. Fugu is a multi-agent system, but Autohand uses it like a standard hosted LLM through the Sakana API.\n\n**Setup:**\n\n1. Create a Sakana API key and store it securely.\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"sakana\",\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\"\n }\n}\n```\n\n**Supported Models:**\n\n| Model | Description |\n| ------------ | ------------------------------------------------- |\n| `fugu` | Default Sakana Fugu model with provider routing |\n| `fugu-ultra` | Stronger Fugu model for complex, long-running work |\n\nFor complex `fugu-ultra` tasks, consider increasing the global network timeout in your Autohand config.\n\n**Example Usage:**\n\n```bash\nexport SAKANA_API_KEY=your-key\n\ncurl -X POST \"https://api.sakana.ai/v1/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $SAKANA_API_KEY\" \\\n -d '{\n \"model\": \"fugu\",\n \"messages\": [{\"role\": \"user\", \"content\": \"How many r are in strawberry?\"}]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-5 # Switch to GPT-5\n/model anthropic/claude-5-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-5\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-5-sonnet\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n### Custom OpenAI-Compatible Providers\n\nUse custom providers when a service exposes an OpenAI-compatible API but is not bundled into Autohand. This keeps the built-in provider list small while still supporting team gateways, private deployments, and new hosted providers.\n\nFrom the TUI, run `/model`, choose **New provider...**, then enter:\n\n- provider display name\n- OpenAI-compatible base URL\n- whether an API key is required\n- model id\n- optional context window and reasoning effort\n\nAutohand verifies the base URL, API key, and selected model through the OpenAI-compatible `/models` endpoint before saving the provider. If `/models` returns model IDs, the selected model must be present in that list.\n\nThe saved config uses `provider: \"custom:<id>\"` and stores provider details under `customProviders`:\n\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n }\n}\n```\n\nFor local gateways without bearer auth:\n\n```json\n{\n \"provider\": \"custom:local-openai\",\n \"customProviders\": {\n \"local-openai\": {\n \"id\": \"local-openai\",\n \"displayName\": \"Local OpenAI Proxy\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"http://localhost:8080/v1\",\n \"apiKeyRequired\": false,\n \"model\": \"local-code-model\",\n \"contextWindow\": 131072\n }\n }\n}\n```\n\nCustom provider telemetry and session sync include the provider id, display name, API format, model id, reasoning effort, and context window when available. Secrets such as `apiKey` are not sent. When `reasoningEffort` is set, Autohand sends it to the provider as `reasoning_effort`.\n\nYou can remove a custom provider from `/model` by opening that provider's settings and choosing **Remove custom provider**.\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n| ------------ | ------- | -------------------------------- |\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "13196f43e2292b4ac499588750b104e9f36ee22f": {"t": 1785764169.6545675, "n": 22607, "h": "316d3e711cf96f00", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n - [DeepSeek](#deepseek)\n - [AWS Bedrock](#aws-bedrock)\n - [Z.ai](#zai)\n - [Sakana.AI](#sakanaai)\n - [Custom OpenAI-Compatible Providers](#custom-openai-compatible-providers)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\nEOF\n```\n\nBundled provider model choices live in `src/providers/models.json` and packaged builds include the same catalog at `dist/providers/models.json`. The CLI checks the validated public catalog every four hours and retains the bundled data plus its last valid download for offline fallback. To add a newly released model without changing TypeScript, update the relevant provider entry in that JSON file. For local-only overrides, use `~/.autohand/models.json` or set `AUTOHAND_MODELS_CATALOG=/path/to/models.json`; those entries are merged ahead of the downloaded and bundled catalogs. See [Model catalog updates](model-catalog.md) for manual refresh and publication details.\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n| --------------- | ----- | ----------- | ------- | ----------------------------------------------- |\n| **Autohand AI** | Cloud/Local | Account, API key, or local | Low | Fantail ultra-fast coding, Moa thinking, or local MLX coding models |\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-5, o3 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **DeepSeek** | Cloud | Pay-per-use | Low | DeepSeek V4 Flash and V4 Pro models |\n| **AWS Bedrock** | Cloud | Pay-per-use | Low | Enterprise AWS credential-chain and Bedrock APIs |\n| **Z.ai** | Cloud | Pay-per-use | Low | GLM-5.2/5.1 long-context models, CogView image generation |\n| **Sakana.AI** | Cloud | Pay-per-use | Medium | Sakana Fugu multi-agent coding and reasoning models |\n| **Custom** | Cloud/local | Varies | Varies | Any OpenAI-compatible `/chat/completions` endpoint |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### Autohand AI\n\nAutohand AI is the preferred first-party provider. Use `autohandai` with `plan: \"cloud\"` for Autohand-hosted Fantail and Moa models at `https://api.autohand.ai/v1`, or `plan: \"local\"` for Apple Silicon MLX local inference.\n\nCloud mode uses the OpenAI-compatible `/chat/completions` API and defaults to temperature `0.1`.\n\n| Model | Notes |\n| ----- | ----- |\n| `fantail` | Ultra-fast coding model, image input, tool calls, 16k input context |\n| `moa` | Thinking model, image input, medium/high/xhigh effort, 256k input context |\n\nCLI Cloud can use your logged-in Autohand account automatically. SDK Cloud usage must pass an Autohand AI API key (`AUTOHAND_AI_API_KEY`) so SDK workloads are tied to Autohand's API-key systems instead of silently borrowing CLI account auth.\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"cloud\",\n \"authMode\": \"account\",\n \"baseUrl\": \"https://api.autohand.ai/v1\",\n \"model\": \"moa\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n}\n```\n\nFor SDK/client-driven Cloud calls:\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"cloud\",\n \"authMode\": \"api-key\",\n \"apiKey\": \"ah-...\",\n \"baseUrl\": \"https://api.autohand.ai/v1\",\n \"model\": \"fantail\"\n }\n}\n```\n\nLocal mode requires macOS on Apple Silicon. When selected from `/model` or setup, Autohand checks for `mlx_lm.server` and `llmfit`, installs missing pieces, asks `llmfit` for coding-focused MLX models this Mac can run, downloads the selected model, starts the MLX OpenAI-compatible server, and persists the server command:\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"local\",\n \"baseUrl\": \"http://127.0.0.1:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Qwen2.5-Coder-7B-Instruct-4bit\",\n \"contextWindow\": 256000,\n \"serverCommand\": \"mlx_lm.server --model mlx-community/Qwen2.5-Coder-7B-Instruct-4bit --port 8080\"\n }\n}\n```\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic via Azure Foundry Models, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `your-modelcard-id-here` | Best balance of speed and capability |\n| `anthropic/claude-5-opus` | Most capable Claude model |\n| `openai/gpt-5` | OpenAI's flagship model |\n| `google/gemini-3.0-pro` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n\n```\n/model anthropic/claude-5-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-5, o3, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-5` | Flagship multimodal model |\n| `gpt-5-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-5\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-5` | OpenAI |\n| `gpt-5-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-5-sonnet` | Anthropic |\n| `claude-5-haiku` | Anthropic |\n| `gemini-3.0-pro` | Google |\n| `gemini-3.0-flash` | Google |\n\n**Benefits:**\n\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-5\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n### DeepSeek\n\nDeepSeek provides an OpenAI-compatible chat completions API for DeepSeek V4 Flash, V4 Pro, and the legacy `deepseek-chat` / `deepseek-reasoner` model IDs.\n\n**Setup:**\n\n1. Get your API key at [platform.deepseek.com/api_keys](https://platform.deepseek.com/api_keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"deepseek\",\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n\n**Available Models:**\n\n| Model | Description |\n| --------------------- | ------------------------------------------------ |\n| `deepseek-v4-flash` | Current fast V4 model, recommended default |\n| `deepseek-v4-pro` | Current stronger V4 model |\n| `deepseek-chat` | Legacy non-thinking alias, deprecated 2026-07-24 |\n| `deepseek-reasoner` | Legacy thinking alias, deprecated 2026-07-24 |\n\n**Example Usage:**\n\n```bash\ncurl -X POST \"https://api.deepseek.com/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DEEPSEEK_API_KEY\" \\\n -d '{\n \"model\": \"deepseek-v4-flash\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### AWS Bedrock\n\nAWS Bedrock is available as `bedrock` for enterprise AWS customers. Autohand supports three inference modes:\n\n| Mode | Choose When |\n| --- | --- |\n| `converse` | Default Bedrock-native mode using AWS credential-chain auth and Bedrock Runtime `Converse`. |\n| `openai-chat` | You are migrating OpenAI Chat Completions clients to Bedrock OpenAI-compatible endpoints. |\n| `openai-responses` | You are migrating OpenAI Responses clients to Bedrock OpenAI-compatible endpoints. |\n\nFor `converse`, configure AWS credentials outside Autohand. Autohand never stores AWS access key IDs or secret access keys. Good setup paths include:\n\n```bash\naws configure sso\nAWS_PROFILE=enterprise-prod autohand\n```\n\nIAM roles, container credentials, and instance metadata also work through the AWS SDK credential chain. Before using a model, enable access for that model in the AWS Bedrock console for the selected region.\n\n**Converse with AWS profile:**\n\n```json\n{\n \"provider\": \"bedrock\",\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n**OpenAI Chat Completions with Bedrock API key:**\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n**OpenAI Responses with Bedrock API key and private endpoint:**\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n\nSecurity note: Bedrock API keys are not OpenAI API keys. Never point Bedrock config at OpenAI base URLs.\n\n**Troubleshooting:**\n\n| Symptom | Fix |\n| --- | --- |\n| Missing AWS credentials | Run `aws configure sso`, set `AWS_PROFILE`, or run Autohand on AWS infrastructure with an IAM role. |\n| Missing region | Set `bedrock.region`, `AWS_REGION`, or `AWS_DEFAULT_REGION`. |\n| Invalid Bedrock API key | Use a Bedrock API key only with `openai-chat` or `openai-responses`. |\n| Model access not enabled | Enable the model in the AWS Bedrock console for the selected region. |\n| Model not available in region | Switch `region`, choose a regional model, or use an inference profile or ARN. |\n| Unsupported API mode | Use `converse` for Bedrock-native models, or an OpenAI-compatible Bedrock model for OpenAI modes. |\n| Throttling or quota | Wait and retry, or request a Bedrock quota increase. |\n| Private endpoint/network failure | Check `endpoint`, VPC endpoint DNS, proxy, and AWS network policy. |\n\n---\n\n### Z.ai\n\nZ.ai (Zhipu AI) provides access to the GLM family of models and CogView for image generation. The API is fully OpenAI-compatible.\n\n**Setup:**\n\n1. Get your API key at [platform.z.ai](https://platform.z.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"zai\",\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"model\": \"glm-5.2\"\n }\n}\n```\n\n**Popular Models:**\n\n| Model | Description |\n| ------------------ | ------------------------------------------------------------------------------- |\n| `glm-5.2` | Latest flagship GLM model for project-scale coding, 1M context, 128K max output |\n| `glm-5.1` | Flagship long-horizon model, 200K context, 128K max output |\n| `glm-4.5` | Previous-generation GLM model, strong reasoning |\n| `glm-4.5v` | Vision-language model |\n| `glm-4.5-air` | Faster, lighter variant |\n| `glm-4.5-prior` | Priority access variant |\n| `glm-4.5-flash` | Low-latency model |\n| `glm-4.5-air-2504` | April 2025 Air variant |\n| `cogview-4.5` | Image generation model |\n\nGLM-5.2 and GLM-5.1 both support thinking mode, streaming output, function calling, context caching, structured output, and MCP.\n\n**Example Usage:**\n\n```bash\n# Test with curl\ncurl -X POST \"https://api.z.ai/api/paas/v4/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $ZAI_API_KEY\" \\\n -d '{\n \"model\": \"glm-5.2\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### Sakana.AI\n\nSakana.AI provides Sakana Fugu through an OpenAI-compatible API. Fugu is a multi-agent system, but Autohand uses it like a standard hosted LLM through the Sakana API.\n\n**Setup:**\n\n1. Create a Sakana API key and store it securely.\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"sakana\",\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\"\n }\n}\n```\n\n**Supported Models:**\n\n| Model | Description |\n| ------------ | ------------------------------------------------- |\n| `fugu` | Default Sakana Fugu model with provider routing |\n| `fugu-ultra` | Stronger Fugu model for complex, long-running work |\n\nFor complex `fugu-ultra` tasks, consider increasing the global network timeout in your Autohand config.\n\n**Example Usage:**\n\n```bash\nexport SAKANA_API_KEY=your-key\n\ncurl -X POST \"https://api.sakana.ai/v1/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $SAKANA_API_KEY\" \\\n -d '{\n \"model\": \"fugu\",\n \"messages\": [{\"role\": \"user\", \"content\": \"How many r are in strawberry?\"}]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-5 # Switch to GPT-5\n/model anthropic/claude-5-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-5\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-5-sonnet\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n### Custom OpenAI-Compatible Providers\n\nUse custom providers when a service exposes an OpenAI-compatible API but is not bundled into Autohand. This keeps the built-in provider list small while still supporting team gateways, private deployments, and new hosted providers.\n\nFrom the TUI, run `/model`, choose **New provider...**, then enter:\n\n- provider display name\n- OpenAI-compatible base URL\n- whether an API key is required\n- model id\n- optional context window and reasoning effort\n\nAutohand verifies the base URL, API key, and selected model through the OpenAI-compatible `/models` endpoint before saving the provider. If `/models` returns model IDs, the selected model must be present in that list.\n\nThe saved config uses `provider: \"custom:<id>\"` and stores provider details under `customProviders`:\n\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n }\n}\n```\n\nFor local gateways without bearer auth:\n\n```json\n{\n \"provider\": \"custom:local-openai\",\n \"customProviders\": {\n \"local-openai\": {\n \"id\": \"local-openai\",\n \"displayName\": \"Local OpenAI Proxy\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"http://localhost:8080/v1\",\n \"apiKeyRequired\": false,\n \"model\": \"local-code-model\",\n \"contextWindow\": 131072\n }\n }\n}\n```\n\nCustom provider telemetry and session sync include the provider id, display name, API format, model id, reasoning effort, and context window when available. Secrets such as `apiKey` are not sent. When `reasoningEffort` is set, Autohand sends it to the provider as `reasoning_effort`.\n\nYou can remove a custom provider from `/model` by opening that provider's settings and choosing **Remove custom provider**.\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n| ------------ | ------- | -------------------------------- |\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "991d7ed6d0e61cef7e4a6b98adb60434ed5c21df": {"t": 1785764171.1161494, "n": 20535, "h": "68418cfab2d47983", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n - [DeepSeek](#deepseek)\n - [AWS Bedrock](#aws-bedrock)\n - [Z.ai](#zai)\n - [Sakana.AI](#sakanaai)\n - [Custom OpenAI-Compatible Providers](#custom-openai-compatible-providers)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\nEOF\n```\n\nBundled provider model choices live in `src/providers/models.json` and packaged builds include the same catalog at `dist/providers/models.json`. The CLI checks the validated public catalog every four hours and retains the bundled data plus its last valid download for offline fallback. To add a newly released model without changing TypeScript, update the relevant provider entry in that JSON file. For local-only overrides, use `~/.autohand/models.json` or set `AUTOHAND_MODELS_CATALOG=/path/to/models.json`; those entries are merged ahead of the downloaded and bundled catalogs. See [Model catalog updates](model-catalog.md) for manual refresh and publication details.\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n| --------------- | ----- | ----------- | ------- | ----------------------------------------------- |\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-5, o3 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **DeepSeek** | Cloud | Pay-per-use | Low | DeepSeek V4 Flash and V4 Pro models |\n| **AWS Bedrock** | Cloud | Pay-per-use | Low | Enterprise AWS credential-chain and Bedrock APIs |\n| **Z.ai** | Cloud | Pay-per-use | Low | GLM-5.2/5.1 long-context models, CogView image generation |\n| **Sakana.AI** | Cloud | Pay-per-use | Medium | Sakana Fugu multi-agent coding and reasoning models |\n| **Custom** | Cloud/local | Varies | Varies | Any OpenAI-compatible `/chat/completions` endpoint |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic via Azure Foundry Models, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `your-modelcard-id-here` | Best balance of speed and capability |\n| `anthropic/claude-5-opus` | Most capable Claude model |\n| `openai/gpt-5` | OpenAI's flagship model |\n| `google/gemini-3.0-pro` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n\n```\n/model anthropic/claude-5-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-5, o3, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-5` | Flagship multimodal model |\n| `gpt-5-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-5\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-5` | OpenAI |\n| `gpt-5-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-5-sonnet` | Anthropic |\n| `claude-5-haiku` | Anthropic |\n| `gemini-3.0-pro` | Google |\n| `gemini-3.0-flash` | Google |\n\n**Benefits:**\n\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-5\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n### DeepSeek\n\nDeepSeek provides an OpenAI-compatible chat completions API for DeepSeek V4 Flash, V4 Pro, and the legacy `deepseek-chat` / `deepseek-reasoner` model IDs.\n\n**Setup:**\n\n1. Get your API key at [platform.deepseek.com/api_keys](https://platform.deepseek.com/api_keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"deepseek\",\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n\n**Available Models:**\n\n| Model | Description |\n| --------------------- | ------------------------------------------------ |\n| `deepseek-v4-flash` | Current fast V4 model, recommended default |\n| `deepseek-v4-pro` | Current stronger V4 model |\n| `deepseek-chat` | Legacy non-thinking alias, deprecated 2026-07-24 |\n| `deepseek-reasoner` | Legacy thinking alias, deprecated 2026-07-24 |\n\n**Example Usage:**\n\n```bash\ncurl -X POST \"https://api.deepseek.com/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DEEPSEEK_API_KEY\" \\\n -d '{\n \"model\": \"deepseek-v4-flash\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### AWS Bedrock\n\nAWS Bedrock is available as `bedrock` for enterprise AWS customers. Autohand supports three inference modes:\n\n| Mode | Choose When |\n| --- | --- |\n| `converse` | Default Bedrock-native mode using AWS credential-chain auth and Bedrock Runtime `Converse`. |\n| `openai-chat` | You are migrating OpenAI Chat Completions clients to Bedrock OpenAI-compatible endpoints. |\n| `openai-responses` | You are migrating OpenAI Responses clients to Bedrock OpenAI-compatible endpoints. |\n\nFor `converse`, configure AWS credentials outside Autohand. Autohand never stores AWS access key IDs or secret access keys. Good setup paths include:\n\n```bash\naws configure sso\nAWS_PROFILE=enterprise-prod autohand\n```\n\nIAM roles, container credentials, and instance metadata also work through the AWS SDK credential chain. Before using a model, enable access for that model in the AWS Bedrock console for the selected region.\n\n**Converse with AWS profile:**\n\n```json\n{\n \"provider\": \"bedrock\",\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n**OpenAI Chat Completions with Bedrock API key:**\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n**OpenAI Responses with Bedrock API key and private endpoint:**\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n\nSecurity note: Bedrock API keys are not OpenAI API keys. Never point Bedrock config at OpenAI base URLs.\n\n**Troubleshooting:**\n\n| Symptom | Fix |\n| --- | --- |\n| Missing AWS credentials | Run `aws configure sso`, set `AWS_PROFILE`, or run Autohand on AWS infrastructure with an IAM role. |\n| Missing region | Set `bedrock.region`, `AWS_REGION`, or `AWS_DEFAULT_REGION`. |\n| Invalid Bedrock API key | Use a Bedrock API key only with `openai-chat` or `openai-responses`. |\n| Model access not enabled | Enable the model in the AWS Bedrock console for the selected region. |\n| Model not available in region | Switch `region`, choose a regional model, or use an inference profile or ARN. |\n| Unsupported API mode | Use `converse` for Bedrock-native models, or an OpenAI-compatible Bedrock model for OpenAI modes. |\n| Throttling or quota | Wait and retry, or request a Bedrock quota increase. |\n| Private endpoint/network failure | Check `endpoint`, VPC endpoint DNS, proxy, and AWS network policy. |\n\n---\n\n### Z.ai\n\nZ.ai (Zhipu AI) provides access to the GLM family of models and CogView for image generation. The API is fully OpenAI-compatible.\n\n**Setup:**\n\n1. Get your API key at [platform.z.ai](https://platform.z.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"zai\",\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"model\": \"glm-5.2\"\n }\n}\n```\n\n**Popular Models:**\n\n| Model | Description |\n| ------------------ | ------------------------------------------------------------------------------- |\n| `glm-5.2` | Latest flagship GLM model for project-scale coding, 1M context, 128K max output |\n| `glm-5.1` | Flagship long-horizon model, 200K context, 128K max output |\n| `glm-4.5` | Previous-generation GLM model, strong reasoning |\n| `glm-4.5v` | Vision-language model |\n| `glm-4.5-air` | Faster, lighter variant |\n| `glm-4.5-prior` | Priority access variant |\n| `glm-4.5-flash` | Low-latency model |\n| `glm-4.5-air-2504` | April 2025 Air variant |\n| `cogview-4.5` | Image generation model |\n\nGLM-5.2 and GLM-5.1 both support thinking mode, streaming output, function calling, context caching, structured output, and MCP.\n\n**Example Usage:**\n\n```bash\n# Test with curl\ncurl -X POST \"https://api.z.ai/api/paas/v4/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $ZAI_API_KEY\" \\\n -d '{\n \"model\": \"glm-5.2\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### Sakana.AI\n\nSakana.AI provides Sakana Fugu through an OpenAI-compatible API. Fugu is a multi-agent system, but Autohand uses it like a standard hosted LLM through the Sakana API.\n\n**Setup:**\n\n1. Create a Sakana API key and store it securely.\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"sakana\",\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\"\n }\n}\n```\n\n**Supported Models:**\n\n| Model | Description |\n| ------------ | ------------------------------------------------- |\n| `fugu` | Default Sakana Fugu model with provider routing |\n| `fugu-ultra` | Stronger Fugu model for complex, long-running work |\n\nFor complex `fugu-ultra` tasks, consider increasing the global network timeout in your Autohand config.\n\n**Example Usage:**\n\n```bash\nexport SAKANA_API_KEY=your-key\n\ncurl -X POST \"https://api.sakana.ai/v1/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $SAKANA_API_KEY\" \\\n -d '{\n \"model\": \"fugu\",\n \"messages\": [{\"role\": \"user\", \"content\": \"How many r are in strawberry?\"}]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-5 # Switch to GPT-5\n/model anthropic/claude-5-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-5\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-5-sonnet\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n### Custom OpenAI-Compatible Providers\n\nUse custom providers when a service exposes an OpenAI-compatible API but is not bundled into Autohand. This keeps the built-in provider list small while still supporting team gateways, private deployments, and new hosted providers.\n\nFrom the TUI, run `/model`, choose **New provider...**, then enter:\n\n- provider display name\n- OpenAI-compatible base URL\n- whether an API key is required\n- model id\n- optional context window and reasoning effort\n\nAutohand verifies the base URL, API key, and selected model through the OpenAI-compatible `/models` endpoint before saving the provider. If `/models` returns model IDs, the selected model must be present in that list.\n\nThe saved config uses `provider: \"custom:<id>\"` and stores provider details under `customProviders`:\n\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n }\n}\n```\n\nFor local gateways without bearer auth:\n\n```json\n{\n \"provider\": \"custom:local-openai\",\n \"customProviders\": {\n \"local-openai\": {\n \"id\": \"local-openai\",\n \"displayName\": \"Local OpenAI Proxy\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"http://localhost:8080/v1\",\n \"apiKeyRequired\": false,\n \"model\": \"local-code-model\",\n \"contextWindow\": 131072\n }\n }\n}\n```\n\nCustom provider telemetry and session sync include the provider id, display name, API format, model id, reasoning effort, and context window when available. Secrets such as `apiKey` are not sent. When `reasoningEffort` is set, Autohand sends it to the provider as `reasoning_effort`.\n\nYou can remove a custom provider from `/model` by opening that provider's settings and choosing **Remove custom provider**.\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n| ------------ | ------- | -------------------------------- |\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "4837b0f253efc5aa2548ed86cf668348ba2d8d6c": {"t": 1785764172.4690206, "n": 20288, "h": "263e19d6abbde93f", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n - [DeepSeek](#deepseek)\n - [AWS Bedrock](#aws-bedrock)\n - [Z.ai](#zai)\n - [Sakana.AI](#sakanaai)\n - [Custom OpenAI-Compatible Providers](#custom-openai-compatible-providers)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\nEOF\n```\n\nBundled provider model choices live in `src/providers/models.json` and packaged builds include the same catalog at `dist/providers/models.json`. To add a newly released model without changing TypeScript, update the relevant provider entry in that JSON file. For local-only overrides, use `~/.autohand/models.json` or set `AUTOHAND_MODELS_CATALOG=/path/to/models.json`; those entries are merged ahead of the bundled catalog.\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n| --------------- | ----- | ----------- | ------- | ----------------------------------------------- |\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-5, o3 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **DeepSeek** | Cloud | Pay-per-use | Low | DeepSeek V4 Flash and V4 Pro models |\n| **AWS Bedrock** | Cloud | Pay-per-use | Low | Enterprise AWS credential-chain and Bedrock APIs |\n| **Z.ai** | Cloud | Pay-per-use | Low | GLM-5.2/5.1 long-context models, CogView image generation |\n| **Sakana.AI** | Cloud | Pay-per-use | Medium | Sakana Fugu multi-agent coding and reasoning models |\n| **Custom** | Cloud/local | Varies | Varies | Any OpenAI-compatible `/chat/completions` endpoint |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic via Azure Foundry Models, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `your-modelcard-id-here` | Best balance of speed and capability |\n| `anthropic/claude-5-opus` | Most capable Claude model |\n| `openai/gpt-5` | OpenAI's flagship model |\n| `google/gemini-3.0-pro` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n\n```\n/model anthropic/claude-5-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-5, o3, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-5` | Flagship multimodal model |\n| `gpt-5-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-5\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-5` | OpenAI |\n| `gpt-5-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-5-sonnet` | Anthropic |\n| `claude-5-haiku` | Anthropic |\n| `gemini-3.0-pro` | Google |\n| `gemini-3.0-flash` | Google |\n\n**Benefits:**\n\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-5\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n### DeepSeek\n\nDeepSeek provides an OpenAI-compatible chat completions API for DeepSeek V4 Flash, V4 Pro, and the legacy `deepseek-chat` / `deepseek-reasoner` model IDs.\n\n**Setup:**\n\n1. Get your API key at [platform.deepseek.com/api_keys](https://platform.deepseek.com/api_keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"deepseek\",\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n\n**Available Models:**\n\n| Model | Description |\n| --------------------- | ------------------------------------------------ |\n| `deepseek-v4-flash` | Current fast V4 model, recommended default |\n| `deepseek-v4-pro` | Current stronger V4 model |\n| `deepseek-chat` | Legacy non-thinking alias, deprecated 2026-07-24 |\n| `deepseek-reasoner` | Legacy thinking alias, deprecated 2026-07-24 |\n\n**Example Usage:**\n\n```bash\ncurl -X POST \"https://api.deepseek.com/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DEEPSEEK_API_KEY\" \\\n -d '{\n \"model\": \"deepseek-v4-flash\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### AWS Bedrock\n\nAWS Bedrock is available as `bedrock` for enterprise AWS customers. Autohand supports three inference modes:\n\n| Mode | Choose When |\n| --- | --- |\n| `converse` | Default Bedrock-native mode using AWS credential-chain auth and Bedrock Runtime `Converse`. |\n| `openai-chat` | You are migrating OpenAI Chat Completions clients to Bedrock OpenAI-compatible endpoints. |\n| `openai-responses` | You are migrating OpenAI Responses clients to Bedrock OpenAI-compatible endpoints. |\n\nFor `converse`, configure AWS credentials outside Autohand. Autohand never stores AWS access key IDs or secret access keys. Good setup paths include:\n\n```bash\naws configure sso\nAWS_PROFILE=enterprise-prod autohand\n```\n\nIAM roles, container credentials, and instance metadata also work through the AWS SDK credential chain. Before using a model, enable access for that model in the AWS Bedrock console for the selected region.\n\n**Converse with AWS profile:**\n\n```json\n{\n \"provider\": \"bedrock\",\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n**OpenAI Chat Completions with Bedrock API key:**\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n**OpenAI Responses with Bedrock API key and private endpoint:**\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n\nSecurity note: Bedrock API keys are not OpenAI API keys. Never point Bedrock config at OpenAI base URLs.\n\n**Troubleshooting:**\n\n| Symptom | Fix |\n| --- | --- |\n| Missing AWS credentials | Run `aws configure sso`, set `AWS_PROFILE`, or run Autohand on AWS infrastructure with an IAM role. |\n| Missing region | Set `bedrock.region`, `AWS_REGION`, or `AWS_DEFAULT_REGION`. |\n| Invalid Bedrock API key | Use a Bedrock API key only with `openai-chat` or `openai-responses`. |\n| Model access not enabled | Enable the model in the AWS Bedrock console for the selected region. |\n| Model not available in region | Switch `region`, choose a regional model, or use an inference profile or ARN. |\n| Unsupported API mode | Use `converse` for Bedrock-native models, or an OpenAI-compatible Bedrock model for OpenAI modes. |\n| Throttling or quota | Wait and retry, or request a Bedrock quota increase. |\n| Private endpoint/network failure | Check `endpoint`, VPC endpoint DNS, proxy, and AWS network policy. |\n\n---\n\n### Z.ai\n\nZ.ai (Zhipu AI) provides access to the GLM family of models and CogView for image generation. The API is fully OpenAI-compatible.\n\n**Setup:**\n\n1. Get your API key at [platform.z.ai](https://platform.z.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"zai\",\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"model\": \"glm-5.2\"\n }\n}\n```\n\n**Popular Models:**\n\n| Model | Description |\n| ------------------ | ------------------------------------------------------------------------------- |\n| `glm-5.2` | Latest flagship GLM model for project-scale coding, 1M context, 128K max output |\n| `glm-5.1` | Flagship long-horizon model, 200K context, 128K max output |\n| `glm-4.5` | Previous-generation GLM model, strong reasoning |\n| `glm-4.5v` | Vision-language model |\n| `glm-4.5-air` | Faster, lighter variant |\n| `glm-4.5-prior` | Priority access variant |\n| `glm-4.5-flash` | Low-latency model |\n| `glm-4.5-air-2504` | April 2025 Air variant |\n| `cogview-4.5` | Image generation model |\n\nGLM-5.2 and GLM-5.1 both support thinking mode, streaming output, function calling, context caching, structured output, and MCP.\n\n**Example Usage:**\n\n```bash\n# Test with curl\ncurl -X POST \"https://api.z.ai/api/paas/v4/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $ZAI_API_KEY\" \\\n -d '{\n \"model\": \"glm-5.2\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### Sakana.AI\n\nSakana.AI provides Sakana Fugu through an OpenAI-compatible API. Fugu is a multi-agent system, but Autohand uses it like a standard hosted LLM through the Sakana API.\n\n**Setup:**\n\n1. Create a Sakana API key and store it securely.\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"sakana\",\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\"\n }\n}\n```\n\n**Supported Models:**\n\n| Model | Description |\n| ------------ | ------------------------------------------------- |\n| `fugu` | Default Sakana Fugu model with provider routing |\n| `fugu-ultra` | Stronger Fugu model for complex, long-running work |\n\nFor complex `fugu-ultra` tasks, consider increasing the global network timeout in your Autohand config.\n\n**Example Usage:**\n\n```bash\nexport SAKANA_API_KEY=your-key\n\ncurl -X POST \"https://api.sakana.ai/v1/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $SAKANA_API_KEY\" \\\n -d '{\n \"model\": \"fugu\",\n \"messages\": [{\"role\": \"user\", \"content\": \"How many r are in strawberry?\"}]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-5 # Switch to GPT-5\n/model anthropic/claude-5-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-5\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-5-sonnet\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n### Custom OpenAI-Compatible Providers\n\nUse custom providers when a service exposes an OpenAI-compatible API but is not bundled into Autohand. This keeps the built-in provider list small while still supporting team gateways, private deployments, and new hosted providers.\n\nFrom the TUI, run `/model`, choose **New provider...**, then enter:\n\n- provider display name\n- OpenAI-compatible base URL\n- whether an API key is required\n- model id\n- optional context window and reasoning effort\n\nAutohand verifies the base URL, API key, and selected model through the OpenAI-compatible `/models` endpoint before saving the provider. If `/models` returns model IDs, the selected model must be present in that list.\n\nThe saved config uses `provider: \"custom:<id>\"` and stores provider details under `customProviders`:\n\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n }\n}\n```\n\nFor local gateways without bearer auth:\n\n```json\n{\n \"provider\": \"custom:local-openai\",\n \"customProviders\": {\n \"local-openai\": {\n \"id\": \"local-openai\",\n \"displayName\": \"Local OpenAI Proxy\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"http://localhost:8080/v1\",\n \"apiKeyRequired\": false,\n \"model\": \"local-code-model\",\n \"contextWindow\": 131072\n }\n }\n}\n```\n\nCustom provider telemetry and session sync include the provider id, display name, API format, model id, reasoning effort, and context window when available. Secrets such as `apiKey` are not sent. When `reasoningEffort` is set, Autohand sends it to the provider as `reasoning_effort`.\n\nYou can remove a custom provider from `/model` by opening that provider's settings and choosing **Remove custom provider**.\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n| ------------ | ------- | -------------------------------- |\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "6b52e37284b34d08ef5c5aa020fe51c73b0da91a": {"t": 1785764174.9607346, "n": 19863, "h": "4fde5aefef8c3034", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n - [DeepSeek](#deepseek)\n - [AWS Bedrock](#aws-bedrock)\n - [Z.ai](#zai)\n - [Sakana.AI](#sakanaai)\n - [Custom OpenAI-Compatible Providers](#custom-openai-compatible-providers)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\nEOF\n```\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n| --------------- | ----- | ----------- | ------- | ----------------------------------------------- |\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-5, o3 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **DeepSeek** | Cloud | Pay-per-use | Low | DeepSeek V4 Flash and V4 Pro models |\n| **AWS Bedrock** | Cloud | Pay-per-use | Low | Enterprise AWS credential-chain and Bedrock APIs |\n| **Z.ai** | Cloud | Pay-per-use | Low | GLM-5.2/5.1 long-context models, CogView image generation |\n| **Sakana.AI** | Cloud | Pay-per-use | Medium | Sakana Fugu multi-agent coding and reasoning models |\n| **Custom** | Cloud/local | Varies | Varies | Any OpenAI-compatible `/chat/completions` endpoint |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic via Azure Foundry Models, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `your-modelcard-id-here` | Best balance of speed and capability |\n| `anthropic/claude-5-opus` | Most capable Claude model |\n| `openai/gpt-5` | OpenAI's flagship model |\n| `google/gemini-3.0-pro` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n\n```\n/model anthropic/claude-5-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-5, o3, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-5` | Flagship multimodal model |\n| `gpt-5-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-5\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-5` | OpenAI |\n| `gpt-5-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-5-sonnet` | Anthropic |\n| `claude-5-haiku` | Anthropic |\n| `gemini-3.0-pro` | Google |\n| `gemini-3.0-flash` | Google |\n\n**Benefits:**\n\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-5\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n### DeepSeek\n\nDeepSeek provides an OpenAI-compatible chat completions API for DeepSeek V4 Flash, V4 Pro, and the legacy `deepseek-chat` / `deepseek-reasoner` model IDs.\n\n**Setup:**\n\n1. Get your API key at [platform.deepseek.com/api_keys](https://platform.deepseek.com/api_keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"deepseek\",\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n\n**Available Models:**\n\n| Model | Description |\n| --------------------- | ------------------------------------------------ |\n| `deepseek-v4-flash` | Current fast V4 model, recommended default |\n| `deepseek-v4-pro` | Current stronger V4 model |\n| `deepseek-chat` | Legacy non-thinking alias, deprecated 2026-07-24 |\n| `deepseek-reasoner` | Legacy thinking alias, deprecated 2026-07-24 |\n\n**Example Usage:**\n\n```bash\ncurl -X POST \"https://api.deepseek.com/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DEEPSEEK_API_KEY\" \\\n -d '{\n \"model\": \"deepseek-v4-flash\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### AWS Bedrock\n\nAWS Bedrock is available as `bedrock` for enterprise AWS customers. Autohand supports three inference modes:\n\n| Mode | Choose When |\n| --- | --- |\n| `converse` | Default Bedrock-native mode using AWS credential-chain auth and Bedrock Runtime `Converse`. |\n| `openai-chat` | You are migrating OpenAI Chat Completions clients to Bedrock OpenAI-compatible endpoints. |\n| `openai-responses` | You are migrating OpenAI Responses clients to Bedrock OpenAI-compatible endpoints. |\n\nFor `converse`, configure AWS credentials outside Autohand. Autohand never stores AWS access key IDs or secret access keys. Good setup paths include:\n\n```bash\naws configure sso\nAWS_PROFILE=enterprise-prod autohand\n```\n\nIAM roles, container credentials, and instance metadata also work through the AWS SDK credential chain. Before using a model, enable access for that model in the AWS Bedrock console for the selected region.\n\n**Converse with AWS profile:**\n\n```json\n{\n \"provider\": \"bedrock\",\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n**OpenAI Chat Completions with Bedrock API key:**\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n**OpenAI Responses with Bedrock API key and private endpoint:**\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n\nSecurity note: Bedrock API keys are not OpenAI API keys. Never point Bedrock config at OpenAI base URLs.\n\n**Troubleshooting:**\n\n| Symptom | Fix |\n| --- | --- |\n| Missing AWS credentials | Run `aws configure sso`, set `AWS_PROFILE`, or run Autohand on AWS infrastructure with an IAM role. |\n| Missing region | Set `bedrock.region`, `AWS_REGION`, or `AWS_DEFAULT_REGION`. |\n| Invalid Bedrock API key | Use a Bedrock API key only with `openai-chat` or `openai-responses`. |\n| Model access not enabled | Enable the model in the AWS Bedrock console for the selected region. |\n| Model not available in region | Switch `region`, choose a regional model, or use an inference profile or ARN. |\n| Unsupported API mode | Use `converse` for Bedrock-native models, or an OpenAI-compatible Bedrock model for OpenAI modes. |\n| Throttling or quota | Wait and retry, or request a Bedrock quota increase. |\n| Private endpoint/network failure | Check `endpoint`, VPC endpoint DNS, proxy, and AWS network policy. |\n\n---\n\n### Z.ai\n\nZ.ai (Zhipu AI) provides access to the GLM family of models and CogView for image generation. The API is fully OpenAI-compatible.\n\n**Setup:**\n\n1. Get your API key at [platform.z.ai](https://platform.z.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"zai\",\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"model\": \"glm-5.2\"\n }\n}\n```\n\n**Popular Models:**\n\n| Model | Description |\n| ------------------ | ------------------------------------------------------------------------------- |\n| `glm-5.2` | Latest flagship GLM model for project-scale coding, 1M context, 128K max output |\n| `glm-5.1` | Flagship long-horizon model, 200K context, 128K max output |\n| `glm-4.5` | Previous-generation GLM model, strong reasoning |\n| `glm-4.5v` | Vision-language model |\n| `glm-4.5-air` | Faster, lighter variant |\n| `glm-4.5-prior` | Priority access variant |\n| `glm-4.5-flash` | Low-latency model |\n| `glm-4.5-air-2504` | April 2025 Air variant |\n| `cogview-4.5` | Image generation model |\n\nGLM-5.2 and GLM-5.1 both support thinking mode, streaming output, function calling, context caching, structured output, and MCP.\n\n**Example Usage:**\n\n```bash\n# Test with curl\ncurl -X POST \"https://api.z.ai/api/paas/v4/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $ZAI_API_KEY\" \\\n -d '{\n \"model\": \"glm-5.2\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### Sakana.AI\n\nSakana.AI provides Sakana Fugu through an OpenAI-compatible API. Fugu is a multi-agent system, but Autohand uses it like a standard hosted LLM through the Sakana API.\n\n**Setup:**\n\n1. Create a Sakana API key and store it securely.\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"sakana\",\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\"\n }\n}\n```\n\n**Supported Models:**\n\n| Model | Description |\n| ------------ | ------------------------------------------------- |\n| `fugu` | Default Sakana Fugu model with provider routing |\n| `fugu-ultra` | Stronger Fugu model for complex, long-running work |\n\nFor complex `fugu-ultra` tasks, consider increasing the global network timeout in your Autohand config.\n\n**Example Usage:**\n\n```bash\nexport SAKANA_API_KEY=your-key\n\ncurl -X POST \"https://api.sakana.ai/v1/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $SAKANA_API_KEY\" \\\n -d '{\n \"model\": \"fugu\",\n \"messages\": [{\"role\": \"user\", \"content\": \"How many r are in strawberry?\"}]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-5 # Switch to GPT-5\n/model anthropic/claude-5-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-5\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-5-sonnet\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n### Custom OpenAI-Compatible Providers\n\nUse custom providers when a service exposes an OpenAI-compatible API but is not bundled into Autohand. This keeps the built-in provider list small while still supporting team gateways, private deployments, and new hosted providers.\n\nFrom the TUI, run `/model`, choose **New provider...**, then enter:\n\n- provider display name\n- OpenAI-compatible base URL\n- whether an API key is required\n- model id\n- optional context window and reasoning effort\n\nAutohand verifies the base URL, API key, and selected model through the OpenAI-compatible `/models` endpoint before saving the provider. If `/models` returns model IDs, the selected model must be present in that list.\n\nThe saved config uses `provider: \"custom:<id>\"` and stores provider details under `customProviders`:\n\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n }\n}\n```\n\nFor local gateways without bearer auth:\n\n```json\n{\n \"provider\": \"custom:local-openai\",\n \"customProviders\": {\n \"local-openai\": {\n \"id\": \"local-openai\",\n \"displayName\": \"Local OpenAI Proxy\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"http://localhost:8080/v1\",\n \"apiKeyRequired\": false,\n \"model\": \"local-code-model\",\n \"contextWindow\": 131072\n }\n }\n}\n```\n\nCustom provider telemetry and session sync include the provider id, display name, API format, model id, reasoning effort, and context window when available. Secrets such as `apiKey` are not sent. When `reasoningEffort` is set, Autohand sends it to the provider as `reasoning_effort`.\n\nYou can remove a custom provider from `/model` by opening that provider's settings and choosing **Remove custom provider**.\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n| ------------ | ------- | -------------------------------- |\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "6ee4b4e4046728f4dee36acb600932a231c82f01": {"t": 1785764176.4543304, "n": 19556, "h": "ec8090ffded1e909", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n - [DeepSeek](#deepseek)\n - [AWS Bedrock](#aws-bedrock)\n - [Z.ai](#zai)\n - [Sakana.AI](#sakanaai)\n - [Custom OpenAI-Compatible Providers](#custom-openai-compatible-providers)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\nEOF\n```\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n| --------------- | ----- | ----------- | ------- | ----------------------------------------------- |\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-5, o3 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **DeepSeek** | Cloud | Pay-per-use | Low | DeepSeek V4 Flash and V4 Pro models |\n| **AWS Bedrock** | Cloud | Pay-per-use | Low | Enterprise AWS credential-chain and Bedrock APIs |\n| **Z.ai** | Cloud | Pay-per-use | Low | GLM-5.2/5.1 long-context models, CogView image generation |\n| **Sakana.AI** | Cloud | Pay-per-use | Medium | Sakana Fugu multi-agent coding and reasoning models |\n| **Custom** | Cloud/local | Varies | Varies | Any OpenAI-compatible `/chat/completions` endpoint |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic via Azure Foundry Models, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `your-modelcard-id-here` | Best balance of speed and capability |\n| `anthropic/claude-5-opus` | Most capable Claude model |\n| `openai/gpt-5` | OpenAI's flagship model |\n| `google/gemini-3.0-pro` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n\n```\n/model anthropic/claude-5-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-5, o3, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-5` | Flagship multimodal model |\n| `gpt-5-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-5\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-5` | OpenAI |\n| `gpt-5-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-5-sonnet` | Anthropic |\n| `claude-5-haiku` | Anthropic |\n| `gemini-3.0-pro` | Google |\n| `gemini-3.0-flash` | Google |\n\n**Benefits:**\n\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-5\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n### DeepSeek\n\nDeepSeek provides an OpenAI-compatible chat completions API for DeepSeek V4 Flash, V4 Pro, and the legacy `deepseek-chat` / `deepseek-reasoner` model IDs.\n\n**Setup:**\n\n1. Get your API key at [platform.deepseek.com/api_keys](https://platform.deepseek.com/api_keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"deepseek\",\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n\n**Available Models:**\n\n| Model | Description |\n| --------------------- | ------------------------------------------------ |\n| `deepseek-v4-flash` | Current fast V4 model, recommended default |\n| `deepseek-v4-pro` | Current stronger V4 model |\n| `deepseek-chat` | Legacy non-thinking alias, deprecated 2026-07-24 |\n| `deepseek-reasoner` | Legacy thinking alias, deprecated 2026-07-24 |\n\n**Example Usage:**\n\n```bash\ncurl -X POST \"https://api.deepseek.com/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DEEPSEEK_API_KEY\" \\\n -d '{\n \"model\": \"deepseek-v4-flash\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### AWS Bedrock\n\nAWS Bedrock is available as `bedrock` for enterprise AWS customers. Autohand supports three inference modes:\n\n| Mode | Choose When |\n| --- | --- |\n| `converse` | Default Bedrock-native mode using AWS credential-chain auth and Bedrock Runtime `Converse`. |\n| `openai-chat` | You are migrating OpenAI Chat Completions clients to Bedrock OpenAI-compatible endpoints. |\n| `openai-responses` | You are migrating OpenAI Responses clients to Bedrock OpenAI-compatible endpoints. |\n\nFor `converse`, configure AWS credentials outside Autohand. Autohand never stores AWS access key IDs or secret access keys. Good setup paths include:\n\n```bash\naws configure sso\nAWS_PROFILE=enterprise-prod autohand\n```\n\nIAM roles, container credentials, and instance metadata also work through the AWS SDK credential chain. Before using a model, enable access for that model in the AWS Bedrock console for the selected region.\n\n**Converse with AWS profile:**\n\n```json\n{\n \"provider\": \"bedrock\",\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n**OpenAI Chat Completions with Bedrock API key:**\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n**OpenAI Responses with Bedrock API key and private endpoint:**\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n\nSecurity note: Bedrock API keys are not OpenAI API keys. Never point Bedrock config at OpenAI base URLs.\n\n**Troubleshooting:**\n\n| Symptom | Fix |\n| --- | --- |\n| Missing AWS credentials | Run `aws configure sso`, set `AWS_PROFILE`, or run Autohand on AWS infrastructure with an IAM role. |\n| Missing region | Set `bedrock.region`, `AWS_REGION`, or `AWS_DEFAULT_REGION`. |\n| Invalid Bedrock API key | Use a Bedrock API key only with `openai-chat` or `openai-responses`. |\n| Model access not enabled | Enable the model in the AWS Bedrock console for the selected region. |\n| Model not available in region | Switch `region`, choose a regional model, or use an inference profile or ARN. |\n| Unsupported API mode | Use `converse` for Bedrock-native models, or an OpenAI-compatible Bedrock model for OpenAI modes. |\n| Throttling or quota | Wait and retry, or request a Bedrock quota increase. |\n| Private endpoint/network failure | Check `endpoint`, VPC endpoint DNS, proxy, and AWS network policy. |\n\n---\n\n### Z.ai\n\nZ.ai (Zhipu AI) provides access to the GLM family of models and CogView for image generation. The API is fully OpenAI-compatible.\n\n**Setup:**\n\n1. Get your API key at [platform.z.ai](https://platform.z.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"zai\",\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"model\": \"glm-5.2\"\n }\n}\n```\n\n**Popular Models:**\n\n| Model | Description |\n| ------------------ | ------------------------------------------------------------------------------- |\n| `glm-5.2` | Latest flagship GLM model for project-scale coding, 1M context, 128K max output |\n| `glm-5.1` | Flagship long-horizon model, 200K context, 128K max output |\n| `glm-4.5` | Previous-generation GLM model, strong reasoning |\n| `glm-4.5v` | Vision-language model |\n| `glm-4.5-air` | Faster, lighter variant |\n| `glm-4.5-prior` | Priority access variant |\n| `glm-4.5-flash` | Low-latency model |\n| `glm-4.5-air-2504` | April 2025 Air variant |\n| `cogview-4.5` | Image generation model |\n\nGLM-5.2 and GLM-5.1 both support thinking mode, streaming output, function calling, context caching, structured output, and MCP.\n\n**Example Usage:**\n\n```bash\n# Test with curl\ncurl -X POST \"https://api.z.ai/api/paas/v4/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $ZAI_API_KEY\" \\\n -d '{\n \"model\": \"glm-5.2\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### Sakana.AI\n\nSakana.AI provides Sakana Fugu through an OpenAI-compatible API. Fugu is a multi-agent system, but Autohand uses it like a standard hosted LLM through the Sakana API.\n\n**Setup:**\n\n1. Create a Sakana API key and store it securely.\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"sakana\",\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\"\n }\n}\n```\n\n**Supported Models:**\n\n| Model | Description |\n| ------------ | ------------------------------------------------- |\n| `fugu` | Default Sakana Fugu model with provider routing |\n| `fugu-ultra` | Stronger Fugu model for complex, long-running work |\n\nFor complex `fugu-ultra` tasks, consider increasing the global network timeout in your Autohand config.\n\n**Example Usage:**\n\n```bash\nexport SAKANA_API_KEY=your-key\n\ncurl -X POST \"https://api.sakana.ai/v1/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $SAKANA_API_KEY\" \\\n -d '{\n \"model\": \"fugu\",\n \"messages\": [{\"role\": \"user\", \"content\": \"How many r are in strawberry?\"}]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-5 # Switch to GPT-5\n/model anthropic/claude-5-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-5\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-5-sonnet\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n### Custom OpenAI-Compatible Providers\n\nUse custom providers when a service exposes an OpenAI-compatible API but is not bundled into Autohand. This keeps the built-in provider list small while still supporting team gateways, private deployments, and new hosted providers.\n\nFrom the TUI, run `/model`, choose **New provider...**, then enter:\n\n- provider display name\n- OpenAI-compatible base URL\n- whether an API key is required\n- model id\n- optional context window and reasoning effort\n\nThe saved config uses `provider: \"custom:<id>\"` and stores provider details under `customProviders`:\n\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n }\n}\n```\n\nFor local gateways without bearer auth:\n\n```json\n{\n \"provider\": \"custom:local-openai\",\n \"customProviders\": {\n \"local-openai\": {\n \"id\": \"local-openai\",\n \"displayName\": \"Local OpenAI Proxy\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"http://localhost:8080/v1\",\n \"apiKeyRequired\": false,\n \"model\": \"local-code-model\",\n \"contextWindow\": 131072\n }\n }\n}\n```\n\nCustom provider telemetry and session sync include the provider id, display name, API format, model id, reasoning effort, and context window when available. Secrets such as `apiKey` are not sent.\n\nYou can remove a custom provider from `/model` by opening that provider's settings and choosing **Remove custom provider**.\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n| ------------ | ------- | -------------------------------- |\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "fdfa9d68a5c8a8d8b05f8431aeb7ed48ffd3b85b": {"t": 1785764177.8305154, "n": 16371, "h": "0368d0e7c5115cba", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n - [DeepSeek](#deepseek)\n - [AWS Bedrock](#aws-bedrock)\n - [Z.ai](#zai)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\nEOF\n```\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n| --------------- | ----- | ----------- | ------- | ----------------------------------------------- |\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-5, o3 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **DeepSeek** | Cloud | Pay-per-use | Low | DeepSeek V4 Flash and V4 Pro models |\n| **AWS Bedrock** | Cloud | Pay-per-use | Low | Enterprise AWS credential-chain and Bedrock APIs |\n| **Z.ai** | Cloud | Pay-per-use | Low | GLM-5.2/5.1 long-context models, CogView image generation |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic via Azure Foundry Models, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `your-modelcard-id-here` | Best balance of speed and capability |\n| `anthropic/claude-5-opus` | Most capable Claude model |\n| `openai/gpt-5` | OpenAI's flagship model |\n| `google/gemini-3.0-pro` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n\n```\n/model anthropic/claude-5-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-5, o3, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-5` | Flagship multimodal model |\n| `gpt-5-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-5\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-5` | OpenAI |\n| `gpt-5-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-5-sonnet` | Anthropic |\n| `claude-5-haiku` | Anthropic |\n| `gemini-3.0-pro` | Google |\n| `gemini-3.0-flash` | Google |\n\n**Benefits:**\n\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-5\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n### DeepSeek\n\nDeepSeek provides an OpenAI-compatible chat completions API for DeepSeek V4 Flash, V4 Pro, and the legacy `deepseek-chat` / `deepseek-reasoner` model IDs.\n\n**Setup:**\n\n1. Get your API key at [platform.deepseek.com/api_keys](https://platform.deepseek.com/api_keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"deepseek\",\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n\n**Available Models:**\n\n| Model | Description |\n| --------------------- | ------------------------------------------------ |\n| `deepseek-v4-flash` | Current fast V4 model, recommended default |\n| `deepseek-v4-pro` | Current stronger V4 model |\n| `deepseek-chat` | Legacy non-thinking alias, deprecated 2026-07-24 |\n| `deepseek-reasoner` | Legacy thinking alias, deprecated 2026-07-24 |\n\n**Example Usage:**\n\n```bash\ncurl -X POST \"https://api.deepseek.com/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DEEPSEEK_API_KEY\" \\\n -d '{\n \"model\": \"deepseek-v4-flash\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### AWS Bedrock\n\nAWS Bedrock is available as `bedrock` for enterprise AWS customers. Autohand supports three inference modes:\n\n| Mode | Choose When |\n| --- | --- |\n| `converse` | Default Bedrock-native mode using AWS credential-chain auth and Bedrock Runtime `Converse`. |\n| `openai-chat` | You are migrating OpenAI Chat Completions clients to Bedrock OpenAI-compatible endpoints. |\n| `openai-responses` | You are migrating OpenAI Responses clients to Bedrock OpenAI-compatible endpoints. |\n\nFor `converse`, configure AWS credentials outside Autohand. Autohand never stores AWS access key IDs or secret access keys. Good setup paths include:\n\n```bash\naws configure sso\nAWS_PROFILE=enterprise-prod autohand\n```\n\nIAM roles, container credentials, and instance metadata also work through the AWS SDK credential chain. Before using a model, enable access for that model in the AWS Bedrock console for the selected region.\n\n**Converse with AWS profile:**\n\n```json\n{\n \"provider\": \"bedrock\",\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n**OpenAI Chat Completions with Bedrock API key:**\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n**OpenAI Responses with Bedrock API key and private endpoint:**\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n\nSecurity note: Bedrock API keys are not OpenAI API keys. Never point Bedrock config at OpenAI base URLs.\n\n**Troubleshooting:**\n\n| Symptom | Fix |\n| --- | --- |\n| Missing AWS credentials | Run `aws configure sso`, set `AWS_PROFILE`, or run Autohand on AWS infrastructure with an IAM role. |\n| Missing region | Set `bedrock.region`, `AWS_REGION`, or `AWS_DEFAULT_REGION`. |\n| Invalid Bedrock API key | Use a Bedrock API key only with `openai-chat` or `openai-responses`. |\n| Model access not enabled | Enable the model in the AWS Bedrock console for the selected region. |\n| Model not available in region | Switch `region`, choose a regional model, or use an inference profile or ARN. |\n| Unsupported API mode | Use `converse` for Bedrock-native models, or an OpenAI-compatible Bedrock model for OpenAI modes. |\n| Throttling or quota | Wait and retry, or request a Bedrock quota increase. |\n| Private endpoint/network failure | Check `endpoint`, VPC endpoint DNS, proxy, and AWS network policy. |\n\n---\n\n### Z.ai\n\nZ.ai (Zhipu AI) provides access to the GLM family of models and CogView for image generation. The API is fully OpenAI-compatible.\n\n**Setup:**\n\n1. Get your API key at [platform.z.ai](https://platform.z.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"zai\",\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"model\": \"glm-5.2\"\n }\n}\n```\n\n**Popular Models:**\n\n| Model | Description |\n| ------------------ | ------------------------------------------------------------------------------- |\n| `glm-5.2` | Latest flagship GLM model for project-scale coding, 1M context, 128K max output |\n| `glm-5.1` | Flagship long-horizon model, 200K context, 128K max output |\n| `glm-4.5` | Previous-generation GLM model, strong reasoning |\n| `glm-4.5v` | Vision-language model |\n| `glm-4.5-air` | Faster, lighter variant |\n| `glm-4.5-prior` | Priority access variant |\n| `glm-4.5-flash` | Low-latency model |\n| `glm-4.5-air-2504` | April 2025 Air variant |\n| `cogview-4.5` | Image generation model |\n\nGLM-5.2 and GLM-5.1 both support thinking mode, streaming output, function calling, context caching, structured output, and MCP.\n\n**Example Usage:**\n\n```bash\n# Test with curl\ncurl -X POST \"https://api.z.ai/api/paas/v4/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $ZAI_API_KEY\" \\\n -d '{\n \"model\": \"glm-5.2\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-5 # Switch to GPT-5\n/model anthropic/claude-5-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-5\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-5-sonnet\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n| ------------ | ------- | -------------------------------- |\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "b01f203031c7ca3055d2ee0e385c35858e059ecf": {"t": 1785764179.7749052, "n": 15634, "h": "6b6cc1c6f8152832", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n - [DeepSeek](#deepseek)\n - [AWS Bedrock](#aws-bedrock)\n - [Z.ai](#zai)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\nEOF\n```\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n| --------------- | ----- | ----------- | ------- | ----------------------------------------------- |\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-5, o3 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **DeepSeek** | Cloud | Pay-per-use | Low | DeepSeek V4 Flash and V4 Pro models |\n| **AWS Bedrock** | Cloud | Pay-per-use | Low | Enterprise AWS credential-chain and Bedrock APIs |\n| **Z.ai** | Cloud | Pay-per-use | Low | GLM-4.5 series models, CogView image generation |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic via Azure Foundry Models, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `your-modelcard-id-here` | Best balance of speed and capability |\n| `anthropic/claude-5-opus` | Most capable Claude model |\n| `openai/gpt-5` | OpenAI's flagship model |\n| `google/gemini-3.0-pro` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n\n```\n/model anthropic/claude-5-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-5, o3, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-5` | Flagship multimodal model |\n| `gpt-5-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-5\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-5` | OpenAI |\n| `gpt-5-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-5-sonnet` | Anthropic |\n| `claude-5-haiku` | Anthropic |\n| `gemini-3.0-pro` | Google |\n| `gemini-3.0-flash` | Google |\n\n**Benefits:**\n\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-5\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n### DeepSeek\n\nDeepSeek provides an OpenAI-compatible chat completions API for DeepSeek V4 Flash, V4 Pro, and the legacy `deepseek-chat` / `deepseek-reasoner` model IDs.\n\n**Setup:**\n\n1. Get your API key at [platform.deepseek.com/api_keys](https://platform.deepseek.com/api_keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"deepseek\",\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n\n**Available Models:**\n\n| Model | Description |\n| --------------------- | ------------------------------------------------ |\n| `deepseek-v4-flash` | Current fast V4 model, recommended default |\n| `deepseek-v4-pro` | Current stronger V4 model |\n| `deepseek-chat` | Legacy non-thinking alias, deprecated 2026-07-24 |\n| `deepseek-reasoner` | Legacy thinking alias, deprecated 2026-07-24 |\n\n**Example Usage:**\n\n```bash\ncurl -X POST \"https://api.deepseek.com/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DEEPSEEK_API_KEY\" \\\n -d '{\n \"model\": \"deepseek-v4-flash\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### AWS Bedrock\n\nAWS Bedrock is available as `bedrock` for enterprise AWS customers. Autohand supports three inference modes:\n\n| Mode | Choose When |\n| --- | --- |\n| `converse` | Default Bedrock-native mode using AWS credential-chain auth and Bedrock Runtime `Converse`. |\n| `openai-chat` | You are migrating OpenAI Chat Completions clients to Bedrock OpenAI-compatible endpoints. |\n| `openai-responses` | You are migrating OpenAI Responses clients to Bedrock OpenAI-compatible endpoints. |\n\nFor `converse`, configure AWS credentials outside Autohand. Autohand never stores AWS access key IDs or secret access keys. Good setup paths include:\n\n```bash\naws configure sso\nAWS_PROFILE=enterprise-prod autohand\n```\n\nIAM roles, container credentials, and instance metadata also work through the AWS SDK credential chain. Before using a model, enable access for that model in the AWS Bedrock console for the selected region.\n\n**Converse with AWS profile:**\n\n```json\n{\n \"provider\": \"bedrock\",\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n**OpenAI Chat Completions with Bedrock API key:**\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n**OpenAI Responses with Bedrock API key and private endpoint:**\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n\nSecurity note: Bedrock API keys are not OpenAI API keys. Never point Bedrock config at OpenAI base URLs.\n\n**Troubleshooting:**\n\n| Symptom | Fix |\n| --- | --- |\n| Missing AWS credentials | Run `aws configure sso`, set `AWS_PROFILE`, or run Autohand on AWS infrastructure with an IAM role. |\n| Missing region | Set `bedrock.region`, `AWS_REGION`, or `AWS_DEFAULT_REGION`. |\n| Invalid Bedrock API key | Use a Bedrock API key only with `openai-chat` or `openai-responses`. |\n| Model access not enabled | Enable the model in the AWS Bedrock console for the selected region. |\n| Model not available in region | Switch `region`, choose a regional model, or use an inference profile or ARN. |\n| Unsupported API mode | Use `converse` for Bedrock-native models, or an OpenAI-compatible Bedrock model for OpenAI modes. |\n| Throttling or quota | Wait and retry, or request a Bedrock quota increase. |\n| Private endpoint/network failure | Check `endpoint`, VPC endpoint DNS, proxy, and AWS network policy. |\n\n---\n\n### Z.ai\n\nZ.ai (Zhipu AI) provides access to the GLM family of models and CogView for image generation. The API is fully OpenAI-compatible.\n\n**Setup:**\n\n1. Get your API key at [platform.z.ai](https://platform.z.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"zai\",\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"model\": \"glm-4.5\"\n }\n}\n```\n\n**Popular Models:**\n\n| Model | Description |\n| ------------------ | ------------------------------------ |\n| `glm-4.5` | Flagship GLM model, strong reasoning |\n| `glm-4.5v` | Vision-language model |\n| `glm-4.5-air` | Faster, lighter variant |\n| `glm-4.5-prior` | Priority access variant |\n| `glm-4.5-flash` | Low-latency model |\n| `glm-4.5-air-2504` | April 2025 Air variant |\n| `cogview-4.5` | Image generation model |\n\n**Example Usage:**\n\n```bash\n# Test with curl\ncurl -X POST \"https://api.z.ai/api/paas/v4/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $ZAI_API_KEY\" \\\n -d '{\n \"model\": \"glm-4.5\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-5 # Switch to GPT-5\n/model anthropic/claude-5-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-5\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-5-sonnet\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n| ------------ | ------- | -------------------------------- |\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "09e745111d32d821fcbfd8b3f08bf87265037ea0": {"t": 1785764181.2294388, "n": 12669, "h": "c917ec5fb630554a", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n - [DeepSeek](#deepseek)\n - [Z.ai](#zai)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\nEOF\n```\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n| --------------- | ----- | ----------- | ------- | ----------------------------------------------- |\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-5, o3 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **DeepSeek** | Cloud | Pay-per-use | Low | DeepSeek V4 Flash and V4 Pro models |\n| **Z.ai** | Cloud | Pay-per-use | Low | GLM-4.5 series models, CogView image generation |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic via Azure Foundry Models, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `your-modelcard-id-here` | Best balance of speed and capability |\n| `anthropic/claude-5-opus` | Most capable Claude model |\n| `openai/gpt-5` | OpenAI's flagship model |\n| `google/gemini-3.0-pro` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n\n```\n/model anthropic/claude-5-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-5, o3, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-5` | Flagship multimodal model |\n| `gpt-5-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-5\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-5` | OpenAI |\n| `gpt-5-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-5-sonnet` | Anthropic |\n| `claude-5-haiku` | Anthropic |\n| `gemini-3.0-pro` | Google |\n| `gemini-3.0-flash` | Google |\n\n**Benefits:**\n\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-5\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n### DeepSeek\n\nDeepSeek provides an OpenAI-compatible chat completions API for DeepSeek V4 Flash, V4 Pro, and the legacy `deepseek-chat` / `deepseek-reasoner` model IDs.\n\n**Setup:**\n\n1. Get your API key at [platform.deepseek.com/api_keys](https://platform.deepseek.com/api_keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"deepseek\",\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n\n**Available Models:**\n\n| Model | Description |\n| --------------------- | ------------------------------------------------ |\n| `deepseek-v4-flash` | Current fast V4 model, recommended default |\n| `deepseek-v4-pro` | Current stronger V4 model |\n| `deepseek-chat` | Legacy non-thinking alias, deprecated 2026-07-24 |\n| `deepseek-reasoner` | Legacy thinking alias, deprecated 2026-07-24 |\n\n**Example Usage:**\n\n```bash\ncurl -X POST \"https://api.deepseek.com/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DEEPSEEK_API_KEY\" \\\n -d '{\n \"model\": \"deepseek-v4-flash\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### Z.ai\n\nZ.ai (Zhipu AI) provides access to the GLM family of models and CogView for image generation. The API is fully OpenAI-compatible.\n\n**Setup:**\n\n1. Get your API key at [platform.z.ai](https://platform.z.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"zai\",\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"model\": \"glm-4.5\"\n }\n}\n```\n\n**Popular Models:**\n\n| Model | Description |\n| ------------------ | ------------------------------------ |\n| `glm-4.5` | Flagship GLM model, strong reasoning |\n| `glm-4.5v` | Vision-language model |\n| `glm-4.5-air` | Faster, lighter variant |\n| `glm-4.5-prior` | Priority access variant |\n| `glm-4.5-flash` | Low-latency model |\n| `glm-4.5-air-2504` | April 2025 Air variant |\n| `cogview-4.5` | Image generation model |\n\n**Example Usage:**\n\n```bash\n# Test with curl\ncurl -X POST \"https://api.z.ai/api/paas/v4/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $ZAI_API_KEY\" \\\n -d '{\n \"model\": \"glm-4.5\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-5 # Switch to GPT-5\n/model anthropic/claude-5-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-5\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-5-sonnet\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n| ------------ | ------- | -------------------------------- |\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "889b9e8863b22d6c704f51beef5fc47ad00b7b2d": {"t": 1785764182.6958187, "n": 11372, "h": "a9f8f1b6ec22b6ed", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n - [Z.ai](#zai)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\nEOF\n```\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n| --------------- | ----- | ----------- | ------- | ----------------------------------------------- |\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-4o, o1 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **Z.ai** | Cloud | Pay-per-use | Low | GLM-4.5 series models, CogView image generation |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic via Azure Foundry Models, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `your-modelcard-id-here` | Best balance of speed and capability |\n| `anthropic/claude-3-opus` | Most capable Claude model |\n| `openai/gpt-4o` | OpenAI's flagship model |\n| `google/gemini-pro-1.5` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n\n```\n/model anthropic/claude-3-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-4o, o1, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-4o` | Flagship multimodal model |\n| `gpt-4o-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-4o` | OpenAI |\n| `gpt-4o-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-3-5-sonnet-20241022` | Anthropic |\n| `claude-3-5-haiku-20241022` | Anthropic |\n| `gemini-1.5-pro` | Google |\n| `gemini-1.5-flash` | Google |\n\n**Benefits:**\n\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-4o\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n### Z.ai\n\nZ.ai (Zhipu AI) provides access to the GLM family of models and CogView for image generation. The API is fully OpenAI-compatible.\n\n**Setup:**\n\n1. Get your API key at [platform.z.ai](https://platform.z.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"zai\",\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"model\": \"glm-4.5\"\n }\n}\n```\n\n**Popular Models:**\n\n| Model | Description |\n| ------------------ | ------------------------------------ |\n| `glm-4.5` | Flagship GLM model, strong reasoning |\n| `glm-4.5v` | Vision-language model |\n| `glm-4.5-air` | Faster, lighter variant |\n| `glm-4.5-prior` | Priority access variant |\n| `glm-4.5-flash` | Low-latency model |\n| `glm-4.5-air-2504` | April 2025 Air variant |\n| `cogview-4.5` | Image generation model |\n\n**Example Usage:**\n\n```bash\n# Test with curl\ncurl -X POST \"https://api.z.ai/api/paas/v4/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $ZAI_API_KEY\" \\\n -d '{\n \"model\": \"glm-4.5\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-4o # Switch to GPT-4o\n/model anthropic/claude-3-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-4o\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-3-5-sonnet-20241022\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n| ------------ | ------- | -------------------------------- |\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "64dd43837c9cada52795c3b5718f339dc8786509": {"t": 1785764184.0983348, "n": 9664, "h": "51b2b6671d2be175", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"anthropic/claude-sonnet-4\"\n }\n}\nEOF\n```\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n|----------|------|------|---------|----------|\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-4o, o1 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"anthropic/claude-sonnet-4\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `anthropic/claude-sonnet-4` | Best balance of speed and capability |\n| `anthropic/claude-3-opus` | Most capable Claude model |\n| `openai/gpt-4o` | OpenAI's flagship model |\n| `google/gemini-pro-1.5` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n```\n/model anthropic/claude-3-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-4o, o1, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-4o` | Flagship multimodal model |\n| `gpt-4o-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-4o` | OpenAI |\n| `gpt-4o-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-3-5-sonnet-20241022` | Anthropic |\n| `claude-3-5-haiku-20241022` | Anthropic |\n| `gemini-1.5-pro` | Google |\n| `gemini-1.5-flash` | Google |\n\n**Benefits:**\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-4o\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-4o # Switch to GPT-4o\n/model anthropic/claude-3-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-4o\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-3-5-sonnet-20241022\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n|---------|---------|-------------|\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "7a28e6636011201d0dab072cb01678e66de52627": {"t": 1785764185.5838013, "n": 9243, "h": "07b860f0aada5c82", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"anthropic/claude-sonnet-4\"\n }\n}\nEOF\n```\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n|----------|------|------|---------|----------|\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-4o, o1 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"anthropic/claude-sonnet-4\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `anthropic/claude-sonnet-4` | Best balance of speed and capability |\n| `anthropic/claude-3-opus` | Most capable Claude model |\n| `openai/gpt-4o` | OpenAI's flagship model |\n| `google/gemini-pro-1.5` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n```\n/model anthropic/claude-3-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-4o, o1, and other OpenAI models.\n\n**Setup:**\n\n1. Get your API key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-4o` | Flagship multimodal model |\n| `gpt-4o-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-4o\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-4o` | OpenAI |\n| `gpt-4o-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-3-5-sonnet-20241022` | Anthropic |\n| `claude-3-5-haiku-20241022` | Anthropic |\n| `gemini-1.5-pro` | Google |\n| `gemini-1.5-flash` | Google |\n\n**Benefits:**\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-4o\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-4o # Switch to GPT-4o\n/model anthropic/claude-3-opus # Switch to Claude Opus\n```\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-4o\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-3-5-sonnet-20241022\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n|---------|---------|-------------|\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "80d1dd2f1137d50a107970387f4512a5f6371e0b": {"t": 1786067818.907977, "n": 22606, "h": "7d4a3e8c2fbc3a44", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n - [DeepSeek](#deepseek)\n - [AWS Bedrock](#aws-bedrock)\n - [Z.ai](#zai)\n - [Sakana.AI](#sakanaai)\n - [Custom OpenAI-Compatible Providers](#custom-openai-compatible-providers)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\nEOF\n```\n\nBundled provider model choices live in `src/providers/models.json` and packaged builds include the same catalog at `dist/providers/models.json`. The CLI checks the validated public catalog every four hours and retains the bundled data plus its last valid download for offline fallback. To add a newly released model without changing TypeScript, update the relevant provider entry in that JSON file. For local-only overrides, use `~/.autohand/models.json` or set `AUTOHAND_MODELS_CATALOG=/path/to/models.json`; those entries are merged ahead of the downloaded and bundled catalogs. See [Model catalog updates](model-catalog.md) for manual refresh and publication details.\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n| --------------- | ----- | ----------- | ------- | ----------------------------------------------- |\n| **Autohand AI** | Cloud/Local | Account, API key, or local | Low | Fantail ultra-fast coding, Moa thinking, or local MLX coding models |\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-5, o3 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **DeepSeek** | Cloud | Pay-per-use | Low | DeepSeek V4 Flash and V4 Pro models |\n| **AWS Bedrock** | Cloud | Pay-per-use | Low | Enterprise AWS credential-chain and Bedrock APIs |\n| **Z.ai** | Cloud | Pay-per-use | Low | GLM-5.2/5.1 long-context models, CogView image generation |\n| **Sakana.AI** | Cloud | Pay-per-use | Medium | Sakana Fugu multi-agent coding and reasoning models |\n| **Custom** | Cloud/local | Varies | Varies | Any OpenAI-compatible `/chat/completions` endpoint |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### Autohand AI\n\nAutohand AI is the preferred first-party provider. Use `autohandai` with `plan: \"cloud\"` for Autohand-hosted Fantail and Moa models at `https://api.autohand.ai/v1`, or `plan: \"local\"` for Apple Silicon MLX local inference.\n\nCloud mode uses the OpenAI-compatible `/chat/completions` API and defaults to temperature `0.1`.\n\n| Model | Notes |\n| ----- | ----- |\n| `fantail` | Ultra-fast coding model, image input, tool calls, 16k input context |\n| `moa` | Thinking model, image input, medium/high/xhigh effort, 1M input context |\n\nCLI Cloud can use your logged-in Autohand account automatically. SDK Cloud usage must pass an Autohand AI API key (`AUTOHAND_AI_API_KEY`) so SDK workloads are tied to Autohand's API-key systems instead of silently borrowing CLI account auth.\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"cloud\",\n \"authMode\": \"account\",\n \"baseUrl\": \"https://api.autohand.ai/v1\",\n \"model\": \"moa\",\n \"contextWindow\": 1000000,\n \"reasoningEffort\": \"high\"\n }\n}\n```\n\nFor SDK/client-driven Cloud calls:\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"cloud\",\n \"authMode\": \"api-key\",\n \"apiKey\": \"ah-...\",\n \"baseUrl\": \"https://api.autohand.ai/v1\",\n \"model\": \"fantail\"\n }\n}\n```\n\nLocal mode requires macOS on Apple Silicon. When selected from `/model` or setup, Autohand checks for `mlx_lm.server` and `llmfit`, installs missing pieces, asks `llmfit` for coding-focused MLX models this Mac can run, downloads the selected model, starts the MLX OpenAI-compatible server, and persists the server command:\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"local\",\n \"baseUrl\": \"http://127.0.0.1:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Qwen2.5-Coder-7B-Instruct-4bit\",\n \"contextWindow\": 256000,\n \"serverCommand\": \"mlx_lm.server --model mlx-community/Qwen2.5-Coder-7B-Instruct-4bit --port 8080\"\n }\n}\n```\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic via Azure Foundry Models, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `your-modelcard-id-here` | Best balance of speed and capability |\n| `anthropic/claude-5-opus` | Most capable Claude model |\n| `openai/gpt-5` | OpenAI's flagship model |\n| `google/gemini-3.0-pro` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n\n```\n/model anthropic/claude-5-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-5, o3, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-5` | Flagship multimodal model |\n| `gpt-5-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-5\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-5` | OpenAI |\n| `gpt-5-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-5-sonnet` | Anthropic |\n| `claude-5-haiku` | Anthropic |\n| `gemini-3.0-pro` | Google |\n| `gemini-3.0-flash` | Google |\n\n**Benefits:**\n\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-5\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n### DeepSeek\n\nDeepSeek provides an OpenAI-compatible chat completions API for DeepSeek V4 Flash, V4 Pro, and the legacy `deepseek-chat` / `deepseek-reasoner` model IDs.\n\n**Setup:**\n\n1. Get your API key at [platform.deepseek.com/api_keys](https://platform.deepseek.com/api_keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"deepseek\",\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n\n**Available Models:**\n\n| Model | Description |\n| --------------------- | ------------------------------------------------ |\n| `deepseek-v4-flash` | Current fast V4 model, recommended default |\n| `deepseek-v4-pro` | Current stronger V4 model |\n| `deepseek-chat` | Legacy non-thinking alias, deprecated 2026-07-24 |\n| `deepseek-reasoner` | Legacy thinking alias, deprecated 2026-07-24 |\n\n**Example Usage:**\n\n```bash\ncurl -X POST \"https://api.deepseek.com/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DEEPSEEK_API_KEY\" \\\n -d '{\n \"model\": \"deepseek-v4-flash\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### AWS Bedrock\n\nAWS Bedrock is available as `bedrock` for enterprise AWS customers. Autohand supports three inference modes:\n\n| Mode | Choose When |\n| --- | --- |\n| `converse` | Default Bedrock-native mode using AWS credential-chain auth and Bedrock Runtime `Converse`. |\n| `openai-chat` | You are migrating OpenAI Chat Completions clients to Bedrock OpenAI-compatible endpoints. |\n| `openai-responses` | You are migrating OpenAI Responses clients to Bedrock OpenAI-compatible endpoints. |\n\nFor `converse`, configure AWS credentials outside Autohand. Autohand never stores AWS access key IDs or secret access keys. Good setup paths include:\n\n```bash\naws configure sso\nAWS_PROFILE=enterprise-prod autohand\n```\n\nIAM roles, container credentials, and instance metadata also work through the AWS SDK credential chain. Before using a model, enable access for that model in the AWS Bedrock console for the selected region.\n\n**Converse with AWS profile:**\n\n```json\n{\n \"provider\": \"bedrock\",\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n**OpenAI Chat Completions with Bedrock API key:**\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n**OpenAI Responses with Bedrock API key and private endpoint:**\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n\nSecurity note: Bedrock API keys are not OpenAI API keys. Never point Bedrock config at OpenAI base URLs.\n\n**Troubleshooting:**\n\n| Symptom | Fix |\n| --- | --- |\n| Missing AWS credentials | Run `aws configure sso`, set `AWS_PROFILE`, or run Autohand on AWS infrastructure with an IAM role. |\n| Missing region | Set `bedrock.region`, `AWS_REGION`, or `AWS_DEFAULT_REGION`. |\n| Invalid Bedrock API key | Use a Bedrock API key only with `openai-chat` or `openai-responses`. |\n| Model access not enabled | Enable the model in the AWS Bedrock console for the selected region. |\n| Model not available in region | Switch `region`, choose a regional model, or use an inference profile or ARN. |\n| Unsupported API mode | Use `converse` for Bedrock-native models, or an OpenAI-compatible Bedrock model for OpenAI modes. |\n| Throttling or quota | Wait and retry, or request a Bedrock quota increase. |\n| Private endpoint/network failure | Check `endpoint`, VPC endpoint DNS, proxy, and AWS network policy. |\n\n---\n\n### Z.ai\n\nZ.ai (Zhipu AI) provides access to the GLM family of models and CogView for image generation. The API is fully OpenAI-compatible.\n\n**Setup:**\n\n1. Get your API key at [platform.z.ai](https://platform.z.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"zai\",\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"model\": \"glm-5.2\"\n }\n}\n```\n\n**Popular Models:**\n\n| Model | Description |\n| ------------------ | ------------------------------------------------------------------------------- |\n| `glm-5.2` | Latest flagship GLM model for project-scale coding, 1M context, 128K max output |\n| `glm-5.1` | Flagship long-horizon model, 200K context, 128K max output |\n| `glm-4.5` | Previous-generation GLM model, strong reasoning |\n| `glm-4.5v` | Vision-language model |\n| `glm-4.5-air` | Faster, lighter variant |\n| `glm-4.5-prior` | Priority access variant |\n| `glm-4.5-flash` | Low-latency model |\n| `glm-4.5-air-2504` | April 2025 Air variant |\n| `cogview-4.5` | Image generation model |\n\nGLM-5.2 and GLM-5.1 both support thinking mode, streaming output, function calling, context caching, structured output, and MCP.\n\n**Example Usage:**\n\n```bash\n# Test with curl\ncurl -X POST \"https://api.z.ai/api/paas/v4/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $ZAI_API_KEY\" \\\n -d '{\n \"model\": \"glm-5.2\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### Sakana.AI\n\nSakana.AI provides Sakana Fugu through an OpenAI-compatible API. Fugu is a multi-agent system, but Autohand uses it like a standard hosted LLM through the Sakana API.\n\n**Setup:**\n\n1. Create a Sakana API key and store it securely.\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"sakana\",\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\"\n }\n}\n```\n\n**Supported Models:**\n\n| Model | Description |\n| ------------ | ------------------------------------------------- |\n| `fugu` | Default Sakana Fugu model with provider routing |\n| `fugu-ultra` | Stronger Fugu model for complex, long-running work |\n\nFor complex `fugu-ultra` tasks, consider increasing the global network timeout in your Autohand config.\n\n**Example Usage:**\n\n```bash\nexport SAKANA_API_KEY=your-key\n\ncurl -X POST \"https://api.sakana.ai/v1/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $SAKANA_API_KEY\" \\\n -d '{\n \"model\": \"fugu\",\n \"messages\": [{\"role\": \"user\", \"content\": \"How many r are in strawberry?\"}]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-5 # Switch to GPT-5\n/model anthropic/claude-5-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-5\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-5-sonnet\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n### Custom OpenAI-Compatible Providers\n\nUse custom providers when a service exposes an OpenAI-compatible API but is not bundled into Autohand. This keeps the built-in provider list small while still supporting team gateways, private deployments, and new hosted providers.\n\nFrom the TUI, run `/model`, choose **New provider...**, then enter:\n\n- provider display name\n- OpenAI-compatible base URL\n- whether an API key is required\n- model id\n- optional context window and reasoning effort\n\nAutohand verifies the base URL, API key, and selected model through the OpenAI-compatible `/models` endpoint before saving the provider. If `/models` returns model IDs, the selected model must be present in that list.\n\nThe saved config uses `provider: \"custom:<id>\"` and stores provider details under `customProviders`:\n\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n }\n}\n```\n\nFor local gateways without bearer auth:\n\n```json\n{\n \"provider\": \"custom:local-openai\",\n \"customProviders\": {\n \"local-openai\": {\n \"id\": \"local-openai\",\n \"displayName\": \"Local OpenAI Proxy\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"http://localhost:8080/v1\",\n \"apiKeyRequired\": false,\n \"model\": \"local-code-model\",\n \"contextWindow\": 131072\n }\n }\n}\n```\n\nCustom provider telemetry and session sync include the provider id, display name, API format, model id, reasoning effort, and context window when available. Secrets such as `apiKey` are not sent. When `reasoningEffort` is set, Autohand sends it to the provider as `reasoning_effort`.\n\nYou can remove a custom provider from `/model` by opening that provider's settings and choosing **Remove custom provider**.\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n| ------------ | ------- | -------------------------------- |\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}, "b98c38d7d017a0c7c9422a24db09481cef31b4f4": {"t": 1786068472.4602468, "n": 22606, "h": "7d4a3e8c2fbc3a44", "c": "# Autohand LLM Providers Guide\n\nAutohand supports multiple LLM providers, giving you flexibility to choose between cloud-hosted APIs and local inference options. This guide covers setup, configuration, and best practices for each provider.\n\n## Table of Contents\n\n- [Quick Start](#quick-start)\n- [Provider Comparison](#provider-comparison)\n- [Cloud Providers](#cloud-providers)\n - [OpenRouter](#openrouter)\n - [OpenAI](#openai)\n - [LLM Gateway](#llm-gateway)\n - [DeepSeek](#deepseek)\n - [AWS Bedrock](#aws-bedrock)\n - [Z.ai](#zai)\n - [Sakana.AI](#sakanaai)\n - [Custom OpenAI-Compatible Providers](#custom-openai-compatible-providers)\n- [Local Providers](#local-providers)\n - [Ollama](#ollama)\n - [llama.cpp](#llamacpp)\n - [MLX (Apple Silicon)](#mlx-apple-silicon)\n- [Switching Providers](#switching-providers)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Quick Start\n\nThe fastest way to get started is with OpenRouter (the default provider):\n\n```bash\n# Run setup wizard\nautohand --setup\n\n# Or manually configure\ncat > ~/.autohand/config.json << 'EOF'\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\nEOF\n```\n\nBundled provider model choices live in `src/providers/models.json` and packaged builds include the same catalog at `dist/providers/models.json`. The CLI checks the validated public catalog every four hours and retains the bundled data plus its last valid download for offline fallback. To add a newly released model without changing TypeScript, update the relevant provider entry in that JSON file. For local-only overrides, use `~/.autohand/models.json` or set `AUTOHAND_MODELS_CATALOG=/path/to/models.json`; those entries are merged ahead of the downloaded and bundled catalogs. See [Model catalog updates](model-catalog.md) for manual refresh and publication details.\n\n---\n\n## Provider Comparison\n\n| Provider | Type | Cost | Latency | Best For |\n| --------------- | ----- | ----------- | ------- | ----------------------------------------------- |\n| **Autohand AI** | Cloud/Local | Account, API key, or local | Low | Fantail ultra-fast coding, Moa thinking, or local MLX coding models |\n| **OpenRouter** | Cloud | Pay-per-use | Low | Access to 100+ models, recommended default |\n| **OpenAI** | Cloud | Pay-per-use | Low | Direct OpenAI access, GPT-5, o3 models |\n| **LLM Gateway** | Cloud | Pay-per-use | Low | Unified API for multiple providers |\n| **DeepSeek** | Cloud | Pay-per-use | Low | DeepSeek V4 Flash and V4 Pro models |\n| **AWS Bedrock** | Cloud | Pay-per-use | Low | Enterprise AWS credential-chain and Bedrock APIs |\n| **Z.ai** | Cloud | Pay-per-use | Low | GLM-5.2/5.1 long-context models, CogView image generation |\n| **Sakana.AI** | Cloud | Pay-per-use | Medium | Sakana Fugu multi-agent coding and reasoning models |\n| **Custom** | Cloud/local | Varies | Varies | Any OpenAI-compatible `/chat/completions` endpoint |\n| **Ollama** | Local | Free | Medium | Privacy-focused, offline work |\n| **llama.cpp** | Local | Free | Low | Performance-focused local inference |\n| **MLX** | Local | Free | Low | Apple Silicon optimized |\n\n---\n\n## Cloud Providers\n\n### Autohand AI\n\nAutohand AI is the preferred first-party provider. Use `autohandai` with `plan: \"cloud\"` for Autohand-hosted Fantail and Moa models at `https://api.autohand.ai/v1`, or `plan: \"local\"` for Apple Silicon MLX local inference.\n\nCloud mode uses the OpenAI-compatible `/chat/completions` API and defaults to temperature `0.1`.\n\n| Model | Notes |\n| ----- | ----- |\n| `fantail` | Ultra-fast coding model, image input, tool calls, 16k input context |\n| `moa` | Thinking model, image input, medium/high/xhigh effort, 1M input context |\n\nCLI Cloud can use your logged-in Autohand account automatically. SDK Cloud usage must pass an Autohand AI API key (`AUTOHAND_AI_API_KEY`) so SDK workloads are tied to Autohand's API-key systems instead of silently borrowing CLI account auth.\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"cloud\",\n \"authMode\": \"account\",\n \"baseUrl\": \"https://api.autohand.ai/v1\",\n \"model\": \"moa\",\n \"contextWindow\": 1000000,\n \"reasoningEffort\": \"high\"\n }\n}\n```\n\nFor SDK/client-driven Cloud calls:\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"cloud\",\n \"authMode\": \"api-key\",\n \"apiKey\": \"ah-...\",\n \"baseUrl\": \"https://api.autohand.ai/v1\",\n \"model\": \"fantail\"\n }\n}\n```\n\nLocal mode requires macOS on Apple Silicon. When selected from `/model` or setup, Autohand checks for `mlx_lm.server` and `llmfit`, installs missing pieces, asks `llmfit` for coding-focused MLX models this Mac can run, downloads the selected model, starts the MLX OpenAI-compatible server, and persists the server command:\n\n```json\n{\n \"provider\": \"autohandai\",\n \"autohandai\": {\n \"plan\": \"local\",\n \"baseUrl\": \"http://127.0.0.1:8080\",\n \"port\": 8080,\n \"model\": \"mlx-community/Qwen2.5-Coder-7B-Instruct-4bit\",\n \"contextWindow\": 256000,\n \"serverCommand\": \"mlx_lm.server --model mlx-community/Qwen2.5-Coder-7B-Instruct-4bit --port 8080\"\n }\n}\n```\n\n### OpenRouter\n\nOpenRouter provides a unified API to access 100+ models from various providers (Anthropic via Azure Foundry Models, OpenAI, Google, Meta, etc.) with a single API key.\n\n**Setup:**\n\n1. Get your API key at [openrouter.ai/keys](https://openrouter.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"openrouter\",\n \"openrouter\": {\n \"apiKey\": \"sk-or-v1-your-key-here\",\n \"model\": \"your-modelcard-id-here\"\n }\n}\n```\n\n**Popular Models:**\n| Model | Description |\n|-------|-------------|\n| `your-modelcard-id-here` | Best balance of speed and capability |\n| `anthropic/claude-5-opus` | Most capable Claude model |\n| `openai/gpt-5` | OpenAI's flagship model |\n| `google/gemini-3.0-pro` | Google's latest model |\n| `meta-llama/llama-3.1-70b-instruct` | Open-source alternative |\n\n**Switching Models:**\n\n```\n/model anthropic/claude-5-opus\n```\n\n---\n\n### OpenAI\n\nDirect access to OpenAI's API for GPT-5, o3, and other OpenAI models.\n\n**Setup:**\n\n1. Choose one of these authentication methods:\n2. API key: get your key at [platform.openai.com/api-keys](https://platform.openai.com/api-keys)\n3. ChatGPT subscription: sign in through Autohand's built-in OpenAI device login flow when prompted\n4. Configure Autohand:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"api-key\",\n \"apiKey\": \"sk-your-openai-key\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\nOr use ChatGPT auth:\n\n```json\n{\n \"provider\": \"openai\",\n \"openai\": {\n \"authMode\": \"chatgpt\",\n \"model\": \"gpt-5.4\"\n }\n}\n```\n\n**Available Models:**\n| Model | Description |\n|-------|-------------|\n| `gpt-5` | Flagship multimodal model |\n| `gpt-5-mini` | Faster, cheaper alternative |\n| `gpt-4-turbo` | Previous generation flagship |\n| `o1-preview` | Advanced reasoning model |\n| `o1-mini` | Faster reasoning model |\n\n---\n\n### LLM Gateway\n\nLLM Gateway provides a unified API for multiple LLM providers with a single integration point. It's OpenAI-compatible and supports models from OpenAI, Anthropic, Google, and more.\n\n**Setup:**\n\n1. Create an account at [llmgateway.io](https://llmgateway.io)\n2. Get your API key from the [dashboard](https://llmgateway.io/dashboard)\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-llmgateway-api-key\",\n \"model\": \"gpt-5\"\n }\n}\n```\n\n**Supported Models:**\n| Model | Provider |\n|-------|----------|\n| `gpt-5` | OpenAI |\n| `gpt-5-mini` | OpenAI |\n| `gpt-4-turbo` | OpenAI |\n| `claude-5-sonnet` | Anthropic |\n| `claude-5-haiku` | Anthropic |\n| `gemini-3.0-pro` | Google |\n| `gemini-3.0-flash` | Google |\n\n**Benefits:**\n\n- Single API key for multiple providers\n- Unified billing and usage tracking\n- OpenAI-compatible API format\n- Automatic failover between providers\n\n**Example Usage:**\n\n```bash\n# Using with curl (for testing)\ncurl -X POST https://api.llmgateway.io/v1/chat/completions \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $LLM_GATEWAY_API_KEY\" \\\n -d '{\n \"model\": \"gpt-5\",\n \"messages\": [\n {\"role\": \"user\", \"content\": \"Hello!\"}\n ]\n }'\n```\n\n---\n\n### DeepSeek\n\nDeepSeek provides an OpenAI-compatible chat completions API for DeepSeek V4 Flash, V4 Pro, and the legacy `deepseek-chat` / `deepseek-reasoner` model IDs.\n\n**Setup:**\n\n1. Get your API key at [platform.deepseek.com/api_keys](https://platform.deepseek.com/api_keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"deepseek\",\n \"deepseek\": {\n \"apiKey\": \"your-deepseek-api-key\",\n \"model\": \"deepseek-v4-flash\"\n }\n}\n```\n\n**Available Models:**\n\n| Model | Description |\n| --------------------- | ------------------------------------------------ |\n| `deepseek-v4-flash` | Current fast V4 model, recommended default |\n| `deepseek-v4-pro` | Current stronger V4 model |\n| `deepseek-chat` | Legacy non-thinking alias, deprecated 2026-07-24 |\n| `deepseek-reasoner` | Legacy thinking alias, deprecated 2026-07-24 |\n\n**Example Usage:**\n\n```bash\ncurl -X POST \"https://api.deepseek.com/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DEEPSEEK_API_KEY\" \\\n -d '{\n \"model\": \"deepseek-v4-flash\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### AWS Bedrock\n\nAWS Bedrock is available as `bedrock` for enterprise AWS customers. Autohand supports three inference modes:\n\n| Mode | Choose When |\n| --- | --- |\n| `converse` | Default Bedrock-native mode using AWS credential-chain auth and Bedrock Runtime `Converse`. |\n| `openai-chat` | You are migrating OpenAI Chat Completions clients to Bedrock OpenAI-compatible endpoints. |\n| `openai-responses` | You are migrating OpenAI Responses clients to Bedrock OpenAI-compatible endpoints. |\n\nFor `converse`, configure AWS credentials outside Autohand. Autohand never stores AWS access key IDs or secret access keys. Good setup paths include:\n\n```bash\naws configure sso\nAWS_PROFILE=enterprise-prod autohand\n```\n\nIAM roles, container credentials, and instance metadata also work through the AWS SDK credential chain. Before using a model, enable access for that model in the AWS Bedrock console for the selected region.\n\n**Converse with AWS profile:**\n\n```json\n{\n \"provider\": \"bedrock\",\n \"bedrock\": {\n \"apiMode\": \"converse\",\n \"authMode\": \"aws-credentials\",\n \"profile\": \"enterprise-prod\",\n \"region\": \"us-east-1\",\n \"model\": \"anthropic.claude-3-5-sonnet-20241022-v2:0\"\n }\n}\n```\n\n**OpenAI Chat Completions with Bedrock API key:**\n\n```yaml\nprovider: bedrock\nbedrock:\n apiMode: openai-chat\n authMode: bedrock-api-key\n apiKey: bedrock-api-key\n region: us-east-1\n model: openai.gpt-oss-120b-1:0\n```\n\n**OpenAI Responses with Bedrock API key and private endpoint:**\n\n```toml\nprovider = \"bedrock\"\n\n[bedrock]\napiMode = \"openai-responses\"\nauthMode = \"bedrock-api-key\"\napiKey = \"bedrock-api-key\"\nregion = \"us-west-2\"\nendpoint = \"https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1\"\nmodel = \"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0\"\n```\n\nSecurity note: Bedrock API keys are not OpenAI API keys. Never point Bedrock config at OpenAI base URLs.\n\n**Troubleshooting:**\n\n| Symptom | Fix |\n| --- | --- |\n| Missing AWS credentials | Run `aws configure sso`, set `AWS_PROFILE`, or run Autohand on AWS infrastructure with an IAM role. |\n| Missing region | Set `bedrock.region`, `AWS_REGION`, or `AWS_DEFAULT_REGION`. |\n| Invalid Bedrock API key | Use a Bedrock API key only with `openai-chat` or `openai-responses`. |\n| Model access not enabled | Enable the model in the AWS Bedrock console for the selected region. |\n| Model not available in region | Switch `region`, choose a regional model, or use an inference profile or ARN. |\n| Unsupported API mode | Use `converse` for Bedrock-native models, or an OpenAI-compatible Bedrock model for OpenAI modes. |\n| Throttling or quota | Wait and retry, or request a Bedrock quota increase. |\n| Private endpoint/network failure | Check `endpoint`, VPC endpoint DNS, proxy, and AWS network policy. |\n\n---\n\n### Z.ai\n\nZ.ai (Zhipu AI) provides access to the GLM family of models and CogView for image generation. The API is fully OpenAI-compatible.\n\n**Setup:**\n\n1. Get your API key at [platform.z.ai](https://platform.z.ai/keys)\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"zai\",\n \"zai\": {\n \"apiKey\": \"your-zai-api-key\",\n \"model\": \"glm-5.2\"\n }\n}\n```\n\n**Popular Models:**\n\n| Model | Description |\n| ------------------ | ------------------------------------------------------------------------------- |\n| `glm-5.2` | Latest flagship GLM model for project-scale coding, 1M context, 128K max output |\n| `glm-5.1` | Flagship long-horizon model, 200K context, 128K max output |\n| `glm-4.5` | Previous-generation GLM model, strong reasoning |\n| `glm-4.5v` | Vision-language model |\n| `glm-4.5-air` | Faster, lighter variant |\n| `glm-4.5-prior` | Priority access variant |\n| `glm-4.5-flash` | Low-latency model |\n| `glm-4.5-air-2504` | April 2025 Air variant |\n| `cogview-4.5` | Image generation model |\n\nGLM-5.2 and GLM-5.1 both support thinking mode, streaming output, function calling, context caching, structured output, and MCP.\n\n**Example Usage:**\n\n```bash\n# Test with curl\ncurl -X POST \"https://api.z.ai/api/paas/v4/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $ZAI_API_KEY\" \\\n -d '{\n \"model\": \"glm-5.2\",\n \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n }'\n```\n\n---\n\n### Sakana.AI\n\nSakana.AI provides Sakana Fugu through an OpenAI-compatible API. Fugu is a multi-agent system, but Autohand uses it like a standard hosted LLM through the Sakana API.\n\n**Setup:**\n\n1. Create a Sakana API key and store it securely.\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"sakana\",\n \"sakana\": {\n \"apiKey\": \"your-sakana-api-key\",\n \"baseUrl\": \"https://api.sakana.ai/v1\",\n \"model\": \"fugu\"\n }\n}\n```\n\n**Supported Models:**\n\n| Model | Description |\n| ------------ | ------------------------------------------------- |\n| `fugu` | Default Sakana Fugu model with provider routing |\n| `fugu-ultra` | Stronger Fugu model for complex, long-running work |\n\nFor complex `fugu-ultra` tasks, consider increasing the global network timeout in your Autohand config.\n\n**Example Usage:**\n\n```bash\nexport SAKANA_API_KEY=your-key\n\ncurl -X POST \"https://api.sakana.ai/v1/chat/completions\" \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $SAKANA_API_KEY\" \\\n -d '{\n \"model\": \"fugu\",\n \"messages\": [{\"role\": \"user\", \"content\": \"How many r are in strawberry?\"}]\n }'\n```\n\n---\n\n## Local Providers\n\n### Ollama\n\nOllama makes it easy to run open-source LLMs locally. Great for privacy-conscious users or offline work.\n\n**Setup:**\n\n1. Install Ollama: [ollama.ai](https://ollama.ai)\n2. Pull a model:\n ```bash\n ollama pull llama3.2\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"model\": \"llama3.2\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | Size | Description |\n|-------|------|-------------|\n| `llama3.2` | 3B | Fast, good for simple tasks |\n| `llama3.2:70b` | 70B | High quality, needs 64GB+ RAM |\n| `codellama` | 7B-34B | Optimized for code |\n| `mistral` | 7B | Good balance |\n| `mixtral` | 47B | High quality mixture-of-experts |\n\n**Custom Ollama Server:**\n\n```json\n{\n \"provider\": \"ollama\",\n \"ollama\": {\n \"baseUrl\": \"http://192.168.1.100:11434\",\n \"model\": \"llama3.2\"\n }\n}\n```\n\n---\n\n### llama.cpp\n\nllama.cpp provides high-performance local inference with GGUF models.\n\n**Setup:**\n\n1. Build and run llama.cpp server:\n ```bash\n git clone https://github.com/ggerganov/llama.cpp\n cd llama.cpp\n make\n ./llama-server -m /path/to/model.gguf\n ```\n2. Configure Autohand:\n\n```json\n{\n \"provider\": \"llamacpp\",\n \"llamacpp\": {\n \"baseUrl\": \"http://localhost:8080\",\n \"model\": \"default\"\n }\n}\n```\n\n**Finding GGUF Models:**\n\n- [Hugging Face GGUF Models](https://huggingface.co/models?search=gguf)\n- Popular: `TheBloke/Llama-2-7B-GGUF`, `TheBloke/CodeLlama-13B-GGUF`\n\n---\n\n### MLX (Apple Silicon)\n\nMLX is optimized for Apple Silicon Macs, providing fast local inference.\n\n**Requirements:**\n\n- macOS with Apple Silicon (M1/M2/M3)\n- Python 3.10+\n\n**Setup:**\n\n1. Install MLX:\n ```bash\n pip install mlx-lm\n ```\n2. Run the server:\n ```bash\n mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit\n ```\n3. Configure Autohand:\n\n```json\n{\n \"provider\": \"mlx\",\n \"mlx\": {\n \"model\": \"mlx-community/Llama-3.2-3B-Instruct-4bit\"\n }\n}\n```\n\n**Recommended Models:**\n| Model | RAM | Description |\n|-------|-----|-------------|\n| `mlx-community/Llama-3.2-3B-Instruct-4bit` | 4GB | Fast, good for simple tasks |\n| `mlx-community/Llama-3.2-8B-Instruct-4bit` | 8GB | Better quality |\n| `mlx-community/Mistral-7B-Instruct-v0.2-4bit` | 8GB | Good balance |\n\n---\n\n## Switching Providers\n\n### Interactive Mode\n\nUse the `/model` command to switch providers or models:\n\n```\n/model # List available models\n/model gpt-5 # Switch to GPT-5\n/model anthropic/claude-5-opus # Switch to Claude Opus\n```\n\nWhen you pick `openai`, Autohand now lets you choose between `API key` and `ChatGPT account` authentication.\n\n### CLI Flag\n\nOverride the default provider for a single session:\n\n```bash\nautohand --model gpt-5\n```\n\n### Editing Config\n\nUpdate `~/.autohand/config.json`:\n\n```json\n{\n \"provider\": \"llmgateway\",\n \"llmgateway\": {\n \"apiKey\": \"your-key\",\n \"model\": \"claude-5-sonnet\"\n }\n}\n```\n\n---\n\n## Troubleshooting\n\n### Authentication Errors\n\n**Symptom:** \"Authentication failed\" or \"Invalid API key\"\n\n**Solutions:**\n\n1. Verify your API key is correct in the config\n2. Check the key hasn't expired\n3. Ensure you have credits/quota remaining\n\n### Connection Errors\n\n**Symptom:** \"Unable to connect\" or timeout errors\n\n**Solutions:**\n\n1. Check internet connection\n2. Verify the base URL is correct\n3. For local providers, ensure the server is running\n4. Check firewall settings\n\n### Model Not Found\n\n**Symptom:** \"Model not found\" error\n\n**Solutions:**\n\n1. Verify the model name is spelled correctly\n2. Check if you have access to the model (some require approval)\n3. For local providers, ensure the model is downloaded\n\n### Rate Limiting\n\n**Symptom:** \"Rate limit exceeded\" errors\n\n**Solutions:**\n\n1. Wait and retry\n2. Use a different model\n3. Upgrade your API plan\n4. Configure retry settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"retryDelay\": 2000\n }\n}\n```\n\n### Local Provider Performance\n\n**Symptom:** Slow responses from local models\n\n**Solutions:**\n\n1. Use a smaller model (e.g., 7B instead of 70B)\n2. Use quantized models (Q4, Q5, Q8)\n3. Ensure you have sufficient RAM\n4. For MLX, ensure you're on Apple Silicon\n5. Close other memory-intensive applications\n\n---\n\n### Custom OpenAI-Compatible Providers\n\nUse custom providers when a service exposes an OpenAI-compatible API but is not bundled into Autohand. This keeps the built-in provider list small while still supporting team gateways, private deployments, and new hosted providers.\n\nFrom the TUI, run `/model`, choose **New provider...**, then enter:\n\n- provider display name\n- OpenAI-compatible base URL\n- whether an API key is required\n- model id\n- optional context window and reasoning effort\n\nAutohand verifies the base URL, API key, and selected model through the OpenAI-compatible `/models` endpoint before saving the provider. If `/models` returns model IDs, the selected model must be present in that list.\n\nThe saved config uses `provider: \"custom:<id>\"` and stores provider details under `customProviders`:\n\n```json\n{\n \"provider\": \"custom:acme\",\n \"customProviders\": {\n \"acme\": {\n \"id\": \"acme\",\n \"displayName\": \"Acme AI\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"https://api.acme.example/v1\",\n \"apiKey\": \"acme-api-key\",\n \"apiKeyRequired\": true,\n \"model\": \"acme-code-1\",\n \"contextWindow\": 256000,\n \"reasoningEffort\": \"high\"\n }\n }\n}\n```\n\nFor local gateways without bearer auth:\n\n```json\n{\n \"provider\": \"custom:local-openai\",\n \"customProviders\": {\n \"local-openai\": {\n \"id\": \"local-openai\",\n \"displayName\": \"Local OpenAI Proxy\",\n \"apiFormat\": \"openai-compatible\",\n \"baseUrl\": \"http://localhost:8080/v1\",\n \"apiKeyRequired\": false,\n \"model\": \"local-code-model\",\n \"contextWindow\": 131072\n }\n }\n}\n```\n\nCustom provider telemetry and session sync include the provider id, display name, API format, model id, reasoning effort, and context window when available. Secrets such as `apiKey` are not sent. When `reasoningEffort` is set, Autohand sends it to the provider as `reasoning_effort`.\n\nYou can remove a custom provider from `/model` by opening that provider's settings and choosing **Remove custom provider**.\n\n---\n\n## Environment Variables\n\nOverride config settings with environment variables:\n\n```bash\n# Set API keys\nexport OPENROUTER_API_KEY=sk-or-v1-xxx\nexport OPENAI_API_KEY=sk-xxx\nexport LLM_GATEWAY_API_KEY=your-key\n\n# Override provider for session\nAUTOHAND_PROVIDER=ollama autohand\n```\n\n---\n\n## Network Configuration\n\nAll cloud providers support custom network settings:\n\n```json\n{\n \"network\": {\n \"maxRetries\": 3,\n \"timeout\": 30000,\n \"retryDelay\": 1000\n }\n}\n```\n\n| Setting | Default | Description |\n| ------------ | ------- | -------------------------------- |\n| `maxRetries` | 3 | Max retry attempts (capped at 5) |\n| `timeout` | 30000 | Request timeout in ms |\n| `retryDelay` | 1000 | Base delay between retries |\n\nRetries use exponential backoff: `retryDelay * 2^attempt`\n"}}}}