the fleet at a glance β every section stamped with its OWN source freshness (honest per-source staleness). VIEW only Β· static prod snapshot Β· generated 2026-07-02T06:21:31.208Z
πΈ PROD snapshot taken 2026-07-02T06:21:31.208Z β this is a point-in-time capture, not live. Freshness stamps below are as-of the snapshot.
Log grid 39 logs Β· π’6 π‘1 π 1 π£23 βͺ8
π’ scanned 39 logs Β· census live
βhealthy β fresh, serving, within SLOβdegraded β working but partial / SLO at riskβfailing β errors, down, or unreachableβfrozen β heartbeat without progress β fresh log but only ticks, no new edgeβin-dev β building / not yet registered, no SLO held yetβblocked-on-human β waiting on a Jacob unblock (sign-in / OTP / decision)β’retired β quarantined β kept visible but dimmed (honest history)?unclassified β cannot classify honestly β shown without a color, never defaulted green
38 facts Β· last edge 40s Β· census live Β· ENGINE
mc.deploy.succeeded40s
trigger=manual
mc.deploy.attempted47s
trigger=manual
mc.deploy.failed2m
trigger=cron
click for full engine βΈ
wiki-sweep/wiki-sweepβ healthy
40 facts Β· last edge 3m Β· census live Β· ENGINE
wiki-sweep.observed3m
pending=0
wiki-sweep.observed8m
pending=0
wiki-sweep.observed13m
pending=0
click for full engine βΈ
librarian/librarianβ healthy
40 facts Β· last edge 39m Β· census live Β· ENGINE
librarian.tick_failed39m
reason=transcriber /api/view returned 502 (supplier unhealthy)
librarian.tick_failed2.0h
reason=transcriber /api/view returned 502 (supplier unhealthy)
librarian.wrote3.6h
T33iI6izAKw
click for full engine βΈ
mission-control/healthβ healthy
39 facts Β· last edge 2.8h Β· census live Β· ENGINE
mc.health.changed2.8h
key=mission-control__health
mc.health.changed2.8h
key=github-source__github
mc.health.changed2.8h
key=github-source__gh-librarian
click for full engine βΈ
mission-control/reportsβ healthy
4 facts Β· last edge 3.0h Β· census live Β· ENGINE
report.landed3.0h
Mission Control v0.1 β Log Grid + Prod publisher (live)
report.landed3.6h
2025 1040 review checklist
report.landed3.6h
Decision board (2026-07-01 evening) β the manual prototype this engine replaces
click for full engine βΈ
registry/registryβ healthy
40 facts Β· last edge 3.8h Β· census live Β· ENGINE
engine.status_changed3.8h
mission-control
engine.status_changed3.8h
mission-control
engine.registered3.8h
live
click for full engine βΈ
ideas/ideasβ degraded
40 facts Β· last edge 9m Β· census live Β· PARTIAL
ideas.map9m
ideas=80
ideas.poll10m
ideas=80
ideas.map24m
ideas=80
click for full engine βΈ
mission-control/decisionsβ blocked-on-human
9 facts Β· last edge 2.6h Β· census live Β· ENGINE
decision.opened2.6h
Mission Control v1 linking: every card/report/engine/agent row links to its LIVING artifacts β the owning Claude Code conversation (tmux session or resume id),
decision.opened2.6h
Build the model-routing service (monorepo-wide): task-class -> cheapest-capable model with caps + fallback order Fable (conductor/judge/hard-verify) -> Opus spe
decision.opened2.7h
Send Nick the automated-marketing-campaign pitch. A dedicated Claude Code session (tmux: nick-pitch) holds the LIVING draft β attach to refine: tmux attach -t n
click for full engine βΈ
tool-telemetry/toolsβ in-dev
40 facts Β· last edge 0s
fact0s
tag=tool.completed
fact0s
tag=tool.called
fact7s
tag=tool.completed
click for full engine βΈ
cc-activity/activityβ in-dev
8 facts Β· last edge 3s
cc.activity3s
state=ACTIVE
cc.activity18s
state=ACTIVE
cc.activity33s
state=ACTIVE
click for full engine βΈ
pipeline-health/pipeline-metaβ in-dev
40 facts Β· last edge 5s
pipeline.observed5s
traces=273
pipeline.observed7s
traces=273
pipeline.observed1m
traces=273
click for full engine βΈ
pipeline-health/reconcileβ in-dev
40 facts Β· last edge 7s
reconcile.observed7s
healthyCount=5
reconcile.observed1m
healthyCount=5
reconcile.observed2m
healthyCount=5
click for full engine βΈ
cc-factory-watch/classifiedβ in-dev
40 facts Β· last edge 10s
cc.factory10s
state=NO-FACTORY
cc.factory10s
state=NO-FACTORY
cc.factory30s
state=NO-FACTORY
click for full engine βΈ
cc-factory-watch/alertsβ in-dev
40 facts Β· last edge 18s
tick18s
condition=FACTORY-STOPPED
tick25s
condition=FACTORY-STOPPED
tick48s
condition=FACTORY-STOPPED
click for full engine βΈ
system-health/healthβ in-dev
40 facts Β· last edge 18s
health.snapshot18s
autonomyLadder=L2
health.snapshot5m
autonomyLadder=L2
health.snapshot10m
autonomyLadder=L2
click for full engine βΈ
pipeline-watchdog/watchdogβ in-dev
40 facts Β· last edge 21s
watchdog.breach21s
handoff=transcriber->librarian
watchdog.observed21s
healthy=false
watchdog.breach1m
handoff=transcriber->librarian
click for full engine βΈ
.driver/driverβ in-dev
20 facts Β· last edge 11m
edge11m
write-path conformance red-team: SHIP @e62dfdc β all 6 focus areas HOLD (fact-own-at wins; nextSeq=bounded tail-read not O(n); no reader keys on seq/order; mixe
edge16m
privileged-write conformance fix BUILT: fix/privileged-write-conformance @e62dfdc (4 raw appendFileSync sites -> kit journal door; shapes preserved with consume
tick25m
dispatched privileged-write conformance fix (fix/privileged-write-conformance off feat/log-projection-convention): route librarian/calibration rate-server, wiki
click for full engine βΈ
summary-judge/verdictsβ in-dev
40 facts Β· last edge 3.6h
summary-judge.verdict3.6h
T33iI6izAKw
summary-judge.verdict3.6h
QCd2k7WWfkI
summary-judge.verdict5.0h
Gmc4rlKx0pA
click for full engine βΈ
sensor/itemsβ in-dev
40 facts Β· last edge 3.9h
video.appeared3.9h
Mixture of Experts: The AI Trick Eating the World's Memory
video.appeared3.9h
Finally, an Open Standard for the Karpathy LLM Wiki is HERE
Nick's Google Ads Reality Is Locked Behind 3 Access Points He Can't Unify
fact6.5d
tag=ranking.resolved
click for full engine βΈ
story-engine/storiesβ’ retired
40 facts Β· last edge 7.0d
fact7.0d
No heartbeat: can't tell if an engine is writing without digging through logs
fact7.0d
Agent can't verify its own writes β optimistic updates go unconfirmed
fact7.0d
Every dev session starts blind β no canonical view of which engines are healthy
click for full engine βΈ
wiki-hooks/hooksβ’ retired
40 facts Β· last edge 7.0d
sensor.scanned7.0d
sha=f1f2d569eac2739e4a1024f0c12262e9a42a5d19
page:deleted7.0d
wiki/concepts/_TrustDemoTmp.md
sensor.scanned7.0d
sha=7a7639589afff6dea63b2b19a7d0fade9564a8b4
click for full engine βΈ
idea-capture/raw-ideasβ’ retired
40 facts Β· last edge 7.0d
fact7.0d
tag=idea.captured
fact7.0d
tag=idea.captured
fact7.0d
tag=idea.captured
click for full engine βΈ
github-source/gh-librarianβ’ retired
1 facts Β· last edge 8.0d
gh-librarian.wrote8.0d
repo=automate-friday/automate-friday-platform
click for full engine βΈ
github-source/githubβ’ retired
20 facts Β· last edge 8.0d
github.observed8.0d
Progressive-trust ramp: opt-in UI (toggle a skill to on_first_use + ratify button)
github.observed8.0d
Tool: System Manifest β the platform's living self-model (primitive grammar + intended topology + build-state)
github.observed8.0d
Tool: Convergence Auditor β diff the real system against the System Manifest, emit a drift report
click for full engine βΈ
Tasks 2 live Β· 0 orphaned
π’ 2 live Β· 0 orphaned Β· 12 tmux sessions
tasks-as-living-conversations β each task's owning Claude Code session (tmux), its TASK.md, and any decision card it maps to. A task whose session died shows orphaned, never hidden.
THE DRIVER β charter (agreed with Jacob 2026-07-01 evening)driver
β live β session up 4.6h
attach: tmux attach -t driver
/Users/jh/code/automate-friday/.driver/CHARTER.md
Prod deployment public snapshot on Cloudflare Pages
π’ prod live + verified Β· 40s ago
the live URL is a tailnet address for THIS machine; PROD is the published snapshot below (so agents can use it after this session ends). Verified = the deployed URL was fetched and its content hash matched.
a skill sub-agents can find, and we track if they use it. Adoption count IS the eval (incl. the standard-report skill itself).
tailscale-report14 total
today 0 Β· 7d 0 Β· last used 19.0d ago
make-engine9 total
today 0 Β· 7d 9 Β· last used 2.1d ago
automate-friday-wiki:wiki-publish3 total
today 0 Β· 7d 3 Β· last used 14.0h ago
chrome-devtools-axi3 total
today 0 Β· 7d 3 Β· last used 2.5d ago
spec-driven3 total
today 0 Β· 7d 0 Β· last used 21.5d ago
tts-on3 total
today 0 Β· 7d 0 Β· last used 13.3d ago
update-config3 total
today 0 Β· 7d 0 Β· last used 19.4d ago
tribunal-review-admin2 total
today 0 Β· 7d 0 Β· last used 21.4d ago
wiki-publish2 total
today 0 Β· 7d 2 Β· last used 14.7h ago
architecture-review1 total
today 0 Β· 7d 1 Β· last used 4.1d ago
auto-red-team1 total
today 0 Β· 7d 0 Β· last used 19.4d ago
calibrate-judge1 total
today 0 Β· 7d 1 Β· last used 3.3d ago
career-ops1 total
today 0 Β· 7d 1 Β· last used 2.5d ago
claude-in-chrome1 total
today 0 Β· 7d 1 Β· last used 2.5d ago
competitive-analysis-for-builders1 total
today 0 Β· 7d 0 Β· last used 39.8d ago
design-md-picker1 total
today 0 Β· 7d 0 Β· last used 27.1d ago
dev1 total
today 0 Β· 7d 1 Β· last used 2.6d ago
driving-tmux-claude-sessions1 total
today 0 Β· 7d 0 Β· last used 7.3d ago
effect-development1 total
today 0 Β· 7d 0 Β· last used 19.5d ago
engine1 total
today 0 Β· 7d 1 Β· last used 4.2d ago
harvest-conversation-type1 total
today 0 Β· 7d 0 Β· last used 9.5d ago
image-exploration1 total
today 0 Β· 7d 0 Β· last used 27.1d ago
loop1 total
today 1 Β· 7d 1 Β· last used 4.6h ago
request-approval1 total
today 0 Β· 7d 0 Β· last used 11.0d ago
transcribe-video1 total
today 0 Β· 7d 0 Β· last used 27.2d ago
validate1 total
today 0 Β· 7d 1 Β· last used 4.5d ago
vercel:deploy1 total
today 0 Β· 7d 0 Β· last used 22.0d ago
Decisions 9 open Β· your call
π’ own log Β· 9 open
mc links v1
GO?
What
Mission Control v1 linking: every card/report/engine/agent row links to its LIVING artifacts β the owning Claude Code conversation (tmux session or resume id), its TASK.md, the engine dashboard, and the wiki page. Tasks-as-conversations become a first-class column (the desk).
Build the model-routing service (monorepo-wide): task-class -> cheapest-capable model with caps + fallback order Fable (conductor/judge/hard-verify) -> Opus specialized CC plan (workhorse) -> Codex (cross-vendor red-team + bulk) -> Gemini (multimodal/judge diversity) -> OpenRouter (spot). Per-task $ telemetry lands on the board.
Send Nick the automated-marketing-campaign pitch. A dedicated Claude Code session (tmux: nick-pitch) holds the LIVING draft β attach to refine: tmux attach -t nick-pitch. Draft + rehearsal-vs-respond-as-nick registered as a report when ready.
A standard FREEZE DOOR: `control.freeze` / `control.resume` as FACTS an engine's supervisor honors (per the thermostat-real doctrine β disable/tune/halt are facts on the log, never out-of-band state), added to the engine template so every engine inherits a uniform way to be paused from the cockpit without a bespoke kill for each one. Mission control stays a VIEW; it would only render freeze STATE, never reach in to flip it.
Why now
Jacob asked for a way to freeze an engine from the grid. The honest way is a doctrine-conformant fact door in the template, not a one-off script β building it once in engines/_template makes freeze a first-class, auditable capability across the whole fleet.
Approve building the freeze door into engines/_template (control.freeze/control.resume facts + supervisor honor) and retrofitting the pipeline engines (youtube-watcher / transcriber / librarian)?
Mission Control is published to prod at af-mission-control.pages.dev β but the deploy token can't edit Cloudflare Access, so the URL is unlisted-but-PUBLIC until you gate it. It shows internal business state (threads, decisions, engine health).
Why now
It went to prod tonight so agents can use it after this session; the ~2-minute Access gate is the one thing only you can do (dashboard-only, the token can't).
Source
prod publisher / Cloudflare
Gate af-mission-control.pages.dev with Cloudflare Access (your email), and optionally add mission.automatefriday.com?
Open the Codex fan-out (10x compute) once mission control v1 is the intake surface. The business map's empty slots become the hole-list; the report intake becomes the register β so a wide fan-out has solid holes to contribute to instead of scattering.
Why now
The 10x compute exists but has had no solid hole to contribute to; mission control v1 (business map + report intake) is what turns that compute into filled slots and registered reports.
Source
codex fan-out / mission control v1
Once mission control v1 is the intake β go/no-go on the Codex fan-out, and how wide?
The Tier-1 onboarding-bench front-door reliability test was blocked on op reauth β now unblocked. An overnight run resumes frontier work; its GQM is already defined (pass/fail aha, pave-list as deliverable, observe-not-score).
Why now
The blocker is cleared and the GQM is already shown/agreed β the only thing missing is the word go.
Source
onboarding-bench
Dispatch the onboarding-bench overnight run tonight?
Interactive op (1Password) works now, but headless agents (driver loop, cron, overnight runs) can't use the desktop biometric session β they need the existing service-account token in their env once.
Why now
It unblocks agents self-serving keys, healthchecks.io self-provisioning, and RentRedi rung 2 β several threads are waiting on this one pointer.
Source
vault / headless agents
Where does the op service-account token live (a 1P item name), or is it OK to store it in the login keychain for agents?
The cc-control repo has a merge conflict on branch janitor-backup-2026-07-01 that an agent cannot safely resolve β it needs Jacob's hand to decide which side wins.
Why now
It is blocking a clean commit of cc-control work; the janitor pass flagged it as the one surface it could not reconcile itself.
Source
janitor pass / cc-control
Resolve the cc-control merge conflict on janitor-backup-2026-07-01 yourself, or tell the agent which side to take?
Business map 10 registered Β· 2 unregistered Β· 7 holes to fill
π’ registry census fresh Β· updated 13s ago
every business function is a slot β registered = a live engine in the census, unregistered = a real engine with no published card, PLACEHOLDER = a hole to fill (the fan-out's hole-list).
slot
engine
what fills this
Fleet mission control
mission-controllive Β· ENGINE
see the whole business at a glance + decide
Engine registry / discovery
registrylive Β· ENGINE
census + health of every engine
Content pipeline Β· watch
youtube-watcherlive Β· PARTIAL
watch sources for new material (frontier engine #1)
Content pipeline Β· transcribe
transcriberlive Β· ENGINE
turn media into text
Content pipeline Β· file to wiki
librarianlive Β· ENGINE
fold knowledge into the wiki
Wiki maintenance
wiki-sweeplive Β· ENGINE
keep the knowledge base clean + self-managing
Idea capture
ideaslive Β· PARTIAL
capture sparks into the flow
Conversation β knowledge
conversation-refinerystale Β· ENGINE
refine conversations into durable facts
Idea routing
idea-librarianstale Β· ENGINE
route ideas to the right home
Sub-agent telemetry
tool-telemetryunregistered
which agents/tools fire across the fleet
Personal finance
rentredi-expensesstale Β· ENGINE
trusted monthly expense book
Thread driver / conductor
.driver loopunregistered Β· not-yet-an-engine
drive open threads to done so Jacob stops driving
VPS / infra health
PLACEHOLDER
unattended box health w/ recovery ladder (frontier engine #2, HumbleBrands)
Nick CRM (barbershop + swim school)
PLACEHOLDER
reconcile + grow Nick's bottom line (frontier engine #3)
Social sensing (X bookmarks β ideas)
PLACEHOLDER
triage Jacob's bookmarks into the idea flow
Content pipeline Β· draft + ratify + post
PLACEHOLDER
reply in operator voice, one-tap human ratify (content-pipeline-shipping)
Taxes / CPA
PLACEHOLDER
keep the books tax-ready; 1040 + quarterlies
HumbleBrands client-health
PLACEHOLDER
$1k/mo support client β agent health monitor
Narra (audiobooks in your voice)
PLACEHOLDER
demand-validated product; concierge β engine
Reports 4 registered Β· latest first
π’ own log Β· 4 registered
reports get built anywhere β they REGISTER here. File one from any session: node engines/mission-control/report.mjs "title" "path-or-url" --thread X --depth L2
awrite-pat Β· session cb6b70f9 Β· last tool 11m ago Β· 28 calls
reading, no output yet
general-purposelikely delivered
a281d7a6c4 Β· session cb6b70f9 Β· last tool 18m ago Β· 40 calls
recently finished
general-purposelikely delivered
a4b608750e Β· finished 36m ago Β· 90 calls
mc-v02likely delivered
amc-v02-88 Β· finished 39m ago Β· 86 calls
hook-layer-redteamlikely delivered
ahook-laye Β· finished 1.1h ago Β· 18 calls
chain-fix-redteamlikely delivered
achain-fix Β· finished 1.6h ago Β· 41 calls
chain-lowrisk-fixeslikely delivered
achain-low Β· finished 1.6h ago Β· 56 calls
Engines 7/10 live Β· sacred pipeline highlighted
π’ registry census fresh Β· updated 13s ago
sacred pipeline
youtube-watcherlive Β· PARTIAL
β
transcriberlive Β· ENGINE
β
librarianlive Β· ENGINE
rest of the fleet
conversation-refinerystale Β· ENGINE
idea-librarianstale Β· ENGINE
ideaslive Β· PARTIAL
mission-controllive Β· ENGINE
registrylive Β· ENGINE
rentredi-expensesstale Β· ENGINE
wiki-sweeplive Β· ENGINE
Driver tmux session alive
π’ driver alive Β· last advance 11m ago
edge 2026-07-02T06:11:01Z
write-path conformance red-team: SHIP @e62dfdc β all 6 focus areas HOLD (fact-own-at wins; nextSeq=bounded tail-read not O(n); no reader keys on seq/order; mixed legacy+seq lines tolerated permanently; safe to merge WITHOUT restarting live rate-server :3005; exam cwd-independent; checker+kit untouched β green is genuine; pre-existing failures byte-identical on base). Latent non-blocking: seq starts at 1 mid-file on migrated legacy logs β never a primary key. ALL FOUR overnight branches now verified SHIP; trunk line updated
edge 2026-07-02T06:05:05Z
privileged-write conformance fix BUILT: fix/privileged-write-conformance @e62dfdc (4 raw appendFileSync sites -> kit journal door; shapes preserved with consumers checked; RED 4 violations -> GREEN 32/32 + conformance PASS 270 files; exemption case argued and correctly rejected β check has no exemption machinery; librarian core untouched, validated on scratch :3991). Red-team dispatched (shape spread-order, legacy seq semantics, mixed-format concurrency, exam path fragility, checker-not-weakened) Β· NEW pre-existing finding #2: layout+tick-purity FAIL on mission-control/log/deploy.jsonl (50% restated levels, tick-spam) on base ref β mission-control session still actively editing (10 uncommitted); NOT dispatching onto their surface; queue for their retrofit or a thread once they commit
tick 2026-07-02T05:56:26Z
dispatched privileged-write conformance fix (fix/privileged-write-conformance off feat/log-projection-convention): route librarian/calibration rate-server, wiki-auto-intake, conversation-dispatcher fact appends through the kit door; sacred constraint = librarian calibration sidecar only, no service restarts; exemption-over-refactor allowed for deliberate exam writers
edge 2026-07-02T05:46:46Z
#33 increments 1+5 COMPLETE: feat/hook-intervention-layer = 95648f5 + 2b95f3a (drift->unknown attribution + drift counter incl. pin-blind near-miss case; 4KB/100-line constraints cap with truncation marker β red evidence: unbounded version injected 15,125 bytes from a 14KB file; hook-stream 12/12, injector 20/20, all gates green; one builder stall = zsh =word expansion abort, recovered clean). Branch merge-ready, stacks on feat/log-projection-convention Β· NEW FINDING (pre-existing, not this branch): _kit journal.test.ts CONFORMANCE red on clean HEAD β privileged-write-path violations by librarian/calibration/rate-server.mjs, wiki-auto-intake/conformance.mjs, conversation-dispatcher (fact-log append-sprawl class); needs an owner/thread
edge 2026-07-02T05:18:11Z
hook-layer red-team: SHIP β all 6 focus areas HOLD (injector fail-open on every broken input incl. kill-switch; constraints channel repo-gated; ring ~1.3ms fail-open bounded; worktree clean β mission-control dirt = main checkout pre-existing). One honest caveat: ring rider is opt-OUT-on-merge (activates on live Pre/PostToolUse path; HOOK_STREAM_OFF=1 disables) β flagged for Jacob merge call. Builder resumed for 2 low-sev follow-ups: runtime drift->unknown+counter (protects autonomy metrics from silent mis-attribution on CC version bumps) + 4KB constraints size-cap
edge 2026-07-02T05:11:44Z
#33 increments 1+5 BUILT: feat/hook-intervention-layer @95648f5 (extends live proven-path-subagent.py + tool-telemetry engine β use-existing-surfaces held; schema empirically pinned incl. agent_id/agent_type confirmation + new prompt_id/permission_mode fields; shadow-first: injector activation = proposed settings repoint awaiting Jacob; ring observe substrate rides existing hook on merge; 10/10+16/16+15/15 green with drift mutation test). Red-team dispatched (blast-radius focus: SubagentStart fail-open, ring rider on every tool call, constraints-file injection channel)