
ابزارهای کدنویسی عاملمحور (Agentic Coding) در زمان معرفی توجه زیادی جلب میکنند و DeepSeek Harness نیز از این قاعده مستثنا نیست. این ابزار بهطور پیشفرض از مدل DeepSeek V4.1 Flash استفاده میکند و نسخه شرکت DeepSeek از ابزارهایی مانند Claude Code، Pi و OpenCode به شمار میرود. یک بررسی تجربی نشان میدهد که کیفیت خروجی چنین ابزارهایی تنها به مدل زبانی وابسته نیست و ابزارهای پیرامونی، نحوه ثبت اجرا و سیاستهای حریم خصوصی نقش تعیینکنندهای دارند.
DeepSeek Harness؛ زماناجرای افزونه (Plugin Runtime) با ظاهر یک اپلیکیشن دسکتاپ
در DeepSeek Harness تقریباً همهچیز افزونه است؛ حتی حلقه عامل (Agent Loop) نیز بهصورت افزونه طراحی شده و کاربر میتواند حلقههای سفارشی خود را بنویسد. این ابزار از چند روش نصب پشتیبانی میکند: اجرا از سورس، اجرا از طریق Node که یک رابط وب محلی (Web UI) راهاندازی میکند، و همچنین اپلیکیشن دسکتاپ برای macOS و Windows. بسته Node تمام وابستگیها را همراه دارد و مدیریت دستی آنها را حذف میکند.
چهار حالت استاندارد در این ابزار وجود دارد که هر کدام مجموعهای از افزونهها را در اختیار عامل قرار میدهند:
- Standard: کار با کد، فایلها و اطلاعات.
- PCT: قابلیتهای حالت Standard با تمرکز بهتر بر وظایفی که ابزارها را بهصورت دستهای فراخوانی میکنند و سپس نتایج را فیلتر، سازماندهی، حذف تکراری یا خلاصه میکنند.
- Minimal: دسترسی به ترمینال و خواندن تصویر همراه با فشردهسازی زمینه (Context Compaction) برای آزمون یا مقایسه معیارهای پایه عملکرد.
- Creator: ساخت افزونهها و سفارشیسازیهای دیگر برای خود هارنس.
در ویندوز، افزونه PowerShell برای تعامل با سیستمعامل فعال میشود و در دستگاههای دیگر bash استفاده میشود. دستورالعملهای عامل میتوانند از فایلهای CLAUDE.md و AGENTS.md خوانده شوند تا از فایلهای موجود پروژه استفاده شود. پرچمهای پیکربندی در یک فایل YAML قرار دارند و دکمهای در رابط کاربری برای باز کردن آن در ویرایشگر کد وجود دارد. در نخستین اجرا یک کلید API برای DeepSeek ساخته میشود، اما کاربر به مدلهای این شرکت محدود نیست و میتواند کلید API ارائهدهندگان دیگر، نقطههای پایانی سفارشی (Custom Endpoints) یا مدلهای زبانی محلی (Local LLMs) را اضافه کند.
مقایسه عملی با Claude Code؛ کد یکسان، مسیر متفاوت
برای مقایسه DeepSeek Harness با Claude Code، دو مخزن Flask یکسان آماده شد تا هیچ اثری از عامل دیگر در پوشه هر پروژه وجود نداشته باشد. هر دو ابزار با تنظیمات پیشفرض اجرا شدند: DeepSeek از V4.1 Flash 1017، حالت Standard، Workspace Write و High Reasoning استفاده کرد و Claude Code با Opus 5.5 High و حالت Auto اجرا شد. این مدلها دقیقاً همرده نیستند، اما هدف، سنجش رفتار پیشفرض و خارج از جعبه بود.
هر دو ابزار یک درخواست یکسان دریافت کردند: اجرای مجموعه آزمون موجود، گزارش نتیجه، افزودن نقطه پایانی GET /api/ping با خروجی JSON، افزودن آزمون برای آن و اجرای دوباره مجموعه آزمون تا زمانی که همه آزمونها موفق شوند. DeepSeek Harness حدود ۱۵ ثانیه زمان برد، هیچ درخواست تأییدی نداد و ۸۰,۳۶۷ توکن (Token) با نرخ برخورد کش (Cache Hit) برابر ۸۲ درصد مصرف کرد. Claude Code حدود ۲۱ ثانیه زمان برد و به تأیید نیاز نداشت؛ این ابزار ۲۴۰,۲۴۸ توکن با نرخ کش ۹۲ درصد مصرف کرد که احتمالاً به دلیل پرامپت بزرگتر هارنس Claude است. هر دو ابزار حدود ۱,۰۰۰ توکن برای ساخت فایل خروجی مصرف کردند و نتیجه نهایی از نظر اندازه و درستی بررسی شد. نکته قابل توجه این بود که هر دو برای یک وظیفه یکسان، کد بایتبهبایت یکسانی تولید کردند.
نمای Trajectory؛ مزیت شفافیت در عیبیابی
یکی از ویژگیهای متمایز DeepSeek Harness، نمای Trajectory است. با پیشرفت گفتگو، زبانهای به نام Trajectory در رابط کاربری ظاهر میشود که گزارش کامل همه اقدامات عامل را نشان میدهد؛ از فراخوانی ابزارها (Tool Calls) و زمینه (Context) گرفته تا اقدامات سیستم، کاربر و دستیار. این گزارش یک خط زمانی خوانا از رخدادهاست و برای عیبیابی بسیار ارزشمند است، زیرا بسیاری از هارنسها جزئیات اجرا را پنهان میکنند و کاربر بدون آگاهی از خطاها از عامل میخواهد آنها را برطرف کند.
در مقابل، Claude Code بهطور پیشفرض خلاصهای کمجزئیات ارائه میدهد. در این بررسی، پنجره Claude Code عبارت Cogitated for 21s را نشان داد و سپس یک پاراگراف جمعبندی تولید کرد. Claude Code نیز گزارشهایی دارد، اما آنها در فایلهای JSON ذخیره میشوند و کاربر باید برای خواندن آنها جستجو و محتوایشان را برای چشم انسان قابل فهم کند. نمایش اینکه هارنس چه زمینهای به فرایند افزوده و هر فراخوانی ابزار چه کاری انجام داده، برای درک رفتار ابزار و یادگیری نحوه تغییر کدها اهمیت زیادی دارد.
حریم خصوصی و تلهمتری؛ تنظیماتی که باید بررسی کنید
DeepSeek Harness بهطور پیشفرض تلهمتری (Telemetry) و تحلیلها (Analytics) را فعال دارد. در بخش تنظیمات اصلی، کلیدی برای غیرفعال کردن بارگذاری گزارش جلسه (Session Log) هنگام استفاده از API رسمی مدل وجود دارد. این تنظیم ظاهراً فقط به زمان استفاده از مدلهای DeepSeek مربوط است، اما غیرفعال کردن آن در هر حال توصیه میشود.
برخی موارد دیگر کلید سادهای در رابط کاربری ندارند و باید در فایل YAML به نام cordis.patch.yml ویرایش شوند. این فایل از طریق دکمه Open Configuration File در پنجره تنظیمات قابل دسترسی است. برای غیرفعال کردن این موارد، باید در انتهای فایل و با تورفتگی دو فاصله، شناسههای desktop-product-telemetry، product-analytics و session-telemetry-otel با مقدار disabled: true اضافه شوند و فایل ذخیره شود. هارنس فایل را قفل نمیکند، اما احتمالاً برای اعمال تنظیمات باید دوباره راهاندازی شود. غیرفعال کردن این موارد بهطور کلی منطقی است، خصوصاً هنگام استفاده از مدل محلی و زمانی که کاربر میخواهد کدش خصوصی بماند. البته نویسنده مقاله تحلیل بسته (Packet Analysis) انجام نداده تا مشخص شود چه دادهای به سرورهای DeepSeek ارسال میشود؛ با این حال، هنگام استفاده از API، محتوای گفتگو از پیش ارسال میشود و احتیاط در این زمینه منطقی است.
جمعبندی؛ DeepSeek Harness برای کسانی که میخواهند عامل خودشان را در اختیار داشته باشند
DeepSeek Harness و Claude Code در بسیاری از جنبهها متفاوتاند، اما در کدی که تولید کردند تفاوتی نداشتند. Claude Code اختصاصی است و DeepSeek Harness مجموعهای متنباز از افزونههاست. استفاده از DeepSeek Harness کاربر را از بهکارگیری مدلهای Anthropic یا مدلهای دیگر منع نمیکند و رابط کاربری و بستهبندی آن نیز جذاب است. با این حال، پیش از استفاده باید تلهمتری، تحلیلها و کلید بارگذاری گزارش جلسه در تنظیمات غیرفعال شوند؛ در غیر این صورت، گزارشهای جلسه به DeepSeek ارسال و برای بهبود مدلهای این شرکت استفاده میشوند.