
Harp اوپن سورس Warp ٹرمینل کا ایک غیر سرکاری macOS فورک ہے۔ یہ Warp کی ٹرمینل، AI اور کلاؤڈ صلاحیتیں برقرار رکھتے ہوئے روایتی ٹیب بار کو ایک ایسے سائڈبار سے تبدیل کرتا ہے جو طویل عرصے تک چلنے والے کوڈنگ ایجنٹس کے لیے بنایا گیا ہے۔
Harp کے ذریعے آپ Claude Code اور Codex کے متعدد سیشنز ساتھ ساتھ چلا سکتے ہیں اور فوراً دیکھ سکتے ہیں کہ کون سے سیشنز کام کر رہے ہیں، آپ کے منتظر ہیں، مکمل ہو چکے ہیں، پس منظر میں چل رہے ہیں یا الگ رکھے گئے ہیں۔ Harp اپنے سرورز نہیں چلاتا؛ upstream Warp خصوصیات Warp کے سرورز سے اسی طرح رابطہ کرتی رہتی ہیں جیسے Warp میں کرتی ہیں۔

Harp میں شامل خصوصیات
ایک نظر میں ایجنٹ کی حالت
سائڈبار کی ہر قطار Claude Code یا Codex سیشن کی حالت دکھا سکتی ہے۔ غیر پڑھے گئے سیشن کا نشان اس وقت تک موجود رہتا ہے جب تک آپ سیشن کا جائزہ نہ لے لیں، نقطہ اس بات کی نشاندہی کرتا ہے کہ پس منظر میں کام ابھی جاری ہے، اور چاند اس ٹیب کی شناخت کرتا ہے جسے آپ نے الگ رکھا ہے۔ ٹیب کا نام تبدیل کرنے کے لیے Cmd+R استعمال کریں۔
مستقل گروپس
آپ پروجیکٹس اور ایجنٹس کو منظم رکھنے کے لیے ٹیبز کو نامزد گروپس میں رکھ سکتے ہیں۔ جب tmux انٹیگریشن فعال ہو، تو Harp گروپ اور ترتیب کو tmux سیشنز میں محفوظ کرتا ہے۔ اس سے لے آؤٹ دوبارہ شروع کرنے کے بعد بھی برقرار رہتا ہے اور دوسرے tmux کلائنٹس بھی یہی ترتیب دیکھ سکتے ہیں۔
استعمال کی حد کے حلقے
سائڈبار کا فوٹر ہر فراہم کنندہ کے لیے دو حلقے دکھا سکتا ہے: ایک پانچ گھنٹے کی مدت کے لیے اور دوسرا ہفتہ وار حد کے لیے۔ Harp یہ اقدار مقامی JSON فائل سے پڑھتا ہے جسے آپ کی پسند کا کوئی ٹول برقرار رکھتا ہے۔ یہ خود استعمال کا ڈیٹا حاصل نہیں کرتا۔ متوقع فائل فارمیٹ کے لیے limit-rings فارمیٹ کی دستاویزات دیکھیں۔
فون کے لیے موزوں tmux سیشنز
tmux سے منسلک سیشنز اپنا نام، گروپ، پڑھنے کی حالت اور غیرفعال نشان محفوظ رکھ سکتے ہیں۔ کسی دوسرے مقام سے شروع کیا گیا tmux سیشن، مثلاً SSH کے ذریعے فون سے، tmux آپشن @warp_adopt کو 1 پر سیٹ کر کے Harp ٹیب کی درخواست کر سکتا ہے۔
Harp انسٹال کریں
جدید ترین macOS بلڈ انسٹال کریں
- GitHub Releases صفحے سے جدید ترین Harp ریلیز کھولیں۔
Harp-<version>.dmgفائل ڈاؤن لوڈ کریں۔- ڈسک امیج کھولیں اور Harp کو Applications فولڈر میں کھینچ کر لے جائیں۔
Harp اپنا بنڈل شناخت کنندہ com.dominikmartn.Harp، URL اسکیم harp:// اور ترتیبات کی ڈائریکٹری ~/.harp استعمال کرتا ہے۔ اس کے ذریعے یہ ان وسائل کا اشتراک کیے بغیر Warp کے ساتھ چل سکتا ہے۔
سورس سے بلڈ کریں
Harp خود بلڈ کرنے کے لیے macOS اور rust-toolchain.toml میں متعین Rust ٹول چین استعمال کریں۔ ریپوزٹری کے روٹ سے بوٹسٹریپ اسکرپٹ ایک بار چلائیں:

./script/bootstrap
پھر ڈیبگ ایپلیکیشن کو کمپائل اور لانچ کریں:
./script/run
بلڈ target/debug/bundle/osx/Harp.app تیار کرتی ہے اور اسے لانچ کرتی ہے۔ macOS رن اسکرپٹ آپ کی کی چین میں موجود پہلی Apple Development شناخت کے ساتھ ایپلیکیشن پر دستخط کرتا ہے، یا پھر عارضی دستخط استعمال کرتا ہے۔ دستخط شدہ اور notarizable ریلیز DMG کے لیے script/release_macos استعمال کریں اور اس کے مدد کے آؤٹ پٹ سے رجوع کریں۔
Harp کی ترتیب کریں
Harp کی اضافی انٹیگریشنز بطور ڈیفالٹ غیر فعال ہوتی ہیں۔ ~/.harp/settings.toml بنائیں یا اس میں ترمیم کریں، پھر اپنی مطلوبہ خصوصیات فعال کریں۔ فائل میں تبدیلی ہونے پر Harp ترتیبات دوبارہ لوڈ کرتا ہے۔
[integrations.limit_rings]
enabled = true
file = "~/.cache/limit-rings.json"
[integrations.tmux]
enabled = true
استعمال کی حد کے حلقے فعال کریں
integrations.limit_rings.enabled کو true پر سیٹ کریں اور integrations.limit_rings.file کو اس مقامی JSON فائل کی طرف متعین کریں جس میں آپ کے فراہم کنندہ کے استعمال کی اقدار موجود ہیں۔ ~ کا نشان آپ کی ہوم ڈائریکٹری کی نمائندگی کرتا ہے۔
tmux ہم وقت سازی فعال کریں
tmux ہم وقت سازی، سیشن اپنانے اور tmux کے اندر ایجنٹ کی شناخت فعال کرنے کے لیے integrations.tmux.enabled کو true پر سیٹ کریں۔ Harp ہر 10 سیکنڈ میں tmux کی جانچ کرتا ہے۔
tmux فعال ہونے پر نام، گروپس، ترتیب، پڑھے جانے کے پرچم، غیرفعال پرچم اور اپنائے گئے سیشنز ہم وقت ساز کیے جا سکتے ہیں۔ حسب ضرورت رویے کے لیے integrations.tmux.session_script کو ایسے اسکرپٹ کی طرف متعین کیا جا سکتا ہے جو نام تبدیل کرنے اور گروپ تبدیل کرنے کا عمل سنبھالے۔ اسکرپٹ کو کمانڈز ان شکلوں میں موصول ہوتی ہیں:
<script> rename <shell_pid> <group> <title>
<script> group <session_id> <old_group> <new_group>
سائڈبار اور ایجنٹ ٹول بار کو ایڈجسٹ کریں
appearance.vertical_tabs.full_tab_menuبطور ڈیفالٹtrueہے۔ ٹیب اور گروپ مینیو کو ضروری کارروائیوں تک محدود کرنے کے لیے اسےfalseپر سیٹ کریں۔ یہی آپشن Settings > Appearance > Tabs کے تحت بھی دستیاب ہے۔agents.third_party.should_render_cli_agent_toolbarبطور ڈیفالٹfalseہے۔ CLI ایجنٹ سیشنز کے نیچے upstream ٹول بار بحال کرنے کے لیے اسےtrueپر سیٹ کریں۔
جب تیسرے فریق کا CLI ایجنٹ ٹول بار غیر فعال ہو، تو Claude Code کے پلگ اِن مارکیٹ پلیس کے ذریعے Claude Code کے لیے Warp پلگ اِن کو اپ ڈیٹ کریں، جیسا کہ پروجیکٹ میں بیان کیا گیا ہے۔
Harp کو کوڈنگ ایجنٹس کے ساتھ استعمال کریں
- Harp کھولیں اور اپنے Claude Code یا Codex ورک فلو کے لیے سیشنز بنائیں۔
- ٹیبز کا مقصد واضح رکھنے کے لیے
Cmd+Rسے ان کے نام تبدیل کریں۔ - متعلقہ سیشنز کو نامزد گروپس میں رکھیں، مثلاً ہر پروجیکٹ کے لیے ایک گروپ۔
- سائڈبار کے حالت کے اشاریے دیکھ کر ان سیشنز کی شناخت کریں جنہیں آپ کی توجہ درکار ہے، جو ابھی کام کر رہے ہیں یا مکمل ہو چکے ہیں۔
- جن سیشنز کی فوری ضرورت نہیں انہیں الگ رکھ دیں؛ Harp انہیں چاند کے نشان سے ظاہر کرتا ہے۔
- جب ان کے آؤٹ پٹ کا جائزہ لینے کے لیے تیار ہوں تو غیر پڑھے گئے سیشنز کھولیں۔

