ENDEAVOR LOCAL AGENT TH

Local agent ภาษาไทยเต็มรูปแบบ ขับเคลื่อนด้วย Qwen3.6-35B ผ่าน MLX และ LangGraph ReAct Agent

ต้องการเครื่อง: Mac Apple Silicon, RAM 48GB ขึ้นไป (สำหรับโมเดล 35B) — เครื่อง RAM น้อยกว่านี้ใช้ Qwen3-14B แทนได้

ดูซอร์สโค้ดบน GitHub → · ดาวน์โหลด →

บทความในหมวดนี้

เริ่มต้นใช้งาน ENDEAVOR LOCAL AGENT TH

Local agent ภาษาไทยเต็มรูปแบบ ขับเคลื่อนด้วย Qwen3.6-35B ผ่าน MLX และ LangGraph ReAct Agent — รันบนเครื่อง 100% ไม่มี API key

ENDEAVOR LOCAL AGENT TH ทำงานอย่างไร — เจาะลึกสถาปัตยกรรม

ทำไมโมเดล 35B ถึงวางแผนก่อนลงมือได้ — planner จัดหมวด simple/complex กลไกบังคับสร้างแผนแบบ deterministic ระบบ sandbox สองชั้น standing trigger ที่ทำงานเองโดยไม่ต้องมีคนพิมพ์ และ 26 เครื่องมือ

Tool: web_search — ค้นเว็บแล้วคืนแค่สรุป ไม่ยัด context เต็มก้อน

เจาะลึกว่า web_search ของ ENDEAVOR LOCAL AGENT TH ดึงเนื้อหาเต็มหน้าจริงมาสรุปด้วยโมเดล 35B ตัวเดียวกัน แล้วเก็บ raw ไว้ใน cache แยกจาก context อย่างไร

Tool: recall_web — ดึงเนื้อหาเต็มจาก cache โดยไม่ต้องพิมพ์สรุปซ้ำ

เจาะลึกว่า recall_web ของ ENDEAVOR LOCAL AGENT TH ดึงเนื้อหาดิบที่ web_search เคยเก็บไว้กลับมาได้อย่างไร รวมถึง auto re-fetch เมื่อ cache หมดอายุ

Tool: browse_url — อ่าน URL เดียวผ่าน Jina Reader โดยไม่ต้องเปิด browser

เจาะลึกว่า browse_url ของ ENDEAVOR LOCAL AGENT TH ดึงเนื้อหาหน้าเว็บที่ render ด้วย JavaScript ผ่านบริการ Jina Reader ได้อย่างไร โดยไม่ต้องรัน browser จริง

Tool: browser_use — agent ย่อยที่รัน browser จริงเมื่อ login/กรอกฟอร์มจำเป็น

เจาะลึกว่า browser_use ของ ENDEAVOR LOCAL AGENT TH เรียกใช้ AI agent ตัวที่สอง (browser-use + Playwright) ขับเคลื่อนด้วยโมเดลตัวเดียวกันในเครื่อง เพื่อคลิก/scroll/กรอกฟอร์มแทนคน

Tool: fetch_sitemap — ดึงรายชื่อ URL ครบทั้งเว็บจาก sitemap.xml แทนการค้นทีละหน้า

เจาะลึกว่า fetch_sitemap ของ ENDEAVOR LOCAL AGENT TH ใช้ sitemap.xml ที่เว็บไซต์เผยแพร่เองเพื่อดึงรายการ URL ครบถ้วนในครั้งเดียว แทนการพึ่ง web_search ที่คืนแค่บางหน้า

Tool: batch_browse — อ่านหลาย URL ในคำเรียกเดียว ด้วยสถาปัตยกรรม 2 เฟสที่กัน LLM ชนกัน

เจาะลึกว่า batch_browse ของ ENDEAVOR LOCAL AGENT TH แยกขั้นดึง HTTP แบบขนานออกจากขั้นสรุปด้วย LLM แบบเรียงคิวอย่างไร เพื่อแก้ปัญหา thread ทับซ้อนกันที่ MLX server รับพร้อมกันไม่ได้

Tool: scrape_table — ดึงตารางจากเว็บ JS-rendered แบบ deterministic ไม่พึ่ง AI

เจาะลึกว่า scrape_table ของ ENDEAVOR LOCAL AGENT TH ใช้ Playwright + pandas.read_html ดึงตารางตัวเลขจากเว็บที่ render ด้วย React/Vue มาเป็น CSV โดยไม่ต้องผ่านโมเดล AI เลย

Tool: bash — shell เต็มรูปแบบที่ป้องกันด้วย sandbox ระดับ OS แทน allow-list

เจาะลึกว่า bash ของ ENDEAVOR LOCAL AGENT TH ต่างจาก AGENT LITE อย่างไร — เปิดให้รันคำสั่งอะไรก็ได้ แต่ล็อกการเขียนไฟล์ด้วย macOS sandbox-exec profile แทนการจำกัดรายชื่อคำสั่ง

Tool: python_exec — รันโค้ด Python ในอินเทอร์พรีเตอร์เดียวกับที่ขับเคลื่อน agent

