Friday, October 9, 2026

[OpenCode] เจาะลึก customize-opencode: Built-in Skill หัวใจสำคัญสำหรับการตั้งค่า OpenCode ให้ถูกต้องและปลอดภัย

ในการพัฒนาและใช้งาน OpenCode การตั้งค่าไฟล์คอนฟิกอย่างถูกต้องถือเป็นเรื่องวิกฤต เพราะหากระบุฟิลด์ผิดเพียงเล็กน้อย ระบบจะปฏิเสธการทำงานทันทีด้วย ConfigInvalidError ตัวระบบจึงออกแบบ Built-in Skill ที่ชื่อว่า customize-opencode ขึ้นมา เพื่อทำหน้าที่ควบคุมและนำทางการแก้ไขคอนฟิกของ OpenCode โดยเฉพาะ


1. บทบาทและหน้าที่หลักของ customize-opencode

Skill นี้ถูกปรับแต่งระดับ Core (ผ่าน packages/core/src/plugin/skill.ts) อยู่ในตำแหน่ง <built-in> จึงไม่ใช่ไฟล์สคริปต์ทั่วไป โดยมีหน้าที่หลักดังนี้:

  • นำทางการแก้ไขคอนฟิกอย่างถูกต้อง: แนะนำ Structure และ Schema ล่าสุดจาก https://opencode.ai/config.json เพื่อป้องกันโครงสร้างไฟล์ผิดพลาด
  • ดูแลขอบเขตการตั้งค่าทั้งหมด: ครอบคลุมการตั้งค่าใน opencode.json, opencode.jsonc, ไฟล์ใน .opencode/ และ ~/.config/opencode/
  • จัดการส่วนประกอบของระบบ: สั่งการสร้างหรือแก้ไข Agents, Subagents, Skills, Plugins, MCP Servers และ Permission Rules
  • ให้แนวทางแก้ไขเมื่อคอนฟิกมีปัญหา (Recovery Escape Hatches): แนะนำการใช้ Environmental Variables เช่น OPENCODE_DISABLE_PROJECT_CONFIG หรือ OPENCODE_PURE เพื่อกู้คืนระบบเมื่อไฟล์คอนฟิกมีปัญหา

Thursday, October 8, 2026

[OpenCode] วิธีจัดการ Built-in Agents และ Subagents ใน OpenCode: ปิด Primary และ Override โมเดล

การปรับแต่งคอนฟิกใน OpenCode เมื่อต้องการเอาเอเจนต์ที่ไม่ต้องการใช้งานออก หรือเปลี่ยนมาใช้เอเจนต์ฉบับของเราแทน สามารถทำได้ดังนี้ครับ:


1. Disable Built-in Primary Agent (plan & build)

หากต้องการปิดการใช้งาน Primary Agent เริ่มต้นอย่าง plan หรือ build สามารถระบุค่า "disable": true ในไฟล์คอนฟิกหลัก (เช่น opencode.json) ได้โดยตรง:

{
  "agent": {
    "plan": {
      "disable": true
    },
    "build": {
      "disable": true
    }
  }
}

เมื่อสั่ง Disable แล้ว ระบบจะไม่เรียกใช้งานเอเจนต์เหล่านี้อีก

[OpenCode] สร้าง Workflow อัตโนมัติใน OpenCode ด้วย Custom Slash Commands

ในการพัฒนาระบบด้วย OpenCode หลายคนอาจเกิดข้อสงสัยว่า โครงสร้างของ .opencode/commands/ มีไว้ทำอะไร และความแตกต่างระหว่าง Instruction กับ Custom Command คืออะไร ในเมื่อทั้งคู่ต่างก็ใช้ควบคุม AI ได้เหมือนกัน บทความนี้จะพาไปเจาะลึกบทบาท ศูนย์รวมคำสั่งลัด และแนวทางการนำไปประยุกต์ใช้พัฒนาซอฟต์แวร์จริง

