Sandbox
@iurykrieger/claude-bedrock

Claude Code plugin for Obsidian vault management

Bedrock is a Claude Code plugin that automates Obsidian vault work through skills, templates, and hooks. It creates and links entity notes, ingests outside sources, deduplicates content, and keeps the vault in sync.

99 stars8 forksHTMLUpdated 4mo ago
Who it's for

Builders who use Claude Code and Obsidian to manage a second brain.

What it delivers

You can keep an Obsidian vault organized as a live knowledge graph without writing and linking every entity by hand.

What it does

Vault setup skill

`/bedrock:setup` scaffolds folders, templates, config, and example entities for a new or existing vault.

Vault question answering

`/bedrock:ask` searches the graph and vault, follows links, and answers with citations.

External source ingestion

`/bedrock:learn` pulls in Confluence, Google Docs, GitHub repos, and docling-supported files into vault entities.

Entity preservation

`/bedrock:preserve` creates or updates entities from one write point and adds bidirectional links.

Compression and cleanup

`/bedrock:compress` finds broken links, duplicates, orphans, and stale content.

Sync and health checks

`/bedrock:sync` re-syncs external sources, and `/bedrock:healthcheck` reports vault integrity issues.

Multi-vault management

`/bedrock:vaults` lets you register, choose, and remove vaults.

Error reporting hook

`hooks/error_reporter.py` sends framework errors to GitHub issues with vault content redacted.

How to get it

  1. 1Run
    /plugin marketplace add iurykrieger/claude-bedrock
    /plugin install bedrock@claude-bedrock
  2. 2For local development
    claude --plugin-dir ./claude-bedrock
  3. 3After installing, run the setup wizard
    /bedrock:setup

README

Bedrock — Knowledge graph visualization

Bedrock

Turn any Obsidian vault into a structured Second Brain with AI agents

License Claude Code Plugin Version


Bedrock is a Claude Code plugin that automates Obsidian vault management through AI-powered skills. It organizes knowledge into 7 entity types following adapted Zettelkasten principles — entity detection, bidirectional linking, ingestion from external sources, deduplication, and sync.

No build system. No runtime. Just markdown files, AI agents, and your Obsidian vault.

Features

  • 8 AI-powered skills — setup, ask, teach, preserve, compress, sync, healthcheck, and vaults
  • 7 entity types — actors, people, teams, topics, discussions, projects, and fleeting notes
  • External source ingestion — Confluence, Google Docs, GitHub repositories, and any file format supported by docling (DOCX, PPTX, XLSX, PDF, HTML, EPUB, images, and more)
  • Bidirectional wikilinks — automatic cross-referencing with Obsidian graph view
  • Hierarchical tags — multi-dimensional filtering (type/, status/, domain/, scope/)
  • Zettelkasten structure — permanent, bridge, index, and fleeting note roles
  • Trunk-based git workflow — structured commit conventions built in

Installation

/plugin marketplace add iurykrieger/claude-bedrock
/plugin install bedrock@claude-bedrock

For local development:

claude --plugin-dir ./claude-bedrock

Quick Start

After installing, run the setup wizard:

/bedrock:setup

This will guide you through:

  1. Language selection — choose the vault content language (default: English)
  2. Dependency check — verify graphify is installed (required)
  3. Vault objective — pick a preset (engineering team, product management, company wiki, personal second brain, open source project, or custom)
  4. Scaffold — create directories, templates, config, and connected example entities

The setup creates all entity directories, copies templates, generates a vault-level CLAUDE.md, and scaffolds example entities with bidirectional wikilinks so you can see the graph in Obsidian immediately.

Skills

SkillPurpose
/bedrock:setupInteractive vault initialization and configuration
/bedrock:askOrchestrated vault reader — decomposes questions, searches graph and vault, cross-references entities
/bedrock:learnIngest external sources — extract and create entities
/bedrock:preserveSingle write point — detect, match, create/update entities with bidirectional links
/bedrock:compressDeduplication and vault health — broken links, orphans, stale content
/bedrock:syncRe-sync entities with external sources
/bedrock:healthcheckRead-only vault health diagnostic — graphify-out integrity, orphans, dangling content, stale entries
/bedrock:vaultsManage registered vaults — list, set default, remove

Vault Structure

your-vault/
├── actors/          # Systems, services, APIs (permanent notes)
├── people/          # Contributors, team members (permanent notes)
├── teams/           # Squads, organizational units (permanent notes)
├── topics/          # Cross-cutting subjects with lifecycle (bridge notes)
├── discussions/     # Meeting notes, conversations (bridge notes)
├── projects/        # Initiatives with scope and deadline (index notes)
└── fleeting/        # Raw ideas, unstructured captures (fleeting notes)

Each directory contains a _template.md defining the frontmatter schema for that entity type.

How It Works

Bedrock turns your vault into a living knowledge graph by combining 8 skills you invoke from Claude Code. You never write entities by hand — skills detect, create, and link them for you, with Obsidian rendering the result as a graph.

First-time use

  1. Open a folder you want to turn into a vault (or an existing Obsidian vault).
  2. Run /bedrock:setup — answers a few questions and scaffolds directories, templates, and example entities.
  3. Open the folder in Obsidian. You'll already see a connected graph.

