60 คะแนน โดย spilist2 2026-04-20 | 5 ความคิดเห็น | แชร์ทาง WhatsApp

ที่มา

  • ในโน้ตการเปิดตัว Claude Opus 4.7 ส่วนที่สะดุดตาที่สุดคือหัวข้อ 'การใช้โทเคนที่เพิ่มขึ้น'
  • เมื่อเราเข้าสู่ยุคที่ถ้ามีโทเคนและเวลามากพอ ก็ทำอะไรได้มากขึ้นอย่างมหาศาล ประสิทธิภาพการใช้โทเคนจึงยังเป็นประเด็นสำคัญต่อเนื่อง
  • จึงเกิดคำถามว่า "เราจะเพิ่มประสิทธิภาพการใช้โทเคนได้ไหมด้วยการเปลี่ยนค่าการตั้งค่าใน Claude Code และ Codex?" และเมื่อวิเคราะห์เอกสารทางการของ Claude Code (การตั้งค่า/ตัวแปรสภาพแวดล้อม/IDE), เอกสารทางการของ Codex (การตั้งค่า/ตัวแปรสภาพแวดล้อม/MCP) รวมถึงซอร์สโค้ดของ Codex ก็พบผลลัพธ์ที่มีนัยสำคัญ
  • นอกจากโหมด interactive ที่ใช้ประจำแล้ว ยังได้เรียนรู้วิธีเพิ่มประสิทธิภาพการใช้โทเคน/ความเร็วในการบูต/ความเสถียรในโหมด non-interactive แบบ programmable อีกมาก

พรอมป์ต์สำหรับวิเคราะห์สถานะการตั้งค่าของฉัน

เข้าเรื่องเลย สำหรับคนที่อยากตรวจสอบว่าการตั้งค่า coding agent ของตัวเองเป็นอย่างไร นี่คือพรอมป์ต์:

https://gist.github.com/spilist/c468cbf1ed0ffc91100f813aabdcd520/… 를 읽고 그대로 실행해줘  

อะไรคือสิ่งที่กินโทเคนจริง ๆ

ช่องทางที่โทเคนรั่วใน coding agent โดยทั่วไปมีอยู่ 3 แบบ

โฆษณา
  1. ข้อความเพิ่มเติมที่ถูกแนบมาอัตโนมัติในทุกเซสชันหรือทุกเทิร์น
  2. ผลลัพธ์จากการเรียกใช้เครื่องมือที่ยาวเกินไปและยังคงค้างอยู่ในประวัติการสนทนา
  3. การเรียกใช้เพิ่มเติมที่เกิดจากการเชื่อมต่อภายนอก เช่น การค้นหา คอนเน็กเตอร์ หรือการเชื่อมต่อกับ IDE

ต่อไปนี้คือคันโยกใน Claude Code และ Codex ที่ช่วยลดทั้ง 3 อย่างข้างต้นได้ (ขอละเรื่องพื้นฐาน เช่น การปิด MCP server/ปลั๊กอินที่ไม่ใช้ การปรับโมเดลและระดับ reasoning เป็นต้น)

  • คำอธิบายของแต่ละการตั้งค่า รวมถึง trade-off ต่าง ๆ เขียนไว้ละเอียดในบล็อก

Claude Code (เวอร์ชันที่ยืนยันล่าสุด: 2.1.114)

  1. includeGitInstructions: false

  2. autoConnectIde: false

    โฆษณา
  3. CLAUDE_CODE_GLOB_NO_IGNORE=false

  4. ตั้งเพดานผลลัพธ์ขาออก (BASH_MAX_OUTPUT_LENGTH, CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS, MAX_MCP_OUTPUT_TOKENS)

  5. ตัวแปรสภาพแวดล้อมและแฟลกสำหรับงานสั้นและง่าย หรือสำหรับโหมด non-interactive

    • ENABLE_CLAUDEAI_MCP_SERVERS=false: ปิด MCP server
    • CLAUDE_CODE_DISABLE_AUTO_MEMORY=1: ไม่ให้โหลดหน่วยความจำที่บันทึกอัตโนมัติ
    • CLAUDE_CODE_DISABLE_CLAUDE_MDS=1: ไม่สนใจ CLAUDE.md ระดับ global/project
    • CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS=1: ตัด built-in sub-agent และนิยามสกิลออกจาก system prompt
    • --tools: เปิดใช้ native tools แบบเลือกได้ หากเป็น --tools "" จะปิดทั้งหมด สำหรับ worker ที่ใช้เฉพาะความสามารถของโมเดลจริง ๆ ปิดทั้งหมดก็ได้ แต่ถ้าใช้แบบ interactive เพื่อสั่งงานง่าย ๆ แล้วปิดหมด ก็จะทำงานอะไรแทบไม่ได้ ดังนั้นควรเปิดเฉพาะที่จำเป็น เช่น "Bash,Edit,Glob,Grep,Read,Write"
    • --strict-mcp-config: ใช้เฉพาะการตั้งค่า MCP ที่ระบุผ่าน CLI และไม่สนใจการตั้งค่า MCP แบบ global ทำให้ใส่เฉพาะคอนเน็กเตอร์ที่จำเป็นให้แต่ละ worker ได้อย่างเป็นระเบียบ
    • --disable-slash-commands: ตัดนิยาม slash command อย่าง /help, /clear ออกจาก system prompt
    • --no-session-persistence: ไม่ใช้เส้นทางบันทึก/กู้คืนเซสชัน ทำให้ไม่เหลือร่องรอยของการรันแบบครั้งเดียว
    • --exclude-dynamic-system-prompt-sections: ตัดส่วนที่เปลี่ยนไปตามเครื่อง/สภาพแวดล้อมออก เพื่อเพิ่มอัตราการนำ prompt cache กลับมาใช้ซ้ำ
    • --system-prompt: ไปให้สุดด้วยการแทนที่ Claude system prompt ทั้งหมดได้เลย
    โฆษณา
  6. ล้าง attribution ให้เป็นค่าว่าง

