การติดตั้ง DeepSeek Harness ใช้คำสั่งเดียว สามสิบวินาทีต่อมา คุณก็จะเห็นอินเทอร์เฟซที่สวยงามและว่างเปล่าบน http://127.0.0.1:3080 และไม่มีใครบอกคุณว่าต้องทำอะไรต่อ
README ขึ้นชื่อว่าบางมาก เอกสาร Cordis ที่มันลิงก์ไปพูดถึง composability เชิงพื้นที่และเวลา แต่คุณแค่อยากให้มันอ่านโค้ดของคุณ
คู่มือนี้เริ่มต้นจากหน้าจอว่างนั้น คุณจะได้คำสั่งติดตั้ง ใช่ แต่ส่วนที่ทำให้คุณเสียเวลาทั้งบ่ายจริงๆ คือการเชื่อมต่อผู้ให้บริการโมเดล และมีค่าเริ่มต้นสามค่าที่ทำให้ DeepSeek models ใช้งานไม่ได้เงียบๆ และทิ้ง 75% ของ context window ของคุณไป แทบไม่มีใครบันทึกไว้
ประเด็นสำคัญ
npx @deepseek-ai/dsh webคือคำสั่งติดตั้งทั้งหมด Node.js^22.19.0หรือ>=24.0.0คือข้อกำหนดเบื้องต้นเท่านั้น- DeepSeek Harness คือ harness ไม่ใช่โมเดล มันมาพร้อมกับศูนย์ credentials ดังนั้นมันจะไม่ทำอะไรเลยจนกว่าคุณจะแนบผู้ให้บริการ
- ปลายทางที่เข้ากับ OpenAI ได้ทุกตัวใช้ได้ รวมถึง API ของ DeepSeek เอง, gateway, หรือเซิร์ฟเวอร์ Ollama ในเครื่อง
- เมื่อคุณเพิ่มผู้ให้บริการแบบกำหนดเอง Harness จะเดารูปแบบการคิดจาก base URL ของคุณ ถ้าเดาผิด
reasoning_contentจะพัง - โมเดลที่ประกาศด้วยมือจะมีค่าเริ่มต้น context window ที่ 262,144 ดังนั้นหน้าต่างเต็ม 1,048,576 ของ V4 จะยังคงปิดอยู่จนกว่าคุณจะบอกเป็นอย่างอื่น

เทอร์มินัลแสดงการทดสอบสีเขียวที่ผ่าน ควบคู่ไปกับชุด harness แบบแยกส่วนที่เรืองแสง แสดงวิธีการติดตั้ง DeepSeek Harness
เวอร์ชัน 60 วินาทีของสิ่งที่คุณกำลังสร้าง
นี่คือผลลัพธ์ก่อนทฤษฎีใดๆ สามไฟล์ในโฟลเดอร์ว่าง คำสั่งเดียวที่วาง และเอเจนต์จะอ่านโค้ด, รัน pytest, ดูการทดสอบสองครั้งล้มเหลว, เปลี่ยนอักขระตัวเดียว, และรันซ้ำจนกว่าชุดทดสอบจะผ่านทั้งหมด

