Deploy Hob: Self-Hosted Personal AI Assistant with Background Jobs
Chat with an AI assistant that runs real work as jobs on your server.
Just deployed
/data
Deploy and Host Hob on Railway
![]()
Hob is an open source self-hosted personal AI assistant that does real work, not just chat. You talk to it in a web app; it handles small requests on the spot and hands longer work to background jobs that run shell commands, scripts and git on your server, then reports the result back into the conversation. Your rules decide which actions wait for your approval. Hob works with Anthropic, OpenAI, Google, DeepSeek, OpenRouter and any OpenAI- or Anthropic-compatible API using your own keys. It is MIT licensed, single-user, and a young project with releases every few days; v1.6.0 shipped in November 2026. The interface is currently Chinese-only. This template runs Hob 1.5.0 on Railway with a generated password and a persistent volume. ChatGPT Plus costs $20/month. Hob on Railway costs about $5/month plus the model tokens you use.
What This Template Deploys
| Service | Purpose |
|---|---|
| Hob | ghcr.io/onepush-dev/hob:1.5.0-r3, the unmodified upstream 1.5.0 image with a small start script, on port 8080 with a public domain. Web app, jobs and schedules all run here. |
| Persistent Volume | Mounted at /data. Holds Hob's config, provider keys, assistants, conversations, jobs, routines, skills, knowledge files and memory. |
The start script prepares the volume, makes Hob listen on Railway's port instead of upstream's default 30148, and drops to the unprivileged node user.
About Hosting Hob
Chat assistants answer questions, but most real tasks need something to keep working after you close the tab: checking a site every morning, fixing a script, summarizing a folder of documents. Hob runs on a server you control, so jobs keep going in the background and you come back to results.
Assistants with duties. Each assistant has its own duties, rules, skills and schedules. The main assistant delegates requests that belong to another assistant and offers to create a dedicated one when similar requests keep coming up.
Background jobs. Larger requests become jobs. A job card shows the live transcript, lets you add instructions or stop the job, and drops the result back into the chat.
Approval rules. Global and per-assistant rules say which actions need your confirmation. When you approve something, you can save it as a rule so it isn't asked again.
Routines. Schedules can carry a check script that runs first. If nothing changed, no model call happens; if something did, the assistant takes over.
Skills. When a job finds an approach worth keeping, it writes it up as a versioned skill that later jobs receive.
Knowledge, search and MCP. Knowledge bases with citations, web search through SearXNG, Exa, Tavily, Brave and others, and MCP servers you configure.
Phone ready. Add Hob to your home screen and get push notifications when a decision is needed or a job fails.
Deploy Hob in Under 5 Minutes
- Click Deploy on Railway. The sign-in password is generated for you.
- Copy
HOB_PASSWORDfrom the Hob service's Variables tab. - Open the public domain and sign in with that password.
- Open Settings, Providers and save an API key for at least one model provider. The menus are in Chinese, so a browser translation extension helps.
- Under Settings, Models, pick a chat model and a job model, then send your first message.
Common Use Cases
- Delegated coding tasks: hand a script, refactor or test fix to a background job and review the result.
- Morning check-ins: watch a site, feed or API on a schedule and get told only when something changed.
- Research reports: collect sources, compare options and present the findings as a page in the side panel.
- Personal knowledge base: upload notes and PDFs and ask questions with citations back to the source.
- Repeatable chores: turn a task you do weekly into a saved skill and a routine.
- One assistant everywhere: sign in from a laptop or phone and pick up the same conversation and jobs.
- Model comparison: switch providers and models per assistant and track token usage and cost.
- Watching prices or releases: a routine checks a page and pings you only when a number or version changes.
- File chores: rename, convert or summarize batches of uploaded files in a job while you do something else.
- Images and pages: generate or edit images through an OpenAI-compatible image API and keep comparisons as side-panel pages.
Configuration
| Variable | Required | Default | Description |
|---|---|---|---|
HOB_PASSWORD | π Auto-generated | 24-char secret | Web sign-in password, hashed into /data on first start |
PORT | Auto-set | 8080 | Port the start script tells Hob to use |
TZ | Optional | UTC | Timezone for routines and schedules |
Changing the password. Hob hashes HOB_PASSWORD on first start, so editing the variable later does nothing. Change it in Hob's settings instead.
Model keys. Provider keys are saved in Hob's settings and stored on the volume, not as Railway variables. Docker installs, including this one, need an API key; the Claude subscription mode only works with npm or source installs.
Timezone. Add TZ, such as Europe/Berlin, so routines fire at the hours you expect.
Usage. Hob tracks requests, tokens and estimated cost by model and by assistant, which helps keep background jobs within budget.
Memory and resources. Hob itself is a single Node process, but jobs run real commands inside the same container. Heavy jobs, such as installing packages or running test suites, need more memory, so raise the service's limits if jobs get killed.
Working directories. Jobs work inside the container's file system. Keep projects you want to survive redeploys under /data, because anything outside the volume is reset when the service restarts.
Web search. Add a search provider key under settings so research jobs can read the live web. SearXNG works if you run your own instance, and paid APIs such as Tavily or Exa give cleaner results.
Upgrades. The template pins Hob 1.5.0, while 1.6.0 adds assistant groups, topics and projects. Hob backs up and migrates its data folder on upgrades, but back up the volume before changing the image.
Security: Treat the Password Like Server Access
Jobs run shell commands such as git, curl and python3 inside the container by design. Anyone who signs in can direct those commands and use your saved API keys. Keep the generated password, set approval rules for risky actions, and remove the public domain in Settings if you only use Hob occasionally. Volume backups contain your provider keys, so store them privately.
Hob vs. Alternatives
| Feature | Hob on Railway | ChatGPT Plus | LibreChat | Open WebUI |
|---|---|---|---|---|
| Hosting | Self-hosted | Hosted SaaS | Self-hosted | Self-hosted |
| License | MIT | Proprietary | MIT | Open WebUI License |
| Bring your own API keys | β | β | β | β |
| Background jobs on your server | β | β | β | β |
| Approval rules for actions | β | β | β | β |
| English interface | β | β | β | β |
| Price | About $5/month plus tokens | $20/month | Hosting cost | Hosting cost |
LibreChat and Open WebUI are mature multi-user chat front ends with English interfaces. ChatGPT Plus is the easiest start. Hob is for one person who wants an assistant that runs real jobs on their own server.
Dependencies for Hob Hosting
- A Railway account.
- An API key for at least one model provider.
- Comfort with a Chinese interface, or a browser translation tool.
Deployment Dependencies
- Hob on GitHub: source code, releases and architecture docs
- Hob on npm: the
hob-botpackage - Hob container images: upstream Docker images
Implementation Details
The image builds on upstream ghcr.io/ffattiger/hob:1.5.0 without changing the app. Keep one replica, because all state lives on the single /data volume. The optional cloud desktop from upstream is not included, so browser automation jobs that need it are unavailable.
Frequently Asked Questions
What is Hob? An MIT-licensed, single-user AI assistant that chats in a web app and runs longer work as background jobs on your own server.
How much does it cost to host Hob? About $5/month on Railway, plus the tokens your model provider bills.
Where is my password?
In the Hob service's Variables tab as HOB_PASSWORD.
Is Hob available in English? Not yet. The interface is Chinese-only upstream, though it understands prompts in any language your model supports.
Why do my jobs fail right after deploy? Jobs need a model. Save a provider key under Settings, Providers and choose models under Settings, Models.
What should I back up?
The /data volume. It holds every conversation, job, routine, skill and saved key.
Why Deploy and Host Hob on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying Hob on Railway, you get a private AI assistant that keeps working in the background, with your own model keys and data on your own volume.
Template Content

