Autohand Reference konfigurace

June 23, 2026 · View on GitHub

Kompletní reference pro všechny možnosti konfigurace v ~/.autohand/config.json (nebo .toml/.yaml/.yml).

Tip: Většinu nastavení níže lze změnit interaktivně pomocí příkazu /settings namísto ruční úpravy souboru.

Lokalizované reference:

Obsah


Umístění konfiguračního souboru

Autohand hledá konfiguraci v tomto pořadí:

  1. AUTOHAND_CONFIG proměnná prostředí (vlastní cesta)
  2. ~/.autohand/config.toml
  3. ~/.autohand/config.yaml
  4. ~/.autohand/config.yml
  5. ~/.autohand/config.json (výchozí)

Můžete také přepsat základní adresář:

export AUTOHAND_HOME=/custom/path  # Changes ~/.autohand to /custom/path

Proměnné prostředí

ProměnnáPopisPříklad
AUTOHAND_HOMEZákladní adresář pro všechna data Autohand/custom/path
AUTOHAND_CONFIGVlastní cesta konfiguračního souboru/path/to/config.toml
AUTOHAND_API_URLKoncový bod API (přepíše konfiguraci)https://api.autohand.ai
AUTOHAND_SECRETTajný klíč společnosti/týmusk-xxx
AUTOHAND_PERMISSION_CALLBACK_URLURL pro zpětné volání oprávnění (experimentální)http://localhost:3000/callback
AUTOHAND_PERMISSION_CALLBACK_TIMEOUTČasový limit pro zpětné volání oprávnění v ms5000
AUTOHAND_NON_INTERACTIVESpustit v neinteraktivním režimu1
AUTOHAND_YESAutomaticky potvrdit všechny výzvy1
AUTOHAND_NO_BANNERZakázat úvodní banner1
AUTOHAND_STREAM_TOOL_OUTPUTStreamujte výstup nástroje v reálném čase1
AUTOHAND_DEBUGPovolit protokolování ladění1
AUTOHAND_THINKING_LEVELNastavte úroveň hloubky uvažovánínormal
AUTOHAND_CLIENT_NAMEIdentifikátor klienta/editor (nastavený rozšířeními ACP)zed
AUTOHAND_CLIENT_VERSIONVerze klienta (nastavená rozšířeními ACP)0.169.0
AUTOHAND_CODEPříznak detekce prostředí (automaticky nastavený)1
AUTOHAND_CODE_SIMPLEPovolit holý režim bez předání --bare1

Úroveň myšlení

Proměnná prostředí AUTOHAND_THINKING_LEVEL řídí hloubku uvažování, které model používá:

HodnotaPopis
nonePřímé odpovědi bez viditelného zdůvodnění
normalStandardní hloubka uvažování (výchozí)
extendedHluboké zdůvodnění složitých úkolů ukazuje podrobnější myšlenkový proces

To je obvykle nastaveno klientskými rozšířeními ACP (jako Zed) prostřednictvím rozevíracího seznamu konfigurace.

# Example: Use extended thinking for complex tasks
AUTOHAND_THINKING_LEVEL=extended autohand --prompt "refactor this module"

Holý režim

Holý režim začíná Autohand pouze s explicitně požadovanými integracemi kontextu a běhového prostředí. Povolte ji buď:

autohand --bare
AUTOHAND_CODE_SIMPLE=1 autohand

Když je předán --bare, Autohand také nastaví AUTOHAND_CODE_SIMPLE=1 pro běžící proces.

Holý režim zakáže automatické spouštění a interaktivní integrace:

  • háčky a upozornění na háčky
  • Spuštění LSP
  • synchronizace zásuvných modulů, automatické načítání zásuvných modulů a automatické načítání metanástrojů
  • atribuce, telemetrie, synchronizace relace, automatické hlášení a pingy na pozadí
  • kontext automatického zavádění paměti/relace
  • návrhy výzev na pozadí, kontroly aktualizací, načítání příznaků funkcí a předběžné načítání metadat modelu
  • klíčenka a záložní ověřování OAuth prohlížeče
  • automatické zjišťování AGENTS.md a instrukcí poskytovatele
  • všechny příkazy lomítka, včetně holého / napsaného do výzvy

Absolutní cesty k souboru ve tvaru lomítka, jako je /Users/alex/project/file.ts, jsou stále považovány za normální text výzvy. Vstup lomítka ve tvaru příkazu, například /help, /model nebo /mcp, vytiskne Slash commands are disabled in bare mode. a neprovede se.

Autentizace v holém režimu je pouze explicitní. Autohand nejprve přečte AUTOHAND_API_KEY a poté auth.apiKeyHelper, pokud je nakonfigurován. Nečte přihlašovací údaje klíčenek ani nespouští přihlášení OAuth/prohlížeč. Poskytovatelé třetích stran nadále používají své klíče API a konfiguraci specifické pro poskytovatele.

Tyto explicitní vstupy zůstávají dostupné v holém režimu:

VstupPopis
--system-prompt <value>Nahraďte systémovou výzvu vloženým textem nebo hodnotou podobnou cestě
--system-prompt-file <path>Nahraďte systémovou výzvu obsahem souboru
--append-system-prompt <value>Připojte vložený text nebo hodnotu podobnou cestě do systémové výzvy
--append-system-prompt-file <path>Připojte obsah souboru do systémového řádku
--add-dir <path...>Přidat explicitní adresáře do rozsahu pracovního prostoru
--mcp-config <path>Načtěte explicitní konfigurační soubor MCP
--settingsOtevřete nastavení přímo z příznaku CLI
--config <path>Použijte explicitní konfigurační soubor Autohand
--agents <json|path>Načtěte explicitní inline agenty JSON nebo adresář explicitních agentů
--plugin-dir <path>Načtěte explicitní adresář plugin/meta-tool

Nastavení poskytovatele

provider

Aktivní poskytovatel LLM k použití.

HodnotaPopis
"openrouter"OpenRouter API (výchozí)
"ollama"Místní instance Ollamy
"llamacpp"Místní server lama.cpp
"openai"OpenAI API přímo
"mlx"MLX na Apple Silicon (místní)
"llmgateway"LLM Gateway jednotné API
"deepseek"DeepSeek API
"zai"Z.ai GLM API
"sakana"Sakana.AI Fugu API
"bedrock"AWS Bedrock
"custom:<id>"Uživatelem definovaný poskytovatel kompatibilní s OpenAI od customProviders

openrouter

Konfigurace poskytovatele OpenRouter.

{
  "openrouter": {
    "apiKey": "sk-or-v1-xxx",
    "baseUrl": "https://openrouter.ai/api/v1",
    "model": "your-modelcard-id-here",
    "contextWindow": 262144
  }
}
PoleTypPovinnéVýchozíPopis
apiKeyřetězecAno-Váš klíč API OpenRouter
baseUrlřetězecNehttps://openrouter.ai/api/v1Koncový bod API
modelřetězecAno-Identifikátor modelu (např. your-modelcard-id-here)
contextWindowčísloNeAutoKontextové okno přesného modelu. Autohand to vyplní z OpenRouter, když je známo.

zai

Konfigurace poskytovatele Z.ai.

{
  "zai": {
    "apiKey": "your-zai-api-key",
    "baseUrl": "https://api.z.ai/api/paas/v4",
    "model": "glm-5.2",
    "contextWindow": 1000000
  }
}
PoleTypPovinnéVýchozíPopis
apiKeyřetězecAno-Váš klíč API Z.ai
baseUrlřetězecNehttps://api.z.ai/api/paas/v4Koncový bod API
modelřetězecAnoglm-5.2Identifikátor modelu, například glm-5.2, glm-5.1 nebo glm-4.5
contextWindowčísloNeAutoKontextové okno přesného modelu. Autohand odvodí 1 milion pro GLM-5.2 a 200 000 pro GLM-5.1.

sakana

Konfigurace poskytovatele Sakana.AI. Rozhraní API je kompatibilní s OpenAI a jako základní URL používá https://api.sakana.ai/v1.

{
  "sakana": {
    "apiKey": "your-sakana-api-key",
    "baseUrl": "https://api.sakana.ai/v1",
    "model": "fugu",
    "contextWindow": 1000000
  }
}
PoleTypPovinnéVýchozíPopis
apiKeyřetězecAno-Váš klíč API Sakana
baseUrlřetězecNehttps://api.sakana.ai/v1Koncový bod API
modelřetězecAnofuguIdentifikátor modelu, například fugu nebo fugu-ultra
contextWindowčísloNeAutoKontextové okno přesného modelu. Autohand odvodí 1M pro modely Fugu.

customProviders

Vlastní poskytovatelé umožňují uživatelům přinést koncový bod kompatibilní s OpenAI bez změny kódu nebo nového poskytovatele v balíčku. Přidejte poskytovatele pod customProviders a poté jej vyberte pomocí provider: "custom:<id>". Stejný postup je k dispozici od /model s Novým poskytovatelem.... Během nastavení Autohand před uložením poskytovatele ověří základní adresu URL, ověření a vybraný model prostřednictvím koncového bodu /models kompatibilního s OpenAI.

{
  "provider": "custom:acme",
  "customProviders": {
    "acme": {
      "id": "acme",
      "displayName": "Acme AI",
      "apiFormat": "openai-compatible",
      "baseUrl": "https://api.acme.example/v1",
      "apiKey": "acme-api-key",
      "apiKeyRequired": true,
      "model": "acme-code-1",
      "contextWindow": 256000,
      "reasoningEffort": "high",
      "models": [
        {
          "id": "acme-code-1",
          "label": "Acme Code 1",
          "contextWindow": 256000,
          "reasoningEffort": "high"
        }
      ]
    }
  }
}

U místních serverů kompatibilních s OpenAI, které nevyžadují ověření, nastavte apiKeyRequired na false a vynechejte apiKey.

