npx skills add ...
npx skills add owenbush/decodie-skill --skill decodie-overview
Generate a high-level overview of a file, directory, or project — answering "what is this and how is it organized." Produces a single summary entry covering purpose, structure, entry points, and dependencies. Re-running on the same target overwrites the existing overview.
npx skills add owenbush/decodie-skill --skill decodie-overview
Generate a high-level overview of a file, directory, or project — answering "what is this and how is it organized" rather than line-by-line explanations. Produces a single summary entry per target, intended as an onboarding starting point.
This mode persists by default — overviews are saved as learning entries. Re-running on the same target overwrites the existing overview rather than accumulating versions.
This mode is read-only with respect to source code. You only read source files and write to the .decodie/ directory.
entry_points and dependencies may be omitted.entry_points and dependencies are usually meaningful.src/utils/helpers.ts)src/auth/, ./)Check if .decodie/ exists at the project root. If not, create it:
.decodie/index.json with { "version": "1.0", "project": "<directory-name>", "entries": [] }.decodie/config.json with default preferences.decodie/sessions/ directory.decodie/rules/ directoryLoad rules. Check for ~/.decodie/rules/*.md (global) and .decodie/rules/*.md (project). Read all .md files found. Treat their content as additional instructions controlling documentation output — tone, language, verbosity, format, audience. Project rules override global rules on conflict. If no rules exist, proceed with defaults.
Load the index summary. Run:
If unavailable, read .decodie/index.json directly.
Determine session ID. Find the highest NNN for today in .decodie/sessions/ matching overview-YYYY-MM-DD-NNN, then increment.
Before generating, check for an existing overview:
.decodie/index.json.decision_type === "overview" and sources is [<canonicalized-target-path>].id, generate fresh content, update the index entry in place. The previous session file is left on disk but no longer referenced.Read the target:
package.json, composer.json, pyproject.toml, README.md, etc.), sample representative source files.Identify four overview dimensions:
purpose (required) — 2-4 sentences describing what this code is for. Lead with intent, not implementation.structure (required) — how the code is organized (sections, modules, key directories and their roles).entry_points (optional) — callable surfaces: exported functions, CLI commands, HTTP routes, framework hooks. Omit if not meaningful.dependencies (optional) — notable internal or external dependencies and what they provide. Omit trivia.Write in plain prose. Avoid jargon-heavy bullet lists; the goal is human onboarding. Calibrate length to scope.
id: Reuse existing for regeneration; generate fresh otherwise. Format: entry-{unix-timestamp}-{random-4-hex-chars}title: e.g., "Overview: src/auth/ — token issuance and verification"experience_level: "foundational" (overviews are onboarding entry points).decision_type: "overview"topics: Lowercase kebab-case tags. Reuse existing tags.lifecycle: "active"sources: Array with exactly one entry — the canonicalized target path.references: For single-file overviews, one reference to the file. For directory/project, empty array.content_file: relative path to session file, e.g. sessions/overview-2026-03-27-001.jsonUse the overview shape — different from standard entries:
decision_type: "overview"purpose (required) — what the target code is forstructure (required) — how the target is organizedentry_points (optional) — callable surfacesdependencies (optional) — notable dependenciestimestamp_end.summary noting the target and whether this was fresh or regenerated.<target> as entry <id> in session <session_id>."<target> (entry <id>)."See references/schema.md for the full .decodie/ data format.
.decodie/ directory can be removed without affecting the project.