Skip to content
cccskills
FreePublished on GitHub

dough-pfe

Finds and assesses existing solutions across the whole product before an implementation responsibility is added or relocated. Use for PFE, Proudly Found Elsewhere, or when deciding whether to reuse, change, modularize, or replace an existing product solution.

The English summary is being prepared. Showing the original description.

nerds-odd-e/doughnut50 stars(GitHub 50 + cccskills 0)

Run score Not tested

See how to install

Files included (1)

  • SKILL.md2.6 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Find and use a suitable existing solution

Given an implementation responsibility, find a domain-correct way to use what this product already knows before adding another representation of the same solution.

Establish the responsibility

Use the selected story or plan, current product behavior, and this project's domain language and applicable decisions to state the responsibility, its purpose, and genuine constraints. Resolve this project's navigation and product boundaries. If the responsibility or the domain meaning needed to assess it is missing, stop the affected work and ask the developer for that specific context.

Project decisions remain authoritative. This skill does not grant permission to override an architectural decision, expand the assignment, or alter unrelated behavior.

Search across the product

Search broadly enough to find conceptual solutions, not just matching names. Follow domain concepts, behavior, callers, tests, documentation, data flow, and ownership across the whole product. Include other components, services, tools, and process boundaries when the responsibility can meaningfully cross them.

Judge a candidate by its domain meaning: the responsibility it owns, the purpose it serves, its rules and invariants, and its lifecycle. Different structure or names do not rule out a fit; similar-looking code does not establish one. Stop searching once the evidence is sufficient to make or rule out a suitable choice.

Choose a domain-coherent outcome

Use the smallest justified outcome:

  • reuse a suitable solution directly;
  • change the existing solution when the responsibility belongs there;
  • modularize it to expose a suitable part, including the necessary current structural work while preserving its original purpose and behavior; or
  • make the gap explicit and add a new solution when no candidate has the same domain meaning.

Explain the candidate evidence and why the choice preserves one coherent representation of the responsibility. Do not force unrelated responsibilities together to remove superficial duplication, and do not add machinery for hypothetical future reuse.

If domain meaning remains unresolved, or the choice has consequential product or architectural effects that are not already authorized, stop that path. Give the developer the competing interpretations, decisive evidence, and the choice needed to continue.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Backend Java — Spring Boot controllers/services, JUnit controller tests, MakeMe. Read this first for any backend work. Use when working on the Java Spring backend.

The English summary is being prepared. Showing the original description.

nerds-odd-e/doughnut50Updated Oct 26, 2026

Backend Java production code, Spring Boot controllers/services/repositories, controller return values, imports, schema ERD pointer. Use when editing backend production Java.

The English summary is being prepared. Showing the original description.

nerds-odd-e/doughnut50Updated Oct 26, 2026

Backend Java tests, controller-level stable-boundary tests, JUnit, @Nested, MakeMe builders, @Transactional, parameterized tests. Use when writing or changing backend JUnit tests.

The English summary is being prepared. Showing the original description.

nerds-odd-e/doughnut50Updated Oct 26, 2026

cli

Free

related to donut CLI. Use when working on donut-cli.

The English summary is being prepared. Showing the original description.

nerds-odd-e/doughnut50Updated Oct 26, 2026

Set up and run the Donut dev environment on Cursor Cloud VM (no Nix). Use when working on Cloud VM, running tests on Cloud VM, or encountering command errors related to missing nix. Triggers on: cloud VM, cloud agent, no nix available, /workspace path.

The English summary is being prepared. Showing the original description.

nerds-odd-e/doughnut50Updated Oct 26, 2026

Regenerate docs/database-erd.md from MySQL information_schema (Mermaid ERD: foreign keys and key columns). Use after Flyway schema changes, new migrations, or when the diagram is stale. Triggers on: database ERD, database-erd.md, export_database_erd, schema diagram, ER diagram after migration.

The English summary is being prepared. Showing the original description.

nerds-odd-e/doughnut50Updated Oct 26, 2026

See all skills by nerds-odd-e

Report a problem with this skill