نئے ٹیبز Cmd+T سے، ڈبل کلک کر کے، یا سائڈبار کی خالی جگہ پر دائیں کلک کے مینو کے ذریعے بنائے جا سکتے ہیں۔ یہ پروجیکٹ جان بوجھ کر ٹیب بار کے کچھ کنٹرولز ہٹا دیتا ہے، جن میں تلاش کا فیلڈ، ویو کے اختیارات، اور ٹیب کی تشکیل کے بٹن شامل ہیں۔
کہیں اور شروع کیا گیا سیشن اختیار کریں
جب کوئی tmux سیشن کسی دوسرے ڈیوائس یا ٹرمینل سے بنایا جائے، تو آپ Harp سے اسے بطور ٹیب اختیار کرنے کی درخواست کر سکتے ہیں۔ متعلقہ tmux سیشن میں یہ کمانڈ چلائیں:
tmux set-option @warp_adopt 1
tmux انٹیگریشن فعال ہونے کے بعد، Harp اس سیشن کی پیروی کر سکتا ہے اور سائڈبار میں اس کا نام، گروپ اور حالت دکھا سکتا ہے۔ یہ SSH کے ذریعے شروع کیے گئے کام کو جاری رکھنے کے لیے مفید ہے، جس میں فون سے شروع کیا گیا کام بھی شامل ہے۔
Claude Code کے پس منظر کے کاموں کی رپورٹنگ مربوط کریں
اس ریپوزٹری میں Claude Code ہُک شامل ہے جو پس منظر کے کاموں کی رپورٹ Harp کو بھیجتا ہے۔ انٹیگریشن کی ہدایات integrations/claude-code میں دستیاب ہیں۔ جب آپ چاہتے ہوں کہ پس منظر کی سرگرمی سائڈبار میں دکھائی دے، تو ان ہدایات کا استعمال کریں۔
ترقی کے لیے جدید اختیارات
حالت کی تبدیلیوں کا سراغ لگائیں
کسی ایجنٹ ٹرانسکرپٹ کے خلاف ریگریشن چیکس کے لیے، WARPOSS_STATUS_TRACE=1 کے ساتھ ڈیبگ بلڈ شروع کریں۔ Harp حالت کی تبدیلیاں ~/Library/Logs/harp.log میں [status-check] لائنوں کے طور پر لکھتا ہے۔
حقیقی لاگ اِن کے بغیر چلائیں
لانچ کے وقت WARPOSS_SKIP_LOGIN=1 سیٹ کریں تاکہ ٹیسٹ صارف کے ساتھ آغاز ہو اور تصدیق شدہ درخواستیں ناکام ہوں۔ یہ خودکار رنز کے لیے ہے جن میں لاگ اِن استعمال نہیں کیا جاتا۔
الگ ڈیبگ ڈیٹا پروفائل استعمال کریں
ڈیبگ بلڈز کے لیے WARP_DATA_PROFILE=<name> سیٹ کریں تاکہ ترتیبات اور ڈیٹا پہلے سے طے شدہ پروفائل کے مقام کے بجائے ~/.harp-<name> میں محفوظ ہوں۔
تعاون کی توثیق کریں
تبدیلیاں جمع کرانے سے پہلے، ریپوزٹری کی پری سبمٹ چیکس چلائیں:
./script/presubmit
یہ فارمیٹنگ، Clippy اور ٹیسٹس چلاتا ہے۔
نتیجہ
Harp، Warp ٹرمینل کو متعدد دیر تک چلنے والے Claude Code اور Codex سیشنز کے انتظام کے لیے ایک ورک اسپیس میں تبدیل کر دیتا ہے۔ macOS ایپ انسٹال کریں یا اسے سورس سے بنائیں، ضرورت کے مطابق tmux اور limit-ring انٹیگریشنز فعال کریں، پھر ایجنٹ پر مبنی ڈیولپمنٹ کو منظم رکھنے کے لیے گروپس اور حالت کے اشاریے استعمال کریں۔ Harp، Warp کا غیر سرکاری فورک ہے، اس لیے Harp سے متعلق مسائل Warp کے بجائے اس کی ریپوزٹری میں رپورٹ کریں۔
