مرکزی مواد پر جائیں
اے آئی ٹیوٹوریلز

Everything Search Skill کے ذریعے AI ایجنٹس سے لاکھوں مقامی فائلیں تلاش کریں

جانیں کہ AI کوڈنگ ایجنٹس کو HTTP یا مقامی Win32 IPC کے ذریعے Voidtools Everything انڈیکس سے کیسے منسلک کیا جائے۔ اس ٹیوٹوریل میں میزبان کی تیاری، انسٹالیشن، کنٹینر کی تشکیل، محدود دائرۂ کار میں تلاش، JSON آؤٹ پٹ، تلاش کے فلٹرز، صفحہ بندی اور جدید استفسار کی مثالیں شامل ہیں۔

Everything Search Skill کے ذریعے AI ایجنٹس سے لاکھوں مقامی فائلیں تلاش کریں

Everything Search Skill کیا کرتا ہے

Everything Search Skill، Voidtools Everything کے ذریعے اشاریہ شدہ فائلوں تک AI کوڈنگ ایجنٹس کو انتہائی تیز رسائی فراہم کرتا ہے۔ یہ NTFS ڈرائیوز پر موجود لاکھوں فائلوں میں تلاش کر سکتا ہے، جس کا رپورٹ کردہ جوابی وقت 15 ملی سیکنڈ سے کم ہے۔ اس لیے یہ سورس فائلیں، کنفیگریشن فائلیں، لاگز، اثاثے اور پروجیکٹ ڈائریکٹریاں تلاش کرنے کے لیے مفید ہے۔

یہ پروجیکٹ es.exe کی ایک عام حد کو حل کرتا ہے۔ مقامی کمانڈ لائن کلائنٹ Windows میسجنگ اور Win32 IPC کے ذریعے Everything ڈیسک ٹاپ ایپلیکیشن سے رابطہ کرتا ہے۔ اس لیے Docker، WSL2، Windows Sandbox، الگ تھلگ رنرز یا پس منظر کے سیشنز میں چلنے والے ایجنٹس کو درج ذیل خرابی موصول ہو سکتی ہے:

Error 8: Everything IPC window not found. Please make sure Everything is running.

یہ ناکامی اس لیے پیش آ سکتی ہے کہ Windows User Interface Privilege Isolation اور Session 0 Isolation مختلف ڈیسک ٹاپ سیشنز کے عمل کو مطلوبہ ونڈو پیغامات کا تبادلہ کرنے سے روکتے ہیں۔

دوہری موڈ والی ساخت کیسے کام کرتی ہے

یہ اسکل Everything انجن سے رابطے کے دو طریقے فراہم کرتی ہے:

  1. HTTP REST موڈ: سینڈ باکسز، کنٹینرز، WSL2، ریموٹ ماحول، Linux اور macOS کے لیے ترجیحی موڈ۔ درخواستیں Windows ہوسٹ پر چلنے والے HTTP سرور تک پہنچتی ہیں اور Win32 سیشن کی پابندیوں سے بچتی ہیں۔
  2. CLI IPC موڈ: مقامی Windows ڈیسک ٹاپ سیشن کے اندر چلنے والے ایجنٹ کے لیے متبادل موڈ۔ اس موڈ میں ہیلپر Everything کے معیاری IPC طریقہ کار کے ذریعے es.exe کو کال کرتا ہے۔

خودکار موڈ میں Python ہیلپر پہلے HTTP آزماتا ہے اور مناسب صورت میں CLI پر منتقل ہو جاتا ہے۔ Python کی تنصیب میں صرف معیاری لائبریری کے ماڈیولز استعمال ہوتے ہیں، اس لیے Python کی کسی تھرڈ پارٹی dependency کی ضرورت نہیں۔