DeepSeek Harness อ่าน fizzbuzz.py, รัน pytest, แก้ไข bug off-by-one และรันซ้ำจนได้ 3 ผ่าน
ลูปเต็ม: อ่าน, รัน, วินิจฉัย, แก้ไข, รันซ้ำ ทุกขั้นตอนจะถูกบันทึกใน session log แบบ append-only ที่คุณสามารถเล่นซ้ำได้ในภายหลัง
นั่นคือเดโมที่เราจะสร้างร่วมกันในขั้นตอนที่ 6 มันมีขนาดเล็กพอที่จะทำซ้ำในไดเรกทอรีทดสอบ และไม่ขึ้นอยู่กับ repository ภายนอกใดๆ ที่อาจเปลี่ยนแปลงในสัปดาห์หน้า
ทำไมความพยายามส่วนใหญ่ในการติดตั้ง DeepSeek Harness จึงติดขัดที่ขั้นตอนที่สอง
การติดตั้งนั้นง่ายมากจริงๆ การติดขัดเกิดขึ้นทันทีหลังจากนั้น และเป็นการตัดสินใจในการออกแบบ ไม่ใช่บั๊ก: DeepSeek Harness มาพร้อมกับไม่มีคีย์ ไม่มีผู้ให้บริการเริ่มต้น และไม่มีโมเดลในตัว
DeepSeek เปิดเผยซอร์สโค้ดของโครงการเมื่อวันที่ 13 สิงหาคม 2026 ภายใต้สัญญาอนุญาต MIT และมันก็ได้รับความนิยมอย่างรวดเร็ว ณ วันที่ 17 สิงหาคม 2026 repository มี 144,361 stars และ 14,689 forks (GitHub, สิงหาคม 2026) ซึ่งหมายถึงผู้คนจำนวนมากมายที่มาถึงหน้าจอว่างเดียวกันในสัปดาห์เดียวกัน
เธรด Hacker News จากสัปดาห์ที่เปิดตัวแสดงให้เห็นปฏิกิริยาที่แบ่งออก ผู้คนชื่นชอบความโปร่งใส: ทุกสิ่งที่โมเดลเห็นจะถูกบันทึกใน session log แบบ append-only และผู้แสดงความคิดเห็นคนหนึ่งกล่าวว่า "โมเดลของสหรัฐฯ จะไม่ยอมให้คุณเห็นสิ่งนั้น" ข้อร้องเรียนก็สอดคล้องกัน "README ค่อนข้างเปลือยนอกเหนือจากคำแนะนำในการติดตั้ง" นักพัฒนาคนหนึ่งเขียน และเอกสาร Cordis ได้รับคำตัดสินว่ามันอ่านเหมือน "word salad" (Hacker News, สิงหาคม 2026)
ดังนั้นสี่สิ่งที่ขัดขวางผู้คนจริงๆ ล้วนเป็นหลังการติดตั้ง:
- Node เก่าเกินไป ดังนั้น
npxล้มเหลวก่อนที่จะเริ่มอะไร - พอร์ต 3080 ถูกครอบครองโดยเซิร์ฟเวอร์ dev อื่นอยู่แล้ว
- ผู้ให้บริการแบบกำหนดเองส่งคืน 401 หรือรายการโมเดลกลับมาว่างเปล่า
- โมเดลเชื่อมต่อได้ แต่เอาต์พุตการคิดมาถึงแบบเสียหาย หรือไฟล์ยาวทำให้ context window หมดก่อนกำหนด
ขั้นตอนที่ 1 ถึง 5 ด้านล่างนี้มุ่งเป้าไปที่สี่ประเด็นนั้นโดยตรง
ก่อนติดตั้ง DeepSeek Harness: เลือกโมเดลและคีย์
ตอบก่อนเลย: ตัว harness เองฟรีและทำงานในเครื่อง แต่จะไม่ทำอะไรที่มีประโยชน์เลยจนกว่าคุณจะให้ base URL ที่เข้ากับ OpenAI, คีย์ และ ID โมเดลอย่างน้อยหนึ่งตัว ตัดสินใจเรื่องนี้ก่อนติดตั้ง และการตั้งค่าทั้งหมดจะใช้เวลาเพียงสิบนาที
ทุกอย่างเกิดขึ้นในแท็บเบราว์เซอร์เดียวที่ 127.0.0.1:3080 คุณกำลังเลือกระหว่างสามเส้นทาง และทั้งสามเส้นทางใช้ได้
ตาราง B: ตัวเลือกการเข้าถึงโมเดลที่ทำงานกับ DeepSeek Harness ในปัจจุบัน
| เส้นทาง | Base URL | ราคาต่อ 1M tokens | บริบท | การชำระเงิน | เหมาะสำหรับ |
|---|---|---|---|---|---|
| DeepSeek official API | https://api.deepseek.com | V4-Flash $0.22 เข้า / $0.66 ออกนอกช่วงพีค, $0.44 / $1.32 ช่วงพีค. Cache hits เริ่มต้นที่ $0.007 | 1M | แตกต่างกันไปตามภูมิภาค | พฤติกรรมแบบ first-party, cache hits ราคาถูกมาก |
| OpenAI-compatible gateway (ตัวอย่าง: Atlas Cloud) | https://api.atlascloud.ai/v1 | V4-Flash $0.14 เข้า / $0.28 ออก. V4-Pro $1.68 / $3.38 | 1,048,576 | บัตรเครดิต, ไม่มีขั้นต่ำ | อัตราคงที่ ไม่มีค่าธรรมเนียมช่วงพีค |
| Local Ollama | http://localhost:11434/v1 | ไม่มีค่าใช้จ่าย token | ขึ้นอยู่กับโมเดล | ไม่มี | โค้ดส่วนตัว, ทำงานออฟไลน์ |
สองสิ่งที่ควรรู้ก่อนเลือก API first-party ของ DeepSeek เปลี่ยนไปใช้การคิดค่าบริการแบบ peak และ off-peak โดยช่วงพีคคือ 01:00 ถึง 04:00 และ 06:00 ถึง 10:00 UTC และนอกช่วงพีคคือครึ่งหนึ่งของช่วงพีค (DeepSeek API Docs, สิงหาคม 2026) ราคา input แบบ cache-hit ต่ำมาก ดังนั้น workload ที่อ่าน context เดียวกันซ้ำๆ อาจมีราคาถูกมากเมื่อใช้ first-party
Gateway แลกเปลี่ยนสิ่งนั้นกับความสามารถในการคาดการณ์ได้ Atlas Cloud ให้บริการโมเดล DeepSeek เดียวกันในอัตราคงที่ ไม่มีค่าธรรมเนียมช่วงพีคและไม่ต้องสมัครสมาชิก ซึ่งเป็นตัวอย่างที่ฉันจะใช้ในการตั้งค่าด้านล่าง เพราะไม่ต้องใช้วิธีการชำระเงินตามภูมิภาค สลับไปใช้เส้นทางที่เหมาะกับสถานการณ์ของคุณได้เลย รูปแบบการกำหนดค่าเหมือนกันทั้งหมด
วิธีการติดตั้ง DeepSeek Harness ทีละขั้นตอน
มีสามวิธีในการติดตั้ง เลือกหนึ่งแถว จากนั้นทำตามขั้นตอน
ตาราง A: เปรียบเทียบวิธีการติดตั้ง
| วิธีการ | เวลา | ต้องการ | การอัปเกรด | เหมาะสำหรับ |
|---|---|---|---|---|
| npx | น้อยกว่าหนึ่งนาที | Node 22.19+ หรือ 24+ | รัน npx อีกครั้ง | เกือบทุกคน |
| จากซอร์สโค้ด | 5 ถึง 10 นาที | Node, pnpm, git | git pull และ rebuild | ผู้มีส่วนร่วม, ผู้เขียนปลั๊กอิน |
| Desktop build | ประมาณหนึ่งนาที | ไม่มีอะไร | ติดตั้งใหม่ | ผู้ที่ต้องการหลีกเลี่ยงการติดตั้ง Node |
ขั้นตอนที่ 1: ตรวจสอบข้อกำหนดเบื้องต้นก่อนติดตั้ง DeepSeek Harness
ความล้มเหลวที่พบบ่อยที่สุดคือเวอร์ชัน Node ที่ดูเหมือนใหม่พอแต่ไม่ใช่ Repository ต้องการ ^22.19.0 || >=24.0.0 ไม่มีเวอร์ชันในสาย 23.x ใดที่เข้าเกณฑ์ในทุก patch level
bash1node -v # ต้องเป็น >= 22.19.0 บน 22.x, หรือ >= 24.0.0 2npm -v 3
หาก node -v แสดง 22.14 หรือ 20.x ให้อัปเกรดก่อนดำเนินการต่อ คุณจำเป็นต้องใช้ pnpm เฉพาะเมื่อคุณวางแผนที่จะ build จากซอร์สโค้ดหรือเขียนปลั๊กอิน:
bash1npm install -g pnpm 2
ขั้นตอนที่ 2: ติดตั้ง DeepSeek Harness ด้วยคำสั่งเดียว
นี่คือการติดตั้งทั้งหมด มันดาวน์โหลดและเปิดใช้โปรไฟล์เว็บในครั้งเดียว
bash1npx @deepseek-ai/dsh web 2
เปิด http://127.0.0.1:3080 หากพอร์ตนั้นถูกใช้งานอยู่แล้ว ตัวเรียกใช้งานจะส่งผ่านแฟล็กใดๆ ที่ไม่รู้จักไปยังโปรไฟล์โดยตรง ดังนั้นคุณสามารถย้ายมันได้:
bash1npx @deepseek-ai/dsh web --port 8080 2
สิ่งที่คุณได้รับคือเปลือกที่ว่างเปล่า ไม่มีผู้ให้บริการ ไม่มีโมเดล ไม่มีคีย์ นั่นเป็นเรื่องที่คาดหวังได้ และเป็นจุดที่คู่มือส่วนใหญ่หยุด