[OpenCode - Multi-Agent] การจัดโครงสร้าง Subfolder ของ Subagent ใน OpenCode

ในการพัฒนาและจัดระเบียบระบบ Multi-Agent ด้วย OpenCode เมื่อโครงการเริ่มมีขนาดใหญ่ขึ้น การจัดเก็บไฟล์ Agent ไว้ที่ Root Directory ทั้งหมดอาจทำให้โปรเจกต์ดูวุ่นวาย การจัดโครงสร้างแบบ Subfolder จึงเป็นทางออกที่ดี แต่รู้หรือไม่ว่า OpenCode มีกลไกการค้นหาและอ้างอิงชื่อ (Name Resolution) ที่มีรายละเอียดสำคัญซึ่ง Dev ต้องควรรู้!


1. โครงสร้างและการค้นหา Agent (Discovery Behavior & Directory Tree)

OpenCode จะสแกนหาไฟล์ .md แบบ Recursive ลึกลงไปในโฟลเดอร์หลัก .opencode/agents/ ไม่ว่าจะซ้อนโฟลเดอร์ย่อยกี่ชั้นก็ตาม โดยจะใช้โครงสร้าง Relative Path มากำหนดชื่อเรียก (Name Resolution) โดยอัตโนมัติ ตัวอย่างเช่น:

.opencode/
└── agents/
    ├── lead.md                 # เรียกใช้ผ่าน @lead
    └── subagents/
        ├── explorer.md         # เรียกใช้ผ่าน @subagents/explorer
        └── tester.md           # เรียกใช้ผ่าน @subagents/tester

หากวางไว้ที่ Root โครงสร้างชื่อจะเป็น @explorer เสมอ แต่ถ้าอยู่ในโฟลเดอร์ย่อย ชื่อเรียกจะถูกแปลงเป็น @subagents/explorer ตามพาธจริง

[OpenCode - Multi-Agent] คู่มือตั้งค่า OpenCode Agent Modes: ควบคุมขอบเขตการทำงาน และจัดโครงสร้าง Multi-Agent

ในสถาปัตยกรรม OpenCode คุณสามารถจัดรูปแบบและขอบเขตการทำงานของ Agent ตามโหมดการทำงานและลำดับขั้น (Hierarchy) เพื่อควบคุมบทบาทหน้าที่ และสิทธิ์ในการเรียกใช้งานได้อย่างชัดเจน ดังนี้:


1. สรุปประเภท Mode: Primary, Subagent และ All

  • Primary Mode: เอเจนต์ระดับบนสุด (Main Orchestrator) เป็นผู้รับคำสั่งโดยตรงจากผู้ใช้ ทำหน้าที่ประมวลผลความต้องการภาพรวม วางแผนงาน และแจกจ่ายคำสั่งย่อยไปยัง Subagents
  • Subagent Mode: เอเจนต์ย่อยเฉพาะทาง ที่รอรับคำสั่งจาก Primary Agent หรือถูกเรียกใช้งานผ่าน @agent_name เพื่อทำภารกิจเฉพาะจุด (เช่น เขียนโค้ด, ตรวจ Security, เขียน Test)
  • All / Dual Mode: โหมดอเนกประสงค์ที่สามารถเป็นได้ทั้ง Primary Agent (คุยตรงกับผู้ใช้) และ Subagent (ถูกเอเจนต์ตัวอื่นเรียกไปช่วยงาน) ขึ้นอยู่กับบริบทของเวิร์กโฟลว์

Wednesday, September 30, 2026

[OpenCode] คู่มือตั้งค่า ความปลอดภัยใน OpenCode: คุม Permissions และปกป้องไฟล์ความลับ

