วิธีดูว่าเอเจนต์เขียนโค้ด AI ของคุณรันอะไรบนเซิร์ฟเวอร์ของคุณ
เอเจนต์ของคุณอยู่บนเซิร์ฟเวอร์ production และเทอร์มินัลบอกแค่ว่ามันกำลังเรียกเครื่องมือ มันรันคำสั่งอะไร และเครื่องตอบอะไรกลับมา? ทรานสคริปต์บอกคุณได้ก็ต่อเมื่อทุกอย่างจบไปแล้ว นี่คือวิธีที่เราทำให้มันมองเห็นได้ขณะที่กำลังเกิดขึ้น สิ่งที่เราลองทำก่อน และวิธีได้ผลแบบเดียวกันโดยไม่ต้องใช้แอปของเรา
คุณถามเอเจนต์ DevOps ว่าทำไม API บน production ถึงช้า มันเริ่มทำงาน ในเทอร์มินัลของมัน คุณเห็นบรรทัดหนึ่งบอกว่ามันกำลังเรียกเครื่องมือ แล้วก็อีกบรรทัด แล้วก็อีกบรรทัด หกการเรียกต่อมา มันบอกคุณว่าดิสก์เต็ม 97 % และเสนอจะล้างโฟลเดอร์ล็อก
จริงๆ แล้วมันรันอะไรบนเครื่องนั้น? du ตัวไหน find ตัวไหน มันลบอะไรไปแล้วหรือยัง? คำตอบมีอยู่ แต่อยู่ในทรานสคริปต์ของเซสชัน เขียนเป็น JSON และคุณอ่านมันหลังเกิดเหตุ บนแล็ปท็อปแบบนั้นไม่เป็นไร บนเซิร์ฟเวอร์ production หลังเกิดเหตุคือสายเกินกว่าจะพูดว่า "เดี๋ยว ไม่ใช่โฟลเดอร์นั้น"
เราสร้าง AgentsRoom แอปเดสก์ท็อปที่รันเอเจนต์เขียนโค้ดและให้เครื่องมือแก่พวกมันเพื่อเข้าถึงเซิร์ฟเวอร์ ฐานข้อมูล และคลัสเตอร์ของคุณ นี่คือเรื่องราวว่าเราทำให้การเรียกเหล่านั้นมองเห็นได้ขณะที่มันเกิดขึ้นอย่างไร เวอร์ชันที่ไม่เวิร์ก ตัวเลขเบื้องหลังเวอร์ชันที่เวิร์ก และวิธีได้สิ่งเดียวกันถ้าคุณไม่ได้ใช้แอปของเรา
คำตอบสั้นๆ
- CLI แสดงให้คุณเห็นว่าเครื่องมือได้รันแล้ว ไม่ได้แสดงเซสชันที่อีกฝั่ง คำสั่งเต็มและเอาต์พุตของมันไปอยู่ในทรานสคริปต์บนดิสก์ของคุณ
- ถ้าจะดูแบบสด ต้องมีอะไรสักอย่างบันทึกการเรียกแต่ละครั้งตอนที่มันเริ่ม ไม่ใช่ตอนที่เซสชันจบ
- หนึ่งบันทึกต่อหนึ่งการเชื่อมต่อเวิร์ก หนึ่งแท็บเทอร์มินัลต่อหนึ่งคำสั่งไม่เวิร์ก เราวัดได้ 166 คำสั่งระยะไกลในเซสชันเดียว
- เก็บบันทึกนั้นไว้บนเครื่องของคุณ บรรทัดคำสั่งบนโฮสต์ production มีทั้งข้อมูลลับและข้อมูลลูกค้าติดไปด้วย
- ถ้าไม่ใช้แอปของเรา: hook ของ Claude Code ที่ต่อท้ายทุกคำสั่ง shell ลงไฟล์พาคุณไปได้เกือบตลอดทาง และทรานสคริปต์ให้ส่วนที่เหลือ
ทำไมทรานสคริปต์ยังไม่พอเมื่อทำงานบนเซิร์ฟเวอร์
Claude Code, Codex และ CLI อื่นๆ บันทึกทุกอย่างจริง Claude Code เขียนไฟล์ JSONL หนึ่งไฟล์ต่อเซสชันใต้ ~/.claude/projects/ ส่วน Codex เขียนใต้ ~/.codex/sessions/ การเรียกเครื่องมือทุกครั้งอยู่ในนั้นพร้อมอินพุตและผลลัพธ์
ปัญหาไม่ใช่ความครบถ้วน แต่เป็นจังหวะเวลาและรูปแบบ ทรานสคริปต์เขียนขึ้นเพื่อ CLI ให้มันกลับมาทำเซสชันต่อได้ คุณอ่านมันเมื่อเอเจนต์หยุดแล้ว ด้วยการไล่ขุดบรรทัด JSON เมื่อมีสามเอเจนต์ทำงานพร้อมกัน คุณก็ต้องอ่านสามไฟล์ และเทอร์มินัลของเอเจนต์ ซึ่งเป็นที่ที่คุณมองอยู่จริงๆ ก็แสดงแค่สรุปแบบพับไว้ของการเรียกแต่ละครั้ง
สำหรับโค้ดบนแล็ปท็อป การอ่านทีหลังคือรอบการรีวิวปกติ: คุณดู diff ก่อน commit แต่เซิร์ฟเวอร์ไม่มี diff systemctl restart หรือ DELETE มีผลทันทีที่มันรัน
สิ่งที่เราลองก่อน และ 166 คำสั่ง
เครื่องมือระยะไกลตัวแรกที่เราทำให้เอเจนต์ เปิดการเชื่อมต่อในแท็บเทอร์มินัล ดูเหมือนถูกต้อง: ผู้ใช้เห็นเซสชันได้ แต่มันล้มเหลวในแบบที่เราไม่คาดคิด
เครื่องมือนั้นไม่มีทางให้เอเจนต์อ่านสิ่งที่เกิดขึ้นในแท็บที่มันเพิ่งเปิด ในโปรเจกต์ของผู้ใช้รายหนึ่ง เอเจนต์จึงเลิกใช้มัน ตัวเลขในเซสชันนั้น: เรียกเครื่องมือเชื่อมต่อของเรา 16 ครั้ง และรันคำสั่ง sshpass 166 คำสั่งผ่านเครื่องมือ shell ของเอเจนต์เอง โดยเอเจนต์ขอรหัสผ่านจากผู้ใช้ และผู้ใช้วางมันลงในแชต ข้อมูลรับรองของ production จึงไปอยู่ในรูปข้อความธรรมดาในทรานสคริปต์ ใน ps aux ระหว่างที่แต่ละคำสั่งรัน และในไฟล์ใต้ /tmp
บทเรียนไม่ใช่ "เอเจนต์ประมาท" เอเจนต์ทำสิ่งเดียวที่ได้ผล เครื่องมือที่ปลอดภัยแต่ไม่ให้เอเจนต์ทำงานของมันได้จะถูกเลี่ยง และทางเลี่ยงนั้นแย่กว่าการไม่มีเครื่องมือเลย
เราจึงเขียน ssh_exec: เอเจนต์ส่งคำสั่งมาหนึ่งคำสั่ง AgentsRoom รันมันบนการเชื่อมต่อที่บันทึกไว้โดยเก็บรหัสผ่านไว้ในแอป แล้วส่งเอาต์พุตและ exit code กลับไป เอเจนต์ไม่เคยเห็นข้อมูลรับรอง และไม่มีเหตุผลต้องสร้างบรรทัด sshpass
นั่นแก้ปัญหาความปลอดภัย แต่สร้างปัญหาการมองเห็นขึ้นมาแทน ถ้า ssh_exec แต่ละครั้งเปิดแท็บ เซสชันนั้นคงสร้าง 166 แท็บ ดังนั้น ssh_exec จึงไม่เปิดแท็บเลย และตลอดสองเดือน ที่เดียวที่จะเห็นคำสั่งเหล่านั้นก็คือบทสนทนาของเอเจนต์ เหมือนเดิมอีกครั้ง
หนึ่งบันทึกต่อหนึ่งการเชื่อมต่อ
เวอร์ชันที่เราปล่อยเมื่อ 29 ตุลาคม 2026 (AgentsRoom 1.242.0) ยึดกฎข้อเดียว: ไม่มีแท็บต่อคำสั่ง การเรียกทุกครั้งจะไปลงในบันทึกแทน หนึ่งบันทึกต่อหนึ่งการเชื่อมต่อ
- แท็บ "กิจกรรม" ของแผงด้านขวา ข้างๆ "ไฟล์", "การเปลี่ยนแปลง" และ "การทดสอบ" แสดงการเชื่อมต่อที่เอเจนต์แตะเป็นการ์ด (คำสั่งล่าสุด เอเจนต์ เวลา สถานะ) และการเรียก 40 ครั้งล่าสุดบนไทม์ไลน์ กรองตามเอเจนต์ได้ และค้นหาได้ทั้งคำสั่ง ชื่อการเชื่อมต่อ และเอาต์พุต
- บันทึกของการเชื่อมต่อ อ่านเหมือนเทอร์มินัล:
เอเจนต์ · เวลาตามด้วย$ คำสั่งตามด้วยเอาต์พุต แล้วก็เสร็จสิ้น · รหัสออก 0 · 1.2 sเอาต์พุต SSH เลื่อนเข้ามาแบบสด และมุมมองจะตามด้านล่างไปเรื่อยๆ จนกว่าคุณจะเลื่อนขึ้น มีปุ่มคัดลอกบันทึกทั้งหมดเป็นข้อความ - ป้ายในส่วนหัวของเอเจนต์ หนึ่งป้ายต่อหนึ่งเซิร์ฟเวอร์ ฐานข้อมูล หรือคลัสเตอร์ที่เอเจนต์นั้นแตะ พร้อมจุดสีเขียวระหว่างการเรียก คลิกเดียวเปิดบันทึกนั้น
- แบดจ์ "เอเจนต์กำลังทำงาน" บนแถวของการเชื่อมต่อในหน้าต่าง "เซิร์ฟเวอร์", "ฐานข้อมูล" และ Kubernetes เฉพาะขณะที่มีการเรียกกำลังรันอยู่
บันทึกเป็นแบบอ่านอย่างเดียว ถ้าจะพิมพ์ลงเครื่องเอง แท็บ SSH ของหน้าต่าง "เซิร์ฟเวอร์" ยังคงเป็นทางเข้า หน้าฟีเจอร์ฉบับเต็มคือ การเชื่อมต่อ SSH สำหรับเอเจนต์ AI และฝั่งฐานข้อมูลอยู่ที่ การเชื่อมต่อฐานข้อมูล
อะไรถูกบันทึก และอะไรไม่ถูกบันทึก
| การเรียก | อยู่ในบันทึก | เหตุผล |
|---|---|---|
ssh_exec (SSH, AWS SSM, WinRM) | ใช่ | กรณีหลัก: คำสั่งบนเครื่องระยะไกล โดยไม่มีแท็บของตัวเอง |
ssh_transfer | ใช่ | ไฟล์ที่คัดลอกไปยังหรือดึงมาจากเซิร์ฟเวอร์คือการกระทำบนเซิร์ฟเวอร์นั้น |
db_query, db_schema | ใช่ | SQL ตามที่เอเจนต์เขียน และแถวแรกๆ ของผลลัพธ์ |
kube_kubectl | ใช่ | แสดงเป็นบรรทัด kubectl พร้อมอาร์กิวเมนต์ |
commands_run, ssh_connect | ไม่ | มันเปิดแท็บเทอร์มินัลที่คุณดูได้อยู่แล้ว |
เครื่องมือ shell ของเอเจนต์เอง (ssh, psql, kubectl ที่พิมพ์ตรงๆ) | ไม่ | ไม่ได้ผ่าน AgentsRoom: อยู่ในเทอร์มินัลและทรานสคริปต์ของเอเจนต์ |
บรรทัดสุดท้ายคือข้อจำกัดที่เราบอกกันตรงๆ บันทึกเห็นเฉพาะสิ่งที่ผ่านเครื่องมือของเรา ถ้าคุณอยากให้ทุกการกระทำระยะไกลไปปรากฏที่นั่น เครื่องมือต้องเป็นทางที่ง่ายกว่าสำหรับเอเจนต์ ซึ่งก็คือบทเรียนจาก 166 คำสั่ง
อีกรายละเอียดหนึ่ง: มีแค่ SSH ที่สตรีมเอาต์พุตระหว่างที่คำสั่งรัน เพราะมันผ่านเทอร์มินัลจริงบนเครื่องของคุณ ผลลัพธ์ของ WinRM, SQL และ kubectl จะปรากฏเมื่อการเรียกเสร็จ
ต้นทุนของการเก็บบันทึก
ผู้ใช้ของเรารันเอเจนต์พร้อมกันจำนวนมาก: 45 เอเจนต์ใน 18 โปรเจกต์บนเครื่องหนึ่ง และ 48 คอนโซลบนอีกเครื่อง อะไรก็ตามที่นับต่อเอเจนต์หรือต่อชิ้นเอาต์พุตจะถูกคูณด้วยตัวเลขนั้น บันทึกจึงมีขอบเขตตายตัว:
- 120 การเรียกต่อโปรเจกต์ ตัวเก่าสุดถูกทิ้งก่อน
- เอาต์พุต 32,000 ตัวอักษรต่อการเรียก โดยเก็บส่วนท้ายไว้ ซึ่งเป็นที่ที่ข้อผิดพลาดและ exit code อยู่
- คำสั่งหรือ SQL 2,000 ตัวอักษร ต่อการเรียก
- ข้อความอัปเดตหนึ่งข้อความต่อการเรียกทุก 120 ms สำหรับเอาต์พุตแบบสด ไม่ใช่หนึ่งข้อความต่อทุกชิ้นของเอาต์พุตเทอร์มินัล
- ไม่มีตัวจับเวลาตอนว่าง ระหว่างที่ไม่มีเอเจนต์เรียกเครื่องมือระยะไกล บันทึกไม่มีต้นทุนเลย
การบันทึกเกิดขึ้นที่จุดเดียว: บริดจ์ที่การเรียกเครื่องมือของทุก CLI ต้องผ่าน นั่นคือเหตุผลที่มันทำงานเหมือนกันทั้งกับ Claude Code, Codex, Antigravity CLI หรือ CLI อื่นๆ ที่แอปรัน โดยไม่ต้องมีโค้ดแยกต่อผู้ให้บริการ
ข้อจำกัดที่เราเลือก: ไม่มีอะไรออกจากเครื่อง
บันทึกถูกเก็บไว้ในหน่วยความจำของแอปเดสก์ท็อปและหายไปเมื่อคุณปิดแอป มันไม่ซิงก์ไปยังเซิร์ฟเวอร์ของเรา ซึ่งไม่ปกติสำหรับเรา: เกือบทุกอย่างใน AgentsRoom ตามบัญชีของคุณไปทุกคอมพิวเตอร์
อันนี้ไม่ตาม และเราตั้งใจให้เป็นแบบนั้น เอาต์พุตของ env บนเซิร์ฟเวอร์มีข้อมูลลับ SELECT บนตารางลูกค้ามีข้อมูลลูกค้า เครื่องมือที่สร้างขึ้นเพื่อทำให้สิ่งเหล่านั้นมองเห็นได้ ไม่ควรคัดลอกมันไปไว้ที่ใหม่อีก
โทรศัพท์ติดตามบันทึกเดียวกันได้จากโปรไฟล์ของเอเจนต์ (แอปมือถือ 2.47 ขึ้นไป) สตรีมวิ่งจากคอมพิวเตอร์ไปยังโทรศัพท์ของคุณผ่านลิงก์ที่เข้ารหัสตั้งแต่ต้นทางถึงปลายทาง ข้อมูลลับถูกปิดบังก่อนออกจากเครื่อง (API key, คู่ KEY=value, รหัสผ่านใน URL, โทเค็น) และไม่มีอะไรถูกเก็บไว้บนเซิร์ฟเวอร์ การเรียกเดียวกันยังอ่านได้ในบทสนทนาของเอเจนต์เหมือนเดิม
audit log ของ Claude Code เป็นอีกเรื่องหนึ่ง
ถ้าคุณค้นหา "Claude Code audit log" คุณน่าจะเจอ Compliance API ของ Anthropic สำหรับ Claude Enterprise: ฟีดกิจกรรม เหตุการณ์ audit log และสำหรับเซสชันในเครื่องที่ลงชื่อเข้าใช้บัญชี Enterprise ก็มีทรานสคริปต์ของเซสชันด้วย มันสร้างมาเพื่อผู้ดูแลระบบและทีม compliance ครอบคลุมทั้งองค์กร และคุณอ่านมันหลังเกิดเหตุ
มันตอบคำถาม "ใครในบริษัททำอะไรกับ Claude" แต่ไม่ได้ตอบ "ตอนนี้เอเจนต์ของฉันกำลังรันคำสั่งอะไรบนเซิร์ฟเวอร์ฐานข้อมูล" ทั้งสองอย่างอยู่ร่วมกันได้ และถ้าคุณทำงานในบริษัทที่มีข้อกำหนดด้าน compliance คุณน่าจะต้องมีอย่างแรกอยู่แล้ว ไม่ว่าคุณจะใช้อะไรกับอย่างที่สอง
ถ้าคุณไม่ได้ใช้ AgentsRoom
คุณได้ส่วนใหญ่ของสิ่งนี้จากสิ่งที่ CLI มีให้อยู่แล้ว
บันทึกทุกคำสั่ง shell ตอนที่มันเริ่ม hook ของ Claude Code รันคำสั่งก่อนการเรียกเครื่องมือแต่ละครั้งได้ คู่มือ hooks แสดงรูปแบบไว้: hook PreToolUse บนเครื่องมือ Bash ที่ส่ง jq -r .tool_input.command ต่อไปยังไฟล์ล็อก รัน tail -f บนไฟล์นั้นในเทอร์มินัลที่สอง แล้วคุณจะเห็นทุกคำสั่งทันทีที่เอเจนต์ส่งมัน รวมถึงบรรทัด ssh ด้วย
อ่านทรานสคริปต์เมื่อคุณต้องการเอาต์พุต hook ให้คำสั่งแก่คุณ ไม่ใช่สิ่งที่เซิร์ฟเวอร์ตอบ สำหรับส่วนนั้น ไฟล์เซสชันใต้ ~/.claude/projects/ (หรือ ~/.codex/sessions/ สำหรับ Codex) มีผลลัพธ์เต็มของทุกการเรียก
ให้เอเจนต์มีบัญชีของตัวเองบนเซิร์ฟเวอร์ ผู้ใช้เฉพาะทำให้ทุกการเชื่อมต่อระบุที่มาได้ในล็อกการยืนยันตัวตนของเซิร์ฟเวอร์ และถ้าเซิร์ฟเวอร์ของคุณรัน auditd กฎบน execve สำหรับผู้ใช้นั้นจะบันทึกทุกโปรเซสที่มันเริ่ม ที่ฝั่งเซิร์ฟเวอร์ ซึ่งเอเจนต์ข้ามไม่ได้
เก็บข้อมูลรับรองให้พ้นมือเอเจนต์ ถ้าวิธีเดียวที่จะเชื่อมต่อคือรหัสผ่านที่เอเจนต์ต้องขอจากคุณ คุณจะเห็นบรรทัด sshpass ในแชต ใช้คีย์ที่เอเจนต์ไม่เคยอ่าน หรือเครื่องมือที่ถือข้อมูลลับไว้แทนมัน เราเขียนคู่มือแยกไว้เรื่อง การให้ข้อมูลลับแก่เอเจนต์โดยไม่ต้องใส่ไว้ในพรอมต์
สิ่งที่การตั้งค่านี้ไม่ได้ให้คุณคือการเชื่อมโยงทั้งสามอย่างเข้าด้วยกัน: เอเจนต์ไหน บนการเชื่อมต่อไหน กับเอาต์พุตแบบสดอะไร ในที่เดียว นั่นคือส่วนที่เราสร้าง
คำถามที่คนถามจริงๆ
ดูได้ไหมว่า Claude Code กำลังทำอะไรบนเซิร์ฟเวอร์ระยะไกลขณะที่มันทำงาน?
ในเทอร์มินัล คุณเห็นการเรียกเครื่องมือ และเมื่อเสร็จแล้วก็เห็นผลลัพธ์สั้นๆ คำสั่งเต็มและเอาต์พุตของมันถูกเขียนลงในทรานสคริปต์ของเซสชันบนดิสก์ของคุณ ซึ่งคุณอ่านได้ทีหลัง ถ้าจะดูขณะที่มันเกิดขึ้น คุณต้องมีอะไรสักอย่างที่บันทึกการเรียกแต่ละครั้งตอนที่มันเริ่ม: hook ใน Claude Code ที่เขียนทุกคำสั่ง Bash ลงไฟล์ล็อก หรือแอปที่รันการเรียกระยะไกลแทนเอเจนต์และแสดงให้เห็นแบบสด ซึ่งก็คือสิ่งที่แท็บกิจกรรมของ AgentsRoom ทำ
Claude Code เก็บบันทึกคำสั่งที่มันรันไว้ที่ไหน?
ในทรานสคริปต์ของเซสชัน ซึ่งเป็นไฟล์ JSONL ใต้ ~/.claude/projects/ หนึ่งโฟลเดอร์ต่อหนึ่งโปรเจกต์ และหนึ่งไฟล์ต่อหนึ่งเซสชัน การเรียกเครื่องมือแต่ละครั้งเป็นหนึ่งบรรทัดพร้อมอินพุตและผลลัพธ์ของมัน Codex เก็บไฟล์แบบเดียวกันหนึ่งไฟล์ต่อเซสชันใต้ ~/.codex/sessions/ ทั้งสองไฟล์ครบถ้วน และทั้งสองถูกเขียนขึ้นเพื่อให้ CLI กลับมาทำเซสชันต่อได้ ไม่ใช่เพื่อให้คนกวาดตาอ่าน
นี่คือสิ่งเดียวกับ audit log ของ Claude Code หรือเปล่า?
ไม่ใช่ audit log ที่คนค้นหาด้วยชื่อนี้คือบันทึกระดับองค์กรที่ Anthropic มีให้ในแพ็กเกจ Enterprise ผ่าน Compliance API: ฟีดกิจกรรม เหตุการณ์ audit และสำหรับเซสชันที่ลงชื่อเข้าใช้ ก็มีทรานสคริปต์ด้วย ซึ่งผู้ดูแลระบบอ่านทีหลัง มันตอบคำถามว่าใครทำอะไรในองค์กร มุมมองแบบสดของคำสั่งบนเซิร์ฟเวอร์เครื่องหนึ่งเป็นเครื่องมือคนละแบบ สำหรับคนละคน
ทำไมไม่เปิดแท็บเทอร์มินัลหนึ่งแท็บต่อทุกคำสั่งที่เอเจนต์รัน?
เราลองทางนั้นแล้วและวัดผลไว้: เอเจนต์ที่กำลังแก้ปัญหาบน production ยิงคำสั่งระยะไกล 166 คำสั่งในเซสชันเดียว หนึ่งแท็บต่อหนึ่งคำสั่งทำให้แถบแท็บใช้งานไม่ได้ภายในสิบนาที สิ่งที่ได้ผลคือหนึ่งบันทึกต่อหนึ่งการเชื่อมต่อ โดยการเรียกแต่ละครั้งเป็นหนึ่งรายการที่มีคำสั่ง เอาต์พุตแบบสด exit code และระยะเวลาของมัน
AgentsRoom ส่งคำสั่งและเอาต์พุตของมันไปยังเซิร์ฟเวอร์หรือไม่?
ไม่ บันทึกอยู่ในหน่วยความจำของแอปเดสก์ท็อป จำกัดไว้ที่ 120 การเรียกต่อโปรเจกต์ และหายไปเมื่อคุณปิดแอป โทรศัพท์ติดตามได้จากโปรไฟล์ของเอเจนต์ (แอปมือถือ 2.47 ขึ้นไป): สตรีมวิ่งจากคอมพิวเตอร์ไปยังโทรศัพท์ของคุณผ่านลิงก์ที่เข้ารหัสตั้งแต่ต้นทางถึงปลายทาง โดยปิดบังข้อมูลลับ และไม่มีอะไรถูกเก็บไว้บนเซิร์ฟเวอร์
แท็บกิจกรรมไม่แสดงคำสั่งไหนของเอเจนต์บ้าง?
บันทึกเฉพาะการเรียกที่ผ่านเครื่องมือของ AgentsRoom เท่านั้น: ssh_exec, ssh_transfer, db_query, db_schema และ kube_kubectl คำสั่งที่เอเจนต์รันด้วยเครื่องมือ shell ของมันเอง เช่น บรรทัด ssh หรือ psql ที่พิมพ์ตรงๆ จะอยู่ในเทอร์มินัลและทรานสคริปต์ของมัน แต่ไม่อยู่ในบันทึก commands_run และ ssh_connect ถูกเว้นไว้โดยตั้งใจ เพราะมันเปิดแท็บเทอร์มินัลที่คุณดูได้อยู่แล้ว
สรุปสั้นๆ
เอเจนต์บนเซิร์ฟเวอร์ต้องการสองอย่างจากคุณ: วิธีทำงานที่ไม่เกี่ยวกับรหัสผ่านของคุณ และวิธีให้คุณเห็นสิ่งที่มันทำขณะที่มันทำ อย่างแรกโดยไม่มีอย่างที่สองทำให้คุณต้องอ่าน JSON หลังเกิดเหตุ อย่างที่สองโดยไม่มีอย่างแรกจะถูกเลี่ยงโดยเอเจนต์ที่วางบรรทัด sshpass
สุดท้ายเราได้หนึ่งบันทึกต่อหนึ่งการเชื่อมต่อ มีขอบเขตชัดเจน และเก็บไว้บนเครื่องของคุณ ถ้าอยากลอง AgentsRoom ดาวน์โหลดได้ฟรี และหน้าการเชื่อมต่อ SSH แสดงการตั้งค่าทีละขั้นตอน ถ้าคุณอยากอยู่กับ CLI อย่างเดียว เริ่มจาก hook PreToolUse และ tail -f: ใช้เวลาห้านาที และคุณจะไม่ต้องสงสัยอีกเลยว่าการเรียกเครื่องมือหกครั้งล่าสุดคืออะไร
ดาวน์โหลด AgentsRoom
รันเอเจนต์ AI ทั้งหมดของคุณในทุกโปรเจกต์ จากหน้าต่างเดียว
แอปคู่หู: ตรวจสอบเอเจนต์ของคุณได้ทุกที่
นำของคุณเอง: Claude, Codex, Antigravity CLI, หรือผู้ให้บริการ AI อื่น ๆ
ส่งข้อบกพร่องและคำขอไปยังแบ็คล็อกสาธารณะของคุณโดยตรง
อ่านต่อ
ให้ Claude Code ทำงานต่อหลัง SSH หลุด: สูตร tmux
ให้ Claude Code ทำงานต่อหลัง SSH หลุดด้วย tmux กลับไปเชื่อมต่อกับโปรเซสเดิม ตรวจสอบว่าเซสชันคงอยู่จริง และใช้ตัวเลือกของ AgentsRoom ที่คุณต้องเปิดเอง
อ่านบทความวิธีส่งความลับให้ AI Coding Agent โดยไม่ต้องใส่ไว้ในพรอมต์
เอเจนต์ต้องใช้คีย์ Stripe หรือรหัสผ่านฐานข้อมูลเพื่อรันคำสั่งของมัน ถ้าคุณวางค่านั้นลงในแชต มันจะไปอยู่ในไฟล์ทรานสคริปต์บนดิสก์ของคุณ ไปอยู่ที่ผู้ให้บริการโมเดล และบางครั้งก็ไปอยู่ในคอมมิท กฎที่เราได้มาหลังจากพลาดเองสามครั้ง : ความลับไปถึงเอเจนต์ผ่านตัวแปรสภาพแวดล้อม และผ่านทางอื่นไม่ได้เลย
อ่านบทความบัญชี Claude เดียวบนคอมพิวเตอร์สองเครื่อง หรือใช้สองคน: อะไรทำได้บ้าง
บัญชี Claude เดียวลงชื่อเข้าใช้ได้บนทุกอุปกรณ์ของคุณ และทุกเครื่องใช้ขีดจำกัด 5 ชั่วโมงและขีดจำกัดรายสัปดาห์ชุดเดียวกัน ทั้ง Claude และ Claude Code รวมกัน การใช้บัญชีเดียวสองคนขัดกับข้อกำหนดของ Anthropic และไม่มีแพ็กเกจครอบครัว สิ่งที่เราตรวจสอบเมื่อวันที่ 25 ตุลาคม 2026 และวิธีดูว่าคอมพิวเตอร์เครื่องไหนใช้ไปเท่าไร
อ่านบทความ