UI เว็บของ DeepSeek Harness ที่ 127.0.0.1:3080 ทันทีหลังการติดตั้ง โดยไม่มีผู้ให้บริการหรือโมเดลที่กำหนดค่าไว้
ติดตั้งเสร็จสมบูรณ์ และไม่ทำงานเลย ทุกอย่างตั้งแต่จุดนี้คือการเดินสาย
ขั้นตอนที่ 3: รับคีย์ API สำหรับ DeepSeek Harness
ไม่ว่าคุณจะเลือกเส้นทางใดจากตาราง B คุณต้องมีคีย์และ base URL สำหรับเส้นทาง first-party ลงทะเบียนที่ platform.deepseek.com และสร้างคีย์ที่นั่น ตัวเลือกการเรียกเก็บเงินแตกต่างกันไปตามภูมิภาค ดังนั้นตรวจสอบว่าวิธีการชำระเงินของคุณรองรับก่อนที่จะตัดสินใจใช้
สำหรับเส้นทาง gateway ที่ใช้ในคำแนะนำนี้ ให้สร้างคีย์ใน แดชบอร์ด Atlas Cloud ภายใต้ API Keys จากนั้นส่งออกเพื่อให้ harness สามารถอ่านได้โดยไม่ต้องเก็บไว้ในไฟล์ตั้งค่า:
bash1export ATLASCLOUD_API_KEY="sk-your-key-here" 2

