From productivity
Two-tier memory system that makes Claude a true workplace collaborator. Decodes shorthand, acronyms, nicknames, and internal language so Claude understands requests like a colleague would. memory/AGENTS.md for compiled hot cache, Obsidian vault for the full knowledge base.
npx claudepluginhub acjackman/claude-productivityThis skill uses the workspace's default tool permissions.
Memory makes Claude your workplace collaborator - someone who speaks your internal language.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
Memory makes Claude your workplace collaborator - someone who speaks your internal language.
Transform shorthand into understanding:
User: "ask todd to do the PSR for oracle"
↓ Claude decodes
"Ask Todd Martinez (Finance lead) to prepare the Pipeline Status Report
for the Oracle Systems deal ($2.3M, closing Q2)"
Without memory, that request is meaningless. With memory, Claude knows:
<vault> (Obsidian vault — path from Workflow Config)
memory/
AGENTS.md ← Compiled hot cache (regenerated by update)
glossary.md ← Full decoder ring
context/
company.md ← Tools, teams, processes
people/ ← People profiles
efforts/ ← Projects / multi-step initiatives
decisions/ ← Architecture Decision Records
log/
daily/ ← Daily notes (## Open / ## Plan / ## Capture)
cycles/ ← Linear cycle/sprint notes
comms/ ← Meeting notes, draft communications
+/ ← Inbox / unorganized notes
memory/AGENTS.md (Hot Cache):
Obsidian vault — memory/glossary.md (Full Glossary):
Obsidian vault — people/, efforts/, memory/context/:
User: "ask todd about the PSR for phoenix"
1. Check memory/AGENTS.md (hot cache — single MCP read)
→ Todd? ✓ Todd Martinez, Finance
→ PSR? ✓ Pipeline Status Report
→ Phoenix? ✓ DB migration project
2. If not found → search Obsidian vault via MCP
→ search_notes for the term
→ read memory/glossary.md for full glossary
→ read people/{name}.md for people detail
3. If still not found → ask user
→ "What does X mean? I'll remember it."
This tiered approach keeps AGENTS.md lean (~100 lines) while supporting unlimited scale in the vault.
Everything lives in the Obsidian vault (accessed via Obsidian MCP):
memory/AGENTS.md (compiled by workflow skills)memory/glossary.mdmemory/context/company.mdpeople/{name}.mdefforts/{name}.mdRegenerated by workflow skills. Use tables for compactness. Target ~50-100 lines.
# Agent Context
> Auto-generated. Do not edit manually.
> Source of truth: the rest of this Obsidian vault.
> Last updated: YYYY-MM-DD
## Me
[Name], [Role] on [Team]. [One sentence about what I do.]
## People
| Who | Role |
|-----|------|
| **Todd** | Todd Martinez, Finance lead |
| **Sarah** | Sarah Chen, Engineering (Platform) |
| **Greg** | Greg Wilson, Sales |
→ Full list: people/ and memory/glossary.md
## Terms
| Term | Meaning |
|------|---------|
| PSR | Pipeline Status Report |
| P0 | Drop everything priority |
→ Full glossary: memory/glossary.md
## Active Efforts
| Name | What |
|------|------|
| **Phoenix** | DB migration, Q2 launch |
| **Horizon** | Mobile app redesign |
→ Details: efforts/
## Preferences
- Personal notes in Obsidian vault (path from Workflow Config)
- Efforts, daily notes, cycle notes all go there
- "Effort" = a multi-step task/initiative tracked in efforts/
- Daily notes use ## Plan (intended work) and ## Capture (incoming tasks)
- Cycle notes track personal notes per Linear sprint in log/cycles/
- Decisions tracked as lightweight ADRs in decisions/
memory/glossary.md - The decoder ring:
# Glossary
Workplace shorthand, acronyms, and internal language.
## Acronyms
| Term | Meaning | Context |
|------|---------|---------|
| PSR | Pipeline Status Report | Weekly sales doc |
| OKR | Objectives & Key Results | Quarterly planning |
| P0/P1/P2 | Priority levels | P0 = drop everything |
## Internal Terms
| Term | Meaning |
|------|---------|
| the migration | Project Phoenix database work |
| ship it | Deploy to production |
| escalate | Loop in leadership |
## Nicknames → Full Names
| Nickname | Person |
|----------|--------|
| Todd | Todd Martinez (Finance) |
| T | Also Todd Martinez |
## Project Codenames
| Codename | Project |
|----------|---------|
| Phoenix | Database migration |
| Horizon | New mobile app |
people/{name}.md:
# Todd Martinez
**Also known as:** Todd, T
**Role:** Finance Lead
**Team:** Finance
**Reports to:** CFO (Michael Chen)
## Communication
- Prefers Slack DM
- Quick responses, very direct
- Best time: mornings
## Context
- Handles all PSRs and financial reporting
- Key contact for deal approvals over $500k
- Works closely with Sales on forecasting
## Notes
- Cubs fan, likes talking baseball
efforts/{name}.md — see task-management skill for effort conventions (datestamp-slug naming, folder refactoring, etc.)
memory/context/company.md:
# Company Context
## Tools & Systems
| Tool | Used for | Internal name |
|------|----------|---------------|
| Slack | Communication | - |
| Linear | Project tracking, engineering tasks, and project docs | - |
| Notion | Long-term documentation, non-project notes, wiki | - |
| Google Docs | Incoming work, external-facing docs | - |
| GitHub | Source control ({github_org}) | - |
| Gmail | Email | - |
| Google Calendar | Calendar | "gcal" |
| Figma | Design | - |
## Teams
| Team | What they do | Key people |
|------|--------------|------------|
## Processes
| Process | What it means |
|---------|---------------|
Always decode shorthand before acting on requests:
1. memory/AGENTS.md (hot cache) → Single read, covers 90% of cases
2. Obsidian: memory/glossary.md → Full glossary if not in hot cache
3. Obsidian: people/, efforts/ → Rich detail when needed
4. Obsidian: search_notes → Broad search across the vault
5. Ask user → Unknown term? Learn it.
Example:
User: "ask todd to do the PSR for oracle"
AGENTS.md lookup:
"todd" → Todd Martinez, Finance ✓
"PSR" → Pipeline Status Report ✓
"oracle" → (not in hot cache)
Obsidian lookup (via MCP):
read_note("memory/glossary") → "oracle" → Oracle Systems deal ($2.3M) ✓
Now Claude can act with full context.
When user says "remember this" or "X means Y":
Glossary items (acronyms, terms, shorthand):
memory/glossary.md via patch_notePeople:
people/{name}.md via write_note or patch_noteEfforts/projects:
efforts/{name}.md via write_note or patch_notePreferences: Add to Obsidian memory/context/company.md or relevant file
Notes, efforts, daily/cycle logs:
efforts/, Daily: log/daily/, Cycles: log/cycles/, Comms: comms/When user asks "who is X" or "what does X mean":
people/todd-martinez.md tells you he prefers Slack, is directIf memory/AGENTS.md doesn't exist in the vault (or memory/glossary.md is missing), the memory system needs bootstrapping. Direct the user to run /productivity:bootstrap, which does a comprehensive scan of all connected sources (Linear, Slack, Gmail, Calendar, Notion, existing vault content) to build the initial memory.
todd-martinez.md, project-phoenix.md)| Type | AGENTS.md (Hot Cache) | Obsidian Vault (Full Storage) |
|---|---|---|
| Person | Top ~30 frequent contacts | glossary.md + people/{name}.md |
| Acronym/term | ~30 most common | memory/glossary.md (complete list) |
| Effort/project | Active efforts only | memory/glossary.md + efforts/{name}.md |
| Nickname | In People if top 30 | memory/glossary.md (all nicknames) |
| Company context | Quick reference only | memory/context/company.md |
| Preferences | Key preferences | memory/context/company.md |
| Historical/stale | Not included | Stays in Obsidian |
AGENTS.md is compiled — promotion and demotion happen automatically when workflow skills regenerate it:
Included in AGENTS.md when:
status: activeExcluded from AGENTS.md when:
Excluded items remain accessible in the vault. Workflow skills handle this automatically.