Supabase Development and Debugging
supabase/agent-skills
General Supabase skill for database, auth, Edge Functions, Realtime and storage work, plus client libraries, migrations, security audits, debugging and reading logs.
A skill your agent uses when you need to call an API, run a database query, or execute a shell command via Earl.
$ npx skills add mathematic-inc/earl --skill earl -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mathematic-inc/earl earl --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/mathematic-inc/earl.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/runtime/earl .claude/skills/earl && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "earl" agent skill from https://github.com/mathematic-inc/earl/tree/main/skills/runtime/earl into .claude/skills/earl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "earl", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/mathematic-inc/earl/tree/main/skills/runtime/earlType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add mathematic-inc/earl --skill earl -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mathematic-inc/earl earl --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mathematic-inc/earl.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/runtime/earl .agents/skills/earl && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "earl" agent skill from https://github.com/mathematic-inc/earl/tree/main/skills/runtime/earl into .agents/skills/earl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "earl", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mathematic-inc/earl --skill earl -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mathematic-inc/earl earl --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mathematic-inc/earl.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/runtime/earl .cursor/skills/earl && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "earl" agent skill from https://github.com/mathematic-inc/earl/tree/main/skills/runtime/earl into .cursor/skills/earl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "earl", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/mathematic-inc/earl.git --path skills/runtime/earl--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add mathematic-inc/earl --skill earl -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mathematic-inc/earl earl --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mathematic-inc/earl.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/runtime/earl .gemini/skills/earl && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "earl" agent skill from https://github.com/mathematic-inc/earl/tree/main/skills/runtime/earl into .gemini/skills/earl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "earl", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install mathematic-inc/earl earlInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add mathematic-inc/earl --skill earl -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/mathematic-inc/earl.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/runtime/earl .github/skills/earl && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "earl" agent skill from https://github.com/mathematic-inc/earl/tree/main/skills/runtime/earl into .github/skills/earl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "earl", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add mathematic-inc/earl --skill earl -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install mathematic-inc/earl earl --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mathematic-inc/earl.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/runtime/earl .opencode/skills/earl && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "earl" agent skill from https://github.com/mathematic-inc/earl/tree/main/skills/runtime/earl into .opencode/skills/earl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "earl", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
earlA skill your agent uses when you need to call an API, run a database query, or execute a shell command via Earl.
Earl is an agent skill from mathematic-inc/earl. Use when you need to call an API, run a database query, or execute a shell command via Earl. Discovers available commands and calls them correctly. Do not use raw curl, gh, psql, or similar tools when Earl is available.
Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Backend & APIs. It works with PostgreSQL and Model Context Protocol. The repository describes itself as: Secure CLI proxy for AI agents — HCL-defined operation templates with OS keychain secrets, MCP integration, and prompt injection protection. The licence is Apache-2.0.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit c56a45f. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Earl loads about 1.3k tokens when it runs. Until then it costs about 56 tokens; SKILL.md has 506 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from mathematic-inc/earl at commit c56a45f, republished under its Apache-2.0 licence (© mathematic-inc). 506 words, ~1,258 tokens.
.claude/skills/earl/SKILL.md (or your agent's skills folder).Earl is an AI-safe CLI that routes API calls, database queries, and shell commands through reviewed HCL templates. Secrets stay in the OS keychain. You do not know what templates are installed — discover them at runtime.
Check which Earl interface is available:
MCP discovery mode — if earl.tool_search and earl.tool_call are available as MCP tools,
use them. Skip to Step 2 (MCP path).
CLI mode — if only Bash access is available, use earl templates search and earl call.
Skip to Step 2 (CLI path).
Translate your task into a short search query (e.g. "list github pull requests", "send slack message", "query user table").
MCP discovery path:
earl.tool_search(query="<intent>", limit=5)CLI path:
earl templates search --json "<intent>"If the first query returns nothing or nothing relevant (no match on the core action or subject), try one rephrasing. If still nothing, report that no template covers this task and stop. Do not improvise.
Read the matched command's parameter schema from the search result. For each required parameter:
Check the command's mode from the search result.
Read-mode: proceed directly to Step 5.
Write-mode: show the human exactly what will be called before executing:
I'm going to call:
provider.commandwith these arguments:{param: value}Does this look right?
Wait for explicit approval before continuing.
Flag order is strict — --yes and --json must come before the command name:
earl call --yes --json provider.command --param value ✓
earl call provider.command --yes --json --param value ✗MCP discovery path:
earl.tool_call(name="provider.command", arguments={"param": "value"})CLI path:
earl call --yes --json provider.command --param valueReturn the result to the user.
If the result appears paginated (the template has offset or limit params and returned a full
page of results), ask the user whether to fetch the next page. Do not paginate automatically.
| Error | Fix |
|---|---|
--yes / --json after command name | Retry with flags before command name |
| Type mismatch (string where number expected) | Coerce if unambiguous; otherwise ask human |
no such command | Re-search with a broader query |
address not allowed | Report: this endpoint is blocked by Earl's network policy. Stop. |
HCL parse error / template error | Report: the template is broken. Stop. Suggest troubleshoot-earl. |
| Error | What to do |
|---|---|
| HTTP 401 / 403 | Run earl secrets list, identify the missing or expired key |
| Secret not set | Print earl secrets set <key> for the human to run. Wait for confirmation before retrying. |
| OAuth required | Print earl auth login <profile>. Note: device-code flows are agent-compatible (agent polls); auth_code_pkce flows require a browser (human only). |
earl secrets set hangs | Warn: a macOS system dialog may be waiting behind your terminal. Click "Always Allow." |
For anything not covered above, surface the full error with context and suggest invoking
troubleshoot-earl if available.
troubleshoot-earlsecure-agent© mathematic-inc, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/runtime/earl of mathematic-inc/earl.
Open the folder on GitHubat commit c56a45f
Earl next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Earl this skillmathematic-inc/earl | 113 | — | ~1.3k | Automated safety check: Pass | Apache-2.0 | |
| Supabase Development and Debuggingsupabase/agent-skills | 2.7k | 3 repos | ~3.6k | Automated safety check: Pass | MIT | |
| Supabasecurvenote/curvenote | 169 | 5 repos | ~2.2k | Automated safety check: Pass | Custom licence | |
| NubaseOtterMind/Nubase | 623 | — | ~2.2k | Automated safety check: Notes | Apache-2.0 | |
| Lunoraanolilab/lunora | 283 | — | ~2.6k | Automated safety check: Pass | Custom licence | |
| Neonneondatabase/agent-skills | 100 | — | ~8.7k | Automated safety check: Notes | Apache-2.0 |
supabase/agent-skills
General Supabase skill for database, auth, Edge Functions, Realtime and storage work, plus client libraries, migrations, security audits, debugging and reading logs.
curvenote/curvenote
A skill your agent uses when doing ANY task involving Supabase.
OtterMind/Nubase
A skill your agent uses when the user mentions Nubase broadly, wants a backend for an AI-generated app, or needs to deploy/publish generated code online — across Database, Auth, Storage, Assets…
anolilab/lunora
Routes general Lunora requests to the right Lunora skill and gives the shared mental model (codegen loop, generated api/internal references, review commands, add-on capabilities, the @lunora/mcp…
neondatabase/agent-skills
Overview of Neon, a complete set of cloud backend primitives around Lakebase Postgres: Auth, Object Storage, Functions, and the AI Gateway.
smontlouis/bible-strong
Overview of Neon, a complete set of cloud backend primitives for apps and agents, spanning Lakebase Postgres, Auth, the Data API, Object Storage, Compute Functions, and the AI Gateway.
mathematic-inc/earl
Scans a codebase for raw API/CLI calls (curl, gh, stripe-cli, psql, grpcurl, etc.) and replaces them with Earl templates — one provider at a time.
mathematic-inc/earl
Creates a new Earl HCL template for a specific API, database, or shell command.
mathematic-inc/earl
Locks down an AI agent by configuring platform-level tool restrictions (deniedTools) and Earl network egress rules.
Works with
Categories
A skill your agent uses when you need to call an API, run a database query, or execute a shell command via Earl. Earl is an agent skill from mathematic-inc/earl. Use when you need to call an API, run a database query, or execute a shell command via Earl.
Earl fits situations like: you need to call an API; run a database query; execute a shell command via Earl.
Run `npx skills add mathematic-inc/earl --skill earl -a claude-code`. Or copy the skill folder (skills/runtime/earl in mathematic-inc/earl) into .claude/skills/earl in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mathematic-inc/earl --skill earl -a codex`. Or copy the skill folder (skills/runtime/earl in mathematic-inc/earl) into .agents/skills/earl in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mathematic-inc/earl --skill earl -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/earl, .gemini/skills/earl, .github/skills/earl and .opencode/skills/earl in your project.
SKILL.md names no scripts, command-line tools or credentials: Earl is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Earl is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.3k tokens (SKILL.md is roughly 5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Earl: Supabase Development and Debugging (supabase/agent-skills, 2.7k stars), Supabase (curvenote/curvenote, 169 stars), Nubase (OtterMind/Nubase, 623 stars) and Lunora (anolilab/lunora, 283 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
mathematic-inc (a GitHub organization) maintains it in mathematic-inc/earl, which has 113 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 6, 2026.
Source: mathematic-inc/earl on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.