(ePost) Use when an agent needs to persist or retrieve project-level data across sessions via .epost-data/
Scanned 9/2/2026
Install to Claude Code
npx -y skills add majiayu000/claude-skill-registry --skill data-store --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Data Store?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/majiayu000-data-store)More formats (shields.io, HTML) on the badges page.
---
name: data-store
description: (ePost) Use when an agent needs to persist or retrieve project-level data across sessions via .epost-data/
user-invocable: false
---
# Agent Data Store Convention
Defines how agents store and access persistent project-level data across sessions.
## Directory Layout
```
.epost-data/ ← gitignored, project-level runtime state
{domain}/
{domain}.json ← primary DB (required)
artifacts/ ← generated patches, diffs, temp files (optional)
```
### a11y Domain Layout
```
.epost-data/a11y/
├── fixes/
│ ├── findings/ ← audit-a11y JSON reports (audit-YYMMDD-HHMM.json)
│ ├── patches/ ← fix-a11y unified diffs (finding-{id}-YYMMDD.diff)
│ └── reviews/ ← review-a11y JSON reports (review-YYMMDD-HHMM.json)
├── README.md ← structure guide
├── analysis.md ← trend summary
└── known-findings.json ← findings DB
```
## Rules
| Rule | Detail |
|------|--------|
| **Always `(if exists)`** | Never hard-fail on missing file — gracefully absent on first run |
| **Gitignored** | Runtime state, not source-tracked; must be in `.gitignore` |
| **One agent = one domain** | Agent owns its domain exclusively; never reads another agent's |
| **Schema in source** | Schema lives at `packages/{pkg}/assets/{domain}-schema.json`, tracked in git |
## Agent Declaration Template
Paste into the agent's system prompt body under a **Data Store** section:
```markdown
## Data Store
- **DB:** `.epost-data/{domain}/{domain}.json` (if exists)
- **Artifacts:** `.epost-data/{domain}/artifacts/` (if exists)
- **Schema:** `.claude/assets/{domain}-schema.json`
```
## Domain Registry
| Domain | Owner Agent | Primary File | Package |
|--------|-----------------------|-----------------------|------------------|
| `a11y` | epost-a11y-specialist | `known-findings.json` | packages/a11y |
*Add a row here when introducing a new agent data domain.*
## Schema Conventions
Minimum required fields for any `{domain}.json`:
```json
{
"version": "1.0",
"created_date": "YYYY-MM-DD",
"last_reviewed_date": "YYYY-MM-DD",
"entries": [
{
"id": 1,
"resolved": false,
"resolved_date": null
}
]
}
```
- Bump `version` string on schema changes (new fields = minor, breaking = major)
- All commands check `resolved` before operating on an entry
- `last_reviewed_date` updated any time the DB is written
## Adopting the Pattern (New Domain)
1. Create schema: `packages/{pkg}/assets/{domain}-schema.json`
2. Add domain row to the registry table above
3. Add "Data Store" section to agent body using the template
4. Reference paths in commands with `(if exists)` guards
5. Add `.epost-data/` to project `.gitignore` (if not already present)

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!