Automated summary
This skill performs small, single-step operations on the SQLite content database (`src/data/data.sqlite`): show the schema, add one column through a Drizzle migration, seed a handful of test rows, or run a read-only SELECT query.
Strengths
- Covers the four most common content-database chores: schema view, column addition, seeding and querying
- Enforces the Drizzle workflow (edit the table file, then `db:generate` and `db:migrate`) instead of a raw ALTER TABLE
- States project conventions up front: foreign keys enforced, ISO 8601 dates as text, booleans as integers 0/1
- Points explicitly to angora-schema, angora-import and angora-media when a task outgrows quick operations
Limitations
- Scoped to one step at a time: no table design or relational modeling
- Assumes an existing project layout with `src/data/db.ts` and table definitions under `src/data/schema/tables/`
- Every schema change requires user approval, which slows down batches of edits
Use it when you need to inspect the existing schema, add a column, insert a few sample rows, or check data with a read-only query.
Avoid it for designing new tables, reworking relationships, or bulk-importing CSV/JSON files from the inbox.
Security analysis
CautionThe skill is a legitimate local dev-tooling helper: it inspects Drizzle schema files, runs migrations via pnpm scripts, seeds sample rows, and runs SELECTs against src/data/data.sqlite. There is no network exfiltration, no curl|sh, no secret access, no obfuscation, and it explicitly requires user approval for schema changes. It lands in 'caution' because it drives bash/node and performs real database writes, and because template interpolation of user arguments into inline scripts plus hand-waved read-only enforcement creates modest injection/accidental-write risk.
- •No allowed-tools declared, so the skill implicitly relies on unrestricted bash/node execution without an explicit capability boundary.
- •Executes inline `node -e` scripts against a local SQLite database, including INSERT seeding — real write side effects on project data.
- •Templates user-supplied table/column names directly into shell-embedded script strings, which is a mild command-injection surface if argument text is not validated.
- •The 'query is read-only, refuse writes' rule is enforced only by instruction text, not by a technical guard (e.g., read-only DB connection or query parser).
Examples
Show me the schema of src/data/data.sqlite and tell me what columns the media table has.Add a company column to the testimonials table using a Drizzle migration, and confirm with me before applying it.Seed 4 realistic rows into pricing_tiers, then count draft vs published posts grouped by author.name: angora-data
description: Quick operations on src/data/data.sqlite — inspect the current schema, add a single column to an existing table via Drizzle migration, seed 2-5 test rows, or run a read-only SELECT/COUNT query. Trigger whenever the user wants a small, single-step database operation. Phrases like 'add a company column to testimonials', 'seed 5 rows into pricing_tiers', 'show me the schema', 'count draft vs published posts grouped by author', 'what's in the media table', 'add a phone column to team_members' all trigger this. For designing new tables or rethinking relationships use angora-schema; for bulk imports from inbox files use angora-import.
argument-hint: [command]
Data: $ARGUMENTS
Quick operations on the SQLite content layer (src/data/data.sqlite).
Commands
| Command | Action |
|---------|--------|
| schema (or no arguments) | Show full database schema (glob src/data/schema/tables/*.ts) |
| add column <table> <column> | Add a column to the Drizzle schema, generate and apply migration (confirm first) |
| seed <table> | Generate 2-5 realistic sample rows |
| query <description> | Run a read-only query and display results |
Schema inspection
Glob src/data/schema/tables/*.ts to discover tables, then read individual files for column details. No need to query the database for structure.
Read-only queries
node -e "
import db from './src/data/db.ts';
import { media } from './src/data/schema/tables/media.ts';
const rows = db.select().from(media).all();
console.table(rows);
"
Use Drizzle's typed API. Import the relevant table from schema/tables/<table>.ts and use db.select(), .where(), etc.
Schema changes (ALTER TABLE, etc.)
All DDL goes through the Drizzle workflow:
- Edit the table's file in
src/data/schema/tables/— add the column to the table definition - Generate migration —
pnpm db:generate - Apply migration —
pnpm db:migrate
Each step requires user approval.
Seeding data
node -e "
import db from './src/data/db.ts';
import { <table> } from './src/data/schema/tables/<table>.ts';
db.insert(<table>).values([
{ /* row 1 */ },
{ /* row 2 */ },
]).run();
console.log('Seeded.');
"
Rules
- All schema changes require user approval before executing.
- Foreign keys are ON — respect referential integrity.
- Use
text()for dates (ISO 8601 format). - Use
integer()for booleans (0/1). queryruns read-only — refuse writes via this command.
For heavier work
This skill is for quick operations. For more involved work, use /angora:
- Schema design (new tables, relational modeling, SEO fields) →
/angora-schema - Data import (CSV, JSON from inbox) →
/angora-import - Media processing (images from inbox) →
/angora-media
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/quick-sqlite-database-operations-mryiqiii/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/quick-sqlite-database-operations-mryiqiii' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/quick-sqlite-database-operations-mryiqiii/download' --output '.skill-downloads/quick-sqlite-database-operations-mryiqiii/SKILL.md.part' && mv '.skill-downloads/quick-sqlite-database-operations-mryiqiii/SKILL.md.part' '.skill-downloads/quick-sqlite-database-operations-mryiqiii/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/quick-sqlite-database-operations-mryiqiii/SKILL.md' && test -s '.skill-downloads/quick-sqlite-database-operations-mryiqiii/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/angora-data' && cp -R '.skill-downloads/quick-sqlite-database-operations-mryiqiii' '.claude/skills/angora-data'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/quick-sqlite-database-operations-mryiqiii'openskills read 'quick-sqlite-database-operations-mryiqiii'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/quick-sqlite-database-operations-mryiqiii/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
Create Interactive Maps with kepler.gl
Data & AI
Create interactive map visualizations and export standalone HTML using the keplergl Python package. Use to plot geospatial data from DataFrames, GeoJSON, or CSV.
Agent-Driven Parameter Optimization
Data & AI
Guide for optimizing configurable systems with a measurable objective, using bounded trials and evidence-based recommendations.
ICP Visitor Outreach
Data & AI
Identify signed-up users matching the ideal customer profile but stalled, and draft personalized outreach to re-engage them.