1 คะแนน โดย GN⁺ 2 시간 전 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • qm คือฮาร์เนสเอเจนต์แบบหลายผู้เล่นที่ช่วยให้สมาชิกสตาร์ทอัพแต่ละคนใช้พื้นที่ทำงานที่แยกจากกัน ขณะเดียวกันก็ทำงานร่วมกับเอเจนต์ได้ในช่อง Slack, ข้อความกลุ่ม และโปรเจกต์
  • แยกหน่วยความจำ ไฟล์ keychain สิทธิ์ งานตามเวลา เว็บแอป และแซนด์บ็อกซ์ถาวรตามแต่ละคนและแต่ละห้องสนทนา พร้อมคง ตัวตนและการตั้งค่า เดียวกันไว้ทั้งบน Slack และเว็บ
  • สามารถเชื่อม Pi, OpenCode, Codex และ Claude Code เข้ากับคอร์เดียวกันได้ และยังวางที่เก็บเซสชัน แซนด์บ็อกซ์ และหน่วยความจำไว้หลังอินเทอร์เฟซเพื่อหลีกเลี่ยงการ ผูกติดกับโมเดลหรือผู้ให้บริการ รายใดรายหนึ่ง
  • มีโหมดความปลอดภัย Strict, Auto และ Dangerous และในทุกโหมดจะใช้ นโยบายคำสั่งและการปฏิเสธแบบบังคับ กับงานอย่างการลบแบบ recursive หรือ SQL ที่ทำลายข้อมูล
  • การตั้งค่าและโครงสร้างพื้นฐานรายองค์กรจะถูกเก็บไว้ในรีโพสำหรับดีพลอยแยกต่างหาก หรือในรีโพส่วนตัวที่สร้างด้วยการโคลนแบบปกติ และผู้ดูแลต้องดีพลอยตรงไปยังบัญชี Fly.io หรือ AWS ของตนเอง

พื้นที่ทำงานเอเจนต์ระดับองค์กร

  • ออกแบบให้ ขอบเขตส่วนบุคคลและแบบใช้ร่วมกัน (scope) เป็นหน่วยพื้นฐาน เพื่อลดความซับซ้อนเมื่อขยายเอเจนต์แบบผู้ช่วยส่วนตัวไปใช้ทั้งบริษัท
    • พนักงานแต่ละคนสามารถทำงานในพื้นที่ทำงานอิสระโดยไม่กระทบคนอื่น
    • ในช่อง Slack, ข้อความกลุ่ม และโปรเจกต์ หลายคนสามารถทำงานร่วมกับเอเจนต์ตัวเดียวกันได้
  • แต่ละคนและแต่ละห้องสนทนามี หน่วยความจำ ไฟล์ มุมมอง keychain สิทธิ์ งานตามเวลา เว็บแอป และแซนด์บ็อกซ์ถาวร แยกกัน
  • ใช้ตัวตนและการตั้งค่าเดียวกันระหว่าง Slack กับเว็บแอป
  • ผู้ดูแลสามารถควบคุมการตั้งค่าระดับองค์กร สถานะความปลอดภัย และฮาร์เนสกับโมเดลที่ใช้งานได้
  • ทักษะทางเทคนิคเป็นของแต่ละขอบเขต และสามารถแชร์ได้ผ่านการมอบสิทธิ์
    • การยกระดับไปใช้ทั้งองค์กรต้องได้รับการอนุมัติจากผู้ดูแล
    • สามารถนำเข้า skill pack จากรีโพ Git ได้
  • งานตามเวลา (cron) และงานเฝ้าดู (watch) ทำงานเบื้องหลังได้แม้ผู้ใช้จะไม่ได้เฝ้าดูอยู่

งานที่รองรับ

  • ค้นหาเมโมภายใน อีเมล เอกสาร ฐานข้อมูล และเว็บร่วมกัน และเข้าถึง ความรู้ของบริษัท ได้
  • สร้างเว็บแอปภายใน เปิดให้คนที่ต้องใช้ และอัปเดตข้อมูลให้ทันสมัยอยู่เสมอได้
  • เรียนรู้สไตล์การเขียนของผู้ใช้จากประวัติการส่งที่ผ่านมา แล้วจัดหมวดหมู่กล่องจดหมายตามกำหนดเวลา พร้อมสร้างป้ายกำกับและร่างคำตอบได้
  • ทำงานอย่างการรันทดสอบ สร้าง PR เฝ้าดู CI และตรวจสอบ system log จากรีโพที่มีอยู่ได้
  • ติดตามโปรเจกต์ในช่องที่ใช้ร่วมกัน และโพสต์ความคืบหน้าพร้อมงานต่อเนื่องได้

