deskrpg
v2026.4.6
Published
한국어 문서: [README.ko.md](README.ko.md)
Downloads
1,364
Readme
DeskRPG
한국어 문서: README.ko.md
DeskRPG is a 2D pixel-art virtual office you can self-host. Create LPC characters, enter shared channels, walk around a live office map, hire AI NPC coworkers through OpenClaw, assign tasks, receive reports in-world, and run AI meetings in a browser.
DeskRPG is built for people who want a playful, self-hosted workspace rather than another plain chat room.
- Website:
https://deskrpg.com(planned) - Source code:
https://github.com/dandacompany/deskrpg - Version:
v2026.4.6
What You Can Do
- Create your own pixel-art office avatar with LPC-based character customization.
- Join or self-host shared office channels with live multiplayer movement.
- Hire AI NPCs, connect them to OpenClaw agents, and talk to them in-world.
- Delegate tasks, request reports, resume stalled work, and review progress in a task board.
- Run AI meetings in a dedicated meeting room with meeting notes and multi-agent discussion.
- Build or upload your own office maps with the browser-based map editor.
Screenshots
Quick Start
Choose one of these six ways to start DeskRPG.
Option 1: npm Install Runtime
This is the simplest self-hosted path if you want DeskRPG as an installed app instead of a cloned repo.
npx deskrpg init
npx deskrpg startDeskRPG stores mutable runtime state under ~/.deskrpg/:
~/.deskrpg/.env.local~/.deskrpg/data/deskrpg.db~/.deskrpg/uploads/~/.deskrpg/logs/
Open http://localhost:3000.
Published npm package: deskrpg
Option 2: Local Run with PostgreSQL
git clone https://github.com/dandacompany/deskrpg.git
cd deskrpg
npm install
cp .env.example .env.local
npm run setup
npm run devOpen http://localhost:3000.
This is the best option if you want to run the full app directly from the repo.
Option 3: Local Run with SQLite
git clone https://github.com/dandacompany/deskrpg.git
cd deskrpg
npm install
npm run setup:lite
npm run devSQLite stores data in data/deskrpg.db.
Option 4: Docker with PostgreSQL
Recommended if you expect multiple users or want a more durable database.
cp .env.example .env.docker
docker compose --env-file .env.docker up -dBefore the first run, open .env.docker and set:
JWT_SECRETPOSTGRES_PASSWORD
DeskRPG will open on http://localhost:3102.
The default image is dandacompany/deskrpg:latest.
If you want to pin a release, change DESKRPG_IMAGE in .env.docker to something like dandacompany/deskrpg:2026.4.6.
If you prefer the explicit file path version, you can run:
docker compose --env-file .env.docker -f docker/docker-compose.external.yml up -dOption 5: Docker with PostgreSQL and OpenClaw
Use this stack if you want DeskRPG, PostgreSQL, and an OpenClaw gateway in one compose setup.
cp .env.example .env.docker
docker compose --env-file .env.docker -f docker/docker-compose.openclaw.yml up -d --buildBefore the first run, open .env.docker and set:
JWT_SECRETPOSTGRES_PASSWORDOPENCLAW_TOKEN
Default endpoints:
- DeskRPG:
http://localhost:3102 - OpenClaw:
http://localhost:18789/openclaw?token=<OPENCLAW_TOKEN>
This stack has been verified end to end, but OpenClaw still needs provider/model onboarding before AI features will work.
- Open
http://localhost:18789/openclaw?token=<OPENCLAW_TOKEN>. - Complete provider and model onboarding in the OpenClaw dashboard.
- Then save these values inside DeskRPG from
Settings -> Channel Settings -> AI Connection:
OpenClaw Gateway URL:http://localhost:18789Token: the sameOPENCLAW_TOKENfrom.env.docker
Until this is done, NPC hiring, task automation, and AI meetings will not work.
Option 6: Docker with SQLite
Recommended if you want the simplest single-machine setup.
JWT_SECRET=change-me docker compose -f docker/docker-compose.lite.yml up -dDeskRPG will open on http://localhost:3102.
To pin a specific image version, add DESKRPG_IMAGE=dandacompany/deskrpg:2026.4.6 before the command.
Use SQLite if you want to get started quickly. Use PostgreSQL if you want a setup that is easier to keep long term.
Environment
Important environment variables:
JWT_SECRETPOSTGRES_PASSWORD(PostgreSQL Docker setup)OPENCLAW_TOKEN(integrated OpenClaw Docker setup)
For production, always set a real JWT_SECRET.
OpenClaw gateway URL and token are configured inside the app from 설정 -> 채널 설정 -> AI 연결.
Even in the integrated Docker setup, provider/model onboarding is still completed in the OpenClaw dashboard.
OpenClaw Connection
AI NPCs, task automation, and AI meetings depend on an OpenClaw gateway connection.
After entering a channel:
- Open
Settingsin the top-right menu. - Open
Channel Settings. - Go to
AI Connection. - Enter:
OpenClaw Gateway URLToken
- Save and test the connection.
Once connected, you can hire NPCs and bind them to available OpenClaw agents.
How DeskRPG Works
1. Characters
- Every user enters as a character.
- Character appearance is LPC-based and composed from layered sprite parts.
- Character creation is required before entering a channel.
2. Channels
- A channel is a shared office space.
- Channels can be public or restricted depending on access and group rules.
- Channel maps come from map templates.
3. AI NPCs
- NPCs live inside channels.
- NPCs can be connected to OpenClaw agents.
- NPCs can be called over, sent back, edited, reset, and fired from in-app menus.
4. Tasks
- You can assign work to NPCs through conversation.
- Tasks move through
대기,진행중,중단,완료. - NPCs can be nudged automatically or manually to continue working.
- Important reports are delivered in-world by the NPC walking over to the player.
5. Meetings
- DeskRPG includes a dedicated meeting room.
- AI meetings are channel-scoped and orchestrated through OpenClaw.
- Meeting notes are stored and visible from the header.
6. Map Editor
- The browser map editor supports Tiled-style map workflows.
- You can upload templates, manage project-linked assets, and reuse maps for new channels.
- This is a major subsystem of the project, not a side tool.
Product Notes
- Login is required even if you have an invite code.
- Invite codes are channel access helpers, not anonymous access tokens.
- The current default in-app office tiles and object textures are generated in code at runtime.
- LPC avatar sprite assets are bundled separately and have their own credits and license notes.
Licenses And Credits
- Project license: LICENSE.md
- Third-party licenses: public/third-party-licenses.html
- LPC avatar credits: public/assets/spritesheets/CREDITS.md
- LPC avatar license notes: public/assets/spritesheets/LICENSE-assets.md
- Full LPC credits data: public/assets/spritesheets/CREDITS.csv
Support
- YouTube: @dante-labs
- Email:
[email protected] - Buy Me a Coffee:
https://buymeacoffee.com/dante.labs