การใช้งาน AI Coding Agent อย่าง OpenCode ช่วยเพิ่มความเร็วในการพัฒนาซอฟต์แวร์ได้อย่างมหาศาล แต่การปล่อยให้ AI ทำงานโดยไม่มีการกำหนดขอบเขตสิทธิ์ที่รัดกุม อาจนำไปสู่ความเสี่ยง เช่น การอ่านไฟล์ความลับ หรือการแก้ไขซอร์สโค้ดโดยไม่ได้อนุญาต บทความนี้สรุปแนวทางการจัดการ Permissions ใน OpenCode แบบถูกต้องตาม Schema และเอกสารทางการล่าสุดครับ


1. โครงสร้างและการตั้งค่า Permissions ใน opencode.json

การจำกัดสิทธิ์ใน OpenCode ทำได้โดยการกำหนดค่าใน opencode.json (ตัวอย่าง) ซึ่งรองรับทั้งการตั้งค่าแบบครอบคลุมและการกำหนดสิทธิ์แบบเจาะจง (Granular Rules):

{
  "$schema": "https://opencode.ai/config.json",
  "permission": {
    "bash": {
"*rm*": "ask", "*Remove-Item*": "ask", "*node -e*": "deny", "*node --eval*": "deny", "*python -c*": "deny", "*python3 -c*": "deny", "*python *.py*": "ask", "*node *.js*": "ask", "*.env*": "deny", "*.env.example*": "allow" }, "read": { "**/.env*": "deny", "**/.env.example": "allow" }, "grep": { "**/.env*": "deny", "**/.env.example": "allow" }, "glob": { "*": "allow" }, "external_directory": { "*": "deny", "~/projects/personal/**": "allow" } }, "share": "manual" }
  • ผลลัพธ์ของสิทธิ์ (Actions): มี 3 ค่าหลัก คือ "allow" (อนุญาตทันที), "ask" (ต้องถามยืนยัน), และ "deny" (ปฏิเสธเด็ดขาด)
  • การใช้ Wildcard Matching: รองรับ * (ตรงกับตัวอักษรใดๆ ในชั้นเดียว), ** (Recursive สแกนทะลุทุก Subdirectory) และ ? (ตรงกับ 1 ตัวอักษร)
  • หลักการอ่านกฎ (Last-Match-Wins): ระบบจะอ่านกฎจากบนลงล่าง กฎข้อสุดท้ายที่ตรงเงื่อนไขจะเป็นกฎที่มีผลจริงเสมอ เช่น การสั่ง "**/.env*": "deny" ไว้ก่อนเพื่อบล็อกไฟล์ .env ทุกรูปแบบแล้วจึงวาง "**/.env.example": "allow" ไว้ด้านล่างสุด เพื่อปลดล็อกให้ใช้เฉพาะไฟล์ตัวอย่างได้

Tuesday, September 29, 2026

[OpenCode] ลองของใหม่! LongCat 2.5 Preview บน OpenCode — AI สายโค้ด Context 1M รองรับโปรเจกต์ยักษ์

สายการพัฒนาซอฟต์แวร์ด้วย AI Coding Tools บน OpenCode ต้องไม่พลาดกับโมเดลแรงรุ่นใหม่อย่าง LongCat 2.5 Preview จาก Meituan ที่เปิดตัวมาเพื่อสายโค้ดดิ้งและเอเจนต์ที่ต้องการประมวลผล Context ขนาดใหญ่โดยเฉพาะ


เจาะลึกฟีเจอร์เด่น LongCat 2.5 Preview

โมเดลระดับ Trillion Parameters นี้ได้รับการปรับแต่งมาให้ทำงานร่วมกับสภาพแวดล้อม Dev Tools ยุคใหม่ได้อย่างมีประสิทธิภาพ:

  • 1M Long Context Window: รองรับ Context สูงสุดถึง 1,000,000 Tokens วิเคราะห์โค้ดฐานใหญ่ (Codebase) และอ่านเอกสารเชิงลึกได้สบาย
  • Native Tool Calling & Multi-Step Reasoning: ออกแบบมาสำหรับการทำงานแบบเอเจนต์ ตัดสินใจใช้ Tools และวางแผนการแก้ปัญหาโค้ดซับซ้อนได้หลายขั้นตอน
  • Deeply Compatible: เข้ากันได้ดีกับ OpenCode, Claude Code และเครื่องมือพัฒนาชั้นนำ

