
Harp হলো ওপেন-সোর্স Warp টার্মিনালের একটি অনানুষ্ঠানিক macOS ফর্ক। এটি Warp-এর টার্মিনাল, AI এবং ক্লাউড সুবিধাগুলো বজায় রাখে, তবে প্রচলিত ট্যাব বারের পরিবর্তে দীর্ঘ সময় চলমান কোডিং এজেন্টগুলোর জন্য তৈরি একটি সাইডবার ব্যবহার করে।
Harp-এর মাধ্যমে আপনি পাশাপাশি অনেকগুলো Claude Code ও Codex সেশন চালাতে পারেন এবং দ্রুত দেখতে পারেন কোন সেশন কাজ করছে, আপনার জন্য অপেক্ষা করছে, শেষ হয়েছে, ব্যাকগ্রাউন্ডে চলছে, অথবা একপাশে রাখা হয়েছে। Harp নিজস্ব কোনো সার্ভার পরিচালনা করে না; Warp-এর আপস্ট্রিম সুবিধাগুলো Warp-এর মতোই Warp-এর সার্ভারের সঙ্গে যোগাযোগ চালিয়ে যায়।

Harp-এ যা যোগ হয়েছে
এক নজরে এজেন্টের অবস্থা
সাইডবারের প্রতিটি সারিতে Claude Code বা Codex সেশনের অবস্থা দেখা যেতে পারে। আপনি সেশনটি না দেখা পর্যন্ত অপঠিত চিহ্নটি থাকে, একটি বিন্দু বোঝায় যে ব্যাকগ্রাউন্ডের কাজ এখনো চলছে, আর একটি চাঁদ চিহ্নিত করে সেই ট্যাবকে যেটি আপনি একপাশে রেখেছেন। ট্যাবের নাম পরিবর্তন করতে Cmd+R ব্যবহার করুন।
স্থায়ী গ্রুপ
প্রজেক্ট ও এজেন্টগুলোকে সুশৃঙ্খল রাখতে আপনি ট্যাবগুলো নামযুক্ত গ্রুপে রাখতে পারেন। tmux ইন্টিগ্রেশন চালু থাকলে Harp tmux সেশনে গ্রুপ ও সাজানোর ক্রম সংরক্ষণ করে। ফলে রিস্টার্টের পরও লেআউটটি থেকে যায় এবং অন্যান্য tmux ক্লায়েন্ট একই বিন্যাস দেখতে পারে।
ব্যবহারসীমার রিং
সাইডবারের ফুটারে প্রতিটি প্রোভাইডারের জন্য দুটি রিং দেখানো যেতে পারে: একটি পাঁচ ঘণ্টার উইন্ডোর জন্য এবং একটি সাপ্তাহিক সীমার জন্য। Harp আপনার পছন্দের একটি টুল পরিচালিত স্থানীয় JSON ফাইল থেকে এই মানগুলো পড়ে। এটি নিজে কোনো ব্যবহারসংক্রান্ত ডেটা সংগ্রহ করে না। প্রত্যাশিত ফাইল ফরম্যাটের জন্য limit-rings ফরম্যাটের ডকুমেন্টেশন দেখুন।
ফোন-বান্ধব tmux সেশন
tmux-এ সংযুক্ত সেশনগুলো তাদের নাম, গ্রুপ, পড়া হয়েছে কি না সেই অবস্থা এবং নিষ্ক্রিয়তার পতাকা বহন করতে পারে। ফোন থেকে SSH-এর মাধ্যমে শুরু করা tmux সেশন, @warp_adopt tmux অপশনটি 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 পরিচয় দিয়ে অ্যাপ্লিকেশনটিতে স্বাক্ষর করে, অথবা অ্যাড-হক স্বাক্ষরে ফিরে যায়। স্বাক্ষরিত ও নোটারাইজযোগ্য রিলিজ 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 এজেন্ট সেশনের নিচে আপস্ট্রিম টুলবারটি ফিরিয়ে আনতে এটি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-এ নয়, এর রিপোজিটরিতে জানান।