اہم خصوصیات

  • تیز اشاریہ شدہ تلاشیں: ڈائریکٹریوں کو بار بار اسکین کیے بغیر اشاریہ شدہ NTFS ڈرائیوز میں فائلیں تلاش کریں۔
  • کنٹینر سپورٹ: Docker، WSL2، Windows Sandbox اور الگ تھلگ ایجنٹ رنرز کو ہوسٹ کے HTTP endpoint سے مربوط کریں۔
  • محدود دائرے میں تلاش: تمام اشاریہ شدہ ڈرائیوز میں تلاش کریں یا نتائج کو کسی workspace تک محدود کریں۔
  • کانٹیکسٹ کے لیے محفوظ حدود: بڑے نتائج کو AI ایجنٹ کی کانٹیکسٹ ونڈو استعمال کرنے سے روکنے کے لیے -n 20 جیسے اختیارات استعمال کریں۔
  • منظم نتائج: Python اور PowerShell ہیلپرز سے JSON آؤٹ پٹ طلب کریں۔
  • ایجنٹ انضمام: Cursor، Codex، PI-Desktop یا حسب ضرورت ایجنٹ ماحول کے لیے اسکل انسٹال کریں۔

ضروریات

آپ کو Windows ہوسٹ درکار ہے جس پر Voidtools Everything چل رہا ہو اور اس کے اشاریے دستیاب ہوں۔ مقامی ڈیسک ٹاپ استعمال کے لیے اسکل es.exe کے ذریعے رابطہ کر سکتی ہے۔ Docker، WSL2، سینڈ باکس یا ریموٹ استعمال کے لیے ہوسٹ پر Everything کا HTTP سرور فعال کریں۔

مرحلہ 1: Everything HTTP سرور فعال کریں

Windows ہوسٹ پر Everything کھولیں اور یہ مراحل مکمل کریں:

  1. Tools کھولیں، پھر Options منتخب کریں۔
  2. بائیں نیویگیشن میں HTTP Server منتخب کریں۔
  3. Enable HTTP Server فعال کریں۔
  4. پورٹ کو 8080 پر مقرر کریں۔
  5. ترتیبات کی تصدیق کریں۔

متبادل طور پر ریپوزٹری کی PowerShell سیٹ اپ اسکرپٹ چلائیں:

.\scripts\enable_http.ps1 -Port 8080

HTTP endpoint الگ تھلگ ایجنٹ اور ہوسٹ پر چلنے والی Everything سروس کے درمیان پل کا کام کرتا ہے۔

مرحلہ 2: اسکل کلون اور انسٹال کریں

PowerShell کھولیں، ریپوزٹری کلون کریں، اس کی ڈائریکٹری میں جائیں اور انسٹالر چلائیں:

git clone https://github.com/Mayuqi-crypto/everything-search-skill.git
cd everything-search-skill
.\scripts\install.ps1

انسٹالر es.exe کو ~/.local/bin/ میں رکھتا ہے، صارف کا PATH ترتیب دیتا ہے، اور اسکل کو درج ذیل ایجنٹ مقامات پر نصب کرتا ہے:

  • ~/.agents/skills/
  • ~/.cursor/skills/
  • ~/.codex/skills/

مرحلہ 3: بنیادی تلاش چلائیں

دوہری موڈ والا Python ہیلپر scripts/everything_search.py پر موجود ہے۔ خودکار موڈ میں یہ پہلے HTTP endpoint آزماتا ہے، پھر دستیاب ہونے کی صورت میں مقامی CLI متبادل استعمال کرتا ہے:

python scripts/everything_search.py "package.json" -n 20

-n 20 دلیل جواب کو 20 نتائج تک محدود کرتی ہے۔ جب AI ایجنٹ آؤٹ پٹ استعمال کرے تو نتائج کی حد خاص طور پر اہم ہوتی ہے۔

منظم JSON واپس کریں

جب نتیجہ پروگرام کے ذریعے پارس کیا جائے تو --json شامل کریں:

python scripts/everything_search.py "ext:tsx component" -n 10 --json

یہ query ایسی اشاریہ شدہ اشیا تلاش کرتی ہے جو ext:tsx اور component دونوں سے مطابقت رکھتی ہوں، پھر JSON شکل میں زیادہ سے زیادہ 10 نتائج واپس کرتی ہے۔

تلاش کو کسی پروجیکٹ تک محدود کریں

تلاش کو کسی workspace تک محدود کرنے کے لیے Python ہیلپر کے ساتھ -p استعمال کریں:

python scripts/everything_search.py "main.py" -p "C:\Workspace\repo" -n 5

