Autohand Yapılandırma Referansı

June 23, 2026 · View on GitHub

~/.autohand/config.json (veya .toml/.yaml/.yml) içindeki tüm yapılandırma seçenekleri için tam referans.

İpucu: Aşağıdaki ayarların çoğu, dosyayı manuel olarak düzenlemek yerine /settings komutu kullanılarak etkileşimli olarak değiştirilebilir.

Yerelleştirilmiş referanslar:

İçindekiler


Yapılandırma Dosyası Konumu

Autohand yapılandırmayı şu sırayla arar:

  1. AUTOHAND_CONFIG ortam değişkeni (özel yol)
  2. ~/.autohand/config.toml
  3. ~/.autohand/config.yaml
  4. ~/.autohand/config.yml
  5. ~/.autohand/config.json (varsayılan)

Ayrıca temel dizini de geçersiz kılabilirsiniz:

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

Ortam Değişkenleri

DeğişkenAçıklamaÖrnek
AUTOHAND_HOMETüm Autohand verileri için temel dizin/custom/path
AUTOHAND_CONFIGÖzel yapılandırma dosyası yolu/path/to/config.toml
AUTOHAND_API_URLAPI uç noktası (yapılandırmayı geçersiz kılar)https://api.autohand.ai
AUTOHAND_SECRETŞirket/ekip gizli anahtarısk-xxx
AUTOHAND_PERMISSION_CALLBACK_URLİzin geri çağırma URL'si (deneysel)http://localhost:3000/callback
AUTOHAND_PERMISSION_CALLBACK_TIMEOUTMS cinsinden izin geri aramasında zaman aşımı5000
AUTOHAND_NON_INTERACTIVEEtkileşimli olmayan modda çalıştırın1
AUTOHAND_YESTüm istemleri otomatik olarak onayla1
AUTOHAND_NO_BANNERBaşlangıç ​​banner'ını devre dışı bırak1
AUTOHAND_STREAM_TOOL_OUTPUTAraç çıktısını gerçek zamanlı olarak yayınlayın1
AUTOHAND_DEBUGHata ayıklama günlüğünü etkinleştir1
AUTOHAND_THINKING_LEVELAkıl yürütme derinlik düzeyini ayarlayınnormal
AUTOHAND_CLIENT_NAMEİstemci/düzenleyici tanımlayıcısı (ACP uzantıları tarafından belirlenir)zed
AUTOHAND_CLIENT_VERSIONİstemci sürümü (ACP uzantıları tarafından ayarlanır)0.169.0
AUTOHAND_CODEOrtam algılama bayrağı (otomatik olarak ayarlanır)1
AUTOHAND_CODE_SIMPLE--bare kodunu geçmeden çıplak modu etkinleştirin1

Düşünme Seviyesi

AUTOHAND_THINKING_LEVEL ortam değişkeni, modelin kullandığı muhakemenin derinliğini kontrol eder:

DeğerAçıklama
noneGörünür gerekçeler olmadan doğrudan yanıtlar
normalStandart muhakeme derinliği (varsayılan)
extendedKarmaşık görevler için derin akıl yürütme, daha ayrıntılı düşünce sürecini gösterir

Bu genellikle ACP istemci uzantıları (Zed gibi) tarafından yapılandırma açılır menüsü aracılığıyla ayarlanır.

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

Çıplak Mod

Çıplak mod, Autohand öğesini yalnızca açıkça istenen bağlam ve çalışma zamanı entegrasyonlarıyla başlatır. Şunlardan biriyle etkinleştirin:

autohand --bare
AUTOHAND_CODE_SIMPLE=1 autohand

--bare iletildiğinde, Autohand ayrıca çalışan işlem için AUTOHAND_CODE_SIMPLE=1 değerini de ayarlar.

Çıplak mod, otomatik başlatmayı ve etkileşimli entegrasyonları devre dışı bırakır:

  • kancalar ve kanca bildirimleri
  • LSP başlangıcı
  • eklenti senkronizasyonu, eklenti otomatik yükleme ve meta araç otomatik yükleme
  • ilişkilendirme, telemetri, oturum senkronizasyonu, otomatik raporlama ve arka plan ping'leri
  • otomatik bellek/oturum önyükleme bağlamı
  • arka planda bilgi istemi önerileri, güncelleme kontrolleri, özellik bayrağı getirmeleri ve model meta verilerinin önceden getirilmesi
  • anahtarlık ve tarayıcı OAuth kimlik doğrulaması geri dönüşü
  • otomatik AGENTS.md ve sağlayıcı talimatı keşfi
  • istemde yazılan çıplak / dahil tüm eğik çizgi komutları

/Users/alex/project/file.ts gibi eğik çizgi şeklindeki mutlak dosya yolları hâlâ normal bilgi istemi metni olarak kabul edilir. /help, /model veya /mcp gibi komut şeklindeki eğik çizgi girişi, Slash commands are disabled in bare mode. yazdırır ve yürütülmez.

Çıplak modda kimlik doğrulama yalnızca açıktır. Autohand önce AUTOHAND_API_KEY okur, ardından yapılandırılmışsa auth.apiKeyHelper okur. Anahtarlık kimlik bilgilerini okumaz veya OAuth/tarayıcı oturum açma işlemini başlatmaz. Üçüncü taraf sağlayıcılar, sağlayıcıya özel API anahtarlarını ve yapılandırmalarını kullanmaya devam eder.

Bu açık girişler çıplak modda kullanılabilir durumda kalır:

GirişAçıklama
--system-prompt <value>Sistem istemini satır içi metinle veya yol benzeri bir değerle değiştirin
--system-prompt-file <path>Sistem istemini dosya içeriğiyle değiştirin
--append-system-prompt <value>Sistem istemine satır içi metin veya yola benzer bir değer ekleyin
--append-system-prompt-file <path>Dosya içeriğini sistem istemine ekleyin
--add-dir <path...>Çalışma alanı kapsamına açık dizinler ekleme
--mcp-config <path>Açık bir MCP yapılandırma dosyası yükleyin
--settingsAyarları doğrudan CLI bayrağından açın
--config <path>Açık bir Autohand yapılandırma dosyası kullanın
--agents <json|path>Açık satır içi aracılar JSON'u veya açık bir aracılar dizinini yükleyin
--plugin-dir <path>Açık bir eklenti/meta araç dizini yükleyin

Sağlayıcı Ayarları

provider

Kullanılacak aktif LLM sağlayıcısı.

DeğerAçıklama
"openrouter"OpenRouter API'si (varsayılan)
"ollama"Yerel Ollama örneği
"llamacpp"Yerel lama.cpp sunucusu
"openai"OpenAI API'sini doğrudan
"mlx"Apple Silicon'da MLX (yerel)
"llmgateway"Yüksek Lisans Ağ Geçidi birleştirilmiş API
"deepseek"DeepSeek API'si
"zai"Za.ai GLM API
"sakana"Sakana.AI Fugu API'si
"bedrock"AWS Ana Kayası
"custom:<id>"customProviders adresinden kullanıcı tanımlı OpenAI uyumlu sağlayıcı

openrouter

OpenRouter sağlayıcı yapılandırması.

{
  "openrouter": {
    "apiKey": "sk-or-v1-xxx",
    "baseUrl": "https://openrouter.ai/api/v1",
    "model": "your-modelcard-id-here",
    "contextWindow": 262144
  }
}
AlanTürGerekliVarsayılanAçıklama
apiKeydizeEvet-OpenRouter API anahtarınız
baseUrldizeHayırhttps://openrouter.ai/api/v1API uç noktası
modeldizeEvet-Model tanımlayıcı (ör. your-modelcard-id-here)
contextWindowsayıHayırOtomatikTam model bağlam penceresi. Autohand bilindiğinde bunu OpenRouter'dan doldurur.

zai

Z.ai sağlayıcı yapılandırması.

{
  "zai": {
    "apiKey": "your-zai-api-key",
    "baseUrl": "https://api.z.ai/api/paas/v4",
    "model": "glm-5.2",
    "contextWindow": 1000000
  }
}
AlanTürGerekliVarsayılanAçıklama
apiKeydizeEvet-Z.ai API anahtarınız
baseUrldizeHayırhttps://api.z.ai/api/paas/v4API uç noktası
modeldizeEvetglm-5.2Model tanımlayıcı, örneğin glm-5.2, glm-5.1 veya glm-4.5
contextWindowsayıHayırOtomatikTam model bağlam penceresi. Autohand, GLM-5.2 için 1 milyon ve GLM-5.1 için 200 bin anlamına gelir.

sakana

Sakana.AI sağlayıcı yapılandırması. API OpenAI uyumludur ve temel URL olarak https://api.sakana.ai/v1 kullanır.

