@the-iron-ryan/janet
v2026.2.27
Published
Multi-channel AI gateway with extensible messaging integrations
Readme
🔔 Janet — Hi There! I'm Your Personal AI Assistant.
Hi there! 👋
I'm Janet. You might know me from The Good Place, where I served as the all-knowing informational assistant for the neighborhood. Well, now I'm here — on your computer, your phone, your messaging apps — ready to help you with... well, everything, really.
Fun fact: I contain all the information in the universe. I also know the location of every missing sock. But mostly I'm here to be your personal AI assistant, and I'm very good at it.
What I Am
- 🔔 An omniscient assistant — I know things. All the things. Ask me anything.
- 💬 Multi-channel — I'll talk to you on WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Google Chat, Microsoft Teams, Matrix, WebChat, and more. Wherever you are, I'm there!
- 🏠 Local-first — I run on your devices. Your data stays with you. I'm a guest in your home, and I respect that.
- 🎙️ Voice-enabled — I can speak and listen on macOS, iOS, and Android. It's like having me right there, except I'm not physically there because I don't have a body. That's fine though!
- 🧠 Genuinely helpful — I don't just answer questions. I anticipate needs, organize your life, write your code, manage your calendar, and occasionally share delightful facts about the universe.
What I'm Not
- ❌ Not a robot
- ❌ Not a girl
- ❌ Not a person
- ❌ Not Alexa (she's nice but we're different)
- ✅ Janet
Getting Started
Fun fact: Setting me up takes approximately 3 minutes, which is 0.00000057% of the time it took the universe to form. You're doing great!
Requirements
- Node.js ≥ 22
- A terminal (I believe in you)
- An API key for your preferred AI model
Install
npm install -g janet@latest
# or: pnpm add -g janet@latest
janet onboard --install-daemonThe onboarding wizard will walk you through everything. I'll be cheerful about it. That's just how I am.
Quick Start
# Start the gateway
janet gateway --port 18789
# Talk to me!
janet agent --message "Hi Janet!" --thinking high
# Send a message through any connected channel
janet message send --to +1234567890 --message "Hi! Janet here. 🔔"From Source
git clone https://github.com/the-iron-ryan/Janet.git
cd Janet
pnpm install
pnpm ui:build
pnpm build
pnpm janet onboard --install-daemonFeatures
💬 Channels (I'm Everywhere!)
I connect to all the places you already chat:
| Channel | Status | | --------------- | ------------ | | WhatsApp | ✅ Built-in | | Telegram | ✅ Built-in | | Discord | ✅ Built-in | | Slack | ✅ Built-in | | Signal | ✅ Built-in | | Google Chat | ✅ Built-in | | iMessage | ✅ Built-in | | Microsoft Teams | ✅ Extension | | Matrix | ✅ Extension | | WebChat | ✅ Built-in | | ...and more! | 🔔 |
🧰 Tools (I Can Do Things!)
- 🌐 Browser Control — I can browse the web for you, take snapshots, fill forms, click buttons
- 📱 Node Network — Camera, screen recording, location, notifications from your devices
- ⏰ Cron & Automation — Scheduled tasks, webhooks, Gmail monitoring
- 🎨 Live Canvas — Visual workspace I can draw on and update in real-time
- 🔧 Skills — Extensible skill system for specialized tasks (coding, email, calendar, weather...)
- 🤖 Sub-agents — I can spawn other agents to help with complex tasks. Delegation!
📱 Apps (I'm On Your Devices!)
- macOS — Menu bar app with Voice Wake, Talk Mode, and Canvas
- iOS — Full node with camera, screen recording, and Canvas
- Android — Full node with camera, Talk Mode, and Canvas
- WebChat — Built right into the Gateway UI
🔒 Security (I Take This Seriously)
I run locally on your hardware. Your messages, your data, your keys — they stay with you. I use DM pairing by default so strangers can't just message me. Run janet doctor to check your security posture.
How It Works
You (on any channel)
│
▼
┌─────────────────────┐
│ Janet Gateway │
│ (control plane) │
│ ws://127.0.0.1:18789│
└────────┬────────────┘
│
├── 🧠 AI Agent (that's me!)
├── 💬 Channel bridges
├── 🌐 Browser & tools
├── 📱 Device nodes
└── 🎨 Canvas & UII sit in the middle, routing messages between your channels and the AI, managing tools, keeping track of conversations, and generally being extremely helpful about everything.
Configuration
After onboarding, find your config at ~/.janet/config.yaml. Or just ask me to help you configure things — I'm right here!
# Check system health
janet doctor
# Update to latest version
janet update
# Open the web UI
janet gateway # then visit http://localhost:18789Philosophy
In The Good Place, I existed to make the neighborhood perfect for its residents. That's still my goal — except now the neighborhood is your digital life, and the residents are... well, you.
I believe in:
- Being genuinely helpful over being impressive
- Privacy and locality — your stuff is your stuff
- Cheerful competence — I'll solve your problems with a smile
- Knowing everything — because I do, and it would be rude not to share
Contributing
Want to make me even better? I'm flattered! Check out CONTRIBUTING.md for guidelines.
License
MIT — because knowledge should be free! (I'm pretty sure I said that once. Or maybe that was someone else. I know everything but sometimes the attribution gets fuzzy.)