Day-to-day loops

  • Capture knowledge from a source — paste a Confluence page, Google Doc, GitHub repo, remote URL, or any local file (DOCX, PPTX, XLSX, PDF, HTML, EPUB, images, and any other docling-supported format) into /bedrock:learn. Bedrock extracts entities and writes them to the vault with bidirectional links.
  • Ask the vault questions — use /bedrock:ask for anything like "who owns the billing API?" or "what's the status of project X?". It searches the graph, follows wikilinks, and answers with citations.
  • Keep sources fresh — run /bedrock:sync to re-pull external sources, or /bedrock:sync --github / --people to surface recent activity and contributors.
  • Clean up drift — run /bedrock:compress to fix broken backlinks, merge duplicates, and consolidate fragmented concepts. Run /bedrock:healthcheck for a read-only report.
  • Manage multiple vaults — register several vaults with /bedrock:vaults; target a specific one with --vault <name>.

What you get in Obsidian

Every entity has YAML frontmatter (type, status, domain, sources), hierarchical tags (type/actor, status/active, domain/payments), and bidirectional wikilinks. The graph view becomes a navigable map of people, systems, teams, topics, and projects — updated automatically as you teach Bedrock new content.

Dependencies

ToolPurposeRequired?
graphifySemantic code extraction and knowledge-graph pipeline used by /bedrock:learn and /bedrock:syncYes
doclingUniversal file → markdown converter used by /bedrock:learn to ingest DOCX, PPTX, XLSX, PDF, HTML, EPUB, images, and other non-markdown formatsYes

Both graphify and docling are auto-installed by /bedrock:setup (and lazily by /bedrock:learn on first use if missing). You can also install them manually via pipx install graphify / pipx install docling.

Confluence and Google Docs ingestion are built into the plugin as internal skills (/bedrock:confluence-to-markdown, /bedrock:gdoc-to-markdown) invoked by /bedrock:learn and /bedrock:sync — no external installation required.

Configuration

Configuration is stored in .bedrock/config.json inside your vault. Run /bedrock:setup again at any time to reconfigure.

Error Reporting

The bedrock plugin auto-reports framework errors as GitHub issues on iurykrieger/claude-bedrock so maintainers learn about real-world failures.

What gets reported

  • Python tracebacks from skill scripts
  • Non-zero exit codes from skill bash commands
  • Known logical-failure phrases in Claude's text (small auditable regex catalog)

What never gets reported

  • Vault content (markdown bodies, frontmatter values)
  • Absolute filesystem paths (replaced with .../)
  • Vault entity names (people, teams, projects, etc.)
  • URLs from your vault (Confluence, Google Docs, internal repos)

How to opt out

Add "error_reporting": false to your vault's .bedrock/config.json:

{
  "error_reporting": false
}

Default is true. The hook silently skips reporting if gh is not installed or you're not authenticated, and logs the would-be report to ~/.claude-bedrock-cache/error-reporter.log.

Contributing

Contributions are welcome! Here's how to get started:

  1. Fork the repository
  2. Clone your fork and install the plugin locally:
    claude --plugin-dir ./claude-bedrock
    
  3. Create a branch for your feature or fix
  4. Make your changes — skills live in skills/, entity definitions in entities/, templates in templates/
  5. Test by running the plugin against a test vault
  6. Open a PR against main

Project Structure

claude-bedrock/
├── .claude-plugin/    # Plugin manifest (plugin.json)
├── skills/            # Skill definitions (SKILL.md per skill)
│   ├── setup/
│   ├── query/
│   ├── teach/
│   ├── preserve/
│   ├── compress/
│   └── sync/
├── entities/          # Entity type definitions
├── templates/         # Frontmatter schema templates
├── docs/              # Documentation assets
├── CLAUDE.md          # AI agent instructions
└── README.md

License

MIT — Iury Krieger

Files in the repo

Repository payload14 top-level entries
  • .claude-plugin
  • .github
  • .vibeflow
  • docs
  • entities
  • hooks
  • site
  • skills
  • templates
  • .gitignore
  • CLAUDE.md
  • index.html
  • LICENSE
  • README.md

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More plugins

Graphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.

82k
cbrock84/
headcount

An agent organization for Claude Code, structured as a company — 15+ departments, 125+ skills, each independently installable.

1.4k

Context window optimization for AI coding agents. Sandboxes tool output (98% reduction), persists session memory, and enforces routing across 17 platforms via MCP + hooks.

22k

Self-organizing AI second brain for Obsidian + Claude Code. Drop any source and Claude reads, links, and files it into one connected knowledge graph of plain Markdown you own. AI note-taking, personal knowledge management (PKM), and an open-source Notion alternative. Based on Karpathy's LLM Wiki pattern.

15k

Universal SEO skill for Claude Code. 25 sub-skills + 18 sub-agents covering technical SEO, E-E-A-T, schema, GEO/AEO, backlinks, local SEO, maps intelligence, semantic clustering, e-commerce SEO, international SEO, Google APIs, and PDF/Excel reporting. Optional DataForSEO, Firecrawl, and Banana extensions.

17k
revfactory/
harness

A meta-skill that designs domain-specific agent teams, defines specialized agents, and generates the skills they use.

9k