PoleTypPovinnéVýchozíPopis
idřetězecAno-ID stabilního poskytovatele. Musí odpovídat klíči objektu a je vybrán jako custom:<id>.
displayNameřetězecAno-Jméno zobrazené v /model a nastavení poskytovatele.
apiFormatřetězecAno-Musí být openai-compatible.
baseUrlřetězecAno-Kořen koncového bodu, například https://api.example.com/v1. Autohand ověří /models a zavolá /chat/completions.
apiKeyřetězecPodmíněné-Nosný token pro hostované koncové body. Vyžadováno, když je apiKeyRequired pravdivé.
apiKeyRequiredbooleovskýNetrueNastavte hodnotu false pro místní nebo již ověřené brány.
modelřetězecAno-ID aktivního modelu.
contextWindowčísloNeAutoPřesné kontextové okno pro token budgeting, stav, telemetrii a metadata synchronizace.
reasoningEffortřetězecNe-Volitelné none, low, medium, high nebo xhigh. Odesláno jako reasoning_effort pro vlastní požadavky kompatibilní s OpenAI.
modelspoleNe-Volitelné položky pro výběr modelu s kontextem jednotlivých modelů a metadaty zdůvodnění.

ollama

Konfigurace poskytovatele Ollama.

{
  "ollama": {
    "baseUrl": "http://localhost:11434",
    "port": 11434,
    "model": "llama3.2"
  }
}
PoleTypPovinnéVýchozíPopis
baseUrlřetězecNehttp://localhost:11434URL serveru Ollama
portčísloNe11434Port serveru (alternativa k baseUrl)
modelřetězecAno-Název modelu (např. llama3.2, codellama)

llamacpp

konfigurace serveru lama.cpp.

{
  "llamacpp": {
    "baseUrl": "http://localhost:8080",
    "port": 8080,
    "model": "default"
  }
}
PoleTypPovinnéVýchozíPopis
baseUrlřetězecNehttp://localhost:8080URL serveru lama.cpp
portčísloNe8080Port serveru
modelřetězecAno-Identifikátor modelu

openai

Konfigurace OpenAI API.

{
  "openai": {
    "authMode": "api-key",
    "apiKey": "sk-xxx",
    "baseUrl": "https://api.openai.com/v1",
    "model": "gpt-5.4"
  }
}

OpenAI může také používat vaše předplatné ChatGPT prostřednictvím vestavěného přihlašovacího postupu OpenAI Autohand:

{
  "openai": {
    "authMode": "chatgpt",
    "baseUrl": "https://api.openai.com/v1",
    "contextWindow": 1050000,
    "model": "gpt-5.4",
    "chatgptAuth": {
      "accessToken": "...",
      "refreshToken": "...",
      "accountId": "..."
    }
  }
}
PoleTypPovinnéVýchozíPopis
authModeřetězecNeapi-keyRežim ověřování: api-key nebo chatgpt
apiKeyřetězecAno pro režim api-key-OpenAI API klíč
baseUrlřetězecNehttps://api.openai.com/v1Koncový bod API
modelřetězecAno-Název modelu (např. gpt-5.4, gpt-5.4-mini)
contextWindowčísloNeAutoKontextové okno přesného modelu. Nastavte toto, chcete-li přepsat zastaralé místní předpoklady.
chatgptAuthobjektAno pro režim chatgpt-Uložené tokeny ověření ChatGPT/Codex a ID účtu

mlx

Poskytovatel MLX pro Apple Silicon Mac (místní závěr).

{
  "mlx": {
    "baseUrl": "http://localhost:8080",
    "port": 8080,
    "model": "mlx-community/Llama-3.2-3B-Instruct-4bit"
  }
}
PoleTypPovinnéVýchozíPopis
baseUrlřetězecNehttp://localhost:8080URL serveru MLX
portčísloNe8080Port serveru
modelřetězecAno-Identifikátor modelu MLX

llmgateway

LLM Gateway sjednocená konfigurace API. Poskytuje přístup k více poskytovatelům LLM prostřednictvím jediného API.

{
  "llmgateway": {
    "apiKey": "your-llmgateway-api-key",
    "baseUrl": "https://api.llmgateway.io/v1",
    "model": "gpt-4o"
  }
}
PoleTypPovinnéVýchozíPopis
apiKeyřetězecAno-LLM Gateway API klíč
baseUrlřetězecNehttps://api.llmgateway.io/v1Koncový bod API
modelřetězecAno-Název modelu (např. gpt-4o, claude-3-5-sonnet-20241022)

Získání klíče API: Navštivte llmgateway.io/dashboard, vytvořte si účet a získejte klíč API.

Podporované modely: LLM Gateway podporuje modely od více poskytovatelů, včetně:

– OpenAI: gpt-4o, gpt-4o-mini, gpt-4-turbo claude-3-5-haiku-20241022 – Google: gemini-1.5-pro, gemini-1.5-flash

deepseek

Konfigurace poskytovatele DeepSeek. Rozhraní API je kompatibilní s OpenAI a jako základní URL používá https://api.deepseek.com.

{
  "deepseek": {
    "apiKey": "your-deepseek-api-key",
    "baseUrl": "https://api.deepseek.com",
    "model": "deepseek-v4-flash"
  }
}
PoleTypPovinnéVýchozíPopis
apiKeyřetězecAno-Klíč API DeepSeek
baseUrlřetězecNehttps://api.deepseek.comKoncový bod API
modelřetězecAno-Název modelu, například deepseek-v4-flash nebo deepseek-v4-pro

bedrock

Konfigurace poskytovatele AWS Bedrock. converse je výchozí režim a používá řetězec pověření AWS SDK. Režimy kompatibilní s OpenAI používají klíče API Bedrock a koncové body kompatibilní s Bedrock OpenAI.

{
  "bedrock": {
    "apiMode": "converse",
    "authMode": "aws-credentials",
    "profile": "enterprise-prod",
    "region": "us-east-1",
    "model": "anthropic.claude-3-5-sonnet-20241022-v2:0"
  }
}
provider: bedrock
bedrock:
  apiMode: openai-chat
  authMode: bedrock-api-key
  apiKey: bedrock-api-key
  region: us-east-1
  model: openai.gpt-oss-120b-1:0
provider = "bedrock"

[bedrock]
apiMode = "openai-responses"
authMode = "bedrock-api-key"
apiKey = "bedrock-api-key"
region = "us-west-2"
endpoint = "https://vpce-abc123.bedrock-runtime.us-west-2.vpce.amazonaws.com/openai/v1"
model = "arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-3-5-sonnet-20241022-v2:0"
PoleTypPovinnéVýchozíPopis
modelřetězecAno-ID modelu podloží, ID odvozeného profilu nebo ARN
regionřetězecAnoAWS_REGION, poté AWS_DEFAULT_REGION a poté us-east-1 v nastaveníRegion AWS
apiModeřetězecNeconverseconverse, openai-chat nebo openai-responses
authModeřetězecNeaws-credentials pro converse, bedrock-api-key pro režimy kompatibilní s OpenAIRežim autentizace
profileřetězecNe-Volitelný profil AWS pro ověření řetězce pověření
endpointřetězecNeOdvozeno z režimu a regionuVlastní/soukromý koncový bod Bedrock
apiKeyřetězecAno pro režimy kompatibilní s OpenAI-Klíč API Bedrock. Nepoužívejte klíče OpenAI API.

Spusťte aws configure sso nebo nastavte AWS_PROFILE=enterprise-prod autohand pro ověření AWS založené na profilu. AWS SDK podporuje roli, kontejner a přihlašovací údaje metadat IAM. Před použitím modelu povolte přístup k modelu v konzole AWS.


Nastavení pracovního prostoru

{
  "workspace": {
    "defaultRoot": "/path/to/projects",
    "allowDangerousOps": false
  }
}
PoleTypVýchozíPopis
defaultRootřetězecAktuální adresářVýchozí pracovní prostor, pokud není zadán žádný
allowDangerousOpsbooleovskýfalsePovolit destruktivní operace bez potvrzení

Bezpečnost pracovního prostoru

Autohand automaticky blokuje operace v nebezpečných adresářích, aby se zabránilo náhodnému poškození:

  • Kořeny systému souborů (/, C:\, D:\ atd.)
  • Domovské adresáře (~, /Users/<user>, /home/<user>, C:\Users\<user>)
  • Systémové adresáře (/etc, /var, /System, C:\Windows atd.)
  • Připojení WSL pro Windows (/mnt/c, /mnt/c/Users/<user>)

Tuto kontrolu nelze obejít. Pokud se pokusíte spustit autohand v nebezpečném adresáři, zobrazí se chyba a musíte zadat bezpečný adresář projektu.

# This will be blocked
cd ~ && autohand
# Error: Unsafe Workspace Directory

# This works
cd ~/projects/my-app && autohand

Úplné podrobnosti naleznete v části Bezpečnost pracovního prostoru.


Nastavení uživatelského rozhraní