Thursday, September 24, 2026

[OpenCode - Multi-Agent] ใส่ Model ID ผิด ชีวิตเปลี่ยน! เช็กวิธีหาโค้ดโมเดลที่ถูกต้องใน OpenCode ผ่าน Terminal

การค้นหารหัสโมเดล (Model ID) เพื่อนำไปใช้งานกับเอเจนต์ใน OpenCode สามารถทำได้อย่างรวดเร็วผ่าน OpenCode Terminal / CLI โดยตรง ด้วย 2 ขั้นตอนดังนี้


ขั้นตอนที่ 1: ค้นหาชื่อโมเดลผ่าน Terminal

คุณสามารถพิมพ์คำสั่ง /models ขณะใช้งาน OpenCode TUI หรือรันคำสั่งผ่าน Terminal โดยตรง:

opencode models

ระบบจะแสดงรายชื่อโมเดลทั้งหมดที่พร้อมใช้งาน พร้อมรูปแบบ Provider ID เช่น anthropic/claude-sonnet-4-5, openai/gpt-4o หรือโมเดล Local อย่าง ollama/gemma3:4b

Wednesday, September 23, 2026

[Kubernetes] วิธีบริหารจัดการคอนฟิกฉบับมือโปร: แยก Code และ Configuration บน Kubernetes ด้วย Deployment, ConfigMap และ Secret

หลังจากที่เราเรียนรู้วิธีเปิดใช้งาน Kubernetes บน Docker Desktop ไปแล้ว ในบทเรียนนี้เราจะมาดูวิธีการปรับแต่งและควบคุมแอปพลิเคชันอย่างเป็นระบบด้วย Deployment (YAML) ร่วมกับการจัดการคอนฟิกผ่าน ConfigMap และข้อมูลลับด้วย Secret ผ่านการ Mount Volume แบบไม่ต้องพึ่งพา Environment Variables ครับ


ทำความรู้จัก ConfigMap และ Secret

เพื่อแยกส่วนประกอบของการตั้งค่าออกจากตัว Container Image เราจึงใช้วัตถุ 2 ตัวนี้เข้ามาช่วยบริหารจัดการข้อมูล:

  • ConfigMap: สำหรับเก็บข้อมูลการตั้งค่าทั่วไป เช่น ไฟล์ Config, พอร์ต หรือ URL ระบบ
  • Secret: สำหรับเก็บข้อมูลสำคัญ เช่น Password, API Tokens หรือข้อมูลฐานข้อมูล

[Kubernetes] วิธีการเปิดใช้งานและทดลองใช้ Kubernetes (Kube) บน Docker Desktop

สำหรับบทเรียนนี้ เราจะมาเรียนรู้วิธีการเปิดใช้งานและทดลองใช้ Kubernetes (Kube) บน Docker Desktop แบบมือจับทำทีละขั้นตอนครับ เหมาะมากสำหรับผู้เริ่มต้นที่ต้องการสภาพแวดล้อมทดสอบ Local Cluster โดยไม่ต้องติดตั้งเครื่องมือซับซ้อนเพิ่มเติม


ขั้นตอนที่ 1: เปิดใช้งาน Kubernetes ใน Docker Desktop

