seed

Manages database seed data separately from schema initialization in PostgreSQL.

Updated Mar 26, 2026
One-click install
npx skills add https://github.com/levori119/skyboard --skill seed-levori119
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: seed
Source: https://github.com/levori119/skyboard/tree/main/.claude/skills/seed
Command: npx skills add https://github.com/levori119/skyboard --skill seed-levori119

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Seed data (real names, sectors, workstations) is mixed inside the schema initialization function initDb() in server.js, so changing seed data risks breaking the entire database initialization. This Skill separates seed data management from schema creation. ## Core Features & Use Cases - Add new seed data: Identifies the target table and writes an INSERT ... ON CONFLICT DO NOTHING statement, asking whether it belongs in initDb() (temporary) or a dedicated seedDb() (recommended). - Update existing seed data: Locates the existing INSERT in initDb() and writes an ON CONFLICT DO UPDATE SET statement with an explanation of the change. - List current seed data: Prints all existing INSERTs from initDb() covering crew_members, sectors, sub_sectors, table_modes, and workstation_presets. - Use Case: When a new sector or workstation preset must be added to the SKY-KING air traffic control system, use this Skill to insert it safely without overwriting existing operational data. ## Quick Start Ask the assistant to add a new sector seed entry to the database using the seed skill.

Frequently Asked Questions about seed

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add seed data to a PostgreSQL database safely?

Use INSERT statements with ON CONFLICT DO NOTHING so existing rows are never overwritten. This Skill identifies the target table and writes the idempotent INSERT, placing it in a dedicated seedDb() function rather than mixing it into schema initialization.

How do I update existing seed data without breaking initDb?

Locate the existing INSERT inside initDb() and rewrite it using ON CONFLICT DO UPDATE SET with the new values. The Skill also adds an explanation of why the change was made, keeping schema creation and data seeding concerns separate.

Should seed data live in the same function as CREATE TABLE statements?

No. Schema initialization (CREATE TABLE, ALTER TABLE) should stay in initDb(), while default data inserts belong in a separate seedDb() function. Mixing them means any seed change risks breaking the entire database initialization.

What data should not be included as seed data?

Operational data such as real flight strips must not be seeded, since those are runtime operational records rather than default configuration. Seed data is limited to defaults like sectors, sub-sectors, table modes, workstation presets, and crew members.

Who is authorized to change seed data in this project?

Only the CEO is authorized to modify seed data according to the Skill rules. If a seed value differs between development and production environments, the difference must be documented.