โครงสร้างคอร์และการรัน

  • ทุกคำขอจะผ่าน คอร์แบบ headless และสร้างคำตอบผ่านโมเดลกับฮาร์เนสได้หลากหลาย
  • Postgres เก็บสถานะแบบถาวร เช่น ข้อมูลผู้ใช้ ประวัติเซสชัน คิว และหน่วยความจำ
  • พื้นผิวเครื่องมือที่เอเจนต์ใช้มีขนาดเล็กและตายตัว โดยเครื่องมือ execute จะรันคำสั่งในแซนด์บ็อกซ์ที่แยกตามขอบเขตนั้น
    • แซนด์บ็อกซ์ทำงานเสมือนคอมพิวเตอร์ถาวรที่แต่ละขอบเขตเป็นเจ้าของ
    • เครื่องมือที่ติดตั้งไว้จะคงอยู่สำหรับงานถัดไปด้วย
  • เว็บ UI, แผงผู้ดูแล และพอร์ทัลสาธารณะเป็นปลั๊กอินเสริมที่ติดตั้งบน HTTP API ของคอร์
  • Slack เป็นปลั๊กอินในโปรเซสแบบเสริมที่คอร์เริ่มทำงานเป็น service client และดูแลเองโดยตรง
  • คอร์รัน TypeScript โดยตรงบน Node และใช้ Fastify สำหรับ HTTP
    • ปลั๊กอิน Slack ใช้ Bolt
    • เว็บ UI บิลด์ด้วย Vite และเรนเดอร์ด้วย Lit
  • ฮาร์เนส ที่เก็บเซสชัน แซนด์บ็อกซ์ และหน่วยความจำต่างอยู่หลังอินเทอร์เฟซของตนเอง และสามารถสลับ implementation สำหรับ production ได้จากไฟล์ wiring ไฟล์เดียว

โมเดลการดีพลอยรายองค์กร

  • การตั้งค่ารายบริษัท เครื่องมือและทักษะแบบกำหนดเอง อิมเมจแซนด์บ็อกซ์ และโครงสร้างพื้นฐาน จะถูกวางไว้ใน deployment directory ที่แยกจากคอร์
  • qm CLI ใช้ตรวจสอบและดีพลอย deployment directory
  • ในรีโพที่องค์กรเป็นเจ้าของ สามารถอ้างอิง @yc-software/qm แล้วเริ่มต้นได้ดังนี้
npm exec --yes --package=@yc-software/qm@latest -- \
  qm init . --org <slug> --target <fly-or-aws>
npm install
  • ขั้นตอนเริ่มต้นจะพาไปตั้งค่าโครงสร้างพื้นฐาน การล็อกอินเว็บ ข้อมูลรับรองของคอนเน็กเตอร์ การเข้าถึง Slack แบบเลือกใช้ การดีพลอย และการตรวจสอบจริง โดยไม่ต้อง checkout ซอร์สโค้ด
  • การดีพลอยจะทำงานใน บัญชีคลาวด์ ของผู้ดูแลเอง
  • ขั้นตอนเริ่มต้นจะไม่สร้างหรือเปิดใช้ deployment CI และในรีโพ qm เองก็ไม่มีเวิร์กโฟลว์ดีพลอย production
  • ขั้นตอนโดยละเอียดสรุปไว้ใน deployment.md

ความปลอดภัยและข้อมูลลับ

  • เอเจนต์จะทำงานด้วยข้อมูลรับรองและสิทธิ์ของคนที่ร่วมงานด้วย และทุกการกระทำจะถูกบันทึกไว้ใน บันทึกการตรวจสอบ
  • องค์กรเลือกสถานะความปลอดภัยได้หนึ่งแบบ และในขอบเขตที่แคบกว่าจะทำได้เพียงเพิ่มความเข้มงวด ไม่สามารถผ่อนปรนได้
    • Strict: หยุดการเรียกใช้เครื่องมือของฮาร์เนสทั้งหมดไว้จนกว่าจะมีการอนุมัติจากมนุษย์ ยกเว้นงานจบเทิร์นสองอย่างที่ไม่มีผลข้างเคียง
    • Auto: โหมดเริ่มต้น โดย classifier จะตรวจสอบข้อมูลภายนอกที่มีป้ายกำกับแหล่งที่มาและผลลัพธ์จากเครื่องมือก่อนส่งต่อให้โมเดล
      • ในสภาพแวดล้อมที่ดีพลอยแล้ว สามารถกำหนด inspection proxy ของตนเองได้
    • Dangerous: ไม่มีการตรวจสอบเนื้อหาหรือการหยุดชั่วคราวระหว่างการเรียกใช้เครื่องมือ
  • นโยบายคำสั่งที่ประกาศไว้ล่วงหน้าจะมีผลกับทุกโหมดความปลอดภัย
    • บังคับปฏิเสธคำสั่งอย่างการลบแบบ recursive หรือ SQL ที่ทำลายข้อมูล พร้อมกฎการอนุมัติ
    • แม้แต่โหมด Dangerous ก็ไม่ใช่ข้อยกเว้น
  • threat model เงื่อนไขเบื้องต้นสำหรับผู้ดูแล และข้อจำกัดที่ทราบแล้ว ดูได้ใน SECURITY.md

