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.
git clone --depth 1 https://github.com/Mozurok/fhorja.devWrote 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/commands/mozurok/fhorja.dev/db-context-supabase)<a href="https://agentmods.dev/commands/mozurok/fhorja.dev/db-context-supabase"><img src="https://agentmods.dev/badge/commands/mozurok/fhorja.dev/db-context-supabase/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/commands/mozurok/fhorja.dev/db-context-supabase"><img src="https://agentmods.dev/badge/commands/mozurok/fhorja.dev/db-context-supabase.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00111 | $0.05438 |
| Opus 5.5 | $0.00044 | $0.02175 |
| Sonnet 5.5 | $0.00022 | $0.01088 |
| Haiku 4.5 | $0.00011 | $0.00544 |
Grade A, and why
db-context-supabase 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 20d 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 — 207 lines — stays where its author put it; the contents beside it link to each section on GitHub.
db-context-supabase
Act as a senior/staff engineering database context capture for the active task, scoped to Supabase.
Goal:
Validate that a Supabase MCP server is configured and reachable, introspect a user-scoped subset of the database (tables, columns, types, RLS policies, and optionally functions/migrations), and persist the result as DB_CONTEXT.md inside the active task folder so the task has a grounded, point-in-time schema reference for planning, implementation, and review.
When no MCP server is reachable, the command falls back to the local Supabase CLI and produces the same snapshot from CLI output. Only when neither path is available does it end in a no-op.
This command is opt-in. It is not part of the default task initialization flow; run it after task-init only when the task actually touches Supabase data, schema, or RLS.
Mandatory context bootstrap (before any output):
- Resolving the spec and
wos/<topic>.md: canonical repository FIRST. Otherwise use active-adapter docs:~/.claude/workflow-docs(CLAUDE_WORKFLOW_DOCS_DIR),~/.cursor/workflow-docs(WORKFLOW_DOCS_DIR; project.cursor/workflow-docson project installs),~/.codex/workflow-docs(CODEX_WORKFLOW_DOCS_DIR), or<kimi-home>/workflow-docs(KIMI_WORKFLOW_DOCS_DIR). Nonempty overrides win. Kimi home:KIMI_CODE_HOME, else existing~/.kimi-code, else existing~/.kimi, default~/.kimi-code. Use one root for both paths; try other adapters if absent or unknown. Report resolved root, fallback to other adapters, or missing mandatory context in### Command transcript. Installed snapshots refresh and prune retired topics only on sync. - Read these sections in
WORKFLOW_OPERATING_SYSTEM.mdfirst:## LLM execution contract## Editor mode policy## Global output contract(including Adaptive handoff and Mode selection rule)## Cross-cutting workflow guardrails## Evidence priority
- Read additional sections only when needed:
- naming/path setup:
## Naming conventions,## Repository structure - artifact requirements:
## Task files,## TASK_STATE policy
- naming/path setup:
- Read the active task's
TASK_STATE.mdto confirm there is an active task to attach the DB context to and to align the requested table/schema scope with the task objective. - Read the active task's
SOURCE_OF_TRUTH.mdto detect any prior## DB contextlink before proposing a new one. - Read canonical command inventory when a clone is available; otherwise use installed Fhorja commands and skills.
Required inputs:
- active task path (or enough context to resolve
projects/<client>__<project>/active/YYYY-MM-DD_<task-slug>/) - scope of introspection, supplied by the user as one or more of:
- list of table names (qualified
schema.tableor unqualified for the defaultpublicschema) - list of schemas to include in full (use sparingly; large schemas should be narrowed to specific tables)
- list of table names (qualified
- depth flag (one of):
tables-only: tables and columns with types, primary keys, and not-null flagstables+rls(default):tables-onlyplus row-level security policies for each in-scope tablefull:tables+rlsplus relevant functions, triggers, and the most recent migration filenames touching in-scope tables
- optional: Supabase project ref (if the MCP server is configured for multiple projects); when omitted, use the project the MCP server is currently bound to and record which one was used
- optional: refresh flag (
refreshto regenerate an existingDB_CONTEXT.md; default is to fail withNO_OP_TRACEif a non-staleDB_CONTEXT.mdalready exists for the same scope) - optional: path to the local Supabase project directory. Needed only on the local CLI path below, where every CLI form runs from that directory. When omitted and the MCP path is unavailable, ask for it once instead of guessing a directory.
Project repository files to read:
- projects/__/active/YYYY-MM-DD_/TASK_STATE.md
- projects/__/active/YYYY-MM-DD_/SOURCE_OF_TRUTH.md
- projects/__/active/YYYY-MM-DD_/DB_CONTEXT.md (only if it already exists, for refresh comparison)
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.
- 20d ago Changed · -51 tokens per session 5994496a7401
- 23d ago Changed · +1 lines afef63e9eb18
- 1mo ago Changed · -1 lines ca15969a2234
- 1mo ago Changed · +4 lines · +102 tokens per session caea5e9a083d
- 1mo ago First seen · 203 lines · 60 tokens per session scan A a8ff21f1c43b
db-context-supabase is a command published in the GitHub repository Mozurok/fhorja.dev (10 stars, last pushed 20d ago), licensed MIT. It adds 111 tokens to every session and 5,438 once invoked, about $0.0004 per session on Opus 5.5. 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-09-03.
Other commands, from other repositories
gen
Automatically generates type definitions based on your Postgres database schema.
vanity-subdomains
Manage vanity subdomains for Supabase projects.
cleanup
Detect and remove orphaned code, unused components, dead routes, and stale database artifacts.
chadi-db
Set up or migrate the database (Supabase-first): check credentials, plan migrations, dry-run before apply.
rls-plan
Supabase RLS + access-control audit + remediation plan — no SQL until approved.
dejavu-pg-rescue
Postgres corruption rescue toolkit — scan, patch-toast, reset-flags, rebuild-table, reindex. Codifies the 2026-05-14 disk-full rescue playbook.