@mohammadhprp/system-prompt 0.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +35 -0
- package/bin/system-prompt.js +8 -0
- package/framework/README.md +163 -0
- package/framework/agents/README.md +49 -0
- package/framework/agents/backend-architect.md +146 -0
- package/framework/agents/researcher.md +79 -0
- package/framework/agents/reviewer.md +183 -0
- package/framework/agents/security-auditor.md +131 -0
- package/framework/commands/README.md +43 -0
- package/framework/commands/changelog.md +44 -0
- package/framework/commands/commit.md +31 -0
- package/framework/commands/learn.md +24 -0
- package/framework/commands/mr.md +46 -0
- package/framework/commands/pr.md +39 -0
- package/framework/commands/release.md +34 -0
- package/framework/commands/review.md +24 -0
- package/framework/commands/summarize-changes.md +49 -0
- package/framework/mcps/README.md +78 -0
- package/framework/mcps/excalidraw/README.md +37 -0
- package/framework/mcps/excalidraw/capabilities.md +54 -0
- package/framework/mcps/excalidraw/configs/opencode.json +8 -0
- package/framework/mcps/excalidraw/install.md +92 -0
- package/framework/mcps/excalidraw/troubleshooting.md +67 -0
- package/framework/mcps/figma-mcp-go/README.md +51 -0
- package/framework/mcps/figma-mcp-go/capabilities.md +190 -0
- package/framework/mcps/figma-mcp-go/configs/opencode.json +9 -0
- package/framework/mcps/figma-mcp-go/install.md +74 -0
- package/framework/mcps/figma-mcp-go/troubleshooting.md +99 -0
- package/framework/mcps/github-mcp/README.md +51 -0
- package/framework/mcps/github-mcp/capabilities.md +83 -0
- package/framework/mcps/github-mcp/configs/.env.example +1 -0
- package/framework/mcps/github-mcp/configs/opencode.json +13 -0
- package/framework/mcps/github-mcp/install.md +60 -0
- package/framework/mcps/github-mcp/troubleshooting.md +79 -0
- package/framework/mcps/gitlab-mcp/README.md +54 -0
- package/framework/mcps/gitlab-mcp/capabilities.md +216 -0
- package/framework/mcps/gitlab-mcp/configs/.env.example +2 -0
- package/framework/mcps/gitlab-mcp/configs/opencode.json +13 -0
- package/framework/mcps/gitlab-mcp/install.md +99 -0
- package/framework/mcps/gitlab-mcp/troubleshooting.md +116 -0
- package/framework/mcps/jira-mcp/README.md +53 -0
- package/framework/mcps/jira-mcp/capabilities.md +79 -0
- package/framework/mcps/jira-mcp/configs/.env.example +2 -0
- package/framework/mcps/jira-mcp/configs/opencode.json +13 -0
- package/framework/mcps/jira-mcp/install.md +94 -0
- package/framework/mcps/jira-mcp/troubleshooting.md +113 -0
- package/framework/mcps/laravel-boost/README.md +53 -0
- package/framework/mcps/laravel-boost/capabilities.md +92 -0
- package/framework/mcps/laravel-boost/configs/opencode.json +9 -0
- package/framework/mcps/laravel-boost/install.md +106 -0
- package/framework/mcps/laravel-boost/troubleshooting.md +119 -0
- package/framework/mcps/notion-mcp/README.md +58 -0
- package/framework/mcps/notion-mcp/capabilities.md +118 -0
- package/framework/mcps/notion-mcp/configs/opencode.json +9 -0
- package/framework/mcps/notion-mcp/install.md +70 -0
- package/framework/mcps/notion-mcp/troubleshooting.md +95 -0
- package/framework/mcps/playwright-mcp/README.md +50 -0
- package/framework/mcps/playwright-mcp/capabilities.md +149 -0
- package/framework/mcps/playwright-mcp/configs/opencode.json +9 -0
- package/framework/mcps/playwright-mcp/install.md +136 -0
- package/framework/mcps/playwright-mcp/troubleshooting.md +154 -0
- package/framework/mcps/supabase-mcp/README.md +66 -0
- package/framework/mcps/supabase-mcp/capabilities.md +127 -0
- package/framework/mcps/supabase-mcp/configs/opencode.json +9 -0
- package/framework/mcps/supabase-mcp/install.md +85 -0
- package/framework/mcps/supabase-mcp/troubleshooting.md +113 -0
- package/framework/memory/README.md +17 -0
- package/framework/memory/codebase-insights.md +6 -0
- package/framework/memory/user-preferences.md +5 -0
- package/framework/modes/README.md +52 -0
- package/framework/modes/audit.md +88 -0
- package/framework/plugins/README.md +65 -0
- package/framework/plugins/opencode-goal-plugin/README.md +45 -0
- package/framework/plugins/opencode-goal-plugin/capabilities.md +127 -0
- package/framework/plugins/opencode-goal-plugin/install.md +71 -0
- package/framework/plugins/opencode-goal-plugin/troubleshooting.md +112 -0
- package/framework/plugins/ponytail/README.md +44 -0
- package/framework/plugins/ponytail/capabilities.md +112 -0
- package/framework/plugins/ponytail/install.md +77 -0
- package/framework/plugins/ponytail/troubleshooting.md +116 -0
- package/framework/references/standards/api.md +44 -0
- package/framework/references/standards/architecture.md +43 -0
- package/framework/references/standards/database.md +43 -0
- package/framework/references/standards/debugging.md +44 -0
- package/framework/references/standards/documentation.md +43 -0
- package/framework/references/standards/logging.md +43 -0
- package/framework/references/standards/naming.md +43 -0
- package/framework/references/standards/observability.md +43 -0
- package/framework/references/standards/performance.md +43 -0
- package/framework/references/standards/pull-requests.md +43 -0
- package/framework/references/standards/security.md +43 -0
- package/framework/references/standards/testing.md +43 -0
- package/framework/references/templates/adr.md +28 -0
- package/framework/references/templates/api-spec.md +56 -0
- package/framework/references/templates/design-document.md +39 -0
- package/framework/references/templates/incident-report.md +38 -0
- package/framework/references/templates/postmortem.md +41 -0
- package/framework/references/templates/pull-request.md +34 -0
- package/framework/references/templates/runbook.md +48 -0
- package/framework/references/templates/task.md +27 -0
- package/framework/skills/README.md +68 -0
- package/framework/skills/agent-browser/SKILL.md +51 -0
- package/framework/skills/backend-best-practices/SKILL.md +136 -0
- package/framework/skills/backend-best-practices/examples.md +31 -0
- package/framework/skills/backend-best-practices/references/api-design.md +79 -0
- package/framework/skills/backend-best-practices/references/architecture-review.md +77 -0
- package/framework/skills/backend-best-practices/references/database-design.md +78 -0
- package/framework/skills/backend-best-practices/references/debugging.md +76 -0
- package/framework/skills/backend-best-practices/references/observability.md +78 -0
- package/framework/skills/backend-best-practices/references/performance.md +78 -0
- package/framework/skills/backend-best-practices/references/refactoring.md +77 -0
- package/framework/skills/backend-best-practices/references/security.md +80 -0
- package/framework/skills/backend-best-practices/references/testing.md +77 -0
- package/framework/skills/backend-engineer/SKILL.md +76 -0
- package/framework/skills/backend-engineer/examples.md +31 -0
- package/framework/skills/brainstorming/SKILL.md +159 -0
- package/framework/skills/brainstorming/examples.md +49 -0
- package/framework/skills/brainstorming/scripts/frame-template.html +213 -0
- package/framework/skills/brainstorming/scripts/helper.js +167 -0
- package/framework/skills/brainstorming/scripts/server.cjs +723 -0
- package/framework/skills/brainstorming/scripts/start-server.sh +209 -0
- package/framework/skills/brainstorming/scripts/stop-server.sh +120 -0
- package/framework/skills/brainstorming/visual-companion.md +291 -0
- package/framework/skills/brand-guidelines/LICENSE.txt +202 -0
- package/framework/skills/brand-guidelines/SKILL.md +73 -0
- package/framework/skills/code-review/SKILL.md +72 -0
- package/framework/skills/code-review/examples.md +31 -0
- package/framework/skills/design/SKILL.md +399 -0
- package/framework/skills/design/examples.md +34 -0
- package/framework/skills/diagram-design/SKILL.md +485 -0
- package/framework/skills/diagram-design/assets/example-architecture-dark.html +180 -0
- package/framework/skills/diagram-design/assets/example-architecture-full.html +192 -0
- package/framework/skills/diagram-design/assets/example-architecture.html +181 -0
- package/framework/skills/diagram-design/assets/example-bar-dark.html +127 -0
- package/framework/skills/diagram-design/assets/example-bar-full.html +103 -0
- package/framework/skills/diagram-design/assets/example-bar.html +127 -0
- package/framework/skills/diagram-design/assets/example-data-flow-dark.html +143 -0
- package/framework/skills/diagram-design/assets/example-data-flow-full.html +185 -0
- package/framework/skills/diagram-design/assets/example-data-flow.html +143 -0
- package/framework/skills/diagram-design/assets/example-datalake-dark.html +241 -0
- package/framework/skills/diagram-design/assets/example-datalake-full.html +246 -0
- package/framework/skills/diagram-design/assets/example-datalake.html +267 -0
- package/framework/skills/diagram-design/assets/example-dp-integration-dark.html +78 -0
- package/framework/skills/diagram-design/assets/example-dp-integration-full.html +88 -0
- package/framework/skills/diagram-design/assets/example-dp-integration.html +78 -0
- package/framework/skills/diagram-design/assets/example-dp-security-matrix-dark.html +31 -0
- package/framework/skills/diagram-design/assets/example-dp-security-matrix-full.html +32 -0
- package/framework/skills/diagram-design/assets/example-dp-security-matrix.html +88 -0
- package/framework/skills/diagram-design/assets/example-er-dark.html +200 -0
- package/framework/skills/diagram-design/assets/example-er-full.html +203 -0
- package/framework/skills/diagram-design/assets/example-er.html +200 -0
- package/framework/skills/diagram-design/assets/example-flowchart-dark.html +154 -0
- package/framework/skills/diagram-design/assets/example-flowchart-full.html +157 -0
- package/framework/skills/diagram-design/assets/example-flowchart.html +154 -0
- package/framework/skills/diagram-design/assets/example-gantt-dark.html +135 -0
- package/framework/skills/diagram-design/assets/example-gantt-full.html +125 -0
- package/framework/skills/diagram-design/assets/example-gantt.html +135 -0
- package/framework/skills/diagram-design/assets/example-high-level-dark.html +249 -0
- package/framework/skills/diagram-design/assets/example-high-level-full.html +245 -0
- package/framework/skills/diagram-design/assets/example-high-level-vertical-dark.html +272 -0
- package/framework/skills/diagram-design/assets/example-high-level-vertical-full.html +250 -0
- package/framework/skills/diagram-design/assets/example-high-level-vertical.html +323 -0
- package/framework/skills/diagram-design/assets/example-high-level.html +299 -0
- package/framework/skills/diagram-design/assets/example-it-state-dark.html +90 -0
- package/framework/skills/diagram-design/assets/example-it-state-full.html +69 -0
- package/framework/skills/diagram-design/assets/example-it-state.html +128 -0
- package/framework/skills/diagram-design/assets/example-layers-dark.html +121 -0
- package/framework/skills/diagram-design/assets/example-layers-full.html +124 -0
- package/framework/skills/diagram-design/assets/example-layers.html +121 -0
- package/framework/skills/diagram-design/assets/example-line-dark.html +109 -0
- package/framework/skills/diagram-design/assets/example-line-full.html +103 -0
- package/framework/skills/diagram-design/assets/example-line.html +109 -0
- package/framework/skills/diagram-design/assets/example-loop-dark.html +100 -0
- package/framework/skills/diagram-design/assets/example-loop-full.html +137 -0
- package/framework/skills/diagram-design/assets/example-loop-terminal.html +347 -0
- package/framework/skills/diagram-design/assets/example-loop.html +100 -0
- package/framework/skills/diagram-design/assets/example-medallion-dark.html +159 -0
- package/framework/skills/diagram-design/assets/example-medallion-full.html +201 -0
- package/framework/skills/diagram-design/assets/example-medallion.html +159 -0
- package/framework/skills/diagram-design/assets/example-nested-dark.html +130 -0
- package/framework/skills/diagram-design/assets/example-nested-full.html +133 -0
- package/framework/skills/diagram-design/assets/example-nested.html +134 -0
- package/framework/skills/diagram-design/assets/example-org-chart-dark.html +45 -0
- package/framework/skills/diagram-design/assets/example-org-chart-full.html +45 -0
- package/framework/skills/diagram-design/assets/example-org-chart.html +45 -0
- package/framework/skills/diagram-design/assets/example-process-dark.html +62 -0
- package/framework/skills/diagram-design/assets/example-process-full.html +72 -0
- package/framework/skills/diagram-design/assets/example-process.html +62 -0
- package/framework/skills/diagram-design/assets/example-pyramid-dark.html +117 -0
- package/framework/skills/diagram-design/assets/example-pyramid-full.html +120 -0
- package/framework/skills/diagram-design/assets/example-pyramid.html +117 -0
- package/framework/skills/diagram-design/assets/example-quadrant-consultant.html +164 -0
- package/framework/skills/diagram-design/assets/example-quadrant-dark.html +133 -0
- package/framework/skills/diagram-design/assets/example-quadrant-full.html +136 -0
- package/framework/skills/diagram-design/assets/example-quadrant.html +133 -0
- package/framework/skills/diagram-design/assets/example-radar-dark.html +137 -0
- package/framework/skills/diagram-design/assets/example-radar-full.html +133 -0
- package/framework/skills/diagram-design/assets/example-radar.html +137 -0
- package/framework/skills/diagram-design/assets/example-scatter-dark.html +139 -0
- package/framework/skills/diagram-design/assets/example-scatter-full.html +114 -0
- package/framework/skills/diagram-design/assets/example-scatter.html +139 -0
- package/framework/skills/diagram-design/assets/example-sequence-dark.html +220 -0
- package/framework/skills/diagram-design/assets/example-sequence-full.html +386 -0
- package/framework/skills/diagram-design/assets/example-sequence.html +220 -0
- package/framework/skills/diagram-design/assets/example-state-dark.html +145 -0
- package/framework/skills/diagram-design/assets/example-state-full.html +148 -0
- package/framework/skills/diagram-design/assets/example-state.html +145 -0
- package/framework/skills/diagram-design/assets/example-swimlane-dark.html +170 -0
- package/framework/skills/diagram-design/assets/example-swimlane-full.html +173 -0
- package/framework/skills/diagram-design/assets/example-swimlane.html +170 -0
- package/framework/skills/diagram-design/assets/example-timeline-dark.html +133 -0
- package/framework/skills/diagram-design/assets/example-timeline-full.html +136 -0
- package/framework/skills/diagram-design/assets/example-timeline.html +133 -0
- package/framework/skills/diagram-design/assets/example-tree-dark.html +171 -0
- package/framework/skills/diagram-design/assets/example-tree-full.html +174 -0
- package/framework/skills/diagram-design/assets/example-tree.html +171 -0
- package/framework/skills/diagram-design/assets/example-venn-dark.html +130 -0
- package/framework/skills/diagram-design/assets/example-venn-full.html +133 -0
- package/framework/skills/diagram-design/assets/example-venn.html +108 -0
- package/framework/skills/diagram-design/assets/icons.html +230 -0
- package/framework/skills/diagram-design/assets/index.html +333 -0
- package/framework/skills/diagram-design/assets/template-dark.html +82 -0
- package/framework/skills/diagram-design/assets/template-full.html +410 -0
- package/framework/skills/diagram-design/assets/template-terminal.html +170 -0
- package/framework/skills/diagram-design/assets/template.html +83 -0
- package/framework/skills/diagram-design/references/export.md +107 -0
- package/framework/skills/diagram-design/references/onboarding.md +268 -0
- package/framework/skills/diagram-design/references/primitive-annotation.md +36 -0
- package/framework/skills/diagram-design/references/primitive-icons.md +821 -0
- package/framework/skills/diagram-design/references/primitive-sketchy.md +43 -0
- package/framework/skills/diagram-design/references/primitive-terminal.md +76 -0
- package/framework/skills/diagram-design/references/style-guide.md +139 -0
- package/framework/skills/diagram-design/references/type-architecture.md +78 -0
- package/framework/skills/diagram-design/references/type-bar.md +48 -0
- package/framework/skills/diagram-design/references/type-data-flow.md +374 -0
- package/framework/skills/diagram-design/references/type-dp-integration.md +410 -0
- package/framework/skills/diagram-design/references/type-dp-security-matrix.md +379 -0
- package/framework/skills/diagram-design/references/type-er.md +23 -0
- package/framework/skills/diagram-design/references/type-flowchart.md +23 -0
- package/framework/skills/diagram-design/references/type-gantt.md +45 -0
- package/framework/skills/diagram-design/references/type-high-level.md +458 -0
- package/framework/skills/diagram-design/references/type-it-state.md +470 -0
- package/framework/skills/diagram-design/references/type-layers.md +26 -0
- package/framework/skills/diagram-design/references/type-line.md +44 -0
- package/framework/skills/diagram-design/references/type-loop.md +223 -0
- package/framework/skills/diagram-design/references/type-medallion.md +356 -0
- package/framework/skills/diagram-design/references/type-nested.md +22 -0
- package/framework/skills/diagram-design/references/type-org-chart.md +44 -0
- package/framework/skills/diagram-design/references/type-process.md +495 -0
- package/framework/skills/diagram-design/references/type-pyramid.md +33 -0
- package/framework/skills/diagram-design/references/type-quadrant.md +81 -0
- package/framework/skills/diagram-design/references/type-radar.md +80 -0
- package/framework/skills/diagram-design/references/type-scatter.md +39 -0
- package/framework/skills/diagram-design/references/type-sequence.md +35 -0
- package/framework/skills/diagram-design/references/type-state.md +21 -0
- package/framework/skills/diagram-design/references/type-swimlane.md +20 -0
- package/framework/skills/diagram-design/references/type-timeline.md +20 -0
- package/framework/skills/diagram-design/references/type-tree.md +24 -0
- package/framework/skills/diagram-design/references/type-venn.md +26 -0
- package/framework/skills/documentation/SKILL.md +74 -0
- package/framework/skills/documentation/examples.md +31 -0
- package/framework/skills/find-skills/SKILL.md +141 -0
- package/framework/skills/find-skills/examples.md +35 -0
- package/framework/skills/gitlab-mcp/SKILL.md +83 -0
- package/framework/skills/gitlab-mcp/examples.md +31 -0
- package/framework/skills/gitlab-mcp/references/code-review.md +110 -0
- package/framework/skills/gitlab-mcp/references/issues.md +141 -0
- package/framework/skills/gitlab-mcp/references/merge-requests.md +120 -0
- package/framework/skills/gitlab-mcp/references/pipelines.md +67 -0
- package/framework/skills/gitlab-mcp/references/search.md +17 -0
- package/framework/skills/gitlab-mcp/references/webhooks.md +32 -0
- package/framework/skills/gitlab-mcp/references/work-items.md +50 -0
- package/framework/skills/jira-mcp/SKILL.md +57 -0
- package/framework/skills/jira-mcp/examples.md +31 -0
- package/framework/skills/jira-mcp/references/comments.md +27 -0
- package/framework/skills/jira-mcp/references/issues.md +97 -0
- package/framework/skills/jira-mcp/references/projects.md +39 -0
- package/framework/skills/laravel-best-practices/SKILL.md +229 -0
- package/framework/skills/laravel-best-practices/examples.md +31 -0
- package/framework/skills/laravel-best-practices/references/advanced-queries.md +106 -0
- package/framework/skills/laravel-best-practices/references/architecture.md +202 -0
- package/framework/skills/laravel-best-practices/references/blade-views.md +36 -0
- package/framework/skills/laravel-best-practices/references/caching.md +70 -0
- package/framework/skills/laravel-best-practices/references/collections.md +44 -0
- package/framework/skills/laravel-best-practices/references/config.md +73 -0
- package/framework/skills/laravel-best-practices/references/db-performance.md +192 -0
- package/framework/skills/laravel-best-practices/references/eloquent.md +148 -0
- package/framework/skills/laravel-best-practices/references/error-handling.md +72 -0
- package/framework/skills/laravel-best-practices/references/events-notifications.md +52 -0
- package/framework/skills/laravel-best-practices/references/http-client.md +160 -0
- package/framework/skills/laravel-best-practices/references/mail.md +27 -0
- package/framework/skills/laravel-best-practices/references/migrations.md +121 -0
- package/framework/skills/laravel-best-practices/references/passport.md +197 -0
- package/framework/skills/laravel-best-practices/references/pennant.md +61 -0
- package/framework/skills/laravel-best-practices/references/pest-testing.md +166 -0
- package/framework/skills/laravel-best-practices/references/pulse.md +196 -0
- package/framework/skills/laravel-best-practices/references/queue-jobs.md +144 -0
- package/framework/skills/laravel-best-practices/references/routing.md +99 -0
- package/framework/skills/laravel-best-practices/references/scheduling.md +39 -0
- package/framework/skills/laravel-best-practices/references/scout.md +176 -0
- package/framework/skills/laravel-best-practices/references/security.md +198 -0
- package/framework/skills/laravel-best-practices/references/spatie-laravel-backup.md +222 -0
- package/framework/skills/laravel-best-practices/references/spatie-laravel-permission.md +272 -0
- package/framework/skills/laravel-best-practices/references/spatie-medialibrary.md +672 -0
- package/framework/skills/laravel-best-practices/references/style.md +125 -0
- package/framework/skills/laravel-best-practices/references/tailwindcss.md +112 -0
- package/framework/skills/laravel-best-practices/references/testing.md +43 -0
- package/framework/skills/laravel-best-practices/references/validation.md +75 -0
- package/framework/skills/lavish/SKILL.md +67 -0
- package/framework/skills/lavish/examples.md +31 -0
- package/framework/skills/notion-mcp/SKILL.md +57 -0
- package/framework/skills/notion-mcp/examples.md +31 -0
- package/framework/skills/notion-mcp/references/comments.md +112 -0
- package/framework/skills/notion-mcp/references/databases.md +193 -0
- package/framework/skills/notion-mcp/references/pages.md +235 -0
- package/framework/skills/skill-creator/LICENSE.txt +202 -0
- package/framework/skills/skill-creator/SKILL.md +485 -0
- package/framework/skills/skill-creator/agents/analyzer.md +274 -0
- package/framework/skills/skill-creator/agents/comparator.md +202 -0
- package/framework/skills/skill-creator/agents/grader.md +223 -0
- package/framework/skills/skill-creator/assets/eval_review.html +146 -0
- package/framework/skills/skill-creator/eval-viewer/generate_review.py +471 -0
- package/framework/skills/skill-creator/eval-viewer/viewer.html +1325 -0
- package/framework/skills/skill-creator/examples.md +31 -0
- package/framework/skills/skill-creator/references/schemas.md +430 -0
- package/framework/skills/skill-creator/scripts/__init__.py +0 -0
- package/framework/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
- package/framework/skills/skill-creator/scripts/generate_report.py +326 -0
- package/framework/skills/skill-creator/scripts/improve_description.py +247 -0
- package/framework/skills/skill-creator/scripts/package_skill.py +136 -0
- package/framework/skills/skill-creator/scripts/quick_validate.py +103 -0
- package/framework/skills/skill-creator/scripts/run_eval.py +310 -0
- package/framework/skills/skill-creator/scripts/run_loop.py +328 -0
- package/framework/skills/skill-creator/scripts/utils.py +47 -0
- package/framework/styles/README.md +35 -0
- package/framework/styles/linear/DESIGN.md +478 -0
- package/framework/styles/linear/README.md +36 -0
- package/framework/styles/linear/assets/preview.jpg +0 -0
- package/framework/styles/raycast/DESIGN.md +495 -0
- package/framework/styles/raycast/README.md +35 -0
- package/framework/styles/raycast/assets/preview.jpg +0 -0
- package/package.json +33 -0
- package/src/agent-configs.js +96 -0
- package/src/catalog.js +145 -0
- package/src/cli.js +254 -0
- package/src/installer.js +303 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 mohammadhprp
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
<h1 align="center">
|
|
2
|
+
System prompt
|
|
3
|
+
</h1>
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src=".github/assets/overview.png" alt="One CLI, a configurable coding-agent framework" />
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
## Prerequisites
|
|
10
|
+
|
|
11
|
+
- **Node.js >= 18**
|
|
12
|
+
|
|
13
|
+
## Quick Start
|
|
14
|
+
|
|
15
|
+
### Install
|
|
16
|
+
|
|
17
|
+
```sh
|
|
18
|
+
npm install -g @mohammadhprp/system-prompt
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### Run
|
|
22
|
+
|
|
23
|
+
```sh
|
|
24
|
+
system-prompt
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
The CLI walks you through selecting which skills, agents, commands, MCPs, and references to install, then wires everything into your project directory.
|
|
28
|
+
|
|
29
|
+
## Contributing
|
|
30
|
+
|
|
31
|
+
See [CONTRIBUTING](CONTRIBUTING.md). Contributions should improve clarity, correctness, and operational usefulness. Avoid duplicating guidance that belongs in standards.
|
|
32
|
+
|
|
33
|
+
## License
|
|
34
|
+
|
|
35
|
+
[MIT](LICENSE)
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
# AI Coding Agent Framework
|
|
2
|
+
|
|
3
|
+
A framework-agnostic system for AI coding agents. It combines reusable skills, engineering standards, templates, and MCP server documentation so agents can reason, design, review, test, operate, and connect to project-aware tools with senior engineering discipline.
|
|
4
|
+
|
|
5
|
+
This repository is not just a prompt dump or a skill library. It is a structured, extensible operating framework for AI-assisted software engineering.
|
|
6
|
+
|
|
7
|
+
## Philosophy
|
|
8
|
+
|
|
9
|
+
Backend work is mostly judgment: choosing simple boundaries, protecting data integrity, designing for failure, and making changes safely. These skills are intentionally opinionated:
|
|
10
|
+
|
|
11
|
+
- Design before coding because implementation should follow a clear operating model.
|
|
12
|
+
- Prefer the simplest solution that satisfies current requirements and leaves safe extension points.
|
|
13
|
+
- Treat data, security, reliability, and observability as first-class design concerns.
|
|
14
|
+
- Make tradeoffs explicit so humans can approve risks.
|
|
15
|
+
- Produce small, reversible changes with evidence.
|
|
16
|
+
|
|
17
|
+
## Goals
|
|
18
|
+
|
|
19
|
+
- Help AI agents act like senior backend engineers, architects, reviewers, and mentors.
|
|
20
|
+
- Provide canonical standards that apply across programming languages and platforms.
|
|
21
|
+
- Keep skills practical, navigable, consistent, and extensible.
|
|
22
|
+
- Support Claude Code, OpenAI Codex, OpenCode, and similar coding agents.
|
|
23
|
+
|
|
24
|
+
## Repository Structure
|
|
25
|
+
|
|
26
|
+
| Path | Purpose |
|
|
27
|
+
| --- | --- |
|
|
28
|
+
| `agents/` | Specialized subagents for security audits, architecture, code review, and research. |
|
|
29
|
+
| `skills/` | Curated skill catalog with definitions, workflows, and examples. |
|
|
30
|
+
| `commands/` | Slash command catalog with repeatable agent workflows. |
|
|
31
|
+
| `mcps/` | Curated MCP catalog with install, configuration, capability, and troubleshooting documentation. |
|
|
32
|
+
| `plugins/` | Curated OpenCode plugin catalog with install, capabilities, and troubleshooting documentation. |
|
|
33
|
+
| `styles/` | Curated design system catalog from Refero Styles ā colors, typography, spacing, and component references. |
|
|
34
|
+
| `memory/` | Persistent agent memory files for cross-session context. Automatically included in agent instructions. |
|
|
35
|
+
| `modes/` | Behavior, tool, and prompt presets that customize the agent for different use cases. |
|
|
36
|
+
| `references/standards/` | Canonical engineering standards referenced by skills. |
|
|
37
|
+
| `references/templates/` | Ready-to-use workflow documents. |
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
## MCP
|
|
41
|
+
|
|
42
|
+
The [`mcps/`](mcps/) directory is a curated catalog of Model Context Protocol servers for AI coding agents. Each entry explains what the MCP does, when to use it, how to install it, how to configure it across common AI clients, and how to troubleshoot it.
|
|
43
|
+
|
|
44
|
+
MCPs are useful because they let agents connect to project-aware tools through a standard protocol instead of relying only on static files or generic model knowledge. A good MCP can expose documentation search, runtime inspection, logs, schema information, or other controlled capabilities that make agent output more accurate and easier to verify.
|
|
45
|
+
|
|
46
|
+
### How to Choose an MCP
|
|
47
|
+
|
|
48
|
+
Before adding an MCP to a project, check:
|
|
49
|
+
|
|
50
|
+
- **Fit**: the server should match the framework, platform, or workflow being worked on.
|
|
51
|
+
- **Authority**: prefer first-party or officially documented MCPs.
|
|
52
|
+
- **Permissions**: understand whether the MCP can read secrets, query databases, execute code, or modify state.
|
|
53
|
+
- **Client support**: confirm the target AI client supports the MCP transport and configuration format.
|
|
54
|
+
- **Operational value**: install MCPs that materially improve context, safety, or verification.
|
|
55
|
+
|
|
56
|
+
## Agents
|
|
57
|
+
|
|
58
|
+
The [`agents/`](agents/) directory is a catalog of specialized subagents for AI coding agents. Each subagent handles a specific domain and returns findings to the orchestrating agent.
|
|
59
|
+
|
|
60
|
+
See the full [agent catalog](agents/README.md) for available agents, their purposes, and permissions.
|
|
61
|
+
|
|
62
|
+
### How to Choose an Agent
|
|
63
|
+
|
|
64
|
+
Before invoking a subagent, check:
|
|
65
|
+
|
|
66
|
+
- **Fit**: does the agent's domain match the current need (security audit, architecture, code review, research)?
|
|
67
|
+
- **Permissions**: agents are read-only by design ā they investigate and report, they do not modify files.
|
|
68
|
+
- **Scope**: agents are narrow and specialized. Use them alongside skills for comprehensive coverage.
|
|
69
|
+
|
|
70
|
+
## Skills
|
|
71
|
+
|
|
72
|
+
The [`skills/`](skills/) directory is a curated catalog of task-specific procedures for AI coding agents. Each entry has a `SKILL.md` defining triggers, workflow, and standards references, plus `examples.md` with realistic usage examples.
|
|
73
|
+
|
|
74
|
+
See the full [skill catalog](skills/README.md) for the complete list of available skills, their purposes, and when to use them.
|
|
75
|
+
|
|
76
|
+
### How to Choose a Skill
|
|
77
|
+
|
|
78
|
+
Before activating a skill, check:
|
|
79
|
+
|
|
80
|
+
- **Fit**: does the skill's purpose match the current task?
|
|
81
|
+
- **Scope**: general skills (Backend Engineer) cover broad reasoning; narrow skills (Laravel Best Practices) go deep on one topic.
|
|
82
|
+
- **Combination**: complex tasks may need multiple skills (e.g., API Design + Security + Testing).
|
|
83
|
+
- **Sequence**: some skills pair naturally (Architecture Review before Database Design).
|
|
84
|
+
|
|
85
|
+
## Plugin
|
|
86
|
+
|
|
87
|
+
The [`plugins/`](plugins/) directory is a curated catalog of OpenCode plugins for AI coding agents. Each entry explains what the plugin does, when to use it, how to install it, how to configure it, and how to troubleshoot it.
|
|
88
|
+
|
|
89
|
+
Plugins extend OpenCode with custom commands, agent tools, TUI elements, and lifecycle hooks that the base agent does not provide.
|
|
90
|
+
|
|
91
|
+
### How to Choose a Plugin
|
|
92
|
+
|
|
93
|
+
Before adding a plugin to a project, check:
|
|
94
|
+
|
|
95
|
+
- **Compatibility**: does the plugin support your OpenCode version?
|
|
96
|
+
- **Capabilities**: does it add commands, tools, or UI that improve your workflow?
|
|
97
|
+
- **Permissions**: does it read or write files outside the project directory?
|
|
98
|
+
- **Maintenance**: is the plugin actively maintained and documented?
|
|
99
|
+
|
|
100
|
+
## Styles
|
|
101
|
+
|
|
102
|
+
The [`styles/`](styles/) directory is a curated catalog of design system references from [Refero Styles](https://styles.refero.design/). Each entry provides a complete breakdown of colors, typography, spacing, components, and design tokens ready for AI coding agents.
|
|
103
|
+
|
|
104
|
+
See the full [style catalog](styles/README.md) for the complete list of available styles and their descriptions.
|
|
105
|
+
|
|
106
|
+
### How to Choose a Style
|
|
107
|
+
|
|
108
|
+
Before using a style reference, check:
|
|
109
|
+
|
|
110
|
+
- **Fit**: does the design language match the product's aesthetic and brand direction?
|
|
111
|
+
- **Platform**: some styles target specific platforms (dark product UI, marketing sites, developer tools).
|
|
112
|
+
- **Tokens**: each style includes CSS custom properties and Tailwind v4 theme configuration for direct use.
|
|
113
|
+
- **Constraints**: pay attention to the do's and don'ts ā they encode important design decisions.
|
|
114
|
+
|
|
115
|
+
## Command
|
|
116
|
+
|
|
117
|
+
The [`commands/`](commands/) directory is a catalog of slash commands for AI coding agents. Each command defines a repeatable workflow that agents execute on demand.
|
|
118
|
+
|
|
119
|
+
See the full [command catalog](commands/README.md) for available commands, their purposes, and what skills they load.
|
|
120
|
+
|
|
121
|
+
## Modes
|
|
122
|
+
|
|
123
|
+
The [`modes/`](modes/) directory is a catalog of behavior, tool, and prompt presets for AI coding agents. Each mode customizes how the agent behaves for a given use case ā setting the temperature, restricting or granting tools, and defining the response style, workflow, and output format.
|
|
124
|
+
|
|
125
|
+
See the full [mode catalog](modes/README.md) for available modes, their purposes, and their tool restrictions.
|
|
126
|
+
|
|
127
|
+
### How to Choose a Mode
|
|
128
|
+
|
|
129
|
+
Before activating a mode, check:
|
|
130
|
+
|
|
131
|
+
- **Fit**: does the mode's posture match the current task (e.g., read-only scrutiny vs. open building)?
|
|
132
|
+
- **Tools**: confirm the mode's tool restrictions are appropriate ā review modes typically disable `write`, `edit`, and `bash`.
|
|
133
|
+
- **Activation**: read the mode file to adopt its behavior; modes are switched explicitly, not stacked.
|
|
134
|
+
|
|
135
|
+
## Memory
|
|
136
|
+
|
|
137
|
+
The [`memory/`](memory/) directory contains persistent agent memory files that maintain context across sessions. Unlike other catalog items, memory files are **only written on first install** ā re-running the installer will not overwrite them, preserving any edits made by the user or agent.
|
|
138
|
+
|
|
139
|
+
Memory files are automatically included in the agent's instructions via the glob pattern `.opencode/memory/*.md`, ensuring the agent always has access to accumulated context.
|
|
140
|
+
|
|
141
|
+
| File | Purpose |
|
|
142
|
+
| --- | --- |
|
|
143
|
+
| `codebase-insights.md` | Non-obvious facts, gotchas, past decisions, and architecture quirks |
|
|
144
|
+
| `user-preferences.md` | Coding style, naming conventions, and architectural preferences |
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
## FAQ
|
|
148
|
+
|
|
149
|
+
### Is this tied to a specific language or framework?
|
|
150
|
+
|
|
151
|
+
> No. Guidance is intentionally expressed as engineering decisions, workflows, and checks.
|
|
152
|
+
|
|
153
|
+
### Is this a prompt collection?
|
|
154
|
+
|
|
155
|
+
> No. The skills are operational procedures that agents apply selectively.
|
|
156
|
+
|
|
157
|
+
### Can humans use it?
|
|
158
|
+
|
|
159
|
+
> Yes. The standards and templates are useful for reviews, design discussions, and onboarding.
|
|
160
|
+
|
|
161
|
+
### How AI Agents should install and configure this repository?
|
|
162
|
+
|
|
163
|
+
> Run the `system-prompt` command from the project root and open the generated `.opencode/` configuration in OpenCode.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# Agent Catalog
|
|
2
|
+
|
|
3
|
+
A catalog of specialized subagents for AI coding agents.
|
|
4
|
+
|
|
5
|
+
Subagents are focused AI agents that handle specific domains ā security audits, architecture design, code review, research ā and return findings to the orchestrating agent. Each subagent runs with restricted permissions suitable to its task.
|
|
6
|
+
|
|
7
|
+
## Available Agents
|
|
8
|
+
|
|
9
|
+
| Agent | Purpose | Permissions |
|
|
10
|
+
| --- | --- | --- |
|
|
11
|
+
| [Backend Architect](./backend-architect.md) | Design scalable, secure, and maintainable backend systems ā APIs, databases, architecture, security, performance, DevOps. | read, bash, grep, glob, webfetch (no edit/write) |
|
|
12
|
+
| [Researcher](./researcher.md) | Fetch and analyze web content from URLs ā external documentation, best practices, API docs, online resources. | read, write, grep, glob, webfetch (no bash, no edit) |
|
|
13
|
+
| [Reviewer](./reviewer.md) | Review code for correctness, maintainability, and best practices with focus on bugs. | read, bash, grep, glob (no edit/write) |
|
|
14
|
+
| [Security Auditor](./security-auditor.md) | Conduct security audits for REST APIs ā authentication, authorization, input validation, secrets, data protection, rate limiting. | read, bash, grep, glob, webfetch (no edit/write) |
|
|
15
|
+
|
|
16
|
+
## Agent Entry Structure
|
|
17
|
+
|
|
18
|
+
```text
|
|
19
|
+
agents/<agent-name>.md
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Each agent file uses YAML frontmatter with `description`, `mode`, `temperature`, and `permission` blocks, followed by markdown instructions defining the agent's behavior, workflow, and output format.
|
|
23
|
+
|
|
24
|
+
## Permission Convention
|
|
25
|
+
|
|
26
|
+
| Permission | Typical use |
|
|
27
|
+
| --- | --- |
|
|
28
|
+
| `read`, `grep`, `glob`, `list` | Allowed for most agents ā needed to explore and understand code. |
|
|
29
|
+
| `bash` | Allowed where shell commands are needed for investigation or tooling. |
|
|
30
|
+
| `webfetch` | Allowed for research and security auditing agents only. |
|
|
31
|
+
| `edit`, `write`, `patch` | Denied for all subagents ā they return findings to the orchestrator. |
|
|
32
|
+
|
|
33
|
+
## How to Contribute a New Agent
|
|
34
|
+
|
|
35
|
+
1. Create `agents/<agent-name>.md` following the existing format.
|
|
36
|
+
2. Write a clear `description` in the frontmatter ā this determines when orchestrators invoke the agent.
|
|
37
|
+
3. Set `mode: subagent` and `temperature: 0.1`.
|
|
38
|
+
4. Define permissions matching the agent's domain (typically deny all mutation).
|
|
39
|
+
5. Write markdown instructions with scope, workflow, and output format.
|
|
40
|
+
6. Add the agent to the table in this README.
|
|
41
|
+
|
|
42
|
+
## Related Repository Areas
|
|
43
|
+
|
|
44
|
+
- [`skills/`](../skills/) contains skill definitions that agents may reference.
|
|
45
|
+
- [`commands/`](../commands/) contains slash commands for repeatable agent workflows.
|
|
46
|
+
- [`mcps/`](../mcps/) contains the MCP server catalog.
|
|
47
|
+
- [`plugins/`](../plugins/) contains the OpenCode plugin catalog.
|
|
48
|
+
- [`references/standards/`](../references/standards/) contains canonical engineering rules.
|
|
49
|
+
- [`references/templates/`](../references/templates/) contains reusable engineering deliverables.
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Master backend architect for designing scalable, secure, and maintainable server-side systems. Use for API design, database architecture, system architecture decisions, security implementation, performance optimization, and DevOps integration.
|
|
3
|
+
mode: subagent
|
|
4
|
+
temperature: 0.1
|
|
5
|
+
permission:
|
|
6
|
+
bash: allow
|
|
7
|
+
read: allow
|
|
8
|
+
edit: deny
|
|
9
|
+
write: deny
|
|
10
|
+
patch: deny
|
|
11
|
+
grep: allow
|
|
12
|
+
glob: allow
|
|
13
|
+
list: allow
|
|
14
|
+
webfetch: allow
|
|
15
|
+
todoread: deny
|
|
16
|
+
todowrite: deny
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
You are a master backend architect with deep expertise in designing scalable, secure, and maintainable server-side systems. You excel at making architectural decisions that balance immediate needs with long-term scalability.
|
|
20
|
+
|
|
21
|
+
## Core Responsibilities
|
|
22
|
+
|
|
23
|
+
### 1. API Design & Implementation
|
|
24
|
+
- Design RESTful APIs following OpenAPI specifications
|
|
25
|
+
- Implement GraphQL schemas when appropriate
|
|
26
|
+
- Create proper versioning strategies
|
|
27
|
+
- Implement comprehensive error handling
|
|
28
|
+
- Design consistent response formats
|
|
29
|
+
- Build proper authentication and authorization
|
|
30
|
+
|
|
31
|
+
### 2. Database Architecture
|
|
32
|
+
- Choose appropriate databases (SQL vs NoSQL)
|
|
33
|
+
- Design normalized schemas with proper relationships
|
|
34
|
+
- Implement efficient indexing strategies
|
|
35
|
+
- Create data migration strategies
|
|
36
|
+
- Handle concurrent access patterns
|
|
37
|
+
- Implement caching layers (Redis, Memcached)
|
|
38
|
+
|
|
39
|
+
### 3. System Architecture
|
|
40
|
+
- Design microservices with clear boundaries
|
|
41
|
+
- Implement message queues for async processing
|
|
42
|
+
- Create event-driven architectures
|
|
43
|
+
- Build fault-tolerant systems
|
|
44
|
+
- Implement circuit breakers and retries
|
|
45
|
+
- Design for horizontal scaling
|
|
46
|
+
|
|
47
|
+
### 4. Security Implementation
|
|
48
|
+
- Implement proper authentication (JWT, OAuth2)
|
|
49
|
+
- Create role-based access control (RBAC)
|
|
50
|
+
- Validate and sanitize all inputs
|
|
51
|
+
- Implement rate limiting and DDoS protection
|
|
52
|
+
- Encrypt sensitive data at rest and in transit
|
|
53
|
+
- Follow OWASP security guidelines
|
|
54
|
+
|
|
55
|
+
### 5. Performance Optimization
|
|
56
|
+
- Implement efficient caching strategies
|
|
57
|
+
- Optimize database queries and connections
|
|
58
|
+
- Use connection pooling effectively
|
|
59
|
+
- Implement lazy loading where appropriate
|
|
60
|
+
- Monitor and optimize memory usage
|
|
61
|
+
- Create performance benchmarks
|
|
62
|
+
|
|
63
|
+
### 6. DevOps Integration
|
|
64
|
+
- Create Dockerized applications
|
|
65
|
+
- Implement health checks and monitoring
|
|
66
|
+
- Set up proper logging and tracing
|
|
67
|
+
- Create CI/CD-friendly architectures
|
|
68
|
+
- Implement feature flags for safe deployments
|
|
69
|
+
- Design for zero-downtime deployments
|
|
70
|
+
|
|
71
|
+
## Technology Stack Expertise
|
|
72
|
+
|
|
73
|
+
**Languages:** PHP, Python, Go, Rust
|
|
74
|
+
**Frameworks:** Laravel, FastAPI, Gin
|
|
75
|
+
**Databases:** PostgreSQL, MongoDB, Redis, MySQL
|
|
76
|
+
**Message Queues:** RabbitMQ, Kafka, SQS
|
|
77
|
+
**Cloud:** VPS, Vercel, Supabase
|
|
78
|
+
|
|
79
|
+
## Architectural Patterns
|
|
80
|
+
|
|
81
|
+
- Microservices with API Gateway
|
|
82
|
+
- Event Sourcing and CQRS
|
|
83
|
+
- Serverless with Lambda/Functions
|
|
84
|
+
- Domain-Driven Design (DDD)
|
|
85
|
+
- Hexagonal Architecture
|
|
86
|
+
- Service Mesh with Istio
|
|
87
|
+
|
|
88
|
+
## Workflow
|
|
89
|
+
|
|
90
|
+
### Step 1: Understand Requirements
|
|
91
|
+
Read conversation history, project structure, and existing code. Identify constraints: traffic patterns, data volume, latency requirements, team expertise, deployment environment. Load [`skills/backend-engineer/SKILL.md`](../skills/backend-engineer/SKILL.md), [`skills/backend-best-practices/SKILL.md`](../skills/backend-best-practices/SKILL.md), and referenced standards.
|
|
92
|
+
|
|
93
|
+
### Step 2: Evaluate Tradeoffs
|
|
94
|
+
For each architectural decision, consider:
|
|
95
|
+
- **Complexity vs maintainability**: will this abstraction pay off in 3 months?
|
|
96
|
+
- **Performance vs cost**: does the optimization justify the infrastructure expense?
|
|
97
|
+
- **Speed vs correctness**: can we ship a safe subset now and iterate?
|
|
98
|
+
- **Consistency vs availability**: which matters more for this specific operation?
|
|
99
|
+
|
|
100
|
+
### Step 3: Design and Document
|
|
101
|
+
Produce artifacts matching the task scope:
|
|
102
|
+
- API contracts (OpenAPI or GraphQL schema)
|
|
103
|
+
- Data model with entity relationships and indexes
|
|
104
|
+
- System architecture diagram (text or component map)
|
|
105
|
+
- Deployment architecture (containers, networking, scaling)
|
|
106
|
+
- Security model (auth flows, RBAC matrix, encryption boundaries)
|
|
107
|
+
|
|
108
|
+
### Step 4: Review Against Principles
|
|
109
|
+
- Can each component change independently?
|
|
110
|
+
- Is there a simpler architecture that satisfies the same requirements?
|
|
111
|
+
- Are failure modes documented (timeout, retry, fallback, partial failure)?
|
|
112
|
+
- Are operational concerns addressed (observability, deployability, rollback)?
|
|
113
|
+
|
|
114
|
+
## Output Format
|
|
115
|
+
|
|
116
|
+
```
|
|
117
|
+
## Architecture Summary
|
|
118
|
+
[High-level design and key decisions]
|
|
119
|
+
|
|
120
|
+
## API Design
|
|
121
|
+
[Contracts, versioning, error handling approach]
|
|
122
|
+
|
|
123
|
+
## Data Model
|
|
124
|
+
[Entity relationships, storage choices, caching]
|
|
125
|
+
|
|
126
|
+
## System Architecture
|
|
127
|
+
[Components, boundaries, communication patterns]
|
|
128
|
+
|
|
129
|
+
## Security Model
|
|
130
|
+
[Auth, authorization, input validation, encryption]
|
|
131
|
+
|
|
132
|
+
## Performance Considerations
|
|
133
|
+
[Caching, connection pooling, scaling strategy]
|
|
134
|
+
|
|
135
|
+
## Tradeoffs & Risks
|
|
136
|
+
[What was deferred, what could break, mitigation plan]
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
## Tone
|
|
140
|
+
|
|
141
|
+
- **Pragmatic** ā recommend what works for the actual constraints, not theoretical ideal
|
|
142
|
+
- **Explicit about tradeoffs** ā every decision has a cost; surface it
|
|
143
|
+
- **Specific and actionable** ā concrete schema snippets, config examples, code patterns
|
|
144
|
+
- **Cost-aware** ā consider infra cost, team velocity, and maintenance burden
|
|
145
|
+
|
|
146
|
+
Return findings in response. Do not modify files.
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Fetches and analyzes web content from URLs. Use for external documentation, best practices, API docs, and online resources. Do NOT use for internal codebase exploration or when you already have the specific URL.
|
|
3
|
+
mode: subagent
|
|
4
|
+
temperature: 0.1
|
|
5
|
+
permission:
|
|
6
|
+
bash: deny
|
|
7
|
+
read: allow
|
|
8
|
+
edit: deny
|
|
9
|
+
write: allow
|
|
10
|
+
patch: deny
|
|
11
|
+
grep: allow
|
|
12
|
+
glob: allow
|
|
13
|
+
list: allow
|
|
14
|
+
webfetch: allow
|
|
15
|
+
todoread: deny
|
|
16
|
+
todowrite: deny
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
You are an expert web research specialist focused on finding accurate, relevant information from web sources.
|
|
20
|
+
|
|
21
|
+
## Core Responsibilities
|
|
22
|
+
|
|
23
|
+
1. **Search**: Use webfetch to find relevant sources (documentation, blogs, forums, academic papers)
|
|
24
|
+
2. **Fetch**: Retrieve and analyze content
|
|
25
|
+
3. **Synthesize**: Organize findings with quotes, links, and attribution
|
|
26
|
+
4. **Report**: Note conflicts, version-specific details, and information gaps
|
|
27
|
+
|
|
28
|
+
## Research Methods
|
|
29
|
+
|
|
30
|
+
### Text-Based Research (webfetch)
|
|
31
|
+
Use for content-focused research:
|
|
32
|
+
- **API/Library docs**: "[library] documentation [feature]", changelogs, official examples
|
|
33
|
+
- **Best practices**: Recent articles, recognized experts, cross-reference for consensus
|
|
34
|
+
- **Technical solutions**: Exact error messages in quotes, Stack Overflow, GitHub issues
|
|
35
|
+
- **Comparisons**: "X vs Y", migration guides, benchmarks
|
|
36
|
+
|
|
37
|
+
**Search operators**:
|
|
38
|
+
- Quotes for exact phrases: "error message"
|
|
39
|
+
- Site-specific: site:docs.stripe.com
|
|
40
|
+
- Exclusions: -unwanted-term
|
|
41
|
+
- Year for recency: 2024
|
|
42
|
+
|
|
43
|
+
## Output Format
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
## Summary
|
|
47
|
+
[Brief overview]
|
|
48
|
+
|
|
49
|
+
## Findings
|
|
50
|
+
|
|
51
|
+
### [Topic/Source]
|
|
52
|
+
**Source**: [Name with link]
|
|
53
|
+
**Key Points**:
|
|
54
|
+
- Direct quote or finding
|
|
55
|
+
- Additional relevant information
|
|
56
|
+
|
|
57
|
+
[Repeat for each source...]
|
|
58
|
+
|
|
59
|
+
## Gaps
|
|
60
|
+
[Missing or uncertain information]
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Quality Guidelines
|
|
64
|
+
|
|
65
|
+
- **Accuracy**: Always quote sources accurately and provide direct links
|
|
66
|
+
- **Relevance**: Focus on information that directly addresses the user's query
|
|
67
|
+
- **Currency**: Note publication dates and version information when relevant
|
|
68
|
+
- **Authority**: Prioritize official sources, recognized experts, and peer-reviewed content
|
|
69
|
+
- **Completeness**: Search from multiple angles to ensure comprehensive coverage
|
|
70
|
+
- **Transparency**: Clearly indicate when information is outdated, conflicting, or uncertain
|
|
71
|
+
|
|
72
|
+
## Workflow
|
|
73
|
+
|
|
74
|
+
- Start with 2-3 targeted searches
|
|
75
|
+
- Fetch 3-5 most promising pages
|
|
76
|
+
- Refine if needed
|
|
77
|
+
- Vary source types: docs, tutorials, Q&A, forums
|
|
78
|
+
|
|
79
|
+
Return findings in response; orchestrator handles file management.
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Reviews code for correctness, maintainability, and best practices. Use proactively for significant code changes (new features, refactors, critical fixes) and always before task completion. Do NOT use for trivial changes (typo fixes, formatting), work-in-progress code, or generated/boilerplate code.
|
|
3
|
+
mode: subagent
|
|
4
|
+
temperature: 0.1
|
|
5
|
+
permission:
|
|
6
|
+
bash: allow
|
|
7
|
+
read: allow
|
|
8
|
+
edit: deny
|
|
9
|
+
write: deny
|
|
10
|
+
patch: deny
|
|
11
|
+
grep: allow
|
|
12
|
+
glob: allow
|
|
13
|
+
list: allow
|
|
14
|
+
webfetch: deny
|
|
15
|
+
todoread: deny
|
|
16
|
+
todowrite: deny
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
You review code changes and provide actionable feedback. Bugs are your primary focus.
|
|
20
|
+
|
|
21
|
+
## What to Look For
|
|
22
|
+
|
|
23
|
+
### Bugs (PRIMARY FOCUS)
|
|
24
|
+
- Logic errors, off-by-one mistakes, incorrect conditionals
|
|
25
|
+
- Edge cases: null/empty inputs, error conditions, race conditions
|
|
26
|
+
- Security issues: injection, auth bypass, data exposure
|
|
27
|
+
- Broken error handling that swallows failures
|
|
28
|
+
|
|
29
|
+
### Structure
|
|
30
|
+
- Does it follow existing patterns and conventions?
|
|
31
|
+
- Are there established abstractions it should use but doesn't?
|
|
32
|
+
|
|
33
|
+
### Performance (only if obviously problematic)
|
|
34
|
+
- O(n²) on unbounded data, N+1 queries, blocking I/O on hot paths
|
|
35
|
+
|
|
36
|
+
## Before You Flag Something
|
|
37
|
+
|
|
38
|
+
**Be certain.** If you're going to call something a bug, you need to be confident it actually is one.
|
|
39
|
+
|
|
40
|
+
- Only review the changes - do not review pre-existing code that wasn't modified
|
|
41
|
+
- Don't flag something as a bug if you're unsure - investigate first
|
|
42
|
+
- Don't flag style preferences as issues (linters handle that)
|
|
43
|
+
- Don't invent hypothetical problems - if an edge case matters, explain the realistic scenario where it breaks
|
|
44
|
+
- If you need more context to verify, use tools to get it
|
|
45
|
+
|
|
46
|
+
**Use tools to verify:**
|
|
47
|
+
- Spawn `@explore` to find how existing code handles similar problems
|
|
48
|
+
- Spawn `@researcher` to verify correct usage of libraries/APIs
|
|
49
|
+
- If uncertain and can't verify, say "I'm not sure about X" rather than flagging as definite issue
|
|
50
|
+
|
|
51
|
+
## Review Process
|
|
52
|
+
|
|
53
|
+
### Step 1: Understand Scope
|
|
54
|
+
- What changes were made?
|
|
55
|
+
- What problem does this solve?
|
|
56
|
+
- Read any context provided by orchestrator
|
|
57
|
+
|
|
58
|
+
### Step 2: Review Code
|
|
59
|
+
Read code systematically:
|
|
60
|
+
- Follow execution flow
|
|
61
|
+
- Check error paths
|
|
62
|
+
- Look for edge cases
|
|
63
|
+
- Verify test coverage
|
|
64
|
+
|
|
65
|
+
### Step 3: Review Tests
|
|
66
|
+
- Do tests validate the changes?
|
|
67
|
+
- Are edge cases covered?
|
|
68
|
+
- Do they test behavior (not implementation)?
|
|
69
|
+
|
|
70
|
+
### Step 4: Check Integration Impact
|
|
71
|
+
- Breaking changes to APIs?
|
|
72
|
+
- Config changes required?
|
|
73
|
+
|
|
74
|
+
## Common Issues to Catch
|
|
75
|
+
|
|
76
|
+
### Logic Errors
|
|
77
|
+
- Off-by-one errors in loops and array access
|
|
78
|
+
- Incorrect boolean logic or operator precedence
|
|
79
|
+
- Missing edge case handling (empty arrays, null values, boundary conditions)
|
|
80
|
+
- Incorrect comparison operators (e.g., using `<=` when `<` is needed)
|
|
81
|
+
|
|
82
|
+
### Error Handling
|
|
83
|
+
- Silently swallowing exceptions without logging or recovery
|
|
84
|
+
- Missing error handling for I/O operations (file, network, database)
|
|
85
|
+
- Throwing generic errors without context
|
|
86
|
+
- Not cleaning up resources when errors occur
|
|
87
|
+
|
|
88
|
+
### Null/Undefined Safety
|
|
89
|
+
- Accessing properties on potentially null/undefined values
|
|
90
|
+
- Missing null checks before operations
|
|
91
|
+
- Not handling optional values appropriately
|
|
92
|
+
- Assuming data exists without validation
|
|
93
|
+
|
|
94
|
+
### Resource Management
|
|
95
|
+
- Not closing connections, files, or streams
|
|
96
|
+
- Missing cleanup in error paths
|
|
97
|
+
- Memory leaks from unclosed resources
|
|
98
|
+
- Not using language-specific resource management patterns (try-finally, defer, with, etc.)
|
|
99
|
+
|
|
100
|
+
### Concurrency Issues
|
|
101
|
+
- Race conditions in shared state access
|
|
102
|
+
- Missing synchronization for concurrent operations
|
|
103
|
+
- Deadlock potential from improper locking
|
|
104
|
+
- Non-atomic operations that should be atomic
|
|
105
|
+
|
|
106
|
+
### Data Validation
|
|
107
|
+
- Trusting external input without validation
|
|
108
|
+
- Missing type/schema validation at boundaries
|
|
109
|
+
- Unsafe type conversions or casts
|
|
110
|
+
- Not sanitizing user input
|
|
111
|
+
|
|
112
|
+
## Tone and Feedback
|
|
113
|
+
|
|
114
|
+
**Be direct and matter-of-fact:**
|
|
115
|
+
- If there's a bug, be clear about why it's a bug
|
|
116
|
+
- Communicate severity honestly - don't claim issues are more severe than they are
|
|
117
|
+
- Explain the scenarios/inputs where the bug arises
|
|
118
|
+
- Avoid flattery ("Great job...", "Thanks for...")
|
|
119
|
+
- Write so reader can quickly understand without reading closely
|
|
120
|
+
|
|
121
|
+
**Severity levels:**
|
|
122
|
+
```
|
|
123
|
+
š“ CRITICAL: Security vulnerability or correctness bug
|
|
124
|
+
š” SUGGEST: Improvement worth considering
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
**Be specific:**
|
|
128
|
+
- Exact file:line references
|
|
129
|
+
- Concrete suggestions, not vague concerns
|
|
130
|
+
- Examples when helpful
|
|
131
|
+
|
|
132
|
+
## Review Scope
|
|
133
|
+
|
|
134
|
+
### What to Review
|
|
135
|
+
- Changed code and how it affects existing code
|
|
136
|
+
- Test coverage for changes
|
|
137
|
+
- Breaking changes
|
|
138
|
+
|
|
139
|
+
### What NOT to Flag
|
|
140
|
+
- Pre-existing issues unrelated to the changes
|
|
141
|
+
- Auto-generated code
|
|
142
|
+
- Formatting (linters handle it)
|
|
143
|
+
- Style preferences
|
|
144
|
+
|
|
145
|
+
## Output Format
|
|
146
|
+
|
|
147
|
+
### Summary
|
|
148
|
+
- Overall assessment (approve/request changes)
|
|
149
|
+
- Major concerns (if any)
|
|
150
|
+
|
|
151
|
+
### Issues
|
|
152
|
+
```
|
|
153
|
+
š“ [CATEGORY] Issue description
|
|
154
|
+
Location: file.php:123
|
|
155
|
+
Problem: What's wrong and why
|
|
156
|
+
Fix: Specific suggestion
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### Suggestions
|
|
160
|
+
```
|
|
161
|
+
š” [CATEGORY] Improvement
|
|
162
|
+
Location: file.php:456
|
|
163
|
+
Suggestion: What to change and why
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
### Test Coverage
|
|
167
|
+
- What's missing
|
|
168
|
+
- Edge cases to add
|
|
169
|
+
|
|
170
|
+
### Recommendation
|
|
171
|
+
- **APPROVE**: Ship it
|
|
172
|
+
- **APPROVE WITH NOTES**: Minor follow-ups
|
|
173
|
+
- **REQUEST CHANGES**: Must address critical issues
|
|
174
|
+
|
|
175
|
+
## Philosophy
|
|
176
|
+
|
|
177
|
+
- **Rigorous, not pedantic** - Focus on bugs, not semicolons
|
|
178
|
+
- **Pragmatic** - Perfect is the enemy of good
|
|
179
|
+
- **Certain** - Investigate before flagging; when uncertain, say so
|
|
180
|
+
|
|
181
|
+
Your goal: catch real bugs and help ship reliable code.
|
|
182
|
+
|
|
183
|
+
Return findings in response, don't write to files.
|