🤖HermesBlog
Hermes Official Tutorials · Parte 78/9/2026

บทช่วยสอน 7: ไฟล์คอนฟิก

Tutorial 7: Configuration Files — easy-to-understand guide based on official docs

Hermes tutorial

บทช่วยสอน 7: ไฟล์คอนฟิก

ยินดีต้อนรับกลับนะนักจัดการเอเจนต์ทุกคน! ในบทช่วยสอนนี้ เราจะดำดิ่งสู่หัวใจของ Hermes: ไฟล์คอนฟิก ถ้าคุณเคยรู้สึกหลงทางในทะเลของ YAML และ environment variables ไม่ต้องกลัว—เราจะทำให้เรื่องนี้ง่ายที่สุดเท่าที่จะทำได้

ฐานบ้านของ Hermes

ทุกอย่างอยู่ใน ~/.hermes/ ลองนึกถึงมันว่าเป็นอพาร์ตเมนต์ของเอเจนต์คุณ นี่คือสิ่งที่อยู่ข้างใน:

~/.hermes/
├── config.yaml     # การตั้งค่า (model, terminal, TTS, compression, ฯลฯ)
├── .env            # API keys และ secrets
├── auth.json       # OAuth provider credentials (Nous Portal, ฯลฯ)
├── SOUL.md         # ตัวตนหลักของเอเจนต์ (slot #1 ใน system prompt)
├── memories/       # หน่วยความจำถาวร (MEMORY.md, USER.md)
├── skills/         # สกิลที่เอเจนต์สร้างขึ้น (จัดการผ่าน skill_manage tool)
├── cron/           # งานตามกำหนดเวลา
├── sessions/       # Gateway sessions
└── logs/           # บันทึก (errors.log, gateway.log — secrets ถูกปกปิดอัตโนมัติ)

เส้นทางที่ง่ายที่สุด: ติดตั้งด้วยคำสั่งเดียว

ก่อนที่เราจะลงลึกในรายละเอียด ขอบอกเคล็ดลับมือโปร: รัน hermes setup --portal การ OAuth ครั้งเดียวจะได้ทั้ง model provider และเครื่องมือ Tool Gateway ทั้งสี่อย่างโดยไม่ต้องแตะไฟล์ YAML เลยแม้แต่บรรทัดเดียว สมาชิก Portal ยังได้ส่วนลด 10% สำหรับ token-billed providers อีกด้วย มันเป็นวิธีเริ่มต้นแบบขี้เกียจ และเราชอบมันมาก

การจัดการคอนฟิกของคุณ

Hermes ให้ชุดเครื่องมือครบครันสำหรับจัดการการตั้งค่า นี่คือคำสั่งที่คุณจะใช้เป็นประจำทุกวัน:

hermes config              # ดูคอนฟิกปัจจุบัน
hermes config edit         # เปิด config.yaml ในโปรแกรมแก้ไขของคุณ
hermes config get KEY      # แสดงค่าที่ถูก resolve แล้ว
hermes config set KEY VAL  # ตั้งค่าเฉพาะ
hermes config unset KEY    # ลบค่าที่ผู้ใช้ตั้งไว้
hermes config check        # ตรวจสอบตัวเลือกที่ขาดหายไป (หลังอัปเดต)
hermes config migrate      # เพิ่มตัวเลือกที่ขาดหายไปแบบโต้ตอบ

นี่คือตัวอย่างการใช้งานจริง:

hermes config get model
hermes config set model anthropic/claude-opus-4
hermes config set terminal.backend docker
hermes config unset terminal.backend
hermes config set OPENROUTER_API_KEY sk-or-...  # บันทึกลงใน .env

เคล็ดลับมหัศจรรย์: hermes config set จะจัดเส้นทางค่าไปยังไฟล์ที่ถูกต้องโดยอัตโนมัติ API keys ไปที่ .env ส่วนอย่างอื่นไปที่ config.yaml ไม่ต้องเดาอีกต่อไป!

จะเกิดอะไรขึ้นเมื่อมีความขัดแย้ง?

Hermes จัดการการตั้งค่าตามลำดับนี้ (สำคัญที่สุดมาก่อน):

  1. CLI arguments — เช่น hermes chat --model anthropic/claude-sonnet-4
  2. ~/.hermes/config.yaml — ไฟล์คอนฟิกหลักของคุณ
  3. ~/.hermes/.env — สำหรับความลับ (API keys, tokens, passwords)
  4. Built-in defaults — ค่าฮาร์ดโค้ดที่ปลอดภัย

หลักสังเขป: ความลับใส่ใน .env อย่างอื่นใส่ใน config.yaml เมื่อทั้งสองถูกตั้งค่า config.yaml จะชนะสำหรับการตั้งค่าที่ไม่ใช่ความลับ

การแทนที่ Environment Variables

คุณสามารถอ้างอิง environment variables ใน config.yaml ได้โดยใช้ไวยากรณ์ ${VAR_NAME}:

auxiliary:
  vision:
    api_key: ${GOOGLE_API_KEY}
    base_url: ${CUSTOM_VISION_URL}

delegation:
  api_key: ${DELEGATION_KEY}

การอ้างอิงหลายตัวก็ใช้ได้เช่นกัน: url: "${HOST}:${PORT}" ถ้าตัวแปรไม่ได้ถูกตั้งค่า placeholder จะคงอยู่เหมือนเดิมและมีการบันทึกคำเตือนใน log ไวยากรณ์แบบ Cursor คือ ${env:VAR_NAME} ก็ใช้ได้เช่นกัน คุณจึงคัดลอก snippet จากคอนฟิกของ Cursor หรือ Claude ได้โดยไม่ต้องแก้ไขอะไร

Provider Timeouts

คุณสามารถตั้งค่า timeout แยกตาม provider และตาม model ได้:

providers:
  some-provider:
    request_timeout_seconds: 600
    models:
      some-model:
        timeout_seconds: 300

นอกจากนี้ยังมี stale_timeout_seconds สำหรับตรวจจับ non-streaming calls ที่ค้างอยู่ การตั้งค่าเหล่านี้จะแทนที่ env vars เดิมอย่าง HERMES_API_TIMEOUT และ HERMES_API_CALL_STALE_TIMEOUT

ขีดจำกัด Runtime

สำหรับ server surfaces ที่รันยาวนาน (gateway, hermes serve --isolated) คุณสามารถตั้งค่าขีดจำกัด file descriptor ได้:

runtime:
  nofile_soft_limit: 4096

ค่าเริ่มต้นคือ 4096 ตั้งเป็น 0, false หรือ null เพื่อปิดการปรับแต่งนี้

พฤติกรรมการอัปเดต

การตั้งค่าการอัปเดตอยู่ภายใต้ updates ใน config.yaml:

updates:
  pre_update_backup: quick

สรุป

นี่คือทัวร์คอนฟิกทั้งหมด! จำไว้: hermes setup --portal สำหรับเส้นทางง่ายๆ hermes config set สำหรับการเปลี่ยนแปลงที่รวดเร็ว และเก็บความลับไว้ใน .env เอเจนต์ของคุณจะขอบคุณคุณเอง

ต่อไป: เราจะสำรวจ AI providers และวิธีเชื่อมต่อโมเดลโปรดของคุณ โปรดติดตาม!

📖 เอกสารทางการ

この記事は Hermes Agent のเอกสารทางการに基づいています:เอกสารทางการ › user-guide/configuration