]> Repos - crimata-os/commit
Add crimata-agent and redesign agentic OS UI
authorAndrew Gundersen <adgundersen@gmail.com>
Mon, 2 Mar 2026 20:52:05 +0000 (15:52 -0500)
committerAndrew Gundersen <adgundersen@gmail.com>
Mon, 2 Mar 2026 20:52:05 +0000 (15:52 -0500)
commit31b5e321a1a6522c86888a8b48a9556951fe19ee
tree8886f5aafaeac5473058177ada5f3bd5a29447be
parent44f3192b78e88ac8aa0f6f064b743da81f6288ed
Add crimata-agent and redesign agentic OS UI

- crimata-agent (TypeScript, port 7702): WebSocket server + HTTP /events
  endpoint, Claude tool-use loop (render/remove/call_api/show_cursor_response),
  session.start fires on first browser connection to seed the canvas
- OS UI redesigned: light grey canvas (#e8e8e8), no dock bar, cursor dot,
  Cmd+Space input bubble above cursor, elements placed by agent
- Canvas elements: app_icon (floating icons with running dot), window (no-chrome
  content cards), cursor_response (text + action pills)
- Component system: HTML fragments fetched from /components/{app}/{name}.html,
  inline scripts re-executed after injection
- contacts/crimata.json: added icon, defaultComponent, components[], api[]
- dock: apps.h/c/main.c extended to parse and serve components + api from
  crimata.json; BUF_SIZE increased for richer JSON output
- ui/components/contacts/list.html + card.html: first component pair
- provision.sh: installs crimata-agent, adds WebSocket + /events + /components
  nginx locations, fixes /auth/ prefix stripping

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
19 files changed:
agent/package.json [new file with mode: 0644]
agent/src/agent.ts [new file with mode: 0644]
agent/src/canvas.ts [new file with mode: 0644]
agent/src/index.ts [new file with mode: 0644]
agent/src/tools.ts [new file with mode: 0644]
agent/src/types.ts [new file with mode: 0644]
agent/tsconfig.json [new file with mode: 0644]
apps/contacts/crimata.json
dock/src/apps.c
dock/src/apps.h
dock/src/main.c
ui/components/contacts/card.html [new file with mode: 0644]
ui/components/contacts/list.html [new file with mode: 0644]
ui/index.html
ui/js/os.js
ui/styles/canvas.css
ui/styles/cursor.css
ui/styles/login.css
ui/styles/window.css