Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add rules/golid-ai/golid/seed-datagit clone --depth 1 https://github.com/golid-ai/golidWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/rules/golid-ai/golid/seed-data)<a href="https://agentmods.dev/rules/golid-ai/golid/seed-data"><img src="https://agentmods.dev/badge/rules/golid-ai/golid/seed-data.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00000 | $0.00710 |
| Opus 5 | $0.00000 | $0.00355 |
| Sonnet 5 | $0.00000 | $0.00142 |
| Haiku 4.5 | $0.00000 | $0.00071 |
Grade A, and why
seed-data scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 78 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Seed Data Patterns
Thesis: Seed data uses stable UUIDs, idempotent upserts, and realistic content. Every new migration gets seed data immediately.
Reference files: dev_seed.sql
UUID Convention
Use stable, predictable UUIDs for cross-referencing:
-- Entity type encoded in the UUID for readability
-- users: a0000000-0000-0000-0000-00000000000N
-- resources: a0000000-0000-0000-0000-0000000000N0
-- items: a0000000-0000-0000-0000-000000000N00
Document the UUID mapping at the top of the file so they're easy to find.
Idempotency
Every INSERT must use ON CONFLICT ... DO UPDATE or ON CONFLICT ... DO NOTHING so the seed can be re-run safely:
INSERT INTO users (id, email, ...) VALUES (...)
ON CONFLICT (email) DO UPDATE SET
registration_step = EXCLUDED.registration_step,
email_verified = EXCLUDED.email_verified;
Rollback Validation
Before committing seed or migration-backed seed work, validate against a real Postgres database inside a rollback transaction. This catches FK ordering, enum, trigger, uniqueness, and idempotency bugs that schema reading misses, while leaving local/dev data untouched.
psql "$DATABASE_URL" -v ON_ERROR_STOP=1 \
-c 'BEGIN;' \
-f backend/migrations/000NNN_new_table.up.sql \
-f backend/seeds/demo_seed.sql \
-c "SELECT count(*) FROM expected_table;" \
-c 'ROLLBACK;'
For seed-only changes, omit the migration file. Always assert at least one business-relevant count or state, not just "script exited 0".
Data Quality
- Realistic content — real-sounding names, descriptions, skills. Not "test123" or "Lorem ipsum".
- All profile fields populated — except file-based fields (resume_url, microview_url, etc.) which require actual uploads.
- Varied statuses — seed entities in different states (new, in_progress, complete, approved) to test all UI states.
- Realistic timestamps — use
NOW() - INTERVAL 'N days'for created/updated dates to simulate a timeline. - Minimum viable depth — seed the thinnest realistic slice first, then let demo/customer feedback decide whether more rows are worth authoring. One honest review per hero can be enough for v1 if the gap is explicit and easy to extend later.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 78 lines · 0 tokens per session scan A 80805755c576
seed-data is a cursor rule published in the GitHub repository golid-ai/golid (40 stars, last pushed 2mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 710 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other cursor rules, from other repositories
git-commits
Git commit safety — commits are human-only; AI suggests, never executes.
adapter-unit-tests
Postgres adapter unit tests are sqlmock-only; no real DB or sqlx.Connect.
studio-build
After Studio changes, regenerate embedded assets with make studio-build and keep dist in the diff.
token-optimization
Agent-mode tool-call efficiency. Cuts the largest hidden cost in modern AI IDEs — wasted tool calls and oversized context windows.
integration-tests
Human-readable integration test requests; helpers vs httptest; suites/ vs per-DB placement.
config-resilience
Config warn-and-continue for non-sensitive keys; Auth/ACL/JWT/secrets/DB credentials fail closed.