ปกติแล้ว Docker Desktop จะมาพร้อมกับ Kubernetes ในตัว แต่ถูกปิดไว้อยู่ ให้เปิดใช้งานตามนี้ครับ:

  1. เปิดโปรแกรม Docker Desktop ขึ้นมา
  2. กดที่ไอคอนรูปเฟือง ⚙️ (Settings) บริเวณมุมขวาบน
  3. เลือกแถบเมนู Kubernetes จากรายการด้านซ้าย
  4. ติ๊กถูกที่ช่อง Enable Kubernetes
  5. กดปุ่ม Apply & restart ด้านล่างขวา
  6. รอระบบดาวน์โหลดและเริ่มต้นบริการ (อาจใช้เวลา 3–5 นาที สังเกตไอคอนมุมซ้ายล่างจะเปลี่ยนเป็นสีเขียว)

Monday, September 21, 2026

[ExpressJS] Express.js trust proxy: ตั้งค่าผิดนิดเดียว เสี่ยงโดน IP Spoofing ไม่รู้ตัว

ทำไม Express.js ถึงอ่าน IP ฝั่ง Client ผิดพลาดเมื่ออยู่หลัง Proxy?

เมื่อเรานำ Express.js แอปพลิเคชันไปรันอยู่หลัง Reverse Proxy หรือ Load Balancer (เช่น Nginx, HAProxy, AWS ALB หรือ Cloudflare) Connection ที่วิ่งเข้าหา Node.js โดยตรงจะมาจาก IP ของ Proxy เอง ไม่ใช่ IP ของผู้ใช้งานจริง (Client) ส่งผลให้ค่า req.ip คืนค่าเป็น IP ของ Proxy เสมอ

เพื่อแก้ปัญหานี้ Reverse Proxy จะแนบ HTTP Header เพิ่มเติมเพื่อบอก IP ต้นทาง ได้แก่:

  • X-Forwarded-For: รายการ IP Address ที่ส่งต่อกันมาเป็นทอดๆ (รูปแบบ: client, proxy1, proxy2)
  • X-Forwarded-Proto: โปรโตคอลที่ Client ใช้เชื่อมต่อเข้ามาจริง (http หรือ https)
  • X-Forwarded-Host: Host Header ดั้งเดิมที่ Client เรียกใช้

การตั้งค่า app.set('trust proxy', value) คือการบอกให้ Express ทราบว่าจะยอมรับและนำค่าจาก Header เหล่านี้มาใช้อัปเดต Property เช่น req.ip, req.ips, req.protocol และ req.secure หรือไม่

Tuesday, September 15, 2026

[Playwright] สรุปภาพรวม Playwright (Node.js): เครื่องมือทำ Automated Testing ยุคใหม่ที่เร็วกว่า Selenium

หากคุณกำลังมองหาเครื่องมือสำหรับทำ Automated Testing หรือ Web Scraping ที่รวดเร็วและเสถียรในยุคนี้ Playwright จาก Microsoft คือหนึ่งในตัวเลือกอันดับต้นๆ ที่นักพัฒนาและ QA สาย Node.js ไม่ควรมองข้าม บทความนี้จะสรุปภาพรวม หลักการทำงาน เปรียบเทียบกับ Selenium พร้อมตัวอย่างการใช้งานจริงครับ


1. Playwright คืออะไร และทำงานอย่างไร?

Playwright คือไลบรารี Open-Source จาก Microsoft ที่รองรับการทดสอบบนเบราว์เซอร์หลักครบถ้วน ทั้ง Chromium, Firefox และ WebKit (Safari) โดยมีจุดเด่นและสถาปัตยกรรมสำคัญดังนี้:

  • Direct Protocol Connection: สื่อสารกับเบราว์เซอร์ผ่าน WebSocket / Browser Debugging Protocol โดยตรง ทำให้การสั่งงานรวดเร็วและมีความเสถียรกว่าเครื่องมือรุ่นเก่า
  • Auto-Waiting: มีระบบรอให้ Element พร้อมใช้งานจริง (Visible, Enabled, Stable) ก่อนส่งคำสั่งโดยอัตโนมัติ ช่วยลดปัญหา Flaky Tests หรือการทดสอบล้มเหลวแบบสุ่ม
  • Browser Context Isolation: สามารถแยกสภาวะการทำงาน (Context) ของเบราว์เซอร์ออกจากกันได้เหมือนการเปิด Incognito Mode ทำให้ทดสอบหลายเคสพร้อมกันแบบ Parallel ได้รวดเร็วโดยไม่ดึงทรัพยากรเครื่อง

