منصوبے کے بارے میں
Context (supa-media/context) ایک MCP گیٹ وے ہے جو AI کلائنٹس — ChatGPT، Claude، Codex، Notion AI اور دیگر — کو ایک واحد اینڈ پوائنٹ فراہم کرتا ہے جس کے ذریعے وہ ایک ذاتی نالج بیس کو پڑھ اور لکھ سکتے ہیں۔ یہ نالج بیس سادہ Markdown ہے جو صارف کے کنٹرول میں موجود اکاؤنٹ میں محفوظ ہوتا ہے: Dropbox، Cloudflare R2، AWS S3، Backblaze B2، یا کوئی بھی S3-مطابق اسٹوریج۔
README تین متعلقہ اکائیوں کی وضاحت کرتا ہے: ایک **brain** (آپ کے نام سے مخاطب ذاتی سیاق و سباق)، ایک **workspace** (دوسروں کے ساتھ مشترکہ سیاق و سباق)، اور **context** جو آپ کے brain، آپ کے ساتھ شیئر کیے گئے brains، اور آپ کے workspaces کا مجموعہ ہے۔ ایک اینڈ پوائنٹ کو منسلک کرنے کا مقصد ہر نئے اسسٹنٹ کو آپ کے پروجیکٹس، فیصلوں اور تاریخ کے بارے میں دوبارہ سکھانے کی ضرورت کو ختم کرنا ہے۔
## دو پلینز (Two planes)
ڈیزائن کنٹرول پلین کو ڈیٹا پلین سے الگ کرتا ہے، اور README اس تقسیم کو پروجیکٹ کے مرکز کے طور پر پیش کرتا ہے۔
- **کنٹرول پلین** (`apps/convex`) — اکاؤنٹس، ورک اسپیس، OAuth گرانٹس اور اسٹوریج بائنڈنگز۔ یہ بیان کیا گیا ہے کہ اس میں صرف میٹا ڈیٹا ہوتا ہے: کوئی نوٹس نہیں، کوئی دوسری کاپی نہیں۔
- **ڈیٹا پلین** — صارف کا Dropbox فولڈر یا آبجیکٹ اسٹوریج بکٹ۔ Context اکاؤنٹ کو حذف کرنے سے کنٹرول پلین صاف ہو جاتا ہے جبکہ ڈیٹا پلین کو نہیں چھیڑا جاتا۔
MCP گیٹ وے (`apps/mcp`) کو ایک خود مختار Cloudflare Worker کے طور پر بیان کیا گیا ہے جسے صارف خود تعینات کر سکتا ہے اگر ہوسٹڈ سروس ختم ہو جائے، اور بکٹ کام کرنا جاری رکھے گی۔
## اسٹوریج اور پورٹیبلٹی کے دعوے
- سادہ فائلیں بنیادی ہیں: Markdown جو Obsidian میں پڑھا جا سکتا ہے، greppable ہے، یا `rclone` کے ذریعے ہٹایا جا سکتا ہے؛ کوئی ملکیتی ڈیٹا بیس واحد کاپی کے طور پر موجود نہیں ہے۔
- اسٹوریج اپنی اصل شکل برقرار رکھتا ہے — Dropbox میں ایک عام فولڈر، آبجیکٹ اسٹوریج میں بکٹ لیول ٹیننسی، بغیر کسی کیز (keys) کی تبدیلی یا پاتھز کی نیم اسپیسنگ کے۔ کہا گیا ہے کہ ایک موجودہ brain بغیر کسی مائیگریشن کے منسلک ہو جاتا ہے۔
- انڈیکسز (سرچ کیشز، ایمبیڈنگز) کو قابلِ تلف ڈیریویٹوز کے طور پر بیان کیا گیا ہے جنہیں فائلوں سے دوبارہ بنایا جا سکتا ہے۔
## ٹولز اور کنونشنز
**`orient`** پہلا ٹول ہے جسے منسلک کلائنٹس کو کال کرنے کے لیے کہا جاتا ہے۔ یہ فرنٹ پیج، حال ہی میں استعمال شدہ نوٹس، اور نوٹس کی تعداد کے ساتھ فولڈرز کا نقشہ فراہم کرتا ہے۔ اس کا زیادہ تر آؤٹ پٹ بکٹ سے اخذ کیا جاتا ہے اور ہر کال پر دوبارہ بنایا جاتا ہے۔ README نوٹ کرتا ہے کہ یہ ہدایت کنکشن میں موجود ہوتی ہے نہ کہ کلائنٹ میں، اس لیے اسے مستقل بنانے کے لیے کلائنٹ سائیڈ کسٹم انسٹرکشن، سسٹم پرامپٹ یا رولز فائل تجویز کی گئی ہے۔
**`index.md`** بکٹ کی جڑ (root) پر ایک عام Markdown فائل ہے، جس کا مالک صارف ہوتا ہے۔ سیٹ اپ ایک ابتدائی ورژن لکھتا ہے؛ ایجنٹس کو ہدایت کی جاتی ہے کہ وہ اسے تبدیل کرنے کے بجائے اس میں اضافہ کریں اور پہلے تبدیلیوں کا ذکر کریں۔ ایک اختیاری `index-private.md` اس کے ساتھ موجود ہو سکتی ہے جس میں صرف ذاتی کنکشن کے لیے مواد ہو۔ ایسی بکٹ کو منسلک کرنا جس میں پہلے سے نوٹس موجود ہوں، کسی چیز کو اوور رائٹ نہیں کرتا، لہذا ایک امپورٹڈ brain میں `index.md` نہیں ہو سکتی اور `orient` ایسا ہی بتائے گا۔
**`save_context`** سیشن کے اختتام پر ایجنٹ کے ذریعے کال کیا جانے والا ٹول ہے۔ اس کا رویہ `index.md` میں ایک `## Save context` سیکشن کے ذریعے صارف کی تعریف کردہ ہوتا ہے جس میں ایک `destination:` لائن اور کوئی بھی طریقہ کار ہوتا ہے جس پر صارف عمل چاہتا ہے۔
**سیشن اینڈ ہک (Session-end hook)** — `npx -y @supa-media/context-hook install` ایک بار سائن ان کرتا ہے اور Claude Code میں ایک `SessionEnd` ہک شامل کرتا ہے تاکہ سیشن کے صارف کے نظر آنے والے پیغامات خود بخود `0-inbox/` میں چلے جائیں۔ README کہتا ہے کہ یہ صرف کیپچر تک رسائی کی درخواست کرتا ہے، نوٹس نہیں پڑھ سکتا، Connections میں ظاہر ہوتا ہے اور اسے الگ سے منسوخ کیا جا سکتا ہے۔ سورس `packages/hook` میں ہے۔
## تنظیم (Organization)
سیٹ اپ ایک PARA-اسٹائل ڈھانچہ تیار کرتا ہے — `0-inbox/`, `1-projects/`, `2-areas/`, `3-resources/`, `4-archive/` — جسے ایک اسکیم کے بجائے ایک تجویز کے طور پر پیش کیا گیا ہے۔ ٹولز پاتھز پر کام کرتے ہیں، اس لیے کہا گیا ہے کہ صارف کا فراہم کردہ ڈھانچہ بھی اسی طرح کام کرے گا۔
## پرائیویسی
ہر نوٹ یا تو `private` ہوتا ہے یا `team`۔ فولڈر ڈیفالٹس بکٹ کی جڑ پر ایک `privacy.md` مینی فیسٹ میں اعلان کیے جاتے ہیں، جو مالک کو نظر آتے ہیں اور مواد واپس کرنے سے پہلے سرور سائیڈ پر نافذ کیے جاتے ہیں، جبکہ انفرادی نوٹس اپنے فولڈر کو کسی بھی سمت میں اوور رائٹ کر سکتے ہیں۔ `team` کی تعریف نامزد افراد کے طور پر کی گئی ہے، کبھی بھی عوامی انٹرنیٹ کے طور پر نہیں؛ کوئی گمنام ٹیر (anonymous tier) نہیں ہے۔
## ریپوزٹری لے آؤٹ
| پاتھ | مقصد |
| --- | --- |
| `apps/convex/` | کنٹرول پلین — اکاؤنٹس، ورک اسپیس، اسٹوریج بائنڈنگز، گرانٹس |
| `apps/mobile/` | Expo ایپ (iOS, Android, web) — آن بورڈنگ اور ڈیش بورڈ |
| `apps/mcp/` | MCP گیٹ وے ورکر — ٹولز، پرائیویسی انجن، اسٹوریج اڈاپٹر |
| `packages/shared/` | ایپس کے درمیان مشترکہ ٹائپس اور کانسٹنٹس |
| `packages/hook/` | `npx`-انسٹال ایبل سیشن اینڈ ہک |
## ڈویلپمنٹ
```sh
pnpm install
npx convex dev # آپ کی Convex تعیناتی بناتا ہے
pnpm dev # Convex + Expo ایک ساتھ
cd apps/mcp && pnpm test # README 442 چیکس، کوئی ڈیپینڈینسیز، کوئی نیٹ ورک کا ذکر کرتا ہے
```
بیان کیا گیا ہے کہ یہ پروجیکٹ supa-framework پر بنایا گیا ہے۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.