{
  "sakana": {
    "apiKey": "your-sakana-api-key",
    "baseUrl": "https://api.sakana.ai/v1",
    "model": "fugu",
    "contextWindow": 1000000
  }
}
AlanTürGerekliVarsayılanAçıklama
apiKeydizeEvet-Sakana API anahtarınız
baseUrldizeHayırhttps://api.sakana.ai/v1API uç noktası
modeldizeEvetfuguModel tanımlayıcı, örneğin fugu veya fugu-ultra
contextWindowsayıHayırOtomatikTam model bağlam penceresi. Autohand Fugu modelleri için 1 milyon anlamına gelir.

customProviders

Özel sağlayıcılar, kullanıcıların kod değişikliği veya yeni bir paket sağlayıcı olmadan OpenAI uyumlu bir uç nokta getirmesine olanak tanır. Sağlayıcıyı customProviders altına ekleyin ve ardından provider: "custom:<id>" ile seçin. Aynı akış /model adresinden Yeni sağlayıcı... ile mevcuttur. Kurulum sırasında Autohand, sağlayıcıyı kaydetmeden önce temel URL'yi, kimlik doğrulamayı ve seçilen modeli OpenAI uyumlu /models uç noktası aracılığıyla doğrular.

{
  "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"
        }
      ]
    }
  }
}

Kimlik doğrulama gerektirmeyen yerel OpenAI uyumlu sunucular için apiKeyRequired değerini false olarak ayarlayın ve apiKey atlayın.

AlanTürGerekliVarsayılanAçıklama
iddizeEvet-Kararlı sağlayıcı kimliği. Nesne anahtarıyla eşleşmelidir ve custom:<id> olarak seçilir.
displayNamedizeEvet-/model ve sağlayıcı ayarlarında gösterilen ad.
apiFormatdizeEvet-openai-compatible olmalıdır.
baseUrldizeEvet-https://api.example.com/v1 gibi uç nokta kökü. Autohand, /models'yi doğruluyor ve /chat/completions'yi çağırıyor.
apiKeydizeKoşullu-Barındırılan uç noktalar için taşıyıcı belirteci. apiKeyRequired doğru olduğunda gereklidir.
apiKeyRequiredbooleHayırtrueYerel veya zaten kimliği doğrulanmış ağ geçitleri için false değerini ayarlayın.
modeldizeEvet-Etkin model kimliği.
contextWindowsayıHayırOtomatikBelirteç bütçeleme, durum, telemetri ve senkronizasyon meta verileri için tam bağlam penceresi.
reasoningEffortdizeHayır-İsteğe bağlı none, low, medium, high veya xhigh. Özel OpenAI uyumlu istekler için reasoning_effort olarak gönderildi.
modelsdiziHayır-Model başına bağlam ve akıl yürütme meta verileriyle isteğe bağlı model seçici girişleri.

ollama

Ollama sağlayıcı yapılandırması.

