Agent Brain
Starter kit
First committed by Railly
Published in Railly/agent-brain. Publisher page
22 GitHub stars
What it is
An agent-powered knowledge system built on Obsidian + Claude Code + Codex
AutoGineer overview, from the brain’s own files
Agent Brain is a structured template designed to eliminate cold starts for AI coding agents by providing a persistent, local-first knowledge base. Built on Obsidian and Markdown, it organizes personal and professional context into a seven-folder vault structure. The system uses a canonical skill architecture where workflows are defined once and mirrored across different agent runtimes, such as Claude Code and Codex. It includes a suite of 15 predefined workflows covering daily planning, knowledge management, content creation, and reflection, all driven by explicit configuration files that define user identity, goals, stack preferences, and recurring failure patterns.
How it works
Memory model: Markdown vault
AutoGineer overview, from the brain’s own files
The system organizes information into seven specific folders: Inbox for raw captures, Journal for daily logs, Garden for evergreen notes, Projects for active work, Areas for ongoing context, Content for drafts, and System for configuration. Workflows are defined as canonical markdown files in a central directory and synchronized to specific agent-compatible folders. Users interact with these workflows via slash commands. The system maintains context through dedicated files that agents read to understand the user's identity, technical stack, and communication preferences.
| Folder | Role | Files |
|---|---|---|
| .claude | agent-config | 30 |
| docs | docs | 8 |
| examples | examples | 4 |
| scripts | scripts | 2 |
| .agents | folder | 15 |
| vault | folder | 22 |
Requirements
Runtimes: Node.js
Works with: Claude Code, OpenAI Codex, GitHub Copilot, Cursor, Kiro, OpenCode, Amp, Cline, JetBrains Junie, Devin (ex-Windsurf)
Set it up
- Download the brain as a ZIP and unzip it where you keep your notes or project: https://mp-staging.autogineer.com/agent-brains/railly/agent-brain/download
Claude Code reads CLAUDE.md from this folder automatically.
cd agent-brain && claude
AutoGineer scanned these files at commit 7e27fe3.
- Not scanned by AutoGineerThe author’s README also describes installing it from a clone of its repository. Read its install section: AutoGineer did not scan that path. https://github.com/Railly/agent-brain/blob/7e27fe39db729f6c45411b4cbf00767ea87b58a7/README.md#quick-start
First committed by Railly. Published in Railly/agent-brain. Licence: MIT License.
Usage
AutoGineer overview, from the brain’s own files
- Automating daily stand-ups and planning
- Managing project context and technical documentation
- Processing web research into atomic notes
- Reflecting on recurring work patterns to improve performance
- “/morning”
- The agent provides a briefing including calendar events, tasks, and Most Important Tasks (MITs) for the day.
- “/ship”
- The agent commits and pushes the current work, then automatically logs the activity into the daily journal.
- “/challenge”
- The agent analyzes a proposed idea and argues against it to prevent sycophancy and improve critical thinking.
- “/inbox”
- The agent processes raw clips from the inbox folder and converts them into structured, atomic notes in the garden.
Documentation by Railly
Agent Brain
Your AI already knows your stack, repos, goals, and recurring failures. Zero cold starts.
Agent Brain is a local-first personal operating system built with Obsidian and Markdown. It gives Claude Code, Codex, and other coding agents a shared source of context plus reusable workflows for daily work, retrieval, reflection, and shipping.
Read the series:
Obsidian as a Personal OS for AI Coding Agents, the v1 architecture
My Agentic Second Brain, Four Months Later, the v2 update
Releases
Quick start
git clone --branch v2.0.0 https://github.com/Railly/agent-brain.git
cd agent-brain
claude
/init/init asks for your identity, stack, goals, recurring failure, and vault location. It creates the seven-folder vault, installs all runtime adapters, generates personalized context files, discovers local repos, and creates the first daily log.
Already using v1? Follow the non-destructive migration guide. Your notes and personalized context do not need to move.
What changed in v2
The first release proved that a vault could remove the cold start from coding sessions. The second release makes the template easier to evolve without runtime drift.
.agents/skills/is the canonical source for all workflows..claude/skills/exposes generated copies to Claude Code..claude/commands/preserves generated slash command aliases.The seven-folder vault and all 15 workflow names remain unchanged.
bun run checkverifies skills, adapters, documentation, and mirrored templates.Migration copies system surfaces only. It never replaces personal notes or context files.
Vault structure
| Folder | Purpose |
|---|---|
01_Inbox/ | Raw captures from Web Clipper |
02_Journal/ | Daily logs, weekly plans, and reflections |
03_Garden/ | Evergreen concepts, people, tools, and meetings |
04_Projects/ | Active project work |
05_Areas/ | Ongoing contexts such as work, learning, and health |
06_Content/ | Drafts ready to refine or publish |
07_System/ | Context maps, conventions, and system configuration |
Fifteen workflows
Daily: /morning, /today, /log, /ship, /week
Knowledge: /inbox, /relink, /vault-search, /meeting, /research
Thinking: /challenge, /pulse
Content: /draft, /de-ai
Setup: /init
One source, multiple runtimes
.agents/skills/<name>/SKILL.md canonical workflow contract
.claude/skills/<name>/SKILL.md Claude Code skill adapter
.claude/commands/<name>.md v1-compatible slash command aliasRun bun run sync after changing a canonical skill. The generated adapters are normal files so the template works on macOS, Linux, and Windows. bun run check fails if any adapter drifts.
System files
| File | Purpose |
|---|---|
CLAUDE.md | Identity, stack, goals, and operating preferences for Claude Code |
AGENTS.md | The same context for Codex and other agents |
PURPOSE.md | Architecture and design decisions |
HOME.md | Vault dashboard and entry points |
HUMAN.md | Daily workflow guide for the owner |
Core loop
capture -> process -> connect -> use -> reflect/inboxturns raw captures into durable notes./relinkfinds missing relationships./vault-searchretrieves local evidence./shipcommits and pushes work, then logs it to the daily journal./todayand/pulseturn activity into reflection and course correction.
The system improves through explicit files and version history, not opaque model memory.
What this template does not include
The public template is the portable persistence and workflow layer. It does not ship the private queue, daemon, messaging gateways, background workers, or policy engine described in the second article. Those systems are still evolving and should not be presented as a stable starter kit.
It also does not claim to measure software quality. Checks can verify template integrity, and review gates can track findings that escape review, but neither is a complete measure of reliability, maintainability, or user outcomes.
Documentation
| Document | Purpose |
|---|---|
| Setup | New installation and manual setup |
| Migration v2 | Safe upgrade from v1 |
| Commands | All 15 workflows |
| Customization | Add or change canonical skills |
| Philosophy | Principles behind the system |
| Advanced | Boundaries for automation and control planes |
| v2 review | Deterministic checks, migration proof, and lens results |
| Changelog | Release history |
Verify the template
bun run checkThe check fails when a canonical skill is missing, frontmatter is invalid, an adapter is stale, a documented workflow does not exist, or mirrored templates drift.
Built by
Railly Hugo, Software Engineer at Vercel Labs and founder of Crafter Station.
License
MIT
vault/07_System/context-files/anti-patterns.md
Anti-Patterns (Recurring Failures)
Your honest failure patterns. /pulse checks these and warns you when you're repeating them.
How to Use
After each yearly review (or quarterly), add patterns you keep repeating
Be specific: include signals that indicate the pattern is happening
/pulsereads this file and flags matches
Template
{Pattern Name} (x{times it happened})
Pattern: {What you keep doing wrong} Signal: {How to detect it early} Intervention: {What to tell yourself when flagged}
Examples
Overcommitting (x3)
Pattern: Saying yes to everything, then burning out or dropping balls Signal: More than 5 active projects, or 3+ missed deadlines in a month Intervention: "You have {n} active projects. The rule is max 3. Which one gets cut?"
Perfectionism Paralysis (x2)
Pattern: Not shipping because it's not perfect Signal: Same feature/project untouched for 7+ days despite being 80% done Intervention: "Ship it. Version 2 fixes what version 1 reveals."
Learning Without Doing (x2)
Pattern: Consuming courses/articles without building anything Signal: 10+ clips processed, 0 projects started from them Intervention: "You've read about {topic} for {n} days. Build something with it today."
No Recovery Time (x1)
Pattern: Working 7 days a week, no breaks Signal: Commits on 14+ consecutive days, no rest day logged Intervention: "Rest is not laziness. Your best ideas come after breaks."
Add Your Own Below
92 files
- .agents/skills/challenge/SKILL.md
- .agents/skills/de-ai/SKILL.md
- .agents/skills/draft/SKILL.md
- .agents/skills/inbox/SKILL.md
- .agents/skills/init/SKILL.md
- .agents/skills/log/SKILL.md
- .agents/skills/meeting/SKILL.md
- .agents/skills/morning/SKILL.md
- .agents/skills/pulse/SKILL.md
- .agents/skills/relink/SKILL.md
- .agents/skills/research/SKILL.md
- .agents/skills/ship/SKILL.md
- .agents/skills/today/SKILL.md
- .agents/skills/vault-search/SKILL.md
- .agents/skills/week/SKILL.md
- .claude/commands/challenge.md
- .claude/commands/de-ai.md
- .claude/commands/draft.md
- .claude/commands/inbox.md
- .claude/commands/init.md
- .claude/commands/log.md
- .claude/commands/meeting.md
- .claude/commands/morning.md
- .claude/commands/pulse.md
- .claude/commands/relink.md
- .claude/commands/research.md
- .claude/commands/ship.md
- .claude/commands/today.md
- .claude/commands/vault-search.md
- .claude/commands/week.md
- .claude/skills/challenge/SKILL.md
- .claude/skills/de-ai/SKILL.md
- .claude/skills/draft/SKILL.md
- .claude/skills/inbox/SKILL.md
- .claude/skills/init/SKILL.md
- .claude/skills/log/SKILL.md
- .claude/skills/meeting/SKILL.md
- .claude/skills/morning/SKILL.md
- .claude/skills/pulse/SKILL.md
- .claude/skills/relink/SKILL.md
- .claude/skills/research/SKILL.md
- .claude/skills/ship/SKILL.md
- .claude/skills/today/SKILL.md
- .claude/skills/vault-search/SKILL.md
- .claude/skills/week/SKILL.md
- AGENTS.md
- ATTRIBUTION.md
- CHANGELOG.md
- CLAUDE.md
- HOME.md
- HUMAN.md
- LICENSE
- PURPOSE.md
- README.md
- VERSION
- docs/ADVANCED.md
- docs/COMMANDS.md
- docs/CUSTOMIZATION.md
- docs/MIGRATION-v2.md
- docs/PHILOSOPHY.md
- docs/REVIEW-CONVENTIONS.md
- docs/REVIEW-v2.0.0.md
- docs/SETUP.md
- examples/CLAUDE-developer.md
- examples/CLAUDE-personal.md
- examples/anti-patterns-example.md
- examples/pulse-report-example.md
- package.json
- scripts/check-template.ts
- scripts/sync-adapters.ts
- vault/01_Inbox/2026-03-15-building-agents-that-actually-work.md
- vault/01_Inbox/processed/2026-02-20/context-window-management.md
- vault/02_Journal/daily/2026-03-15.md
- vault/02_Journal/reflections/2026-q1-reflection.md
- vault/02_Journal/weekly/week-2026-W11.md
- vault/03_Garden/_MOCs/ai-agents.md
- vault/03_Garden/concepts/context-engineering.md
- vault/03_Garden/concepts/tool-use-patterns.md
- vault/03_Garden/meetings/2026-03-12-team-sync.md
- vault/03_Garden/people/Alex Kim.md
- vault/03_Garden/people/Jordan Rivera.md
- vault/03_Garden/people/Simon Willison.md
- vault/03_Garden/tools/claude-code.md
- vault/04_Projects/dashboard-v2/README.md
- vault/05_Areas/content-creation/ideas/2026-03-15/agent-patterns-thread.md
- vault/05_Areas/health/daily/2026-03-15.md
- vault/06_Content/2026-03-16/dark-mode-ux/blog.md
- vault/07_System/context-files/anti-patterns.md
- vault/07_System/context-files/knowledge-system.md
- vault/HOME.md
- vault/HUMAN.md
- vault/PURPOSE.md
Advantages
- Eliminates cold starts by providing agents with immediate access to user goals, stack, and history. evidence: README.md
- Uses a single source of truth for workflows that synchronizes across multiple agent runtimes. evidence: README.md
Limitations
- Does not include advanced infrastructure like messaging gateways or background workers. evidence: README.md
- Does not provide automated metrics for software quality or reliability. evidence: README.md
Security
Risk level: Medium risk
This brain runs
Agent instructions that run or fetch something (48)
.agents/skills/de-ai/SKILL.md:- Shortened 2 run-on sentences.agents/skills/draft/SKILL.md:If you have a notification hook configured in CLAUDE.md, run it with the summary..agents/skills/inbox/SKILL.md:If you have a notification hook configured in CLAUDE.md, run it with the summary..agents/skills/init/SKILL.md:If no repos found, create the file with an empty table and a note saying "Run /init again after cloning some repos, or add them manually.".agents/skills/init/SKILL.md:- Clip an article and run /inbox.agents/skills/init/SKILL.md:2. Open a new terminal in {path} and run: claude.agents/skills/meeting/SKILL.md:User pastes meeting notes or provides a recording, run `/meeting`:.agents/skills/morning/SKILL.md:Only run these if the tools are available:.agents/skills/pulse/SKILL.md:If you have a notification hook configured in CLAUDE.md, run it with the pulse summary..agents/skills/research/SKILL.md:agent-browser open "https://example.com"· uses the network.agents/skills/ship/SKILL.md:Run `git status` to see changes.agents/skills/ship/SKILL.md:Run `git diff --stat` for overview.agents/skills/today/SKILL.md:| # | Tool | Call | Purpose | |---|------|------|---------| | 1 | Bash | Scan repos under `~/Programming` for today's commits via `git log --oneline --since="today"` per repo | Collect commits | | 2 | Read | `02_Journal/daily/{TODAY}.md` | Check if log exists (preserve Ship Log entries …[+186 chars].agents/skills/today/SKILL.md:{from weekly file, or "No weekly goal set -- run /week"}.agents/skills/week/SKILL.md:Run `/pulse` for full analysis..agents/skills/week/SKILL.md:If you have a notification hook configured in CLAUDE.md, run it with the week summary..claude/commands/de-ai.md:- Shortened 2 run-on sentences.claude/commands/draft.md:If you have a notification hook configured in CLAUDE.md, run it with the summary..claude/commands/inbox.md:If you have a notification hook configured in CLAUDE.md, run it with the summary..claude/commands/init.md:If no repos found, create the file with an empty table and a note saying "Run /init again after cloning some repos, or add them manually.".claude/commands/init.md:- Clip an article and run /inbox.claude/commands/init.md:2. Open a new terminal in {path} and run: claude.claude/commands/meeting.md:User pastes meeting notes or provides a recording, run `/meeting`:.claude/commands/morning.md:Only run these if the tools are available:.claude/commands/pulse.md:If you have a notification hook configured in CLAUDE.md, run it with the pulse summary..claude/commands/research.md:agent-browser open "https://example.com"· uses the network.claude/commands/ship.md:Run `git status` to see changes.claude/commands/ship.md:Run `git diff --stat` for overview.claude/commands/today.md:| # | Tool | Call | Purpose | |---|------|------|---------| | 1 | Bash | Scan repos under `~/Programming` for today's commits via `git log --oneline --since="today"` per repo | Collect commits | | 2 | Read | `02_Journal/daily/{TODAY}.md` | Check if log exists (preserve Ship Log entries …[+186 chars].claude/commands/today.md:{from weekly file, or "No weekly goal set -- run /week"}.claude/commands/week.md:Run `/pulse` for full analysis..claude/commands/week.md:If you have a notification hook configured in CLAUDE.md, run it with the week summary..claude/skills/de-ai/SKILL.md:- Shortened 2 run-on sentences.claude/skills/draft/SKILL.md:If you have a notification hook configured in CLAUDE.md, run it with the summary..claude/skills/inbox/SKILL.md:If you have a notification hook configured in CLAUDE.md, run it with the summary..claude/skills/init/SKILL.md:If no repos found, create the file with an empty table and a note saying "Run /init again after cloning some repos, or add them manually.".claude/skills/init/SKILL.md:- Clip an article and run /inbox.claude/skills/init/SKILL.md:2. Open a new terminal in {path} and run: claude.claude/skills/meeting/SKILL.md:User pastes meeting notes or provides a recording, run `/meeting`:.claude/skills/morning/SKILL.md:Only run these if the tools are available:.claude/skills/pulse/SKILL.md:If you have a notification hook configured in CLAUDE.md, run it with the pulse summary..claude/skills/research/SKILL.md:agent-browser open "https://example.com"· uses the network.claude/skills/ship/SKILL.md:Run `git status` to see changes.claude/skills/ship/SKILL.md:Run `git diff --stat` for overview.claude/skills/today/SKILL.md:| # | Tool | Call | Purpose | |---|------|------|---------| | 1 | Bash | Scan repos under `~/Programming` for today's commits via `git log --oneline --since="today"` per repo | Collect commits | | 2 | Read | `02_Journal/daily/{TODAY}.md` | Check if log exists (preserve Ship Log entries …[+186 chars].claude/skills/today/SKILL.md:{from weekly file, or "No weekly goal set -- run /week"}.claude/skills/week/SKILL.md:Run `/pulse` for full analysis..claude/skills/week/SKILL.md:If you have a notification hook configured in CLAUDE.md, run it with the week summary.
- Medium risk: runs-instruction-instruction-network (.agents/skills/research/SKILL.md:17)
- Medium risk: runs-instruction-instruction-network (.claude/commands/research.md:17)
- Medium risk: runs-instruction-instruction-network (.claude/skills/research/SKILL.md:17)
Attribution and licence
- First committed by
Railly
- Publisher
- Railly Hugo (Community)
- Source
- Railly/agent-brain · commit 7e27fe3
- Licence
- MIT License (files served here)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
- Contributors
- Railly
AutoGineer is not affiliated with or endorsed by Railly.
Download
The ZIP holds the files AutoGineer serves, with ATTRIBUTION.md and the licence. Download agent-brain.zip