Skip to content

DanielChahine0/Atlas

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

318 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ—ΊοΈ Atlas

A personal orchestrator that runs a fleet of specialized agents to manage your digital life β€” email triage, tasks, calendar, events, job hunting, meeting capture, an Obsidian dashboard, screen autofill, and cross-platform personal-brand publishing.

Atlas itself does almost no work. It schedules, routes, sequences, and supervises ~16 sub-agents, owns the shared event bus, and keeps a single source of truth. Think of it as the conductor β€” the Greek Titan holding up your whole world.


The one-paragraph version

Every morning at 8:00, Atlas labels your inbox (Filer), hands you a digest split into Important / Action Required / Action Recommended / Advertisement / Other (Herald), turns the important mail into tasks with deadlines (Forge), drops those deadlines on your calendar (Sundial), and writes you a time-blocked day plan (Compass). Through the week it scouts events (Scout), tracks job deadlines and hiring windows (Headhunter), captures and structures your meetings (Echo β†’ Archivist), autofills forms from one profile (Quill), and pushes new projects/experience to LinkedIn + X + GitHub + your portfolio at once (Envoy). Everything funnels into one Obsidian dashboard managed by a single writer (Steward), with reliability watched by Flagger, capability routing by Switchboard, and your best prompts saved by Librarian.


Design pillars

  1. One writer per resource. Exactly one agent may mutate any external system. The dashboard has a single writer (Steward) β€” no races, no double-counting.
  2. Suggest, don't destroy. Agents label, draft, and recommend. Anything destructive or outward-facing (delete, post, register, pay) is gated behind explicit confirmation.
  3. Cloud by default, local when it must be. Most agents run on Cloudflare; two (Echo audio, Quill screen) need the physical machine and run as a local daemon.
  4. Single source of truth. Personal facts live in The Codex; dashboard state lives in The Vault (Obsidian). Agents read the Codex; only Steward writes the Vault.
  5. Idempotent + observable. Every run is safe to repeat; every notable event/failure hits Flagger.

System map

                                  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                                  β”‚                ATLAS                     β”‚
                                  β”‚   orchestrator Β· scheduler Β· supervisor  β”‚
                                  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                                  β”‚ schedules + routes
        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
        β–Ό               β–Ό               β–Ό                  β–Ό               β–Ό               β–Ό
   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”       β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
   β”‚ Filer   β”‚    β”‚ Herald   β”‚    β”‚ Forge    β”‚  ...  β”‚ Scout    β”‚   β”‚ Echo     β”‚    β”‚ Quill    β”‚
   β”‚ (label) │───▢│ (digest) │───▢│ (tasks)  β”‚       β”‚(events)  β”‚   β”‚ (audio)  β”‚    β”‚(autofill)β”‚
   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜       β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                       β–Ό                  β”‚              β–Ό
                                  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”            β”‚         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                                  β”‚ Sundial  β”‚            β”‚         β”‚Archivist β”‚
                                  β”‚(calendar)β”‚            β”‚         β”‚ (notes)  β”‚
                                  β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜            β”‚         β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜
                                       β–Ό                  β”‚              β”‚
                                  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”            β”‚              β”‚
                                  β”‚ Compass  β”‚            β”‚              β”‚
                                  β”‚(day plan)β”‚            β”‚              β”‚
                                  β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜            β”‚              β”‚
                                       β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
                                                                 β–Ό
                                            β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                                            β”‚   the WIRE (event bus / queue)       β”‚
                                            β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                                                 β–Ό  (serialized, single writer)
                                            β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                                            β”‚   STEWARD ──▢ The VAULT (Obsidian)   β”‚
                                            β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
   reads β–²                                       β–² watched by                 β–² routed by
   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                            β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
   β”‚The Codex β”‚ (source of truth)          β”‚ Flagger  β”‚ (reliability)   β”‚ Switchboard  β”‚ (MCP routing)
   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                            β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Your three questions, answered

You asked for these in this order β€” before any "is this a good idea" intuition. Here's where each lives:

(1) What to expand on β€” to fully cover what you're looking for

(2) All the agents, numbered by importance + how the system works

  • docs/01-agent-roster.md β€” the full roster, ranked by value and by build order, with which agents are sub-agents, which depend on which, and the foundational-vs-feature split.
  • docs/02-architecture.md β€” the orchestrator model, the dependency graph, the three pipelines, and the single-writer rule.

(3) The schedule β€” what runs when, in what order, in parallel

  • docs/03-scheduling.md β€” daily timeline (07:45 β†’ 21:00), weekly timeline (Mon/Fri), concurrency rules, and the cron / event-driven / on-demand split. (Daily email 08:00, weekly email Friday, etc.)

And then β€” "is this a good idea + how to build it"

  • docs/12-roadmap.md β€” the 6-phase build order, the honest verdict, the recommended MVP, and success metrics.

