Skip to content
timevaulttv edited this page Aug 25, 2026 · 1 revision

Time Vault ($TV)

Every Hour, Sealed on Chain. — timevault.tv

Time Vault turns freelance hours into tradable on-chain assets. A provider mints their availability as a Service NFT, a buyer's funds lock in smart-contract escrow, and a panel of seven specialised AI agents handles pricing, verification, matching, reputation, and disputes. Settlement is automatic once delivery is verified.

This wiki covers how the system fits together. For setup and file layout, see the README.


Pages

Page URL What it is
Landing / Brand intro, agent cards, live marketplace preview
App /app Vault Overview, Browse, Mint, Orders, Disputes, Agent Console
Whitepaper /whitepaper Tokenomics, technical diagrams, roadmap

How a transaction flows

  1. Mint — a provider tokenises hours into a Service NFT. SOLON suggests a rate from live market data; the provider is free to override it.
  2. Escrow — the buyer purchases hours. Funds move into a smart-contract vault, held by neither party.
  3. Deliver — the provider submits proof of work.
  4. Verify — KAIROS inspects the deliverable and emits a Confidence Score (0–100). That score is the escrow trigger, not a human approval.
  5. Settle — funds release automatically. NERIS updates the provider's Skill Score.
  6. Dispute — if either side objects, VORIAN reviews both sides and issues a binding decision. Escrow stays locked until it does.

The seven agents

Agent Role What it decides
LYRA Concierge & onboarding Guides NFT creation, answers questions, routes buyers
VORIAN Escrow arbiter Binding verdicts on disputes
NERIS Reputation engine Skill Score from delivery quality, not self-reported ratings
SOLON Pricing oracle Rate recommendations and demand forecasts
KAIROS Verification engine Confidence Score that releases escrow
ATLAS Talent scout Buyer ↔ provider matching via skill embeddings
CIRION Treasury manager Portfolio, yield, buyback, DAO reporting

LYRA is the only agent with a live backend today (server/). The rest are specified and represented in the interface while the on-chain layer is built.


Architecture

Frontend — vanilla HTML, CSS, and JavaScript. No build step, no framework, no bundler. Three.js and Google Fonts load from CDN; everything else is served as static files. Each page defines its design tokens as CSS variables in :root.

Shared modules live in assets/js/ and are self-contained — each injects its own markup and styles, so a page only needs the script tag:

  • agent-menu.js — agent panels and chat on the landing page
  • vault-notes.js — draggable terminal notepad, stored per wallet
  • wallet-connect.js — EIP-6963 wallet discovery
  • tv-auth.js — email sign-in via Supabase

Backend — server/ runs the LYRA agent behind nginx at /api/lyra. It is Python standard-library HTTP, no framework. Every credential is read from the environment; none are stored in this repository.

Wallets — connection uses EIP-6963 multi-injected provider discovery, so MetaMask, Rabby, OKX, Coinbase Wallet, Trust and others are picked up without hardcoding any of them. The connector requests accounts only. It never asks for a signature or a transaction.


Running it locally

Any static server works — there is nothing to compile.

npx http-server . -p 8080

Then open http://localhost:8080. The marketplace runs client-side, so the app is fully browsable without a backend; only LYRA's chat needs server/ running.


Deployment

The site is static files behind nginx, fronted by Cloudflare. URLs are extensionless — nginx maps /app to app.html via try_files, and any /name.html 301-redirects to /name.

One rule matters more than the rest: never copy nginx-timevault.conf over a live vhost. Once certbot has run it owns that file and adds the listen 443 ssl block. Overwriting it deletes that block and takes HTTPS down — and because Cloudflare keeps serving pages, the outage is easy to miss. Use deploy/patch-clean-urls.sh as the model: patch in place, test with nginx -t, roll back on failure.

Full runbook: deploy/DEPLOY.md.


Status

Pre-launch. The frontend platform is complete and the brand system is final. Marketplace data currently runs client-side while the on-chain layer is built.

Next milestones:

  1. Contracts — $TV (ERC-20), Service NFT (ERC-721), Escrow Vault to testnet, then audit
  2. Backend — persistent marketplace, orders, disputes
  3. Launch — $TV on letscash.fun, Robinhood Chain integration as it becomes public

FAQ

Is the token live? No. Time Vault is pre-launch. Any contract address shown in the interface is a placeholder until audited contracts ship.