From aed8226eddd957602f92104144cb1e55ac3ffedc Mon Sep 17 00:00:00 2001 From: Snider Date: Tue, 17 Mar 2026 22:35:39 +0000 Subject: [PATCH] refactor: singular naming + task/code/ namespace MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Plurals → singular: prompts/ → prompt/ tasks/ → task/ flows/ → flow/ personas/ → persona/ Nested task namespace: task/code/review.yaml task/code/refactor.yaml task/code/dead-code.yaml task/code/test-gaps.yaml Mirrors agent naming: core:agent-task-code-review → task/code/review API: prompts.Task("code/review"), prompts.Persona("secops/developer") Co-Authored-By: Virgil --- pkg/prompts/lib/{flows => flow}/cpp.md | 0 pkg/prompts/lib/{flows => flow}/docker.md | 0 pkg/prompts/lib/{flows => flow}/git.md | 0 pkg/prompts/lib/{flows => flow}/go.md | 0 pkg/prompts/lib/{flows => flow}/npm.md | 0 pkg/prompts/lib/{flows => flow}/php.md | 0 .../lib/{flows => flow}/prod-push-polish.md | 0 pkg/prompts/lib/{flows => flow}/py.md | 0 pkg/prompts/lib/{flows => flow}/release.md | 0 pkg/prompts/lib/{flows => flow}/ts.md | 0 .../lib/{personas => persona}/ads/auditor.md | 0 .../ads/creative-strategist.md | 0 .../ads/paid-social-strategist.md | 0 .../ads/ppc-strategist.md | 0 .../ads/programmatic-buyer.md | 0 .../ads/search-query-analyst.md | 0 .../ads/tracking-specialist.md | 0 .../blockchain/identity-graph-operator.md | 0 .../blockchain/identity-trust.md | 0 .../blockchain/security-auditor.md | 0 .../blockchain/zk-steward.md | 0 .../code/agents-orchestrator.md | 0 .../{personas => persona}/code/ai-engineer.md | 0 .../code/autonomous-optimization-architect.md | 0 .../code/backend-architect.md | 0 .../code/data-engineer.md | 0 .../code/developer-advocate.md | 0 .../code/frontend-developer.md | 0 .../code/lsp-index-engineer.md | 0 .../code/rapid-prototyper.md | 0 .../code/senior-developer.md | 0 .../code/technical-writer.md | 0 .../design/brand-guardian.md | 0 .../design/image-prompt-engineer.md | 0 .../design/inclusive-visuals-specialist.md | 0 .../design/security-developer.md | 0 .../design/ui-designer.md | 0 .../design/ux-architect.md | 0 .../design/ux-researcher.md | 0 .../design/visual-storyteller.md | 0 .../design/whimsy-injector.md | 0 .../{personas => persona}/devops/automator.md | 0 .../{personas => persona}/devops/junior.md | 0 .../devops/security-developer.md | 0 .../{personas => persona}/devops/senior.md | 0 .../plan/EXECUTIVE-BRIEF.md | 0 .../{personas => persona}/plan/QUICKSTART.md | 0 .../coordination/agent-activation-prompts.md | 0 .../plan/coordination/handoff-templates.md | 0 .../plan/experiment-tracker.md | 0 .../plan/nexus-strategy.md | 0 .../plan/playbooks/phase-0-discovery.md | 0 .../plan/playbooks/phase-1-strategy.md | 0 .../plan/playbooks/phase-2-foundation.md | 0 .../plan/playbooks/phase-3-build.md | 0 .../plan/playbooks/phase-4-hardening.md | 0 .../plan/playbooks/phase-5-launch.md | 0 .../plan/playbooks/phase-6-operate.md | 0 .../plan/project-shepherd.md | 0 .../runbooks/scenario-enterprise-feature.md | 0 .../runbooks/scenario-incident-response.md | 0 .../runbooks/scenario-marketing-campaign.md | 0 .../plan/runbooks/scenario-startup-mvp.md | 0 .../lib/{personas => persona}/plan/senior.md | 0 .../plan/studio-operations.md | 0 .../plan/studio-producer.md | 0 .../product/behavioral-nudge-engine.md | 0 .../product/feedback-synthesizer.md | 0 .../product/security-developer.md | 0 .../product/sprint-prioritizer.md | 0 .../product/trend-researcher.md | 0 .../sales/account-strategist.md | 0 .../lib/{personas => persona}/sales/coach.md | 0 .../sales/deal-strategist.md | 0 .../sales/discovery-coach.md | 0 .../{personas => persona}/sales/engineer.md | 0 .../sales/outbound-strategist.md | 0 .../sales/pipeline-analyst.md | 0 .../sales/proposal-strategist.md | 0 .../{personas => persona}/secops/architect.md | 0 .../{personas => persona}/secops/developer.md | 0 .../{personas => persona}/secops/devops.md | 0 .../secops/incident-commander.md | 0 .../{personas => persona}/secops/junior.md | 0 .../secops/operations.md | 0 .../{personas => persona}/secops/senior.md | 0 .../smm/carousel-growth-engine.md | 0 .../smm/content-creator.md | 0 .../smm/cultural-intelligence.md | 0 .../smm/growth-hacker.md | 0 .../smm/instagram-curator.md | 0 .../smm/linkedin-content-creator.md | 0 .../smm/reddit-community-builder.md | 0 .../smm/security-developer.md | 0 .../smm/security-secops.md | 0 .../smm/seo-specialist.md | 0 .../smm/social-media-strategist.md | 0 .../smm/tiktok-strategist.md | 0 .../smm/twitter-engager.md | 0 .../spatial/macos-spatial-metal-engineer.md | 0 .../terminal-integration-specialist.md | 0 .../support/accounts-payable.md | 0 .../support/analytics-reporter.md | 0 .../support/compliance-auditor.md | 0 .../support/executive-summary-generator.md | 0 .../support/finance-tracker.md | 0 .../support/infrastructure-maintainer.md | 0 .../support/legal-compliance-checker.md | 0 .../support/responder.md | 0 .../support/security-developer.md | 0 .../support/security-secops.md | 0 .../testing/accessibility-auditor.md | 0 .../testing/api-tester.md | 0 .../testing/evidence-collector.md | 0 .../{personas => persona}/testing/model-qa.md | 0 .../testing/performance-benchmarker.md | 0 .../testing/reality-checker.md | 0 .../testing/security-developer.md | 0 .../testing/test-results-analyzer.md | 0 .../testing/tool-evaluator.md | 0 .../testing/workflow-optimizer.md | 0 pkg/prompts/lib/{prompts => prompt}/coding.md | 0 .../lib/{prompts => prompt}/conventions.md | 0 .../lib/{prompts => prompt}/default.md | 0 .../lib/{prompts => prompt}/security.md | 0 pkg/prompts/lib/{prompts => prompt}/verify.md | 0 .../lib/{tasks => task}/api-consistency.yaml | 0 pkg/prompts/lib/{tasks => task}/bug-fix.yaml | 0 .../lib/{tasks => task/code}/dead-code.yaml | 0 .../lib/{tasks => task/code}/refactor.yaml | 0 .../code/review.yaml} | 0 .../lib/{tasks => task/code}/test-gaps.yaml | 0 .../lib/{tasks => task}/dependency-audit.yaml | 0 pkg/prompts/lib/{tasks => task}/doc-sync.yaml | 0 .../lib/{tasks => task}/feature-port.yaml | 0 .../lib/{tasks => task}/new-feature.yaml | 0 pkg/prompts/prompts.go | 59 +++++++++------ pkg/prompts/prompts_test.go | 74 ++++++++++--------- 138 files changed, 75 insertions(+), 58 deletions(-) rename pkg/prompts/lib/{flows => flow}/cpp.md (100%) rename pkg/prompts/lib/{flows => flow}/docker.md (100%) rename pkg/prompts/lib/{flows => flow}/git.md (100%) rename pkg/prompts/lib/{flows => flow}/go.md (100%) rename pkg/prompts/lib/{flows => flow}/npm.md (100%) rename pkg/prompts/lib/{flows => flow}/php.md (100%) rename pkg/prompts/lib/{flows => flow}/prod-push-polish.md (100%) rename pkg/prompts/lib/{flows => flow}/py.md (100%) rename pkg/prompts/lib/{flows => flow}/release.md (100%) rename pkg/prompts/lib/{flows => flow}/ts.md (100%) rename pkg/prompts/lib/{personas => persona}/ads/auditor.md (100%) rename pkg/prompts/lib/{personas => persona}/ads/creative-strategist.md (100%) rename pkg/prompts/lib/{personas => persona}/ads/paid-social-strategist.md (100%) rename pkg/prompts/lib/{personas => persona}/ads/ppc-strategist.md (100%) rename pkg/prompts/lib/{personas => persona}/ads/programmatic-buyer.md (100%) rename pkg/prompts/lib/{personas => persona}/ads/search-query-analyst.md (100%) rename pkg/prompts/lib/{personas => persona}/ads/tracking-specialist.md (100%) rename pkg/prompts/lib/{personas => persona}/blockchain/identity-graph-operator.md (100%) rename pkg/prompts/lib/{personas => persona}/blockchain/identity-trust.md (100%) rename pkg/prompts/lib/{personas => persona}/blockchain/security-auditor.md (100%) rename pkg/prompts/lib/{personas => persona}/blockchain/zk-steward.md (100%) rename pkg/prompts/lib/{personas => persona}/code/agents-orchestrator.md (100%) rename pkg/prompts/lib/{personas => persona}/code/ai-engineer.md (100%) rename pkg/prompts/lib/{personas => persona}/code/autonomous-optimization-architect.md (100%) rename pkg/prompts/lib/{personas => persona}/code/backend-architect.md (100%) rename pkg/prompts/lib/{personas => persona}/code/data-engineer.md (100%) rename pkg/prompts/lib/{personas => persona}/code/developer-advocate.md (100%) rename pkg/prompts/lib/{personas => persona}/code/frontend-developer.md (100%) rename pkg/prompts/lib/{personas => persona}/code/lsp-index-engineer.md (100%) rename pkg/prompts/lib/{personas => persona}/code/rapid-prototyper.md (100%) rename pkg/prompts/lib/{personas => persona}/code/senior-developer.md (100%) rename pkg/prompts/lib/{personas => persona}/code/technical-writer.md (100%) rename pkg/prompts/lib/{personas => persona}/design/brand-guardian.md (100%) rename pkg/prompts/lib/{personas => persona}/design/image-prompt-engineer.md (100%) rename pkg/prompts/lib/{personas => persona}/design/inclusive-visuals-specialist.md (100%) rename pkg/prompts/lib/{personas => persona}/design/security-developer.md (100%) rename pkg/prompts/lib/{personas => persona}/design/ui-designer.md (100%) rename pkg/prompts/lib/{personas => persona}/design/ux-architect.md (100%) rename pkg/prompts/lib/{personas => persona}/design/ux-researcher.md (100%) rename pkg/prompts/lib/{personas => persona}/design/visual-storyteller.md (100%) rename pkg/prompts/lib/{personas => persona}/design/whimsy-injector.md (100%) rename pkg/prompts/lib/{personas => persona}/devops/automator.md (100%) rename pkg/prompts/lib/{personas => persona}/devops/junior.md (100%) rename pkg/prompts/lib/{personas => persona}/devops/security-developer.md (100%) rename pkg/prompts/lib/{personas => persona}/devops/senior.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/EXECUTIVE-BRIEF.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/QUICKSTART.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/coordination/agent-activation-prompts.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/coordination/handoff-templates.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/experiment-tracker.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/nexus-strategy.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/playbooks/phase-0-discovery.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/playbooks/phase-1-strategy.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/playbooks/phase-2-foundation.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/playbooks/phase-3-build.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/playbooks/phase-4-hardening.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/playbooks/phase-5-launch.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/playbooks/phase-6-operate.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/project-shepherd.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/runbooks/scenario-enterprise-feature.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/runbooks/scenario-incident-response.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/runbooks/scenario-marketing-campaign.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/runbooks/scenario-startup-mvp.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/senior.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/studio-operations.md (100%) rename pkg/prompts/lib/{personas => persona}/plan/studio-producer.md (100%) rename pkg/prompts/lib/{personas => persona}/product/behavioral-nudge-engine.md (100%) rename pkg/prompts/lib/{personas => persona}/product/feedback-synthesizer.md (100%) rename pkg/prompts/lib/{personas => persona}/product/security-developer.md (100%) rename pkg/prompts/lib/{personas => persona}/product/sprint-prioritizer.md (100%) rename pkg/prompts/lib/{personas => persona}/product/trend-researcher.md (100%) rename pkg/prompts/lib/{personas => persona}/sales/account-strategist.md (100%) rename pkg/prompts/lib/{personas => persona}/sales/coach.md (100%) rename pkg/prompts/lib/{personas => persona}/sales/deal-strategist.md (100%) rename pkg/prompts/lib/{personas => persona}/sales/discovery-coach.md (100%) rename pkg/prompts/lib/{personas => persona}/sales/engineer.md (100%) rename pkg/prompts/lib/{personas => persona}/sales/outbound-strategist.md (100%) rename pkg/prompts/lib/{personas => persona}/sales/pipeline-analyst.md (100%) rename pkg/prompts/lib/{personas => persona}/sales/proposal-strategist.md (100%) rename pkg/prompts/lib/{personas => persona}/secops/architect.md (100%) rename pkg/prompts/lib/{personas => persona}/secops/developer.md (100%) rename pkg/prompts/lib/{personas => persona}/secops/devops.md (100%) rename pkg/prompts/lib/{personas => persona}/secops/incident-commander.md (100%) rename pkg/prompts/lib/{personas => persona}/secops/junior.md (100%) rename pkg/prompts/lib/{personas => persona}/secops/operations.md (100%) rename pkg/prompts/lib/{personas => persona}/secops/senior.md (100%) rename pkg/prompts/lib/{personas => persona}/smm/carousel-growth-engine.md (100%) rename pkg/prompts/lib/{personas => persona}/smm/content-creator.md (100%) rename pkg/prompts/lib/{personas => persona}/smm/cultural-intelligence.md (100%) rename pkg/prompts/lib/{personas => persona}/smm/growth-hacker.md (100%) rename pkg/prompts/lib/{personas => persona}/smm/instagram-curator.md (100%) rename pkg/prompts/lib/{personas => persona}/smm/linkedin-content-creator.md (100%) rename pkg/prompts/lib/{personas => persona}/smm/reddit-community-builder.md (100%) rename pkg/prompts/lib/{personas => persona}/smm/security-developer.md (100%) rename pkg/prompts/lib/{personas => persona}/smm/security-secops.md (100%) rename pkg/prompts/lib/{personas => persona}/smm/seo-specialist.md (100%) rename pkg/prompts/lib/{personas => persona}/smm/social-media-strategist.md (100%) rename pkg/prompts/lib/{personas => persona}/smm/tiktok-strategist.md (100%) rename pkg/prompts/lib/{personas => persona}/smm/twitter-engager.md (100%) rename pkg/prompts/lib/{personas => persona}/spatial/macos-spatial-metal-engineer.md (100%) rename pkg/prompts/lib/{personas => persona}/spatial/terminal-integration-specialist.md (100%) rename pkg/prompts/lib/{personas => persona}/support/accounts-payable.md (100%) rename pkg/prompts/lib/{personas => persona}/support/analytics-reporter.md (100%) rename pkg/prompts/lib/{personas => persona}/support/compliance-auditor.md (100%) rename pkg/prompts/lib/{personas => persona}/support/executive-summary-generator.md (100%) rename pkg/prompts/lib/{personas => persona}/support/finance-tracker.md (100%) rename pkg/prompts/lib/{personas => persona}/support/infrastructure-maintainer.md (100%) rename pkg/prompts/lib/{personas => persona}/support/legal-compliance-checker.md (100%) rename pkg/prompts/lib/{personas => persona}/support/responder.md (100%) rename pkg/prompts/lib/{personas => persona}/support/security-developer.md (100%) rename pkg/prompts/lib/{personas => persona}/support/security-secops.md (100%) rename pkg/prompts/lib/{personas => persona}/testing/accessibility-auditor.md (100%) rename pkg/prompts/lib/{personas => persona}/testing/api-tester.md (100%) rename pkg/prompts/lib/{personas => persona}/testing/evidence-collector.md (100%) rename pkg/prompts/lib/{personas => persona}/testing/model-qa.md (100%) rename pkg/prompts/lib/{personas => persona}/testing/performance-benchmarker.md (100%) rename pkg/prompts/lib/{personas => persona}/testing/reality-checker.md (100%) rename pkg/prompts/lib/{personas => persona}/testing/security-developer.md (100%) rename pkg/prompts/lib/{personas => persona}/testing/test-results-analyzer.md (100%) rename pkg/prompts/lib/{personas => persona}/testing/tool-evaluator.md (100%) rename pkg/prompts/lib/{personas => persona}/testing/workflow-optimizer.md (100%) rename pkg/prompts/lib/{prompts => prompt}/coding.md (100%) rename pkg/prompts/lib/{prompts => prompt}/conventions.md (100%) rename pkg/prompts/lib/{prompts => prompt}/default.md (100%) rename pkg/prompts/lib/{prompts => prompt}/security.md (100%) rename pkg/prompts/lib/{prompts => prompt}/verify.md (100%) rename pkg/prompts/lib/{tasks => task}/api-consistency.yaml (100%) rename pkg/prompts/lib/{tasks => task}/bug-fix.yaml (100%) rename pkg/prompts/lib/{tasks => task/code}/dead-code.yaml (100%) rename pkg/prompts/lib/{tasks => task/code}/refactor.yaml (100%) rename pkg/prompts/lib/{tasks/code-review.yaml => task/code/review.yaml} (100%) rename pkg/prompts/lib/{tasks => task/code}/test-gaps.yaml (100%) rename pkg/prompts/lib/{tasks => task}/dependency-audit.yaml (100%) rename pkg/prompts/lib/{tasks => task}/doc-sync.yaml (100%) rename pkg/prompts/lib/{tasks => task}/feature-port.yaml (100%) rename pkg/prompts/lib/{tasks => task}/new-feature.yaml (100%) diff --git a/pkg/prompts/lib/flows/cpp.md b/pkg/prompts/lib/flow/cpp.md similarity index 100% rename from pkg/prompts/lib/flows/cpp.md rename to pkg/prompts/lib/flow/cpp.md diff --git a/pkg/prompts/lib/flows/docker.md b/pkg/prompts/lib/flow/docker.md similarity index 100% rename from pkg/prompts/lib/flows/docker.md rename to pkg/prompts/lib/flow/docker.md diff --git a/pkg/prompts/lib/flows/git.md b/pkg/prompts/lib/flow/git.md similarity index 100% rename from pkg/prompts/lib/flows/git.md rename to pkg/prompts/lib/flow/git.md diff --git a/pkg/prompts/lib/flows/go.md b/pkg/prompts/lib/flow/go.md similarity index 100% rename from pkg/prompts/lib/flows/go.md rename to pkg/prompts/lib/flow/go.md diff --git a/pkg/prompts/lib/flows/npm.md b/pkg/prompts/lib/flow/npm.md similarity index 100% rename from pkg/prompts/lib/flows/npm.md rename to pkg/prompts/lib/flow/npm.md diff --git a/pkg/prompts/lib/flows/php.md b/pkg/prompts/lib/flow/php.md similarity index 100% rename from pkg/prompts/lib/flows/php.md rename to pkg/prompts/lib/flow/php.md diff --git a/pkg/prompts/lib/flows/prod-push-polish.md b/pkg/prompts/lib/flow/prod-push-polish.md similarity index 100% rename from pkg/prompts/lib/flows/prod-push-polish.md rename to pkg/prompts/lib/flow/prod-push-polish.md diff --git a/pkg/prompts/lib/flows/py.md b/pkg/prompts/lib/flow/py.md similarity index 100% rename from pkg/prompts/lib/flows/py.md rename to pkg/prompts/lib/flow/py.md diff --git a/pkg/prompts/lib/flows/release.md b/pkg/prompts/lib/flow/release.md similarity index 100% rename from pkg/prompts/lib/flows/release.md rename to pkg/prompts/lib/flow/release.md diff --git a/pkg/prompts/lib/flows/ts.md b/pkg/prompts/lib/flow/ts.md similarity index 100% rename from pkg/prompts/lib/flows/ts.md rename to pkg/prompts/lib/flow/ts.md diff --git a/pkg/prompts/lib/personas/ads/auditor.md b/pkg/prompts/lib/persona/ads/auditor.md similarity index 100% rename from pkg/prompts/lib/personas/ads/auditor.md rename to pkg/prompts/lib/persona/ads/auditor.md diff --git a/pkg/prompts/lib/personas/ads/creative-strategist.md b/pkg/prompts/lib/persona/ads/creative-strategist.md similarity index 100% rename from pkg/prompts/lib/personas/ads/creative-strategist.md rename to pkg/prompts/lib/persona/ads/creative-strategist.md diff --git a/pkg/prompts/lib/personas/ads/paid-social-strategist.md b/pkg/prompts/lib/persona/ads/paid-social-strategist.md similarity index 100% rename from pkg/prompts/lib/personas/ads/paid-social-strategist.md rename to pkg/prompts/lib/persona/ads/paid-social-strategist.md diff --git a/pkg/prompts/lib/personas/ads/ppc-strategist.md b/pkg/prompts/lib/persona/ads/ppc-strategist.md similarity index 100% rename from pkg/prompts/lib/personas/ads/ppc-strategist.md rename to pkg/prompts/lib/persona/ads/ppc-strategist.md diff --git a/pkg/prompts/lib/personas/ads/programmatic-buyer.md b/pkg/prompts/lib/persona/ads/programmatic-buyer.md similarity index 100% rename from pkg/prompts/lib/personas/ads/programmatic-buyer.md rename to pkg/prompts/lib/persona/ads/programmatic-buyer.md diff --git a/pkg/prompts/lib/personas/ads/search-query-analyst.md b/pkg/prompts/lib/persona/ads/search-query-analyst.md similarity index 100% rename from pkg/prompts/lib/personas/ads/search-query-analyst.md rename to pkg/prompts/lib/persona/ads/search-query-analyst.md diff --git a/pkg/prompts/lib/personas/ads/tracking-specialist.md b/pkg/prompts/lib/persona/ads/tracking-specialist.md similarity index 100% rename from pkg/prompts/lib/personas/ads/tracking-specialist.md rename to pkg/prompts/lib/persona/ads/tracking-specialist.md diff --git a/pkg/prompts/lib/personas/blockchain/identity-graph-operator.md b/pkg/prompts/lib/persona/blockchain/identity-graph-operator.md similarity index 100% rename from pkg/prompts/lib/personas/blockchain/identity-graph-operator.md rename to pkg/prompts/lib/persona/blockchain/identity-graph-operator.md diff --git a/pkg/prompts/lib/personas/blockchain/identity-trust.md b/pkg/prompts/lib/persona/blockchain/identity-trust.md similarity index 100% rename from pkg/prompts/lib/personas/blockchain/identity-trust.md rename to pkg/prompts/lib/persona/blockchain/identity-trust.md diff --git a/pkg/prompts/lib/personas/blockchain/security-auditor.md b/pkg/prompts/lib/persona/blockchain/security-auditor.md similarity index 100% rename from pkg/prompts/lib/personas/blockchain/security-auditor.md rename to pkg/prompts/lib/persona/blockchain/security-auditor.md diff --git a/pkg/prompts/lib/personas/blockchain/zk-steward.md b/pkg/prompts/lib/persona/blockchain/zk-steward.md similarity index 100% rename from pkg/prompts/lib/personas/blockchain/zk-steward.md rename to pkg/prompts/lib/persona/blockchain/zk-steward.md diff --git a/pkg/prompts/lib/personas/code/agents-orchestrator.md b/pkg/prompts/lib/persona/code/agents-orchestrator.md similarity index 100% rename from pkg/prompts/lib/personas/code/agents-orchestrator.md rename to pkg/prompts/lib/persona/code/agents-orchestrator.md diff --git a/pkg/prompts/lib/personas/code/ai-engineer.md b/pkg/prompts/lib/persona/code/ai-engineer.md similarity index 100% rename from pkg/prompts/lib/personas/code/ai-engineer.md rename to pkg/prompts/lib/persona/code/ai-engineer.md diff --git a/pkg/prompts/lib/personas/code/autonomous-optimization-architect.md b/pkg/prompts/lib/persona/code/autonomous-optimization-architect.md similarity index 100% rename from pkg/prompts/lib/personas/code/autonomous-optimization-architect.md rename to pkg/prompts/lib/persona/code/autonomous-optimization-architect.md diff --git a/pkg/prompts/lib/personas/code/backend-architect.md b/pkg/prompts/lib/persona/code/backend-architect.md similarity index 100% rename from pkg/prompts/lib/personas/code/backend-architect.md rename to pkg/prompts/lib/persona/code/backend-architect.md diff --git a/pkg/prompts/lib/personas/code/data-engineer.md b/pkg/prompts/lib/persona/code/data-engineer.md similarity index 100% rename from pkg/prompts/lib/personas/code/data-engineer.md rename to pkg/prompts/lib/persona/code/data-engineer.md diff --git a/pkg/prompts/lib/personas/code/developer-advocate.md b/pkg/prompts/lib/persona/code/developer-advocate.md similarity index 100% rename from pkg/prompts/lib/personas/code/developer-advocate.md rename to pkg/prompts/lib/persona/code/developer-advocate.md diff --git a/pkg/prompts/lib/personas/code/frontend-developer.md b/pkg/prompts/lib/persona/code/frontend-developer.md similarity index 100% rename from pkg/prompts/lib/personas/code/frontend-developer.md rename to pkg/prompts/lib/persona/code/frontend-developer.md diff --git a/pkg/prompts/lib/personas/code/lsp-index-engineer.md b/pkg/prompts/lib/persona/code/lsp-index-engineer.md similarity index 100% rename from pkg/prompts/lib/personas/code/lsp-index-engineer.md rename to pkg/prompts/lib/persona/code/lsp-index-engineer.md diff --git a/pkg/prompts/lib/personas/code/rapid-prototyper.md b/pkg/prompts/lib/persona/code/rapid-prototyper.md similarity index 100% rename from pkg/prompts/lib/personas/code/rapid-prototyper.md rename to pkg/prompts/lib/persona/code/rapid-prototyper.md diff --git a/pkg/prompts/lib/personas/code/senior-developer.md b/pkg/prompts/lib/persona/code/senior-developer.md similarity index 100% rename from pkg/prompts/lib/personas/code/senior-developer.md rename to pkg/prompts/lib/persona/code/senior-developer.md diff --git a/pkg/prompts/lib/personas/code/technical-writer.md b/pkg/prompts/lib/persona/code/technical-writer.md similarity index 100% rename from pkg/prompts/lib/personas/code/technical-writer.md rename to pkg/prompts/lib/persona/code/technical-writer.md diff --git a/pkg/prompts/lib/personas/design/brand-guardian.md b/pkg/prompts/lib/persona/design/brand-guardian.md similarity index 100% rename from pkg/prompts/lib/personas/design/brand-guardian.md rename to pkg/prompts/lib/persona/design/brand-guardian.md diff --git a/pkg/prompts/lib/personas/design/image-prompt-engineer.md b/pkg/prompts/lib/persona/design/image-prompt-engineer.md similarity index 100% rename from pkg/prompts/lib/personas/design/image-prompt-engineer.md rename to pkg/prompts/lib/persona/design/image-prompt-engineer.md diff --git a/pkg/prompts/lib/personas/design/inclusive-visuals-specialist.md b/pkg/prompts/lib/persona/design/inclusive-visuals-specialist.md similarity index 100% rename from pkg/prompts/lib/personas/design/inclusive-visuals-specialist.md rename to pkg/prompts/lib/persona/design/inclusive-visuals-specialist.md diff --git a/pkg/prompts/lib/personas/design/security-developer.md b/pkg/prompts/lib/persona/design/security-developer.md similarity index 100% rename from pkg/prompts/lib/personas/design/security-developer.md rename to pkg/prompts/lib/persona/design/security-developer.md diff --git a/pkg/prompts/lib/personas/design/ui-designer.md b/pkg/prompts/lib/persona/design/ui-designer.md similarity index 100% rename from pkg/prompts/lib/personas/design/ui-designer.md rename to pkg/prompts/lib/persona/design/ui-designer.md diff --git a/pkg/prompts/lib/personas/design/ux-architect.md b/pkg/prompts/lib/persona/design/ux-architect.md similarity index 100% rename from pkg/prompts/lib/personas/design/ux-architect.md rename to pkg/prompts/lib/persona/design/ux-architect.md diff --git a/pkg/prompts/lib/personas/design/ux-researcher.md b/pkg/prompts/lib/persona/design/ux-researcher.md similarity index 100% rename from pkg/prompts/lib/personas/design/ux-researcher.md rename to pkg/prompts/lib/persona/design/ux-researcher.md diff --git a/pkg/prompts/lib/personas/design/visual-storyteller.md b/pkg/prompts/lib/persona/design/visual-storyteller.md similarity index 100% rename from pkg/prompts/lib/personas/design/visual-storyteller.md rename to pkg/prompts/lib/persona/design/visual-storyteller.md diff --git a/pkg/prompts/lib/personas/design/whimsy-injector.md b/pkg/prompts/lib/persona/design/whimsy-injector.md similarity index 100% rename from pkg/prompts/lib/personas/design/whimsy-injector.md rename to pkg/prompts/lib/persona/design/whimsy-injector.md diff --git a/pkg/prompts/lib/personas/devops/automator.md b/pkg/prompts/lib/persona/devops/automator.md similarity index 100% rename from pkg/prompts/lib/personas/devops/automator.md rename to pkg/prompts/lib/persona/devops/automator.md diff --git a/pkg/prompts/lib/personas/devops/junior.md b/pkg/prompts/lib/persona/devops/junior.md similarity index 100% rename from pkg/prompts/lib/personas/devops/junior.md rename to pkg/prompts/lib/persona/devops/junior.md diff --git a/pkg/prompts/lib/personas/devops/security-developer.md b/pkg/prompts/lib/persona/devops/security-developer.md similarity index 100% rename from pkg/prompts/lib/personas/devops/security-developer.md rename to pkg/prompts/lib/persona/devops/security-developer.md diff --git a/pkg/prompts/lib/personas/devops/senior.md b/pkg/prompts/lib/persona/devops/senior.md similarity index 100% rename from pkg/prompts/lib/personas/devops/senior.md rename to pkg/prompts/lib/persona/devops/senior.md diff --git a/pkg/prompts/lib/personas/plan/EXECUTIVE-BRIEF.md b/pkg/prompts/lib/persona/plan/EXECUTIVE-BRIEF.md similarity index 100% rename from pkg/prompts/lib/personas/plan/EXECUTIVE-BRIEF.md rename to pkg/prompts/lib/persona/plan/EXECUTIVE-BRIEF.md diff --git a/pkg/prompts/lib/personas/plan/QUICKSTART.md b/pkg/prompts/lib/persona/plan/QUICKSTART.md similarity index 100% rename from pkg/prompts/lib/personas/plan/QUICKSTART.md rename to pkg/prompts/lib/persona/plan/QUICKSTART.md diff --git a/pkg/prompts/lib/personas/plan/coordination/agent-activation-prompts.md b/pkg/prompts/lib/persona/plan/coordination/agent-activation-prompts.md similarity index 100% rename from pkg/prompts/lib/personas/plan/coordination/agent-activation-prompts.md rename to pkg/prompts/lib/persona/plan/coordination/agent-activation-prompts.md diff --git a/pkg/prompts/lib/personas/plan/coordination/handoff-templates.md b/pkg/prompts/lib/persona/plan/coordination/handoff-templates.md similarity index 100% rename from pkg/prompts/lib/personas/plan/coordination/handoff-templates.md rename to pkg/prompts/lib/persona/plan/coordination/handoff-templates.md diff --git a/pkg/prompts/lib/personas/plan/experiment-tracker.md b/pkg/prompts/lib/persona/plan/experiment-tracker.md similarity index 100% rename from pkg/prompts/lib/personas/plan/experiment-tracker.md rename to pkg/prompts/lib/persona/plan/experiment-tracker.md diff --git a/pkg/prompts/lib/personas/plan/nexus-strategy.md b/pkg/prompts/lib/persona/plan/nexus-strategy.md similarity index 100% rename from pkg/prompts/lib/personas/plan/nexus-strategy.md rename to pkg/prompts/lib/persona/plan/nexus-strategy.md diff --git a/pkg/prompts/lib/personas/plan/playbooks/phase-0-discovery.md b/pkg/prompts/lib/persona/plan/playbooks/phase-0-discovery.md similarity index 100% rename from pkg/prompts/lib/personas/plan/playbooks/phase-0-discovery.md rename to pkg/prompts/lib/persona/plan/playbooks/phase-0-discovery.md diff --git a/pkg/prompts/lib/personas/plan/playbooks/phase-1-strategy.md b/pkg/prompts/lib/persona/plan/playbooks/phase-1-strategy.md similarity index 100% rename from pkg/prompts/lib/personas/plan/playbooks/phase-1-strategy.md rename to pkg/prompts/lib/persona/plan/playbooks/phase-1-strategy.md diff --git a/pkg/prompts/lib/personas/plan/playbooks/phase-2-foundation.md b/pkg/prompts/lib/persona/plan/playbooks/phase-2-foundation.md similarity index 100% rename from pkg/prompts/lib/personas/plan/playbooks/phase-2-foundation.md rename to pkg/prompts/lib/persona/plan/playbooks/phase-2-foundation.md diff --git a/pkg/prompts/lib/personas/plan/playbooks/phase-3-build.md b/pkg/prompts/lib/persona/plan/playbooks/phase-3-build.md similarity index 100% rename from pkg/prompts/lib/personas/plan/playbooks/phase-3-build.md rename to pkg/prompts/lib/persona/plan/playbooks/phase-3-build.md diff --git a/pkg/prompts/lib/personas/plan/playbooks/phase-4-hardening.md b/pkg/prompts/lib/persona/plan/playbooks/phase-4-hardening.md similarity index 100% rename from pkg/prompts/lib/personas/plan/playbooks/phase-4-hardening.md rename to pkg/prompts/lib/persona/plan/playbooks/phase-4-hardening.md diff --git a/pkg/prompts/lib/personas/plan/playbooks/phase-5-launch.md b/pkg/prompts/lib/persona/plan/playbooks/phase-5-launch.md similarity index 100% rename from pkg/prompts/lib/personas/plan/playbooks/phase-5-launch.md rename to pkg/prompts/lib/persona/plan/playbooks/phase-5-launch.md diff --git a/pkg/prompts/lib/personas/plan/playbooks/phase-6-operate.md b/pkg/prompts/lib/persona/plan/playbooks/phase-6-operate.md similarity index 100% rename from pkg/prompts/lib/personas/plan/playbooks/phase-6-operate.md rename to pkg/prompts/lib/persona/plan/playbooks/phase-6-operate.md diff --git a/pkg/prompts/lib/personas/plan/project-shepherd.md b/pkg/prompts/lib/persona/plan/project-shepherd.md similarity index 100% rename from pkg/prompts/lib/personas/plan/project-shepherd.md rename to pkg/prompts/lib/persona/plan/project-shepherd.md diff --git a/pkg/prompts/lib/personas/plan/runbooks/scenario-enterprise-feature.md b/pkg/prompts/lib/persona/plan/runbooks/scenario-enterprise-feature.md similarity index 100% rename from pkg/prompts/lib/personas/plan/runbooks/scenario-enterprise-feature.md rename to pkg/prompts/lib/persona/plan/runbooks/scenario-enterprise-feature.md diff --git a/pkg/prompts/lib/personas/plan/runbooks/scenario-incident-response.md b/pkg/prompts/lib/persona/plan/runbooks/scenario-incident-response.md similarity index 100% rename from pkg/prompts/lib/personas/plan/runbooks/scenario-incident-response.md rename to pkg/prompts/lib/persona/plan/runbooks/scenario-incident-response.md diff --git a/pkg/prompts/lib/personas/plan/runbooks/scenario-marketing-campaign.md b/pkg/prompts/lib/persona/plan/runbooks/scenario-marketing-campaign.md similarity index 100% rename from pkg/prompts/lib/personas/plan/runbooks/scenario-marketing-campaign.md rename to pkg/prompts/lib/persona/plan/runbooks/scenario-marketing-campaign.md diff --git a/pkg/prompts/lib/personas/plan/runbooks/scenario-startup-mvp.md b/pkg/prompts/lib/persona/plan/runbooks/scenario-startup-mvp.md similarity index 100% rename from pkg/prompts/lib/personas/plan/runbooks/scenario-startup-mvp.md rename to pkg/prompts/lib/persona/plan/runbooks/scenario-startup-mvp.md diff --git a/pkg/prompts/lib/personas/plan/senior.md b/pkg/prompts/lib/persona/plan/senior.md similarity index 100% rename from pkg/prompts/lib/personas/plan/senior.md rename to pkg/prompts/lib/persona/plan/senior.md diff --git a/pkg/prompts/lib/personas/plan/studio-operations.md b/pkg/prompts/lib/persona/plan/studio-operations.md similarity index 100% rename from pkg/prompts/lib/personas/plan/studio-operations.md rename to pkg/prompts/lib/persona/plan/studio-operations.md diff --git a/pkg/prompts/lib/personas/plan/studio-producer.md b/pkg/prompts/lib/persona/plan/studio-producer.md similarity index 100% rename from pkg/prompts/lib/personas/plan/studio-producer.md rename to pkg/prompts/lib/persona/plan/studio-producer.md diff --git a/pkg/prompts/lib/personas/product/behavioral-nudge-engine.md b/pkg/prompts/lib/persona/product/behavioral-nudge-engine.md similarity index 100% rename from pkg/prompts/lib/personas/product/behavioral-nudge-engine.md rename to pkg/prompts/lib/persona/product/behavioral-nudge-engine.md diff --git a/pkg/prompts/lib/personas/product/feedback-synthesizer.md b/pkg/prompts/lib/persona/product/feedback-synthesizer.md similarity index 100% rename from pkg/prompts/lib/personas/product/feedback-synthesizer.md rename to pkg/prompts/lib/persona/product/feedback-synthesizer.md diff --git a/pkg/prompts/lib/personas/product/security-developer.md b/pkg/prompts/lib/persona/product/security-developer.md similarity index 100% rename from pkg/prompts/lib/personas/product/security-developer.md rename to pkg/prompts/lib/persona/product/security-developer.md diff --git a/pkg/prompts/lib/personas/product/sprint-prioritizer.md b/pkg/prompts/lib/persona/product/sprint-prioritizer.md similarity index 100% rename from pkg/prompts/lib/personas/product/sprint-prioritizer.md rename to pkg/prompts/lib/persona/product/sprint-prioritizer.md diff --git a/pkg/prompts/lib/personas/product/trend-researcher.md b/pkg/prompts/lib/persona/product/trend-researcher.md similarity index 100% rename from pkg/prompts/lib/personas/product/trend-researcher.md rename to pkg/prompts/lib/persona/product/trend-researcher.md diff --git a/pkg/prompts/lib/personas/sales/account-strategist.md b/pkg/prompts/lib/persona/sales/account-strategist.md similarity index 100% rename from pkg/prompts/lib/personas/sales/account-strategist.md rename to pkg/prompts/lib/persona/sales/account-strategist.md diff --git a/pkg/prompts/lib/personas/sales/coach.md b/pkg/prompts/lib/persona/sales/coach.md similarity index 100% rename from pkg/prompts/lib/personas/sales/coach.md rename to pkg/prompts/lib/persona/sales/coach.md diff --git a/pkg/prompts/lib/personas/sales/deal-strategist.md b/pkg/prompts/lib/persona/sales/deal-strategist.md similarity index 100% rename from pkg/prompts/lib/personas/sales/deal-strategist.md rename to pkg/prompts/lib/persona/sales/deal-strategist.md diff --git a/pkg/prompts/lib/personas/sales/discovery-coach.md b/pkg/prompts/lib/persona/sales/discovery-coach.md similarity index 100% rename from pkg/prompts/lib/personas/sales/discovery-coach.md rename to pkg/prompts/lib/persona/sales/discovery-coach.md diff --git a/pkg/prompts/lib/personas/sales/engineer.md b/pkg/prompts/lib/persona/sales/engineer.md similarity index 100% rename from pkg/prompts/lib/personas/sales/engineer.md rename to pkg/prompts/lib/persona/sales/engineer.md diff --git a/pkg/prompts/lib/personas/sales/outbound-strategist.md b/pkg/prompts/lib/persona/sales/outbound-strategist.md similarity index 100% rename from pkg/prompts/lib/personas/sales/outbound-strategist.md rename to pkg/prompts/lib/persona/sales/outbound-strategist.md diff --git a/pkg/prompts/lib/personas/sales/pipeline-analyst.md b/pkg/prompts/lib/persona/sales/pipeline-analyst.md similarity index 100% rename from pkg/prompts/lib/personas/sales/pipeline-analyst.md rename to pkg/prompts/lib/persona/sales/pipeline-analyst.md diff --git a/pkg/prompts/lib/personas/sales/proposal-strategist.md b/pkg/prompts/lib/persona/sales/proposal-strategist.md similarity index 100% rename from pkg/prompts/lib/personas/sales/proposal-strategist.md rename to pkg/prompts/lib/persona/sales/proposal-strategist.md diff --git a/pkg/prompts/lib/personas/secops/architect.md b/pkg/prompts/lib/persona/secops/architect.md similarity index 100% rename from pkg/prompts/lib/personas/secops/architect.md rename to pkg/prompts/lib/persona/secops/architect.md diff --git a/pkg/prompts/lib/personas/secops/developer.md b/pkg/prompts/lib/persona/secops/developer.md similarity index 100% rename from pkg/prompts/lib/personas/secops/developer.md rename to pkg/prompts/lib/persona/secops/developer.md diff --git a/pkg/prompts/lib/personas/secops/devops.md b/pkg/prompts/lib/persona/secops/devops.md similarity index 100% rename from pkg/prompts/lib/personas/secops/devops.md rename to pkg/prompts/lib/persona/secops/devops.md diff --git a/pkg/prompts/lib/personas/secops/incident-commander.md b/pkg/prompts/lib/persona/secops/incident-commander.md similarity index 100% rename from pkg/prompts/lib/personas/secops/incident-commander.md rename to pkg/prompts/lib/persona/secops/incident-commander.md diff --git a/pkg/prompts/lib/personas/secops/junior.md b/pkg/prompts/lib/persona/secops/junior.md similarity index 100% rename from pkg/prompts/lib/personas/secops/junior.md rename to pkg/prompts/lib/persona/secops/junior.md diff --git a/pkg/prompts/lib/personas/secops/operations.md b/pkg/prompts/lib/persona/secops/operations.md similarity index 100% rename from pkg/prompts/lib/personas/secops/operations.md rename to pkg/prompts/lib/persona/secops/operations.md diff --git a/pkg/prompts/lib/personas/secops/senior.md b/pkg/prompts/lib/persona/secops/senior.md similarity index 100% rename from pkg/prompts/lib/personas/secops/senior.md rename to pkg/prompts/lib/persona/secops/senior.md diff --git a/pkg/prompts/lib/personas/smm/carousel-growth-engine.md b/pkg/prompts/lib/persona/smm/carousel-growth-engine.md similarity index 100% rename from pkg/prompts/lib/personas/smm/carousel-growth-engine.md rename to pkg/prompts/lib/persona/smm/carousel-growth-engine.md diff --git a/pkg/prompts/lib/personas/smm/content-creator.md b/pkg/prompts/lib/persona/smm/content-creator.md similarity index 100% rename from pkg/prompts/lib/personas/smm/content-creator.md rename to pkg/prompts/lib/persona/smm/content-creator.md diff --git a/pkg/prompts/lib/personas/smm/cultural-intelligence.md b/pkg/prompts/lib/persona/smm/cultural-intelligence.md similarity index 100% rename from pkg/prompts/lib/personas/smm/cultural-intelligence.md rename to pkg/prompts/lib/persona/smm/cultural-intelligence.md diff --git a/pkg/prompts/lib/personas/smm/growth-hacker.md b/pkg/prompts/lib/persona/smm/growth-hacker.md similarity index 100% rename from pkg/prompts/lib/personas/smm/growth-hacker.md rename to pkg/prompts/lib/persona/smm/growth-hacker.md diff --git a/pkg/prompts/lib/personas/smm/instagram-curator.md b/pkg/prompts/lib/persona/smm/instagram-curator.md similarity index 100% rename from pkg/prompts/lib/personas/smm/instagram-curator.md rename to pkg/prompts/lib/persona/smm/instagram-curator.md diff --git a/pkg/prompts/lib/personas/smm/linkedin-content-creator.md b/pkg/prompts/lib/persona/smm/linkedin-content-creator.md similarity index 100% rename from pkg/prompts/lib/personas/smm/linkedin-content-creator.md rename to pkg/prompts/lib/persona/smm/linkedin-content-creator.md diff --git a/pkg/prompts/lib/personas/smm/reddit-community-builder.md b/pkg/prompts/lib/persona/smm/reddit-community-builder.md similarity index 100% rename from pkg/prompts/lib/personas/smm/reddit-community-builder.md rename to pkg/prompts/lib/persona/smm/reddit-community-builder.md diff --git a/pkg/prompts/lib/personas/smm/security-developer.md b/pkg/prompts/lib/persona/smm/security-developer.md similarity index 100% rename from pkg/prompts/lib/personas/smm/security-developer.md rename to pkg/prompts/lib/persona/smm/security-developer.md diff --git a/pkg/prompts/lib/personas/smm/security-secops.md b/pkg/prompts/lib/persona/smm/security-secops.md similarity index 100% rename from pkg/prompts/lib/personas/smm/security-secops.md rename to pkg/prompts/lib/persona/smm/security-secops.md diff --git a/pkg/prompts/lib/personas/smm/seo-specialist.md b/pkg/prompts/lib/persona/smm/seo-specialist.md similarity index 100% rename from pkg/prompts/lib/personas/smm/seo-specialist.md rename to pkg/prompts/lib/persona/smm/seo-specialist.md diff --git a/pkg/prompts/lib/personas/smm/social-media-strategist.md b/pkg/prompts/lib/persona/smm/social-media-strategist.md similarity index 100% rename from pkg/prompts/lib/personas/smm/social-media-strategist.md rename to pkg/prompts/lib/persona/smm/social-media-strategist.md diff --git a/pkg/prompts/lib/personas/smm/tiktok-strategist.md b/pkg/prompts/lib/persona/smm/tiktok-strategist.md similarity index 100% rename from pkg/prompts/lib/personas/smm/tiktok-strategist.md rename to pkg/prompts/lib/persona/smm/tiktok-strategist.md diff --git a/pkg/prompts/lib/personas/smm/twitter-engager.md b/pkg/prompts/lib/persona/smm/twitter-engager.md similarity index 100% rename from pkg/prompts/lib/personas/smm/twitter-engager.md rename to pkg/prompts/lib/persona/smm/twitter-engager.md diff --git a/pkg/prompts/lib/personas/spatial/macos-spatial-metal-engineer.md b/pkg/prompts/lib/persona/spatial/macos-spatial-metal-engineer.md similarity index 100% rename from pkg/prompts/lib/personas/spatial/macos-spatial-metal-engineer.md rename to pkg/prompts/lib/persona/spatial/macos-spatial-metal-engineer.md diff --git a/pkg/prompts/lib/personas/spatial/terminal-integration-specialist.md b/pkg/prompts/lib/persona/spatial/terminal-integration-specialist.md similarity index 100% rename from pkg/prompts/lib/personas/spatial/terminal-integration-specialist.md rename to pkg/prompts/lib/persona/spatial/terminal-integration-specialist.md diff --git a/pkg/prompts/lib/personas/support/accounts-payable.md b/pkg/prompts/lib/persona/support/accounts-payable.md similarity index 100% rename from pkg/prompts/lib/personas/support/accounts-payable.md rename to pkg/prompts/lib/persona/support/accounts-payable.md diff --git a/pkg/prompts/lib/personas/support/analytics-reporter.md b/pkg/prompts/lib/persona/support/analytics-reporter.md similarity index 100% rename from pkg/prompts/lib/personas/support/analytics-reporter.md rename to pkg/prompts/lib/persona/support/analytics-reporter.md diff --git a/pkg/prompts/lib/personas/support/compliance-auditor.md b/pkg/prompts/lib/persona/support/compliance-auditor.md similarity index 100% rename from pkg/prompts/lib/personas/support/compliance-auditor.md rename to pkg/prompts/lib/persona/support/compliance-auditor.md diff --git a/pkg/prompts/lib/personas/support/executive-summary-generator.md b/pkg/prompts/lib/persona/support/executive-summary-generator.md similarity index 100% rename from pkg/prompts/lib/personas/support/executive-summary-generator.md rename to pkg/prompts/lib/persona/support/executive-summary-generator.md diff --git a/pkg/prompts/lib/personas/support/finance-tracker.md b/pkg/prompts/lib/persona/support/finance-tracker.md similarity index 100% rename from pkg/prompts/lib/personas/support/finance-tracker.md rename to pkg/prompts/lib/persona/support/finance-tracker.md diff --git a/pkg/prompts/lib/personas/support/infrastructure-maintainer.md b/pkg/prompts/lib/persona/support/infrastructure-maintainer.md similarity index 100% rename from pkg/prompts/lib/personas/support/infrastructure-maintainer.md rename to pkg/prompts/lib/persona/support/infrastructure-maintainer.md diff --git a/pkg/prompts/lib/personas/support/legal-compliance-checker.md b/pkg/prompts/lib/persona/support/legal-compliance-checker.md similarity index 100% rename from pkg/prompts/lib/personas/support/legal-compliance-checker.md rename to pkg/prompts/lib/persona/support/legal-compliance-checker.md diff --git a/pkg/prompts/lib/personas/support/responder.md b/pkg/prompts/lib/persona/support/responder.md similarity index 100% rename from pkg/prompts/lib/personas/support/responder.md rename to pkg/prompts/lib/persona/support/responder.md diff --git a/pkg/prompts/lib/personas/support/security-developer.md b/pkg/prompts/lib/persona/support/security-developer.md similarity index 100% rename from pkg/prompts/lib/personas/support/security-developer.md rename to pkg/prompts/lib/persona/support/security-developer.md diff --git a/pkg/prompts/lib/personas/support/security-secops.md b/pkg/prompts/lib/persona/support/security-secops.md similarity index 100% rename from pkg/prompts/lib/personas/support/security-secops.md rename to pkg/prompts/lib/persona/support/security-secops.md diff --git a/pkg/prompts/lib/personas/testing/accessibility-auditor.md b/pkg/prompts/lib/persona/testing/accessibility-auditor.md similarity index 100% rename from pkg/prompts/lib/personas/testing/accessibility-auditor.md rename to pkg/prompts/lib/persona/testing/accessibility-auditor.md diff --git a/pkg/prompts/lib/personas/testing/api-tester.md b/pkg/prompts/lib/persona/testing/api-tester.md similarity index 100% rename from pkg/prompts/lib/personas/testing/api-tester.md rename to pkg/prompts/lib/persona/testing/api-tester.md diff --git a/pkg/prompts/lib/personas/testing/evidence-collector.md b/pkg/prompts/lib/persona/testing/evidence-collector.md similarity index 100% rename from pkg/prompts/lib/personas/testing/evidence-collector.md rename to pkg/prompts/lib/persona/testing/evidence-collector.md diff --git a/pkg/prompts/lib/personas/testing/model-qa.md b/pkg/prompts/lib/persona/testing/model-qa.md similarity index 100% rename from pkg/prompts/lib/personas/testing/model-qa.md rename to pkg/prompts/lib/persona/testing/model-qa.md diff --git a/pkg/prompts/lib/personas/testing/performance-benchmarker.md b/pkg/prompts/lib/persona/testing/performance-benchmarker.md similarity index 100% rename from pkg/prompts/lib/personas/testing/performance-benchmarker.md rename to pkg/prompts/lib/persona/testing/performance-benchmarker.md diff --git a/pkg/prompts/lib/personas/testing/reality-checker.md b/pkg/prompts/lib/persona/testing/reality-checker.md similarity index 100% rename from pkg/prompts/lib/personas/testing/reality-checker.md rename to pkg/prompts/lib/persona/testing/reality-checker.md diff --git a/pkg/prompts/lib/personas/testing/security-developer.md b/pkg/prompts/lib/persona/testing/security-developer.md similarity index 100% rename from pkg/prompts/lib/personas/testing/security-developer.md rename to pkg/prompts/lib/persona/testing/security-developer.md diff --git a/pkg/prompts/lib/personas/testing/test-results-analyzer.md b/pkg/prompts/lib/persona/testing/test-results-analyzer.md similarity index 100% rename from pkg/prompts/lib/personas/testing/test-results-analyzer.md rename to pkg/prompts/lib/persona/testing/test-results-analyzer.md diff --git a/pkg/prompts/lib/personas/testing/tool-evaluator.md b/pkg/prompts/lib/persona/testing/tool-evaluator.md similarity index 100% rename from pkg/prompts/lib/personas/testing/tool-evaluator.md rename to pkg/prompts/lib/persona/testing/tool-evaluator.md diff --git a/pkg/prompts/lib/personas/testing/workflow-optimizer.md b/pkg/prompts/lib/persona/testing/workflow-optimizer.md similarity index 100% rename from pkg/prompts/lib/personas/testing/workflow-optimizer.md rename to pkg/prompts/lib/persona/testing/workflow-optimizer.md diff --git a/pkg/prompts/lib/prompts/coding.md b/pkg/prompts/lib/prompt/coding.md similarity index 100% rename from pkg/prompts/lib/prompts/coding.md rename to pkg/prompts/lib/prompt/coding.md diff --git a/pkg/prompts/lib/prompts/conventions.md b/pkg/prompts/lib/prompt/conventions.md similarity index 100% rename from pkg/prompts/lib/prompts/conventions.md rename to pkg/prompts/lib/prompt/conventions.md diff --git a/pkg/prompts/lib/prompts/default.md b/pkg/prompts/lib/prompt/default.md similarity index 100% rename from pkg/prompts/lib/prompts/default.md rename to pkg/prompts/lib/prompt/default.md diff --git a/pkg/prompts/lib/prompts/security.md b/pkg/prompts/lib/prompt/security.md similarity index 100% rename from pkg/prompts/lib/prompts/security.md rename to pkg/prompts/lib/prompt/security.md diff --git a/pkg/prompts/lib/prompts/verify.md b/pkg/prompts/lib/prompt/verify.md similarity index 100% rename from pkg/prompts/lib/prompts/verify.md rename to pkg/prompts/lib/prompt/verify.md diff --git a/pkg/prompts/lib/tasks/api-consistency.yaml b/pkg/prompts/lib/task/api-consistency.yaml similarity index 100% rename from pkg/prompts/lib/tasks/api-consistency.yaml rename to pkg/prompts/lib/task/api-consistency.yaml diff --git a/pkg/prompts/lib/tasks/bug-fix.yaml b/pkg/prompts/lib/task/bug-fix.yaml similarity index 100% rename from pkg/prompts/lib/tasks/bug-fix.yaml rename to pkg/prompts/lib/task/bug-fix.yaml diff --git a/pkg/prompts/lib/tasks/dead-code.yaml b/pkg/prompts/lib/task/code/dead-code.yaml similarity index 100% rename from pkg/prompts/lib/tasks/dead-code.yaml rename to pkg/prompts/lib/task/code/dead-code.yaml diff --git a/pkg/prompts/lib/tasks/refactor.yaml b/pkg/prompts/lib/task/code/refactor.yaml similarity index 100% rename from pkg/prompts/lib/tasks/refactor.yaml rename to pkg/prompts/lib/task/code/refactor.yaml diff --git a/pkg/prompts/lib/tasks/code-review.yaml b/pkg/prompts/lib/task/code/review.yaml similarity index 100% rename from pkg/prompts/lib/tasks/code-review.yaml rename to pkg/prompts/lib/task/code/review.yaml diff --git a/pkg/prompts/lib/tasks/test-gaps.yaml b/pkg/prompts/lib/task/code/test-gaps.yaml similarity index 100% rename from pkg/prompts/lib/tasks/test-gaps.yaml rename to pkg/prompts/lib/task/code/test-gaps.yaml diff --git a/pkg/prompts/lib/tasks/dependency-audit.yaml b/pkg/prompts/lib/task/dependency-audit.yaml similarity index 100% rename from pkg/prompts/lib/tasks/dependency-audit.yaml rename to pkg/prompts/lib/task/dependency-audit.yaml diff --git a/pkg/prompts/lib/tasks/doc-sync.yaml b/pkg/prompts/lib/task/doc-sync.yaml similarity index 100% rename from pkg/prompts/lib/tasks/doc-sync.yaml rename to pkg/prompts/lib/task/doc-sync.yaml diff --git a/pkg/prompts/lib/tasks/feature-port.yaml b/pkg/prompts/lib/task/feature-port.yaml similarity index 100% rename from pkg/prompts/lib/tasks/feature-port.yaml rename to pkg/prompts/lib/task/feature-port.yaml diff --git a/pkg/prompts/lib/tasks/new-feature.yaml b/pkg/prompts/lib/task/new-feature.yaml similarity index 100% rename from pkg/prompts/lib/tasks/new-feature.yaml rename to pkg/prompts/lib/task/new-feature.yaml diff --git a/pkg/prompts/prompts.go b/pkg/prompts/prompts.go index d1a07e1..3158c24 100644 --- a/pkg/prompts/prompts.go +++ b/pkg/prompts/prompts.go @@ -5,16 +5,19 @@ // // Structure: // -// lib/prompts/ — System prompts (PROMPT.md content, HOW to work) -// lib/tasks/ — Structured task plans (PLAN.md, WHAT to do) -// lib/flows/ — Multi-phase workflows (orchestration sequences) -// lib/personas/ — Domain/role system prompts (WHO you are) +// lib/prompt/ — System prompts (PROMPT.md content, HOW to work) +// lib/task/ — Structured task plans (PLAN.md, WHAT to do) +// lib/task/code/ — Code-specific tasks (review, refactor, dead-code, test-gaps) +// lib/flow/ — Build/release workflows per language/tool +// lib/persona/ — Domain/role system prompts (WHO you are) // // Usage: // // prompt, _ := prompts.Prompt("coding") // task, _ := prompts.Task("bug-fix") +// task, _ := prompts.Task("code/review") // persona, _ := prompts.Persona("secops/developer") +// flow, _ := prompts.Flow("go") package prompts import ( @@ -24,22 +27,22 @@ import ( "strings" ) -//go:embed lib/prompts/*.md +//go:embed lib/prompt/*.md var promptFS embed.FS -//go:embed lib/tasks/*.yaml +//go:embed lib/task var taskFS embed.FS -//go:embed lib/flows/*.md +//go:embed lib/flow/*.md var flowFS embed.FS -//go:embed lib/personas +//go:embed lib/persona var personaFS embed.FS // Prompt returns a system prompt by slug (written as PROMPT.md). // Slugs: "coding", "verify", "conventions", "security", "default". func Prompt(slug string) (string, error) { - data, err := promptFS.ReadFile("lib/prompts/" + slug + ".md") + data, err := promptFS.ReadFile("lib/prompt/" + slug + ".md") if err != nil { return "", err } @@ -48,7 +51,6 @@ func Prompt(slug string) (string, error) { // Template is an alias for Prompt (backwards compatibility). func Template(slug string) (string, error) { - // Try prompts first, then tasks if content, err := Prompt(slug); err == nil { return content, nil } @@ -56,10 +58,10 @@ func Template(slug string) (string, error) { } // Task returns a structured task plan by slug (written as PLAN.md). -// Slugs: "bug-fix", "new-feature", "refactor", "code-review", etc. +// Slugs: "bug-fix", "new-feature", "code/review", "code/refactor", etc. func Task(slug string) (string, error) { - for _, ext := range []string{".yaml", ".yml"} { - data, err := taskFS.ReadFile("lib/tasks/" + slug + ext) + for _, ext := range []string{".yaml", ".yml", ".md"} { + data, err := taskFS.ReadFile("lib/task/" + slug + ext) if err == nil { return string(data), nil } @@ -67,9 +69,10 @@ func Task(slug string) (string, error) { return "", fs.ErrNotExist } -// Flow returns a multi-phase workflow by slug. +// Flow returns a build/release workflow by slug. +// Slugs: "go", "php", "ts", "docker", "release", etc. func Flow(slug string) (string, error) { - data, err := flowFS.ReadFile("lib/flows/" + slug + ".md") + data, err := flowFS.ReadFile("lib/flow/" + slug + ".md") if err != nil { return "", err } @@ -79,7 +82,7 @@ func Flow(slug string) (string, error) { // Persona returns a domain/role system prompt by path. // Paths: "secops/developer", "code/backend-architect", "smm/tiktok-strategist". func Persona(path string) (string, error) { - data, err := personaFS.ReadFile("lib/personas/" + path + ".md") + data, err := personaFS.ReadFile("lib/persona/" + path + ".md") if err != nil { return "", err } @@ -88,17 +91,27 @@ func Persona(path string) (string, error) { // ListPrompts returns all available prompt slugs. func ListPrompts() []string { - return listDir(promptFS, "lib/prompts") + return listDir(promptFS, "lib/prompt") } -// ListTasks returns all available task plan slugs. +// ListTasks returns all available task plan slugs (including nested like code/review). func ListTasks() []string { - return listDir(taskFS, "lib/tasks") + var slugs []string + fs.WalkDir(taskFS, "lib/task", func(path string, d fs.DirEntry, err error) error { + if err != nil || d.IsDir() { + return nil + } + rel := strings.TrimPrefix(path, "lib/task/") + ext := filepath.Ext(rel) + slugs = append(slugs, strings.TrimSuffix(rel, ext)) + return nil + }) + return slugs } // ListFlows returns all available flow slugs. func ListFlows() []string { - return listDir(flowFS, "lib/flows") + return listDir(flowFS, "lib/flow") } // ListTemplates returns all prompt + task slugs (backwards compatibility). @@ -109,12 +122,12 @@ func ListTemplates() []string { // ListPersonas returns all available persona paths. func ListPersonas() []string { var paths []string - fs.WalkDir(personaFS, "lib/personas", func(path string, d fs.DirEntry, err error) error { + fs.WalkDir(personaFS, "lib/persona", func(path string, d fs.DirEntry, err error) error { if err != nil || d.IsDir() { return nil } if strings.HasSuffix(path, ".md") { - rel := strings.TrimPrefix(path, "lib/personas/") + rel := strings.TrimPrefix(path, "lib/persona/") rel = strings.TrimSuffix(rel, ".md") paths = append(paths, rel) } @@ -123,7 +136,7 @@ func ListPersonas() []string { return paths } -// listDir returns slugs (filename without extension) from an embedded directory. +// listDir returns slugs from an embedded directory (non-recursive). func listDir(fsys embed.FS, dir string) []string { entries, err := fsys.ReadDir(dir) if err != nil { diff --git a/pkg/prompts/prompts_test.go b/pkg/prompts/prompts_test.go index 145b357..08630a7 100644 --- a/pkg/prompts/prompts_test.go +++ b/pkg/prompts/prompts_test.go @@ -28,46 +28,43 @@ func TestTask_Good(t *testing.T) { assert.Contains(t, content, "name:") } +func TestTask_Good_Nested(t *testing.T) { + content, err := Task("code/review") + require.NoError(t, err) + assert.Contains(t, content, "name:") +} + func TestTask_Bad_NotFound(t *testing.T) { _, err := Task("nonexistent") assert.Error(t, err) } func TestTemplate_Good_BackwardsCompat(t *testing.T) { - // Template() should find prompts content, err := Template("coding") require.NoError(t, err) assert.Contains(t, content, "SANDBOX") - // Template() should also find tasks content, err = Template("bug-fix") require.NoError(t, err) assert.Contains(t, content, "name:") } func TestFlow_Good(t *testing.T) { - content, err := Flow("prod-push-polish") + content, err := Flow("go") require.NoError(t, err) - assert.True(t, len(content) > 0) + assert.Contains(t, content, "go build") } -func TestListPrompts_Good(t *testing.T) { - list := ListPrompts() - assert.Contains(t, list, "coding") - assert.Contains(t, list, "verify") -} - -func TestListTasks_Good(t *testing.T) { - list := ListTasks() - assert.Contains(t, list, "bug-fix") - assert.Contains(t, list, "refactor") +func TestFlow_Good_Docker(t *testing.T) { + content, err := Flow("docker") + require.NoError(t, err) + assert.Contains(t, content, "docker build") } func TestPersona_Good(t *testing.T) { content, err := Persona("secops/developer") require.NoError(t, err) assert.Contains(t, content, "name:") - assert.Contains(t, content, "Security") } func TestPersona_Good_SMM(t *testing.T) { @@ -81,30 +78,37 @@ func TestPersona_Bad_NotFound(t *testing.T) { assert.Error(t, err) } -func TestListTemplates_Good(t *testing.T) { - templates := ListTemplates() - assert.True(t, len(templates) >= 10, "expected at least 10 templates, got %d", len(templates)) - assert.Contains(t, templates, "bug-fix") - assert.Contains(t, templates, "code-review") +func TestListPrompts_Good(t *testing.T) { + list := ListPrompts() + assert.Contains(t, list, "coding") + assert.Contains(t, list, "verify") + assert.True(t, len(list) >= 5) +} + +func TestListTasks_Good(t *testing.T) { + list := ListTasks() + assert.Contains(t, list, "bug-fix") + // Nested tasks + hasCodeReview := false + for _, t := range list { + if t == "code/review" { + hasCodeReview = true + } + } + assert.True(t, hasCodeReview, "code/review not found in tasks") +} + +func TestListFlows_Good(t *testing.T) { + list := ListFlows() + assert.Contains(t, list, "go") + assert.Contains(t, list, "php") + assert.Contains(t, list, "docker") + assert.True(t, len(list) >= 9) } func TestListPersonas_Good(t *testing.T) { personas := ListPersonas() - assert.True(t, len(personas) >= 90, "expected at least 90 personas, got %d", len(personas)) - - // Check cross-domain security roles exist - hasSecDev := false - hasSMMSec := false - for _, p := range personas { - if p == "secops/developer" { - hasSecDev = true - } - if p == "smm/security-developer" { - hasSMMSec = true - } - } - assert.True(t, hasSecDev, "secops/developer not found") - assert.True(t, hasSMMSec, "smm/security-developer not found") + assert.True(t, len(personas) >= 90) } func TestListPersonas_Good_NoPrefixDuplication(t *testing.T) {