รีโพแบบกำหนดเองส่วนตัว

  • องค์กรที่ต้องการมากกว่าแค่รีโพสำหรับดีพลอย สามารถใช้ รีโพโคลนส่วนตัว เพื่อให้คอร์และโค้ดกำหนดเองแบบส่วนตัวถูกอ่านได้จากที่เดียว
  • ต้องสร้างด้วยการโคลนแบบปกติ ไม่ใช่ใช้ฟังก์ชัน Fork ของ GitHub
    • GitHub fork ของรีโพสาธารณะไม่สามารถเปลี่ยนเป็น private ได้
    • GitHub fork แชร์ object network กับต้นทาง ทำให้คอมมิตที่ push เข้า fork อาจถูกค้นดูจากฝั่งสาธารณะได้ด้วย SHA
    • รีโพโคลนแบบปกติไม่มีปัญหานี้ แต่เวิร์กโฟลว์ upstream CI จะไปรันจริงในบัญชีขององค์กร
    • จึงต้องให้ข้อมูลลับที่จำเป็นหรือปิดเวิร์กโฟลว์ที่ไม่ต้องการ
  • การตั้งค่ารายองค์กร เครื่องมือและทักษะในแซนด์บ็อกซ์ อิมเมจปลั๊กอิน และโครงสร้างพื้นฐาน จะเก็บไว้ใน deploy/layers/<org>/
  • คงคอร์ให้ เหมือนกับ upstream ทุกไบต์ เพื่อลดขนาดของการ merge
  • มีสองทักษะที่ใช้จัดการขอบเขตระหว่างคอร์สาธารณะกับพื้นที่กำหนดเองแบบส่วนตัว
    • update-qm จะ merge upstream qm เข้าสู่รีโพส่วนตัวและสร้าง PR สำหรับซิงก์
    • upstream-pr จะสร้างสาขาจาก upstream/main และส่งการแก้ไขที่ไม่ขึ้นกับองค์กรกลับไปยัง qm
    • ก่อน push จะตรวจสอบตัวระบุองค์กรใน diff ข้อความคอมมิต และภาพหน้าจอ
    • ไฟล์ใต้ deploy/layers/ จะไม่ถูกส่งขึ้น upstream

