Golem Add Mysql Rust
golemcloud/golem
Using golem:rdbms/mysql from a Rust Golem agent. An agent skill from golemcloud/golem.
Guides building or updating a Tabularis database driver plugin in Rust that speaks JSON-RPC over stdio and follows the repository's rules.
$ npx skills add TabularisDB/tabularis --skill tabularis-plugin-driver -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install TabularisDB/tabularis tabularis-plugin-driver --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/TabularisDB/tabularis.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/tabularis-plugin-driver .claude/skills/tabularis-plugin-driver && 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 "tabularis-plugin-driver" agent skill from https://github.com/TabularisDB/tabularis/tree/main/.claude/skills/tabularis-plugin-driver into .claude/skills/tabularis-plugin-driver/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tabularis-plugin-driver", 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/TabularisDB/tabularis/tree/main/.claude/skills/tabularis-plugin-driverType 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 TabularisDB/tabularis --skill tabularis-plugin-driver -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install TabularisDB/tabularis tabularis-plugin-driver --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TabularisDB/tabularis.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/tabularis-plugin-driver .agents/skills/tabularis-plugin-driver && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "tabularis-plugin-driver" agent skill from https://github.com/TabularisDB/tabularis/tree/main/.claude/skills/tabularis-plugin-driver into .agents/skills/tabularis-plugin-driver/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tabularis-plugin-driver", 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 TabularisDB/tabularis --skill tabularis-plugin-driver -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install TabularisDB/tabularis tabularis-plugin-driver --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TabularisDB/tabularis.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/tabularis-plugin-driver .cursor/skills/tabularis-plugin-driver && 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 "tabularis-plugin-driver" agent skill from https://github.com/TabularisDB/tabularis/tree/main/.claude/skills/tabularis-plugin-driver into .cursor/skills/tabularis-plugin-driver/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tabularis-plugin-driver", 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/TabularisDB/tabularis.git --path .claude/skills/tabularis-plugin-driver--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 TabularisDB/tabularis --skill tabularis-plugin-driver -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install TabularisDB/tabularis tabularis-plugin-driver --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TabularisDB/tabularis.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/tabularis-plugin-driver .gemini/skills/tabularis-plugin-driver && 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 "tabularis-plugin-driver" agent skill from https://github.com/TabularisDB/tabularis/tree/main/.claude/skills/tabularis-plugin-driver into .gemini/skills/tabularis-plugin-driver/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tabularis-plugin-driver", 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 TabularisDB/tabularis tabularis-plugin-driverInstalls 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 TabularisDB/tabularis --skill tabularis-plugin-driver -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/TabularisDB/tabularis.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/tabularis-plugin-driver .github/skills/tabularis-plugin-driver && 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 "tabularis-plugin-driver" agent skill from https://github.com/TabularisDB/tabularis/tree/main/.claude/skills/tabularis-plugin-driver into .github/skills/tabularis-plugin-driver/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tabularis-plugin-driver", 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 TabularisDB/tabularis --skill tabularis-plugin-driver -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install TabularisDB/tabularis tabularis-plugin-driver --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TabularisDB/tabularis.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/tabularis-plugin-driver .opencode/skills/tabularis-plugin-driver && 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 "tabularis-plugin-driver" agent skill from https://github.com/TabularisDB/tabularis/tree/main/.claude/skills/tabularis-plugin-driver into .opencode/skills/tabularis-plugin-driver/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tabularis-plugin-driver", 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.
tabularis-plugin-driverGuides building or updating a Tabularis database driver plugin in Rust that speaks JSON-RPC over stdio and follows the repository's rules.
The goals are a Rust plugin that talks Tabularis JSON-RPC over stdin and stdout, uses the modern manifest rather than the old minimal one, aims for feature coverage comparable to the built-in MySQL driver where the target database allows, stays modular instead of piling logic into main.rs, and has unit tests for pure utilities and SQL generation. A default repository layout is suggested, with Cargo.toml and manifest.json, and main.rs should only parse requests, dispatch methods and serialize responses.
Before coding, the agent reads the manifest schema, the plugin types and manager, the plugin guide with the RPC and driver sources, a broad built-in driver such as MySQL, and the files that load plugins and handle driver capabilities. Scope then comes from choosing which capabilities the database truly supports, among schemas, views, routines, file-based and folder-based modes, connection strings, identifier quoting, primary key and column changes, foreign keys, table management and read-only or no-connection modes. The plugin must not advertise support it cannot back with working handlers.
A modern manifest needs id, name, version, description, default port, executable, capabilities, data types, default username, color and icon, with optional settings and UI extensions. A manifest checklist reference ships with the skill.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 3a8d43f. 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:
cargoFrom 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.
Tabularis Database Driver Plugin loads about 2.1k tokens when it runs, and up to ~2.9k if it reads all its reference files. Until then it costs about 70 tokens; SKILL.md has 843 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 TabularisDB/tabularis at commit 3a8d43f, republished under its Apache-2.0 licence (© TabularisDB). 843 words, ~2,098 tokens.
.claude/skills/tabularis-plugin-driver/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.Use this skill when building or updating a database plugin for Tabularis.
The skill is optimized for this repository. Follow AGENTS.md, the files in .rules/, and the current plugin-system behavior in src-tauri/src/plugins/ and src/types/plugins.ts.
main.rsPrefer this structure for a new plugin repository:
plugin-root/
├── Cargo.toml
├── manifest.json
├── README.md
├── src/
│ ├── main.rs
│ ├── rpc.rs
│ ├── client.rs
│ ├── error.rs
│ ├── models.rs
│ ├── handlers/
│ │ ├── mod.rs
│ │ ├── metadata.rs
│ │ ├── query.rs
│ │ ├── crud.rs
│ │ └── ddl.rs
│ └── utils/
│ ├── mod.rs
│ ├── identifiers.rs
│ ├── values.rs
│ ├── types.rs
│ └── pagination.rs
├── src/bin/
│ └── test_plugin.rs
└── tests/ # only if integration tests are worth the overheadKeep src/main.rs thin. It should mostly parse requests, dispatch methods, and serialize responses.
plugins/manifest.schema.jsonsrc/types/plugins.tssrc-tauri/src/plugins/manager.rsplugins/PLUGIN_GUIDE.mdsrc-tauri/src/plugins/driver.rssrc-tauri/src/plugins/rpc.rssrc-tauri/src/drivers/mysql/mod.rssrc/hooks/useDrivers.tssrc/utils/connectionStringParser.tssrc/utils/driverCapabilities.tsDecide which capabilities are truly supported by the target database and driver library:
schemasviewsroutinesfile_basedfolder_basedconnection_stringconnection_string_exampleidentifier_quotealter_primary_keyalter_columncreate_foreign_keysmanage_tablesreadonlyno_connection_requiredDo not advertise support you cannot back with working handlers.
At minimum define:
idnameversiondescriptiondefault_portexecutablecapabilitiesdata_typesdefault_usernamecoloriconUse modern optional fields when useful:
settingsui_extensionsSee references/manifest-checklist.md.
Implement the request loop in main.rs, but move logic out immediately:
rpc.rs: request parsing, success/error helpers, method routing supportclient.rs: connection config, client creation, pooling or reuse key logichandlers/metadata.rs: databases, schemas, tables, columns, indexes, foreign keys, views, routineshandlers/query.rs: test_connection, ping, execute_query, count_query, explain_query_plan if possiblehandlers/crud.rs: insert_record, update_record, delete_recordhandlers/ddl.rs: SQL generation helpers and DDL RPC methodsutils/*: quoting, escaping, value formatting, type normalization, pagination mathUse the built-in MySQL driver as the feature benchmark, not as text to copy.
For each feature area, classify it:
supported: implement fullypartially_supported: implement with explicit limitationsunsupported: return an accurate error or empty result as appropriatePrioritize these methods:
test_connectionget_databasesget_schemasget_tablesget_columnsget_foreign_keysget_indexesget_viewsget_view_definitionget_view_columnsget_routinesget_routine_parametersget_routine_definitionexecute_queryinsert_recordupdate_recorddelete_recordget_schema_snapshotget_all_columns_batchget_all_foreign_keys_batchget_create_table_sqlget_add_column_sqlget_alter_column_sqlget_create_index_sqlget_create_foreign_key_sqldrop_indexdrop_foreign_keyIf a method is not safe to emulate, fail explicitly instead of faking success.
When the manifest declares "routine_management": true, the host shows
run / create / edit / drop actions for routines. The backing RPC methods are
optional: if the plugin does not implement one, the host answers the
JSON-RPC "method not found" error (-32601) with a dialect-neutral fallback
(CALL name(args) / SELECT name(args), generic DROP, the raw definition
as edit script). Implement only what the dialect needs:
build_routine_call_sql({ params, routine_name, routine_type, args, schema }) -> string —
args is an ordered list of { name, mode, value: string|null, is_raw: bool };
return an executable invocation script (it is opened in the editor, so
multi-statement scripts are fine — e.g. MySQL's SET @out / CALL / SELECT @out).routine_create_template({ routine_type, schema }) -> string — starter
script for a new PROCEDURE/FUNCTION in the plugin's dialect.get_routine_edit_script({ params, routine_name, routine_type, schema }) -> string —
re-runnable script to alter the routine (e.g. DROP + CREATE, or
CREATE OR REPLACE).drop_routine({ params, routine_name, routine_type, schema }) -> null —
drop the routine; resolve overloads yourself if the dialect has them.Typical useful settings:
Keep settings in the manifest and resolve them in a dedicated config path, not inline in handlers.
Examples of good reasons:
Avoid UI extensions that only decorate the product without improving DB-specific workflows.
Always add unit tests for pure logic:
Prefer pure utility modules so tests stay fast and deterministic.
If the plugin includes a JSON-RPC smoke binary like src/bin/test_plugin.rs, use it to simulate Tabularis requests over stdio.
Before finishing:
cargo testcargo build --releasemanifest.json matches current Tabularis schema and capabilitiesmain.rsAGENTS.md requirements including GitNexus impact analysis before editing existing symbolspnpm for frontend-side validation in this repo and cargo for plugin validationmanage_tables or alter_column without implementing the related methods© TabularisDB, 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 2 other files (references) in .claude/skills/tabularis-plugin-driver of TabularisDB/tabularis.
Open the folder on GitHubat commit 3a8d43f
Tabularis Database Driver Plugin 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 |
|---|---|---|---|---|---|---|
| Tabularis Database Driver Plugin this skillTabularisDB/tabularis | 5.1k | — | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| Golem Add Mysql Rustgolemcloud/golem | 1.5k | — | ~516 | Automated safety check: Pass | Custom licence | |
| Diesel Guardayarotsky/diesel-guard | 121 | — | ~3.1k | Automated safety check: Pass | MIT | |
| SQL Code Reviewgithub/awesome-copilot | 40k | 1 repos | ~2.2k | Automated safety check: Pass | MIT | |
| SQL Database Support for pRESTprest/prest | 4.6k | — | ~1.6k | Automated safety check: Pass | MIT | |
| Chdb SQLvemetric/vemetric | 394 | 1 repos | ~1.2k | Automated safety check: Pass | Apache-2.0 |
golemcloud/golem
Using golem:rdbms/mysql from a Rust Golem agent. An agent skill from golemcloud/golem.
ayarotsky/diesel-guard
Lints Diesel and SQLx Postgres migrations for unsafe schema changes that lock tables or cause downtime, and authors custom Rhai checks.
github/awesome-copilot
Universal SQL code review assistant that performs comprehensive security, maintainability, and code quality analysis across all SQL databases (MySQL, PostgreSQL, SQL Server, Oracle).
prest/prest
Guides classifying, gap-analyzing and scaffolding support for a new SQL database in pREST, from Postgres-compatible variants to entirely new dialects.
vemetric/vemetric
A skill your agent uses when the user wants to run SQL — especially analytical SQL — on local files (parquet/csv/json), URLs, S3 paths, or remote databases (Postgres, MySQL, MongoDB, ClickHouse…
ystemsrx/sql_to_ER
A skill your agent uses when the user wants a Chen-model ER diagram from SQL CREATE TABLE statements or DBML, wants to rearrange or clean up an existing sql2er state, wants a skeleton-only overview…
TabularisDB/tabularis
Reviews a Tabularis pull request locally, judging the diff against the repo's rule files, verifying every claim in its description against the code, and running its tests on the real branch.
Categories
Guides building or updating a Tabularis database driver plugin in Rust that speaks JSON-RPC over stdio and follows the repository's rules. rs, and has unit tests for pure utilities and SQL generation.rs should only parse requests, dispatch methods and serialize responses.
Tabularis Database Driver Plugin fits situations like: creating a new database driver plugin for Tabularis in Rust; updating an existing Tabularis plugin to the modern manifest format; deciding which driver capabilities a plugin should advertise; adding optional UI extensions or settings to a driver plugin.
Run `npx skills add TabularisDB/tabularis --skill tabularis-plugin-driver -a claude-code`. Or copy the skill folder (.claude/skills/tabularis-plugin-driver in TabularisDB/tabularis) into .claude/skills/tabularis-plugin-driver in your project. Claude Code loads it when a task matches its description.
Run `npx skills add TabularisDB/tabularis --skill tabularis-plugin-driver -a codex`. Or copy the skill folder (.claude/skills/tabularis-plugin-driver in TabularisDB/tabularis) into .agents/skills/tabularis-plugin-driver 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 TabularisDB/tabularis --skill tabularis-plugin-driver -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/tabularis-plugin-driver, .gemini/skills/tabularis-plugin-driver, .github/skills/tabularis-plugin-driver and .opencode/skills/tabularis-plugin-driver in your project.
Going by SKILL.md and its folder, Tabularis Database Driver Plugin needs the command-line tools its instructions call (cargo). Our summary lists: A Rust toolchain; A checkout of the Tabularis repository for its rules and plugin sources.
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.
Tabularis Database Driver Plugin 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 2.1k tokens (SKILL.md is roughly 8.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 814 tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Tabularis Database Driver Plugin: Golem Add Mysql Rust (golemcloud/golem, 1.5k stars), Diesel Guard (ayarotsky/diesel-guard, 121 stars), SQL Code Review (github/awesome-copilot, 40k stars) and SQL Database Support for pREST (prest/prest, 4.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
TabularisDB (a GitHub organization) maintains it in TabularisDB/tabularis, which has 5,128 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 6, 2026.
Source: TabularisDB/tabularis on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.