This is a read-only board of every project and idea I have. It updates itself. My job is to work; the board's job is to remember where everything stands.
What updates by itself
Every night at 03:30 the main PC (MATICORE) scans its folders and GitHub, reads every Claude Code session and commit from the day, and rewrites the brief of each project that had activity: what it was doing, next steps ticked or added, open questions, one new log line. A project seen for the first time gets a first brief.
The updated line at the top says when that last happened. If it is older than a day, the PC was off, asleep or signed out at 03:30; it catches up the next time it is on.
The heatmap, "last activity", the machines column and "Last exchange" come straight from the scans; nothing there is written by hand.
What I do
Pick a project here. Sort by last activity, or filter for "has next steps" or "stale".
Work in Claude Code on MATICORE, in the project's own folder. Continue its existing session; from another device, continue that same session through Remote Control. Only a brand-new session needs the resume prompt (copy button on the project page) as its first message.
Push when done. That is the only habit. It keeps the work reachable from every machine.
Reading a project page
Where it stopped is written from the last session or commit. Last exchange underneath is the literal last message pair, automatic.
Next steps and Open questions are the to-do list and the decisions never made. They are for reading, not for filling in here.
(?) means Claude inferred it rather than read it. Treat those as guesses until confirmed.
A dashed status chip means the status is a guess too; a solid one was set by hand.
main* in the machines column means that clone has uncommitted changes.
Answering a question, correcting a mistake
Say it in the project's own Claude Code session, in plain words: "the map is personal, not for tourists" or "that next step is done, we shipped it." The nightly run reads the session and updates the brief. Nothing else to do. For anything about the board itself (wrong category, wrong status, a project that should be dropped), say it in the northland-inventory session instead.
A new idea
Tell Claude in the northland-inventory session: "new idea: ..." It writes a short brief and the idea appears here as an idea the next morning. When the idea gets a folder or repo, the same brief carries over.
Work done somewhere other than MATICORE
Sessions continued through Remote Control count as MATICORE sessions. Nothing to do.
Commits pushed from the laptop, the GPD or a claude.ai session show up the next night, once MATICORE fetches them.
Sessions run directly on the laptop or GPD appear only if that machine runs the nightly too, and then only by title.
Signing in (projects.northland.eco)
Enter an allowed email, get a code by email, type it. Codes are single-use and the newest one replaces the older ones.
Supabase sends only a few sign-in emails per hour. If it refuses, wait an hour or use a code you already have via "I already have a code".
The browser remembers the sign-in. "sign out" is at the bottom of the page.
Only emails in the pm_members table can see data. Everyone else gets an empty page.
If the board looks wrong
Check the updated line first. Stale board usually means the nightly did not run.
To refresh by hand on MATICORE: open the northland-inventory folder in PowerShell and run python nightly.py --hub. It takes about ten minutes and pushes here when done.
A local copy that works without internet is dashboard.html in that folder.