DeepSeek Harness install اور version errors درست کریں
ہر شائع شدہ DeepSeek Harness build اب بھی prerelease ہے۔ exact dsh version pin کریں، npx cache صاف کریں، اور جانیں کہ آپ کا command واقعی کون سا npm چلا رہا ہے۔
DeepSeek Harness کی تنصیب دراصل کیا ہے
DeepSeek Harness کی تنصیب ایک ہی command ہے: npx @deepseek-ai/dsh web۔ کوئی installer نہیں ہے، اور configure کرنے کے لیے کوئی service بھی نہیں ہے۔ لوگوں کو پیش آنے والی زیادہ تر مشکلات دراصل installation سے متعلق نہیں ہوتیں۔ مسئلہ version resolution کا ہوتا ہے: @deepseek-ai/dsh npx نے آج کون سا build چلانے کا فیصلہ کیا، اور آیا آپ کا Node.js version اسے چلا سکتا ہے۔ جب یہ start ہوتا ہے تو اس کے ذریعے دکھایا جانے والا address localhost سے bind ہوتا ہے، اور Web UI صرف 127.0.0.1:3080 پر جواب کیوں دیتا ہے اس صفحے پر بیان کردہ مسائل سے الگ مسئلہ ہے۔
ذیل کی تمام باتوں کی بنیاد دو حقائق ہیں۔ اول، اب تک npm پر شائع ہونے والا @deepseek-ai/dsh کا ہر version prerelease ہے۔ ان میں سے زیادہ تر release candidates (-rc.N) ہیں، اور 30 August 2026 سے alpha builds (-alpha.N) بھی دستیاب ہیں۔ latest tag ایک release candidate کی طرف اشارہ کرتا ہے۔ 10 October 2026 تک یہ 0.2.0-rc.2 ہے، جو 29 September 2026 کو شائع ہوا تھا۔ دوم، project README کے مطابق harness ابھی developer preview میں ہے، اس پر تیزی سے کام جاری ہے، اور compatibility توڑنے والی تبدیلیاں متوقع ہیں۔ جو flag گزشتہ ہفتے کام کر رہا تھا، وہ اس ہفتے موجود نہ بھی ہو سکتا ہے۔ اس کے اوپر کچھ بھی build کرنے سے پہلے version کو pin کریں۔
پہلے چند اصطلاحات واضح کر لیں۔ dsh، DeepSeek Harness کا command line tool ہے۔ Node.js وہ JavaScript runtime ہے جس کی اسے ضرورت ہوتی ہے۔ npx وہ package runner ہے جو npm (node package manager) کے ساتھ آتا ہے، اور package کو مستقل طور پر install کرنے کے بجائے ضرورت کے وقت fetch کرتا ہے۔ اگر اس جملے میں harness کا استعمال آپ کے لیے غیر مانوس ہے تو agent harness وہ program ہے جو model کے گرد چلتا ہے؛ یہ loop، tools، permissions اور session state کو سنبھالتا ہے۔ اسی لیے آپ کے منتخب نہ کیے ہوئے version number سے agent کے رویے میں تبدیلی آ سکتی ہے۔
dsh کو Node.js کا کون سا ورژن درکار ہے؟
repository کی root package.json میں "engines": {"node": "^22.19.0 || >=24.0.0"} درج ہے۔ یہ معلومات 10 October 2026 کو پڑھی گئی تھیں، جب repository کا ورژن 0.2.1-alpha.2 تھا۔ اس لیے 22 لائن میں Node 22.19.0 یا اس کے بعد کا ورژن، یا Node 24 اور اس کے بعد کے ورژن درکار ہیں۔ Node 20 قابلِ استعمال نہیں ہے۔
سب سے پہلے یہ دیکھیں کہ آپ کے پاس کون سا ورژن موجود ہے۔
node -v
npm -vیہ وہ حصہ ہے جو اکثر لوگوں کے لیے حیران کن ہوتا ہے۔ شائع شدہ @deepseek-ai/dsh package میں اپنا کوئی engines field موجود نہیں ہے۔ صرف monorepo کی root ایک ایسا field درج کرتی ہے، اور وہ root file npm پر شائع ہی نہیں ہوتی۔ اس لیے npm کے پاس جانچنے کے لیے کچھ نہیں ہوتا؛ وہ کوئی EBADENGINE warning نہیں دکھاتا اور کسی چیز کو مسترد بھی نہیں کرتا۔ Node 20 پر installation بظاہر کامیاب دکھائی دیتی ہے، لیکن خرابی بعد میں ظاہر ہوتی ہے، جب load کیا گیا code ایسی syntax یا API استعمال کرتا ہے جو آپ کے runtime میں موجود نہیں۔ تلاش کرنے کے لیے کوئی ایک مستقل error string نہیں ہے، کیونکہ پہلے کون سی line ناکام ہوگی، یہ اس بات پر منحصر ہے کہ پہلے کون سا module load ہوتا ہے۔ crash پڑھنے کے بجائے node -v پڑھیں۔
اگر آپ کا Node بہت پرانا ہے تو VPS پر nvm (node version manager) کم سے کم مداخلت والا حل ہے، کیونکہ یہ آپ کی home directory کے اندر installation کرتا ہے اور system Node کو تبدیل نہیں کرتا۔
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.6/install.sh | bash
exec $SHELL -l
nvm install 24
nvm use 24
node -vاب node -v کو v24. سے شروع ہونے والا version دکھانا چاہیے۔ اگر shell اب بھی پرانا version دکھائے تو which node چلائیں۔ ~/.nvm سے باہر کا path عموماً دو وجوہات کی بنا پر ہوتا ہے۔ یا تو nvm shell function load نہیں ہوا؛ ایسی صورت میں نیا login shell کھول کر دوبارہ کوشش کریں۔ یا shell profile میں کوئی line ایسی ہے جو nvm کو source کرنے والی lines کے بعد PATH تبدیل کر دیتی ہے اور کسی دوسرے Node کو پہلے رکھ دیتی ہے؛ ایسی صورت میں اس line کو nvm والی lines سے اوپر منتقل کریں۔ 10 October 2026 تک Node 24 active LTS (long term support) لائن ہے، اور اس تاریخ کو اس کا تازہ ترین release 24.21.0 ہے۔ اس مہینے یہ صورت حال بدل جائے گی: Node 24، 20 October 2026 کو maintenance میں چلا جائے گا، اور Node 26، جسے >=24.0.0 range بھی اجازت دیتی ہے، 28 October 2026 کو active LTS لائن بن جائے گا۔ دونوں میں سے کوئی بھی Node 22 سے بہتر target ہے، جس کی دوسری وجہ نیچے بیان کی گئی ہے۔
npx ہر روز مختلف version کیوں چلاتا ہے؟
npx @deepseek-ai/dsh web میں کوئی version بیان نہیں ہوتا۔ اگر موجودہ directory کے project میں پہلے ہی @deepseek-ai/dsh نصب ہو تو npx اسی copy کو چلاتا ہے، ورنہ npx registry سے وہ version مانگتا ہے جس کی طرف latest tag اس وقت اشارہ کر رہا ہو۔ یہ tag بدلتا رہتا ہے، اور اکثر بدلتا ہے۔ 0.1.0-rc.8 19 August 2026 کو آیا، 0.1.0-rc.7 کے دو دن بعد، اور 10 October 2026 تک latest نے 0.2.0-rc.2 کی طرف اشارہ کرنا شروع کر دیا تھا۔ ہر بار tag بدلنے پر آپ کے notes میں موجود command مختلف code چلانے لگتی ہے، بغیر کسی prompt کے اور بغیر کسی changelog کے۔
آپ command line سے ہر متحرک حصے کا معائنہ کر سکتے ہیں۔
npm view @deepseek-ai/dsh dist-tags
npm view @deepseek-ai/dsh versions --json
npm view @deepseek-ai/dsh time --jsondist-tags دکھاتا ہے کہ latest اس وقت کہاں اشارہ کر رہا ہے۔ 10 October 2026 کو latest اور next دونوں 0.2.0-rc.2 کی طرف اشارہ کر رہے تھے، جبکہ ایک تیسرا tag، alpha، 0.2.1-alpha.2 کی طرف اشارہ کر رہا تھا، جو ایک دن پہلے publish ہوا تھا۔ ان میں سے کوئی بھی ایسا stable channel نہیں ہے جس پر switch کیا جا سکے۔ versions کی فہرست زیادہ اہم ہے، کیونکہ اس میں gaps موجود ہیں۔ 10 October 2026 کو اس میں 0.0.1-rc.1 سے 0.2.1-alpha.2 تک 31 versions موجود تھے۔ 0.0.1 line -rc.2 سے -rc.5 تک چھلانگ لگاتی ہے، 0.1.0 line -rc.3 سے -rc.6 تک چھلانگ لگاتی ہے، alpha builds 0.1.2-alpha.2 اور 0.1.3-alpha.2 سے شروع ہوتی ہیں، اور 0.1.4 بالکل موجود نہیں ہے۔ کچھ builds کبھی publish نہیں ہوئیں، اس لیے numbers غائب ہیں، اور alpha builds اور release candidates اسی فہرست میں ایک دوسرے کے ساتھ شامل ہیں۔ deploy script میں اگلے -rc.N کا اندازہ لگانا ناکام ہو جائے گا، اس لیے numbers گن کر آگے بڑھنے کے بجائے فہرست پڑھیں۔
npx پرانا ورژن کیوں چلاتا رہتا ہے؟
یہ شکایت اس کے برعکس ہے، اور دونوں صورتیں درست ہیں۔ اس کا انحصار اس بات پر ہے کہ آپ npm کا کون سا ورژن چلا رہے ہیں۔
npx اپنی package directory رکھتا ہے، جو tarball cache سے الگ ہوتی ہے۔ یہ directory npm cache کے اندر _npx نامی folder میں ہوتی ہے۔ اس کا path دکھائیں اور اسے دیکھیں۔
npm config get cache
ls "$(npm config get cache)/_npx"کئی سال تک npx کسی bare package name کے لیے وہاں موجود چیز ہی دوبارہ استعمال کرتا رہا اور registry سے دوبارہ نہیں پوچھتا تھا۔ npm 11.2.0 نے یہ طرزِ عمل تبدیل کر دیا۔ جب spec ایک bare name یا version range ہو اور package موجودہ project میں پہلے سے installed نہ ہو، تو npx اب manifest fetch کرتا ہے اور _npx میں cached copy صرف اسی وقت دوبارہ استعمال کرتا ہے جب resolved tarball، registry سے ابھی واپس ملنے والے tarball سے مطابقت رکھتا ہو۔ Bare name اب بھی موجودہ project میں installed version سے match ہوتا ہے، اور اس صورت میں registry check نہیں ہوتا۔
آپ کو کون سا طرزِ عمل ملے گا، یہ اس npm سے طے ہوتا ہے جسے آپ حقیقت میں چلا رہے ہیں۔ جب تک آپ نے npm install -g npm کے ذریعے npm کو الگ سے upgrade نہ کیا ہو، یہ وہی npm ہوتا ہے جو آپ کے Node release کے ساتھ bundled آتا ہے:
Node 20.20.2کے ساتھnpm 10.8.2bundled آتا ہے۔Node 22.19.0کے ساتھnpm 10.9.3bundled آتا ہے۔Node 22.23.3، جو 10 October 2026 تک تازہ ترین 22 release ہے، کے ساتھnpm 10.9.9bundled آتا ہے۔Node 24.19.0کے ساتھnpm 11.17.0bundled آتا ہے۔Node 24.21.0، جو 10 October 2026 تک تازہ ترین 24 release ہے، کے ساتھnpm 11.19.0bundled آتا ہے۔
لہذا Node 22 کی پوری line، جسے harness باضابطہ طور پر support کرتا ہے، 11.2.0 سے پرانا npm فراہم کرتی ہے۔ bundled npm والے Node 22 پر ایک bare npx @deepseek-ai/dsh web کئی ہفتے پہلے cache کیے گئے release candidate کو چلاتا رہے گا۔ Node 24 پر یہی command ہر run میں registry کے خلاف دوبارہ resolution کرے گی، الا یہ کہ جس directory سے آپ اسے چلا رہے ہیں وہ ایسا project ہو جس میں dsh کی اپنی copy installed ہو۔ ایک command، دو طرزِ عمل، اور دونوں میں کوئی warning نہیں ملتی۔ Tool سے پوچھیں کہ وہ کیا ہے:
npx @deepseek-ai/dsh --versionnpx cache صاف کرنا
npm 11.2.0 اور اس کے بعد کے versions میں اس مقصد کے لیے dedicated subcommands موجود ہیں۔
npm cache npx ls
npm cache npx rm --force--force کے بغیر npm ہر چیز صاف کرنے سے انکار کرتا ہے اور Please use --force to remove entire npx cache دکھاتا ہے۔ جب آپ تمام entries کے بجائے key کے ذریعے ایک entry ہٹانا چاہیں تو پہلے npm cache npx ls استعمال کریں۔
npm 10 میں یہ subcommands موجود نہیں ہیں، اس لیے directory خود delete کریں۔
rm -rf "$(npm config get cache)/_npx"npm cache clean --force یہاں مدد نہیں کرتا۔ یہ _cacache، یعنی tarball store، صاف کرتا ہے اور _npx کو ویسے ہی چھوڑ دیتا ہے۔ یہی separation ہے جس کی وجہ سے npm نے بعد میں npm cache npx subcommands شامل کیے۔ _npx صاف کرنے سے مستقل طور پر کچھ ضائع نہیں ہوتا: اس میں downloaded packages ہوتے ہیں، جبکہ آپ کی harness state $DSH_HOME/profiles/<name> کے تحت رہتی ہے اور متاثر نہیں ہوتی۔
میں exact release candidate کو کیسے pin کروں؟
-rc.N حصے سمیت مکمل version string درج کریں۔
npx --yes @deepseek-ai/dsh@0.1.0-rc.7 webاس صفحے کی مثالوں میں 0.1.0-rc.7 استعمال کیا گیا ہے۔ اس build کی جگہ وہ build درج کریں جسے آپ نے حقیقتاً test کیا ہے۔ 10 October 2026 کو latest tag، 0.2.0-rc.2 کی طرف اشارہ کر رہا تھا۔
اسکرپٹ میں --yes اہم ہے، کیونکہ بصورت دیگر npx ایسا package install کرنے سے پہلے prompt دکھاتا ہے جسے اس نے پہلے نہیں دیکھا، اور ایسے جواب کا انتظار کرتا رہتا ہے جو کبھی نہیں آتا۔
Exact version تیز ترین راستہ بھی ہے۔ npx اپنی cache directory کو آپ کی درج کردہ spec string کی بنیاد پر منتخب کرتا ہے۔ Exact version کی صورت میں یہ spec string کا وہاں پہلے سے installed package id سے موازنہ کرتا ہے اور registry سے دوبارہ رابطہ کیے بغیر اسے چلا دیتا ہے۔ npm 11.2.0 اور اس کے بعد کے versions میں، project سے باہر چلایا گیا ایسا bare name جو dsh install کرتا ہے، ہر start پر manifest fetch کرتا ہے۔
Global install بھی اسی طرح pin ہوتا ہے اور آپ کو مختصر command فراہم کرتا ہے۔
npm install -g @deepseek-ai/dsh@0.1.0-rc.7
dsh --version@deepseek-ai/dsh@^0.1.0 کے لیے کوئی matching version نہیں ملا
اس package کے لیے سادہ caret یا tilde range ناکام ہو جاتی ہے۔ npm install -g @deepseek-ai/dsh@^0.1.0 error code ETARGET اور یہ line No matching version found for @deepseek-ai/dsh@^0.1.0. کے ساتھ جواب دیتا ہے۔ Registry درست ہے۔ یہ semver کا rule ہے: version range کسی prerelease version سے match نہیں کرتی، جب تک range کے اپنے comparators میں سے کوئی comparator اسی major، minor اور patch numbers کے ساتھ prerelease کا نام نہ دے۔ اس package کی ہر published build prerelease ہے، یعنی -rc.N یا -alpha.N، اور ^0.1.0 کسی prerelease کا نام نہیں دیتا، اس لیے یہ کسی version سے match نہیں کرتا۔ Exact version لکھیں۔
یہ rule دونوں طرح اثر انداز ہوتا ہے۔ سادہ range کبھی نئے release candidate پر خود نہیں جاتی، لیکن prerelease کا نام دینے والی range ایسا کر سکتی ہے۔ ^0.1.0-rc.7 کا مطلب >=0.1.0-rc.7 <0.2.0-0 ہے، اس لیے یہ 0.1.0-rc.8 کو قبول کرتی ہے اور final 0.1.0 کو بھی قبول کر سکتی ہے، جبکہ 0.1.1-rc.1 شامل نہیں ہوتا کیونکہ اس کے numbers مختلف ہیں۔ یہ exact version اور moving tag کے درمیان half-pinned حالت ہے، اور آپ کی طرف سے کوئی تبدیلی کیے بغیر چلنے والی چیز تبدیل ہو سکتی ہے۔ اگر آپ صرف وہی build چلانا چاہتے ہیں جسے آپ نے test کیا ہے، تو exact version لکھیں۔
کیا مجھے npx استعمال کرنا چاہیے یا dsh کو globally install کرنا چاہیے؟
پہلی بار جائزہ لینے کے لیے npx استعمال کریں، کیونکہ اس کے بعد صرف ایک cache directory باقی رہتی ہے، جسے صاف کرنے کا طریقہ اب آپ جانتے ہیں۔ ایسی کسی بھی چیز کے لیے pinned global install استعمال کریں جسے reboot کے بعد بھی کام کرتے رہنا ہو، مثلاً وہ coding agent جسے آپ VPS پر مسلسل چلاتے ہیں۔
جس سرور پر آپ نے دونوں طریقے استعمال کیے ہوں، وہاں دونوں مختلف نتائج دے سکتے ہیں۔ اس لیے ان کا موازنہ کریں۔
which dsh
dsh --version
npx @deepseek-ai/dsh --versionwhich dsh کامیاب global install کے فوراً بعد کچھ بھی نہ ملنے کا تقریباً ہمیشہ یہ مطلب ہوتا ہے کہ npm کی global bin directory آپ کے PATH میں موجود نہیں ہے۔ root دکھانے کے لیے npm prefix -g چلائیں۔ binaries اس کے اندر bin folder میں موجود ہوتی ہیں۔
سکیورٹی سے متعلق ایک اہم بات۔ npx ہر بار نئی چیز resolve کرتے وقت registry سے code fetch اور execute کرتا ہے۔ سرور پر یہ حقیقی exposure ہے، محض نظری امکان نہیں۔ Pinning اس کا ایک حل ہے۔ باقی تفصیل npm supply chain attacks سرور تک کیسے پہنچتے ہیں میں ہے۔
تکرارپذیری کے لیے developer preview کا مطلب
0.1.0-rc.6 کو 13 August 2026 کو اور 0.1.0-rc.7 کو 17 August 2026 کو شائع کیا گیا۔ دونوں کے درمیان 4 دن کا فرق تھا۔ اس کے بعد رفتار کم نہیں ہوئی: 19 August سے 9 October 2026 کے درمیان مزید 24 versions شائع کیے گئے، جن میں 28 September کو 0.2.0-rc.1 اور اگلے دن 0.2.0-rc.2 شامل تھے۔ اس رفتار کے ہوتے ہوئے، ایک ماہ پہلے لکھی گئی ہدایات ایسی command line بیان کر سکتی ہیں جو اب موجود نہیں، اور اس صفحے کا معاملہ بھی یہی ہو سکتا ہے۔ اپنے نوٹس سمیت، جو version claim بھی لکھیں اس پر تاریخ درج کریں۔
Preview کو قابلِ استعمال رکھنے کے لیے 2 عادتیں مدد دیتی ہیں۔ ہر command اور ہر script میں درست version pin کریں، تاکہ server دوبارہ بنانے پر وہی harness تیار ہو۔ پھر کسی guide کے بجائے pinned build کا help output پڑھیں۔
npx @deepseek-ai/dsh@0.1.0-rc.7 --help
npx @deepseek-ai/dsh@0.1.0-rc.7 web --dump-configتکرارپذیری کا دوسرا حصہ profile ہے۔ dsh --profile <name>، $DSH_HOME/profiles/<name> میں محفوظ profile کو boot کرتا ہے، جبکہ web اور headless profiles پہلی بار استعمال ہونے پر shipped templates سے خود بناتے ہیں۔ یہی directory وہ جگہ بھی ہے جہاں harness اپنی API key، model اور endpoint settings پڑھتا ہے، اس لیے pinned version اور working configuration، درست طور پر set کرنے والی 2 الگ چیزیں ہیں۔ In-box bundles اس وقت چلنے والی dsh installation سے resolve ہوتے ہیں، اس لیے pinned version تبدیل کرنے سے یہ bundles بھی تبدیل ہو جاتے ہیں۔ Out-of-tree plugins مختلف طریقے سے کام کرتے ہیں۔ یہ profile directory میں رہتے ہیں، اور dsh plugin --profile <name> add <package> انہیں install کرنے کے لیے اپنے arguments pnpm کو forward کرتا ہے۔ اس لیے pnpm کا آپ کے PATH میں موجود ہونا ضروری ہے، اور موجود نہ ہونے پر dsh یہ بات واضح طور پر بتاتا ہے۔ آپ جو بھی plugin شامل کرتے ہیں وہ agent کے برابر permissions کے ساتھ چلتا ہے، اس لیے install کرنے سے پہلے یہ جانچنا ضروری ہے کہ plugin کن resources تک رسائی حاصل کر سکتا ہے۔ Profile کا اپنا package.json ہی ان plugins کو pin کرتا ہے، اس لیے مکمل pin کے لیے 1 کے بجائے 2 files درکار ہوتی ہیں۔
اگر آپ نے server پر Python tools کو isolated environments میں رکھا ہے تو یہ تقسیم مانوس محسوس ہوگی: tool اور اس میں شامل کی جانے والی چیزیں الگ جگہوں پر pin کی جاتی ہیں۔ Harness شروع ہونے کے بعد اگلا سوال عموماً versions کے بجائے networking سے متعلق ہوتا ہے۔ اسی مرحلے پر remote VPS پر dsh Web UI تک رسائی اور VPS پر DeepSeek Harness install کرنے کی تفصیلی ہدایات کارآمد ہوتی ہیں۔
حقیقی طور پر نظر آنے والی argument errors
یہ errors CLI کے اپنے parser سے آتے ہیں، اور ہر error اصل مسئلے کی واضح نشاندہی کرتا ہے۔ مختلف builds میں wording زیادہ تر یکساں رہی ہے، لیکن مکمل طور پر نہیں۔ اسی لیے نیچے دیے گئے messages کو 6 October 2026 کو 0.2.0-rc.2 کے خلاف جانچا گیا تھا۔
error: --profile <name> is required
آپ نے npx @deepseek-ai/dsh کو بغیر subcommand اور profile کے چلایا۔ یہ بنیادی command profile کو start کرتی ہے، اس لیے اسے نام درکار ہوتا ہے۔ dsh web کو --profile کے بغیر چلایا جا سکتا ہے، کیونکہ parser پہلے الگ لفظ کو profile name کے طور پر پڑھتا ہے۔ اس طرح یہ آپ کے لیے فراہم کردہ web profile کو start کر دیتا ہے۔
error: --patch needs a path
--patch کے بعد کچھ بھی فراہم نہیں کیا گیا۔ یہ flag کئی بار دیا جا سکتا ہے، اور ہر بار اس کے ساتھ ایک file path دینا ضروری ہے۔
error: --dump-config and --dump-default-config are mutually exclusive
ان میں سے ایک منتخب کریں۔ 0.2.0-rc.2 میں، 6 October 2026 کو جس build latest کی طرف اشارہ کر رہا تھا، message میں ایک تیسرا flag بھی شامل ہے اور یہ error: --dump-config, --dump-default-config, and --dump-config-schema are mutually exclusive دکھاتا ہے، کیونکہ --dump-config-schema، جو profile entries اور patches کے لیے JSON Schema دکھاتا ہے، اب باقی دونوں کے ساتھ شامل ہو گیا ہے۔ --dump-default-config فراہم کردہ bundle layers دکھاتا ہے اور کوئی --patch قبول نہیں کرتا۔ --dump-config کسی profile کے لیے composed configuration دکھاتا ہے۔ یہ سب harness start کیے بغیر output دے کر exit ہو جاتے ہیں، اس لیے یہ دیکھنے کا محفوظ طریقہ ہیں کہ نئی release candidate نے آپ کی موجودہ configuration میں کیا تبدیلی کی ہے۔
error: plugin needs pnpm arguments to forward (e.g. add <package>)
dsh plugin --profile <name> کو آگے بھیجنے کے لیے کچھ نہیں دیا گیا۔ اگر profile موجود نہ ہو تو subcommand اسے initialize کرتا ہے، پھر command line کے باقی حصے کو pnpm کے حوالے کرتا ہے۔ اس لیے اسے add @scope/dsh-plugin-example جیسے arguments درکار ہوتے ہیں۔
FAQ
DeepSeek Harness کے لیے Node.js کا کون سا ورژن درکار ہے؟
Repository اپنے root package.json میں ^22.19.0 || >=24.0.0 کا اعلان کرتی ہے۔ یہ معلومات 10 October 2026 کو پڑھی گئی تھیں، جب repository version 0.2.1-alpha.2 پر تھی۔ اس لیے 22 لائن کا Node 22.19.0 یا اس کے بعد کا ورژن، یا Node 24 اور اس کے بعد کے ورژن استعمال کریں۔ Node 20 کام نہیں کرے گا۔ شائع شدہ npm package میں اپنا engines field موجود نہیں ہے۔ اس لیے npm آپ کو warning نہیں دیتا اور install کو بھی نہیں روکتا۔ خرابی runtime پر ظاہر ہوتی ہے۔ پہلے node -v چیک کریں۔ Node 24 بہرحال بہتر انتخاب ہے، کیونکہ اس میں npm 11 شامل ہے، جو npx کے version reuse کا مسئلہ حل کرتا ہے۔
Cached ورژن کے بجائے npx کو جدید ترین dsh استعمال کرنے پر کیسے مجبور کروں؟
npm 11.2.0 اور اس کے بعد کے ورژنز میں npx @deepseek-ai/dsh ہر run پر bare package name کے لیے registry کو دوبارہ check کرتا ہے۔ استثنا یہ ہے کہ موجودہ directory میں dsh installed ہو۔ ایسی صورت میں npx وہ local copy چلاتا ہے۔ Node 22 کے ہر release کے ساتھ npm 10 bundled ہوتا ہے، اور npm 10 یہ کام نہیں کرتا۔ npm 11 پر npm cache npx rm --force سے npx cache صاف کریں، یا npm 10 پر rm -rf "$(npm config get cache)/_npx" سے folder delete کریں۔ پھر npx @deepseek-ai/dsh --version سے تصدیق کریں۔ یاد رکھیں کہ npm cache clean --force ایک مختلف directory صاف کرتا ہے اور اس مسئلے کو حل نہیں کرے گا۔
@deepseek-ai/dsh@^0.1.0 install کرنا ناکام کیوں ہوتا ہے؟
npm ETARGET error code کے ساتھ No matching version found for @deepseek-ai/dsh@^0.1.0. والی line واپس کرتا ہے۔ ہر published build prerelease ہوتا ہے، مثلاً 0.2.0-rc.2 یا 0.2.1-alpha.2۔ semver range prerelease versions سے match نہیں کرتی، جب تک range میں انہی major، minor اور patch numbers کے ساتھ prerelease نامزد نہ ہو۔ Exact version string استعمال کریں، بشمول suffix کے۔ دستیاب versions دیکھنے کے لیے npm view @deepseek-ai/dsh versions --json چلائیں، کیونکہ sequence میں ایسے gaps موجود ہیں جہاں builds شائع نہیں کیے گئے۔
dsh کو globally install کرنا چاہیے یا npx کے ذریعے چلانا چاہیے؟
ابتدائی جائزے کے لیے npx موزوں ہے، کیونکہ cache directory کے علاوہ کچھ مستقل طور پر محفوظ نہیں ہوتا۔ ایسے کام کے لیے جسے مسلسل چلتے رہنا ہو، npm install -g @deepseek-ai/dsh@0.1.0-rc.7 جیسا pinned global install بہتر ہے، کیونکہ version صرف اسی وقت تبدیل ہوتا ہے جب آپ اسے تبدیل کریں۔ اگر global install کے بعد dsh command نہ ملے تو npm کی global bin directory آپ کے PATH میں شامل نہیں ہے۔ npm prefix -g وہ root دکھاتا ہے جس کے تحت یہ directory موجود ہے۔
کیا DeepSeek Harness پر build کرنے کے لیے کافی مستحکم ہے؟
اپنی وضاحت کے مطابق ابھی نہیں۔ README میں بتایا گیا ہے کہ project developer preview میں ہے، تیزی سے تبدیل ہو رہا ہے، اور compatibility توڑنے والی تبدیلیاں متوقع ہیں۔ Release candidates 0.1.0-rc.6 اور 0.1.0-rc.7 اگست 2026 میں چار دن کے فرق سے شائع ہوئے۔ 0.2.0-rc.1 اور 0.2.0-rc.2 ستمبر 2026 میں ایک دن کے فرق سے شائع ہوئے۔ Exact version pin کریں اور کسی guide کے بجائے اسی pinned build سے --help پڑھیں۔ اپنے notes پر تاریخ درج کریں، تاکہ معلوم رہے کہ وہ کتنے پرانے ہو چکے ہیں۔