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 agentmods add skills/husniadil/ekstend/databasenpx skills add husniadil/ekstend --skill databasegit clone --depth 1 https://github.com/husniadil/ekstendWhat 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 | $0.00026 | $0.02910 |
| Opus 5 | $0.00013 | $0.01455 |
| Sonnet 5 | $0.00005 | $0.00582 |
| Haiku 4.5 | $0.00003 | $0.00291 |
Grade B, and why
database 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 3d 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.
Asks for rootmediumPrivilege escalation
A mod that escalates privileges can change anything on the machine, not only the project.
| MySQL | `brew install mysql-client` | `sudo apt install mysql-client` | `sudo pacman -S mysql` | How it starts
The opening of the file, as written. The whole thing — 322 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Database CLI
Access and manage MySQL, PostgreSQL, SQLite databases, and Redis key-value stores using their respective command-line clients.
Critical Rules
NEVER do the following:
- NEVER guess or assume table names - always list tables first with
SHOW TABLES,\dt, or.tables - NEVER guess or assume column names - always describe the table first with
DESCRIBE,\d, orPRAGMA table_info - NEVER run SELECT queries on an unfamiliar database without exploring the schema first
- NEVER assume ORM naming conventions (e.g.,
Ordervsorders,userIdvsuser_id) - verify with schema
ALWAYS follow the Query Workflow below when querying data the user asks for.
Database Type Detection
Determine the database type from context:
| Signal | Database Type |
|---|---|
| User says "MySQL", "mysql" | MySQL |
| User says "PostgreSQL", "Postgres", "psql" | PostgreSQL |
| User says "SQLite", "sqlite3" | SQLite |
File path ends in .db, .sqlite, .sqlite3 |
SQLite |
Connection string starts with mysql:// |
MySQL |
Connection string starts with postgresql:// |
PostgreSQL |
Connection string starts with postgres:// |
PostgreSQL |
Connection string starts with sqlite:/// |
SQLite |
Config has MYSQL_* variables |
MySQL |
Config has PG* or POSTGRES_* variables |
PostgreSQL |
Config has SQLITE_* or DATABASE_PATH |
SQLite |
| User says "Redis", "redis-cli" | Redis |
Connection string starts with redis:// |
Redis |
Connection string starts with rediss:// |
Redis |
Config has REDIS_* variables |
Redis |
| Port 3306 mentioned | MySQL |
| Port 5432 mentioned | PostgreSQL |
| Port 6379 mentioned | Redis |
What ships with it
4 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 3d ago First seen · 322 lines · 26 tokens per session scan B 3588afb26179
database is a skill published in the GitHub repository husniadil/ekstend (1 stars, last pushed 4mo ago), licensed MIT. It adds 26 tokens to every session and 2,910 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it B with 1 finding (asks for root). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
azure-resource-manager-redis-dotnet
Azure Resource Manager SDK for Redis in .NET. Use for MANAGEMENT PLANE operations: creating/managing Azure Cache for Redis instances, firewall rules, access keys, patch schedules, linked servers (geo-replication), and private endpoints via Azure Resource Manager. NOT for data plane operations (get/set keys, pub/sub) …
redis-inspect
Inspect Redis cache keys, values, and TTLs for debugging. Supports both main cache and system cache. Use for debugging cache issues, checking cached values, and monitoring cache state. Read-only by default.
redis-js
Work with the Upstash Redis JavaScript/TypeScript SDK for serverless Redis operations. Use for caching, session storage, rate limiting, leaderboards, full-text search (querying, filtering, aggregating with @upstash/redis search extension), and all Redis data structures. Supports automatic serialization/deserialization…
walkeros-using-store-cache
Use when adding read-through caching to a walkerOS store, memoizing a slow API/Sheets backing, composing multi-tier cache chains, or deduplicating concurrent store reads. Covers recipes, TTL choice, error policy, and observability counters.
caching-strategies
CDN, Redis, in-memory cache, cache invalidation, and distributed caching patterns.
fastly-kv-concurrent-write-retry
Fix intermittent 500 errors with "Failed to store" in Fastly KV Store during concurrent writes. Use when: (1) Batch operations fail with 10-20% error rate, (2) Error contains "Failed to store list" or similar KV write failures, (3) Multiple requests updating the same KV key simultaneously, (4) Read-modify-write…