منصوبے کے بارے میں

Pacmon ڈیپنڈنسی مینی فیسٹ فائلوں میں ایک "کیوں" کی تہہ شامل کرتا ہے۔ package.json، Cargo.toml، pom.xml، build.gradle، mix.exs، build.zig.zon، go.mod اور Python مینی فیسٹ جیسی فائلیں بتاتی ہیں کہ کوئی پروجیکٹ کن چیزوں پر منحصر ہے؛ Pacmon ہر براہ راست ڈیپنڈنسی کو ایک مختصر نوٹ رکھنے دیتا ہے جس میں یہ بیان ہوتا ہے کہ وہ کیوں موجود ہے، کیا تبدیل نہیں ہونا چاہیے، اور اپ گریڈ سے پہلے کیا چیک کرنا ہے۔ نوٹس .pacmon/ کے نیچے سادہ Markdown فائلوں کے طور پر محفوظ ہوتے ہیں، اُس مینی فیسٹ کے ساتھ جس کی وہ وضاحت کرتے ہیں۔ کوئی ڈیٹا بیس، سروس یا اکاؤنٹ نہیں: فائلوں کو کسی بھی دوسری ریپوزٹری فائل کی طرح پڑھا، diff کیا اور commit کیا جا سکتا ہے۔ مینی فیسٹ میں ڈیپنڈنسی پر hover کرنے پر نوٹ ظاہر ہوتا ہے، اور اس کی پہلی سطر ڈیپنڈنسی لائن کے آخر میں دکھائی جاتی ہے۔ ہر ڈیپنڈنسی سے پہلے ایک نشان بھرا ہوتا ہے جب نوٹ موجود ہو اور کھوکھلا جب نہ ہو۔ معاون ایکو سسٹمز اور ان کی نوٹس فائلیں: - npm: package.json، .pacmon/DEPENDENCY-NOTES.md، سیکشنز پیکیج کے نام سے (مثلاً ## express)۔ - Rust: Cargo.toml، .pacmon/cargo/DEPENDENCY-NOTES.md، سیکشنز ڈیپنڈنسی key کے نام سے۔ - Maven: pom.xml، .pacmon/maven/DEPENDENCY-NOTES.md، سیکشنز groupId:artifactId کے نام سے۔ - Gradle: build.gradle یا build.gradle.kts، .pacmon/gradle/DEPENDENCY-NOTES.md، سیکشنز group:name یا catalog alias کے نام سے۔ - Elixir/Mix: mix.exs، .pacmon/mix/DEPENDENCY-NOTES.md، سیکشنز ڈیپنڈنسی application atom کے نام سے۔ - Zig: build.zig.zon، .pacmon/zig/DEPENDENCY-NOTES.md، سیکشنز براہ راست ڈیپنڈنسی فیلڈ کے نام سے۔ - Python: pyproject.toml اور requirements فائلیں، .pacmon/python/DEPENDENCY-NOTES.md، سیکشنز normalized distribution name کے نام سے۔ - Go: go.mod، .pacmon/go/DEPENDENCY-NOTES.md، سیکشنز module path کے نام سے۔ Pacmon مینی فیسٹ کو بطور متن parse کرتا ہے اور npm، Cargo، Maven، Gradle، Mix، Zig، Python، pip، Poetry، uv یا Go نہیں چلاتا۔ یہ فائل میں لکھی گئی براہ راست ڈیپنڈنسیوں کو پہچانتا ہے، جن کی ایکو سسٹم کے مطابق حدود README میں بیان کی گئی ہیں (مثلاً Maven dependencyManagement اور plugin dependencies شامل نہیں؛ Gradle اسکرپٹس نہیں چلائی جاتیں، اس لیے کوڈ سے شامل کی گئی ڈیپنڈنسیاں نظر نہیں آتیں؛ Go replace، exclude، retract، go.work اور vendor کو ڈیپنڈنسی کے طور پر نہیں پڑھا جاتا)۔ ہر ایکو سسٹم اپنی نوٹس فائل رکھتا ہے، اور جس مینی فیسٹ کے پاس اپنی فائل نہ ہو وہ اسی ایکو سسٹم کی اوپر والی قریب ترین نوٹس فائل استعمال کرتا ہے۔ نوٹس فائلیں ہر براہ راست ڈیپنڈنسی کے لیے ایک ## سیکشن استعمال کرتی ہیں۔ لوگ ہیڈنگ کے نیچے لکھتے ہیں؛ AI کوڈنگ ایجنٹ ### Agent notes ذیلی سیکشن کے نیچے - key: value سطروں میں لکھتے ہیں جیسے purpose، constraint، verify، log اور verified۔ ایجنٹس سے توقع کی جاتی ہے کہ وہ کسی ڈیپنڈنسی کو شامل کرنے، اپ گریڈ کرنے یا ہٹانے سے پہلے اس کا سیکشن پڑھیں، اور جو کچھ کیا وہ ریکارڈ کریں۔ Pacmon ایجنٹ سطروں کی توثیق کرتا ہے اور نامعلوم فیلڈز یا خالی اقدار پر خبردار کرتا ہے، اور ایک کلک کے حل پیش کرتا ہے۔ Pacmon خود کسی AI سروس کو کال نہیں کرتا؛ یہ فائلیں اور قواعد فراہم کرتا ہے، اور ایک setup کمانڈ .pacmon/AGENT-RULES.md لکھتی ہے اور عام ایجنٹ ہدایات فائلوں جیسے AGENTS.md، CLAUDE.md، .cursor/rules/ اور .github/copilot-instructions.md میں اشارے شامل کرتی ہے۔ خصوصیات میں hover نوٹس، inline پیش نظارے، ڈیپنڈنسی نشانات، سائیڈ پینل، peek editor یا input box کے ذریعے مینی فیسٹ سے نوٹس لکھنا، ایک Documentation Coverage ویو جو بتاتی ہے کہ کن ڈیپنڈنسیوں کے نوٹس موجود ہیں، اور نوٹس فائل میں مسائل کے لیے انتباہات شامل ہیں۔ سیٹنگز میں inline hint کا انداز، کون سی تہہ پیش نظارے فراہم کرتی ہے (human-first، ai-first، human-only، ai-only)، نوٹس کیسے درج کیے جاتے ہیں، قابل کلک entry points، اور monorepo نوٹس فائل resolution شامل ہیں۔ اس ایکسٹینشن کے لیے VS Code 1.100+ یا JetBrains IDE 2025.2+ درکار ہے، اور کسی زبان کا toolchain انسٹال ہونا ضروری نہیں۔ یہ VS Code for the Web، Remote-SSH، WSL اور dev containers میں کام کرتا ہے۔ یہ ایک ابتدائی preview ہے جو ابھی pull requests قبول نہیں کرتا؛ bug reports اور feature requests GitHub issues پر بھیجی جاتی ہیں۔ Apache 2.0 کے تحت لائسنس یافتہ، اور "Pacmon" اور لوگو Kontra کے trademarks ہیں۔