{
  "ollama": {
    "baseUrl": "http://localhost:11434",
    "port": 11434,
    "model": "llama3.2"
  }
}
AlanTürGerekliVarsayılanAçıklama
baseUrldizeHayırhttp://localhost:11434Ollama sunucu URL'si
portsayıHayır11434Sunucu bağlantı noktası (baseUrl'ye alternatif)
modeldizeEvet-Model adı (ör. llama3.2, codellama)

llamacpp

lama.cpp sunucu yapılandırması.

{
  "llamacpp": {
    "baseUrl": "http://localhost:8080",
    "port": 8080,
    "model": "default"
  }
}
AlanTürGerekliVarsayılanAçıklama
baseUrldizeHayırhttp://localhost:8080lama.cpp sunucu URL'si
portsayıHayır8080Sunucu bağlantı noktası
modeldizeEvet-Model tanımlayıcı

openai

OpenAI API yapılandırması.

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

OpenAI ayrıca ChatGPT aboneliğinizi Autohand'nin yerleşik OpenAI oturum açma akışı aracılığıyla da kullanabilir:

{
  "openai": {
    "authMode": "chatgpt",
    "baseUrl": "https://api.openai.com/v1",
    "contextWindow": 1050000,
    "model": "gpt-5.4",
    "chatgptAuth": {
      "accessToken": "...",
      "refreshToken": "...",
      "accountId": "..."
    }
  }
}
AlanTürGerekliVarsayılanAçıklama
authModedizeHayırapi-keyKimlik doğrulama modu: api-key veya chatgpt
apiKeydizeapi-key modu için evet-OpenAI API anahtarı
baseUrldizeHayırhttps://api.openai.com/v1API uç noktası
modeldizeEvet-Model adı (ör. gpt-5.4, gpt-5.4-mini)
contextWindowsayıHayırOtomatikTam model bağlam penceresi. Eski yerel varsayımları geçersiz kılmak için bunu ayarlayın.
chatgptAuthnesnechatgpt modu için evet-Saklanan ChatGPT/Codex kimlik doğrulama jetonları ve hesap kimliği

mlx

Apple Silicon Mac'ler için MLX sağlayıcısı (yerel çıkarım).

{
  "mlx": {
    "baseUrl": "http://localhost:8080",
    "port": 8080,
    "model": "mlx-community/Llama-3.2-3B-Instruct-4bit"
  }
}
AlanTürGerekliVarsayılanAçıklama
baseUrldizeHayırhttp://localhost:8080MLX sunucusu URL'si
portsayıHayır8080Sunucu bağlantı noktası
modeldizeEvet-MLX model tanımlayıcı

llmgateway

LLM Ağ Geçidi birleştirilmiş API yapılandırması. Tek bir API aracılığıyla birden fazla LLM sağlayıcısına erişim sağlar.

{
  "llmgateway": {
    "apiKey": "your-llmgateway-api-key",
    "baseUrl": "https://api.llmgateway.io/v1",
    "model": "gpt-4o"
  }
}
AlanTürGerekliVarsayılanAçıklama
apiKeydizeEvet-Yüksek Lisans Ağ Geçidi API anahtarı
baseUrldizeHayırhttps://api.llmgateway.io/v1API uç noktası
modeldizeEvet-Model adı (ör. gpt-4o, claude-3-5-sonnet-20241022)

API Anahtarı Alma: Bir hesap oluşturmak ve API anahtarınızı almak için llmgateway.io/dashboard adresini ziyaret edin.

Desteklenen Modeller: LLM Gateway, aşağıdakiler de dahil olmak üzere birden fazla sağlayıcının modellerini destekler:

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

deepseek

DeepSeek sağlayıcı yapılandırması. API OpenAI uyumludur ve temel URL olarak https://api.deepseek.com kullanır.

{
  "deepseek": {
    "apiKey": "your-deepseek-api-key",
    "baseUrl": "https://api.deepseek.com",
    "model": "deepseek-v4-flash"
  }
}
AlanTürGerekliVarsayılanAçıklama
apiKeydizeEvet-DeepSeek API anahtarı
baseUrldizeHayırhttps://api.deepseek.comAPI uç noktası
modeldizeEvet-Model adı, örneğin deepseek-v4-flash veya deepseek-v4-pro

bedrock

AWS Bedrock sağlayıcı yapılandırması. converse varsayılan moddur ve AWS SDK kimlik bilgisi zincirini kullanır. OpenAI uyumlu modlar, Bedrock API anahtarlarını ve Bedrock OpenAI uyumlu uç noktaları kullanır.

{
  "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"
AlanTürGerekliVarsayılanAçıklama
modeldizeEvet-Ana kaya modeli kimliği, çıkarım profili kimliği veya ARN
regiondizeEvetKurulumda AWS_REGION, ardından AWS_DEFAULT_REGION, ardından us-east-1AWS bölgesi
apiModedizeHayırconverseconverse, openai-chat veya openai-responses
authModedizeHayırconverse için aws-credentials, OpenAI uyumlu modlar için bedrock-api-keyKimlik doğrulama modu
profiledizeHayır-Kimlik bilgisi zinciri kimlik doğrulaması için isteğe bağlı AWS profili
endpointdizeHayırMod ve bölgeden türetilmiştirÖzel/özel Bedrock uç noktası
apiKeydizeOpenAI uyumlu modlar için Evet-Temel kaya API anahtarı. OpenAI API anahtarlarını kullanmayın.

Profil tabanlı AWS kimlik doğrulaması için aws configure sso komutunu çalıştırın veya AWS_PROFILE=enterprise-prod autohand değerini ayarlayın. IAM rolü, kapsayıcı ve örnek meta veri kimlik bilgileri AWS SDK tarafından desteklenir. Bir modeli kullanmadan önce AWS konsolunda model erişimini etkinleştirin.


Çalışma Alanı Ayarları

{
  "workspace": {
    "defaultRoot": "/path/to/projects",
    "allowDangerousOps": false
  }
}
AlanTürVarsayılanAçıklama
defaultRootdizeGeçerli dizinHiçbiri belirtilmediğinde varsayılan çalışma alanı
allowDangerousOpsboolefalseOnay olmadan yıkıcı işlemlere izin ver

Çalışma Alanı Güvenliği

Autohand kazara hasarı önlemek için tehlikeli dizinlerdeki işlemleri otomatik olarak engeller:

  • Dosya sistemi kökleri (/, C:\, D:\, vb.)
  • Ana dizinler (~, /Users/<user>, /home/<user>, C:\Users\<user>)
  • Sistem dizinleri (/etc, /var, /System, C:\Windows, vb.)
  • WSL Windows bağlantıları (/mnt/c, /mnt/c/Users/<user>)

Bu kontrol atlanamaz. autohand dosyasını tehlikeli bir dizinde çalıştırmayı denerseniz bir hata görürsünüz ve güvenli bir proje dizini belirtmeniz gerekir.

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

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

Tüm ayrıntılar için Çalışma Alanı Güvenliği konusuna bakın.


Kullanıcı Arayüzü Ayarları

{
  "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
  }
}
AlanTürVarsayılanAçıklama
themedize"dark"Terminal çıkışı için renk teması. Yerleşikler arasında dark, light, dracula, sandy, tui, github-dark, cappadocia, rio ve australia bulunur. Eski turkey ve brazil değerleri hâlâ takma ad olarak yükleniyor.
customThemesnesne{}Tema adına göre anahtarlanan satır içi özel tema tanımları. Birini kullanmak için theme değerini aynı tuşa ayarlayın.
autoConfirmboolefalseGüvenli işlemler için onay istemlerini atlayın
readFileCharLimitsayı300Okuma/bulma aracı çıktısından görüntülenecek maksimum karakter (tam içerik hâlâ modele gönderilmektedir)
silentToolOutputboolefalseModel/oturum için araç sonuçlarını korurken terminaldeki araç çıkış bloklarını gizleyin
activityVerbsdize veya dize[]yerleşik havuzÇalışma göstergesi için özel etkinlik fiili veya fiil havuzu, Verb... olarak işlendi
activityVerbsEnabledbooletrueAracı çalışırken Compiling... gibi dönüşümlü etkinlik fiillerini göster
activitySymboldize"✳"Etkinlik göstergesi çıktısında etkinlik fiilinden önce gösterilen sembol
statusLine.showProviderModelbooletrueAktif sağlayıcıyı ve modeli besteci durum satırında göster
statusLine.showContextbooletrueBesteci durum satırında bağlam yüzdesini göster
statusLine.showCommandHintbooletrueBesteci durum satırında komut, bahsetme, beceri ve terminal girişi ipuçlarını göster
statusLine.showPullRequestbooletrueİlişkili çekme isteği numarasını veya hiçbir PR ilişkilendirilmediğinde PR #123 değerini gösterin
statusLine.showSessionLinesboolefalseGeçerli oturum sırasında eklenen ve kaldırılan satırları göster
statusLine.showQueuebooletrueSıraya alınan istek sayılarını durum satırında göster
statusLine.showActiveStatusbooletrueTemsilci çalışırken etkin dönüş durumu metnini göster
statusLine.showActiveMetricsbooletrueTemsilci çalışırken geçen süreyi ve belirteç ölçümlerini göster
statusLine.showCancelHintbooletrueTemsilci çalışırken Esc iptal ipucunu göster
completionReportEnabledbooletrueTamamlanan eylem dönüşlerinden sonra modelden kısa bir tamamlanma raporu eklemesini isteyin
showCompletionNotificationbooletrueGörev tamamlandığında sistem bildirimini göster
showThinkingbooletrueYüksek Lisans'ın muhakeme/düşünce sürecini görüntüleyin
terminalBellbooletrueGörev tamamlandığında terminal zilini çalın (terminal sekmesinde/dock'ta rozeti gösterir)
checkForUpdatesbooletrueBaşlangıçta CLI güncellemelerini kontrol edin
updateCheckIntervalsayı24Güncelleme kontrolleri arasındaki saatler (aralık dahilinde önbelleğe alınan sonucu kullanır)

Özel temalar herhangi bir anlamsal renk belirtecini geçersiz kılabilir. Eksik jetonlar karanlık temadan alınmıştır:

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

Not: readFileCharLimit ve silentToolOutput yalnızca terminal ekranını etkiler. İçeriğin tamamı hâlâ modele gönderilmekte ve araç mesajlarında saklanmaktadır.

Dosyayı düzenlemeden sessiz araç çıktısını değiştirebilirsiniz:

autohand config set silent_tool_output true
autohand config set silent_tool_output false

Dosyayı düzenlemeden aktivite fiillerini dönüşümlü olarak değiştirebilirsiniz:

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

Sabit bir durum etiketi veya projeye özel küçük bir rotasyon istediğinizde, yapılandırma dosyasındaki fiilleri özelleştirin:

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

activityVerbs tek bir dizeyi veya boş olmayan bir dize dizisini kabul eder. activityVerbsEnabled, false olduğunda, Autohand, özel veya yerleşik fiiller arasında geçiş yapmak yerine Working... değerine geri döner.

Yapılandırılmış SITREP istemi de dahil olmak üzere tamamlama raporlarını dosyayı düzenlemeden değiştirebilirsiniz:

autohand config set sitrep true
autohand config set sitrep false

Terminal Zili

terminalBell etkinleştirildiğinde (varsayılan), bir görev tamamlandığında Autohand terminal zilini (\x07) çalar. Bu şunları tetikler:

  • Terminal sekmesindeki rozet - İşin tamamlandığını gösteren görsel bir gösterge gösterir
  • Dock simgesi geri dönüyor - Terminal arka plandayken dikkatinizi çeker (macOS)
  • Ses - Terminal ayarlarınızda terminal sesleri etkinleştirilmişse

Terminale özgü ayarlar:

  • macOS Terminali: Tercihler > Profiller > Gelişmiş > Zil (Görsel/İşitsel)
  • iTerm2: Tercihler > Profiller > Terminal > Bildirimler
  • VS Code Terminali: Ayarlar > Terminal > Entegre: Zili Etkinleştir

Devre dışı bırakmak için:

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

Mürekkep Oluşturucu

Autohand etkileşimli terminaller için varsayılan olarak Ink 7 + React 19 oluşturucuyu kullanır. Eski ui.useInkRenderer yapılandırma alanı göz ardı edilir, böylece eski yapılandırma dosyaları düz terminal oluşturucuyu zorlayamaz. Mürekkep şunları sağlar:

  • Titreşimsiz çıktı: Tüm kullanıcı arayüzü güncellemeleri React mutabakatı yoluyla toplu olarak gerçekleştirilir
  • Çalışma kuyruğu özelliği: Temsilci çalışırken talimatları yazın
  • Daha iyi giriş işleme: Okuma satırı işleyicileri arasında çakışma yok
  • Şekillendirilebilir kullanıcı arayüzü: Gelecekteki gelişmiş kullanıcı arayüzü özelliklerinin temeli

Terminal uyumluluğu için acil durum geri dönüşü:

AUTOHAND_LEGACY_UI=1 autohand

Not: Bu özellik deneyseldir ve uç durumlara sahip olabilir. Varsayılan ora tabanlı kullanıcı arayüzü kararlı ve tamamen işlevsel kalır.

Güncelleme Kontrolü

checkForUpdates etkinleştirildiğinde (varsayılan), Autohand başlangıçta yeni sürümleri kontrol eder:

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

Bir güncelleme mevcutsa:

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

Nasıl çalışır:

  • GitHub API'sinden en son sürümü getirir
  • Önbellekler ~/.autohand/version-check.json ile sonuçlanır
  • Yalnızca updateCheckInterval saatte bir kez kontrol eder (varsayılan: 24)
  • Engellemesiz: kontrol başarısız olsa bile başlatma devam eder

Devre dışı bırakmak için:

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

Veya ortam değişkeni aracılığıyla:

export AUTOHAND_SKIP_UPDATE_CHECK=1

Temsilci Ayarları

Kontrol aracısı davranışı ve yineleme sınırları.

{
  "agent": {
    "maxIterations": 100,
    "enableRequestQueue": true,
    "toolSelectionCache": true,
    "autoMemory": true,
    "idleLogoutEnabled": true,
    "debug": false
  }
}
AlanTürVarsayılanAçıklama
maxIterationssayı100Durdurmadan önce kullanıcı isteği başına maksimum araç yinelemesi
enableRequestQueuebooletrueAracı çalışırken kullanıcıların istekleri yazmasına ve sıraya koymasına izin ver
toolSelectionCachebooletrueEşdeğer takım seçimi girişi için tur başına yerel takım şeması seçimini önbelleğe alın
autoMemorybooletrueBaşarılı etkileşimli dönüşlerden sonra dayanıklı kullanıcı/proje anılarını çıkarın ve kaydedin
idleLogoutEnabledbooletrueBoşta kalma zaman aşımından sonra kimliği doğrulanmış etkileşimli oturumlardan çıkış yapın
debugboolefalseAyrıntılı hata ayıklama çıktısını etkinleştirin (aracının dahili durumunu stderr'e kaydeder)

Araç Şeması Seçimi

Autohand her LLM isteğinde her araç şemasının tamamını göndermez. Sistem istemi, kompakt bir araç yetenek kataloğu içerir ve her istek, aşağıdakilerden seçilen yalnızca küçük bir dizi somut şemayı ortaya çıkarır:

  • tool_search, read_file, fff_find ve fff_grep gibi temel keşif araçları
  • Düzenleme, doğrulama, git, tarayıcı, web, bağımlılık veya proje izleme çalışmaları için amaca uygun araçlar
  • Son tool_search çağrıları yoluyla talep edilen veya açıkça adı geçen araçlar

Bu, kullanıcının amacı bilinmeden önce tüm araç şemalarının gönderilmesinin getirdiği büyük ön bağlam maliyetini ortadan kaldırır. toolSelectionCache eşdeğer dönüşler için yalnızca yerel seçici önbelleğini kontrol eder; kullanıcı öncesi LLM ısınması gerçekleştirmez ve önbelleğe alınmış büyük bir bilgi istemi önekini zorlamaz.

Yerel seçici önbelleğini devre dışı bırakmak için:

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

Kimliği doğrulanmış, uzun süredir devam eden temsilci oturumlarını, iş için beklerken canlı tutmak için:

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

Tek bir işlem için autohand --no-idle-logout kullanın veya AUTOHAND_NO_IDLE_LOGOUT=1 olarak ayarlayın.

Hata Ayıklama Modu

Aracının dahili durumunun ayrıntılı günlüğünü görmek için hata ayıklama modunu etkinleştirin (tepki döngüsü yinelemeleri, bilgi istemi oluşturma, oturum ayrıntıları). Normal çıktıya müdahaleyi önlemek için çıktı stderr'e gider.

Hata ayıklama modunu etkinleştirmenin üç yolu (öncelik sırasına göre):

  1. CLI bayrağı: autohand -d veya autohand --debug
  2. Ortam değişkeni: AUTOHAND_DEBUG=1
  3. Yapılandırma dosyası: agent.debug: true değerini ayarlayın

İstek Sırası

enableRequestQueue etkinleştirildiğinde, aracı önceki bir isteği işlerken siz mesaj yazmaya devam edebilirsiniz. Geçerli görev tamamlandığında girişiniz sıraya alınacak ve otomatik olarak işlenecektir.

  • Mesajınızı yazın ve sıraya eklemek için Enter'a basın
  • Durum satırı kaç isteğin sıraya alındığını gösterir
  • İstekler FIFO (ilk giren ilk çıkar) sırasına göre işlenir
  • Maksimum kuyruk boyutu 10 istektir

İzin Ayarları

Araç izinleri üzerinde ayrıntılı kontrol.

{
  "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

DeğerAçıklama
"interactive"Tehlikeli işlemlerde onay istemi (varsayılan)
"unrestricted"İstem yok, her şeye izin ver
"restricted"Tüm tehlikeli işlemleri reddet

whitelist

Hiçbir zaman onay gerektirmeyen takım modelleri dizisi.

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

blacklist

Her zaman engellenen araç desenleri dizisi.

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

rules

İnce taneli izin kuralları.

| Alan | Tür | Açıklama | | --------- | --------- | --------------------------------- | ---------- | -------------- | | tool | dize | Eşleşecek araç adı | | pattern | dize | Bağımsız değişkenlerle eşleşecek isteğe bağlı model | | action | "allow" | "deny" | "prompt" | Yapılacak işlem |

rememberSession

TürVarsayılanAçıklama
booletrueOturuma ilişkin onay kararlarını hatırlayın

Yerel Proje İzinleri

Her projenin genel yapılandırmayı geçersiz kılan kendi izin ayarları olabilir. Bunlar proje kökünüzde .autohand/settings.local.json dosyasında saklanır.

Bir dosya işlemini onayladığınızda (düzenleme, yazma, silme), otomatik olarak bu dosyaya kaydedilir, böylece bu projede aynı işlem için bir daha sizden istenmez.

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

Nasıl çalışır:

  • Bir işlemi onayladığınızda .autohand/settings.local.json dizinine kaydedilir
  • Bir dahaki sefere aynı işlem otomatik olarak onaylanacak
  • Yerel proje ayarları genel ayarlarla birleştirilir (yerel önceliklidir)
  • Kişisel ayarları gizli tutmak için .gitignore'ye .autohand/settings.local.json ekleyin

Desen formatı:

  • tool_name:path - Dosya işlemleri için (ör. apply_patch:src/file.ts)
  • tool_name:command args - Komutlar için (ör. run_command:npm test)

İzinleri Görüntüleme

Mevcut izin ayarlarınızı iki şekilde görüntüleyebilirsiniz:

CLI Bayrağı (Etkileşimsiz):

autohand --permissions

Bu şunu görüntüler:

  • Mevcut izin modu (etkileşimli, sınırsız, kısıtlı)
  • Çalışma alanı ve yapılandırma dosyası yolları
  • Onaylanan tüm modeller (beyaz liste)
  • Reddedilen tüm kalıplar (kara liste)
  • Özet istatistikler

Etkileşimli Komut:

/permissions

Etkileşimli modda, /permissions komutu aşağıdakilere aynı bilgileri ve seçenekleri sağlar:

  • Beyaz listedeki öğeleri kaldırın
  • Kara listedeki öğeleri kaldırın
  • Kaydedilen tüm izinleri temizle

Yama Modu

Yama modu, çalışma alanı dosyalarınızı değiştirmeden, paylaşılabilir, git uyumlu bir yama oluşturmanıza olanak tanır. Bu şu durumlarda faydalıdır:

  • Değişiklikleri uygulamadan önce kodun gözden geçirilmesi
  • Yapay zeka tarafından oluşturulan değişiklikleri ekip üyeleriyle paylaşma
  • Tekrarlanabilir değişiklik setleri oluşturma
  • Değişiklikleri uygulamadan yakalaması gereken CI/CD işlem hatları

Kullanım

# 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

Davranış

--patch belirtildiğinde:

  • Otomatik onayla: Tüm onaylar otomatik olarak kabul edilir (--yes ima edilir)
  • İstem yok: Onay istemi gösterilmez (--unrestricted ima edilir)
  • Yalnızca önizleme: Değişiklikler yakalanır ancak diske YAZILMAZ
  • Güvenlik zorunlu: Kara listeye alınan işlemler (.env, SSH anahtarları, tehlikeli komutlar) hâlâ engelleniyor

Yamaların Uygulanması

Alıcılar yamayı standart git komutlarını kullanarak uygulayabilir:

# 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

Yama Formatı

Oluşturulan yama, git'in birleştirilmiş fark biçimini takip eder:

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);

Çıkış Kodları

KodAnlamı
0Başarılı, yama oluşturuldu
1Hata (eksik --prompt, izin reddedildi vb.)

Diğer Bayraklarla Birleştirme

# 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

Ekip İş Akışı Örneği

# 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"

Ağ Ayarları

{
  "network": {
    "maxRetries": 3,
    "timeout": 30000,
    "retryDelay": 1000
  }
}
AlanTürVarsayılanMaksimumAçıklama
maxRetriessayı35Başarısız API istekleri için yeniden deneme girişimleri
timeoutsayı30000-Milisaniye cinsinden zaman aşımı isteği
retryDelaysayı1000-Yeniden denemeler arasındaki milisaniye cinsinden gecikme

Telemetri Ayarları

Telemetri varsayılan olarak devre dışıdır (katılma seçeneği). Autohand'nin iyileştirilmesine yardımcı olmak için bunu etkinleştirin.

{
  "telemetry": {
    "enabled": false,
    "apiBaseUrl": "https://api.autohand.ai",
    "batchSize": 20,
    "flushIntervalMs": 60000,
    "maxQueueSize": 500,
    "maxRetries": 3,
    "enableSessionSync": true,
    "companySecret": ""
  }
}
AlanTürVarsayılanAçıklama
enabledboolefalseTelemetriyi etkinleştirme/devre dışı bırakma (katılma)
apiBaseUrldizehttps://api.autohand.aiTelemetri API uç noktası
batchSizesayı20Otomatik temizlemeden önce toplu işlenecek olay sayısı
flushIntervalMssayı60000Milisaniye cinsinden yıkama aralığı (1 dakika)
maxQueueSizesayı500Eski olayları bırakmadan önce maksimum kuyruk boyutu
maxRetriessayı3Başarısız telemetri istekleri için yeniden deneme girişimleri
enableSessionSyncbooletrueTelemetri etkinleştirildiğinde ekip özellikleri için oturumları buluta senkronize edin
companySecretdize""API kimlik doğrulaması için şirket sırrı

Sağlayıcı/model telemetrisi, etkin sağlayıcı kimliğini, model kimliğini ve özel sağlayıcı görünen adı, API biçimi, akıl yürütme çabası ve bağlam penceresi gibi gizli olmayan mevcut meta verileri içerir. API anahtarları ve taşıyıcı belirteçleri hiçbir zaman dahil edilmez.


Harici Aracılar

Özel aracı tanımlarını harici dizinlerden yükleyin.

{
  "externalAgents": {
    "enabled": true,
    "paths": ["~/.autohand/agents", "/team/shared/agents"]
  }
}
AlanTürVarsayılanAçıklama
enabledboolefalseHarici aracı yüklemeyi etkinleştir
pathsdize[][]Acentelerin yükleneceği dizinler

Beceri Sistemi

Beceriler, yapay zeka aracısına özel talimatlar sağlayan talimat paketleridir. Belirli görevler için etkinleştirilebilen isteğe bağlı AGENTS.md dosyaları gibi çalışırlar.

Beceri Keşif Konumları

Beceriler birden fazla yerden keşfedilir ve daha sonraki kaynaklar önceliklidir:

KonumKaynak KimliğiAçıklama
~/.codex/skills/**/SKILL.mdcodex-userKullanıcı düzeyinde Codex becerileri (özyinelemeli)
~/.claude/skills/*/SKILL.mdclaude-userKullanıcı düzeyinde Claude becerileri (tek düzey)
~/.autohand/skills/**/SKILL.mdautohand-userKullanıcı düzeyinde Autohand beceriler (özyinelemeli)
<project>/.claude/skills/*/SKILL.mdclaude-projectProje düzeyinde Claude becerileri (tek düzey)
<project>/.autohand/skills/**/SKILL.mdautohand-projectProje düzeyinde Autohand beceriler (özyinelemeli)

Otomatik Kopyalama Davranışı

Codex veya Claude konumlarından keşfedilen beceriler otomatik olarak ilgili Autohand konumuna kopyalanır:

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

Autohand konumlarındaki mevcut becerilerin üzerine asla yazılmaz.

SKILL.md Formatı

Beceriler YAML ön maddesini ve ardından işaretleme içeriğini kullanır:

---
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...
AlanGerekliMaksimum UzunlukAçıklama
nameEvet64 karakterYalnızca kısa çizgi içeren küçük harfli alfanümerik
descriptionEvet1024 karakterYeteneğin kısa açıklaması
licenseHayır-Lisans tanımlayıcı (örn. MIT, Apache-2.0)
compatibilityHayır500 karakterUyumluluk notları
allowed-toolsHayır-İzin verilen araçların boşlukla ayrılmış listesi
metadataHayır-Ek anahtar/değer meta verileri

Giriş Önekleri

Autohand giriş isteminde özel önekleri destekler:

ÖnekAçıklamaÖrnek
/Eğik çizgi komutlarıAH_KOD_7, AH_KOD_8, AH_KOD_9, AH_KOD_10
@Dosyadan bahsediliyor (otomatik tamamlama)@src/index.ts
$Beceriden bahsedilenler (otomatik tamamlama)$frontend-design, $code-review
!Terminal komutlarını doğrudan çalıştırın! git status, ! ls -la

Beceri İfadeleri ($):

  • Otomatik tamamlama ile mevcut becerileri görmek için $ ve ardından karakterleri yazın
  • Sekme en iyi öneriyi kabul eder (ör. $frontend-design)
  • ~/.autohand/skills/ ve <project>/.autohand/skills/'den beceriler keşfedildi
  • Etkinleştirilen beceriler, mevcut oturum için özel talimatlar olarak komut istemine eklenir
  • Önizleme paneli beceri meta verilerini gösterir (ad, açıklama, etkinleştirme durumu)

Kabuk Komutları (!):

  • Komutlar mevcut çalışma dizininizde çalıştırılır
  • Çıkış doğrudan terminalde görüntülenir
  • Yüksek Lisans'a gitmiyor
  • 30 saniyelik mola
  • Yürütmeden sonra komut istemine geri döner

Eğik Çizgi Komutları

/skills - Paket Yöneticisi

KomutAçıklama
/skillsMevcut tüm becerileri listele
/skills use <name>Geçerli oturum için bir beceriyi etkinleştirin
/skills deactivate <name>Bir beceriyi devre dışı bırakma
/skills info <name>Ayrıntılı beceri bilgilerini göster
/skills installTopluluk kayıt defterine göz atın ve yükleyin
/skills install @<slug>Slug ile bir topluluk becerisi yükleyin
/skills search <query>Topluluk becerileri kayıt defterinde arama yapın
/skills trendingTrend olan topluluk becerilerini göster
/skills remove <slug>Bir topluluk becerisini kaldırma
/skills newEtkileşimli olarak yeni bir beceri yaratın
/skills feedback <slug> <1-5>Bir topluluk becerisine puan verin

/learn - Yüksek Lisans Destekli Beceri Danışmanı

KomutAçıklama
/learnProjeyi analiz edin ve becerileri önerin (hızlı tarama)
/learn deepDaha hedefe yönelik sonuçlar için projeyi derinlemesine tarayın (kaynak dosyaları okur)
/learn updateProjeyi yeniden analiz edin ve LLM tarafından oluşturulan eski becerileri yeniden oluşturun

/learn iki aşamalı bir LLM akışı kullanır:

  1. Aşama 1 - Analiz + Sıralama + Denetim: Proje yapınızı tarar, kurulu becerileri fazlalık/çatışmalara karşı denetler ve topluluk becerilerini alaka düzeyine göre sıralar (0-100).
  2. Aşama 2 - Oluşturma (koşullu): 60'ın üzerinde topluluk becerisi puanı yoksa, projenize uygun özel bir beceri oluşturmayı teklif eder. Oluşturulan beceriler meta verileri (agentskill-source: llm-generated, agentskill-project-hash) içerir, böylece /learn update kod tabanınızın ne zaman değiştiğini algılayabilir ve eski becerileri yeniden oluşturabilir.

Otomatik Beceri Oluşturma (--auto-skill)

--auto-skill CLI bayrağı, etkileşimli danışman akışı olmadan beceriler üretir:

autohand --auto-skill

Bu:

  1. Proje yapınızı analiz edin (package.json, gereksinimleri.txt vb.)
  2. Dilleri, çerçeveleri ve kalıpları tespit edin
  3. Yüksek Lisans'ı kullanarak 3 ilgili beceriyi oluşturun
  4. Becerileri <project>/.autohand/skills/'ye kaydedin

Daha hedefe yönelik, etkileşimli bir deneyim için bunun yerine oturum içinde /learn kullanın.

Algılanan modeller şunları içerir:

  • Diller: TypeScript, JavaScript, Python, Rust, Go
  • Çerçeveler: React, Next.js, Vue, Express, Flask, Django
  • Desenler: CLI araçları, test etme, monorepo, Docker, CI/CD

API Ayarları

Ekip özellikleri için arka uç API yapılandırması.

{
  "api": {
    "baseUrl": "https://api.autohand.ai",
    "companySecret": "sk-team-xxx"
  }
}
AlanTürVarsayılanAçıklama
baseUrldizehttps://api.autohand.aiAPI uç noktası
companySecretdize-Paylaşılan özellikler için ekip/şirket sırrı

Ortam değişkenleri aracılığıyla da ayarlanabilir:

  • AUTOHAND_API_URLapi.baseUrl
  • AUTOHAND_SECRETapi.companySecret

Kimlik Doğrulama Ayarları

Kimlik doğrulama ve kullanıcı oturumu yapılandırması.

{
  "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"
  }
}
AlanTürVarsayılanAçıklama
tokendize-API erişimi için kimlik doğrulama belirteci
usernesne-Kimliği doğrulanmış kullanıcı bilgileri
user.iddize-Kullanıcı Kimliği
user.emaildize-Kullanıcı e-posta adresi
user.namedize-Kullanıcının görünen adı
user.avatardize-Kullanıcı avatarı URL'si (isteğe bağlı)
expiresAtdize-Belirtecin geçerlilik süresi zaman damgası (ISO 8601 biçimi)

Topluluk Becerileri Ayarları

Topluluk becerilerinin keşfi ve yönetimi için yapılandırma.

{
  "communitySkills": {
    "enabled": true,
    "showSuggestionsOnStartup": true,
    "autoBackup": true
  }
}
AlanTürVarsayılanAçıklama
enabledbooletrueTopluluk becerileri özelliklerini etkinleştirin
showSuggestionsOnStartupbooletrueSatıcı becerisi olmadığında başlangıçta beceri önerilerini göster
autoBackupbooletrueKeşfedilen satıcı becerilerini otomatik olarak API'ye yedekleyin

Paylaşım Ayarları

/share komutu aracılığıyla oturum paylaşımına yönelik yapılandırma. Oturumlar autohand.link adresinde düzenlenmektedir.

{
  "share": {
    "enabled": true
  }
}
AlanTürVarsayılanAçıklama
enabledbooletrue/share komutunu etkinleştirme/devre dışı bırakma

YAML Formatı

share:
  enabled: true

Oturum Paylaşımını Devre Dışı Bırakma

Güvenlik veya gizlilik nedeniyle oturum paylaşımını devre dışı bırakmak istiyorsanız:

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

Devre dışı bırakıldığında, /share çalıştırıldığında şunu görüntülenecektir:

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

Ayarlar Senkronizasyonu

Autohand, oturum açmış kullanıcılar için yapılandırmanızı cihazlar arasında senkronize edebilir. Ayarlar Cloudflare R2'de güvenli bir şekilde saklanır ve yüklemeden önce şifrelenir.

{
  "sync": {
    "enabled": true,
    "interval": 300000,
    "exclude": [],
    "includeTelemetry": false,
    "includeFeedback": false
  }
}
AlanTürVarsayılanAçıklama
enabledbooletrue (günlüğe kaydedildi)Ayarların senkronizasyonunu etkinleştirme/devre dışı bırakma
intervalsayı300000Milisaniye cinsinden senkronizasyon aralığı (varsayılan: 5 dakika)
excludedize[][]Senkronizasyondan hariç tutulacak küre desenleri
includeTelemetryboolefalseTelemetri verilerini senkronize edin (kullanıcının iznini gerektirir)
includeFeedbackboolefalseGeri bildirim verilerini senkronize edin (kullanıcının iznini gerektirir)

CLI Bayrağı

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

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

Neler Senkronize Edilir?

Varsayılan olarak bu öğeler oturum açmış kullanıcılar için senkronize edilir:

  • Yapılandırma (config.json) - API anahtarları yüklemeden önce şifrelenir
  • Özel temsilciler (agents/)
  • Topluluk becerileri (community-skills/)
  • Kullanıcı kancaları (hooks/)
  • Bellek (memory/)
  • Proje bilgisi (projects/)
  • Oturum geçmişi (sessions/)
  • Paylaşılan içerik (share/)
  • Özel beceriler (skills/)

Neler Senkronize Edilmez (Varsayılan Olarak)

  • Cihaz Kimliği (device-id) - Cihaz başına benzersiz
  • Hata günlükleri (error.log) - Yalnızca yerel
  • Sürüm önbelleği (version-*.json) - Yerel önbellek dosyaları

İzne Dayalı Senkronizasyon

Bu öğeler, yapılandırmanızda açıkça katılım gerektirir:

  • Telemetri verileri - Senkronize etmek için sync.includeTelemetry: true değerini ayarlayın
  • Geri bildirim verileri - Senkronize etmek için sync.includeFeedback: true değerini ayarlayın
{
  "sync": {
    "enabled": true,
    "includeTelemetry": true,
    "includeFeedback": true
  }
}

Uyuşmazlık Çözümü

Çakışma meydana geldiğinde (aynı dosya birden fazla cihazda değiştirildiğinde), bulut sürümü kazanır. Bu, yeni cihazlarda oturum açarken tutarlılık sağlar.

Güvenlik

config.json içindeki API anahtarları ve diğer hassas veriler, yüklemeden önce kimlik doğrulama jetonunuz kullanılarak şifrelenir. Yalnızca kimlik bilgilerinizle şifreleri çözülebilir.

Şifrelenenler:

  • apiKey adlı alanlar
  • Key, Token, Secret ile biten alanlar
  • password alanı

Nasıl Çalışır?

  1. Başlangıçta: Oturum açtıysanız senkronizasyon hizmeti otomatik olarak başlar
  2. Her 5 dakikada bir: Ayarlar, bulut depolama alanıyla karşılaştırılır
  3. Bulut kazanır: Önce uzaktan yapılan değişiklikler indirilir
  4. Yerel yüklemeler: Yeni yerel değişiklikler yüklendi
  5. Çıkışta: Senkronizasyon hizmeti sorunsuz bir şekilde durur

Dosyaları Hariç Tutma

Belirli dosyaları veya kalıpları senkronizasyonun dışında bırakabilirsiniz:

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

YAML Formatı

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

MCP Ayarları

MCP (Model Bağlam Protokolü) sunucularını, Autohand öğesini harici araçlarla genişletecek şekilde yapılandırın.

{
  "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

  • Tür: boolean
  • Varsayılan: true
  • Açıklama: Tüm MCP desteğini etkinleştirin veya devre dışı bırakın. false olduğunda, başlangıçta hiçbir sunucu bağlı değildir ve MCP araçları kullanılamaz.

mcp.servers

  • Tür: McpServerConfigEntry[]
  • Varsayılan: []
  • Açıklama: MCP sunucusu yapılandırmalarının dizisi.

Sunucu Giriş Alanları

AlanTürGerekliVarsayılanAçıklama
namestringEvet-Benzersiz sunucu tanımlayıcı
transport"stdio" | "sse" | "http"Evet-Taşıma türü
commandstringEvet (stdio)-Sunucu işlemini başlatma komutu
argsstring[]Hayır[]Komut için bağımsız değişkenler
urlstringEvet (sse/http)-Sunucu uç noktası URL'si
headersRecord<string, string>Hayır{}http/sse aktarımı için özel HTTP üstbilgileri (ör. kimlik doğrulama belirteçleri)
envRecord<string, string>Hayır{}Sunucuya aktarılan ortam değişkenleri
autoConnectbooleanHayırtrueBaşlangıçta otomatik olarak bağlanılıp bağlanılmayacağı

Sunucular, başlatma sırasında istemi engellemeden arka planda eşzamansız olarak bağlanır. Sunucuları etkileşimli olarak yönetmek için /mcp kullanın veya topluluk kayıt defterine göz atmak veya özel sunucular eklemek için /mcp add kullanın.

MCP belgelerinin tamamı için bkz. docs/mcp.md.


Kanca Ayarları

Aracı olaylarında kabuk komutlarını çalıştıran yaşam döngüsü kancalarına yönelik yapılandırma. Tüm ayrıntılar için Hook Dokümantasyonu konusuna bakın.

{
  "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

AlanTürVarsayılanAçıklama
enabledbooletrueTüm kancaları genel olarak etkinleştirin/devre dışı bırakın
hooksdizi[]Kanca tanımları dizisi

Kanca Tanımı

AlanTürGerekliVarsayılanAçıklama
eventdizeEvet-Bağlanılacak etkinlik
commanddizeEvet-Yürütülecek kabuk komutu
descriptiondizeHayır-/hooks ekranının açıklaması
enabledbooleHayırtrueKancanın aktif olup olmadığı
timeoutsayıHayır5000Milisaniye cinsinden zaman aşımı
asyncbooleHayırfalseEngellemeden çalıştırın
filternesneHayır-Araca veya yola göre filtrele

Kanca Etkinlikleri

EtkinlikKovulduğunda
pre-toolHerhangi bir araç çalıştırılmadan önce
post-toolAraç tamamlandıktan sonra
file-modifiedDosya oluşturulduğunda/değiştirildiğinde/silindiğinde
pre-promptLLM'ye göndermeden önce
post-responseLLM yanıt verdikten sonra
session-errorHata oluştuğunda

Ortam Değişkenleri

Kancalar çalıştırıldığında şu ortam değişkenleri kullanılabilir:

DeğişkenAçıklama
HOOK_EVENTEtkinlik adı
HOOK_WORKSPACEÇalışma alanı kök yolu
HOOK_TOOLAraç adı (araç olayları)
HOOK_ARGSJSON kodlu araç argümanları
HOOK_SUCCESSdoğru/yanlış (araç sonrası)
HOOK_PATHDosya yolu (dosya-değiştirilmiş)
HOOK_TOKENSKullanılan jetonlar (yanıt sonrası)

Chrome Uzantı Ayarları

Autohand Chrome uzantısı entegrasyonunu kontrol edin. Kılavuzun tamamına bakın: Autohand Chrome'da.

{
  "chrome": {
    "extensionId": "your-extension-id",
    "enabledByDefault": false,
    "browser": "auto",
    "userDataDir": "/path/to/chrome/user-data",
    "profileDirectory": "Default",
    "installUrl": "https://autohand.ai/chrome"
  }
}
AnahtarTürVarsayılanAçıklama
extensionIdstringDoğrudan aktarım için yüklü Chrome uzantı kimliği
enabledByDefaultbooleanfalseCLI ile tarayıcı köprüsünü otomatik olarak başlatın
browserstring"auto"Tercih edilen Chromium tarayıcısı: auto, chrome, chromium, brave, edge
userDataDirstringDoğru profili hedeflemek için tarayıcı kullanıcı verileri dizini
profileDirectorystringTarayıcı profili dizini adı (ör. "Default", "Profile 1")
installUrlstringUzantı kimliği yapılandırılmadığında geri dönüş URL'si

CLI Bayrakları

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

Eğik Çizgi Komutları

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

Tam Örnek

JSON Formatı (~/.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
  }
}

YAML Biçimi (~/.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

TOML Biçimi (~/.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

Dizin Yapısı

Autohand, verileri ~/.autohand/ (veya $AUTOHAND_HOME) konumunda saklar:

~/.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

Proje düzeyinde dizin (çalışma alanı kökünüzde):

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

CLI Bayrakları (Yapılandırmayı Geçersiz Kıl)

Bu bayraklar yapılandırma dosyası ayarlarını geçersiz kılar:

Çekirdek Bayrakları

BayrakAçıklama
-v, --versionGeçerli sürümün çıktısını alın
-p, --prompt [text]Komut modunda tek bir talimatı çalıştırın
--path <path>Çalışma alanı kökünü geçersiz kıl
--config <path>Özel yapılandırma dosyasını kullan
--model <model>Modeli geçersiz kıl
--temperature <n>Örnekleme sıcaklığını ayarlayın (0-1)
--thinking [level]Düşünme/akıl yürütme derinliğini ayarlayın (yok, normal, genişletilmiş)
-y, --yesOtomatik onaylama istemleri
--dry-runÇalıştırmadan önizleme
-d, --debugAyrıntılı hata ayıklama çıktısını etkinleştir
--bareMinimum açık mod; ayrıca AUTOHAND_CODE_SIMPLE=1 değerini ayarlar ve eğik çizgi komutlarını devre dışı bırakır

İzinler ve Güvenlik

BayrakAçıklama
--unrestrictedOnay istemi yok
--restrictedTehlikeli işlemleri reddet
--permissionsGeçerli izin ayarlarını görüntüleyin ve çıkın
--no-idle-logoutUzun süren temsilci oturumları için kimliği doğrulanmış boşta oturum kapatmayı devre dışı bırakın
--yolo [pattern]Araç çağrılarını eşleştirme modelini otomatik olarak onaylama (ör. allow:read,write veya deny:delete)
--timeout <seconds>Otomatik onaylama modu için saniye cinsinden zaman aşımı

Git ve Worktree

BayrakAçıklama
--worktree [name]Oturumu yalıtılmış git çalışma ağacında çalıştırın (isteğe bağlı çalışma ağacı/dal adı)
--tmuxÖzel bir tmux oturumunda başlat (--worktree anlamına gelir; --no-worktree ile kullanılamaz)
--no-worktreeOtomatik modda git çalışma ağacı izolasyonunu devre dışı bırakın
-c, --auto-commitGörevleri tamamladıktan sonra değişiklikleri otomatik olarak uygula
--patchDeğişiklikleri uygulamadan git yamasını oluşturun
--output <file>Yama için çıktı dosyası (--patch ile kullanılır)

Otomatik Mod

BayrakAçıklama
--auto-mode [prompt]Etkileşimli otomatik modu etkinleştirin veya satır içi görevle bağımsız bir döngü başlatın
--max-iterations <n>Maksimum otomatik mod yinelemesi (varsayılan: 50)
--completion-promise <text>Tamamlama işaretçisi metni (varsayılan: "BİTTİ")
--checkpoint-interval <n>Git her N yinelemeyi gerçekleştirir (varsayılan: 5)
--max-runtime <m>Dakika cinsinden maksimum çalışma süresi (varsayılan: 120)
--max-cost <d>Dolar cinsinden maksimum API maliyeti (varsayılan: 10)
--interactive-on-completeOtomatik mod sona erdikten sonra doğrudan etkileşimli moda geçin (yalnızca TTY)

Beceriler ve Öğrenme

BayrakAçıklama
--auto-skillProje analizine dayalı becerileri otomatik olarak oluşturun (etkileşimli danışman için ayrıca bkz. /learn)
--learn/learn beceri danışmanını etkileşimli olmayan bir şekilde çalıştırın (önerilen becerileri analiz edin ve yükleyin)
--learn-updateProjeyi yeniden analiz edin ve LLM tarafından oluşturulan eski becerileri etkileşimli olmayan bir şekilde yeniden oluşturun
--skill-install [name]Bir topluluk becerisi yükleyin (ad belirtilmemişse tarayıcıyı açar)
--projectBeceriyi proje düzeyine yükleyin (--skill-install ile)

Kimlik Doğrulama ve Hesap

BayrakAçıklama
--loginAutohand hesabınızda oturum açın
--logoutAutohand hesabınızdan çıkış yapın
--sync-settingsAyarların senkronizasyonunu etkinleştirme/devre dışı bırakma (varsayılan: oturum açmış kullanıcılar için doğru)

Kurulum ve Bilgi

BayrakAçıklama
--setupAutohand
--aboutAutohand hakkındaki bilgileri göster (sürüm, bağlantılar, katkı bilgileri)
--feedbackAutohand ekibine geri bildirim gönderin
--settingsAutohand ayarlarını yapılandırın (etkileşimli modda /settings ile aynı)

Çalışma Alanı ve Dizinler

BayrakAçıklama
--add-dir <path...>Çalışma alanı kapsamına ek dizinler ekleyin (birden çok kez kullanılabilir)

Çalıştırma Modları

BayrakAçıklama
--mode <mode>Çalıştırma modu: etkileşimli (varsayılan), rpc veya acp
--acp--mode acp'nin kısaltması (stdio üzerinden Ajan İstemci Protokolü)
--teammate-mode <mode>Takım görüntüleme modu: otomatik, işlem içi veya tmux

Kullanıcı Arayüzü ve Dil

BayrakAçıklama
--display-language <locale>Görüntüleme dilini ayarlayın (ör. en, id, zh-cn, fr, de, ja)
--search-engine <provider>Web arama sağlayıcısını ayarlayın (google, cesur, duckduckgo, paralel)
--cc, --context-compactBağlam sıkıştırmayı etkinleştir (varsayılan: açık)
--no-cc, --no-context-compactBağlam sıkıştırmayı devre dışı bırak

Chrome Entegrasyonu

BayrakAçıklama
--chromeChrome tarayıcı entegrasyonunu etkinleştirin (/chrome ile aynı)
--no-chromeChrome tarayıcı entegrasyonunu devre dışı bırakın

Sistem İstemi

BayrakAçıklama
--sys-prompt <value>Tüm sistem istemini değiştirin (satır içi dize veya dosya yolu)
--append-sys-prompt <value>Sistem istemine ekle (satır içi dize veya dosya yolu)
--system-prompt <value>Tüm sistem istemini değiştirin (satır içi dize veya dosya yolu)
--system-prompt-file <path>Tüm sistem istemini dosya içeriğiyle değiştirin
--append-system-prompt <value>Sistem istemine ekle (satır içi dize veya dosya yolu)
--append-system-prompt-file <path>Dosya içeriğini sistem istemine ekle
--mcp-config <path>Açık bir MCP yapılandırma dosyası yükleyin
--agents <json|path>Açık satır içi aracıları JSON veya açık bir aracı dizinini yükleyin
--plugin-dir <path>Açık bir eklenti/meta araç dizini yükleyin

Deney Anahtarı Komutları

KomutAçıklama
autohand experiments listYerel ve uzak özellik kimliklerini, kaynağı, yaşam döngüsü aşamasını ve durumu listeleyin
autohand experiments status <feature>Bir özellik anahtarını, yapılandırma yolunu veya uzak meta verileri ve durumu gösterin
autohand experiments refreshUzak özellik işaretlerini Autohand API'sinden indirin
autohand experiments enable <feature>Yapılandırma destekli özellik anahtarını etkinleştirin
autohand experiments disable <feature>Yapılandırma destekli özellik anahtarını devre dışı bırakın

Uzak özellik bayrakları /v1/feature-flags/evaluate adresinden alınır, ~/.autohand/feature-flags.json konumunda önbelleğe alınır ve API tarafından sağlanan TTL'nin süresi dolduktan sonra yenilenir. Uzak bayrak ortamını seçmek için features.environment kullanın ve kullanıcı tarafından geçersiz kılınabilen uzak bayrakların yerel olarak devre dışı bırakılması için features.remoteOverrides kullanın.

usage_v2, /usage kontrol paneli ve geliştirilmiş /status Kullanım sekmesi için deneysel bir özellik anahtarıdır. autohand experiments enable usage_v2 ile etkinleştirin.

token_usage_status, çalışma durum satırında gerçek zamanlı jeton kullanımını gösteren deneysel bir özellik anahtarıdır (yapılandırma yolu features.tokenUsageStatus, varsayılan olarak kapalıdır) — kümülatif jetonların yukarı () ve aşağı () artı bağlam penceresi doluluğunu, ör. ↑15.7k ↓3.2k · context: 6.0% (15.7k/262.1k). Bağlam penceresi, tüm sağlayıcılarda model başına çözümlenir. autohand experiments enable token_usage_status ile etkinleştirin.


Eğik Çizgi Komutları

Autohand etkileşimli kullanım için zengin bir eğik çizgi komutları seti sağlar. Önerileri görmek için REPL'e / yazın.

Oturum Yönetimi

KomutAçıklama
/quitGeçerli oturumdan çık
/exitGeçerli oturumdan çık
/newYeni bir konuşma başlatın (bellek çıkarmayla)
/clearOtomatik hafıza çıkarma ile konuşmayı netleştirin
/sessionGeçerli oturum ayrıntılarını göster
/sessionsGeçmiş oturumları listele
/resumeÖnceki bir oturumu sürdürme
/historySayfalandırmayla oturum geçmişine göz atın
/undoGit değişikliklerini geri alma ve son dönüş
/exportOturumu markdown/JSON/HTML'ye aktar
/shareGeçerli oturumu paylaş
/statusOturum durumunu göster
/usageModeli, sağlayıcıyı, içeriği ve kullanım sınırlarını göster

Model ve Sağlayıcı

KomutAçıklama
/modelLLM modelini değiştirin veya yapılandırın
/ccİçeriği manuel olarak sıkıştırın

Proje Kurulumu

KomutAçıklama
/initGeçerli dizinde AGENTS.md dosyası oluştur
/setupAutohand
/add-dirÇalışma alanı kapsamına dizinler ekleyin

Temsilciler ve Ekipler

KomutAçıklama
/agentsMevcut alt acenteleri listele
/agents-newSihirbaz aracılığıyla yeni bir temsilci oluşturun
/squadBağımsız Autohand Squad çalışma zamanını açın/yönetin
/teamParalel çalışma için ekibi yönetin
/tasksEkipteki görevleri yönetme
/messageTakım arkadaşına mesaj gönder

Beceriler

KomutAçıklama
/skillsBecerileri listeleyin ve yönetin
/skills-newYeni beceri oluştur
/learnÖnerilen becerileri öğrenin ve yükleyin

Bellek ve Ayarlar

KomutAçıklama
/memorySaklanan anıları görüntüleyin ve yönetin
/settingsAutohand ayarlarını yapılandırın
/statuslineBesteci durum satırı alanlarını yapılandırma
/experimentsDeneysel özellik anahtarlarını değiştir
/syncAyarları cihazlar arasında senkronize edin
/importDesteklenen aracılardan oturumları, ayarları, MCP'yi, belleği, becerileri ve kancaları içe aktarın

İzinler ve Kancalar

KomutAçıklama
/permissionsAraç izinlerini yönetin
/hooksYaşam döngüsü kancalarını yönetin

Kimlik Doğrulaması

KomutAçıklama
/loginAutohand API ile kimlik doğrulaması yapın
/logoutAutohand hesabından çıkış yapın

Araçlar ve Yardımcı Programlar

KomutAçıklama
/searchWeb'de arama yapın
/formattersKullanılabilir kod formatlayıcılarını listeleyin
/lintMevcut kod linterlerini listeleyin
/completionKabuk tamamlama komut dosyaları oluşturun
/planUygulama planı oluşturun
/reviewKod incelemesi gerçekleştirin
/pr-reviewÇekme isteğini inceleyin

IDE Entegrasyonu

KomutAçıklama
/ideÇalışan IDE'leri tespit edin ve onlara bağlanın

MCP (Model Bağlam Protokolü)

KomutAçıklama
/mcpEtkileşimli MCP sunucu yöneticisi

Otomasyon

KomutAçıklama
/automodeOtonom kodlama modunu başlat
/repeatYinelenen işleri planlayın
/yoloYolo modunu değiştir (otomatik onaylama araçları)

Chrome Entegrasyonu

KomutAçıklama
/chromeChrome tarayıcı entegrasyonunu etkinleştirin

Kullanıcı Arayüzü ve Ekran

KomutAçıklama
/helpMevcut eğik çizgi komutlarını ve ipuçlarını görüntüleyin
/aboutAutohand hakkındaki bilgileri göster
/themeRenk temasını değiştir
/languageGörüntüleme dilini değiştirin
/feedbackAutohand ekibine geri bildirim gönderin

Sistem İstemi Özelleştirmesi

Autohand, AI aracısı tarafından kullanılan sistem istemini özelleştirmenize olanak tanır. Bu, özelleştirilmiş iş akışları, özel talimatlar veya diğer sistemlerle entegrasyon için kullanışlıdır.

CLI Bayrakları

BayrakAçıklama
--sys-prompt <value>Tüm sistem istemini değiştirin
--append-sys-prompt <value>İçeriği varsayılan sistem istemine ekleyin

Her iki bayrak da aşağıdakilerden birini kabul eder:

  • Satır içi dize: Doğrudan metin içeriği
  • Dosya yolu: İstemi içeren dosyanın yolu (otomatik olarak algılanır)

Dosya Yolu Algılama

Bir değer şu durumlarda dosya yolu olarak kabul edilir:

  • ./, ../, / veya ~/ ile başlar
  • Windows sürücü harfiyle başlar (ör. C:\)
  • .txt, .md veya .prompt ile biter
  • Boşluksuz yol ayırıcıları içerir

Aksi takdirde satır içi dize olarak kabul edilir.

--sys-prompt (Komple Değiştirme)

Sağlandığında, bu tamamen varsayılan sistem isteminin yerine geçer. Aracı aşağıdakileri YÜKLEMEZ:

  • Varsayılan Autohand talimatları
  • AGENTS.md proje talimatları
  • Kullanıcı/proje hafızaları
  • Aktif beceriler
# 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"

Örnek özel bilgi istemi dosyası (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 (Varsayılana Ekle)

Bu sağlandığında, içeriği tam varsayılan sistem istemine ekler. Aracı yine de yüklenecek:

  • Varsayılan Autohand talimatları
  • AGENTS.md proje talimatları
  • Kullanıcı/proje hafızaları
  • Aktif beceriler

Eklenen içerik en sona eklenir.

# 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"

Örnek ekleme dosyası (team-guidelines.md):

## Team Guidelines

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

Öncelik

Her iki bayrak da sağlandığında:

  1. --sys-prompt tam öncelik taşır
  2. --append-sys-prompt dikkate alınmaz
# --append-sys-prompt is ignored in this case
autohand --sys-prompt "Custom only" --append-sys-prompt "This is ignored"

Kullanım Durumları

Kullanım ÖrneğiÖnerilen Bayrak
Özel temsilci kişiliği--sys-prompt
Minimal talimatlar--sys-prompt
Ekip kuralları ekleyin--append-sys-prompt
Proje kurallarını ekleyin--append-sys-prompt
Harici sistemlerle entegrasyon--sys-prompt
Uzmanlaşmış hata ayıklama--sys-prompt

Hata İşleme

SenaryoDavranış
Boş değerHata
Dosya bulunamadıSatır içi dize olarak değerlendirilir
Boş dosyaHata
Dosya > 1MBHata
İzin reddedildiHata
Dizin yoluHata

Örnekler

# 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"

Çoklu Dizin Desteği

Autohand ana çalışma alanının ötesinde birden fazla dizinle çalışabilir. Bu, projenizin farklı dizinlerde bağımlılıkları, paylaşılan kitaplıkları veya ilgili projeleri olduğunda kullanışlıdır.

CLI Bayrağı

Ek dizinler eklemek için --add-dir kullanın (birden çok kez kullanılabilir):

# 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

Etkileşimli Komut

Etkileşimli bir oturum sırasında /add-dir kullanın:

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

Güvenlik Kısıtlamaları

Aşağıdaki dizinler eklenemez:

  • Ana dizin (~ veya $HOME)
  • Kök dizin (/)
  • Sistem dizinleri (/etc, /var, /usr, /bin, /sbin)
  • Windows sistem dizinleri (C:\Windows, C:\Program Files)
  • Windows kullanıcı dizinleri (C:\Users\username)
  • WSL Windows bağlantıları (/mnt/c, /mnt/c/Windows)