Sunday, September 13, 2026

[OpenCode] opencode/big-pickle คือโมเดลอะไร? ความลับของ Stealth Model ที่ Dev ต้องรู้!

ช่วงนี้ผู้ใช้งาน OpenCode หลายคนอาจเริ่มสังเกตเห็นชื่อโมเดลแปลกๆ อย่าง opencode/big-pickle โผล่เข้ามาในระบบ บทความนี้จะสรุปให้ฟังว่าโมเดลนี้คืออะไร ทำไมถึงใช้ชื่อนี้ สิ่งที่มือใหม่ต้องระวัง และควรเลือกใช้โมเดลไหนแทนหากชื่อนี้หายไปครับ


1. opencode/big-pickle คืออะไร?

opencode/big-pickle เป็น Alias หรือชื่อเรียกชั่วคราวของโมเดล AI สายเขียนโค้ดและประมวลผลเชิงลึก (Coding & Reasoning Model) บนบริการ OpenCode (OpenCode Zen)

  • จุดเด่น: เน้นการวิเคราะห์ แก้โจทย์ซับซ้อนหลายขั้นตอน และรองรับการทำงานร่วมกับ Tool/Agent ในการเขียนโปรแกรม
  • สเปก: รองรับ Context Window สูงสุด 200,000 Tokens และจ่าย Output ได้สูงสุด 32,000 Tokens
  • สถานะ: เปิดให้ทดลองใช้งานฟรีผ่าน API และบริการ Zen

[OpenCode] คู่มือตั้งค่า MCP Server ใน OpenCode ฉบับเข้าใจง่าย

สำหรับสาย Developer ที่เริ่มย้ายมาใช้ OpenCode (AI Coding Assistant ตัวแรง) แล้วอยากเพิ่มเครื่องมือเสริมผ่าน MCP (Model Context Protocol) อาจจะเคยเจอการสั่งงานล้มเหลวเพราะ Copy ค่า Config มาจากตัวอื่น เช่น Claude Code หรือ Cursor ตรงๆ ไม่ได้

สาเหตุเพราะ OpenCode มีรูปแบบการตั้งค่า MCP เฉพาะตัวที่ต่างจากเจ้าอื่น วันนี้เราจะพามาดูจุดแตกต่าง พร้อมโครงสร้างแบบครบๆ ทั้ง Local และ Remote ครับ!


ความแตกต่าง: Standard Format vs OpenCode Format

บอทและ CLI ส่วนใหญ่ (เช่น Claude Code, Cursor) จะใช้ key คำว่า mcpServers และแยกคำสั่งหลักกับ Parameter ออกจากกันใน args:

แบบ Standard (ที่ใช้ใน Cursor / Claude Code):

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": [
        "@playwright/mcp@latest"
      ]
    }
  }
}

แบบ OpenCode (Local MCP Server):

ใน OpenCode จะเปลี่ยน Key หลักเป็น mcp รวมเอาทั้ง command กับ args มาไว้ใน Array เดียวกัน และต้องระบุประเภทเป็น "type": "local":

{
  "mcp": {
    "playwright": {
      "type": "local",
      "command": ["npx", "-y", "@playwright/mcp@latest"],
      "enabled": true
    }
  }
}

Friday, September 11, 2026

[OpenCode] คู่มือตั้งค่า OpenCode: ความแตกต่างระหว่าง Project Config และ Global Config

การจัดโครงสร้างระบบสำหรับ OpenCode ถือเป็นหัวใจสำคัญที่ช่วยให้ AI Agent ทำงานร่วมกันได้อย่างเป็นระบบ ชัดเจน และยืดหยุ่นสูง บทความนี้สรุปโครงสร้างไฟล์ทั้งหมด ทั้งระดับ Global, Project และการตั้งค่า MCP