Codex CLI (เวอร์ชันที่ยืนยันล่าสุด: 0.121.0 + ซอร์สโค้ด Codex บน Github ของเวอร์ชันนั้น)

  1. ปิด MCP (apps/connectors) ที่เชื่อมกับ ChatGPT (features.apps = false)
  2. web_search = "disabled"
  3. ตั้งเพดานผลลัพธ์ขาออก (tool_output_token_limit)
  4. แฟลกที่ช่วยให้รันในโหมด non-interactive ได้ดี
    • --profile: รวมการตั้งค่าเฉพาะบางชุดไว้ได้ (web_search = "disabled", tool_output_token_limit = 2000 ฯลฯ) แล้วเลือกใช้ตามต้องการ
    • --json + --output-last-message FILE : ทำให้ parse/extract ใน pipeline ได้ง่ายขึ้น จึงลดการใช้โทเคนซ้ำในขั้น post-processing
    • --sandbox read-only: สำหรับ automation ที่ต้องการแค่อ่าน ป้องกันลูปพยายามเขียนโดยไม่ตั้งใจ → retry loop → เสียโทเคนโดยเปล่าประโยชน์
    • --skip-git-repo-check: รันได้แม้อยู่ในไดเรกทอรีที่ไม่ได้ถูกทำเครื่องหมายว่าเชื่อถือได้
    • --ephemeral: ไม่บันทึกไฟล์เซสชันลงดิสก์
    • --color never: ทำให้ผลลัพธ์จาก pipe สะอาดขึ้น
  5. ล้าง attribution ให้เป็นค่าว่าง

ทิ้งท้าย

แม้จะตรวจสอบข้อเท็จจริงอย่างละเอียดแล้ว แต่แน่นอนว่าอาจยังมีส่วนที่ผิดพลาดได้ หากสะดวกแจ้งแก้ไขให้ทราบก็จะขอบคุณมากครับ

5 ความคิดเห็น

 
dzzwe 2026-04-20

น่าจะเป็นบทความอ้างอิงที่ดีเลยครับ ถ้าเนื้อหาหลักเป็นแนวทางปิดวาล์วของ "โทเค็นขาเข้า"
สำหรับผมเจอหลายกรณีที่ปัญหาเกิดจาก "สิ่งที่ลงทะเบียนไว้ตั้งแต่แรก" มีมากเกินไป เลยลองทำเครื่องมือชื่อ claude-slim ขึ้นมาครับ

มันเป็น CLI ที่สแกน จัดหมวดหมู่ และจัดระเบียบสถานการณ์อย่างเช่น จากสกิล 60 อัน มีครึ่งหนึ่งที่ไม่เคยใช้เลยสักครั้ง หรือ CLAUDE.md พองตัวขึ้นเพราะปลั๊กอิน การนับโทเค็นอิงกับ js-tiktoken ไม่ได้ลบออก แต่ย้ายไปไว้ที่ skills.disabled/ เพื่อให้ restore กลับได้ทุกเมื่อ

https://github.com/iops-leo/claude-slim

ทิศทางของมันเสริมกับการตั้งค่าในบทความได้พอดี คิดว่าน่าใช้ควบคู่กันครับ

 
spilist2 2026-04-20

โอ้ ขอบคุณที่แชร์!

 
duse0001 2026-04-20

ขอบคุณที่แชร์ข้อมูลดี ๆ ครับ โดยพื้นฐานแล้วผมรู้สึกได้เลยว่าปริมาณการใช้โทเค็นเองก็น้อยลงมาก เลยหวังว่า Claude จะเพิ่มให้หน่อย พอฮาร์เนสรันไปแล้วดันมาขาดกลางคันก็เลย...

 
spilist2 2026-04-20

ขอบคุณครับ การใช้โทเค็นของ Claude ก็ค่อนข้างสูง และผลงานก็ยังไม่น่าพอใจเมื่อเทียบกับ Codex เลยทำให้ช่วงนี้ผมทำงานด้วย Codex มากกว่า

 
windbug99 2026-04-27

ขอบคุณครับ