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 skills add AllenMuu/mysql-cli --skill mysql-sharedgit clone --depth 1 https://github.com/AllenMuu/mysql-cliWrote 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/skills/allenmuu/mysql-cli/mysql-shared)<a href="https://agentmods.dev/skills/allenmuu/mysql-cli/mysql-shared"><img src="https://agentmods.dev/badge/skills/allenmuu/mysql-cli/mysql-shared/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/skills/allenmuu/mysql-cli/mysql-shared"><img src="https://agentmods.dev/badge/skills/allenmuu/mysql-cli/mysql-shared.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.00077 | $0.03190 |
| Opus 5.5 | $0.00031 | $0.01276 |
| Sonnet 5.5 | $0.00015 | $0.00638 |
| Haiku 4.5 | $0.00008 | $0.00319 |
Grade B, and why
mysql-shared scanned grade B with 1 finding 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 1mo 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.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
`~/.claude/settings.json`) intercepts any `mysql-cli` call carrying How it starts
The opening of the file, as written. The whole thing — 252 lines — stays where its author put it; the contents beside it link to each section on GitHub.
mysql-cli Shared Rules
CRITICAL: This skill is referenced by
mysql-queryandmysql-schema. Read this file with the Read tool before using either.
mysql-cli is a Go CLI that lets any shell-capable AI agent query MySQL without
an MCP runtime. It is a drop-in replacement for designcomputer/mysql_mcp_server,
re-exposing all read/write capabilities as plain subcommands with JSON by
default and stable exit codes. Agents are the primary caller; the REPL is
only for human debugging.
Convention: assume the
mysql-clibinary is onPATH. If not, install withgo install github.com/AllenMuu/mysql-cli/cmd/mysql-cli@latestor point commands at the built binary.
Before Running
Run these checks before the first command in a session. They are cheap and prevent the most common failures (missing config, unreachable datasource).
1. Config file exists
ls ~/.config/mysql-cli/config.toml
If missing, mysql-cli still works via MYSQL_* env vars or --host/--port/...
overrides, but a config file is the normal path. Resolution priority is
CLI flag > env > project-level (trusted) > global > default (see Project-level Config below). Passwords support ${ENV} placeholders (expanded only in trusted configs).
2. Datasource reachable
A lightweight probe via the read-only databases command (no table scan):
mysql-cli databases -f json
- Exit
0+{"success":true,...}-> reachable, proceed. - Exit
2(CONN_FAILED) -> check host/port/credentials/SSH tunnel. - Exit
10(CONFIG_ERROR) -> checkconfig.tomlsyntax or datasource name.
3. (Optional) Pick a datasource
If the config defines multiple [datasource.<name>] profiles, select one with
-d <name>. Otherwise the default entry is used.
Project-level Config
mysql-cli supports project-level config, structurally identical to the global
config and merged override-style (similar to MCP's .mcp.json).
- Project-level config location:
<project-root>/.config/mysql-cli/config.toml. Discovered by walking up from cwd; the first match wins (stops at home/fs root). Shares the relative path.config/mysql-cli/config.tomlwith the global~/.config/mysql-cli/config.toml; only the root differs. - Trust mechanism (security): project-level config is not loaded by
default. First run
mysql-cli config trust --yesinside the project directory to write the project root into the trust list at~/.config/mysql-cli/trusted.config trustrequires--yesin non-interactive mode (or an interactivey/Nprompt on a TTY) -- AI agents must NOT auto-trust; a human decides. When untrusted, it falls back to global (exit 0) and prints a stderr WARN naming the skipped project config (the warning deliberately omits the trust command, to avoid AI auto-trusting). Suppress with--no-trust-warnorMYSQL_CLI_NO_TRUST_WARN=1; escalate to a hard error with--strict-trust.${ENV}password placeholders expand only in trusted project-level configs - preventing malicious repos from harvesting local env vars or hijacking connections. - Priority chain:
--configflag >MYSQL_CLI_CONFIGenv > project-level (trusted) > global >MYSQL_*field-level overrides > default. When--configorMYSQL_CLI_CONFIGis set, only that file is read and auto-discovery is skipped. - Override-style merge: same-named datasources replace wholesale (project
wins, including SSH subtables); different names form a union;
defaultanddefault_limitfrom project override global.
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.
- 1mo ago First seen · 252 lines · 77 tokens per session scan B 0e3655074885
mysql-shared is a skill published in the GitHub repository AllenMuu/mysql-cli (4 stars, last pushed 1mo ago), licensed MIT. It adds 77 tokens to every session and 3,190 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
create-pr
Creates a GitHub PR with a Linear-ticket-prefixed title and a decision-led, narrative description for Prisma 8. Use when the user wants to create a pull request, open a PR, or submit changes for review.
schema-exploration
Lists tables, describes columns and data types, identifies foreign key relationships, and maps entity relationships in a database. Use when the user asks about database schema, table structure, column types, what tables exist, ERD, foreign keys, or how entities relate.
atlas-mssql
SQL Server specifics for Atlas (also Azure SQL and MSSQL): login, dev database and URL scope (mode=schema vs mode=database, the database query parameter), compatibility level and collation, system-generated constraint names, clustered index defaults and datetime2 precision in HCL, GO batches and the delimiter…
ha-data-stores
Map of Hope Agent's local data stores and safe read-only query workflow. Use when the user asks where Hope Agent stores data, wants to inspect sessions/messages/memory/logs/background jobs/knowledge indexes/settings, asks the model to query local app data, or debugging requires checking persisted state. Trigger…
nornicdb-cypher-queries
Pick fast, predictable Cypher query shapes in NornicDB — point lookups, batch retrieval, pagination, search, traversal, batched UNWIND/MERGE writes, cleanup, multi-tenant isolation. Use when writing or reviewing Cypher whose latency or throughput matters; maps user intent to the executor's hot-path query templates.
volcengine-rds-postgresql
A tool for operating PostgreSQL databases hosted by Volcano Engine's managed database service. PostgreSQL is a relational database used to store structured application data.