The fleet (ranked by importance)

# Agent Role Doc
0 Atlas Orchestrator / supervisor atlas
1 Herald Email digest (daily + weekly) herald
2 Filer Email labeler (never archives/deletes) filer
3 Forge Task & subtask extractor (deadlines) forge
4 Sundial Task β†’ Google Calendar sundial
5 Compass Daily planner compass
6 Scout Event discovery (weekly digest) scout
7 Usher Event registration + calendar usher
8 Headhunter Job deadlines & hiring windows headhunter
9 Echo Audio capture β†’ transcripts (local) echo
10 Archivist Meeting-notes organizer archivist
11 Steward Dashboard manager (sole Vault writer) steward
12 Quill Screen-aware autofill (local) quill
13 Envoy Personal-brand sync (LinkedIn/X/GitHub/portfolio) envoy
14 Switchboard Capability router (picks the right MCP/tools) switchboard
15 Flagger Incident flagging (severity + trust) flagger
16 Librarian Prompt library librarian

Repository map

Atlas/
β”œβ”€β”€ README.md                          ← you are here
β”œβ”€β”€ CLAUDE.md                          ← working guide (pillars, pins, conventions)
β”œβ”€β”€ apps/                              ← 21 Workers β€” one per agent, + gate / dlq-sink / MCP servers
β”œβ”€β”€ packages/                          ← 8 shared libs (wire Β· model Β· steward-core Β· codex Β· shared Β· security Β· tasks Β· gate)
β”œβ”€β”€ migrations/                        ← D1 migrations (the shared atlas-db)
β”œβ”€β”€ daemon/                            ← local macOS launchd daemon (outbox drainers + browser-action runner)
β”œβ”€β”€ capture/                           ← local Swift menubar app (Echo capture pipeline + Quill)
β”œβ”€β”€ .planning/                         ← live project state (STATE.md Β· ROADMAP.md Β· PROJECT.md)
└── docs/
    β”œβ”€β”€ SPEC-CANON.md                  ← canonical design spec (the source of truth for all docs)
    β”œβ”€β”€ 00-overview.md                 ← system philosophy & map
    β”œβ”€β”€ 01-agent-roster.md             ← every agent, ranked (answers Q2)
    β”œβ”€β”€ 02-architecture.md             ← orchestration, dependencies, pipelines
    β”œβ”€β”€ 03-scheduling.md               ← cron, sequencing, concurrency (answers Q3)
    β”œβ”€β”€ 04-email-taxonomy.md           ← labels, groups, cautions (answers Q1a)
    β”œβ”€β”€ 05-dashboard.md                ← Obsidian dashboard spec (answers Q1b)
    β”œβ”€β”€ 06-hosting-cloudflare-mcp.md   ← Cloudflare + MCP wiring
    β”œβ”€β”€ 07-source-of-truth-codex.md    ← The Codex (single source of truth)
    β”œβ”€β”€ 08-flagger.md                  ← Flagger design
    β”œβ”€β”€ 09-prompt-library.md           ← Librarian / prompt table
    β”œβ”€β”€ 10-switchboard.md              ← capability router
    β”œβ”€β”€ 11-security-privacy.md         ← security & privacy model
    β”œβ”€β”€ 12-roadmap.md                  ← build order + "is this a good idea?"
    └── agents/                        ← one README per agent (17 files)

Hosting at a glance

Cloudflare Workers + Durable Objects for the agents, Cron Triggers for the schedule, Queues for the Wire, D1/KV/R2 for state, Workers AI / AI Gateway for models, and remote MCP servers to connect Gmail, Google Calendar, Drive, Sheets, and GitHub. Echo and Quill run in a local macOS daemon. Full details: docs/06-hosting-cloudflare-mcp.md.


Status

βœ… Milestone v1.0 code-complete (2026-06-09). All 6 phases β€” Spine, the morning pipeline Filer β†’ Herald β†’ Forge β†’ Sundial β†’ Compass, Weekly Value, Capture (local), Outward (gated), and Meta/Polish β€” are built, reviewed, and on main: the full 16-agent fleet across 21 Workers, 8 shared packages, the local daemon, and the Swift capture app, with 716 workspace + 39 daemon TypeScript tests and 106 Swift tests passing. (Switchboard ships design-time only, by design β€” a registry + runbook, not a Worker.) Awaiting owner go-live activation gates (live OAuth, Secrets Store seed, Obsidian bridge, AI-Gateway spend ceilings, GitHub App grant, Playwright browser profile) β€” nothing runs live in production yet. Start at docs/00-overview.md, then docs/12-roadmap.md for the build order, and .planning/STATE.md for live status.

About

A 16-agent personal life orchestrator on Cloudflare Workers including email, tasks, calendar, and an Obsidian dashboard, safely automated.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors