
اسکرین پر بڑا تیر کیا کرتا ہے
big-arrow-on-the-screen، جسے bigarrow بھی کہا جاتا ہے، macOS کا کمانڈ لائن ٹول ہے جو ہر ونڈو کے اوپر نمایاں تیر اور نشان دکھاتا ہے۔ یہ ایسے AI ایجنٹس کے لیے بنایا گیا ہے جو کمپیوٹر کے بیشتر کام انجام دے سکتے ہیں، لیکن بعض فیصلے انسان کو واپس سونپنے ضروری ہوتے ہیں۔
مثلاً، ایجنٹ System Settings میں Allow بٹن کی طرف اشارہ کر سکتا ہے، درست براؤزر ونڈو کی نشاندہی کر سکتا ہے، یا کسی شخص کو متعدد مراحل والے ورک فلو میں رہنمائی دے سکتا ہے۔ صارف کا اختیار برقرار رہتا ہے: bigarrow کبھی کلک، ٹائپ یا اسکرین کیپچر نہیں کرتا۔
یہ اوورلے عام ونڈوز، ڈائیلاگز، فل اسکرین ایپس اور Spaces کے اوپر دکھائی دیتا ہے، جبکہ کی بورڈ فوکس اسی ایپ میں رہتا ہے جس میں پہلے سے فوکس موجود ہو۔ ہدف پر ہونے والے کلکس نیچے موجود ایپ تک پہنچ جاتے ہیں۔ تیر اپنی مدت ختم ہونے یا اس کے مالک پراسیس کے بند ہونے پر خود بخود بھی ہٹ جاتا ہے۔
آپ کا ایجنٹ بتا سکتا ہے کہ کیا کرنا ہے، پھر عین اس کنٹرول پر ایک نمایاں انگلی رکھ سکتا ہے جسے انسان نے استعمال کرنا ہے۔
اسے کب استعمال کریں
bigarrow اس وقت مفید ہے جب AI ایجنٹ کو کسی فیصلے یا کارروائی کے لیے انسان کی ضرورت ہو۔ عام مثالوں میں اجازت کی درخواستیں، OAuth رضامندی کی اسکرینیں، دو مرحلہ تصدیق، CAPTCHAs، پاس کیز، ادائیگیاں، دستخط اور قانونی تصدیقات شامل ہیں۔
جب متعدد ملتی جلتی ونڈوز یا کنٹرولز نظر آ رہے ہوں تو یہ ہدایات کو مزید واضح بھی بنا سکتا ہے۔ ایجنٹ صارف سے کئی کھلی ونڈوز میں تلاش کرنے کے بجائے مخصوص ایپلیکیشن، ونڈو یا براؤزر ٹیب منتخب کر سکتا ہے۔
دیگر استعمالات میں کسی کو ایپلیکیشن استعمال کرنا سکھانا، دور سے مدد فراہم کرنا، اسکرین کاسٹ کے دوران کنٹرولز نمایاں کرنا، اور یہ جانچنا شامل ہے کہ کسی دوسرے آٹومیشن ٹول سے حاصل کیے گئے نقاط درست ہیں یا نہیں۔
macOS پر انسٹال کریں
یہ پروجیکٹ macOS 14 یا اس کے بعد کے ورژنز کو سپورٹ کرتا ہے۔ انسٹالیشن کا آسان ترین طریقہ Homebrew ہے:
brew install franzenzenhofer/tap/bigarrow
اگر آپ چاہتے ہیں کہ Claude Code اور Codex کو معلوم ہو کہ یہ ٹول کب اور کیسے استعمال کرنا ہے، تو اس کی ایجنٹ اسکل بھی انسٹال کریں:
bigarrow install-skill
یہ Claude Code کے لیے اسکل کو ~/.claude/skills اور Codex کے لیے ~/.agents/skills میں انسٹال کرتا ہے۔ آپ اسکل انسٹال کیے بغیر بھی شیل سے براہ راست bigarrow چلا سکتے ہیں۔
سورس سے بنائیں
پروجیکٹ خود کمپائل کرنے کے لیے Xcode 16 یا اس کے بعد کا ورژن استعمال کریں:
swift build -c release
بننے والی بائنری .build/release/bigarrow پر موجود ہوتی ہے۔ ایپلیکیشن خود Swift میں لکھی گئی ہے۔ scripts/ میں موجود شیل اور Python فائلیں اسکرین شاٹس اور ٹیسٹس کے لیے استعمال ہوتی ہیں۔
اشارہ کرنے کے لیے آپ کے پہلے کمانڈز
تین بنیادی طریقے یہ ہیں: کسی accessibility عنصر کی طرف اشارہ کرنا، نقاط کی طرف اشارہ کرنا، اور تیر کو اس وقت تک دکھاتے رہنا جب تک آپ اسے روک نہ دیں۔
لیبل والے کنٹرول کی طرف اشارہ کریں
bigarrow point --element "Allow" --app "System Settings" --text "Franz, click Allow: Ghostty may control your Mac"
--element کسی کنٹرول کو اس کے لیبل سے تلاش کرتا ہے، جبکہ --app اس ایپلیکیشن کی نشاندہی کرتا ہے جس میں وہ موجود ہے۔ نشان وضاحت کرتا ہے کہ صارف سے کیا کرنے کو کہا جا رہا ہے۔

نقاط کی طرف اشارہ کریں
bigarrow point --at 760,500 --text "Franz, click HERE"
نقاط عالمی اوپری بائیں منطقی پوائنٹس استعمال کرتے ہیں، یعنی وہی کوآرڈینیٹ اسپیس جو macOS Accessibility، CGWindowList اور Peekaboo رپورٹ کرتے ہیں۔ آپ کسی مستطیل کی طرف بھی اشارہ کر سکتے ہیں:
bigarrow point --rect 600,400,240,80 --text "This is the area to review"
اگلے مرحلے تک تیر دکھاتے رہیں
bigarrow start --window "Safari:Inbox" --text "This window"
bigarrow stop
start فوراً واپس آ جاتا ہے اور تیر دکھاتا رہتا ہے۔ موجودہ تیر ہٹانے کے لیے stop، یا تمام تیر ہٹانے کے لیے stop --all استعمال کریں۔
ایک بار چلنے والا point کمانڈ بطور ڈیفالٹ آٹھ سیکنڈ تک رہتا ہے۔ اسے --duration سے تبدیل کریں؛ start کی ڈیفالٹ مدت 300 سیکنڈ ہے۔ وقت کی کوئی حد نہ رکھنے کے لیے --duration 0 استعمال کریں۔
درست ہدف منتخب کریں
bigarrow ہدف کے کئی ذرائع کو سپورٹ کرتا ہے:
--at X,Yکسی نقطے کی طرف اشارہ کرتا ہے۔--rect X,Y,W,Hمستطیل حصے کو نمایاں کرتا ہے۔--mouseموجودہ ماؤس پوزیشن کی طرف اشارہ کرتا ہے۔--window App[:title]کسی ونڈو کی طرف اشارہ کرتا ہے۔--element Label --app Appaccessibility عنصر تلاش کرتا ہے۔--peekaboo ID --snapshot see.jsonPeekaboo کےsee --jsonآؤٹ پٹ سے عنصر کی ID استعمال کرتا ہے۔
یہ دیکھنے کے لیے کہ کوئی ایپلیکیشن کون سے کنٹرولز فراہم کرتی ہے، چلائیں:

