thaildhe172591/pythia

pythia-comment

Use when you are about to write or edit a comment in PL/SQL you are changing, or in a .sql deliverable headed for the database.

View source

How to use

  1. Copy the installation command and review the source package before installing it in your own agent environment.
  2. Check the source document for required tools, credentials and supported hosts.
  3. Describe your input and desired deliverable; review the output against the source material.
npx skills add https://github.com/thaildhe172591/pythia --skill pythia-comment

Before you start

  • Installation does not include a model subscription, API allowance or permission to access your files.
  • Repository stars and installation counts describe activity, not an independent quality or security test.
Original skill document

Rendered from the source repository. Headings, examples, code, tables, links, and referenced images are preserved.

Comments - one line, or somewhere else

Announce at start: "Using pythia-comment — one line, date - author - what changed."

Phase: Do — it applies while writing, before pythia apply sees the file

A comment is the only part of a change no compiler checks and no test covers, so it is the part that rots. One line survives the next rewrite. A paragraph becomes a claim the next reader has to disprove before they can work.

The shape

sql
-- 11/09/2026 - jdoe - source flag reads the mapping table, not the join

date - author - what changed, with the date as DD/MM/YYYY. The author is the developer's handle, never the agent's: the agent did not decide this, and a blame trail that names a tool is a dead end.

-- for PL/SQL and SQL. That is the whole surface this skill covers — what pythia applies.

ASCII only. Parts of the chain around a .sql file still read it as ANSI, and a diacritic there becomes mojibake in something the database keeps forever. Vietnamese without diacritics is a house style for exactly this reason, and it is a fine one.

One line

If it needs a second line, the comment is the wrong container. Move it:

What you were about to writeWhere it goes
why this shape, and what breaks without itthe header block of the .sql deliverable
a rule that must not regressa test or verifier, as an assertion with a message
the decision, and the alternatives you rejectedthe spec, or the ticket
what changed and why, for a reader of historythe commit message
what the statement doesnowhere — the statement already says it

Comment only what the code cannot show: a trap, a decision, a why.

Do not

  • Multi-line explanatory blocks above one statement.
  • Banners, box drawing, -- ==== section ====.
  • Bullet lists, quoted error codes, revision archaeology inline.
  • Commented-out code kept as documentation. Delete it — the journal and the

VCS both remember, and neither of them lies about what is live.

  • Touching comments on code you are not changing. That is a different diff,

and it buries yours.

Before you finish

Count the comment lines you added. More than one per statement is a rewrite, not a trim.

Then confirm the comment actually reached the database. A comment is exactly the kind of line a second writer drops without noticing, and it costs nothing to check:

sql
select count(*) from all_source
 where owner = :owner and name = :name and text like :marker

The preview's changed outside pythia warning is the other half of that check — it fires when the object moved since pythia last wrote it.

Related by task

from this repository

More skills

All skills
thaildhe172591
Community

pythia-apply

Use when a PL/SQL change is ready to reach the database - applying a CREATE OR REPLACE, restoring from the journal, or any other write. Runs the six-step flow through pythia apply and enforces the gate - the developer sees the preview and approves in chat before anything is written, and a broken result is never reported as success.

installs
2
GitHub stars
4
Updated
Oct 16
thaildhe172591
Community

pythia-deploy

Use when a change spans more than one statement or file - a release or migration script, "chay script DDL", "deploy ban release", "run these .sql files", a table with its comments and indexes, a package spec and body together, a directory of numbered scripts. Orders the statements, previews every one, gets one approval for the set, runs them through apply's six steps in order and stops at the first failure.

installs
2
GitHub stars
4
Updated
Oct 16
thaildhe172591
Community

pythia-impact

Use before proposing or writing any change to an Oracle object - a procedure, package, function, trigger, view, or table. Impact analysis comes first, because what depends on an object decides how careful the change must be, and Oracle invalidates dependents in cascade.

installs
2
GitHub stars
4
Updated
Oct 16
thaildhe172591
Community

pythia-table

Use when creating or changing a table, column, constraint, index, sequence or comment - "add a column", "create a table for X", "them cot", "tao bang", "sua kieu du lieu", "comment cho cot", a migration script, or a column type change. Designs the DDL to the house standard and Oracle practice, documents every table and column with COMMENT ON, and lands it through pythia deploy with the honest rollback.

installs
2
GitHub stars
4
Updated
Oct 16