เจาะลึกว่า python_exec ของ ENDEAVOR LOCAL AGENT TH รันโค้ดวิเคราะห์ข้อมูลด้วย pandas/numpy โดยไม่ต้องผ่าน shell escaping ที่ยุ่งยากของ bash -c ได้อย่างไร

Tool: plot — สร้างกราฟที่ตัวอักษรไทยไม่บิดเบี้ยว ด้วยการ render ผ่าน CoreText

เจาะลึกว่า plot ของ ENDEAVOR LOCAL AGENT TH แก้ปัญหา matplotlib วาดสระ/วรรณยุกต์ไทยลอยผิดตำแหน่งอย่างไร ด้วยการ render ข้อความไทยแยกผ่าน macOS CoreText แล้ววางทับภาพกราฟอีกที

Tool: read_file — สุ่มตัวอย่างเอกสารใหญ่แบบปักหมุดคำที่ query ถามถึงไม่ให้หายไป

เจาะลึกว่า read_file ของ ENDEAVOR LOCAL AGENT TH สร้าง structure map สำหรับไฟล์โค้ดใหญ่ และสุ่มตัวอย่างเอกสารใหญ่แบบ query-aware ไม่ให้ตัวเลขสำคัญหายไปตอน sample

Tool: write_file — สร้างไฟล์ใหม่แบบ atomic เท่านั้น ไม่ใช่สำหรับแก้ไฟล์เดิม

เจาะลึกว่า write_file ของ ENDEAVOR LOCAL AGENT TH ถูกจำกัดขอบเขตให้สร้างไฟล์ใหม่เท่านั้น แยกหน้าที่ออกจาก edit อย่างชัดเจน เพื่อป้องกันการเขียนทับไฟล์เดิมโดยไม่ตั้งใจ

Tool: edit — แก้ไฟล์แบบ find-and-replace พร้อม fallback กันช่องว่างไม่ตรงกัน

เจาะลึกว่า edit ของ ENDEAVOR LOCAL AGENT TH แก้ไฟล์เดิมแบบ surgical โดยบังคับให้ข้อความเดิมต้องไม่กำกวม พร้อมกลไก normalize whitespace ที่กู้การแก้ไขที่พลาดแค่ trailing space

Tool: grep — ค้น regex ข้ามไฟล์พร้อมกันไฟ ReDoS จากบรรทัดที่ยาวผิดปกติ

เจาะลึกว่า grep ของ ENDEAVOR LOCAL AGENT TH ค้นหาข้อความข้ามไฟล์หลายไฟล์พร้อมกันด้วย regex อย่างไร และทำไมถึงข้ามบรรทัดที่ยาวเกิน 2,000 ตัวอักษรโดยตั้งใจ

Tool: workspace_ls — บังคับให้ agent ดูรายชื่อไฟล์จริงก่อนอ้าง path เอง

เจาะลึกว่า workspace_ls ของ ENDEAVOR LOCAL AGENT TH ป้องกันโมเดลเดา path ไฟล์แบบผิดๆ อย่างไร และทำไมมันถึงเป็น hard rule ก่อนเรียก tool_loop แบบอ่านหลายไฟล์

Tool: read_image — OCR ล้วนๆ ไม่มี vision model เพราะโมเดล 35B เป็น text-only

เจาะลึกว่า read_image ของ ENDEAVOR LOCAL AGENT TH ใช้ Apple Vision OCR อย่างเดียวโดยไม่คิวภาพให้โมเดลดู ต่างจาก AGENT LITE อย่างไร รวมถึงการอ่านหน้าจอ (screen) และ URL ภาพจากเว็บ

Tool: remember — 4 โหมดจัดการความจำถาวร พร้อม conflict-scan และ compaction ด้วย LLM

เจาะลึกว่า remember ของ ENDEAVOR LOCAL AGENT TH บันทึกความจำระยะยาวลง memory.md อย่างไร — append/replace/forget/insert, การเช็ค conflict อัตโนมัติด้วย LLM ตอนเขียนทุกครั้ง, และ compaction ด้วย LLM แทนการตัดบรรทัดเก่าทิ้งดื้อๆ เมื่อไฟล์ใหญ่เกิน

Tool: create_plan — ให้โมเดลตัวเบาที่ temperature=0 วางแผน แทน main agent วางแผนเอง

เจาะลึกว่า create_plan ของ ENDEAVOR LOCAL AGENT TH เรียก planner LLM แยกที่ตั้งค่าเฉพาะทางมาวางแผนงานหลายขั้นตอน แทนที่จะให้ main agent (temperature สูงกว่า) คิดขั้นตอนเอง

Tool: tool_loop — วน loop ด้วย Python ล้วนๆ โมเดลเรียกครั้งเดียว ไม่มีทางหลุด

เจาะลึกว่า tool_loop ของ ENDEAVOR LOCAL AGENT TH ประมวลผลรายการสิบหรือร้อยรายการโดยไม่พึ่งให้โมเดลวนเรียก tool ซ้ำเองทีละรอบ ซึ่งเป็นจุดที่โมเดลมักหลุด loop กลางทาง