تلاش کو محدود کرنے سے دوسرے پروجیکٹس کے غیر متعلقہ نتائج کم ہوتے ہیں اور کسی خاص repository کے اندر کام کرنے والے ایجنٹ کے لیے آؤٹ پٹ زیادہ مفید بنتا ہے۔

HTTP موڈ زبردستی منتخب کریں

اگر ایجنٹ کو ہوسٹ کا HTTP سرور استعمال کرنا ہو تو یہ موڈ واضح طور پر منتخب کریں:

python scripts/everything_search.py "exact:Dockerfile" --mode http

exact: آپریٹر wildcard کی توسیع سے بچاتا ہے اور عین فائل نام تلاش کرتا ہے۔

Docker سے اسکل استعمال کریں

EVERYTHING_HTTP_URL کے ذریعے ہوسٹ کا endpoint کنٹینر میں منتقل کریں۔ ریپوزٹری کی مثال خصوصی ہوسٹ نام کو ہوسٹ gateway سے بھی منسلک کرتی ہے:

docker run -e EVERYTHING_HTTP_URL=http://host.docker.internal:8080 \
  --add-host host.docker.internal:host-gateway \
  my-agent-image

کنٹینر کے اندر Python ہیلپر چلائیں:

python scripts/everything_search.py "package.json" -n 10 --json

یہ درخواست کنٹینر کے اندر سے ڈیسک ٹاپ IPC آزمانے کے بجائے TCP کے ذریعے Everything HTTP سرور تک پہنچتی ہے۔

WSL2 سے Skill استعمال کریں

WSL2 میں، ڈیفالٹ روٹ سے Windows میزبان کا پتہ حاصل کریں اور نتیجے میں ملنے والے اینڈ پوائنٹ کو EVERYTHING_HTTP_URL میں تفویض کریں:

export EVERYTHING_HTTP_URL="http://$(ip route show | awk '/default/ {print $3}'):8080"
python3 scripts/everything_search.py "ext:py model" -n 10

یہ استفسار منطقی AND استعمال کرتا ہے: ہر نتیجے کو Python ایکسٹینشن فلٹر اور model کی اصطلاح، دونوں پر پورا اترنا چاہیے۔

Native Windows سیشن میں es.exe استعمال کریں

جب ایجنٹ اسی native ڈیسک ٹاپ سیاق میں چل رہا ہو جس میں Everything موجود ہے، تو آپ براہِ راست es.exe چلا سکتے ہیں۔ ہمیشہ نتائج کی مناسب حد مقرر کریں:

es.exe -n 20 "package.json"

نتائج کو ورک اسپیس تک محدود کریں

es.exe -path "C:\my-repo" -n 20 "index.ts"

صرف فائلیں یا ڈائریکٹریاں واپس کریں

صرف فائلوں کے لیے /a-d اور صرف ڈائریکٹریوں کے لیے /ad استعمال کریں:

es.exe /a-d -n 15 "ext:tsx component"
es.exe /ad -n 10 "node_modules"

حالیہ لاگز پہلے ترتیب دیں

es.exe -sort-date-modified-descending -n 10 "ext:log dm:today"

یہ آج کی لاگ فائلیں تلاش کرتا ہے اور انہیں ترمیم کی تاریخ کے مطابق، نئی ترین فائل پہلے، ترتیب دیتا ہے۔

زیادہ دقیق Everything استفسارات بنائیں

Everything کا سرچ نحو نتائج ایجنٹ تک پہنچنے سے پہلے تلاش کو محدود کر سکتا ہے۔

  • متعدد ایکسٹینشنز: متعدد ایکسٹینشنز سے مطابقت کے لیے ext:md;txt;json استعمال کریں۔
  • کم از کم فائل سائز: size:>100MB استعمال کریں۔
  • سائز کی حد: size:1MB..50MB استعمال کریں۔ معاون یونٹس میں B، KB، MB اور GB شامل ہیں۔
  • ترمیم کی تاریخ: dm:today، dm:last7days یا dm:2025 جیسی قدر استعمال کریں۔
  • والدین کا راستہ: path:"C:\Workspace" استعمال کریں۔
  • عین فائل نام: exact:Dockerfile استعمال کریں۔
  • منطقی AND: اصطلاحات کو خالی جگہوں سے الگ کریں، جیسے model user ext:py۔
  • منطقی OR: متبادل اصطلاحات کے درمیان پائپ رکھیں، جیسے *.jpg | *.png۔
  • منطقی NOT: اخراج کے لیے ! سابقہ لگائیں، جیسے *.ts !*.test.ts۔
  • ریگولر ایکسپریشن: native CLI کا -r آپشن استعمال کریں، مثال کے طور پر es.exe -r "src\\api\\.*\.go$"۔

