DeepSeek Harness · ทุกอย่างคือปลั๊กอิน

ปลั๊กอินให้ความสามารถ Agent ทั้งหมด Cordis จัดการแค่การโหลดและดีเพนเดนซี

DeepSeek Harness ทำให้ «ทำอะไรได้บ้าง» เป็นโมดูลเสียบได้: อะแดปเตอร์โมเดล เครื่องมือ ทักษะ เซสชัน แซนด์บ็อกซ์ ที่เก็บข้อมูล ลูป การจัดตาราง และ UI ล้วนเป็นปลั๊กอิน จัดความต้องการให้ตรงกับ DeepSeek-V4 บน DeepSeek เวอร์ชันเว็บก่อน แล้วค่อยแทนที่ปลั๊กอินที่ตรงกันในคอนฟิกของ Harness

เคอร์เนล

Cordis

โหลด / ถอด / ดีเพนเดนซี

ความสามารถ

ทั้งหมดเป็นปลั๊กอิน

รวมโมเดลและ UI

คอนฟิก

ประกอบได้อย่างอิสระ

ไม่ต้องแก้ซอร์ส

ระบบนิเวศ

dsh-plugin

ค้นพบผ่าน GitHub topic

พื้นผิวความสามารถที่ปลั๊กอินครอบคลุม

จากโมเดลถึง UI DeepSeek Harness ไม่มีฟังก์ชันพิเศษในเคอร์เนล

ถ้อยคำทางการ: ความสามารถ Agent ทั้งหมดมาจากปลั๊กอิน นั่นหมายความว่าอะแดปเตอร์ DeepSeek-V4 ชุดเครื่องมือ ไปจนถึงอินเทอร์เฟซ สามารถถูกแทนที่หรือขยายได้

ปลั๊กอินโมเดล

โมเดลคือจิตวิญญาณของ Agent แต่ใน Harness มันก็เป็นปลั๊กอินเช่นกัน สลับอะแดปเตอร์ในคอนฟิกเพื่อต่อ DeepSeek-V4 หรือผู้ให้บริการอื่นเข้ากับชุดเครื่องมือและบันทึกเซสชันเดียวกัน

ปลั๊กอินโมเดล DeepSeek-V4

เครื่องมือและทักษะ

การแก้ไฟล์, Shell, การค้นหา, Skills และอื่น ๆ ลงทะเบียนในตารางเครื่องมือเป็นปลั๊กอิน โหมดมาตรฐานให้ชุดเต็ม โหมดมินิมอลตัดเหลือ bash + เอดิเตอร์เพื่อการประเมิน

DeepSeek Harness เครื่องมือ

เซสชันและ Trajectory

บันทึกเซสชันเป็นแบบเพิ่มอย่างเดียว: พรอมต์ระบบ ห่วงโซ่ความคิด ผลลัพธ์เครื่องมือ การจัดตารางซับเอเจนต์ และการฉีดบริบทใช้แหล่งเดียวกันและเล่นซ้ำได้—จึงดีบักได้ว่าโมเดลเห็นอะไรจริง ๆ

บันทึกเซสชัน DeepSeek

แซนด์บ็อกซ์และที่เก็บข้อมูล

แซนด์บ็อกซ์ ระบบไฟล์ และ persistence ก็เป็นปลั๊กอินเช่นกัน เปลี่ยนนโยบายแซนด์บ็อกซ์โดยไม่ต้องแก้ลูป Agent—แค่สลับอินพลีเมนต์ที่ชั้นคอนฟิก

DeepSeek Harness แซนด์บ็อกซ์

ลูป การจัดตาราง และซับเอเจนต์

ลูป Agent การจัดตารางงาน และการจัดเรียงซับเอเจนต์ประกอบได้ PTC / Code Mode ก้าวไกลกว่าด้วยการให้โมเดลร้อยเครื่องมือหลายขั้นด้วยโปรแกรม TypeScript

ลูป Agent DeepSeek

UI ก็เป็นปลั๊กอิน

Web UI ไม่ใช่เปลือกที่แทนไม่ได้ dsh web เปิดอินเทอร์เฟซเบราว์เซอร์ ซึ่งตัวมันเองอยู่ในต้นไม้ปลั๊กอิน และซ้อนแพ็กเกจต่างกันตามโปรไฟล์ได้ (เช่น web / headless)

DeepSeek Harness Web UI
รันไทม์ซ้อนกันอย่างไร

การสตาร์ท dsh หนึ่งครั้ง = ต้นไม้ปลั๊กอินที่เป็นระเบียบ

สถาปัตยกรรมทางการบรรยาย dsh ที่กำลังรันว่าเป็นต้นไม้ปลั๊กอินที่ประกอบจากหลายชั้นคอนฟิกตอนสตาร์ท การเข้าใจชั้นช่วยให้คุณขยายแทนที่จะ fork

01

คอนฟิกโปรไฟล์

โปรไฟล์คือชุดที่มีชื่อ: ระบุ bundle ที่จะซ้อน ปลั๊กอินนอกต้นไม้ และ cordis.patch.yml ของคุณเอง web กับ headless มีให้ในรูปแบบเทมเพลต

02

dsh-base

ชั้นแรกของเกือบทุกโปรไฟล์: อะแดปเตอร์โมเดล เครื่องมือ persistence นโยบายแซนด์บ็อกซ์และการอนุมัติ การตั้งค่า ข้อมูลรับรอง เทเลเมทรี และพื้นฐานอื่น ๆ

03

dsh-web-app / headless

web-app ซ้อนแอปเบราว์เซอร์ headless ซ้อนรันเนอร์ครั้งเดียวแบบ serverless ปรัชญาปลั๊กอินเดียวกัน รูปแบบการส่งมอบต่างกัน

