mysql-shared

Shared instructions for using mysql-cli, a command-line tool for querying and changing MySQL databases without an MCP runtime.

In plain words
What is it for?
Use it before using the related MySQL query or schema skills, especially when checking configuration and database connectivity.
Why use it?
It provides the checks and configuration rules needed before database commands run, reducing failures from missing settings or unreachable data sources.

Skill for Claude CodeCodex

Install

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.

agentmods
npx agentmods add skills/allenmuu/mysql-cli/mysql-shared
Any agent
npx skills add AllenMuu/mysql-cli --skill mysql-shared
Clone the repo
git clone --depth 1 https://github.com/AllenMuu/mysql-cli

Made for: Claude Code, Codex.

Per session 77 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,190 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00077 $0.03190
Opus 5 $0.00039 $0.01595
Sonnet 5 $0.00015 $0.00638
Haiku 4.5 $0.00008 $0.00319

Measured 2d ago against content hash 0e3655074885, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

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 2d 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
skills/mysql-shared/SKILL.md · 252 lines

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-query and mysql-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-cli binary is on PATH. If not, install with go install github.com/AllenMuu/mysql-cli/cmd/mysql-cli@latest or 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) -> check config.toml syntax 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.toml with 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 --yes inside the project directory to write the project root into the trust list at ~/.config/mysql-cli/trusted. config trust requires --yes in non-interactive mode (or an interactive y/N prompt 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-warn or MYSQL_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: --config flag > MYSQL_CLI_CONFIG env > project-level (trusted) > global > MYSQL_* field-level overrides > default. When --config or MYSQL_CLI_CONFIG is 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; default and default_limit from project override global.

Read the full file on GitHub · 252 lines

Changes

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.

  1. 2d ago First seen · 252 lines · 77 tokens per session scan B 0e3655074885

Subscribe to this mod's changes

mysql-shared is a skill published in the GitHub repository AllenMuu/mysql-cli (2 stars, last pushed 21d ago), licensed MIT. It adds 77 tokens to every session and 3,190 once invoked, about $0.0004 per session on Opus 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.

Related

Other skills, from other repositories

prisma-upgrade-v7

Complete migration guide from Prisma ORM v6 to v7 covering all breaking changes. Use when upgrading Prisma versions, encountering v7 errors, or migrating existing projects. Triggers on "upgrade to prisma 7", "prisma 7 migration", "prisma-client generator", "driver adapter required".

nitrocloudofficial/nitrostack · 67 tokens

ddia-systems

Design data systems by understanding storage engines, replication, partitioning, transactions, and consistency models. Use when the user mentions "database choice", "which database should I use", "SQL or NoSQL", "replication lag", "partitioning strategy", "consistency vs availability", "stream processing", "ACID…

wondelai/skills · 138 tokens

sqlitecpp-update-sqlite

How to update the bundled SQLite3 amalgamation (sqlite3/sqlite3.c and sqlite3.h), the Meson wrap, README.md, and CHANGELOG.md. Use when upgrading SQLite, refreshing the vendored amalgamation, or bumping the sqlite3 wrap.

SRombauts/SQLiteCpp · 61 tokens

dsql

Build with Aurora DSQL — manage schemas, execute queries, handle migrations, diagnose query plans, diagnose cluster performance, load data, and develop applications with a serverless, distributed SQL database. Covers IAM auth, multi-tenant patterns, MySQL-to-DSQL and PostgreSQL-to-DSQL schema conversion, FK…

awslabs/agent-plugins · 227 tokens

mongodb-natural-language-querying

Generate read-only MongoDB queries (find) or aggregation pipelines using natural language, with collection schema context and sample documents. Use this skill whenever the user asks to write, create, or generate MongoDB queries, wants to filter/query/aggregate data in MongoDB, asks "how do I query...", needs help with…

mongodb/agent-skills · 162 tokens

sql-translate

Translate SQL queries between database dialects (Snowflake, BigQuery, PostgreSQL, MySQL, etc.).

AltimateAI/altimate-code · 26 tokens