Asosiy tarkibga o'tish

Konfiguratsiya

OpenClaw ixtiyoriy konfiguratsiyasini ~/.openclaw/openclaw.json faylidan o‘qiydi. Agar fayl mavjud bo‘lmasa, OpenClaw xavfsiz standart sozlamalardan foydalanadi. Konfiguratsiya qo‘shishning odatiy sabablari:
  • Kanallarni ulash va botga kim xabar yubora olishini boshqarish
  • Modellar, vositalar, sandbox yoki avtomatlashtirishni (cron, hooks) sozlash
  • Sessiyalar, media, tarmoq yoki UI sozlamalarini moslashtirish
Barcha mavjud maydonlar uchun to‘liq ma’lumotnoma ga qarang.
Konfiguratsiyaga yangimisiz? Interaktiv sozlash uchun openclaw onboard ni ishga tushiring yoki to‘liq nusxa‑ko‘chirishga tayyor konfiguratsiyalar uchun Configuration Examples qo‘llanmasini ko‘ring.

Minimal konfiguratsiya

// ~/.openclaw/openclaw.json
{
  agents: { defaults: { workspace: "~/.openclaw/workspace" } },
  channels: { whatsapp: { allowFrom: ["+15555550123"] } },
}

Konfiguratsiyani tahrirlash

openclaw onboard       # to‘liq sozlash ustasi
openclaw configure     # konfiguratsiya ustasi

Qat’iy tekshiruv (Strict validation)

OpenClaw faqat sxemaga to‘liq mos keladigan konfiguratsiyalarni qabul qiladi. Noma’lum kalitlar, noto‘g‘ri turlar yoki yaroqsiz qiymatlar bo‘lsa, Gateway ishga tushmaydi. Ildiz darajadagi yagona istisno — $schema (string), JSON Schema metama’lumotlari uchun.
Tekshiruv muvaffaqiyatsiz bo‘lsa:
  • Gateway ishga tushmaydi
  • Faqat diagnostika buyruqlari ishlaydi (openclaw doctor, openclaw logs, openclaw health, openclaw status)
  • Muammolarni ko‘rish uchun openclaw doctor ni ishga tushiring
  • Tuzatishlarni qo‘llash uchun openclaw doctor --fix (yoki --yes) ni ishga tushiring

Tez-tez bajariladigan vazifalar

Har bir kanal o‘z konfiguratsiya bo‘limiga ega: channels.<provider>. Sozlash bosqichlari uchun mos sahifani ko‘ring:Barcha kanallar bir xil DM siyosat naqshini qo‘llaydi:
{
  channels: {
    telegram: {
      enabled: true,
      botToken: "123:abc",
      dmPolicy: "pairing",   // pairing | allowlist | open | disabled
      allowFrom: ["tg:123"], // only for allowlist/open
    },
  },
}
Asosiy model va ixtiyoriy zaxira variantlarni belgilang:
{
  agents: {
    defaults: {
      model: {
        primary: "anthropic/claude-sonnet-4-5",
        fallbacks: ["openai/gpt-5.2"],
      },
      models: {
        "anthropic/claude-sonnet-4-5": { alias: "Sonnet" },
        "openai/gpt-5.2": { alias: "GPT" },
      },
    },
  },
}
  • agents.defaults.models model katalogini belgilaydi va /model uchun allowlist vazifasini bajaradi.
  • Model havolalari provider/model formatida bo‘ladi (masalan, anthropic/claude-opus-4-6).
  • Chatda modelni almashtirish uchun Models CLI, zaxira xatti-harakati uchun Model Failover sahifalariga qarang.
  • Maxsus/self-hosted provayderlar uchun Custom providers ga qarang.
DM kirishi kanal bo‘yicha dmPolicy orqali boshqariladi:
  • "pairing" (standart): noma’lum yuboruvchilarga bir martalik juftlash kodi yuboriladi
  • "allowlist": faqat allowFrom dagilar (yoki juftlanganlar)
  • "open": barcha kiruvchi DMlarga ruxsat (talab qiladi allowFrom: ["*"])
  • "disabled": barcha DMlar e’tiborsiz qoldiriladi
Guruhlar uchun groupPolicy + groupAllowFrom yoki kanalga xos allowlistlardan foydalaning.Batafsil ma’lumot uchun to‘liq ma’lumotnoma ga qarang.

Config hot reload

Gateway ~/.openclaw/openclaw.json faylini kuzatadi va o‘zgarishlarni avtomatik qo‘llaydi — ko‘p sozlamalar uchun qo‘lda qayta ishga tushirish talab qilinmaydi.

Qayta yuklash rejimlari

RejimXatti-harakat
hybrid (standart)Xavfsiz o‘zgarishlarni darhol qo‘llaydi. Muhimlari uchun avtomatik qayta ishga tushadi.
hotFaqat hot‑xavfsiz o‘zgarishlarni qo‘llaydi. Qayta ishga tushirish kerak bo‘lsa ogohlantiradi.
restartHar qanday konfiguratsiya o‘zgarishida Gateway’ni qayta ishga tushiradi.
offFayl kuzatuvini o‘chiradi. O‘zgarishlar keyingi qo‘lda restartda kuchga kiradi.
{
  gateway: {
    reload: { mode: "hybrid", debounceMs: 300 },
  },
}

Environment variables

OpenClaw muhit o‘zgaruvchilarini ota‑jarayondan hamda quyidagilardan o‘qiydi:
  • Joriy katalogdagi .env (mavjud bo‘lsa)
  • ~/.openclaw/.env (global fallback)
Hech biri mavjud env o‘zgaruvchilarini ustiga yozmaydi. Konfiguratsiyada ham inline env berishingiz mumkin:
{
  env: {
    OPENROUTER_API_KEY: "sk-or-...",
    vars: { GROQ_API_KEY: "gsk-..." },
  },
}
Agar yoqilgan bo‘lsa va kerakli kalitlar hali o‘rnatilmagan bo‘lsa, OpenClaw login shell’ni ishga tushirib, faqat yetishmayotgan kalitlarni import qiladi:
{
  env: {
    shellEnv: { enabled: true, timeoutMs: 15000 },
  },
}
Env ekvivalenti: OPENCLAW_LOAD_SHELL_ENV=1
Istalgan string qiymatda ${VAR_NAME} sintaksisidan foydalaning:
{
  gateway: { auth: { token: "${OPENCLAW_GATEWAY_TOKEN}" } },
  models: { providers: { custom: { apiKey: "${CUSTOM_API_KEY}" } } },
}
Qoidalar:
  • Faqat katta harfli nomlar mos keladi: [A-Z_][A-Z0-9_]*
  • Yo‘q yoki bo‘sh qiymatlar yuklash vaqtida xatolik beradi
  • Literal chiqarish uchun $${VAR} dan foydalaning
  • $include fayllar ichida ham ishlaydi
  • Inline birlashtirish: "${BASE}/v1""https://api.example.com/v1"

To‘liq ma’lumotnoma

Barcha maydonlar bo‘yicha batafsil hujjat uchun Configuration Reference sahifasiga qarang.
Bog‘liq: Configuration Examples · Configuration Reference · Doctor