04

ปลั๊กอินชุมชน

ใช้ topic dsh-plugin เพื่อให้ค้นปลั๊กอินได้ ในช่วงพรีวิว API จะเปลี่ยน ผู้เขียนปลั๊กอินควรติดตามคู่มือนักพัฒนาทางการและ Discussions

ทำไมการออกแบบนี้จึงสำคัญ

โอเพนซอร์สให้ตรวจได้ ปลั๊กอินให้ดัดแปลงได้

สัญญาอนุญาตทำให้โค้ดตรวจสอบได้ Cordis ทำให้รันไทม์ประกอบใหม่ได้ สำหรับนักพัฒนา DeepSeek Agent นั่นหมายถึงต้นทุนการ fork ที่ต่ำลง

01

ประกาศดีเพนเดนซีด้วย inject

ปลั๊กอินประกาศบริการที่ต้องการ (เช่น tools และ llm) ผ่าน inject Cordis สตาร์ทผู้บริโภคหลังจากบริการเหล่านั้นพร้อม ลำดับโหลดตัดสินจากดีเพนเดนซี ไม่ใช่เลขบรรทัด YAML

02

ผลข้างเคียงที่ย้อนกลับได้

ลิสเนอร์ การลงทะเบียนเครื่องมือ และตัวจับเวลาถูกทำความสะอาดอัตโนมัติเมื่อถอดปลั๊กอิน ทรัพยากรที่ต้องปล่อยอย่างชัดเจนลงทะเบียน disposer ด้วย effect เพื่อไม่ให้รั่วหลัง hot-swap

03

สนทนาก่อน แล้วค่อยแก้ปลั๊กอิน

เมื่อไม่แน่ใจว่าจะเปลี่ยนโมเดลหรือเครื่องมือ ให้ถาม DeepSeek-V4 บน DeepSeek เวอร์ชันเว็บให้ขอบเขตงานชัดก่อน แล้วค่อยกลับมาแก้คอนฟิกใน Harness—อย่าเปลี่ยนปลั๊กอินแบบมืดบอด

จัดเป้าหมายให้ตรงบน DeepSeek เวอร์ชันเว็บก่อนประกอบปลั๊กอิน

DeepSeek-V4 ช่วยพูดให้งานชัด ปลั๊กอิน Harness รับหน้าที่ต่อความสามารถเข้าสู่สภาพแวดล้อมจริง

FAQ ปลั๊กอิน

สิ่งที่ควรรู้ก่อนเขียนปลั๊กอิน DeepSeek Harness

สอดคล้องกับเอกสารทางการ: รูปร่างปลั๊กอิน การประกอบคอนฟิก และการแบ่งงานกับ DeepSeek เวอร์ชันเว็บ

01 ปลั๊กอินหน้าตาเป็นอย่างไร?

รูปแบบที่พบบ่อยคือโมดูล TypeScript ที่ export apply(ctx) หรือเป็นอ็อบเจ็กต์ที่มี apply หรือเป็นคลาสย่อย Service ที่ให้บริการ เฟรมเวิร์กส่งบริบทที่ใช้ร่วมกัน ctx เข้าไปตอนโหลด

02 จะแขวนปลั๊กอินเข้ากับรันไทม์ได้อย่างไร?

ลงทะเบียนพาธโมดูลหรือชื่อแพ็กเกจใน cordis.yml / overlay / patch บทเรียนทางการย้ำว่าในบางสถานการณ์พาธปลั๊กอินต้องเป็นพาธสัมบูรณ์ และให้ซ้อนผ่านโปรไฟล์แทนการแก้แพ็กเกจแกน

03 UI เปลี่ยนจริงได้หรือไม่?

ทางทางการจัด UI เป็นความสามารถปลั๊กอินระดับเดียวกับโมเดลและเครื่องมือ คุณเลือกหรือขยายอินเทอร์เฟซที่ชั้นคอนฟิกได้โดยไม่ต้องแก้ซอร์ส DeepSeek Harness

04 ขัดกับการใช้ DeepSeek เวอร์ชันเว็บโดยตรงหรือไม่?

ไม่ขัด เวอร์ชันเว็บเหมาะกับการสนทนาเร็วและการให้เหตุผลของ DeepSeek-V4 ปลั๊กอินเหมาะกับการทำให้โฟลว์ที่ตรวจสอบแล้วกลายเป็นโซ่เครื่องมือ CTA บนไซต์นี้จะพาคุณเข้าสู่การสนทนาเวอร์ชันเว็บก่อน

05 ปลั๊กอินรุ่นพรีวิวจะพังบ่อยหรือไม่?

จะมีการเปลี่ยนแปลงที่ทำลายความเข้ากันได้—นี่คือคำเตือนทางการด้วยตัวพิมพ์ใหญ่ ถือว่าปลั๊กอินเป็นการทดลองที่วิวัฒน์ ติดตาม Discussions และอย่าสมมติว่า API จะเสถียรระยะยาว

06 ดูรายละเอียดสถาปัตยกรรมได้ที่ไหน?

คลังทางการ docs/architecture.md, บทนำ Cordis และคู่มือนักพัฒนา หน้านี้เป็นการแนะนำเพื่อการค้นหาและความเข้าใจผลิตภัณฑ์ ไม่ได้แทนที่เอกสารต้นน้ำ

จากบทสนทนาสู่ Agent ที่เสียบปลั๊กได้

เปิด dsh เมื่อต้องการเครื่องมือในเครื่องและแซนด์บ็อกซ์ ตอนนี้เข้าสู่ DeepSeek เวอร์ชันเว็บได้เลย