Stripe Projects
fossasia/eventyay
A skill your agent uses when the user wants to provision infrastructure or third-party services using Stripe Projects.
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.
$ npx skills add mathematic-inc/earl --skill migrate-to-earl -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mathematic-inc/earl migrate-to-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/development/migrate-to-earl .claude/skills/migrate-to-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 "migrate-to-earl" agent skill from https://github.com/mathematic-inc/earl/tree/main/skills/development/migrate-to-earl into .claude/skills/migrate-to-earl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-to-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/development/migrate-to-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 migrate-to-earl -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mathematic-inc/earl migrate-to-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/development/migrate-to-earl .agents/skills/migrate-to-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 "migrate-to-earl" agent skill from https://github.com/mathematic-inc/earl/tree/main/skills/development/migrate-to-earl into .agents/skills/migrate-to-earl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-to-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 migrate-to-earl -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mathematic-inc/earl migrate-to-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/development/migrate-to-earl .cursor/skills/migrate-to-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 "migrate-to-earl" agent skill from https://github.com/mathematic-inc/earl/tree/main/skills/development/migrate-to-earl into .cursor/skills/migrate-to-earl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-to-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/development/migrate-to-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 migrate-to-earl -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mathematic-inc/earl migrate-to-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/development/migrate-to-earl .gemini/skills/migrate-to-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 "migrate-to-earl" agent skill from https://github.com/mathematic-inc/earl/tree/main/skills/development/migrate-to-earl into .gemini/skills/migrate-to-earl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-to-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 migrate-to-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 migrate-to-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/development/migrate-to-earl .github/skills/migrate-to-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 "migrate-to-earl" agent skill from https://github.com/mathematic-inc/earl/tree/main/skills/development/migrate-to-earl into .github/skills/migrate-to-earl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-to-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 migrate-to-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 migrate-to-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/development/migrate-to-earl .opencode/skills/migrate-to-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 "migrate-to-earl" agent skill from https://github.com/mathematic-inc/earl/tree/main/skills/development/migrate-to-earl into .opencode/skills/migrate-to-earl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-to-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.
migrate-to-earlScans 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.
Migrate To Earl is an agent skill from 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. Use when migrating a project from direct CLI tool usage to Earl, or when replacing raw HTTP calls with reviewed templates.
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/cli-to-earl-mapping.md`).
It sits in Backend & APIs. It works with Stripe and PostgreSQL. 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.
9 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.
Shell commands in SKILL.md call:
curljqghstripeFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
api.github.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
GITHUB_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Migrate To Earl loads about 1.9k tokens when it runs, and up to ~3.5k if it reads all its reference files. Until then it costs about 71 tokens; SKILL.md has 849 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). 849 words, ~1,862 tokens.
.claude/skills/migrate-to-earl/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Converts existing raw CLI/API calls in a codebase to Earl templates. Works one provider at a time to keep changes reviewable and reversible.
These rules prevent context window exhaustion and partial-migration messes:
# TODO: migrate to earl comments and note them in the final report.curl | jq | xargs) are not rewritten.
Add # TODO: migrate to earl (complex pipeline — review manually) and move on.Read references/cli-to-earl-mapping.md (or fetch from https://raw.githubusercontent.com/mathematic-inc/earl/main/skills/development/migrate-to-earl/references/cli-to-earl-mapping.md) for the full list of patterns and files to scan.
Grep across all relevant files for every pattern in the mapping table. Even on repeated invocations, always do a full scan first.
Present a summary before asking the user to pick a provider:
"Found API/CLI calls to:
- GitHub (12 sites in 4 files)
- Stripe (8 sites in 2 files)
- Slack (3 sites in 1 file)
Which provider would you like to migrate first?"
If only one provider is found, proceed with it directly.
Note the remaining providers in the report so the user knows what's left for follow-up runs.
Check if a pre-built template exists for the chosen provider (see references/cli-to-earl-mapping.md).
If pre-built exists:
Check earl templates list first — if the provider is already imported, skip the import
command below and go directly to showing available commands.
earl templates import https://raw.githubusercontent.com/mathematic-inc/earl/main/examples/<provider>.hcl
earl templates listShow the user which commands are available in the imported template.
If no pre-built exists:
Invoke create-template for the provider. The create-template skill includes its own
human review, validation, and secrets steps — do not duplicate those steps here.
For each found call site, determine the corresponding Earl command:
earl templates list --jsonMatch each raw call to an Earl command:
curl -X GET https://api.github.com/repos/... → earl call github.get_repogh issue create ... → earl call github.create_issuestripe customers list → earl call stripe.list_customersFor calls that don't map to any existing command, invoke create-template to add it.
Skip this phase only if Phase 2 took the "no pre-built" path and invoked create-template
directly (i.e., no bare earl templates import was run). In that case, create-template
already ran secrets setup (its own Phase 7 and Phase 8) and confirmed secrets are set.
Proceed to Phase 5.
Do NOT skip if Phase 2 ran a bare earl templates import — even if Phase 3 also invoked
create-template for an unmapped command. The Phase 3 create-template only set secrets for
the new command it created, not for the Phase 2 pre-built import. Phase 4 must still run for
the pre-built provider's secrets.
Check annotations.secrets in the template file for required secret keys. For pre-built
imports, read the imported file at ~/.config/earl/templates/<provider>.hcl (macOS/Linux)
or %APPDATA%\earl\templates\<provider>.hcl (Windows) to find them.
Print the checklist of required secrets for the imported templates:
Before replacing call sites, set the required secrets in your terminal:
earl secrets set <provider>.<key>
Tell me when you're done and I'll verify before we proceed.On macOS: First run of earl secrets set may show a system keychain access dialog.
Click "Always Allow" to avoid repeated prompts.
After the user confirms, verify:
earl secrets listCheck that all required keys appear. Re-print missing ones if needed.
Run a test call for each mapped command before touching any call sites:
earl call --yes --json <provider>.<command> --<param> <representative_value>Important: If a command has annotations.mode = "write", the test call will create/modify/
delete real data. If the template defines environments (check the environments block for
valid names), use --env <name> to select a non-production environment for the test call.
Otherwise, use read-only commands for verification where possible, or use a test/sandbox
account. Warn the user before running any write-mode test calls.
If any call fails, resolve it (via troubleshoot-earl if needed) before proceeding.
Show the user:
Ask explicitly:
"I'm about to rewrite these X call sites. This will modify your source files. Should I proceed? (You should commit your current changes first if you haven't.)"
Do not rewrite anything until the user approves.
For each approved call site, rewrite to the Earl equivalent:
# Before:
curl -H "Authorization: Bearer $GITHUB_TOKEN" https://api.github.com/repos/$OWNER/$REPO
# After:
earl call --yes --json github.get_repo --owner $OWNER --repo $REPOFor source files (Python, JavaScript, etc.): curl calls typically appear inside subprocess invocations — replace the subprocess call with the Earl equivalent for that language:
# Before (Python):
subprocess.run(["curl", "-H", f"Authorization: Bearer {token}", url])
# After (Python):
subprocess.run(["earl", "call", "--yes", "--json", "github.get_repo", "--owner", owner, "--repo", repo])// Before (Node.js):
execSync(`curl -H "Authorization: Bearer ${token}" ${url}`);
// After (Node.js):
execSync(`earl call --yes --json github.get_repo --owner ${owner} --repo ${repo}`);For flagged complex pipelines, add a comment but leave the original:
# TODO: migrate to earl (complex pipeline — review manually)
curl ... | jq ... | xargs ...earl templates validateSummarize what was done:
migrate-to-earl againcreate-templatesecure-agenttroubleshoot-earl© 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
SKILL.md and 1 other file (references) in skills/development/migrate-to-earl of mathematic-inc/earl.
Open the folder on GitHubat commit c56a45f
Migrate To 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 |
|---|---|---|---|---|---|---|
| Migrate To Earl this skillmathematic-inc/earl | 113 | — | ~1.9k | Automated safety check: Pass | Apache-2.0 | |
| Stripe Projectsfossasia/eventyay | 1.7k | 5 repos | ~2k | Automated safety check: Notes | Apache-2.0 | |
| OneCLI Gatewaynanocoai/nanoclaw | 31k | — | ~856 | Automated safety check: Pass | MIT | |
| Adding Warehouse Person PropertiesPostHog/posthog | 40k | — | ~2.9k | Automated safety check: Pass | Custom licence | |
| Production Auditsickn33/agentic-awesome-skills | 47k | 1 repos | ~2.7k | Automated safety check: Pass | MIT | |
| Firecrawl Build Onboardingfirecrawl/firecrawl | 190k | 1 repos | ~1.4k | Automated safety check: Notes | ISC |
fossasia/eventyay
A skill your agent uses when the user wants to provision infrastructure or third-party services using Stripe Projects.
nanocoai/nanoclaw
Explains how to call external APIs through the OneCLI proxy, which injects stored credentials into outgoing HTTPS requests so the agent never handles keys.
PostHog/posthog
Sync columns from a synced data warehouse table onto PostHog person or group properties, so warehouse data becomes usable anywhere person and group properties already work: feature flag targeting…
sickn33/agentic-awesome-skills
Audit a shipped repo for production-readiness gaps across RLS, webhooks, secrets, grants, Stripe idempotency, mobile UX, and deployment health.
firecrawl/firecrawl
Gets Firecrawl working in a project: signs you in through the browser, saves FIRECRAWL_API_KEY to .env and picks the first SDK or REST path.
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.
mathematic-inc/earl
Creates a new Earl HCL template for a specific API, database, or shell command.
mathematic-inc/earl
A skill your agent uses when you need to call an API, run a database query, or execute a shell command via Earl.
mathematic-inc/earl
Locks down an AI agent by configuring platform-level tool restrictions (deniedTools) and Earl network egress rules.
Works with
Categories
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. Migrate To Earl is an agent skill from mathematic-inc/earl.) and replaces them with Earl templates — one provider at a time.
Migrate To Earl fits situations like: migrating a project from direct CLI tool usage to Earl; replacing raw HTTP calls with reviewed templates.
Run `npx skills add mathematic-inc/earl --skill migrate-to-earl -a claude-code`. Or copy the skill folder (skills/development/migrate-to-earl in mathematic-inc/earl) into .claude/skills/migrate-to-earl in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mathematic-inc/earl --skill migrate-to-earl -a codex`. Or copy the skill folder (skills/development/migrate-to-earl in mathematic-inc/earl) into .agents/skills/migrate-to-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 migrate-to-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/migrate-to-earl, .gemini/skills/migrate-to-earl, .github/skills/migrate-to-earl and .opencode/skills/migrate-to-earl in your project.
Going by SKILL.md and its folder, Migrate To Earl needs the command-line tools its instructions call (curl, jq, gh and stripe) and credentials named GITHUB_TOKEN. Our summary lists: Python 3; Node.js; A credential in GITHUB_TOKEN.
SKILL.md names 1 domain. In commands or code: api.github.com; the agent is likely to contact it when it follows the instructions. 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.
Migrate To 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.9k tokens (SKILL.md is roughly 7.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.6k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Migrate To Earl: Stripe Projects (fossasia/eventyay, 1.7k stars), OneCLI Gateway (nanocoai/nanoclaw, 31k stars), Adding Warehouse Person Properties (PostHog/posthog, 40k stars) and Production Audit (sickn33/agentic-awesome-skills, 47k 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 8, 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.