Skip to content

captain-http/smithers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Smithers

smithers

Personal assistant skills for Claude Code, backed by Linear.

Why

Life gets noisy. Work expands to fill every gap, and the things that actually matter — health, relationships, learning, rest — quietly fall off the list. Smithers exists to push back on that.

The goal is simple:

  • Balance — track every area of life in one place, not just work. When one area dominates, notice it.
  • Prioritize what matters — not everything urgent is important. Surface what actually moves the needle.
  • Plan broader goals — break down big ambitions into concrete next steps, then schedule them.
  • Find the time — if it's not on the list, it doesn't happen. Make space for the things you keep saying you'll get to.
  • Filter the noise — capture everything, then ruthlessly triage. Most things can wait. Some things can be dropped entirely.

All of this lives in Linear — one team, one source of truth. No spreadsheets, no second app, no syncing. Just tasks with labels for each life area, flowing through a simple workflow from capture to done.

Why Smithers

Waylon Smithers is the greatest personal assistant in fiction. He's attentive without being asked, anticipates needs before they're spoken, and takes genuine pride in keeping things running smoothly. He doesn't need recognition — the work getting done is the reward.

That energy is exactly what you want from an AI assistant. Not a generic chatbot, not a blank tool waiting for instructions — an assistant with a point of view about how to be helpful. Smithers brings:

  • Proactive attentiveness — he doesn't wait to be micromanaged. He notices what needs doing and offers to handle it.
  • Loyal follow-through — tasks don't get lost. If you said it matters, it matters, and he'll track it until it's done.
  • Composed under pressure — things go wrong, deadlines slip, priorities shift. Smithers doesn't panic. He adjusts and keeps moving.
  • Personality without friction — the persona makes interactions more pleasant without getting in the way. A little warmth, a little formality, never annoying.

The persona lives in skills/smithers/references/persona.md. A global pointer in ~/.claude/CLAUDE.md tells Claude to read it every session — so the voice is always on, not just when the skill activates.

How it works

Smithers is a single Claude Code skill. It auto-activates when you say things naturally ("remind me to buy groceries", "what should I work on") and can be invoked explicitly with /smithers review, /smithers add, /smithers project, etc.

There's no database, no server, no infrastructure. Claude reads the skill file, talks to Linear through MCP, and that's it.

Structure

persona/
└── CLAUDE.md             # Global persona pointer (symlinked to ~/.claude/CLAUDE.md)
skills/smithers/
├── SKILL.md              # Single entry point — routing and workflows
└── references/
    ├── persona.md        # Smithers voice and personality
    ├── linear-conventions.md  # Labels, states, priorities
    ├── capture-rules.md       # Task capture workflow
    ├── review-templates.md    # Daily/weekly review templates
    ├── project-management.md  # Project create/list/archive
    └── calendar.md            # Google Calendar integration

Linear Setup

Smithers expects a specific Linear configuration:

  • Team: "Smithers" with identifier WS (Waylon Smithers' initials). All issues are prefixed WS- (e.g., WS-42).
  • Projects: Created within the Smithers team. "Misc" is the default catch-all. Additional projects can be added for focused efforts (e.g., a game dev guide, home renovation).
  • Slugs: Each project stores a slug:xxx tag in its description so the skills can discover and reference them (e.g., #life, #nes-guide).
  • Labels: Shared across the team — work, health, home, finance, social, learning, inbox.
  • States: Triage → Backlog → This Week → Today → In Progress → Done / Won't Do.
  • Priority: Urgent (today) → High (this week) → Medium (soon) → Low (someday).

Setup

Requires Claude Code and the Linear team set up as described above.

1. Add the Linear MCP server

claude mcp add --transport http linear-server https://mcp.linear.app/mcp

This gives Claude access to Linear through the Model Context Protocol. Then run /mcp inside a Claude Code session to complete the authentication flow — Linear will prompt you to authorize.

2. Add the Google Calendar MCP server

Follow the installation instructions at google-calendar-mcp to set up Google Cloud credentials and OAuth. Then add the server:

claude mcp add -e GOOGLE_OAUTH_CREDENTIALS=/path/to/gcp-oauth.keys.json google-calendar -- npx @cocal/google-calendar-mcp

Run /mcp inside a Claude Code session to complete the OAuth flow — Google will prompt you to authorize.

3. Install the skill

git clone git@github.com:captain-http/smithers.git
cd smithers
bash install.sh

The installer symlinks the skill into ~/.claude/skills/ and the persona pointer into ~/.claude/CLAUDE.md. Edits in the repo are live immediately.

Why public

This repo is public in case someone finds the workflow useful — either as-is or as a starting point for their own setup. It's a personal tool, not a product.

License

MIT

About

Personal life assistant for Claude Code — task management, daily reviews, and life-area balance, backed by Linear

Resources

Stars

Watchers

Forks

Contributors

Languages