หน้า API Keys ของแดชบอร์ด Atlas Cloud พร้อมคีย์ที่สร้างใหม่ซึ่งถูกปิดบังบางส่วน
คัดลอกคีย์ครั้งเดียว มันจะไม่แสดงอีกหลังจากคุณออกจากหน้า
ขั้นตอนที่ 4: เพิ่มผู้ให้บริการโมเดลของคุณไปยัง DeepSeek Harness
ใน UI ไปที่ Settings จากนั้น Models จากนั้น Add a custom provider แบบฟอร์มต้องการ Provider ID, ชื่อที่แสดง, base URL, โปรโตคอล API, credential และโมเดลอย่างน้อยหนึ่งตัว
คำเตือนหนึ่งที่เอกสารย้ำถูกต้อง: Provider ID เป็นแบบถาวร มันถูกเขียนลงในคำขอ, เซสชันที่บันทึกไว้, ค่าเริ่มต้นของโมเดล และการอ้างอิง credential หากคุณไม่ชอบในภายหลัง ทางเลือกเดียวของคุณคือสร้างผู้ให้บริการใหม่และลบอันเก่า
| ฟิลด์ | สิ่งที่ต้องป้อน |
|---|---|
| Provider ID | atlas (ตัวพิมพ์เล็ก, ถาวร) |
| Display name | Atlas Cloud |
| Base URL | https://api.atlascloud.ai/v1 |
| API protocol | openai-completions |
| API key | คีย์ของคุณ |
| Models | คลิก Fetch available models หรือพิมพ์ deepseek-ai/deepseek-v4-flash ด้วยมือ |
หากการดึงโมเดลส่งคืน 401 แสดงว่าคีย์ผิด หากส่งคืนรายการว่าง แสดงว่าปลายทางนั้นไม่เปิดเผยดัชนีโมเดล ซึ่งไม่เป็นอันตราย: พิมพ์ ID โมเดลด้วยตนเองแล้วดำเนินการต่อ

