feat: Phase 1 — Design System & Database Layer#116
Open
dplakon wants to merge 1 commit intofeature/agentos-tauri-appfrom
Open
feat: Phase 1 — Design System & Database Layer#116dplakon wants to merge 1 commit intofeature/agentos-tauri-appfrom
dplakon wants to merge 1 commit intofeature/agentos-tauri-appfrom
Conversation
…ped API layer Phase 1: Design System & Database Layer Design System: - Updated Tailwind config with correct design spec colors (#0A0A0B base, #141415 raised, #1C1C1E elevated, #6E56CF violet accent) - Inter + JetBrains Mono typography, 4px spacing grid - Agent status colors (running/error/deploying/paused/idle with muted variants) - Animation tokens (fade, slide, scale) and box shadow system - Updated globals.css with dark theme scrollbar, selection color, focus ring UI Components (Radix UI + Tailwind): - Button (primary/secondary/ghost/destructive/outline variants, sm/md/lg/icon sizes) - Input with focus ring and disabled states - Badge with agent status color variants and optional pulsing dot - Tooltip with Radix portal and fade animation - Dialog/Modal with overlay, header/footer/title/description - DropdownMenu with items, checkboxes, radio, labels, separators, shortcuts - Tabs with underline active indicator Database Layer: - Added rusqlite (bundled) to Cargo.toml for SQLite support - Created db.rs with auto-migrations and WAL mode - Schema: agents, files, schedules, environments, api_keys, audit_log - All tables have agent_id foreign keys with CASCADE/SET NULL - Indexes on all foreign keys and audit_log.created_at Backend Commands: - Full CRUD for agents, files, schedules, environments, api_keys - Audit logging on all mutations - Dynamic update queries with optional field support - revoke_api_key for soft-delete of API keys - list_audit_log with optional agent_id filter and limit Frontend API Layer: - Typed TypeScript API module (src/lib/api.ts) - All entity types, input types, and response types - Async invoke wrappers for all 21 Tauri commands - Namespaced API objects: agentsApi, filesApi, schedulesApi, environmentsApi, apiKeysApi, auditLogApi Co-Authored-By: Oz <oz-agent@warp.dev>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Phase 1: Design System & Database Layer
What
Implements the full design token system, core UI component library, SQLite database with schema, Rust CRUD commands, and typed frontend API layer for the AgentOS desktop app.
Design System
#0A0A0Bbase,#141415raised,#1C1C1Eelevated,#6E56CFviolet accentUI Components (Radix UI + Tailwind)
All components use
class-variance-authorityfor variant management and thecn()utility for class merging:asChildvia Radix SlotDatabase (SQLite via rusqlite)
agents,files,schedules,environments,api_keys,audit_logagent_idforeign keys (CASCADE on delete, SET NULL for audit_log)audit_log.created_atRust Backend Commands (21 total)
Frontend API Layer (
src/lib/api.ts)agentsApi,filesApi,schedulesApi,environmentsApi,apiKeysApi,auditLogApicall<T>()helper with error handlingNotes
mockData.tsare from worker-1's branch (not introduced by this PR)agent.rsandstorage.rsmodules are preserved for backward compatibility but the newcommands.rs+db.rsare the primary backendThis PR was generated with Oz.