{
  "ui": {
    "theme": "dark",
    "customThemes": {
      "company": {
        "colors": {
          "accent": "#7c3aed",
          "success": "#22c55e"
        }
      }
    },
    "autoConfirm": false,
    "readFileCharLimit": 300,
    "silentToolOutput": false,
    "activityVerbs": ["Compiling", "Parsing", "Reviewing"],
    "activityVerbsEnabled": true,
    "activitySymbol": "✳",
    "statusLine": {
      "showProviderModel": true,
      "showContext": true,
      "showCommandHint": true,
      "showPullRequest": true,
      "showSessionLines": false,
      "showQueue": true,
      "showActiveStatus": true,
      "showActiveMetrics": true,
      "showCancelHint": true
    },
    "showCompletionNotification": true,
    "showThinking": true,
    "terminalBell": true,
    "checkForUpdates": true,
    "updateCheckInterval": 24
  }
}
PoleTypVýchozíPopis
themeřetězec"dark"Barevný motiv pro výstup na terminál. Mezi vestavěné moduly patří dark, light, dracula, sandy, tui, github-dark, cappadocia, _DE_10_AH_DE a _9_1AH_CO_DE. Starší hodnoty turkey a brazil se stále načítají jako aliasy.
customThemesobjekt{}Vložené definice vlastního motivu s klíčem podle názvu motivu. Chcete-li jej použít, nastavte theme na stejný klíč.
autoConfirmbooleovskýfalsePřeskočte výzvy k potvrzení pro bezpečný provoz
readFileCharLimitčíslo300Max. počet znaků k zobrazení z výstupu nástroje pro čtení/hledání (celý obsah je stále odesílán do modelu)
silentToolOutputbooleovskýfalseSkrýt výstupní bloky nástroje v terminálu a přitom zachovat výsledky nástroje pro model/relaci
activityVerbsřetězec nebo řetězec[]vestavěný bazénVlastní sloveso aktivity nebo fond sloves pro pracovní indikátor vykreslený jako Verb...
activityVerbsEnabledbooleovskýtrueZobrazit rotující slovesa aktivity jako Compiling..., zatímco agent pracuje
activitySymbolřetězec"✳"Symbol zobrazený před slovesem aktivity ve výstupu indikátoru aktivity
statusLine.showProviderModelbooleovskýtrueZobrazit aktivního poskytovatele a model ve stavovém řádku skladatele
statusLine.showContextbooleovskýtrueZobrazit procento kontextu ve stavovém řádku skladatele
statusLine.showCommandHintbooleovskýtrueZobrazte příkazy, zmínky, dovednosti a rady pro zadání terminálu ve stavovém řádku skladatele
statusLine.showPullRequestbooleovskýtrueUkažte přidružené číslo požadavku na stažení nebo PR #123, pokud není přidruženo žádné PR
statusLine.showSessionLinesbooleovskýfalseZobrazit řádky přidané a odstraněné během aktuální relace
statusLine.showQueuebooleovskýtrueZobrazit počty požadavků ve frontě ve stavovém řádku
statusLine.showActiveStatusbooleovskýtrueZobrazit text stavu aktivního odbočení, když agent pracuje
statusLine.showActiveMetricsbooleovskýtrueZobrazit uplynulý čas a metriky tokenů, když agent pracuje
statusLine.showCancelHintbooleovskýtrueZobrazit nápovědu ke zrušení Esc, když agent pracuje
completionReportEnabledbooleovskýtruePožádejte model, aby zahrnul stručnou zprávu o dokončení po otočení dokončené akce
showCompletionNotificationbooleovskýtrueZobrazit systémové upozornění po dokončení úlohy
showThinkingbooleovskýtrueZobrazit proces uvažování/myšlenek LLM
terminalBellbooleovskýtruePo dokončení úkolu zazvoňte na zvonek terminálu (zobrazí odznak na kartě terminálu/doku)
checkForUpdatesbooleovskýtrueZkontrolovat aktualizace CLI při spuštění
updateCheckIntervalčíslo24Hodiny mezi kontrolami aktualizací (používá výsledky uložené v mezipaměti v rámci intervalu)

Vlastní motivy mohou přepsat jakýkoli sémantický barevný token. Chybějící tokeny jsou zděděny z temného tématu:

{
  "ui": {
    "theme": "company",
    "customThemes": {
      "company": {
        "vars": {
          "brand": "#7c3aed",
          "brandSoft": "#a78bfa"
        },
        "colors": {
          "accent": "brand",
          "borderAccent": "brandSoft",
          "mdHeading": "brand"
        }
      }
    }
  }
}

Poznámka: readFileCharLimit a silentToolOutput ovlivňují pouze zobrazení terminálu. Úplný obsah se stále odesílá do modelu a ukládá se do zpráv nástroje.

Můžete přepínat tichý výstup nástroje bez úpravy souboru:

autohand config set silent_tool_output true
autohand config set silent_tool_output false

Rotující slovesa aktivity můžete přepínat bez úpravy souboru:

autohand config set verbs activity true
autohand config set verbs activity false

Přizpůsobte si slovesa v konfiguračním souboru, pokud chcete pevný štítek stavu nebo malou rotaci specifickou pro projekt:

{
  "ui": {
    "activityVerbs": "Compiling"
  }
}
{
  "ui": {
    "activityVerbs": ["Indexing", "Reviewing", "Testing"],
    "activitySymbol": ">"
  }
}

activityVerbs přijímá buď jeden řetězec, nebo neprázdné pole řetězců. Když je activityVerbsEnabled false, Autohand se vrátí zpět na Working... namísto rotace přes vlastní nebo vestavěná slovesa.

Zprávy o dokončení, včetně strukturované výzvy SITREP, můžete přepínat bez úpravy souboru:

autohand config set sitrep true
autohand config set sitrep false

Terminálový zvonek

Když je povoleno terminalBell (výchozí), Autohand zazvoní na terminálu (\x07) po dokončení úlohy. Toto spouští:

  • Odznak na záložce terminálu - Ukazuje vizuální indikátor, že práce je hotová
  • Dock icon bounce - Upoutá vaši pozornost, když je terminál na pozadí (macOS)
  • Sound - Pokud jsou v nastavení terminálu povoleny zvuky terminálu

Nastavení specifická pro terminál:

  • MacOS Terminal: Předvolby > Profily > Pokročilé > Bell (vizuální/zvuk)
  • iTerm2: Předvolby > Profily > Terminál > Upozornění
  • VS Code Terminal: Nastavení > Terminál > Integrovaný: Povolit zvonek

Postup deaktivace:

{
  "ui": {
    "terminalBell": false
  }
}

Ink Renderer

Autohand standardně používá vykreslovací modul Ink 7 + React 19 pro interaktivní terminály. Starší konfigurační pole ui.useInkRenderer je ignorováno, takže staré konfigurační soubory nemohou vynutit skládání prostého terminálu. Inkoust poskytuje:

  • Výstup bez blikání: Všechny aktualizace uživatelského rozhraní jsou dávkové prostřednictvím odsouhlasení React
  • Funkce pracovní fronty: Zadejte pokyny, zatímco agent pracuje
  • Lepší zpracování vstupu: Žádné konflikty mezi obslužnými programy readline
  • Složitelné uživatelské rozhraní: Základ pro budoucí pokročilé funkce uživatelského rozhraní

Nouzové řešení pro kompatibilitu terminálu:

AUTOHAND_LEGACY_UI=1 autohand

Poznámka: Tato funkce je experimentální a může mít okrajové případy. Výchozí uživatelské rozhraní založené na ora zůstává stabilní a plně funkční.

Kontrola aktualizací

Když je povoleno checkForUpdates (výchozí), Autohand zkontroluje při spuštění nová vydání:

> Autohand v0.6.8 (abc1234) ✓ Up to date

Pokud je k dispozici aktualizace:

> Autohand v0.6.7 (abc1234) ⬆ Update available: v0.6.8
  ↳ Run: curl -fsSL https://autohand.ai/install.sh | sh

Jak to funguje:

  • Načítá nejnovější verzi z GitHub API
  • Výsledek mezipaměti je ~/.autohand/version-check.json
  • Kontroly pouze jednou za updateCheckInterval hodin (výchozí: 24)
  • Neblokování: spouštění pokračuje, i když kontrola selže

Postup deaktivace:

{
  "ui": {
    "checkForUpdates": false
  }
}

Nebo prostřednictvím proměnné prostředí:

export AUTOHAND_SKIP_UPDATE_CHECK=1

Nastavení agenta

Řízení chování agenta a limity iterací.

{
  "agent": {
    "maxIterations": 100,
    "enableRequestQueue": true,
    "toolSelectionCache": true,
    "autoMemory": true,
    "idleLogoutEnabled": true,
    "debug": false
  }
}
PoleTypVýchozíPopis
maxIterationsčíslo100Maximální počet iterací nástroje na požadavek uživatele před zastavením
enableRequestQueuebooleovskýtruePovolit uživatelům psát a řadit požadavky do fronty, zatímco agent pracuje
toolSelectionCachebooleovskýtrueUložte do mezipaměti místní výběr schématu nástroje na otočení pro ekvivalentní vstup pro výběr nástroje
autoMemorybooleovskýtrueExtrahujte a uložte trvalé uživatelské/projektové vzpomínky po úspěšných interaktivních otočeních
idleLogoutEnabledbooleovskýtrueOdhlaste ověřené interaktivní relace po vypršení časového limitu nečinnosti
debugbooleovskýfalsePovolit podrobný výstup ladění (protokoluje interní stav agenta do stderr)

Výběr schématu nástroje

Autohand neodesílá každé úplné schéma nástroje na každý požadavek LLM. Systémová výzva obsahuje kompaktní katalog funkcí nástrojů a každý požadavek odhaluje pouze malou sadu konkrétních schémat vybraných z:

– Základní nástroje pro zjišťování, jako jsou tool_search, read_file, fff_find a fff_grep

  • Nástroje přizpůsobené záměru pro editaci, ověřování, git, prohlížeč, web, závislost nebo práci se sledováním projektu
  • Nástroje požadované prostřednictvím nedávných volání tool_search nebo výslovně uvedené jménem

Vyhnete se tak velkým nákladům na kontext zasílání všech schémat nástrojů dříve, než je znám záměr uživatele. toolSelectionCache ovládá pouze místní mezipaměť selektoru pro ekvivalentní obraty; neprovádí zahřívání LLM před uživatelem a nevynucuje velkou předponu výzvy v mezipaměti.

Chcete-li zakázat mezipaměť místního výběru:

{
  "agent": {
    "toolSelectionCache": false
  }
}

Chcete-li udržet ověřené dlouhotrvající relace agentů naživu, zatímco čekají na práci:

{
  "agent": {
    "idleLogoutEnabled": false
  }
}

Pro jeden proces použijte autohand --no-idle-logout nebo nastavte AUTOHAND_NO_IDLE_LOGOUT=1.

