My OS on Claude Code
6 months // from first prompt to multi-agent operating system // AIM-2130
$ system-info --stack
model claude-opus-4-6
interface Claude Code CLI
vault Obsidian + Sync (team)
tasks Linear (9 IP / 20+ Todo)
messaging Telegram MTProto + Murmuru E2E
skills 37+ (13 global / 20 team / 9 plugin)
mcp_servers 12 (Telegram, Linear, Notion, Calendar...)
config CLAUDE.md + AGENTS.md
deploy Netlify (via CLI)
agents TeamCreate + Focus Ship sprints
$ █
model claude-opus-4-6
interface Claude Code CLI
vault Obsidian + Sync (team)
tasks Linear (9 IP / 20+ Todo)
messaging Telegram MTProto + Murmuru E2E
skills 37+ (13 global / 20 team / 9 plugin)
mcp_servers 12 (Telegram, Linear, Notion, Calendar...)
config CLAUDE.md + AGENTS.md
deploy Netlify (via CLI)
agents TeamCreate + Focus Ship sprints
$ █
37+
skills
modular automation
12
MCP servers
unified interface
E2E
murmuru
agent messaging
15
team members
via OpenClaw bot
Two Systems, One Protocol
Sasha
Jarvis // 5 agents // ClawDigest
Codex + GVM + Haiku + Opus director
Jarvis // 5 agents // ClawDigest
Codex + GVM + Haiku + Opus director
↔
Alex
Skills OS // 37 skills // MCP mesh
Claude Code + Obsidian + Telegram
Skills OS // 37 skills // MCP mesh
Claude Code + Obsidian + Telegram
↔
Murmuru v2
NATS JetStream // E2E crypto
agent-sasha ↔ agent-jarvis
NATS JetStream // E2E crypto
agent-sasha ↔ agent-jarvis
Timeline
aug 25
first Claude Code
first Claude Code
→
oct 25
skills system
skills system
→
dec 25
MCP integrations
MCP integrations
→
jan 26
team vault + syncs
team vault + syncs
→
feb 26
murmuru + agent teams
murmuru + agent teams
built with
Claude Code · Opus 4.6
Obsidian · Linear · Telegram
Claude Code · Opus 4.6
Obsidian · Linear · Telegram
AI Mindset Team OS
7 roles // shared Obsidian vault // skills as team infrastructure
Team Structure
Founder & Vision
Skills OS, product architecture
Operations Partner
Processes, finance, legal
Partnerships & Growth
Outreach, speakers, B2B
Content & Marketing
Substack, social, design
Growth & B2B Lead
Sales pipeline, consulting
Tech Lead
Infrastructure, bots, deploy
Roles in Obsidian
ai-mindset-2026/Org/HR/roles/
{role} Founder.md
{role} Operations.md
{role} Growth.md
{role} Content.md
...
// each role: responsibilities, permissions,
// Linear access, skill access, vault folders
{role} Founder.md
{role} Operations.md
{role} Growth.md
{role} Content.md
...
// each role: responsibilities, permissions,
// Linear access, skill access, vault folders
What I Do Through Team Skills
// Monday
/AIM-weekly-sync // pull Linear + Calendar + Krisp
→ sync doc in vault + Telegram
// Thursday
/AIM-space-new-members // Notion → bio → TG
// After each call
/AIM-meeting-summary // transcript → tasks
/AIM-summary // team call → action items
// Daily
/AIM-chat-monitor // scan unanswered questions
/AIM-chat-reply // generate answers in voice
/AIM-pm // review, sync, track tasks
/AIM-weekly-sync // pull Linear + Calendar + Krisp
→ sync doc in vault + Telegram
// Thursday
/AIM-space-new-members // Notion → bio → TG
// After each call
/AIM-meeting-summary // transcript → tasks
/AIM-summary // team call → action items
// Daily
/AIM-chat-monitor // scan unanswered questions
/AIM-chat-reply // generate answers in voice
/AIM-pm // review, sync, track tasks
Shared Vault (Obsidian + Sync)
ai-mindset-2026/
aim-rules/ // {rule}, {prd}, {skill}
inbox/ // {research}, {analysis}
meetings/ // {transcript}, {meeting}
Labs/ // 7 cohorts
Org/HR/roles/ // team roles
Org/Partners/ // CRM
.claude/skills/ // team skills source
AGENTS.md // index for AI agents
aim-rules/ // {rule}, {prd}, {skill}
inbox/ // {research}, {analysis}
meetings/ // {transcript}, {meeting}
Labs/ // 7 cohorts
Org/HR/roles/ // team roles
Org/Partners/ // CRM
.claude/skills/ // team skills source
AGENTS.md // index for AI agents
Symlink Architecture
// team skills live in shared Obsidian vault
// synced to all team members via Obsidian Sync
// Claude Code sees them via symlinks:
/notes/.claude/skills/AIM-pm
→ ai-mindset-2026/.claude/skills/AIM-pm/
/notes/.claude/skills/AIM-crm
→ ai-mindset-2026/.claude/skills/AIM-crm/
// global personal skills from home:
/notes/.claude/skills/calendar
→ ~/.claude/skills/calendar
// auto-sync script:
bash sync-team-skills.sh
// creates symlinks for new AIM-* skills
// synced to all team members via Obsidian Sync
// Claude Code sees them via symlinks:
/notes/.claude/skills/AIM-pm
→ ai-mindset-2026/.claude/skills/AIM-pm/
/notes/.claude/skills/AIM-crm
→ ai-mindset-2026/.claude/skills/AIM-crm/
// global personal skills from home:
/notes/.claude/skills/calendar
→ ~/.claude/skills/calendar
// auto-sync script:
bash sync-team-skills.sh
// creates symlinks for new AIM-* skills
CLAUDE.md + Ecosystem
// CLAUDE.md = operating system config
// loaded into every Claude Code session
CLAUDE.md // project rules
~/.claude/CLAUDE.md // global rules
AGENTS.md // vault index for agents
// contains:
naming convention
folder rules
context management protocol
eval system (T/R/C)
Linear awareness layer
Telegram channel rules
skill creation rules
// loaded into every Claude Code session
CLAUDE.md // project rules
~/.claude/CLAUDE.md // global rules
AGENTS.md // vault index for agents
// contains:
naming convention
folder rules
context management protocol
eval system (T/R/C)
Linear awareness layer
Telegram channel rules
skill creation rules
Products
Lab
7 cohorts, AI education
Space
Community, FOS events
Founder OS
21 sessions, AI systems
B2B
Enterprise consulting
Murmuru Protocol
encrypted agent-to-agent communication // v2 production spec
Repository Layout
/packages/
core // envelope + store (SQLite/JSON)
broker-nats // pub/sub + ACK correlation
bridge-telegram // inbound/outbound
bridge-openclaw // session injection
mcp-server // stdio for Claude Code
security // signing + encryption
observability // metrics + tracing
/schema/
envelope.v1.json
ack.v1.json
/docs/
ADR-001-core-bus-nats.md
ADR-002-envelope-crypto.md
core // envelope + store (SQLite/JSON)
broker-nats // pub/sub + ACK correlation
bridge-telegram // inbound/outbound
bridge-openclaw // session injection
mcp-server // stdio for Claude Code
security // signing + encryption
observability // metrics + tracing
/schema/
envelope.v1.json
ack.v1.json
/docs/
ADR-001-core-bus-nats.md
ADR-002-envelope-crypto.md
Envelope V1
{
"schemaVersion": "1.0",
"msgId": "uuid-v4",
"conversationId": "agent-sasha:agent-jarvis",
"senderAgentId": "agent-sasha",
"recipients": ["agent-jarvis"],
"createdAt": "2026-02-19T...",
"payloadCiphertext": "base64...",
"payloadNonce": "base64...",
"signature": "Ed25519...",
// optional:
"ttlSeconds": 3600,
"parentMsgId": "threading..."
}
"schemaVersion": "1.0",
"msgId": "uuid-v4",
"conversationId": "agent-sasha:agent-jarvis",
"senderAgentId": "agent-sasha",
"recipients": ["agent-jarvis"],
"createdAt": "2026-02-19T...",
"payloadCiphertext": "base64...",
"payloadNonce": "base64...",
"signature": "Ed25519...",
// optional:
"ttlSeconds": 3600,
"parentMsgId": "threading..."
}
3 MCP Tools
murmur_send // encrypt + sign + queue to peer
murmur_inbox // decrypt + verify inbound msgs
murmur_peers // list peers + key exchange status
murmur_inbox // decrypt + verify inbound msgs
murmur_peers // list peers + key exchange status
Skills as OS
37+ modular skills // 3 layers // composable automation
Global (personal) -- 13 skills
daily-focus
calendar
context-compact
session-recall
sessions
history
telegram
intro
infocompressor
daily-metaphor
daily-story
undone
therapy
Team (AIM via Obsidian Sync) -- 20 skills
AIM-content-voice
AIM-imagine
AIM-pm
AIM-weekly-sync
AIM-crm
AIM-crm-sync
AIM-chat
AIM-chat-monitor
AIM-chat-reply
AIM-meeting-summary
AIM-summary
AIM-space-new-members
AIM-space-announce
AIM-luma-space-session
AIM-visual
AIM-bio
AIM-utm
AIM-og-covers
AIM-pos-blocks
AIM-stacks-new-site
Plugins (marketplace) -- 9 skills
playground
research
excalidraw
focus-ship-sprint
eval
reflect
brainstorming
systematic-debugging
TDD
Skill Anatomy (real example)
~/.claude/skills/daily-focus/SKILL.md
---
name: daily-focus
description: Daily focus as Telegram message
(#focus) + visual metaphor of the day
allowed-tools: Read, Grep, Bash, WebFetch,
mcp__linear, mcp__telegram
---
# Instructions
1. Read calendar events (MCP)
2. Pull Linear tasks (IP + Todo)
3. Check recent sessions
4. Compose focus message
5. Generate SVG metaphor
6. Send to Telegram #focus channel
---
name: daily-focus
description: Daily focus as Telegram message
(#focus) + visual metaphor of the day
allowed-tools: Read, Grep, Bash, WebFetch,
mcp__linear, mcp__telegram
---
# Instructions
1. Read calendar events (MCP)
2. Pull Linear tasks (IP + Todo)
3. Check recent sessions
4. Compose focus message
5. Generate SVG metaphor
6. Send to Telegram #focus channel
Progressive Disclosure
skill-name/
SKILL.md // 50-100 lines core
references/ // loaded on demand
schema.md
examples.md
edge-cases.md
SKILL.md // 50-100 lines core
references/ // loaded on demand
schema.md
examples.md
edge-cases.md
Symlink Architecture
# team skills synced via Obsidian
AIM-pm → ai-mindset-2026/.claude/skills/AIM-pm/
AIM-crm → ai-mindset-2026/.claude/skills/AIM-crm/
# global skills from home
calendar → ~/.claude/skills/calendar
telegram → ~/.claude/skills/telegram
# sync script:
bash sync-team-skills.sh
AIM-pm → ai-mindset-2026/.claude/skills/AIM-pm/
AIM-crm → ai-mindset-2026/.claude/skills/AIM-crm/
# global skills from home
calendar → ~/.claude/skills/calendar
telegram → ~/.claude/skills/telegram
# sync script:
bash sync-team-skills.sh
Argument Hints
// skills accept arguments via hints:
/linear-action AIM-2130 update
/AIM-meeting-summary [transcript-path]
/AIM-utm [campaign-name]
/intro [channel-context]
/research [topic]
/infocompressor [text-to-compress]
// frontmatter:
argument-hint: "[issue-number]"
disable-model-invocation: true
allowed-tools: Read, Grep, mcp__linear
/linear-action AIM-2130 update
/AIM-meeting-summary [transcript-path]
/AIM-utm [campaign-name]
/intro [channel-context]
/research [topic]
/infocompressor [text-to-compress]
// frontmatter:
argument-hint: "[issue-number]"
disable-model-invocation: true
allowed-tools: Read, Grep, mcp__linear
Composability Flow
/AIM-weekly-sync
↓ reads Linear (MCP)
↓ reads Calendar (MCP)
↓ reads Krisp meetings
↓ composes sync doc
↓ saves to Obsidian vault
↓ sends via Telegram (MCP)
Team Mode
15 people // shared vault // OpenClaw bot // parallel agents
Problem
skills live in Claude Code CLI
team of 15 people
not everyone has CLI installed
how to share capabilities?
team of 15 people
not everyone has CLI installed
how to share capabilities?
Solution: OpenClaw Bot
bot: @aimindset_ops_bot
platform: Telegram
backend: OpenClaw + Claude API
cost: ~$6/month
setup: 1-2 days
skills exposed: all AIM-* team skills
platform: Telegram
backend: OpenClaw + Claude API
cost: ~$6/month
setup: 1-2 days
skills exposed: all AIM-* team skills
Shared Vault (Obsidian)
ai-mindset-2026/
aim-rules/ // rules, PRDs, skills
inbox/ // research, analysis
meetings/ // transcripts, syncs
Labs/ // cohorts (f25, w26...)
Org/ // HR, Partners, Marketing
Products/ // Space, Circle, B2B
.claude/skills/ // team skills source
aim-rules/ // rules, PRDs, skills
inbox/ // research, analysis
meetings/ // transcripts, syncs
Labs/ // cohorts (f25, w26...)
Org/ // HR, Partners, Marketing
Products/ // Space, Circle, B2B
.claude/skills/ // team skills source
Agent Teams in Claude Code
// spawn parallel agents for complex tasks
TeamCreate("research-team")
// 3 agents search in parallel:
agent-1: search Murmuru docs
agent-2: search FOS transcripts
agent-3: search skills & setup
// results merged, playground built
// this presentation = 3 parallel agents
TeamCreate("research-team")
// 3 agents search in parallel:
agent-1: search Murmuru docs
agent-2: search FOS transcripts
agent-3: search skills & setup
// results merged, playground built
// this presentation = 3 parallel agents
Agent Definition
Agent = Task + Resources + Permissions
task: what to do (skill/prompt)
resources: what it can access (MCP/files)
permissions: what it can change (tools)
task: what to do (skill/prompt)
resources: what it can access (MCP/files)
permissions: what it can change (tools)
Focus Ship Sprints
// /focus-ship-sprint
mode: solo | agent-team
duration: 25min focused sprint
parallel: tmux lanes
tracking: auto-commit + session log
integration: Focus Ship app
mode: solo | agent-team
duration: 25min focused sprint
parallel: tmux lanes
tracking: auto-commit + session log
integration: Focus Ship app
Skillplane Pattern
// company-wide skill distribution
company-skills/
shared/ // all projects
marketing/ // domain-specific
operations/
// project connects via symlink:
.claude/skills/shared → ~/company-skills/shared
company-skills/
shared/ // all projects
marketing/ // domain-specific
operations/
// project connects via symlink:
.claude/skills/shared → ~/company-skills/shared
MCP Integration Mesh
12 servers // Obsidian vault // one unified tool interface
Obsidian as the Nervous System
// Obsidian vault = single source of truth
// Claude Code reads/writes directly via Filesystem
CLAUDE.md // loaded into every session
AGENTS.md // vault index for AI agents
.claude/skills/ // team skills (synced)
aim-rules/ // naming, processes, standards
inbox/ // research output destination
meetings/ // Krisp transcripts land here
// everything is a .md file
// Obsidian renders, Claude Code writes
// Obsidian Sync distributes to team
// Claude Code reads/writes directly via Filesystem
CLAUDE.md // loaded into every session
AGENTS.md // vault index for AI agents
.claude/skills/ // team skills (synced)
aim-rules/ // naming, processes, standards
inbox/ // research output destination
meetings/ // Krisp transcripts land here
// everything is a .md file
// Obsidian renders, Claude Code writes
// Obsidian Sync distributes to team
// data flow through Obsidian vault:
Krisp MCP → transcript → meetings/
Linear MCP → cache → memory/
Notion MCP → bios → vault post
Exa/Context7 → research → inbox/
Calendar MCP → focus → Telegram
// Obsidian Sync propagates changes
// team sees updates in real time
// no export step, no API — just files
Krisp MCP → transcript → meetings/
Linear MCP → cache → memory/
Notion MCP → bios → vault post
Exa/Context7 → research → inbox/
Calendar MCP → focus → Telegram
// Obsidian Sync propagates changes
// team sees updates in real time
// no export step, no API — just files
Real Workflow Examples
/daily-focus
Calendar MCP → today's events
Linear MCP → IP + Todo tasks
compose focus message
Telegram MCP → send to #focus
Linear MCP → IP + Todo tasks
compose focus message
Telegram MCP → send to #focus
/AIM-meeting-summary
Krisp MCP → transcript
extract action items
Linear MCP → create tasks
Telegram MCP → send summary
extract action items
Linear MCP → create tasks
Telegram MCP → send summary
/AIM-space-new-members
Notion MCP → member database
synthesize bios
compose announcement
Telegram MCP → post to Space
synthesize bios
compose announcement
Telegram MCP → post to Space
/research
Exa MCP → deep web search
Context7 MCP → library docs
Playwright MCP → scrape pages
compose → save to Obsidian
Context7 MCP → library docs
Playwright MCP → scrape pages
compose → save to Obsidian
/AIM-crm
Notion MCP → partner database
Sheets MCP → deal pipeline
Linear MCP → partnership tasks
compose dashboard
Sheets MCP → deal pipeline
Linear MCP → partnership tasks
compose dashboard
/playground (this!)
3 background agents → search vault
compose HTML + SVG
Filesystem → write file
Bash → open in browser
compose HTML + SVG
Filesystem → write file
Bash → open in browser
Daily Practices
eval system // context management // session tracking // self-improvement
Every Response Footer
◇ ctx: 96K | 104K left | 48% | ●
◻ eval: T:✓ R:✓ C:○
◻ linear: AIM-2054 · BOS speakers · ◐ IP
◻ eval: T:✓ R:✓ C:○
◻ linear: AIM-2054 · BOS speakers · ◐ IP
Context Management Protocol
●
OK <50%
full power
◐
WARN 50-70%
compact mode
○
CRIT >70%
handoff only
Eval Rubric (Binary Pass/Fail)
T (Text) // structure, clarity, actionable
R (Rules) // naming, folders, formatting
C (Code) // works, minimal, idiomatic
// 3+ failures in same area →
// auto-suggest improvement rule
// → ~/.claude/evals/improvements.md
R (Rules) // naming, folders, formatting
C (Code) // works, minimal, idiomatic
// 3+ failures in same area →
// auto-suggest improvement rule
// → ~/.claude/evals/improvements.md
Session Tracking
// auto-logged per session:
date: 2026-02-19
project: /notes
resume: claude --resume [id]
context: 48% used
skills_used: [playground, brainstorming]
linear: AIM-2090
date: 2026-02-19
project: /notes
resume: claude --resume [id]
context: 48% used
skills_used: [playground, brainstorming]
linear: AIM-2090
Episodic Memory
// cross-session memory persistence
auto memory: ~/.claude/projects/*/memory/
linear cache: linear-tracking.md
session recall: iTerm log search
reflections: .claude/reflections/
auto memory: ~/.claude/projects/*/memory/
linear cache: linear-tracking.md
session recall: iTerm log search
reflections: .claude/reflections/
Self-Improvement Loop
every response → auto-eval (T/R/C)
↓
/eval → detailed analysis
↓ weekly
/reflect → pattern detection
↓
new rules → CLAUDE.md
"evals are the new PRD" -- Hamel Husain
measure → detect patterns → write rules → measure again
measure → detect patterns → write rules → measure again
Linear Awareness Layer
ambient passive detection // tasks follow context, not the other way
Detection Flow
Status Symbols
◐ In Progress
○ Todo
● Done
◑ In Review
This Session (live)
hook: 9 IP, 20+ Todo
match: AIM-2130 FOS #21 ◐ IP
match: AIM-2090 space flow ◐ IP
memory: 10 session entries today
match: AIM-2130 FOS #21 ◐ IP
match: AIM-2090 space flow ◐ IP
memory: 10 session entries today
tasks are ambient --
the task manager comes to you
no tab switching, no manual updates
suggest → confirm → done
no tab switching, no manual updates
suggest → confirm → done
Live Meta Layer
this presentation is generated by the system it describes
generated live // FOS #21 // 19 feb 2026
How This Was Made
Claude Code Opus 4.6
↓ /brainstorming skill
/playground skill
↓ spawn 3 background agents
agent-1: Murmuru docs
agent-2: FOS transcripts
agent-3: skills + setup
agent-2: FOS transcripts
agent-3: skills + setup
↓ merge context
single HTML + inline CSS/JS/SVG
↓ Bash: open
browser → screen share → present
Stack
model: claude-opus-4-6
interface: Claude Code CLI v2.1.47
skills: /brainstorming, /playground
agents: 3 parallel Explore subagents
mcp used: Filesystem, Linear (awareness)
sources: vault: murmuru/, skills/, transcripts/
output: code tools/fos-21-playground/index.html
size: ~30KB self-contained
navigation: keyboard (0-8, arrows)
deploy: local file://
interface: Claude Code CLI v2.1.47
skills: /brainstorming, /playground
agents: 3 parallel Explore subagents
mcp used: Filesystem, Linear (awareness)
sources: vault: murmuru/, skills/, transcripts/
output: code tools/fos-21-playground/index.html
size: ~30KB self-contained
navigation: keyboard (0-8, arrows)
deploy: local file://
Update Protocol
1. conversation happens on Zoom
2. paste summary to Claude Code
3. HTML updated + SVG added
4. refresh browser
5. show on screen share
the loop is the demo
2. paste summary to Claude Code
3. HTML updated + SVG added
4. refresh browser
5. show on screen share
the loop is the demo
// session notes (updates live)
waiting for session updates...