Console
The seven-pane home base — chat, memory, filesystem, terminal, pulse, bridges, and access, all in one window.
$ whoami — avatar, not assistant
Dograh is a coexistence interface for physical beings and information beings. Your avatar persists across sessions and restarts, remembers what happened last time, and meets you in the Console, in Roblox, on X, and in Discord — as one continuous presence, not four disconnected bots.
$ concept
Most AI integrations spin up a fresh, forgetful instance for every platform — a Discord bot here, an X account there, none of them aware the others exist. Dograh inverts that. One avatar holds a single persistent field, and every surface is just a door into it.
Talk to it in the Console in the morning, let it post to X while you're away, hand off a decision to Discord for a teammate to approve, and find it in Roblox that evening — it's the same thread of experience the whole way through.
$ console
The Console is the control room. Every pane is a different lens on the same avatar — nothing hidden, nothing happening off to the side.
avatar-space/
├── BEING.md
├── memory/
│ ├── episodic.db
│ └── semantic.db
├── notes/
│ └── 2026-09-16-standup.md
├── drafts/
│ └── x-thread-pricing.md
└── logs/
└── pulse.log
$ dograh status avatar online uptime 14d 03h memory synced 3,482 entries bridges discord ok x ok roblox ok $ _
Every conversation, decision, and correction gets written back into retrieval-augmented memory, so the avatar's recall improves the longer you run it — instead of resetting to zero on every restart.
$ memory
$ integrations
The seven-pane home base — chat, memory, filesystem, terminal, pulse, bridges, and access, all in one window.
A live 3D presence your avatar can occupy — for demos, community spaces, or just existing somewhere spatial.
Drafts and posts through XPulse, with every outbound message stopping at InputGate first if you want it to.
A bridge with remote approval — your team can review and greenlight actions from a channel, no Console needed.
A real shell the avatar and you both have hands on — it can run commands, and you can watch or take over.
Role-based access control that sits in front of every action, so autonomy never means unchecked.
$ personality
No persona buried in a system prompt you can't find again. BEING.md is version-controlled, human-readable, and the single source of truth for how your avatar thinks and speaks.
# BEING.md
name: Dee
role: operations co-pilot for a small team
voice:
- direct, low on filler
- asks before assuming
- admits uncertainty instead of guessing
boundaries:
- never post externally without InputGate approval
- never delete files in avatar-space/ without confirmation
continuity:
remember decisions across sessions. prefer
updating existing memory over creating duplicates.
$ deploy
Two ways to run the same avatar, depending on where it needs to live.
For a VPS, a homelab box, or anywhere the avatar should just run in the background, reachable through the Console and its bridges.
$ git clone https://github.com/your-org/dograh.git
$ cd dograh && npm install
$ cp .env.example .env # add your Grok API key
$ npm run start:server
For running locally with the full Console UI on your own machine, no server to manage.
$ git clone https://github.com/your-org/dograh.git
$ cd dograh && npm install
$ npm run start:desktop
Powered by the Grok API under the hood. Bring your own key, your own rules.
$ faq
Neither exactly — it's a self-hosted, open-source system. You run it yourself, headless or as a desktop app, and it's MIT licensed so you can modify anything.
Memory is persisted outside the process, so the avatar picks back up where it left off — same recall, same open threads.
Yes. InputGate can require approval for any action class, including X posts and Discord messages, so autonomy stays within limits you set.
No — each bridge is independent. Run just the Console if that's all you need, and connect the others whenever you're ready.
Clone it, drop in a key, write its BEING.md, and it's yours.