bigarrow elements --app "System Settings"
متعدد ڈسپلے کے لیے --display N کوآرڈینیٹ اور مستطیل کی قدروں کو ایک ڈسپلے کے لحاظ سے مقرر کرتا ہے۔ مرکزی ڈسپلے کے بائیں یا اوپر موجود ڈسپلے کے لیے منفی عالمی کوآرڈینیٹس بھی سپورٹ ہوتے ہیں۔
درست ونڈو یا براؤزر ٹیب کو ہدف بنائیں
جب آپ --app App[:window or tab title] یا --window فراہم کرتے ہیں، تو bigarrow تیر بنانے سے پہلے متعلقہ ایپلیکیشن، ونڈو یا Chrome/Safari ٹیب کو سامنے لا سکتا ہے۔ اس سے درست تیر کے غلط نظر آنے والی ونڈو کے اوپر ظاہر ہونے کا مسئلہ نہیں رہتا۔
bigarrow point --app "Google Chrome:Pull request" --text "Review this pull request"
جب آپ صارف کی ونڈوز کو بالکل اسی جگہ چھوڑنا چاہیں جہاں وہ ہیں تو --no-raise استعمال کریں۔ اگر بعد میں کوئی دوسری ایپلیکیشن ہدف کو ڈھانپ لے تو تیر اس وقت تک چھپ جاتا ہے جب تک ہدف دوبارہ نظر نہ آنے لگے۔
تیروں کو واضح اور کارآمد بنائیں
آپ تیر کی شکل، انداز، سائز، کونوں، رنگوں اور رویے کو حسبِ ضرورت تبدیل کر سکتے ہیں:
--shape bend|straight|zigzag|spiralتیر کا راستہ منتخب کرتا ہے۔--style arrow|ring|boxعام تیر، صرف بارڈر والے دائرے، یا صرف بارڈر والے باکس کا انتخاب کرتا ہے۔--size S|M|Lسائز تبدیل کرتا ہے۔--corners round|sharpنشان کے کونوں کو کنٹرول کرتا ہے۔--color red|orange|yellow|green|teal|blue|purple|pink|black|white|#RRGGBBمرکزی رنگ مقرر کرتا ہے۔--border shadow|white-black|blackبارڈر کا انداز تبدیل کرتا ہے۔--border-color،--text-colorاور--edge-colorانفرادی رنگوں کو حسبِ ضرورت تبدیل کرتے ہیں۔--close-buttonنشان میں کلک کیے جانے کے قابل X شامل کرتا ہے۔
مثال کے طور پر، یہ کمانڈ ہدف کے گرد نمایاں سبز باکس بناتی ہے:
bigarrow point --at 760,500 --style box --color green --text "Review this control"
کلوز بٹن اختیاری ہوتا ہے اور انسان کو اوورلے بند کرنے کا براہِ راست طریقہ فراہم کرتا ہے:

bigarrow start --element "Save" --app "TextEdit" --close-button --text "Click Save when ready"
کارآمد تعاملی اختیارات
کئی اختیارات اوورلے کو رہنمائی پر مبنی ورک فلو سے جوڑنے میں مدد دیتے ہیں:
--followتیر کو ونڈو یا عنصر کے ساتھ حرکت دیتا ہے۔--until-clickہدف پر کلک ہونے کے بعد تیر ختم کر دیتا ہے۔--sayنشان کا متن بلند آواز میں پڑھتا ہے، جو اس وقت مفید ہے جب صارف اسکرین کی طرف نہ دیکھ رہا ہو۔--jsonایجنٹس اور اسکرپٹس کے لیے مشین سے قابلِ مطالعہ آؤٹ پٹ فراہم کرتا ہے۔
چنانچہ ایک رہنمائی پر مبنی سلسلہ پہلے ایک کنٹرول کی طرف اشارہ کر سکتا ہے، صارف کے عمل کرنے کا انتظار کر سکتا ہے، تیر روک سکتا ہے، اور پھر اگلے کنٹرول کی طرف اشارہ کر سکتا ہے۔ یہ ٹول خود کلک نہیں کرتا۔
اجازتوں کو سمجھیں
اوورلے بنانے کے لیے macOS کی Screen Recording یا Accessibility اجازت درکار نہیں ہوتی۔ تاہم، ہدف تلاش کرنے یا فعال کرنے کے کچھ طریقوں کے لیے اجازت درکار ہوتی ہے۔
--at،--rect،--mouse،--window App،--peekabooاور--app Appکے لیے اجازت درکار نہیں ہوتی۔--element،elements،--until-clickاور--app App:titleکے لیے Accessibility اجازت درکار ہوتی ہے۔--window App:titleکو ونڈو کے عنوان پڑھنے کے لیے Screen Recording اور ونڈو کو سامنے لانے کے لیے Accessibility درکار ہوتی ہے، الا یہ کہ آپ--no-raiseاستعمال کریں۔
macOS یہ اجازتیں خود bigarrow بائنری کو دینے کے بجائے اس ایپلیکیشن کو دیتا ہے جس نے bigarrow لانچ کیا ہو، جیسے Terminal، iTerm2، Ghostty، VS Code یا Claude۔
متعلقہ اجازتوں، ان کی مالک ایپلیکیشن اور منسلک ڈسپلے دیکھنے کے لیے تشخیصی کمانڈ چلائیں:
bigarrow doctor
جب مطلوبہ اجازت موجود نہ ہو تو کمانڈ اسٹیٹس کوڈ 4 کے ساتھ ختم ہوتی ہے اور متعلقہ ایپلیکیشن اور سیٹنگز پین کی نشان دہی کرتی ہے۔