[AI] รวมไฟล์ตั้งค่า AI Agent ควรรู้จัก: วิธีคุมกฎ เพิ่มความจำ และสร้าง Workflow ใน Repo

ในการพัฒนาซอฟต์แวร์ร่วมกับ AI Agent ยุคใหม่ สิ่งสำคัญที่จะช่วยให้ AI เข้าใจโครงสร้างโปรเจกต์ กติกาการเขียนโค้ด และขอบเขตการทำงานได้ตรงใจ คือไฟล์กำหนดบริบท (Context Files) ที่ถูกวางไว้ใน Repository บทความนี้ได้รวบรวมไฟล์สำคัญที่คุณควรรู้จักเพื่อปรับแต่ง AI Agent ให้ทำงานได้อย่างมีประสิทธิภาพสูงสุด


1. AGENTS.md (มาตรฐานกลางสำหรับ AI Agents)

ไฟล์มาตรฐานที่กำลังได้รับความนิยมอย่างมากในสายพัฒนา Multi-Agent สรุปกติกาการทำงานของ Agent ทุกตัวในโปรเจกต์

  • หน้าที่หลัก: กำหนดโครงสร้างโปรเจกต์ (Project Overview), ข้อตกลงการเขียนโค้ด (Coding Standards), ขั้นตอนการรัน Test/Build และบทบาทของ Subagents แต่ละตัว
  • จุดเด่น: ถูกออกแบบให้เป็นคู่มือกลางเพื่อให้ AI Agent ไม่ว่าจะเป็นตัวหลักหรือตัวย่อย อ่านเข้าบริบทของโปรเจกต์ได้ทันทีโดยไม่ต้องถามซ้ำ

[OpenCode - Multi-Agent] สร้างทีม AI ส่วนตัวด้วย OpenCode Multi-Agent: เขียนโค้ด ไวขึ้น ปลอดภัย และประหยัด Token

ในการพัฒนาระบบซอฟต์แวร์ยุคใหม่ การพึ่งพา AI โมเดลเดียว (Single-Agent) ให้เขียนโค้ด ตรวจ bugs วางโครงสร้าง และทำ Test cases ทั้งหมดพร้อมกัน มักนำไปสู่ปัญหา Context Overload และความผิดพลาดที่สูงขึ้น OpenCode จึงออกแบบสถาปัตยกรรม Multi-Agent Systems ขึ้นมาเพื่อแก้ไขปัญหานี้โดยเฉพาะ


ทำไมต้อง Multi-Agent ใน OpenCode? (WHY)

การกระจายงานให้ AI หลายตัวที่มีหน้าที่เฉพาะทาง มีข้อดีเหนือกว่าการใช้ AI ตัวเดียวดังนี้:

  • ลด Context Drift & Token Pollution: เอเจนต์ย่อยรับฟังเฉพาะคำสั่งที่เกี่ยวข้อง ทำให้ Context Window ไม่แออัดจนหลงลืมข้อกำหนดหลัก
  • ประหยัดต้นทุน (Cost Efficiency): ให้ Primary Agent ตัวหลักวางแผน แล้วส่งงานย่อยให้โมเดลราคาถูก/ความเร็วสูง ทำแทน
  • แยกความรับผิดชอบชัดเจน (Separation of Concerns): เอเจนต์สำหรับเขียนโค้ดจะไม่ยุ่งกับการแก้โครงสร้างไฟล์ ขณะที่เอเจนต์ตรวจทาน (Reviewer) จะได้รับสิทธิ์แบบ Read-only เพื่อความปลอดภัย

Thursday, September 10, 2026

[Ollama] รัน Local LLM บนเครื่องตัวเองง่ายๆ ด้วย Ollama: ปลอดภัย ไม่เสียค่า API

