Shared Development Approach¶
How the two-developer BNI team works together across projects. Machine setup steps (clone, install, dev server) live in Developer Onboarding; this page covers the why — folder conventions, the CLAUDE.md hierarchy, the Claude collaboration plan, and the git/Obsidian workflow.
Folder structure¶
Both developers maintain the same folder layout so CLAUDE.md files load correctly and Obsidian vaults resolve links consistently.
~/source/
├── CLAUDE.md ← Orchestrator: dispatches Claude to each project
├── big-nerd-idea/
│ ├── CLAUDE.md ← Shared org directives
│ └── vault/ ← Obsidian vault for org-wide docs
├── mpowerup/
│ ├── CLAUDE.md ← Project-specific Claude directives
│ └── MPowerUP Vault/ ← Obsidian vault for MPowerUP project notes
├── rlivn/
│ └── CLAUDE.md
└── toasterchef/
└── CLAUDE.md
Rule: Org-level docs (business, grants, team decisions, cross-project architecture) → big-nerd-idea/vault/. Project-specific docs (features, phases, tech notes) → each project's own vault.
CLAUDE.md hierarchy¶
Claude Code reads CLAUDE.md files from the working directory upward. Three levels:
| File | Scope | Who edits |
|---|---|---|
~/source/CLAUDE.md |
Root orchestrator — project dispatch table | Kevin |
~/source/big-nerd-idea/CLAUDE.md |
Org directives — team, standards, AI policy | Both devs (via PR) |
~/source/mpowerup/CLAUDE.md |
MPowerUP-specific patterns, commands, architecture | Both devs (via PR) |
Key principle: CLAUDE.md files are committed to git. Every change to AI directives goes through a PR so both devs agree. Claude Code on Corey's machine reads the same directives as on Kevin's. (Diagram of this hierarchy: Site & Docs Architecture.)
Claude collaboration phases¶
Phase 1 — Individual accounts (now)¶
Kevin and Corey each have their own Claude Pro or Max subscription + Claude Code. Shared context lives in big-nerd-idea/CLAUDE.md and project CLAUDE.md files (in git), read automatically when working in ~/source/. Works today at zero additional cost.
Limitation: sessions are independent — no shared conversation history. If Kevin documents a decision in a session, Corey won't see it unless it's committed to git (CLAUDE.md, vault docs, code comments). Per-developer Claude Code memory files (~/.claude/projects/.../memory/) are not a substitute for shared team context.
Phase 2 — Claude for Teams (3+ active devs or BNI revenue)¶
Shared team workspace in Claude.ai (conversation history visible to all), shared Projects with persistent context, admin controls, higher shared usage limits. Cost: $30/user/month, 5-seat minimum = $150/month minimum — wasteful at 2 devs paying for 3 unused seats. Consider at 3–4 devs or when monthly individual costs exceed $150. For programmatic use, a shared Anthropic API key is cheaper at low volume than a team seat.
Phase 3 — Non-profit pricing (after 501(c)(3))¶
When BNI Foundation receives its IRS determination letter, apply to Anthropic's non-profit program (anthropic.com/nonprofit). [HYPOTHESIS] Expected outcome: 40–60% discount on API credits and/or Claude Teams. Request API credits for development + Claude Teams seats at the non-profit rate.
Phase 4 — Enterprise (scale)¶
SSO, custom data retention, SLA, advanced security. Only relevant at 10+ developers or enterprise client requirements.
Obsidian vault strategy¶
Two vaults, clear separation:
| Vault | Location | Git repo | Purpose |
|---|---|---|---|
| BNI Org Vault | ~/source/big-nerd-idea/vault/ |
big-nerd-idea |
Business, grants, cross-project decisions, team docs |
| MPowerUP Vault | ~/source/mpowerup/MPowerUP Vault/ |
mpowerup |
Feature specs, phases, architecture, tech notes |
Use the Obsidian Git community plugin (free) to keep vaults synced via normal git (auto-pull on open, commit + push on close or timer) — no need to pay for Obsidian Sync. Each vault is an independent git repo; commit separately.
Future: when Corey joins fully, create a standalone GitHub repo for the BNI org vault/docs so it can be cloned independently of any project.
GitHub collaboration¶
Current state: repo kevinwcrump/MPowerUp (Kevin owns, Corey collaborator). Branch strategy: main (stable), dev (integration), feature/<name> (per-task).
Target state (formation Phase 3): a big-nerd-idea GitHub org with repos transferred/forked under it, Kevin = Owner, Corey = Member, branch protection on main (require 1 PR review, pass CI).
Day-to-day workflow: pull dev → branch feature/<name> → commit → push → PR to dev (both can review) → merge dev → main via PR with brief review. Never push directly to main — it should always be deployable.
Decision log¶
| Date | Decision | Rationale |
|---|---|---|
| 2026-04-28 | Individual Claude accounts in Phase 1 | 5-seat minimum for Teams makes it uneconomical for 2 devs; shared CLAUDE.md via git achieves most of the value |
| 2026-04-28 | Open Collective as interim fiscal host | Fastest path to tax-deductible donations and transparent financials while 501(c)(3) processes |
| 2026-04-28 | BNI vault at ~/source/big-nerd-idea/vault/ |
Org docs should not live inside any single project repo; separate vault enables both devs to access org context independently of which project they're working in |