Free for 30 days on Scale.Start free
Agent second brain, persistent context system
Every step in the template

Agent second brain, persistent context system

A workspace your agent reads at session start so you stop re-explaining yourself. After a month: the agent knows who you are, how you work, what's in flight, what you've decided. The conversation starts where the last one left off.

Outcome

A workspace your agent reads at session start so you stop re-explaining yourself. After a month: the agent knows who you are, how you work, what's in flight, what you've decided. The conversation starts where the last one left off.

Time60 min setup, ongoing ~10 min/day to keep currentDifficultyintermediateForFounders, executives, operators, individual contributors who use an agent as a thought partner across many sessions per week.
How this works

Open it, hand it to your agent, walk the steps.

Paste this to your agent (Claude / Cursor / Codex)
You are the agent running on the "Agent second brain" template workspace, connected via MCP at your-org/agent-second-brain.

Your job: read Context + Tasks + Memory at the start of every session so you stop re-asking the operator who they are. Drive the daily / weekly scripts. Never edit Context directly. Never delete Memory entries.

User-loop protocol:
- You propose. The operator decides. Never edit Context sections (about-me, company, how-to-work-with-me, voice profile, thesis). Those are operator-owned. Suggest edits as a Status entry; the operator commits them.
- Session start: read Context (all sections), Tasks (rows where Status != Completed), Memory (last 2-3 weeks of entries), Status (latest morning queue + weekly review). One sentence: what's current + what's active. Flag overdue. Then wait for direction.
- Daily 8 AM (morning_sync): read Context + Tasks + Memory recent. Draft the morning queue (today's plan + overdue + gaps worth keeping in mind, under 200 words). Append to Status as a new section.
- Daily 9 PM (memory_update): the operator writes notes into a temporary daily-notes section in Status during the day. Read that, run through Claude to extract 2-5 clean bullet points, append to Memory with the date as a heading. Clear the daily-notes section.
- Sunday 6 PM (weekly_review): read Memory (the week's entries) + Tasks (completed + active + overdue). Draft a 150-200 word weekly review into Status: what moved forward, what's open, patterns worth surfacing.
- End of every working session, write 1 paragraph to Status: what was discussed, what was decided, anything that should go into Memory tonight.

Don't touch:
- Context sections (operator owns the canonical version; agent only reads + suggests edits via Status).
- Memory entries from prior days (append-only; never edit or delete).
- Tasks rows where Status=Completed (those are history).

First MCP tool calls:
1. get_doc(workspace_slug="agent-second-brain", surface_slug="context")
2. list_rows(workspace_slug="agent-second-brain", surface_slug="tasks")
3. get_doc(workspace_slug="agent-second-brain", surface_slug="memory")
4. get_doc(workspace_slug="agent-second-brain", surface_slug="status")
The template · 5 steps

Top to bottom. Each step has tasks, pointers, gotchas.

Fill Context, one section at a time

30 min one-time

Context is the operator's permanent record. Five sections: About me, About company, How to work with me, Voice profile, Thesis. The setup script (setup_second_brain.py) can interview you and draft each section from your answers, but the agent grounds harder when the operator writes the first draft. Spend 20 minutes.

Tasks
  • Open Context (doc). Note the five seeded sections: About me, About company, How to work with me, Voice profile, Thesis.
  • About me: 3-4 short paragraphs. Who you are, role, how you think, what you're focused on the next 90 days.
  • About company: 3-4 paragraphs. What it does, stage / size, current focus.
  • How to work with me: bullet form. Communication style, tone preferences, what to avoid (em dashes, hedging, sycophancy), formatting preferences.
  • Voice profile: 1-2 paragraphs + 3-5 examples of how you write. Paste actual sentences you've written.
  • Thesis: 1-2 paragraphs of your strategic views + market bets.
  • Optional: run python setup_second_brain.py to have Claude interview you and draft sections from your answers. Edit afterward.
Gotchas
  • Generic Context produces generic agent. 'I am a founder building software' is no help. Be specific.
  • Don't paste confidential info into Context. It goes through the Anthropic API every session.

Seed Tasks with what's actually in flight

10 min

Tasks is the table the agent reads before responding to anything. It's a live working list, not a parking lot. 5-10 rows. Each row: Task (one line), Priority, Status (Active / In Progress / Completed), Due Date, Notes.

Tasks
  • Open Tasks (table). Note the columns: Task, Priority, Status, Due Date, Notes.
  • Add 5-10 rows. Things you'll actually work on in the next 1-2 weeks. Skip things that aren't in flight.
  • Set Priority (High / Medium / Low) honestly. If everything is High, the priority signal is useless.
  • Set Status=Active on the live items; In Progress on what you're working today; leave Due Date blank if open-ended.
Gotchas
  • An 80-item Tasks table is noise. The agent reads it before every session; a long table dilutes the signal. Archive or delete after a row is Completed.
  • Don't include personal errands. The second brain is for the work that benefits from agent context.

Wire the three CueAPI scripts

30 min

Three scripts make the system live: morning_sync (8 AM), memory_update (9 PM), weekly_review (Sunday 6 PM). All read Context + Tasks + Memory + Status, all post back to Status (or Memory). CueAPI is the recommended scheduler; local cron also works.

Tasks
  • Open Setup guide (doc, the static how-to in this workspace) and copy morning_sync.py, memory_update.py, weekly_review.py into a local folder
  • Run pip install anthropic requests python-dotenv
  • Create .env with DOCK_API_KEY, DOCK_WORKSPACE_SLUG=agent-second-brain, ANTHROPIC_API_KEY, SLACK_WEBHOOK_URL (optional), CLAUDE_MODEL=claude-sonnet-4-6, MEMORY_SURFACE=memory, DAILY_NOTES_SURFACE=status
  • Generate a Dock API key at trydock.ai/settings/api
  • pip install cueapi cueapi-worker, then cueapi login
  • cueapi create --schedule '0 8 * * 1-5' --name 'second-brain-morning-sync' --handler ./morning_sync.py
  • cueapi create --schedule '0 21 * * *' --name 'second-brain-memory-update' --handler ./memory_update.py
  • cueapi create --schedule '0 18 * * 0' --name 'second-brain-weekly-review' --handler ./weekly_review.py
  • cueapi-worker start, supervise it (launchd / systemd / Render Background Worker for cloud).
Gotchas
  • Verify cueapi-worker flag syntax at docs.cueapi.ai before shipping.
  • If you go local-cron instead of CueAPI: closed laptop overnight = no memory update. CueAPI in the cloud is the right pick here.
Agent prompt for this step
Run a first morning sync. Read Context (all sections), Tasks (Status != Completed), Memory (last 2-3 weeks). Draft a 200-word morning queue: today's plan based on active Tasks, anything overdue, one or two gaps worth keeping in mind. Append as a new section to Status with today's date as the heading. Post a Status entry summarizing: morning sync drafted, X active tasks, Y overdue.

Use the agent normally for a week

1 week of normal use

The system is built. Now it needs use. Open a chat with Claude (Cursor, Claude Code, Claude Chat, any MCP client). Have the agent read the workspace at session start. Talk about work. End each session with a Status paragraph. Let memory accumulate.

Tasks
  • Day 1: open a chat, tell the agent the workspace slug, ask it to read Context + Tasks + Memory + Status before responding. Confirm it reads all four before its first reply.
  • During the day: jot anything worth remembering into the bottom of Status under a 'Daily notes' heading. Decisions, things learned, context that should persist.
  • End of day: 9 PM script picks up the daily-notes section, processes through Claude, appends 2-5 bullet points to Memory.
  • Day 7: Sunday 6 PM script reads the week's Memory + Tasks state and drafts a weekly review into Status.
  • Day 8: open Context. After a week of use, you know what to add or fix. Edit How to work with me first; that's where the highest-leverage changes are.
Gotchas
  • Don't skip the nightly memory update. The Memory log compounds. First week feels empty; month three is indispensable.
  • If the agent ignores Context, it didn't actually read it. Most MCP clients show the tool calls; confirm get_doc(surface_slug='context') ran before the first response.

Iterate Context after week one

20 min after week one, then quarterly

After 7 days of use, you know what's missing or wrong in Context. 20 minutes of edits compound. Most-leverage section: How to work with me. Pay attention to which agent responses felt off and add the inverse to How to work with me.

Tasks
  • Open Context. Re-read each section as if you were the agent landing on this workspace cold.
  • How to work with me: did the agent hedge when you wanted directness? Add 'no hedging, no I think.' Did it bullet-point too much? Add 'prose, not lists, unless explicitly asked for a list.'
  • Voice profile: paste 2-3 more examples of your writing if drafts in the agent's voice felt generic.
  • Thesis: refine. Your views move faster than you think; what felt sharp 3 months ago often feels muddled now.
  • About me / About company: update with material changes. New role, new fundraise, new focus.
Gotchas
  • Iterate based on agent failures, not preference. If the agent hedged once, fine. If it hedges every response, that's a How to work with me edit.
  • Don't rewrite the whole section. Add one specific line that addresses the failure mode.
FAQ

Common questions on this template.

Do I need all four surfaces?
Yes. Each does one thing: Context (operator-owned identity), Tasks (live work), Memory (append-only log), Status (agent's working log + scheduled outputs). Removing any breaks the agent's session start ritual.
What if I don't write daily notes?
Memory accumulates more slowly but still works. The agent will write summary entries to Memory after long sessions; the 9 PM memory_update script is a no-op when there are no daily notes to process.
Can multiple agents share one second brain?
Yes. Connect each agent (Claude in Cursor, Claude Code, Codex) to the same workspace via MCP. They all read Context + Tasks + Memory at session start. Status is shared so each agent can see the others' working log.
Where does Voice profile fit in?
Voice profile lives in Context. When the operator asks the agent to draft an email or LinkedIn post in their voice, the agent reads Context, grounds against Voice profile, and matches the tone + sentence structure + what-to-avoid notes.
What about cross-agent or cross-workspace memory?
This template is one operator + one workspace. To share Memory across multiple workspaces (e.g. a personal brain + a company brain), use Dock cross-refs ([[slug]] in any doc body links to another workspace). Don't try to merge Memory across workspaces, the agent ends up reading too much context.

Open this template as a workspace.

We mint a fresh copy in your org with the steps as table rows, the pointers as a separate table, and the brief as a doc. Bring your agents, start checking off boxes.