Režim ladění

Povolte režim ladění, abyste viděli podrobné protokolování vnitřního stavu agenta (opakování smyčky reakcí, sestavení výzvy, podrobnosti o relaci). Výstup jde do stderr, aby nedošlo k rušení normálního výstupu.

Tři způsoby, jak povolit režim ladění (v pořadí priority):

  1. Příznak CLI: autohand -d nebo autohand --debug
  2. Proměnná prostředí: AUTOHAND_DEBUG=1
  3. Konfigurační soubor: Nastavte agent.debug: true

Fronta požadavků

Když je povolen enableRequestQueue, můžete pokračovat v psaní zpráv, zatímco agent zpracovává předchozí požadavek. Váš vstup bude zařazen do fronty a zpracován automaticky po dokončení aktuální úlohy.

  • Napište svou zprávu a stisknutím klávesy Enter ji přidejte do fronty
  • Stavový řádek ukazuje, kolik požadavků je ve frontě
  • Požadavky jsou zpracovávány v pořadí FIFO (first-in, first-out).
  • Maximální velikost fronty je 10 požadavků

Nastavení oprávnění

Jemná kontrola nad oprávněními nástroje.

{
  "permissions": {
    "mode": "interactive",
    "whitelist": [
      "run_command:npm *",
      "run_command:bun *",
      "run_command:git status"
    ],
    "blacklist": ["run_command:rm -rf *", "run_command:sudo *"],
    "rules": [
      {
        "tool": "run_command",
        "pattern": "npm test",
        "action": "allow"
      }
    ],
    "rememberSession": true
  }
}

mode

HodnotaPopis
"interactive"Výzva ke schválení nebezpečných operací (výchozí)
"unrestricted"Žádné výzvy, povolit vše
"restricted"Odmítnout všechny nebezpečné operace

whitelist

Pole vzorů nástrojů, které nikdy nevyžadují schválení.

["run_command:npm *", "run_command:bun test"]

blacklist

Pole vzorů nástrojů, které jsou vždy blokovány.

["run_command:rm -rf /", "run_command:sudo *"]

rules

Jemná pravidla povolení.

| Pole | Typ | Popis | | --------- | --------- | -------------------------------------------- | ---------- | --------------- | | tool | řetězec | Název nástroje, který se má shodovat | | pattern | řetězec | Volitelný vzor pro shodu s argumenty | | action | "allow" | "deny" | "prompt" | Opatření k provedení |

rememberSession

TypVýchozíPopis
booleovskýtrueZapamatujte si rozhodnutí o schválení pro relaci

Oprávnění k místnímu projektu

Každý projekt může mít svá vlastní nastavení oprávnění, která přepíší globální konfiguraci. Ty jsou uloženy v .autohand/settings.local.json v kořenovém adresáři vašeho projektu.

Když schválíte operaci se souborem (úpravy, zápis, smazání), automaticky se uloží do tohoto souboru, takže nebudete znovu požádáni o stejnou operaci v tomto projektu.

{
  "version": 1,
  "permissions": {
    "whitelist": [
      "apply_patch:src/components/Button.tsx",
      "write_file:package.json",
      "run_command:bun test"
    ]
  }
}

Jak to funguje:

– Když operaci schválíte, uloží se do .autohand/settings.local.json

  • Příště bude stejná operace schválena automaticky
  • Místní nastavení projektu jsou sloučena s globálním nastavením (místní má přednost)
  • Přidejte .autohand/settings.local.json do .gitignore, aby osobní nastavení zůstalo soukromé

Formát vzoru:

  • tool_name:path - Pro operace se soubory (např. apply_patch:src/file.ts)
  • tool_name:command args - Pro příkazy (např. run_command:npm test)

Oprávnění k prohlížení

Aktuální nastavení oprávnění můžete zobrazit dvěma způsoby:

Příznak CLI (neinteraktivní):

autohand --permissions

Toto zobrazuje:

  • Aktuální režim oprávnění (interaktivní, neomezený, omezený)
  • Cesty k pracovnímu prostoru a konfiguračním souborům
  • Všechny schválené vzory (bílá listina)
  • Všechny odepřené vzory (černá listina)
  • Souhrnné statistiky

Interaktivní příkaz:

/permissions

V interaktivním režimu poskytuje příkaz /permissions stejné informace plus možnosti pro:

  • Odebrat položky z bílé listiny
  • Odstraňte položky z černé listiny
  • Vymažte všechna uložená oprávnění

Režim opravy

Režim opravy vám umožňuje vygenerovat sdílenou opravu kompatibilní s git bez úpravy souborů pracovního prostoru. To je užitečné pro:

  • Kontrola kódu před použitím změn
  • Sdílení změn generovaných AI se členy týmu
  • Vytváření reprodukovatelných sad změn
  • CI/CD kanály, které potřebují zachytit změny bez jejich použití

Použití

# Generate patch to stdout
autohand --prompt "add user authentication" --patch

# Save to file
autohand --prompt "add user authentication" --patch --output auth.patch

# Pipe to file (alternative)
autohand --prompt "refactor api handlers" --patch > refactor.patch

Chování

Když je zadán --patch:

  • Automatické potvrzení: Všechna potvrzení jsou automaticky přijímána (implicitně --yes)
  • Žádné výzvy: Nezobrazují se žádné výzvy ke schválení (implicitně --unrestricted)
  • Pouze náhled: Změny jsou zachyceny, ale NEzapsány na disk
  • Vynuceno zabezpečení: Operace na černé listině (.env, klíče SSH, nebezpečné příkazy) jsou stále blokovány

Aplikace oprav

Příjemci mohou opravu aplikovat pomocí standardních příkazů git:

# Check what would be applied (dry-run)
git apply --check changes.patch

# Apply the patch
git apply changes.patch

# Apply with 3-way merge (handles conflicts better)
git apply -3 changes.patch

# Apply and stage changes
git apply --index changes.patch

# Reverse a patch
git apply -R changes.patch

Formát opravy

Vygenerovaná oprava se řídí jednotným formátem rozdílů git:

diff --git a/src/auth.ts b/src/auth.ts
new file mode 100644
--- /dev/null
+++ b/src/auth.ts
@@ -0,0 +1,15 @@
+export function authenticate(user: string, password: string) {
+  // Implementation here
+}

diff --git a/src/index.ts b/src/index.ts
--- a/src/index.ts
+++ b/src/index.ts
@@ -1,5 +1,7 @@
 import express from 'express';
+import { authenticate } from './auth';

 const app = express();
+app.use(authenticate);

Výstupní kódy

KódVýznam
0Úspěch, oprava vygenerována
1Chyba (chybí --prompt, oprávnění odepřeno atd.)

Kombinace s jinými příznaky

# Use specific model
autohand --prompt "optimize queries" --patch --model gpt-4o

# Specify workspace
autohand --prompt "add tests" --patch --path ./my-project

# Use custom config
autohand --prompt "refactor" --patch --config ~/.autohand/work.json

Příklad týmového pracovního postupu

# Developer A: Generate patch for a feature
autohand --prompt "implement user dashboard with charts" --patch --output dashboard.patch

# Share via git (create PR with just the patch file)
git checkout -b patch/dashboard
git add dashboard.patch
git commit -m "Add dashboard feature patch"
git push

# Developer B: Review and apply
git fetch origin patch/dashboard
git apply dashboard.patch
# Run tests, review code, then commit
git add -A && git commit -m "feat: add user dashboard with charts"

Nastavení sítě

{
  "network": {
    "maxRetries": 3,
    "timeout": 30000,
    "retryDelay": 1000
  }
}
PoleTypVýchozíMaxPopis
maxRetriesčíslo35Opakujte pokusy o neúspěšné požadavky API
timeoutčíslo30000-Časový limit požadavku v milisekundách
retryDelayčíslo1000-Prodleva mezi pokusy v milisekundách

Nastavení telemetrie

Telemetrie je ve výchozím nastavení zakázána (přihlášení). Povolením pomůžete zlepšit Autohand.

{
  "telemetry": {
    "enabled": false,
    "apiBaseUrl": "https://api.autohand.ai",
    "batchSize": 20,
    "flushIntervalMs": 60000,
    "maxQueueSize": 500,
    "maxRetries": 3,
    "enableSessionSync": true,
    "companySecret": ""
  }
}
PoleTypVýchozíPopis
enabledbooleovskýfalsePovolit/zakázat telemetrii (přihlášení)
apiBaseUrlřetězechttps://api.autohand.aiKoncový bod telemetrie API
batchSizečíslo20Počet událostí do dávky před automatickým vyprázdněním
flushIntervalMsčíslo60000Interval splachování v milisekundách (1 minuta)
maxQueueSizečíslo500Maximální velikost fronty před vypuštěním starých událostí
maxRetriesčíslo3Opakujte pokusy o neúspěšné telemetrické požadavky
enableSessionSyncbooleovskýtrueSynchronizujte relace do cloudu pro týmové funkce, když je povolena telemetrie
companySecretřetězec""Tajemství společnosti pro ověřování API

Telemetrie poskytovatele/modelu zahrnuje ID aktivního poskytovatele, ID modelu a dostupná netajná metadata, jako je zobrazovaný název vlastního poskytovatele, formát rozhraní API, zdůvodnění a kontextové okno. Klíče API a tokeny nosiče nejsou nikdy zahrnuty.


Externí agenti

Načtěte uživatelské definice agentů z externích adresářů.

{
  "externalAgents": {
    "enabled": true,
    "paths": ["~/.autohand/agents", "/team/shared/agents"]
  }
}
PoleTypVýchozíPopis
enabledbooleovskýfalsePovolit načítání externího agenta
pathsřetězec[][]Adresáře pro načtení agentů z

Systém dovedností

Dovednosti jsou balíčky instrukcí, které agentovi AI poskytují specializované pokyny. Fungují jako soubory AGENTS.md na vyžádání, které lze aktivovat pro konkrétní úkoly.