หากคุณกำลังมองหาวิธีการรัน Local LLM (Large Language Model) บนเครื่องตัวเองเพื่อความเป็นส่วนตัว ไม่ต้องพึ่งพาสายแลน และประหยัดค่า API Ollama คือเครื่องมือยอดนิยมอันดับต้นๆ ในปัจจุบันที่ช่วยให้การติดตั้งและใช้งาน LLM กลายเป็นเรื่องง่ายเพียงไม่กี่คลิก


ทำไมต้องรัน LLM บนเครื่องตัวเองด้วย Ollama?

การใช้งาน Ollama มีจุดเด่นหลักๆ ที่ตอบโจทย์ทั้ง Developer และผู้ใช้งานทั่วไป ดังนี้:

  • Data Privacy & Security: ข้อมูลทั้งหมดถูกประมวลผลภายในเครื่อง ไม่ถูกส่งออกไปยัง Server ข้างนอก ปลอดภัยสำหรับข้อมูลสำคัญ
  • ใช้งานง่าย (Docker-like CLI): สั่งดาวน์โหลดและรันโมเดลผ่าน Terminal ได้ง่ายๆ ด้วยคำสั่งไม่กี่บรรทัด
  • รองรับ Ecosystem หลากหลาย: มี REST API ในตัว สามารถเชื่อมต่อกับ UI ตัวอื่น เช่น Open WebUI หรือต่อกับเอเจนต์อย่าง LangChain, AutoGen และ OpenCode ได้ทันที
  • ประหยัดทรัพยากร: มีระบบ Quantization ช่วยบีบอัดขนาดโมเดล ทำให้รันบน GPU หรือ Apple Silicon (M-Series) ได้อย่างลื่นไหล

Tuesday, September 8, 2026

[OpenCode] รู้จัก OpenCode Zen: ลองใช้ AI Coding Agent ฟรี ไม่ต้องสมัคร ไม่ต้องง้อ API Key

สำหรับ Developer ที่อยากเริ่มใช้งาน AI Coding Agent แต่ไม่อยากเสียเวลาตั้งค่า Local LLMs ให้กินสเปกเครื่อง หรือไม่อยากวุ่นวายกับการสมัคร API Key และผูกบัตรเครดิต ทาง OpenCode มีอีกหนึ่งฟีเจอร์เด็ดที่เรียกว่า OpenCode Zen มาให้ใช้งานกันครับ

วันนี้เราจะมาเจาะลึกกันว่า OpenCode Zen คืออะไร มี Free Models เวอร์ชันไหนให้เลือกใช้บ้าง และมีข้อดี-ข้อจำกัดอะไรที่สาย Dev ต้องรู้ก่อนนำไปใช้งานจริงครับ!

[OpenCode] คู่มือใช้ OpenCode ร่วมกับ Ollama: ปลดล็อก AI Coding Agent สาย Local ปลอดภัย 100% ไม่พึ่ง Cloud

หลังจากที่บทความก่อนหน้านี้เราได้วิเคราะห์ประเด็นเรื่อง Privacy ของ OpenCode (opencode.ai) และได้แนะนำวิธีติดตั้งตัวโปรแกรมไปแล้วว่า หากใช้ Cloud LLMs ข้อมูลโค้ดของเราก็ยังถูกส่งออกไปหา Third-party API อยู่ดี

ทางออกเดียวที่จะทำให้การใช้ OpenCode ปลดล็อกความปลอดภัยแบบ 100% Offline & Private คือการรันโมเดลประมวลผลบนเครื่องตัวเอง และเครื่องมือที่ตอบโจทย์และนิยมที่สุดในขณะนี้คือ Ollama วันนี้เราจะมาดูขั้นตอนการตั้งค่าให้ OpenCode เรียกใช้ Local LLMs ผ่าน Ollama แบบจับมือทำกันครับ!