emiliodominguez/flow-skills

flow-simplify

Targeted cleanup of provably dead code and accidental complexity.

Voir la source

Mode d’emploi

  1. Copiez la commande et examinez le paquet avant de l’installer dans votre environnement agent.
  2. Consultez le document original pour les outils, identifiants et environnements requis.
  3. Décrivez les entrées et le livrable souhaité ; comparez la sortie aux sources.
npx skills add https://github.com/emiliodominguez/flow-skills --skill flow-simplify

Avant de commencer

  • L’installation n’inclut ni abonnement au modèle, ni quota API, ni accès aux fichiers.
  • Étoiles et installations reflètent l’activité, pas un test indépendant de qualité ou de sécurité.
Document Skill original

Rendu depuis le dépôt source en conservant titres, exemples, code, tableaux, liens et images.

Simplify

Subtract only where it improves understanding without changing required behavior. Fewer lines is a possible outcome, not the acceptance criterion.

Process

  1. Bound the cleanup, establish relevant checks and preserve unrelated staged/unstaged work.

Name the concrete complexity: dead paths, needless indirection, duplicate responsibility, stale comments or generated slop.

  1. Order reduction passes by semantic risk. For large scopes, authorized read-only reviewers can

inspect disjoint areas; one writer per file. No arbitrary agent or file-count threshold.

  1. Caller-check before deleting a symbol: imports, dynamic lookup, registries, reflection,

routes, config, templates, tests, generated sources, package exports. Repository search cannot see external consumers of a published API.

  1. Mark a deletion CONFIRMED-DEAD only with usage and runtime evidence; keep uncertain

exports or negotiate the compatibility change. Keep side-effect imports (registration, polyfills) and license, compiler and tool-directive comments.

  1. Inspect single-use abstractions instead of auto-inlining. Components, Hooks, closures and

effects carry identity, state lifetime and evaluation order even with one caller.

  1. Remove a defensive guard only when input provenance proves it redundant. Static types do not

validate network, JSON, storage, DOM or JavaScript consumers.

  1. Cut in small steps, run behavior and repository checks, inspect the combined diff. Stop when

the stated complexity is resolved.

Anti-patterns

  • Net-negative lines as a quality gate, or every single-use component as waste.
  • Removing imports, comments or guards on regex or type evidence alone.
  • Deleting a public export because internal grep finds no caller.
  • Quietly changing error behavior or component state lifetime.

Done when

  • The targeted code is easier to understand with semantics and compatibility preserved.
  • Deletions have evidence; uncertain consumers remain explicit.
  • Required checks ran on the resulting artifact, not an earlier baseline.

Use flow-review for the diff or flow-refactor for a separate ownership or structure problem.

Tâches connexes

du même dépôt

Autres Skills

Tous les Skills