Project state.
ds-bridge keeps project state in your repo, where it’s PR-reviewable, and keeps rebuildable caches out of it. The .ds-bridge/ directory is meant to be committed.
bash<project>/.ds-bridge/
├── registry.json
├── history.jsonl
├── docs/
└── reports/
└── dashboard.html
Rebuildable caches — the Figma version cursor and the REST cache — live under CLAUDE_PLUGIN_DATA (~/.claude/plugins/data/<id>/), which survives plugin updates. ds-bridge never writes to CLAUDE_PLUGIN_ROOT, which is ephemeral across those updates.
Your dashboard view lives in the project’s .ds-bridge.json, alongside the other committed config, through one of two mutually exclusive keys:
dashboard_view — a persona preset, one of owner, engineering, design, consumer, or everything (the default when nothing is set).dashboard_artifacts — an explicit ordered list drawn from drift-trend, lint-summary, readiness, parity, a11y, and impact. Set this when a preset isn’t quite your view.
The two keys are mutually exclusive — set one, not both, or you get a config error. Both are written for you by ds-bridge dashboard set or the --setup wizard, which validate ids and keep the diff minimal; hand-editing is discouraged.