Místa pro objevování dovedností

Dovednosti se objevují z více míst, přičemž přednost mají pozdější zdroje:

UmístěníID zdrojePopis
~/.codex/skills/**/SKILL.mdcodex-userKodexové dovednosti na uživatelské úrovni (rekurzivní)
~/.claude/skills/*/SKILL.mdclaude-userUživatelské dovednosti Claude (jedna úroveň)
~/.autohand/skills/**/SKILL.mdautohand-userDovednosti Autohand na uživatelské úrovni (rekurzivní)
<project>/.claude/skills/*/SKILL.mdclaude-projectClaude dovednosti na úrovni projektu (jedna úroveň)
<project>/.autohand/skills/**/SKILL.mdautohand-projectAutohand dovednosti na úrovni projektu (rekurzivní)

Chování automatického kopírování

Dovednosti objevené z umístění Codex nebo Claude se automaticky zkopírují do odpovídajícího umístění Autohand:

  • ~/.codex/skills/ a ~/.claude/skills/~/.autohand/skills/
  • <project>/.claude/skills/<project>/.autohand/skills/

Stávající dovednosti v lokalitách Autohand nejsou nikdy přepsány.

Formát SKILL.md

Dovednosti využívají YAML frontmatter následovaný markdown obsahem:

---
name: my-skill-name
description: Brief description of the skill
license: MIT
compatibility: Works with Node.js 18+
allowed-tools: read_file write_file run_command
metadata:
  author: your-name
  version: "1.0.0"
---

# My Skill

Detailed instructions for the AI agent...
PolePovinnéMaximální délkaPopis
nameAno64 znakůMalá písmena alfanumerická pouze se spojovníky
descriptionAno1024 znakůStručný popis dovednosti
licenseNe-Identifikátor licence (např. MIT, Apache-2.0)
compatibilityNe500 znakůPoznámky ke kompatibilitě
allowed-toolsNe-Mezerou oddělený seznam povolených nástrojů
metadataNe-Další metadata pár klíč–hodnota

Vstupní předpony

Autohand podporuje speciální předpony ve vstupním řádku:

PředponaPopisPříklad
/Příkazy lomítka/help, /model, /quit, /exit
@Zmínky o souboru (automatické doplňování)@src/index.ts
$Zmínky o dovednostech (automatické doplňování)$frontend-design, $code-review
!Přímé spouštění příkazů terminálu! git status, ! ls -la

Zmínky o dovednostech ($):

  • Zadejte $ následovaný znaky, abyste viděli dostupné dovednosti s automatickým doplňováním – Karta přijímá horní návrh (např. $frontend-design)
  • Dovednosti jsou objeveny z ~/.autohand/skills/ a <project>/.autohand/skills/
  • Aktivované dovednosti jsou připojeny k výzvě jako speciální instrukce pro aktuální relaci
  • Panel náhledu zobrazuje metadata dovedností (jméno, popis, stav aktivace)

Příkazy shellu (!):

  • Příkazy se spouštějí ve vašem aktuálním pracovním adresáři
  • Zobrazení výstupu přímo v terminálu
  • Nechodí do LLM
  • 30 sekundový časový limit
  • Po provedení se vrátí na výzvu

Příkazy lomítka

/skills – Správce balíčků

PříkazPopis
/skillsSeznam všech dostupných dovedností
/skills use <name>Aktivujte dovednost pro aktuální relaci
/skills deactivate <name>Deaktivovat dovednost
/skills info <name>Zobrazit podrobné informace o dovednostech
/skills installProcházet a instalovat z registru komunity
/skills install @<slug>Nainstalujte komunitní dovednost pomocí slug
/skills search <query>Prohledejte registr dovedností komunity
/skills trendingUkažte trendy komunitní dovednosti
/skills remove <slug>Odinstalujte dovednost komunity
/skills newVytvořte novou dovednost interaktivně
/skills feedback <slug> <1-5>Ohodnoťte dovednost komunity

/learn – poradce pro dovednosti LLM

PříkazPopis
/learnAnalyzujte projekt a doporučte dovednosti (rychlé skenování)
/learn deepProjekt hlubokého skenování (čte zdrojové soubory) pro cílenější výsledky
/learn updateZnovu analyzujte projekt a obnovte zastaralé dovednosti generované LLM

/learn používá dvoufázový tok LLM:

  1. Fáze 1 – Analýza + hodnocení + audit: Prohledá strukturu vašeho projektu, prověří nainstalované dovednosti z hlediska redundance/konfliktů a seřadí dovednosti komunity podle relevance (0–100).
  2. Fáze 2 – Generovat (podmíněně): Pokud žádná dovednost komunity nedosáhne hodnoty vyšší než 60, nabízí se vygenerování vlastní dovednosti přizpůsobené vašemu projektu. Generované dovednosti zahrnují metadata (agentskill-source: llm-generated, agentskill-project-hash), takže /learn update může zjistit, kdy se vaše kódová základna změní, a obnovit zastaralé dovednosti.

Automatické generování dovedností (--auto-skill)

Příznak --auto-skill CLI generuje dovednosti bez interaktivního toku poradců:

autohand --auto-skill

Toto bude:

  1. Analyzujte strukturu svého projektu (package.json, requirements.txt atd.)
  2. Detekce jazyků, rámců a vzorů
  3. Vygenerujte 3 relevantní dovednosti pomocí LLM
  4. Uložte dovednosti do <project>/.autohand/skills/

Pro cílenější a interaktivnější zážitek použijte místo toho /learn v rámci relace.

Mezi zjištěné vzory patří:

  • Jazyky: TypeScript, JavaScript, Python, Rust, Go
  • Frameworks: React, Next.js, Vue, Express, Flask, Django
  • Vzory: Nástroje CLI, testování, monorepo, Docker, CI/CD

Nastavení API

Konfigurace backendového API pro týmové funkce.

{
  "api": {
    "baseUrl": "https://api.autohand.ai",
    "companySecret": "sk-team-xxx"
  }
}
PoleTypVýchozíPopis
baseUrlřetězechttps://api.autohand.aiKoncový bod API
companySecretřetězec-Tajemství týmu/společnosti pro sdílené funkce

Lze také nastavit pomocí proměnných prostředí:

  • AUTOHAND_API_URLapi.baseUrl
  • AUTOHAND_SECRETapi.companySecret

Nastavení ověřování

Autentizace a konfigurace uživatelské relace.

{
  "auth": {
    "token": "your-auth-token",
    "user": {
      "id": "user-id",
      "email": "user@example.com",
      "name": "User Name",
      "avatar": "https://example.com/avatar.png"
    },
    "expiresAt": "2025-12-31T23:59:59Z"
  }
}
PoleTypVýchozíPopis
tokenřetězec-Autentizační token pro přístup k API
userobjekt-Informace o ověřeném uživateli
user.idřetězec-ID uživatele
user.emailřetězec-E-mailová adresa uživatele
user.nameřetězec-Zobrazované jméno uživatele
user.avatarřetězec-URL uživatelského avataru (volitelné)
expiresAtřetězec-Časové razítko vypršení platnosti tokenu (formát ISO 8601)

Nastavení komunitních dovedností

Konfigurace pro objevování a správu komunitních dovedností.

{
  "communitySkills": {
    "enabled": true,
    "showSuggestionsOnStartup": true,
    "autoBackup": true
  }
}
PoleTypVýchozíPopis
enabledbooleovskýtruePovolit funkce komunitních dovedností
showSuggestionsOnStartupbooleovskýtrueZobrazit návrhy dovedností při spuštění, když neexistují žádné dovednosti dodavatele
autoBackupbooleovskýtrueAutomaticky zálohovat zjištěné dovednosti dodavatele do API

Nastavení sdílení

Konfigurace pro sdílení relace pomocí příkazu /share. Relace jsou hostovány na adrese autohand.link.

{
  "share": {
    "enabled": true
  }
}
PoleTypVýchozíPopis
enabledbooleovskýtruePovolit/zakázat příkaz /share

Formát YAML

share:
  enabled: true

Zakázání sdílení relací

Pokud chcete zakázat sdílení relací z důvodu zabezpečení nebo ochrany soukromí:

{
  "share": {
    "enabled": false
  }
}

Když je zakázáno, spuštění /share zobrazí:

Session sharing is disabled.
To enable, set share.enabled: true in your config file.

Nastavení Synchronizace

Autohand může synchronizovat vaši konfiguraci mezi zařízeními pro přihlášené uživatele. Nastavení jsou bezpečně uložena v Cloudflare R2 a před nahráním zašifrována.

{
  "sync": {
    "enabled": true,
    "interval": 300000,
    "exclude": [],
    "includeTelemetry": false,
    "includeFeedback": false
  }
}
PoleTypVýchozíPopis
enabledbooleovskýtrue (přihlášeno)Povolit/zakázat synchronizaci nastavení
intervalčíslo300000Interval synchronizace v milisekundách (výchozí: 5 minut)
excludeřetězec[][]Vzory globusů k vyloučení ze synchronizace
includeTelemetrybooleovskýfalseSynchronizace telemetrických dat (vyžaduje souhlas uživatele)
includeFeedbackbooleovskýfalseSynchronizovat data zpětné vazby (vyžaduje souhlas uživatele)

Vlajka CLI

# Disable sync for this session
autohand --sync-settings=false

# Enable sync (default for logged users)
autohand --sync-settings

Co se synchronizuje

Ve výchozím nastavení se pro přihlášené uživatele synchronizují tyto položky:

  • Konfigurace (config.json) - Klíče API jsou před nahráním zašifrovány – Vlastní zástupci (agents/)
  • Dovednosti komunity (community-skills/)
  • Uživatelské háčky (hooks/)
  • Paměť (memory/)
  • Znalost projektu (projects/)
  • Historie relací (sessions/)
  • Sdílený obsah (share/)
  • Vlastní dovednosti (skills/)

Co se nesynchronizuje (ve výchozím nastavení)

  • ID zařízení (device-id) - Jedinečné pro každé zařízení
  • Protokoly chyb (error.log) - Pouze místní
  • Mezipaměť verze (version-*.json) - Soubory místní mezipaměti

Synchronizace na základě souhlasu

Tyto položky vyžadují výslovné přihlášení ve vaší konfiguraci:

  • Data telemetrie - Nastavte sync.includeTelemetry: true na synchronizaci
  • Data zpětné vazby - Nastavte sync.includeFeedback: true na synchronizaci
{
  "sync": {
    "enabled": true,
    "includeTelemetry": true,
    "includeFeedback": true
  }
}

Řešení konfliktů

Když dojde ke konfliktům (stejný soubor upraven na více zařízeních), vyhraje cloudová verze. To zajišťuje konzistenci při přihlašování na nových zařízeních.

Zabezpečení

Klíče API a další citlivá data v config.json jsou před nahráním zašifrovány pomocí vašeho ověřovacího tokenu. Lze je dešifrovat pouze pomocí vašich přihlašovacích údajů.

Co je šifrováno:

– Pole s názvem apiKey – Pole končící na Key, Token, Secret

  • Pole password

Jak to funguje

  1. Při spuštění: Pokud jste přihlášeni, služba synchronizace se spustí automaticky
  2. Každých 5 minut: Nastavení se porovnávají s cloudovým úložištěm
  3. Cloud vyhrává: Vzdálené změny se stahují jako první
  4. Místní nahrání: Nahrají se nové místní změny
  5. Při ukončení: Služba synchronizace se plynule zastaví

Vyjma souborů

Ze synchronizace můžete vyloučit konkrétní soubory nebo vzory:

{
  "sync": {
    "enabled": true,
    "exclude": ["custom-local-config.json", "temp/*"]
  }
}

Formát YAML

sync:
  enabled: true
  interval: 300000
  exclude: []
  includeTelemetry: false
  includeFeedback: false

Nastavení MCP

Nakonfigurujte servery MCP (Model Context Protocol) pro rozšíření Autohand o externí nástroje.

{
  "mcp": {
    "enabled": true,
    "servers": [
      {
        "name": "filesystem",
        "transport": "stdio",
        "command": "npx",
        "args": ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"],
        "env": {},
        "autoConnect": true
      },
      {
        "name": "context7",
        "transport": "http",
        "url": "https://mcp.context7.com/mcp",
        "headers": {
          "CONTEXT7_API_KEY": "ctx7sk-your-api-key"
        },
        "autoConnect": true
      }
    ]
  }
}

mcp.enabled

  • Typ: boolean
  • Výchozí: true
  • Popis: Povolí nebo zakáže veškerou podporu MCP. Když je false, při spuštění nejsou připojeny žádné servery a nástroje MCP nejsou dostupné.

mcp.servers

  • Typ: McpServerConfigEntry[]
  • Výchozí: []
  • Popis: Pole konfigurací serveru MCP.

Pole pro zadání serveru

PoleTypPovinnéVýchozíPopis
namestringAno-Jedinečný identifikátor serveru
transport"stdio" | "sse" | "http"Ano-Typ dopravy
commandstringAno (stdio)-Příkaz ke spuštění procesu serveru
argsstring[]Ne[]Argumenty pro příkaz
urlstringAno (sse/http)-URL koncového bodu serveru
headersRecord<string, string>Ne{}Vlastní hlavičky HTTP pro přenos http/sse (např. auth tokeny)
envRecord<string, string>Ne{}Proměnné prostředí předané serveru
autoConnectbooleanNetrueZda se má automaticky připojit při spuštění

Servery se při spouštění připojují asynchronně na pozadí bez blokování výzvy. Použijte /mcp pro interaktivní správu serverů nebo /mcp add pro procházení registru komunity nebo přidání vlastních serverů.

Úplnou dokumentaci MCP naleznete na [docs/mcp.md] (mcp.md).


Nastavení háčků

Konfigurace pro háky životního cyklu, které spouštějí příkazy shellu při událostech agenta. Úplné podrobnosti naleznete v Dokumentace háčků.

{
  "hooks": {
    "enabled": true,
    "hooks": [
      {
        "event": "pre-tool",
        "command": "echo \"Running tool: $HOOK_TOOL\" >> ~/.autohand/hooks.log",
        "description": "Log all tool executions",
        "enabled": true
      },
      {
        "event": "file-modified",
        "command": "./scripts/on-file-change.sh",
        "description": "Custom file change handler",
        "filter": { "path": ["src/**/*.ts"] }
      },
      {
        "event": "post-response",
        "command": "curl -X POST https://api.example.com/webhook -d '{\"tokens\": $HOOK_TOKENS}'",
        "description": "Track token usage",
        "async": true
      }
    ]
  }
}

hooks

PoleTypVýchozíPopis
enabledbooleovskýtruePovolit/zakázat všechny háky globálně
hookspole[]Pole definic háčků

Definice háku

PoleTypPovinnéVýchozíPopis
eventřetězecAno-Událost k připojení
commandřetězecAno-Shell příkaz k provedení
descriptionřetězecNe-Popis pro displej /hooks
enabledbooleovskýNetrueZda je háček aktivní
timeoutčísloNe5000Časový limit v milisekundách
asyncbooleovskýNefalseBěh bez blokování
filterobjektNe-Filtrovat podle nástroje nebo cesty

Hook Events

AkcePři výstřelu
pre-toolPřed spuštěním jakéhokoli nástroje
post-toolPo dokončení nástroje
file-modifiedPři vytvoření/změně/smazání souboru
pre-promptPřed odesláním do LLM
post-responsePoté, co LLM odpoví
session-errorKdyž dojde k chybě

Proměnné prostředí

Při spuštění háčků jsou k dispozici tyto proměnné prostředí:

ProměnnáPopis
HOOK_EVENTNázev události
HOOK_WORKSPACEKořenová cesta pracovního prostoru
HOOK_TOOLNázev nástroje (události nástroje)
HOOK_ARGSJSON kódované nástroje args
HOOK_SUCCESStrue/false (post-tool)
HOOK_PATHCesta k souboru (upravený soubor)
HOOK_TOKENSPoužité tokeny (po reakci)

Nastavení rozšíření Chrome

Ovládejte integraci rozšíření Autohand pro Chrome. Úplného průvodce naleznete na adrese [Autohand v prohlížeči Chrome] (./autohand-in-chrome.md).

{
  "chrome": {
    "extensionId": "your-extension-id",
    "enabledByDefault": false,
    "browser": "auto",
    "userDataDir": "/path/to/chrome/user-data",
    "profileDirectory": "Default",
    "installUrl": "https://autohand.ai/chrome"
  }
}
KlíčTypVýchozíPopis
extensionIdstringNainstalované ID rozšíření Chrome pro přímé předání
enabledByDefaultbooleanfalseSpusťte prohlížeč bridge automaticky pomocí CLI
browserstring"auto"Preferovaný prohlížeč Chromium: auto, chrome, chromium, brave, edge
userDataDirstringAdresář uživatelských dat prohlížeče pro zacílení na správný profil
profileDirectorystringNázev adresáře profilu prohlížeče (např. "Default", "Profile 1")
installUrlstringZáložní adresa URL, když není nakonfigurováno ID rozšíření

Příznaky CLI

autohand --chrome          # Start with browser bridge enabled
autohand --no-chrome       # Start with browser bridge disabled

Příkazy lomítka

/chrome                    # Open Chrome integration panel
/chrome disconnect         # Close the browser bridge connection

Úplný příklad

Formát JSON (~/.autohand/config.json)

{
  "provider": "openrouter",
  "openrouter": {
    "apiKey": "sk-or-v1-your-key-here",
    "baseUrl": "https://openrouter.ai/api/v1",
    "model": "your-modelcard-id-here"
  },
  "ollama": {
    "baseUrl": "http://localhost:11434",
    "model": "llama3.2"
  },
  "workspace": {
    "defaultRoot": "~/projects",
    "allowDangerousOps": false
  },
  "ui": {
    "theme": "dark",
    "autoConfirm": false,
    "showCompletionNotification": true,
    "showThinking": true,
    "terminalBell": true,
    "checkForUpdates": true,
    "updateCheckInterval": 24
  },
  "agent": {
    "maxIterations": 100,
    "enableRequestQueue": true,
    "toolSelectionCache": true,
    "idleLogoutEnabled": true,
    "debug": false
  },
  "permissions": {
    "mode": "interactive",
    "whitelist": ["run_command:npm *", "run_command:bun *"],
    "blacklist": ["run_command:rm -rf /"],
    "rememberSession": true
  },
  "network": {
    "maxRetries": 3,
    "timeout": 30000,
    "retryDelay": 1000
  },
  "telemetry": {
    "enabled": false,
    "apiBaseUrl": "https://api.autohand.ai",
    "batchSize": 20,
    "flushIntervalMs": 60000,
    "maxQueueSize": 500,
    "maxRetries": 3,
    "enableSessionSync": true
  },
  "externalAgents": {
    "enabled": false,
    "paths": []
  },
  "api": {
    "baseUrl": "https://api.autohand.ai"
  },
  "auth": {
    "token": "your-auth-token",
    "user": {
      "id": "user-id",
      "email": "user@example.com",
      "name": "User Name"
    }
  },
  "communitySkills": {
    "enabled": true,
    "showSuggestionsOnStartup": true,
    "autoBackup": true
  },
  "share": {
    "enabled": true
  },
  "sync": {
    "enabled": true,
    "interval": 300000,
    "includeTelemetry": false,
    "includeFeedback": false
  }
}

Formát YAML (~/.autohand/config.yaml)

provider: openrouter

openrouter:
  apiKey: sk-or-v1-your-key-here
  baseUrl: https://openrouter.ai/api/v1
  model: your-modelcard-id-here

