|
| 1 | +# OpenThymos Desktop — UX Philosophy |
| 2 | + |
| 3 | +This is the canonical guide for the desktop app's experience. Every desktop PR |
| 4 | +is measured against it. |
| 5 | + |
| 6 | +## The one principle |
| 7 | + |
| 8 | +**Standard AI chat experience first. OpenThymos capabilities second.** |
| 9 | + |
| 10 | +It should feel immediately familiar to anyone who has used ChatGPT, Claude, |
| 11 | +Cursor, LM Studio, or Open WebUI. We do **not** reinvent the chat experience — we |
| 12 | +add governance, replay, and auditability *on top of* a familiar one. |
| 13 | + |
| 14 | +> A premium AI desktop app that happens to have governance — **not** a governance |
| 15 | +> system that happens to have a chat box. |
| 16 | +
|
| 17 | +The user chats normally. OpenThymos quietly provides skills, tools, providers, |
| 18 | +grants, replay, and audit **when needed** — never in the user's face by default. |
| 19 | +A user should understand the interface within seconds. |
| 20 | + |
| 21 | +## Default layout |
| 22 | + |
| 23 | +``` |
| 24 | +┌───────────────┬───────────────────────────────────────────────┐ |
| 25 | +│ + New chat │ active model · provider · skills (quiet) │ |
| 26 | +│ ⌕ Search ├───────────────────────────────────────────────┤ |
| 27 | +│ Chat history │ │ |
| 28 | +│ • … │ conversation │ |
| 29 | +│ • … │ │ |
| 30 | +│ ├───────────────────────────────────────────────┤ |
| 31 | +│ Providers │ [ + ] message… [ Send ] │ |
| 32 | +│ Skills │ │ |
| 33 | +│ Tools │ optional: provider · skill · model (light) │ |
| 34 | +│ Audit │ │ |
| 35 | +│ ⚙ Settings │ │ |
| 36 | +└───────────────┴───────────────────────────────────────────────┘ |
| 37 | +``` |
| 38 | + |
| 39 | +- **Chat is always the primary screen.** It opens to chat. |
| 40 | +- **Sidebar:** New Chat · Search · Chat history. Secondary nav (Providers, |
| 41 | + Skills, Tools, Audit, Settings) lives below, lightweight. |
| 42 | +- **Composer at the bottom:** prompt · attachments · send. Optional |
| 43 | + provider/skill/model selectors are *light*, not overwhelming. |
| 44 | + |
| 45 | +## How each capability should feel |
| 46 | + |
| 47 | +- **Skills** — like GPTs / Claude styles / agent profiles. Enable one, several, |
| 48 | + or none without friction. (Multi-skill is shipped.) |
| 49 | +- **Tools** — capabilities the assistant has. Users never see schemas or |
| 50 | + internals unless they enter **Advanced Mode**. |
| 51 | +- **Grants** — clean and modern. Plain language, not runtime jargon: |
| 52 | + > **OpenThymos wants permission to use the File System tool.** `Allow` `Deny` |
| 53 | + with an *Advanced details* expander, not a wall of writ/policy text. |
| 54 | +- **Replay** — "**View what happened**", not "inspect internal runtime |
| 55 | + artifacts." Advanced users can expand into commits/writs. |
| 56 | + |
| 57 | +## Visual design |
| 58 | + |
| 59 | +Prioritize: whitespace · readable typography · smooth animation · modern cards · |
| 60 | +clear icons · clean navigation. Avoid: clutter · developer-only terminology · |
| 61 | +excessive JSON · overwhelming controls · exposing internals by default. |
| 62 | + |
| 63 | +## Advanced Mode |
| 64 | + |
| 65 | +A single toggle (Settings / header). **Off by default.** When off, normal users |
| 66 | +**never** see raw runtime data, policies, writs, commits, debug traces, or |
| 67 | +low-level tooling. When on, those reveal: |
| 68 | + |
| 69 | +- raw ledger entry data in the Mind inspector and Audit, |
| 70 | +- the custom-tool schema editor and raw skill/policy JSON, |
| 71 | +- writ / commit / proposal internals, debug/perf info, |
| 72 | +- experimental / unstable controls (also gated to Nightly). |
| 73 | + |
| 74 | +Implementation: a `body.advanced` class toggled + persisted; anything |
| 75 | +developer-facing is tagged `.adv-only` (hidden unless Advanced). New |
| 76 | +internals-exposing UI must be `.adv-only` by default. |
| 77 | + |
| 78 | +## Stable vs Nightly |
| 79 | + |
| 80 | +- **Stable** surfaces: multi-skill selection, basic skill/tool builders, |
| 81 | + provider/model selection, grant cards, replay viewer, the Mind graph. |
| 82 | +- **Nightly / Advanced**: raw JSON editing, experimental automation, debug |
| 83 | + traces, low-level runtime internals. |
| 84 | + |
| 85 | +## The test for any desktop change |
| 86 | + |
| 87 | +1. Does chat stay the primary, familiar experience? |
| 88 | +2. Is the new power *quiet* until needed? |
| 89 | +3. Would a non-engineer understand it in seconds? |
| 90 | +4. Is anything that exposes internals behind Advanced Mode? |
| 91 | + |
| 92 | +If a change makes the app feel like a governance console, it's wrong — governance |
| 93 | +is the substrate, not the surface. |
0 commit comments