Commons Pool Ӿ ·.· XNO Community-funded access
Underdark

Your key.
Your story.
Encrypted.

What it is

Hosted AI world-building.
Encrypted before it leaves you.

The operator cannot read your content Encrypted in your browser before it reaches the server. Structural, not a policy.
Your data leaves with you One exportable archive. No notice required. Always works.
Open source on the server AGPL-3.0. Anyone can self-host for free. The code is public.
Seraphine Voss
scholar arcane underdark
encrypted · vault-stored

What you get

Three things that matter.

Characters, worlds, and images. Built with AI, stored encrypted, always exportable. One place. One key. Nothing lost.

Characters & Worlds
AI-assisted creation. Full character cards, lorebooks, personas, and scenarios: attached, searchable, persistent.
  • Character cards with full profiles
  • Lorebooks & world entries
  • Personas & scenarios
  • AI-assisted wizards
Images
AI-generated or sourced. Encrypted client-side before upload. The server holds ciphertext only.
  • AI image generation
  • Gallery management
  • Encrypted at rest
  • Attached to characters or free
Feed & Sessions
AI-generated scenes, events, and lore entries. Your world's living record, building over time.
  • World event feed
  • Batch or single generation
  • Supports explicit content
  • Model choice per session
Full export. Always.
Your entire instance in one archive. No notice required. The data is yours.
Always online.
Hosted, maintained, updated. No local install, no config, no infrastructure.

Pricing

$8
platform fee · per month · no contract
$7 hosting, domain, development operator
$1 to the Commons pool community
AI budget · separate account not included in $8
$12 / month · NanoGPT subscription
  • Unlimited text generation across multiple models
  • 100 AI images per day
  • Full model variety: GPT-4o, Claude, Mistral, and more
  • Your account, independent. Use it anywhere.
Your NanoGPT account is yours. The operator has no access to it, no visibility into usage, and takes no cut. You pay them directly.
Typical monthly total $20 / month

$1 of every platform fee goes to the Commons pool. XNO donated by the community, converted to AI credits for those who cannot or choose not to pay.

Commons Pool
Ӿ ·.· XNO
Donated XNO → AI credits for Commons users. Pool balance is public. Spent openly.
Same product. Commons accounts have the same isolation, encryption, and features as paid.
Pool-dependent. When the pool has balance, Commons users have AI access. When it runs out, access pauses. Honestly.
Not a funnel. No upgrade pressure. No greyed features. The Commons tier exists because it should.
AGPL-3.0

You are paying for hosting, not software. Anyone can self-host Underdark for free. Anyone hosting it for others must publish their modifications. The SaaS clause, intentional.

View source →

Zero-knowledge

The operator cannot
read your vault.

Two things unlock your vault: a generated code and a password. Your browser combines them into a key. That key never leaves your device.

Everything you save is encrypted before it reaches the server. The server holds ciphertext it cannot read. Not a policy. Structural. The key was never here.

Lose either and the vault is gone. No recovery. No exception. That is the point.

Account code
example only · not your code
Generated once at provisioning. Never stored again.
Ciphertext stored · unreadable without key
Generation metadata when · model · tokens
Your key never arrives
Your password never transmitted
Your prompts never logged here
What encryption does not cover: when you send a prompt it travels to NanoGPT in plaintext to produce a response. TLS in transit, but they process it. Their privacy policy applies to that request. Once the response returns, it is encrypted before storage. This is how AI generation works. Stated here, not in a footnote.

Contact

Not open for signups yet.

If you build worlds, write characters, and want a private place to keep them: reach out directly.

trap@underdark.lol @trapl0l
Opening with referral code Costs you nothing. Supports the operator. Go without referral instead