Self-hosted WhatsApp Multi-Device bot on original Baileys v7 · nearly 400 commands · deploys with a single file
Anti-delete · anti-edit detection · view-once auto-send to DM · custom pairing code · native buttons · YouTube, movie, series and book downloaders · scheduling · group management · multi-session · one-command KataBump deploy · Quran and Islamic search
Deployment • Built-in features • Features • Documentation • FAQ • Support
Al-Jin is a free, open-source WhatsApp bot for Node.js 20+, built on the original Baileys v7.0.0-rc.14, with no custom fork. It links to your account through Linked Devices with an 8-character pairing code (no QR scan) and runs on your own VPS, PC, phone or hosting panel. It ships with nearly 400 commands: media downloaders, message recovery, scheduling, group moderation, free AI chat, stickers, movies, books and Islamic tools.
Its main strength is how easy it is to deploy: one file, one command, one pairing code, on every platform.
Important
Al-Jin is an unofficial project and is not affiliated with or endorsed by WhatsApp or Meta. Automating a personal account can violate WhatsApp's Terms of Service and may lead to restrictions. Use accounts you can afford to risk, and only with the consent of the people you chat with.
Many WhatsApp bots need a custom Baileys fork or extra plugins for the good parts. Al-Jin ships them all built in, on the original upstream Baileys v7.0.0-rc.14, so you keep upstream security and protocol fixes:
- 🔑 Custom pairing code: readable 8-character codes such as
ALMEHTABinstead of random ones, with automatic fallback. - 🔘 Native buttons: real WhatsApp interactive buttons, lists, copy and URL buttons, with no button fork. Switch with
.replymode text|poll|buttons. - 👁️ View-once auto-send to DM:
.peek auto onforwards every view-once photo and video to your DM (or the same chat). - ✏️ Anti-edit detection: see the original text of edited messages, together with anti-delete for text, images, video, documents and voice notes.
- 🚀 One-command KataBump deploy (open to everyone, or try it at wa.me/insaf.pk):
.kb <api>,<server id>,<number>wipes a server, installs Al-Jin Lite, sets your number and sends you the pairing code, editing a single progress message at every step. - 🔀 Multi-session: several WhatsApp numbers from one install (
.addsession,.setsession).
See the full list of what makes Al-Jin different
| ⬇️ YouTube downloads that keep working | Several integrated download engines. If one fails, the next is tried automatically. |
| 🕵️ Anti-delete and anti-edit detection | See what people deleted or edited: text, images, video, documents, voice notes. |
| 👁️ View-once saver | Reply to a view-once photo or video and the real media lands in the owner's DM. .peek auto on sends them automatically. |
| 🖼️ Full-size profile pictures | .getpp fetches the full-resolution picture of any user or group. |
| 📚 Dedicated book engine | .book finds and sends free books (details). |
| 🎬 Dedicated movie and series engine | Seasons, episodes, paging and quality choice (details). |
| 🕌 Quran and Islamic search | Verse lookup, AI and keyword search, hadith, plus full Surah and Juz/Para PDF downloads (details). |
| ⏰ Full scheduling | Schedule text or media to groups, channels and private chats. |
| 👥 Complete group management | Moderation, anti-link, anti-spam, warnings, welcome messages, bulk tools. |
| 🔑 Custom pairing codes | Readable codes like ALMEHTAB with automatic fallback to a random code (WRAITH_PAIR_CODES for your own list). |
| 🔘 Native buttons without a fork | Interactive buttons, lists, copy and URL buttons built on plain upstream Baileys. |
| 🚀 One-command KataBump deploy | .kb installs and pairs Al-Jin Lite on a KataBump server from WhatsApp. Test bot: wa.me/insaf.pk. |
| 🔀 Flawless multi-session | Run several WhatsApp numbers from one install. |
| 💬 Three reply modes | Selection prompts as text, poll or buttons: .replymode text|poll|buttons. |
| 🔒 Original Baileys v7.0.0-rc.14 | No custom fork, so you stay on the upstream security and protocol fixes. |
| 📖 Built-in manual | Guide and details of every feature through a WhatsApp list: send .menu, or .usermanual for the PDF. |
| 🆓 Fully open source | MIT licence. No paid tiers, no subscriptions. |
Every method ends the same way: the bot prints an 8-character pairing code, you enter it in WhatsApp, and you are online. Your session is saved, so later restarts need no new code.
Link once on the Jin pairing site, get a JIN_... Session ID, and any host can start the bot with it. No pairing code is asked again.
Set SESSION_ID (and SESSION_API) as a panel variable, in .env, at the top of index.js, or with node index.js --session-id=JIN_.... The launchers you download from the pairing site already contain both. Guide: Session ID.
Only index.js is needed. On first start it downloads the rest of the bot and installs the dependencies by itself. Requires Node.js 20 or newer, or Bun (the one-click launchers below install what is missing). Start with node index.js or bun index.js.
| Step | What to do |
|---|---|
| 1 | Download index.js and upload it to your server or folder. Make sure it is named exactly index.js (browsers sometimes rename it to index (1).js). |
| 2 | Number (optional on interactive terminals): open index.js and put your number in const BOT_NUMBER = '923001234567'; (digits only, with country code). If you leave it empty, the terminal asks you for it. If your panel has no keyboard or console input (non-interactive), you must set it here; you can also pass --phone=923001234567. |
| 3 | Start: node index.js (or bun index.js on a Bun server) |
| 4 | Copy the pairing code shown in the console. |
| 5 | Link it: WhatsApp → Settings → Linked devices → Link a device → Link with phone number instead, then enter the code. |
| 6 | Send .menu to the bot. |
Keep it running 24/7 with PM2: pm2 start index.js --name al-jin && pm2 save && pm2 startup.
🧰 Other platforms: VPS, panels, Windows, macOS, Android, Bun, Docker
| 🖥️ VPS / Linux server recommended |
apt update && apt install -y curl git ffmpeg
curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && apt install -y nodejs
npm install -g pm2
mkdir -p ~/al-jin && cd ~/al-jin
curl -L -o index.js https://raw.githubusercontent.com/themalik-g/al-jin-whatsapp-bot/main/index.js
nano index.js # optional: set BOT_NUMBER = '923001234567'
node index.js # copy the pairing code, link it in WhatsApp, then Ctrl+C
pm2 start index.js --name al-jin && pm2 save && pm2 startupOr upload |
| 🧩 Bot panels Pterodactyl, bot-hosting, etc. |
Details and thread-limit fixes: Panel guide. |
| 🪟 Windows, 🍎 macOS, 🐧 Linux one-click |
No Node.js, npm or git needed beforehand. Already have Node 20+? The universal method above works the same on Windows, macOS and Linux. To start again after a restart, open the same file; no new code is needed. Guide: One-click start. |
| ⚡ Bun server panel or VPS |
Same as Node.js: upload
No Bun on your machine yet? One command installs it and starts the bot: |
| 📱 Android Termux |
pkg install -y curl && curl -fsSL -o aljin.sh https://raw.githubusercontent.com/themalik-g/al-jin-whatsapp-bot/main/aljin.sh && bash aljin.shGuide: Termux. |
| 🐳 Docker, ☁️ cloud | Docker, Docker Compose, Koyeb, Railway, Render and Fly.io: Deployment guide. |
| 🪶 Only 256 MB RAM? | Use Al-Jin Lite on any free host (Katabump and similar). See Lite and hosting options. |
[!NOTE] The WhatsApp session lives in the
instances/folder. On any host that wipes its disk on restart, keep that folder on persistent storage or the bot logs out each time.
🚀 Deploy Al-Jin Lite on KataBump from WhatsApp (.kb)
Anyone can deploy Al-Jin Lite to a KataBump server straight from WhatsApp. No owner rights and no coding needed.
Quickest way: message wa.me/insaf.pk on WhatsApp and send:
.kb <api key>,<server id>,<your whatsapp number>
Example: .kb ptlc_xxxxxxxx,7ee171bf,923001234567 (7ee171bf = the Server ID shown after the # on your dashboard)
(.kbstart works the same way.) The bot stops the server, clears old files, downloads index.js from al-jin-lite, sets your number, starts the server and sends you the pairing code. It edits one message at every step and finishes with "Bot is live". Then open WhatsApp → Linked devices → Link with phone number and enter the code.
🔒 Send
.kbin a private chat, because the API key is a secret. You can delete the key afterwards in the panel.
How to get the two things you need from KataBump
- API key: log in to the KataBump panel, open your Account page → API Credentials, create a new key and copy it right away (it starts with
ptlc_and is shown only once). - Server ID: open your server's dashboard and scroll down to the Server Info card (under Disk Usage). Find the Server ID row. The ID is the short code after the
#(for example# 7ee171bf→ the server ID is7ee171bf). Copy only the code, without the#.
If the panel menus look different, any Pterodactyl-style client API key and the short server ID work.
Want to try first? A test bot is running at wa.me/insaf.pk. Message it to see Al-Jin in action before you deploy your own.
⚙️ Low RAM, small disks and adjustable limits
RAM, disk and download limits adapt to your server. Set them live from WhatsApp as owner:
.ramlimit 512 restart · .cpulimit · .dlcap 500mb · .dlcap quality 480 · .ram · .rom · .disk
Details: Lite and hosting options · Settings and keys.
Stuck while deploying? Message the developer on WhatsApp. Support is free and needs no premium plan. If you cannot pay for a server because of payment-method restrictions or similar, managed hosting is available from the owner on request. It is a courtesy, not a business.
Show the feature table (downloaders, Islamic tools, scheduling, group admin, AI, stickers)
| Area | Highlights | More |
|---|---|---|
| Message recovery | Ghost (anti-delete, anti-edit), Peek (view-once), Lurk (status saver) | Features |
| Downloaders | YouTube, Instagram, TikTok, Facebook, X, Pinterest, Threads, Reddit, GitHub, MediaFire | Features |
| Movies, series, books | .movie .series .continue .book |
Movies · Books |
| Islamic tools | .quran .sora .para .islamsearch .bukhari .muslim .prayertimes |
Islamic tools |
| Scheduling | .schedule for groups, channels and chats, including group open/close |
Features |
| Group admin | .kick .promote .tagall .antilink .antispam .warn .gshield |
Features |
| AI and documents | .jin .bot .gemini .ppt .ocr .tts .subtitle |
Features |
| Stickers and media | .sticker .toimg .tomp3 .textmaker and more |
Features |
| Stealth by default | Appears quiet until you switch behaviours on | Stealth |
The bot runs without any API key. Optional free keys (Groq, Gemini and others) only make AI and speech faster: Settings and keys.
Browse all guides (deployment, commands, troubleshooting, architecture)
Everything beyond this page lives in docs/.
| Topic | Guides |
|---|---|
| 🚀 Getting started | One-click start · Manual install · Deployment · Lite and hosting · Bun support |
| 🎮 Using the bot | Features · Commands · Categories · Stealth · Settings and keys · Configuration |
| 🎬 Dedicated engines | Movies and series · Books · Islamic tools · Subtitles · PowerPoint |
| 🔧 Help | Troubleshooting · FAQ · Support |
| 🏗️ Reference | Project structure · Architecture · JID system · Changelog · Al-Jin vs other bots |
| 🤝 Project | Contributing · MIT License |
Compare Al-Jin with cloud bots and other self-hosted bots
| Al-Jin | Typical cloud bot | Other self-hosted bots | |
|---|---|---|---|
| Price | Free | Monthly fee | Free |
| Data location | Your device | Provider's cloud | Your device |
| Deployment | One file, one command | Sign-up and dashboard | Usually manual |
| Baileys | Original v7.0.0-rc.14 | n/a | Often a custom fork |
| Anti-delete / anti-edit | Built in | Often paid | Varies |
| View-once saver | Built in | Rare | Varies |
| Downloader fallbacks | Multiple engines | Single | Varies |
| Free AI chat | Built in | Limited | Varies |
Detailed comparison: Al-Jin vs other WhatsApp bots.
Is Al-Jin free and open source?
Yes. It is released under the MIT License with no paid tiers. Optional services you connect yourself (such as an API key) follow their own pricing.
Does Al-Jin support custom pairing codes?
Yes, built in. The bot asks WhatsApp for readable codes such as ALMEHTAB first and falls back to a random code if one is not accepted. Set your own list with WRAITH_PAIR_CODES, or turn it off with WRAITH_PAIR_CODES=off. Codes are 8 characters from 1-9 A-H J-N P-T V-Z.
Does it have native WhatsApp buttons without a custom Baileys fork?
Yes. Native-flow buttons, lists, copy and URL buttons are built in on plain upstream Baileys. Choose how selection prompts appear with .replymode text, .replymode poll or .replymode buttons.
Can it send view-once photos and videos to my DM automatically?
Yes. .peek auto on forwards view-once media automatically, and .peek dest owner|same|both picks where it goes. You can also reply to a view-once message with .peek.
Does it detect edited and deleted messages?
Yes. Ghost covers anti-delete and anti-edit detection for text, images, video, documents and voice notes. Turn edit detection on with .ghost edit on.
How do I host Al-Jin for free on KataBump?
Use Al-Jin Lite. From a running Al-Jin, send .kb <api key>,<server id>,<number> and the bot deploys it, then sends you the pairing code. No bot yet? Message wa.me/insaf.pk and send the same command there.
How do I deploy a WhatsApp bot on a VPS?
Download index.js, upload it to the server, optionally set your number in it, run node index.js, then enter the pairing code under Linked Devices in WhatsApp. See Deployment.
Do I need a QR code?
No. Al-Jin uses an 8-character pairing code. Enter it in WhatsApp under Linked devices → Link with phone number instead.
Is it safe? Can my number get banned?
Your data stays on your own device. However, Al-Jin is an unofficial client, and WhatsApp can restrict accounts that use automation. Avoid bulk messaging or spam, and consider a secondary number.
Does it work with WhatsApp Business?
Yes, through Linked Devices on both WhatsApp Messenger and WhatsApp Business.
Can I run more than one WhatsApp number?
Yes. Owners add sessions with .addsession and remove them with .delsession. Each session keeps its own data inside instances/.
Can I run it on a very small server?
Yes. Cap RAM and downloads with .ramlimit and .dlcap, or use Al-Jin Lite on hosts with 256 MB of RAM.
More answers: FAQ · Troubleshooting.
- WhatsApp: message @insaf.pk with a screenshot of the error. Free, no premium needed.
- GitHub: report a bug or request a feature.
Released under the MIT License. Copyright (c) 2026 MALIK. Contributions are welcome: see Contributing and the project structure.
Search keywords
WhatsApp bot, WhatsApp bot Node.js, WhatsApp multi-device bot, Baileys v7 bot, open source WhatsApp bot, self-hosted WhatsApp bot, WhatsApp bot pairing code, WhatsApp anti-delete bot, WhatsApp view once saver, WhatsApp status saver, WhatsApp YouTube downloader bot, WhatsApp movie downloader bot, WhatsApp book downloader, WhatsApp group management bot, WhatsApp message scheduler, WhatsApp Quran bot, WhatsApp bot VPS deploy, Termux WhatsApp bot, Pterodactyl WhatsApp bot, KataBump WhatsApp bot, free WhatsApp bot hosting, WhatsApp bot custom pairing code, WhatsApp bot native buttons, WhatsApp anti-edit bot, WhatsApp view once to DM, Baileys without fork, WhatsApp bot with buttons, Al-Jin MD.
Built by Malik Mehtab | ⬆ Back to top