แบบฟอร์ม Add a custom provider ที่กรอกข้อมูลแล้ว โดยมี base URL, โปรโตคอล API และส่วนควบคุม Fetch models ถูกทำเครื่องหมาย
สามฟิลด์ที่ตัดสินว่าขั้นตอนถัดไปจะสำเร็จหรือไม่: base URL, โปรโตคอล และรายการโมเดล
ขั้นตอนที่ 5: ค่าเริ่มต้นสามประการของ DeepSeek Harness ที่ทำให้ DeepSeek Models ใช้งานไม่ได้เงียบๆ
นี่คือส่วนที่ไม่มีคู่มือติดตั้งอื่นใดครอบคลุม และเป็นสาเหตุที่การตั้งค่าของคุณอาจดูเหมือนเชื่อมต่อแล้วแต่ทำงานผิดปกติ
เลเยอร์ LLM ของ Harness จะอนุมานรูปแบบการคิดที่ต้องใช้จาก URL ปลายทางของคุณ เอกสารภายในระบุผลลัพธ์อย่างตรงไปตรงมา: "pi-ai เดาจาก URL ปลายทาง; URL ของ gateway ส่วนตัวไม่ได้บอกอะไร ดังนั้น gateway ที่ใช้รูปแบบ DeepSeek จะถูกพูดด้วยในรูปแบบ OpenAI โดยไม่มีทางแก้ไข" พูดง่ายๆ ก็คือ base URL ใดๆ ที่ไม่ใช่ DeepSeek อย่างชัดเจนจะถูกปฏิบัติเหมือน OpenAI และการจัดการ reasoning_content ของ DeepSeek จะผิดพลาด
กับดักที่สองและสามคือความจุ โมเดลที่คุณประกาศด้วยมือจะใช้ค่าเริ่มต้น defaultContextWindow ที่ 262,144 และ defaultMaxTokens ที่ 32,768 V4 รองรับ context 1,048,576 tokens ดังนั้นการยอมรับค่าเริ่มต้นจะทิ้งสามในสี่ของมันไป
เขียนสิ่งเหล่านี้ลงในไฟล์ตั้งค่าของคุณ:
yaml1# $DSH_HOME/settings.yaml (ค่าเริ่มต้นคือ ~/.dsh/settings.yaml) 2llm-pi-ai: 3 providers: 4 atlas: 5 displayName: Atlas Cloud 6 api: openai-completions 7 baseURL: https://api.atlascloud.ai/v1 8 apiKeyEnv: ATLASCLOUD_API_KEY 9 compat: 10 thinkingFormat: deepseek # 1. หยุดการเดาจาก URL 11 defaultContextWindow: 1048576 # 2. ค่าเริ่มต้นคือเพียง 262144 12 defaultMaxTokens: 32768 # 3. เพิ่มสำหรับงานที่ต้องการเอาต์พุตยาว 13 models: 14 - id: deepseek-ai/deepseek-v4-flash 15 contextWindow: 1048576 16 - id: deepseek-ai/deepseek-v4-pro 17 contextWindow: 1048576 18
สามสิ่งที่ควรจำไว้ การตั้งค่าจะแก้ไขโมเดลก่อน จากนั้นจึงเส้นทาง จากนั้นรายการแค็ตตาล็อกที่ติดตั้ง จากนั้นการเดาจาก URL ดังนั้นค่าต่อโมเดลจะชนะเสมอ สวิตช์ compat ทั้งสอง thinkingFormat และ supportsReasoningEffort มีอยู่ เฉพาะ ภายใต้ openai-completions; วางไว้บนโปรโตคอลอื่นแล้วการแก้ไขจะล้มเหลว และอะแดปเตอร์นี้ไม่ได้ครอบคลุม Bedrock, Vertex, Azure หรือ Codex โดยเจตนา ซึ่งการไหลของ auth ต้องการมากกว่าคีย์, ปลายทาง และส่วนหัว
ขั้นตอนที่ 6: รันงานจริงครั้งแรกของคุณใน DeepSeek Harness
ตอนนี้เดโมจากด้านบนของบทความนี้ สร้างโฟลเดอร์ว่างและเพิ่มสามไฟล์
fizzbuzz.py ที่มีบั๊ก off-by-one หนึ่งตัว:
python1def fizzbuzz(n): 2 out = [] 3 for i in range(1, n): 4 if i % 15 == 0: 5 out.append("FizzBuzz") 6 elif i % 3 == 0: 7 out.append("Fizz") 8 elif i % 5 == 0: 9 out.append("Buzz") 10 else: 11 out.append(str(i)) 12 return out 13
test_fizzbuzz.py โดยที่สองในสามการทดสอบล้มเหลว:
python1from fizzbuzz import fizzbuzz 2 3def test_starts_correctly(): 4 assert fizzbuzz(5)[:3] == ["1", "2", "Fizz"] 5 6def test_covers_every_number(): 7 assert len(fizzbuzz(15)) == 15 8 9def test_fifteen_is_fizzbuzz(): 10 assert fizzbuzz(15)[-1] == "FizzBuzz" 11
และ requirements.txt:
text1pytest>=8.0 2
การรันชุดทดสอบด้วยมือก่อนเป็นสิ่งที่ควรทำ เพื่อให้คุณรู้ว่าอะไรที่เอเจนต์กำลังเผชิญ:
text1.FF [100%] 2=================================== FAILURES =================================== 3___________________________ test_covers_every_number ___________________________ 4E AssertionError: assert 14 == 15 5___________________________ test_fifteen_is_fizzbuzz ___________________________ 6E AssertionError: assert '14' == 'FizzBuzz' 7=========================== short test summary info ============================ 82 failed, 1 passed in 0.01s 9
ตั้งค่าโหมดเอเจนต์เป็น Standard และโมเดลเป็น deepseek-ai/deepseek-v4-flash จากนั้นวางคำสั่งนี้ให้ตรงตามตัว:
Run pytest in this workspace. Two tests fail. Find the root cause in fizzbuzz.py, fix it with the smallest possible change, then re-run pytest and show me the final output. Do not edit the test file.
การแก้ไขที่ถูกต้องคืออักขระตัวเดียว: range(1, n) เปลี่ยนเป็น range(1, n + 1) และชุดทดสอบจะรายงาน 3 passed
ตอนนี้เป็นส่วนที่ทำให้ harness แตกต่างจากหน้าต่างแชท ทุกการรันจะถูกบันทึกใน session log แบบ append-only และคุณสามารถ fork มันได้ ย้อนกลับไปยังจุดที่เอเจนต์อ่าน fizzbuzz.py ครั้งแรกและแยกสาขาสำหรับความพยายามครั้งที่สอง:
Fork this session from the step where you first read fizzbuzz.py. This time rewrite it as a dict-based lookup instead of patching the if-branch, then run pytest again.

