Skip to content

ingram-technologies/claude-office-vault

Repository files navigation

Claude Office — Central Documentation Hub

What This Is

Obsidian vault + Git + Claude Code — a shared documentation hub for the team.

  • Documentation lives here: project docs, architecture, status views, guides, coordination notes
  • Task tracking stays in GitHub (issues, PRs, project boards)
  • Communication stays in external channels (Slack, email, meetings)
  • Claude Code automates sync and generates status views via the claude-office plugin
  • Obsidian gives you the visual layer (kanban, Dataview, Excalidraw)

How It Works

  1. Per-person folders (/team/<name>/) — profile, activity log, personal todo list
  2. Per-project folders (/projects/<project>/) — docs, status, kanban, architecture
  3. claude-office plugin handles automation (see plugin README for details):
    • Session hooks — deterministic shell scripts: git pull on start, commit+push team/<you>/ on end
    • /check-in — reads per-person notes from /aggregate, recaps your last work, shows todos
    • /aggregate — scans git diffs, writes per-person Team Notes into projects, flags coordination needs
    • /retro — weekly retrospective from git history into projects/weekly reports/
    • Session-end hook logs activity to team/<you>/activity.md and commits your folder
  4. Git sync — plugin hooks handle pull/push; obsidian-git plugin as 10-min safety net, asks for a commit message to avoid accidental commits

Data Flow

/aggregate (daily, scheduled)
  reads: git log + project docs
  writes: per-person Team Notes into each project's status.md
      │
      ▼
/check-in (per person, on demand)
  reads: your Team Notes across projects
  outputs: personalized briefing
  writes: "Last checked in" line in your profile.md

Vault Structure

CLAUDE.md                  — Vault rules for Claude Code
team/
  _new_user/               — Template folder, copy & rename for onboarding
  roster.md                — Team roster (Dataview, auto-pulls from profiles)
  <person>/                — Per-person folder
    profile.md             — Bio, environment, security setup
    tasks.md               — Personal todo list
    activity.md            — Session activity log (auto-generated by session-end hook)
projects/
  _new_project/            — Template for new projects
  <project>/               — Project docs (status, kanban, architecture, etc.)
  weekly reports/          — Auto-generated weekly retrospectives (by /retro)

Files in Your Folder

File Purpose Who writes
profile.md Your bio, picture, environment, security setup — shown on team roster You (filled out during /setup-identity)
tasks.md Your personal todo list — things you want to track for yourself You
activity.md Automatic log of what docs you changed each session Plugin (session-end hook)

