You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
**Your life, organized by the AI you already use.**
4
7
5
8
Zaati OS is an open-source, private-by-default personal operating system. Scheduled AI workflows turn approved sources into versioned snapshots, and a schema-driven dashboard turns those snapshots into useful daily views, trends, calendars, lists, tables, and reviews.
@@ -92,9 +95,7 @@ The common envelope records source identity, time period, producer, status, prov
92
95
"summary": "Two focus blocks and one decision need attention.",
|`npm run dev`| Build the data index and start Vite |
151
+
|`npm run setup`| Complete the guided three-step local setup |
152
+
|`npm run tutorial`| Run the retrying mock LLM bundle and open it locally |
153
+
|`npm run workflow:run`| Connect any command-based LLM adapter |
154
+
|`npm run snapshot:ingest`| Atomically validate and persist one multi-snapshot bundle |
155
+
|`npm run snapshot:keygen`| Create an ignored 256-bit snapshot key |
156
+
|`npm run instance:configure`| Create ignored local settings |
157
+
|`npm run source:add`| Scaffold a source catalog entry and worker prompt |
158
+
|`npm run data:validate`| Validate registries, snapshots, ownership, and UI blocks |
159
+
|`npm run privacy:validate`| Reject private paths and common credential shapes |
160
+
|`npm run format:check`| Reject formatting drift with Prettier |
161
+
|`npm run lint`| Run type-aware ESLint, React Hooks, and React Refresh rules |
162
+
|`npm run test:coverage`| Run tests with enforced line, branch, and function coverage |
163
+
|`npm run check`| Run contracts, security, build, retry, encryption, performance, and WCAG tests |
164
+
|`npm run deploy`| Validate, build, and deploy with Wrangler |
165
+
166
+
## Enforced quality gates
167
+
168
+
The badges at the top of this README reflect the current default-branch CI and CodeQL results. A red badge means the published branch is failing a real check, not that someone forgot to update a status table.
| Contracts and privacy | Every registry, snapshot, schema, ownership rule, deployment boundary, and committed path validates |
176
+
| Unit coverage | At least 90% lines, 78% branches, and 80% functions across the ingestion and encryption core |
177
+
| Performance | At most 120 KB JavaScript gzip, 20 KB CSS gzip, and 120 KB dashboard data gzip |
178
+
| Accessibility | Zero axe WCAG A or AA violation groups across tutorial and dashboard, light, dark, desktop, and mobile |
179
+
| Security | Zero high-severity npm audit findings plus CodeQL analysis |
180
+
181
+
Pull requests expose each gate as a separate job and finish with one `Quality gate` result suitable for branch protection. Run `npm run check` locally for the same product checks before pushing.
{ "id": "m1", "title": "Choose a planning window", "description": "A collaborator proposed two times for tomorrow.", "meta": "Due today", "status": "Decision", "tone": "warning" },
31
-
{ "id": "m2", "title": "Approve the revised outline", "description": "The requested changes are ready for a quick review.", "meta": "15 minutes", "status": "Review", "tone": "info" }
40
+
{
41
+
"id": "m1",
42
+
"title": "Choose a planning window",
43
+
"description": "A collaborator proposed two times for tomorrow.",
44
+
"meta": "Due today",
45
+
"status": "Decision",
46
+
"tone": "warning"
47
+
},
48
+
{
49
+
"id": "m2",
50
+
"title": "Approve the revised outline",
51
+
"description": "The requested changes are ready for a quick review.",
52
+
"meta": "15 minutes",
53
+
"status": "Review",
54
+
"tone": "info"
55
+
}
32
56
]
33
57
},
34
-
{ "id": "noise", "kind": "notice", "title": "Noise stayed quiet", "body": "Newsletters, receipts, automated updates, and promotional messages were excluded from the attention queue.", "tone": "positive", "span": "one" }
58
+
{
59
+
"id": "noise",
60
+
"kind": "notice",
61
+
"title": "Noise stayed quiet",
62
+
"body": "Newsletters, receipts, automated updates, and promotional messages were excluded from the attention queue.",
0 commit comments