← ClaudeAtlas

object-storelisted

Resolves object://<store>/<key> to a local path or a file and never to content, for what must not live in a repository: recordings, filed documents, exports, deliverables carrying personal data. Owns the declarations in infra/object-stores/ (a local directory or an S3 compatible service, credentials by secret reference): `stores`, `stat`, `path`, `fetch --to`, `put --from`. A failed read names its reason (not-reachable, not-found, store-not-declared); a write never queues. Trigger: "/object-store", "object store", "where does this recording go", "outside git", "minio", "s3 bucket".
bks-lab/open-bridge · ★ 10 · AI & Automation · score 75
Install: claude install-skill bks-lab/open-bridge
# Object store Owns every object reference in this tree and the stores they point into. The decision it implements is [`docs/object-store.md`](../../docs/object-store.md); where this file and the ADR disagree, the ADR wins. The engine is `skills/object-store/objstore/` behind the shim `skills/object-store/object-store.sh`. The grammar it parses is a copy of `infra/object-stores/_schema.yaml`, and `scripts/check-object-grammar.py` fails CI the day the two drift. ## The principle Git holds what is read as text, diffed and reviewed. A store holds what is read whole and moved as bytes. An entry in the tree keeps the reference, the size, the content hash and the class; the bytes stay in the store. **There is deliberately no command that prints an object.** Not behind a flag, not in a pipe. `path` returns a filesystem path, `fetch` writes a file the caller names, `stat` returns size and sha256. An agent reads this output, and a multi-gigabyte object in it would end the session that asked for it. ## Arguments ```bash skills/object-store/object-store.sh stores # the declarations here skills/object-store/object-store.sh stat object://recordings/2026-09/a.m4a skills/object-store/object-store.sh path object://recordings/2026-09/a.m4a --sha256 <hash> skills/object-store/object-store.sh fetch object://exports/q3.csv --to /tmp/q3.csv skills/object-store/object-store.sh put object://recordings/2026-09/a.m4a --from ./a.m4a skills/object-store/object-store