การมีส่วนร่วมและไลเซนส์

  • รับการมีส่วนร่วมเป็นเอกสาร .txt หรือ .md ที่เขียนโดยคน ไม่ใช่โค้ด
    • หากต้องการเปลี่ยนแปลงอะไร ให้เขียนแบบไม่เป็นทางการไว้ใน adrs/ แล้วฝั่งโปรเจกต์จะนำไปพัฒนาหลังได้ข้อสรุปร่วมกัน
    • กฎโดยละเอียดอยู่ใน CONTRIBUTING.md
  • ช่องโหว่ต้องรายงานแบบส่วนตัวตามขั้นตอนใน SECURITY.md ไม่ใช่ผ่าน issue สาธารณะ
  • ส่วนที่ไม่ได้ระบุไว้เป็นอย่างอื่น ให้ใช้งานภายใต้ MIT License

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

 
GN⁺ 2 시간 전
ความคิดเห็นจาก Hacker News
  • น่าสนใจที่ได้เห็น องค์ประกอบและแนวคิดพื้นฐานของ UI ใหม่ ๆ เกิดขึ้นในยุค LLM แต่มีแอปสร้างสรรค์มากเกินไปและคำอธิบายก็น้อย ทำให้ยากจะรู้ว่าแต่ละตัวทำอะไร
    บนหน้าเว็บของเอเจนต์ Hermes ผมไม่เข้าใจฟีเจอร์เลย และต้องไล่ดูหน้า qm อยู่นานกว่าจะเจอคำอธิบายที่เหมาะสม ช่วงหลังผมใช้ Orca ที่ YC สนับสนุนอยู่เป็นประจำในการจัดการเซสชันเขียนโค้ด แต่เพราะยังขาดฐานข้อมูลเซสชันที่ใช้ PostgreSQL เป็นฐาน qm จึงน่าลอง

    • ท้ายที่สุดก็แค่สร้าง ซอฟต์แวร์เฉพาะตัว ขึ้นมาเองได้ ทุกวันนี้แค่ได้แรงบันดาลใจจากเครื่องมือเหล่านี้ แล้วคุยกับ Claude ดี ๆ สักสองสามเซสชัน ก็สามารถทำสิ่งที่ต้องการเองได้แล้ว
    • ถ้าเน้น จุดต่าง ของเครื่องมือมากเกินไป ก็เสี่ยงที่จะดูแปลกและไร้ประโยชน์ ดังนั้นแม้เครื่องมือที่จริง ๆ แล้วนวัตกรรมและแตกต่างกัน หน้าการตลาดก็มักออกมาคล้ายกัน
    • AI ต้องการ องค์ประกอบพื้นฐาน แบบใหม่ทั้งหมดในหลาย ๆ ด้าน
  • ดีใจที่ได้เห็นทิศทางแบบนี้ออกมาพร้อมกับ Buzz ส่วนที่ยากที่สุดของเอเจนต์แบบผู้ใช้หลายคนไม่ใช่ลูปของเอเจนต์ แต่คือ การกำหนดขอบเขต และขอบเขตรายบุคคลกับห้องแชร์ของ QM ก็เป็นทางออกที่สมเหตุสมผลสำหรับผู้ช่วยระดับทั้งบริษัท
    ทีมของผมกำลังสร้าง AQ(aq.dev) เครื่องมือเขียนโค้ดแบบผู้ใช้หลายคนที่รัน Claude Code และ Codex ร่วมกันอยู่ การที่ YC ออกเครื่องมือเอเจนต์ผู้ใช้หลายคนสำหรับงานองค์กรจึงช่วยยืนยันแนวทางนี้ แต่ก็รู้สึกเหนือจริงอยู่นิดหน่อย

  • มีผลิตภัณฑ์คล้าย ๆ กันอยู่มากแล้ว เลยไม่รู้ว่าทำไมควรใช้ตัวนี้แทน Claude Cowork Cowork ดูเรียบง่ายกว่า สมบูรณ์กว่า และฟีเจอร์ก็เยอะกว่า จึงต้องมีการเปรียบเทียบ QM vs Cowork

    • มีความต้องการที่จะใช้ LLM ที่รันเองและ ไคลเอนต์ pi หรือ opencode มากกว่าการถูกผูกติดถาวรกับระบบนิเวศโมเดลน้ำหนักปิดของ Anthropic และต้องจ่ายค่าต่อโทเคนไปเรื่อย ๆ
    • ดูเหมือนจะเกาะกระแสคำฮิต ผู้ใช้หลายคน ที่ยังไม่มีใครแก้ได้จริง แต่ UI แย่และไม่น่าจะใช่คำตอบ
    • อาจอยากใช้โมเดลอื่นก็ได้
  • ควรดูว่าเขาทำ บริบทและความปลอดภัยทั้งองค์กร ไว้อย่างไร ตอนนี้ดูเสริมกับเครื่องมือเขียนโค้ดของผมที่ให้ AI interface ที่ดีที่สุดสำหรับแต่ละบุคคลได้อย่างมาก และคงดีถ้ามีทั้งสถาปัตยกรรมระดับทั้งบริษัทกับอินเทอร์เฟซเขียนโค้ดส่วนบุคคลที่มีประสิทธิภาพได้ด้วยทิกเก็ตใหญ่ ๆ เพียงไม่กี่ใบ

  • อยากรู้ว่า Hermes เป็นตัวเลือกที่ดีที่สุดในบรรดา เอเจนต์สาย OpenClaw ที่ว่ากันว่าเคยใช้มาก่อนหรือไม่ และผู้ใช้ระดับสูงเอาระบบแบบนี้ไปใช้อะไรกันจริง ๆ

    • เอเจนต์ที่ทำงานตลอดเวลา ซึ่งเข้าถึงระบบภายในและสั่งรันผ่านเว็บฮุคได้สะดวกมาก
      ใช้กับการแก้ CI fail แบบง่าย ๆ อัตโนมัติ, รับ alert จากโปรดักชันแล้ววิเคราะห์สาเหตุรากและสร้าง PR แก้ไข, ตรวจสอบและปรับแต่งคิวรีฐานข้อมูลที่ช้าเป็นระยะ, สร้างกราฟเพื่อตอบคำถามข้อมูลแบบครั้งเดียว ฯลฯ เคยลองใช้เขียนโค้ดระหว่างเดินทางด้วย แต่ชอบเอเจนต์แบบโต้ตอบที่ตรวจโค้ดเองได้มากกว่า
    • เคยใช้ Hermes แต่บ่อยครั้งรู้สึกอึดอัดเพราะอยากควบคุมให้ลึกขึ้นอีกหนึ่งหรือสองขั้น ตั้งแต่เมื่อวานผมเริ่มทำเวอร์ชันที่ปรับแต่งสูงมากสำหรับตัวเองคนเดียว และแม้จะยังอยู่ในช่วงฮันนีมูนแค่วันเดียวก็ยังทำอย่างสนุก
      ผมชอบการสร้างซอฟต์แวร์เองและ สิทธิ์ควบคุมเต็มรูปแบบ และลูปเอเจนต์พื้นฐานจริง ๆ ก็ไม่ได้พิเศษอะไร มีหลายอย่างมากที่ปรับได้อยู่นอกลูปหลัก และการทดลองวิธีขยายหลายแบบก็สนุก ไม่ต้องคิดเรื่องทำเงินหรือความเป็นเครื่องมือทั่วไป แค่เพิ่มฟีเจอร์ที่ต้องการก็พอ และไม่จำเป็นต้องทำให้เสียบปลั๊กอินได้ไร้ขีดจำกัด ขอบคุณ nanoclaw และ Hermes ที่ให้ไอเดียหลัก ๆ แต่ตอนนี้อยากดัดแปลงในแบบของตัวเอง
    • Hermes ใหญ่และมีฟีเจอร์ที่ไม่จำเป็นเยอะ จึงชอบ เอเจนต์ตัวเล็ก ที่ขยายได้ตามต้องการมากกว่า เคยลองหลายโปรเจกต์บน GitHub และ dirge(https://github.com/dirge-code/dirge) น่าประทับใจ โดยผมไม่ได้เกี่ยวข้องกับโปรเจกต์
      ตอนนี้ใช้ให้อ่านฟีด RSS กับจดหมายข่าวเสริม แล้วกรองเฉพาะข้อมูลที่สำคัญต่อผมเพื่อส่งข่าวและแนวโน้มตลาดมาให้
    • ใช้เป็น เครื่องมือช่วย on-call ที่ตอบสนองต่อ alert โปรดักชันเป็นด่านแรก ในค่าเริ่มต้นยังไม่มีประสิทธิภาพเท่าเอเจนต์เขียนโค้ด แต่ช่วยได้มาก
    • ส่วนใหญ่ดูเหมือนใช้ให้ LLM ตรวจอีเมลและข้อความแชตเป็นระยะ ๆ
  • ดูเหมือน เครื่องมือภายใน ที่ YC รีบปล่อยออกมาเพื่อลดพื้นที่ที่ถูก Buzz แย่งไปให้น้อยที่สุด อยากเห็นรีวิวที่ลองเทียบสองเครื่องมือนี้โดยตรง

  • สงสัยว่า yc software หมายถึงอะไร

  • น่าสนใจที่ปล่อย ทักษะออกแบบ anti-slop มาด้วย เพื่อให้สร้างอินเทอร์เฟซที่ไม่ดูเหมือนเทมเพลต
    ในสินค้าผู้บริโภคระดับพรีเมียม มีการห้ามใช้พาเล็ตสีที่ AI ใช้บ่อย และเพราะหน้า landing page กับพอร์ตโฟลิโอเป็นผลิตภัณฑ์เชิงภาพ จึงนิยามหน้าข้อความที่มีแค่พื้นที่สกรีนช็อตปลอมว่าเป็นผลงานคุณภาพต่ำ https://github.com/yc-software/qm/blob/7f2c916360f1797a8ff2a...

    • สุดท้ายมันก็แค่ดูต่างจากงานออกแบบ AI คุณภาพต่ำในปัจจุบัน และเมื่อเวลาผ่านไป มันเองก็อาจกลายเป็น จุดบรรจบของดีไซน์ไร้เอกลักษณ์ อีกรูปแบบหนึ่งไม่ใช่หรือ
  • ชื่อเรื่องน่าจะเผยให้เห็นประโยชน์ของเครื่องมือมากกว่านี้ เช่น qm - a multiplayer agent harness for work

    • การยอมให้ผู้อ่านต้องออกแรงเล็กน้อยเพื่อทำความเข้าใจชื่อเรื่องเป็น ธรรมเนียมเฉพาะของ HN