การ Fork session log ของ DeepSeek Harness เพื่อสร้างการใช้งานแบบ dict-based ครั้งที่สองจากจุดเริ่มต้นเดียวกัน
จุดเริ่มต้นหนึ่งจุด, สองสาขา นี่คือฟีเจอร์ที่ฝูงชนในสัปดาห์เปิดตัวสนใจจริงๆ
ขั้นตอนที่ 7: ใช้งานแบบ Headless สำหรับสคริปต์และ CI
โปรไฟล์สองโปรไฟล์จะเริ่มต้นตัวเองเมื่อใช้งานครั้งแรก: web และ headless คุณใช้ web อยู่ และ dsh web เป็นเพียงนามแฝงสำหรับ dsh --profile web
Headless จะรันเซสชันที่คงอยู่ใหม่หนึ่งครั้ง, พิมพ์คำตอบสุดท้าย, และออกจากระบบ ซึ่งเป็นรูปแบบที่งาน CI ต้องการ:
bash1dsh --profile headless "Run the tests and fix any failures. Report the diff." 2
โปรไฟล์อื่นใดต้องสร้างผ่าน dsh plugin โปรไฟล์อยู่ที่ $DSH_HOME/profiles/<name> ซึ่งค่าเริ่มต้นคือ ~/.dsh/profiles/<name>

เอาต์พุตเทอร์มินัลจากการรัน DeepSeek Harness แบบ headless ที่พิมพ์คำตอบสุดท้ายและออกจากระบบ
โหมด Headless: หนึ่งเซสชัน, หนึ่งคำตอบ, รหัสออกที่คุณสามารถแยกสาขาได้
วิธีอื่นๆ ในการติดตั้ง DeepSeek Harness
เส้นทาง npx ครอบคลุมคนส่วนใหญ่ สามวิธีนี้ควรรู้ไว้
ติดตั้ง DeepSeek Harness จากซอร์สโค้ดด้วย pnpm
หากคุณต้องการอ่านโค้ด, แก้ไข, หรือเขียนปลั๊กอินสำหรับมัน:
bash1git clone https://github.com/deepseek-ai/deepseek-harness 2cd deepseek-harness 3pnpm install 4pnpm run build 5pnpm dsh web 6
Desktop Build ขนาด 5 MB
โปรเจกต์ชุมชน hairyf/deepseek-harness-desktop ห่อ harness ใน Tauri และจัดส่งตัวติดตั้งขนาดประมาณ 5 MB สำหรับ Windows, macOS และ Linux โดยไม่ต้องติดตั้ง Node เลย มันไม่ใช่รุ่น DeepSeek อย่างเป็นทางการ ดังนั้นปฏิบัติตามนั้น: ในขณะที่เขียนนี้มันมีประมาณ 400 stars และถูกสร้างขึ้นหนึ่งวันหลังจากตัว harness เอง
รัน DeepSeek Harness ในเครื่องทั้งหมดด้วย Ollama
Ollama มีการรวมระบบ first-party เวอร์ชันสั้นคือคำสั่งเดียว:
bash1ollama launch dsh 2
นั่นจะติดตั้งและรัน harness โดยมี Ollama เชื่อมต่ออยู่ โดยเก็บการตั้งค่าที่ ~/.ollama/launch/dsh/settings.yaml (Ollama Docs, สิงหาคม 2026) ข้อแม้หนึ่งที่ควรอ่านก่อนที่คุณจะคิดว่าทุกอย่างออฟไลน์: การค้นหาเว็บในตัวถูกเปิดใช้งานโดยอัตโนมัติและต้องการการเข้าถึงคลาวด์ของ Ollama บวกกับโมเดลที่รองรับเครื่องมือ โมเดลในเครื่องจริงๆ ให้ค่าใช้จ่าย token เป็นศูนย์ แต่ต้องแลกกับความเร็ว และโดยปกติแล้วการเรียกใช้เครื่องมือจะอ่อนแอกว่า