خودکار صفائی محفوظ طریقے سے استعمال کریں
تیروں کو اس طرح ڈیزائن کیا گیا ہے کہ ایجنٹ کے کام مکمل کرنے کے بعد وہ باقی نہ رہیں۔ وقت مقررہ point کمانڈ خود بخود ختم ہو جاتی ہے۔ ایجنٹ کا عمل ختم ہونے پر بھی تیر ختم ہو جاتا ہے، اور جہاں دستیاب ہوں وہاں CLAUDE_PID یا BIGARROW_OWNER_PID استعمال کیے جاتے ہیں۔
Claude Code ورک فلو کے لیے، bigarrow stop --hook کو UserPromptSubmit ہک کے طور پر استعمال کیا جا سکتا ہے تاکہ انسان کے جواب دینے پر اس سیشن کے تیر صاف ہو جائیں۔ صفائی کی واضح کمانڈز یہ ہیں:
bigarrow stop
bigarrow stop --all
یہ حفاظتی اقدامات ان ایجنٹس کے لیے مفید ہیں جو معمول کی صفائی کے مرحلے تک پہنچنے سے پہلے رک سکتے ہیں یا تبدیل کیے جا سکتے ہیں۔
ایجنٹ ورک فلو میں JSON اور ایگزٹ کوڈز استعمال کریں
ہر کمانڈ --json قبول کرتی ہے، جس سے نتائج کو پروگرام کے ذریعے جانچنا آسان ہو جاتا ہے۔ دستاویزی ایگزٹ کوڈز یہ ہیں:
0: کمانڈ کامیابی سے مکمل ہوئی۔2: ان پٹ غلط ہے۔3: ہدف نہیں ملا۔4: مطلوبہ اجازت موجود نہیں ہے۔
ایجنٹ ان نتائج کی بنیاد پر فیصلہ کر سکتا ہے کہ کسی دوسرے ہدفی طریقے سے دوبارہ کوشش کرنی ہے، صارف سے اجازت مانگنی ہے، یا وضاحت کرنی ہے کہ مطلوبہ کنٹرول نہیں مل سکا۔
ہدف کی جدید ڈیبگنگ
اگر آپ کو یقین نہ ہو کہ Accessibility، Peekaboo یا کسی دوسرے ٹول سے حاصل کردہ نقاط درست ہیں تو ڈرائی رن استعمال کریں:
bigarrow point --at 760,500 --dry-run --json
یہ بتاتا ہے کہ اوورلے بنائے بغیر ٹول کہاں اشارہ کرے گا۔ یہ صارف کو کچھ دکھانے سے پہلے نقاط کی تبدیلی، ڈسپلے کے انتخاب اور آٹومیشن کے نتائج کی توثیق کے لیے مفید ہے۔
Peekaboo ایک اور ہدفی ماخذ فراہم کر سکتا ہے۔ Peekaboo کا JSON اسنیپ شاٹ حاصل کریں، پھر متعلقہ عنصر کی ID پاس کریں:
bigarrow point --peekaboo ELEMENT_ID --snapshot see.json --text "Review this element"
Chrome میں صفحے کے عناصر کے لیے Chrome کا --force-renderer-accessibility فلیگ یا VoiceOver درکار ہو سکتا ہے۔ Chrome کا اپنا ٹول بار معمول کے قابلِ رسائی راستے سے دستیاب رہتا ہے۔ جب صفحے کا مواد ظاہر نہ ہو تو اس کے بجائے نقاط استعمال کریں۔
ایجنٹس کو اس اسکل کا استعمال کیسے کرنا چاہیے
شامل کردہ اسکل ایک ہی Agent Skills سے مطابقت رکھنے والی SKILL.md کے ذریعے Claude Code اور Codex دونوں کو سپورٹ کرتی ہے، جبکہ Codex کا میٹا ڈیٹا agents/openai.yaml میں موجود ہے۔ یہ ایجنٹ کو سکھاتی ہے کہ کب اشارہ کرنا ہے، ہدف کیسے منتخب کرنا ہے، سائن پر مکمل جملہ کیسے لکھنا ہے، --say کب استعمال کرنا ہے، اور صارف کے عمل کرنے کے بعد کب رک جانا ہے۔
ایجنٹ کا عملی سلسلہ کچھ یوں ہو سکتا ہے:
- ایسا عمل شناخت کریں جس کے لیے انسانی تصدیق یا مدد درکار ہو۔
- ایک لیبل، ونڈو، ٹیب، نقطہ، مستطیل یا Peekaboo ہدف منتخب کریں۔
- ایسا سائن لکھیں جس میں واضح طور پر بتایا گیا ہو کہ صارف کو کیا کرنا ہے اور کیوں کرنا ہے۔
- ہدف ایپلیکیشن کو سامنے لائیں، الاّ یہ کہ موجودہ لے آؤٹ برقرار رکھنا اہم ہو۔
- انسان کے عمل کرنے یا جواب دینے کا انتظار کریں۔
- اگلے مرحلے پر جانے سے پہلے تیر کو روک دیں۔
یہ ٹول کیا نہیں کرتا
bigarrow کو جان بوجھ کر محدود رکھا گیا ہے۔ یہ لوگوں کے لیے اسکرین پر annotations لگانے، کلک کرنے والے بوٹ یا اسکرین شاٹ ٹول کے طور پر کام نہیں کرتا۔ یہ کبھی کلک، ٹائپ یا اسکرین کیپچر نہیں کرتا۔ اس کا مقصد کسی پروگرام کی ہدایت کو نمایاں کرنا ہے، جبکہ فیصلہ اور عمل انسان کے اختیار میں رہتا ہے۔
رِنگ اور باکس کے انداز outline استعمال کرتے ہیں تاکہ ہدف نظر آتا رہے۔ جہاں گنجائش ہو، سائن کو ہدف سے دور رکھا جاتا ہے، اور فعال ہونے کی صورت میں close بٹن انسان کو تیر بند کرنے دیتا ہے۔ یہ ڈیزائن انتخاب ٹول کو permissions، authentication، payments اور deployments جیسے حساس اقدامات کے لیے موزوں بناتے ہیں۔
نتیجہ
bigarrow macOS پر مبنی AI ایجنٹس کو مبہم ٹرمینل پیغامات کا سہارا لیے بغیر کنٹرول دوبارہ انسان کے حوالے کرنے کا آسان طریقہ فراہم کرتا ہے۔ اسے Homebrew کے ذریعے انسٹال کریں، ضرورت پڑنے پر Claude Code یا Codex اسکل شامل کریں، پھر مختصر اشاروں کے لیے point یا رہنمائی والے ورک فلو کے لیے start اور stop استعمال کریں۔
لیبل، ونڈو، نقطے، مستطیل، ماؤس اور Peekaboo اہداف کے ساتھ ساتھ حسبِ ضرورت انداز، تقریر، JSON آؤٹ پٹ، خودکار صفائی اور متعدد ڈسپلے کی معاونت کے ذریعے یہ ٹول “براہِ کرم یہاں کلک کریں” کو اسکرین پر واضح رہنمائی میں تبدیل کرتا ہے، جبکہ آخری عمل کا اختیار انسان کے پاس رہتا ہے۔