AI ایجنٹ ورک فلو کے لیے جدید تجاویز

مختصر، ساخت یافتہ جوابات کو ترجیح دیں

جب ایجنٹ کو فائلیں منتخب کرنی ہوں یا نتائج کسی دوسرے ٹول میں منتقل کرنے ہوں تو -n کو --json کے ساتھ ملائیں۔ مختصر ساخت یافتہ جواب کو پارس کرنا آسان ہوتا ہے اور اس سے ماڈل کے سیاق سے تجاوز کا امکان کم رہتا ہے۔

python scripts/everything_search.py "ext:json package" -n 10 --json

دائرہ وسیع کرنے سے پہلے محدود کریں

جب پروجیکٹ کا مقام معلوم ہو تو موجودہ ورک اسپیس سے آغاز کریں۔ اگر اس سے کوئی مفید نتیجہ نہ ملے تو استفسار کو تمام indexed ڈرائیوز تک وسیع کریں۔ یہ طریقہ شور کو محدود رکھتے ہوئے پورے انڈیکس میں تلاش کی صلاحیت برقرار رکھتا ہے۔

فلٹرز کو یکجا کریں

Everything خالی جگہوں سے الگ کی گئی اصطلاحات کو منطقی AND شرائط سمجھتا ہے۔ آپ ایک ہی استفسار میں فائل نام کی اصطلاحات، ایکسٹینشنز، تاریخیں اور اخراج کو یکجا کر سکتے ہیں:

python scripts/everything_search.py "ext:ts dm:last7days !*.test.ts" -n 20 --json

یہ مثال حالیہ ترمیم شدہ TypeScript فائلیں تلاش کرتی ہے اور .test.ts پر ختم ہونے والی فائلوں کو خارج کرتی ہے۔

درست ٹرانسپورٹ منتخب کریں

  • عام استعمال اور آسان fallback رویے کے لیے automatic mode استعمال کریں۔
  • Docker، WSL2، sandboxes، remote agents اور Windows ڈیسک ٹاپ سیشن سے الگ ماحول کے لیے HTTP mode استعمال کریں۔
  • native Windows ڈیسک ٹاپ سیشن میں interactive طور پر چلتے وقت، اور CLI سے متعلق مخصوص switches درکار ہوں، تو براہِ راست es.exe commands استعمال کریں۔

ریپوزٹری کے اجزا کو سمجھیں

  • SKILL.md میں معیاری agent skill specification موجود ہے۔
  • bin/es.exe میں سرکاری Voidtools CLI tool موجود ہے۔
  • scripts/install.ps1 installation اور PATH setup انجام دیتا ہے۔
  • scripts/enable_http.ps1 HTTP server کو configure کرتا ہے۔
  • scripts/everything_search.ps1 dual-mode PowerShell wrapper فراہم کرتا ہے۔
  • scripts/everything_search.py zero-dependency dual-mode Python wrapper فراہم کرتا ہے۔

نتیجہ

Everything Search Skill، AI coding agents کو صرف Win32 desktop IPC پر انحصار کیے بغیر Everything index کی رفتار استعمال کرنے دیتا ہے۔ میزبان HTTP server فعال کریں، skill install کریں، isolated ماحول کے لیے endpoint configure کریں، اور نتائج کی سخت حدود کے ساتھ محدود استفسارات استعمال کریں۔ اس کے بعد dual-mode helper، یکساں search interface کے ذریعے containerized agents اور native Windows workflows، دونوں کو معاونت فراہم کرتا ہے۔

یہ پروجیکٹ MIT License کے تحت دستیاب ہے۔ Voidtools Everything اور es.exe کے حقوق بدستور Voidtools کے پاس ہیں۔