Read and manipulate Obsidian Bases (.base) files - YAML-based database views that render as tables, cards, and grids inside the vault. Use when reading, appending rows, or updating cells in a Base file.
From obsidian-integrationnpx claudepluginhub richfrem/agent-plugins-skills --plugin obsidian-integrationThis skill is limited to using the following tools:
acceptance-criteria.mdassets/resources/architecture-background.mdassets/resources/kepano-analysis-summary.mdassets/resources/safety-learnings.mdevals/evals.jsonevals/results.tsvfallback-tree.mdobsidian-parser/parser.pyreferences/acceptance-criteria.mdreferences/fallback-tree.mdrequirements.txtscripts/bases_ops.pyExecutes pre-written implementation plans: critically reviews, follows bite-sized steps exactly, runs verifications, tracks progress with checkpoints, uses git worktrees, stops on blockers.
Guides idea refinement into designs: explores context, asks questions one-by-one, proposes approaches, presents sections for approval, writes/review specs before coding.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
This skill requires Python 3.8+ and standard library only. No external packages needed.
To install this skill's dependencies:
pip-compile ./requirements.in
pip install -r ./requirements.txt
See ./requirements.txt for the dependency lockfile (currently empty — standard library only).
Status: Active
Author: Richard Fremmerlid
Domain: Obsidian Integration
Depends On: obsidian-vault-crud (WP06)
Obsidian Bases are .base files containing YAML that defines database-like views
over vault notes. This skill enables agents to act as database administrators —
reading, appending rows, and updating cell values while preserving the view
configuration (columns, filters, sorts) untouched.
python ./bases_ops.py read --file <path.base>
python ./bases_ops.py append-row --file <path.base> --data key1=value1 key2=value2
python ./bases_ops.py update-cell --file <path.base> --row-index 0 --column key1 --value "new value"
ruamel.yaml for lossless round-trip YAML parsingobsidian-vault-crud atomic write protocol