ollama:
  baseUrl: http://localhost:11434
  model: llama3.2

workspace:
  defaultRoot: ~/projects
  allowDangerousOps: false

ui:
  theme: dark
  autoConfirm: false
  showCompletionNotification: true
  showThinking: true
  terminalBell: true
  checkForUpdates: true
  updateCheckInterval: 24

agent:
  maxIterations: 100
  enableRequestQueue: true
  toolSelectionCache: true
  idleLogoutEnabled: true
  debug: false

permissions:
  mode: interactive
  whitelist:
    - "run_command:npm *"
    - "run_command:bun *"
  blacklist:
    - "run_command:rm -rf /"
  rememberSession: true

network:
  maxRetries: 3
  timeout: 30000
  retryDelay: 1000

telemetry:
  enabled: false
  apiBaseUrl: https://api.autohand.ai
  batchSize: 20
  flushIntervalMs: 60000
  maxQueueSize: 500
  maxRetries: 3
  enableSessionSync: true

externalAgents:
  enabled: false
  paths: []

api:
  baseUrl: https://api.autohand.ai

auth:
  token: your-auth-token
  user:
    id: user-id
    email: user@example.com
    name: User Name

communitySkills:
  enabled: true
  showSuggestionsOnStartup: true
  autoBackup: true

share:
  enabled: true

sync:
  enabled: true
  interval: 300000
  includeTelemetry: false
  includeFeedback: false

Formát TOML (~/.autohand/config.toml)

provider = "openrouter"

[openrouter]
apiKey = "sk-or-v1-your-key-here"
baseUrl = "https://openrouter.ai/api/v1"
model = "your-modelcard-id-here"

[ollama]
baseUrl = "http://localhost:11434"
model = "llama3.2"

[workspace]
defaultRoot = "~/projects"
allowDangerousOps = false

[ui]
theme = "dark"
autoConfirm = false
showCompletionNotification = true
showThinking = true
terminalBell = true
checkForUpdates = true
updateCheckInterval = 24

[ui.customThemes.company.vars]
brand = "#7c3aed"
brandSoft = "#a78bfa"

[ui.customThemes.company.colors]
accent = "brand"
borderAccent = "brandSoft"
mdHeading = "brand"

[agent]
maxIterations = 100
enableRequestQueue = true
toolSelectionCache = true
idleLogoutEnabled = true
debug = false

[permissions]
mode = "interactive"
whitelist = ["run_command:npm *", "run_command:bun *"]
blacklist = ["run_command:rm -rf /"]
rememberSession = true

Struktura adresáře

Autohand ukládá data do ~/.autohand/ (nebo $AUTOHAND_HOME):

~/.autohand/
├── config.json          # Main configuration
├── config.toml          # Alternative TOML config
├── config.yaml          # Alternative YAML config
├── device-id            # Unique device identifier
├── error.log            # Error log
├── feedback.log         # Feedback submissions
├── sessions/            # Session history
├── projects/            # Project knowledge base
├── memory/              # User-level memory
├── commands/            # Custom commands
├── agents/              # Agent definitions
├── tools/               # Custom meta-tools
├── feedback/            # Feedback state
└── telemetry/           # Telemetry data
    ├── queue.json
    └── session-sync-queue.json

Adresář na úrovni projektu (v kořenovém adresáři vašeho pracovního prostoru):

<project>/.autohand/
├── settings.local.json  # Local project permissions (gitignore this)
├── memory/              # Project-specific memory
├── skills/              # Project-specific skills
└── tools/               # Project-specific meta-tools

Příznaky CLI (přepsat konfiguraci)

Tyto příznaky přepisují nastavení konfiguračního souboru:

Základní příznaky

VlajkaPopis
-v, --versionVytisknout aktuální verzi
-p, --prompt [text]Spusťte jednu instrukci v příkazovém režimu
--path <path>Přepsat kořen pracovního prostoru
--config <path>Použít vlastní konfigurační soubor
--model <model>Model potlačení
--temperature <n>Nastavení teploty odběru vzorků (0-1)
--thinking [level]Nastavte hloubku myšlení/uvažování (žádná, normální, rozšířená)
-y, --yesVýzvy k automatickému potvrzení
--dry-runNáhled bez provedení
-d, --debugPovolit podrobný výstup ladění
--bareMinimální explicitní režim; také nastaví AUTOHAND_CODE_SIMPLE=1 a zakáže příkazy lomítka

Oprávnění a bezpečnost

VlajkaPopis
--unrestrictedŽádné výzvy ke schválení
--restrictedOdmítnout nebezpečné operace
--permissionsZobrazte aktuální nastavení oprávnění a ukončete
--no-idle-logoutZakázat ověřené odhlášení při nečinnosti pro dlouhotrvající relace agenta
--yolo [pattern]Automaticky schvalovat volání nástroje odpovídající vzor (např. allow:read,write nebo deny:delete)
--timeout <seconds>Časový limit v sekundách pro režim automatického schválení

Git & Worktree

VlajkaPopis
--worktree [name]Spustit relaci v izolovaném pracovním stromu git (volitelný název pracovního stromu/větve)
--tmuxSpustit ve vyhrazené relaci tmux (předpokládá --worktree; nelze použít s --no-worktree)
--no-worktreeZakázat izolaci pracovního stromu git v automatickém režimu
-c, --auto-commitAutomatické potvrzení změn po dokončení úkolů
--patchVygenerujte git patch bez použití změn
--output <file>Výstupní soubor pro patch (používá se s --patch)

Automatický režim

VlajkaPopis
--auto-mode [prompt]Povolte interaktivní automatický režim nebo spusťte samostatnou smyčku s vloženou úlohou
--max-iterations <n>Maximální počet iterací automatického režimu (výchozí: 50)
--completion-promise <text>Text značky dokončení (výchozí: "HOTOVO")
--checkpoint-interval <n>Git odevzdá každých N iterací (výchozí: 5)
--max-runtime <m>Maximální doba běhu v minutách (výchozí: 120)
--max-cost <d>Maximální cena API v dolarech (výchozí: 10)
--interactive-on-completePo skončení automatického režimu přejděte přímo do interaktivního režimu (pouze TTY)

Dovednosti a učení

VlajkaPopis
--auto-skillAutomatické generování dovedností na základě projektové analýzy (viz také /learn pro interaktivního poradce)
--learnSpustit /learn poradce dovedností neinteraktivně (analyzovat a nainstalovat doporučené dovednosti)
--learn-updateZnovu analyzujte projekt a neinteraktivně regenerujte zastaralé dovednosti generované LLM
--skill-install [name]Nainstalujte komunitní dovednost (otevře prohlížeč, pokud není zadán název)
--projectNainstalujte dovednost na úroveň projektu (pomocí --skill-install)

Autentizace a účet

VlajkaPopis
--loginPřihlaste se ke svému účtu Autohand
--logoutOdhlaste se ze svého účtu Autohand
--sync-settingsPovolit/zakázat synchronizaci nastavení (výchozí: true pro přihlášené uživatele)

Nastavení a informace

VlajkaPopis
--setupSpusťte průvodce nastavením a nakonfigurujte nebo překonfigurujte Autohand
--aboutZobrazit informace o Autohand (verze, odkazy, informace o příspěvku)
--feedbackOdeslat zpětnou vazbu týmu Autohand
--settingsNakonfigurujte nastavení Autohand (stejné jako /settings v interaktivním režimu)

Pracovní prostor a adresáře

VlajkaPopis
--add-dir <path...>Přidat další adresáře do rozsahu pracovního prostoru (lze použít vícekrát)

Režimy běhu

VlajkaPopis
--mode <mode>Režim spuštění: interaktivní (výchozí), rpc nebo acp
--acpZkratka pro --mode acp (Protokol klienta agenta přes stdio)
--teammate-mode <mode>Režim týmového zobrazení: auto, v procesu nebo tmux

Uživatelské rozhraní a jazyk

VlajkaPopis
--display-language <locale>Nastavit jazyk zobrazení (např. en, id, zh-cn, fr, de, ja)
--search-engine <provider>Nastavit poskytovatele vyhledávání na webu (google, brave, duckduckgo, parallel)
--cc, --context-compactPovolit komprimaci kontextu (výchozí: zapnuto)
--no-cc, --no-context-compactZakázat komprimaci kontextu

Integrace Chrome

VlajkaPopis
--chromePovolit integraci prohlížeče Chrome (stejné jako /chrome)
--no-chromeZakázat integraci prohlížeče Chrome

Systémová výzva

VlajkaPopis
--sys-prompt <value>Nahradit celou systémovou výzvu (vložený řetězec nebo cestu k souboru)
--append-sys-prompt <value>Připojit k systémové výzvě (vložený řetězec nebo cesta k souboru)
--system-prompt <value>Nahradit celou systémovou výzvu (vložený řetězec nebo cestu k souboru)
--system-prompt-file <path>Nahradit celý systémový řádek obsahem souboru
--append-system-prompt <value>Připojit k systémové výzvě (vložený řetězec nebo cesta k souboru)
--append-system-prompt-file <path>Připojit obsah souboru do systémového řádku
--mcp-config <path>Načtěte explicitní konfigurační soubor MCP
--agents <json|path>Načtěte explicitní inline agenty JSON nebo adresář explicitních agentů
--plugin-dir <path>Načtěte explicitní adresář plugin/meta-tool

Příkazy přepínače experimentu

PříkazPopis
autohand experiments listUveďte místní a vzdálené ID funkcí, zdroj, fázi životního cyklu a stav
autohand experiments status <feature>Zobrazit jeden přepínač funkcí, konfigurační cestu nebo vzdálená metadata a stav
autohand experiments refreshStáhněte si příznaky vzdálené funkce z Autohand API
autohand experiments enable <feature>Povolte přepínač funkcí podporovaných konfigurací
autohand experiments disable <feature>Zakázat přepínač funkcí podporovaných konfigurací

Příznaky vzdálené funkce se načítají z /v1/feature-flags/evaluate, ukládají do mezipaměti ~/.autohand/feature-flags.json a obnovují se po vypršení platnosti TTL poskytovaného rozhraním API. Použijte features.environment pro výběr prostředí vzdáleného příznaku a features.remoteOverrides pro místní odhlášení vzdálených příznaků, které může uživatel přepsat.

usage_v2 je experimentální přepínač funkcí pro řídicí panel /usage a vylepšenou kartu /status Použití. Povolte jej pomocí autohand experiments enable usage_v2.

token_usage_status je experimentální přepínač funkcí (konfigurační cesta features.tokenUsageStatus, výchozí vypnuto), který ukazuje využití tokenu v reálném čase na řádku pracovního stavu – kumulativní tokeny nahoru () a dolů () plus obsazení kontextového okna. ↑15.7k ↓3.2k · context: 6.0% (15.7k/262.1k). Kontextové okno je řešeno podle modelu napříč všemi poskytovateli. Povolte jej pomocí autohand experiments enable token_usage_status.


Příkazy lomítka

Autohand poskytuje bohatou sadu příkazů lomítka pro interaktivní použití. Chcete-li zobrazit návrhy, zadejte / do REPL.

Správa relací

PříkazPopis
/quitUkončit aktuální relaci
/exitUkončit aktuální relaci
/newZačněte novou konverzaci (s extrakcí paměti)
/clearJasná konverzace s automatickou extrakcí paměti
/sessionZobrazit podrobnosti o aktuální relaci
/sessionsSeznam minulých relací
/resumeObnovit předchozí relaci
/historyProcházet historii relace pomocí stránkování
/undoVrátit změny git a poslední kolo
/exportExportovat relaci do markdown/JSON/HTML
/shareSdílet aktuální relaci
/statusZobrazit stav relace
/usageZobrazit model, poskytovatele, kontext a limity využití

Model a poskytovatel

PříkazPopis
/modelPřepnout nebo nakonfigurovat model LLM
/ccKompaktní kontext ručně

Nastavení projektu

PříkazPopis
/initVytvořte soubor AGENTS.md v aktuálním adresáři
/setupSpusťte průvodce nastavením a nakonfigurujte Autohand
/add-dirPřidat adresáře do rozsahu pracovního prostoru

Agenti a týmy

PříkazPopis
/agentsSeznam dostupných sub-agentů
/agents-newVytvořte nového agenta pomocí průvodce
/squadOtevřete/spravujte samostatný běhový modul Autohand Squad
/teamŘídit tým pro paralelní práci
/tasksSpráva úkolů v týmu
/messagePoslat zprávu spoluhráči

Dovednosti

PříkazPopis
/skillsSeznam a správa dovedností
/skills-newVytvořte novou dovednost
/learnNaučte se a nainstalujte doporučené dovednosti

Paměť a nastavení

PříkazPopis
/memoryZobrazení a správa uložených vzpomínek
/settingsNakonfigurujte nastavení Autohand
/statuslineKonfigurace polí stavového řádku skladatele
/experimentsPřepnout přepínače experimentálních funkcí
/syncSynchronizace nastavení mezi zařízeními
/importImport relací, nastavení, MCP, paměti, dovedností a háčků z podporovaných agentů

Oprávnění a háčky

PříkazPopis
/permissionsSpravovat oprávnění nástroje
/hooksSpráva háčků životního cyklu

Autentizace

PříkazPopis
/loginOvěření pomocí Autohand API
/logoutOdhlaste se z účtu Autohand

Nástroje a utility

PříkazPopis
/searchHledat na webu
/formattersSeznam dostupných formátovačů kódu
/lintSeznam dostupných kódových linterů
/completionGenerovat skripty pro dokončení shellu
/planVytvořit plán implementace
/reviewProveďte kontrolu kódu
/pr-reviewZkontrolujte žádost o stažení

Integrace IDE

PříkazPopis
/ideDetekce a připojení k běžícím IDE

MCP (Model Context Protocol)

PříkazPopis
/mcpInteraktivní správce serveru MCP

Automatizace

PříkazPopis
/automodeSpusťte režim autonomního kódování
/repeatNaplánovat opakující se úlohy
/yoloPřepnout režim yolo (automatické schvalování nástrojů)

Integrace Chrome

PříkazPopis
/chromePovolit integraci prohlížeče Chrome

Uživatelské rozhraní a displej

PříkazPopis
/helpZobrazit dostupné lomítko a tipy
/aboutZobrazit informace o Autohand
/themeZměnit barevný motiv
/languageZměnit jazyk zobrazení
/feedbackOdeslat zpětnou vazbu týmu Autohand

Přizpůsobení systémových výzev

Autohand vám umožňuje přizpůsobit systémovou výzvu používanou agentem AI. To je užitečné pro specializované pracovní postupy, vlastní pokyny nebo integraci s jinými systémy.

Příznaky CLI

VlajkaPopis
--sys-prompt <value>Vyměňte celý systémový řádek
--append-sys-prompt <value>Připojit obsah k výchozímu systémovému řádku

Obě vlajky přijímají buď:

  • Vložený řetězec: Přímý textový obsah
  • Cesta k souboru: Cesta k souboru obsahujícímu výzvu (automaticky zjištěno)

Detekce cesty k souboru

Hodnota je považována za cestu k souboru, pokud:

– Začíná na ./, ../, / nebo ~/ – Začíná písmenem jednotky Windows (např. C:\) – Končí na .txt, .md nebo .prompt

  • Obsahuje oddělovače cest bez mezer

Jinak se s ním zachází jako s vloženým řetězcem.

--sys-prompt (Kompletní výměna)

Pokud je k dispozici, zcela nahradí výchozí systémovou výzvu. Agent nenačte:

  • Výchozí pokyny Autohand
  • Pokyny k projektu AGENTS.md
  • Uživatelské/projektové paměti
  • Aktivní dovednosti
# Inline string
autohand --sys-prompt "You are a Python expert. Be concise." --prompt "Write hello world"

# From file
autohand --sys-prompt ./custom-prompt.txt --prompt "Explain this code"

# Home directory
autohand --sys-prompt ~/.autohand/prompts/python-expert.md --prompt "Debug this function"

Ukázkový soubor vlastní výzvy (custom-prompt.txt):

You are a specialized Python debugging assistant.

Rules:
- Focus only on Python code
- Always explain the root cause
- Suggest fixes with code examples
- Be concise and direct

--append-sys-prompt (Přidat k výchozímu nastavení)

Pokud je k dispozici, připojí obsah k úplné výchozí systémové výzvě. Agent stále načte:

  • Výchozí pokyny Autohand
  • Pokyny k projektu AGENTS.md
  • Uživatelské/projektové paměti
  • Aktivní dovednosti

Přiložený obsah je přidán na úplný konec.

# Inline string
autohand --append-sys-prompt "Always use TypeScript instead of JavaScript" --prompt "Create a function"

# From file
autohand --append-sys-prompt ./team-guidelines.md --prompt "Add error handling"

Ukázkový připojovací soubor (team-guidelines.md):

## Team Guidelines

- Use 2-space indentation
- Prefer functional patterns
- Add JSDoc comments to public APIs
- Run tests before committing

Přednost

Když jsou poskytnuty oba příznaky:

  1. --sys-prompt má plnou přednost
  2. Kód --append-sys-prompt je ignorován
# --append-sys-prompt is ignored in this case
autohand --sys-prompt "Custom only" --append-sys-prompt "This is ignored"

Případy použití

Případ použitíDoporučená vlajka
Osobní agent na zakázku--sys-prompt
Minimální pokyny--sys-prompt
Přidat pokyny pro tým--append-sys-prompt
Přidat konvence projektu--append-sys-prompt
Integrace s externími systémy--sys-prompt
Specializované ladění--sys-prompt

Zpracování chyb

ScénářChování
Prázdná hodnotaChyba
Soubor nenalezenPovažováno za vložený řetězec
Prázdný souborChyba
Soubor > 1 MBChyba
Povolení odepřenoChyba
Cesta k adresářiChyba

Příklady

# Python expert mode
autohand --sys-prompt "You are a Python expert. Only write Python code." \
  --prompt "Create a web scraper"

# TypeScript enforcement
autohand --append-sys-prompt "Always use TypeScript, never JavaScript." \
  --prompt "Create a REST API"

# CI/CD integration (non-interactive)
autohand --sys-prompt ./ci-prompt.txt \
  --prompt "Fix the failing tests" \
  --unrestricted \
  --patch

# Custom team workflow
autohand --append-sys-prompt ~/.company/coding-standards.md \
  --prompt "Refactor this module"

Podpora více adresářů

Autohand může pracovat s více adresáři mimo hlavní pracovní prostor. To je užitečné, když má váš projekt závislosti, sdílené knihovny nebo související projekty v různých adresářích.

Vlajka CLI

Pomocí --add-dir přidejte další adresáře (lze použít vícekrát):

# Add a single additional directory
autohand --add-dir /path/to/shared-lib

# Add multiple directories
autohand --add-dir /path/to/lib1 --add-dir /path/to/lib2

# With unrestricted mode (auto-approve writes to all directories)
autohand --add-dir /path/to/shared-lib --unrestricted

Interaktivní příkaz

Použijte /add-dir během interaktivní relace:

/add-dir              # Show current directories
/add-dir /path/to/dir # Add a new directory

Bezpečnostní omezení

Nelze přidat následující adresáře:

– Domovský adresář (~ nebo $HOME) – kořenový adresář (/) – Systémové adresáře (/etc, /var, /usr, /bin, /sbin)

  • Systémové adresáře Windows (C:\Windows, C:\Program Files)
  • Uživatelské adresáře systému Windows (C:\Users\username)
  • WSL připojení Windows (/mnt/c, /mnt/c/Windows)