DeepSeek Harness เชื่อมต่อกับเซิร์ฟเวอร์ Ollama ในเครื่องที่รันงานทดสอบที่ล้มเหลวเดียวกัน
งานเดียวกัน, ไม่มีการเดินทางไปกลับเครือข่าย, ไม่มีค่าใช้จ่ายต่อ token
DeepSeek Harness ฟรีหรือไม่? ค่าใช้จ่ายที่แท้จริงในการรันมัน
ตอบก่อนเลย: ซอฟต์แวร์ฟรีและได้รับอนุญาตภายใต้ MIT รวมถึงการใช้งานเชิงพาณิชย์ Token ไม่ฟรี เว้นแต่คุณจะรันโมเดลในเครื่อง ไม่มีอะไรเกี่ยวกับตัว harness ที่ถูกวัดปริมาณ, ถูกจำกัด, หรือเชื่อมโยงกับบัญชี DeepSeek
ตาราง C: สิ่งที่ฟรีจริงๆ และสิ่งที่ไม่ฟรี
| ส่วนประกอบ | ฟรี? | หมายเหตุ |
|---|---|---|
| ซอฟต์แวร์ harness | ใช่ | MIT license, ไม่ต้องมีบัญชี |
| Token โมเดลผ่าน API | ไม่ใช่ | คิดค่าบริการต่อ token โดยผู้ให้บริการโมเดล |
| Token โมเดลผ่าน Ollama ในเครื่อง | ใช่ | คุณจ่ายด้วยฮาร์ดแวร์และความหน่วงแทน |
| บริบทยาว | ขึ้นอยู่กับ | คิดค่าบริการต่อ token ดังนั้นหน้าต่าง 1M จะเสียค่าใช้จ่ายตามสิ่งที่คุณเติมเข้าไป |
ตัวอย่างการคำนวณ โดยใช้ตัวเลขกลมๆ แทนการรันที่เฉพาะเจาะจง สมมติว่าเซสชันการดีบักเช่นขั้นตอนที่ 6 ใช้ token นำเข้า 200,000 token และ token ส่งออก 20,000 ซึ่งเป็นเรื่องจริงเมื่อเอเจนต์อ่านสองสามไฟล์และวนซ้ำ ในอัตรา gateway แบบคงที่ $0.14 เข้าและ $0.28 ออก เซสชันนั้นมีค่าใช้จ่ายประมาณ 3.4 เซนต์ ใน API first-party ที่อัตรานอกช่วงพีคแบบ cache-miss จะอยู่ที่ประมาณ 5.7 เซนต์ และในช่วงชั่วโมงพีคประมาณ 11 เซนต์ หาก input ส่วนใหญ่ของคุณเป็น cache hits first-party จะถูกลงอย่างมากในด้าน input เนื่องจาก cache-hit input เริ่มต้นที่ $0.007 ต่อ 1M tokens
คันโยกที่ใช้งานได้จริงตามลำดับผลกระทบ: ทำให้เซสชันสั้นเพื่อไม่ให้บริบทเพิ่มขึ้นเรื่อยๆ, ทำงานประจำด้วย Flash และเก็บ Pro ไว้สำหรับงานที่ยากจริงๆ, และใช้โหมด Minimal สำหรับการรันแบบ benchmark เนื่องจากมันให้เครื่องมือสองอย่างแก่โมเดลและไม่มีการบีบอัดบริบท
ก่อนที่คุณจะนำไปใช้งานจริง: ใบอนุญาต DeepSeek Harness และความเสี่ยงในรุ่น Preview
สามสิ่งสั้นๆ แล้วตามด้วย FAQ
ใบอนุญาตคือ MIT ดังนั้นการใช้งานเชิงพาณิชย์จึงไม่เป็นปัญหา แต่โปรเจกต์ระบุตัวเองว่าเป็น developer preview และระบุเป็นตัวพิมพ์ใหญ่ว่าจะมีการเปลี่ยนแปลงที่ทำลายความเข้ากันได้ กำหนดเวอร์ชันที่คุณทดสอบและอย่าเชื่อมต่อกับไปป์ไลน์การเผยแพร่ในขณะนี้
ข้อมูลประจำตัวของคุณอยู่ในข้อความธรรมดาบนเครื่องของคุณ ที่ $DSH_HOME/.credentials.yaml พร้อมการตั้งค่าข้างๆ ใน $DSH_HOME/settings.yaml ทั้งคู่ค่าเริ่มต้นคือ ~/.dsh หากโฮมไดเรกทอรีของ harness ของคุณไปอยู่ใน repository ให้เพิ่มมันลงใน .gitignore:
text1.dsh/ 2
และสิ่งที่ชัดเจนที่ลืมง่าย: โค้ดของคุณจะไปยังปลายทางที่คุณกำหนดค่าไว้ในขั้นตอนที่ 4 อ่านข้อกำหนดข้อมูลของผู้ให้บริการนั้นก่อนที่จะชี้เอเจนต์ไปยังฐานโค้ดส่วนตัว
คำถามที่พบบ่อย
DeepSeek Harness ฟรีหรือไม่?
Harness ฟรีและได้รับอนุญาตภายใต้ MIT โดยไม่ต้องมีบัญชีหรือการสมัครสมาชิก และคุณสามารถใช้ในเชิงพาณิชย์ได้ Token โมเดลจะถูกเรียกเก็บเงินแยกต่างหากโดยผู้ให้บริการที่คุณเชื่อมต่อ การชี้ไปที่โมเดล Ollama ในเครื่องจะทำให้คุณได้การตั้งค่าที่ไม่มีค่าใช้จ่าย token จริงๆ โดยจ่ายด้วยฮาร์ดแวร์และความเร็ว
ฉันจำเป็นต้องมีคีย์ DeepSeek API เพื่อติดตั้ง DeepSeek Harness หรือไม่?
ไม่ การติดตั้งและคีย์ DeepSeek ไม่เกี่ยวข้องกัน npx @deepseek-ai/dsh web รันโดยไม่มี credential ใดๆ เลย คุณจำเป็นต้องมีคีย์เมื่อคุณต้องการให้เอเจนต์เรียกใช้โมเดลเท่านั้น และคีย์นั้นสามารถเป็นคีย์สำหรับปลายทางที่เข้ากับ OpenAI ได้ทุกตัว รวมถึงเซิร์ฟเวอร์ในเครื่อง
DeepSeek Harness สามารถรันโมเดลอื่นที่ไม่ใช่ DeepSeek ได้หรือไม่?
ได้ ผู้ให้บริการแบบกำหนดเองยอมรับ openai-completions และอะแดปเตอร์ครอบคลุมโปรโตคอลที่สามารถอธิบายได้ด้วยคีย์, ปลายทาง และส่วนหัว เพิ่มผู้ให้บริการที่สองโดยเพิ่มบล็อกอื่นภายใต้ providers: ใน settings.yaml พร้อม ID, base URL และโมเดลของตัวเอง Bedrock, Vertex, Azure และ Codex ถูกแยกออกโดยเจตนาเนื่องจาก auth ของพวกเขาต้องการมากกว่านั้น
ทำไมผู้ให้บริการแบบกำหนดเองของฉันถึงส่งคืน 401 หรือ "unknown model"?
401 เกือบทุกครั้งหมายความว่าคีย์ผิดหรือไม่ได้ถูกอ่านจากตัวแปรสภาพแวดล้อมที่ระบุใน apiKeyEnv โมเดลที่ไม่รู้จักมักหมายความว่าปลายทางไม่เปิดเผยดัชนีโมเดล ดังนั้นจึงไม่มีการดึงข้อมูล: พิมพ์ ID โมเดลด้วยตนเองแทน นอกจากนี้ ตรวจสอบการสะกด Provider ID เนื่องจากไม่สามารถเปลี่ยนชื่อได้ มีแต่แทนที่เท่านั้น
DeepSeek Harness เก็บคีย์ API และการตั้งค่าของฉันไว้ที่ไหน?
คีย์ไปที่ $DSH_HOME/.credentials.yaml และการตั้งค่าโมเดลที่เขียนด้วยมือไปที่ $DSH_HOME/settings.yaml ทั้งคู่ภายใต้ ~/.dsh เว้นแต่คุณจะแทนที่ DSH_HOME เซสชันอยู่ที่ $DSH_HOME/storages และโปรไฟล์ที่ $DSH_HOME/profiles/<name> เก็บไดเรกทอรีทั้งหมดไว้นอกการควบคุมเวอร์ชัน
DeepSeek Harness พร้อมสำหรับการใช้งานจริงหรือยัง?
ยัง ตามที่ตัวมันเองบอก โปรเจกต์จัดส่งเป็น developer preview และเตือนอย่างชัดเจนเกี่ยวกับการเปลี่ยนแปลงที่ทำลายความเข้ากันได้ ซึ่งเป็นคำอธิบายที่ยุติธรรมสำหรับซอฟต์แวร์ที่เพิ่งเปิดตัวไม่กี่วัน ใช้มันสำหรับการพัฒนาในเครื่องและความช่วยเหลือ CI, กำหนดเวอร์ชันที่คุณทดสอบ, และอ่านเอกสารผู้ให้บริการอีกครั้งหลังการอัปเกรด
ตรวจสอบแล้วกับ DeepSeek Harness developer preview เมื่อวันที่ 17 สิงหาคม 2026 โปรเจกต์นี้ส่งการเปลี่ยนแปลงที่ทำลายความเข้ากันได้ตามการออกแบบ ดังนั้นหากชื่อฟิลด์ใน build ของคุณดูแตกต่างจาก YAML ด้านบน ให้ตรวจสอบเอกสารผู้ให้บริการอย่างเป็นทางการก่อนที่จะถือว่าการกำหนดค่าผิด