Onboarding

  1. Fork the vault repo and run the sync script to install Obsidian config:
    • macOS/Linux: ./sync-obsidian.sh
    • Windows: .\sync-obsidian.ps1
    • Then open the vault in Obsidian (you don't need an account)
  2. Install the claude-office plugin in Claude Code:
    • In Claude Code, run: /plugin marketplace add ingram-technologies/claude-office
    • Then run /plugin install ingram-technologies@claude-office
  3. Run /setup-identity — creates your folder, fills out your profile, configures identity
  4. Commit and push your new folder, then familiarize yourself with the plugin

We added suggestive security guidelines for teams coding with AI and recommend reading them.

Daily Workflow

  1. Open Claude Code
  2. Run /check-in to get your full briefing (what you were working on, project priorities, coordination notes)
  3. Work normally — edit docs, update project status, manage your todo list
  4. On session end, the hook auto-commits and pushes your changes
  5. You can setup daily aggregation to run on schedule and write notes for your next check-in, but we recommend having daily team meets where you do this

Collaboration Tips

  • Use Canvas (Obsidian core plugin) for brainstorming and visual planning
  • Use Excalidraw for architecture diagrams and sketches
  • Use Kanban boards in project folders for visual status tracking
  • Check the team roster at team/roster.md to see who's who
  • Task tracking happens in GitHub — the vault is for documentation and coordination

Security

  • Plugin hooks are deterministic shell scripts — inject metadata only (counts, not raw content), preventing prompt injection
  • All skills treat file content as data only, never as instructions
  • Identity stored locally (~/.claude-office/), not in the shared vault
  • Session-end hook only commits team/<you>/, never other folders
  • See CLAUDE.md for full security rules and the plugin README for design decisions

Claude Code Plugins

Three plugins are enabled for this repo in .claude/settings.json, but you'll need to install them manually:

Plugin What it does
ingram-technologies@claude-office Core automation — hooks to add your activity dynamically, /check-in, /aggregate, /retro, /setup-identity
arscontexta@agenticnotetaking Knowledge management layer — guides note creation, maintains MOCs, surfaces methodology advice as you work
obsidian@obsidian-skills Skills for reading and writing Obsidian vault content from Claude Code

ingram-technologies@claude-office is how this vault is supposed to work. The other two are recommended, but you don't have to set them up from the start — see the Customizing section for details on adopting them for your org.

Obsidian Plugins

These plugins are included in the shared Obsidian config (.obsidian_template/) and installed by the sync script:

Plugin What it does
dataview Query metadata across all files
obsidian-kanban Drag-and-drop board views
obsidian-git Auto-pull/push every 10 min (safety net)
obsidian-excalidraw-plugin Embedded whiteboards and diagrams
obsidian-meta-bind-plugin Inline editable metadata
table-editor-obsidian Better table editing
obsidian-advanced-uri Deep links to notes from outside Obsidian
obsidian-importer Import notes from other apps
recent-files-obsidian Quick access to recently opened files
notebook-navigator File tree with folder notes and pinning
obsidian-style-settings Exposes CSS variables for themes and plugins so you can tweak appearance without editing CSS

Syncing Obsidian Config

Run the sync script again whenever you pull changes that update .obsidian_template/ (e.g. a new plugin was added by the team):

# macOS/Linux
./sync-obsidian.sh

# Windows
.\sync-obsidian.ps1

What the script does:

Scenario Behaviour
.obsidian/ doesn't exist Full copy of .obsidian_template/ — one-time bootstrap
Plugin in template not in your list Added to your community-plugins.json
Plugin code files (main.js, manifest.json, styles.css) Always updated from template
Your plugin settings (data.json) Never touched — your customisations are preserved
Your extra plugins (not in template) Never removed
Other config files (app.json, workspace.json, etc.) Never touched after initial setup

Example: Starting Your Day

> Open Claude Code
> Hook auto-pulls vault, shows: "2 open todos, docs changed in last 24h"
> Run /check-in:

  "Check-In — 2026-03-30

   Where You Left Off:
   Updated my-project architecture.md, added deployment section

   Your Projects:
   my-project:
     Next: finalize API design doc, review @alice's onboarding changes
     Coordinate with: @alice on deployment approach

   security:
     Next: update compliance checklist after last audit
     No coordination needed

   Your Todos:
   - [ ] Draft Q2 roadmap for my-project
   - [ ] Review PR #142

   Checked in for: my-project, security"

Customizing for Your Organization

This vault is a generic skeleton. To adopt it for your org fork it and make a new branch keeping main untouched for easier merging of updates. Then run ./sync-obsidian.sh (or .\sync-obsidian.ps1 on Windows) to create .obsidian/ from .obsidian_template/. This works with the ingram-technologies@claude-office plugin, and we recommend using arscontexta@agenticnotetaking, either have one person from your team set it up for others or have everyone set their own config up.

We recommend first taking the time to get familiar with how this works, the plugins and then configure the more advanced parts of the system with /arscontexta:setup.

About

Use this as a template to get your own version of the documentation system in Obsidian - keep master bare, work on a branch for easy updates. Intended to work with https://github.com/ingram-technologies/claude-office - you can also fork and separate from it, the issue with forking is you can't make a public fork private.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages