contextos-agents 1.5.0
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/.agents/AGENTS.md +421 -0
- package/.agents/adapters/aider/export.js +137 -0
- package/.agents/adapters/claude/export.js +55 -0
- package/.agents/adapters/copilot/export.js +107 -0
- package/.agents/adapters/cursor/export.js +210 -0
- package/.agents/adapters/gemini/export.js +115 -0
- package/.agents/adapters/shared.js +119 -0
- package/.agents/adapters/zed/export.js +111 -0
- package/.agents/core/profiles/backend.yaml +47 -0
- package/.agents/core/profiles/enterprise.yaml +46 -0
- package/.agents/core/profiles/frontend.yaml +46 -0
- package/.agents/core/profiles/hackathon.yaml +45 -0
- package/.agents/core/profiles/mvp.yaml +43 -0
- package/.agents/core/profiles/startup.yaml +48 -0
- package/.agents/core/skills/adapters/EXAMPLES.md +19 -0
- package/.agents/core/skills/adapters/SKILL.md +105 -0
- package/.agents/core/skills/adapters/TROUBLESHOOTING.md +7 -0
- package/.agents/core/skills/adapters/VALIDATION.json +12 -0
- package/.agents/core/skills/adapters/skill.yaml +10 -0
- package/.agents/core/skills/architecture-diagrams/SKILL.md +108 -0
- package/.agents/core/skills/architecture-diagrams/VALIDATION.json +12 -0
- package/.agents/core/skills/architecture-diagrams/skill.yaml +8 -0
- package/.agents/core/skills/brutalist-design/SKILL.md +150 -0
- package/.agents/core/skills/brutalist-design/VALIDATION.json +12 -0
- package/.agents/core/skills/brutalist-design/skill.yaml +8 -0
- package/.agents/core/skills/context-manager/EXAMPLES.md +19 -0
- package/.agents/core/skills/context-manager/SKILL.md +126 -0
- package/.agents/core/skills/context-manager/TROUBLESHOOTING.md +7 -0
- package/.agents/core/skills/context-manager/VALIDATION.json +12 -0
- package/.agents/core/skills/context-manager/skill.yaml +10 -0
- package/.agents/core/skills/context-os/EXAMPLES.md +21 -0
- package/.agents/core/skills/context-os/SKILL.md +169 -0
- package/.agents/core/skills/context-os/TROUBLESHOOTING.md +7 -0
- package/.agents/core/skills/context-os/VALIDATION.json +12 -0
- package/.agents/core/skills/context-os/packs.yaml +59 -0
- package/.agents/core/skills/context-os/references/context-rules.md +68 -0
- package/.agents/core/skills/context-os/references/pipeline.md +119 -0
- package/.agents/core/skills/context-os/references/project-graph.md +103 -0
- package/.agents/core/skills/context-os/rules.yaml +135 -0
- package/.agents/core/skills/context-os/skill.yaml +10 -0
- package/.agents/core/skills/database/EXAMPLES.md +74 -0
- package/.agents/core/skills/database/SKILL.md +101 -0
- package/.agents/core/skills/database/TROUBLESHOOTING.md +18 -0
- package/.agents/core/skills/database/VALIDATION.json +11 -0
- package/.agents/core/skills/database/skill.yaml +25 -0
- package/.agents/core/skills/ddd/EXAMPLES.md +42 -0
- package/.agents/core/skills/ddd/SKILL.md +247 -0
- package/.agents/core/skills/ddd/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/ddd/VALIDATION.json +12 -0
- package/.agents/core/skills/ddd/ddd.md +178 -0
- package/.agents/core/skills/ddd/skill.yaml +10 -0
- package/.agents/core/skills/decisions/EXAMPLES.md +35 -0
- package/.agents/core/skills/decisions/SKILL.md +90 -0
- package/.agents/core/skills/decisions/TROUBLESHOOTING.md +13 -0
- package/.agents/core/skills/decisions/VALIDATION.json +12 -0
- package/.agents/core/skills/decisions/skill.yaml +10 -0
- package/.agents/core/skills/docker/EXAMPLES.md +56 -0
- package/.agents/core/skills/docker/SKILL.md +63 -0
- package/.agents/core/skills/docker/TROUBLESHOOTING.md +18 -0
- package/.agents/core/skills/docker/VALIDATION.json +11 -0
- package/.agents/core/skills/docker/skill.yaml +23 -0
- package/.agents/core/skills/engineering-workflow/EXAMPLES.md +57 -0
- package/.agents/core/skills/engineering-workflow/SKILL.md +343 -0
- package/.agents/core/skills/engineering-workflow/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/engineering-workflow/VALIDATION.json +12 -0
- package/.agents/core/skills/engineering-workflow/skill.yaml +13 -0
- package/.agents/core/skills/fastapi/EXAMPLES.md +36 -0
- package/.agents/core/skills/fastapi/SKILL.md +148 -0
- package/.agents/core/skills/fastapi/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/fastapi/VALIDATION.json +12 -0
- package/.agents/core/skills/fastapi/fastapi.md +112 -0
- package/.agents/core/skills/fastapi/skill.yaml +10 -0
- package/.agents/core/skills/gemini-precision/SKILL.md +169 -0
- package/.agents/core/skills/gemini-precision/VALIDATION.json +12 -0
- package/.agents/core/skills/gemini-precision/skill.yaml +9 -0
- package/.agents/core/skills/generators/EXAMPLES.md +19 -0
- package/.agents/core/skills/generators/SKILL.md +112 -0
- package/.agents/core/skills/generators/TROUBLESHOOTING.md +7 -0
- package/.agents/core/skills/generators/VALIDATION.json +12 -0
- package/.agents/core/skills/generators/skill.yaml +10 -0
- package/.agents/core/skills/generators/templates/API.md +77 -0
- package/.agents/core/skills/generators/templates/ARCHITECTURE.md +70 -0
- package/.agents/core/skills/generators/templates/DATABASE.md +42 -0
- package/.agents/core/skills/generators/templates/DECISION.md +46 -0
- package/.agents/core/skills/generators/templates/PRD.md +67 -0
- package/.agents/core/skills/generators/templates/PROJECT_GRAPH.md +56 -0
- package/.agents/core/skills/generators/templates/ROADMAP.md +51 -0
- package/.agents/core/skills/generators/templates/TASKS.md +43 -0
- package/.agents/core/skills/generators/templates/UI.md +73 -0
- package/.agents/core/skills/graphify/EXAMPLES.md +73 -0
- package/.agents/core/skills/graphify/SKILL.md +130 -0
- package/.agents/core/skills/graphify/VALIDATION.json +12 -0
- package/.agents/core/skills/graphify/skill.yaml +13 -0
- package/.agents/core/skills/gstack-roles/EXAMPLES.md +23 -0
- package/.agents/core/skills/gstack-roles/SKILL.md +152 -0
- package/.agents/core/skills/gstack-roles/TROUBLESHOOTING.md +13 -0
- package/.agents/core/skills/gstack-roles/VALIDATION.json +12 -0
- package/.agents/core/skills/gstack-roles/skill.yaml +12 -0
- package/.agents/core/skills/impeccable-design/EXAMPLES.md +26 -0
- package/.agents/core/skills/impeccable-design/SKILL.md +201 -0
- package/.agents/core/skills/impeccable-design/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/impeccable-design/VALIDATION.json +12 -0
- package/.agents/core/skills/impeccable-design/skill.yaml +14 -0
- package/.agents/core/skills/interview-me/SKILL.md +97 -0
- package/.agents/core/skills/interview-me/VALIDATION.json +12 -0
- package/.agents/core/skills/interview-me/skill.yaml +8 -0
- package/.agents/core/skills/microservices/EXAMPLES.md +38 -0
- package/.agents/core/skills/microservices/SKILL.md +164 -0
- package/.agents/core/skills/microservices/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/microservices/VALIDATION.json +12 -0
- package/.agents/core/skills/microservices/microservices.md +119 -0
- package/.agents/core/skills/microservices/skill.yaml +10 -0
- package/.agents/core/skills/minimalist-design/SKILL.md +113 -0
- package/.agents/core/skills/minimalist-design/VALIDATION.json +12 -0
- package/.agents/core/skills/minimalist-design/skill.yaml +8 -0
- package/.agents/core/skills/nestjs/EXAMPLES.md +40 -0
- package/.agents/core/skills/nestjs/SKILL.md +139 -0
- package/.agents/core/skills/nestjs/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/nestjs/VALIDATION.json +12 -0
- package/.agents/core/skills/nestjs/nestjs.md +103 -0
- package/.agents/core/skills/nestjs/skill.yaml +10 -0
- package/.agents/core/skills/nextjs/EXAMPLES.md +40 -0
- package/.agents/core/skills/nextjs/SKILL.md +163 -0
- package/.agents/core/skills/nextjs/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/nextjs/VALIDATION.json +12 -0
- package/.agents/core/skills/nextjs/nextjs.md +67 -0
- package/.agents/core/skills/nextjs/skill.yaml +10 -0
- package/.agents/core/skills/node/EXAMPLES.md +80 -0
- package/.agents/core/skills/node/SKILL.md +128 -0
- package/.agents/core/skills/node/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/node/VALIDATION.json +12 -0
- package/.agents/core/skills/node/node.md +87 -0
- package/.agents/core/skills/node/skill.yaml +10 -0
- package/.agents/core/skills/performance/EXAMPLES.md +30 -0
- package/.agents/core/skills/performance/SKILL.md +75 -0
- package/.agents/core/skills/performance/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/performance/VALIDATION.json +12 -0
- package/.agents/core/skills/performance/performance.md +52 -0
- package/.agents/core/skills/performance/skill.yaml +10 -0
- package/.agents/core/skills/ponytail-mindset/EXAMPLES.md +45 -0
- package/.agents/core/skills/ponytail-mindset/SKILL.md +193 -0
- package/.agents/core/skills/ponytail-mindset/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/ponytail-mindset/VALIDATION.json +12 -0
- package/.agents/core/skills/ponytail-mindset/skill.yaml +14 -0
- package/.agents/core/skills/react/EXAMPLES.md +79 -0
- package/.agents/core/skills/react/SKILL.md +132 -0
- package/.agents/core/skills/react/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/react/VALIDATION.json +12 -0
- package/.agents/core/skills/react/react.md +93 -0
- package/.agents/core/skills/react/skill.yaml +10 -0
- package/.agents/core/skills/react-best-practices/SKILL.md +155 -0
- package/.agents/core/skills/react-best-practices/VALIDATION.json +12 -0
- package/.agents/core/skills/react-best-practices/skill.yaml +10 -0
- package/.agents/core/skills/redesign-audit/SKILL.md +117 -0
- package/.agents/core/skills/redesign-audit/VALIDATION.json +12 -0
- package/.agents/core/skills/redesign-audit/skill.yaml +8 -0
- package/.agents/core/skills/security/EXAMPLES.md +64 -0
- package/.agents/core/skills/security/SKILL.md +158 -0
- package/.agents/core/skills/security/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/security/VALIDATION.json +12 -0
- package/.agents/core/skills/security/security.md +106 -0
- package/.agents/core/skills/security/skill.yaml +10 -0
- package/.agents/core/skills/soft-design/SKILL.md +108 -0
- package/.agents/core/skills/soft-design/VALIDATION.json +12 -0
- package/.agents/core/skills/soft-design/skill.yaml +8 -0
- package/.agents/core/skills/state-management/EXAMPLES.md +56 -0
- package/.agents/core/skills/state-management/SKILL.md +48 -0
- package/.agents/core/skills/state-management/TROUBLESHOOTING.md +18 -0
- package/.agents/core/skills/state-management/VALIDATION.json +11 -0
- package/.agents/core/skills/state-management/skill.yaml +22 -0
- package/.agents/core/skills/subagent-orchestrator/SKILL.md +100 -0
- package/.agents/core/skills/subagent-orchestrator/VALIDATION.json +12 -0
- package/.agents/core/skills/subagent-orchestrator/skill.yaml +8 -0
- package/.agents/core/skills/system-design/EXAMPLES.md +75 -0
- package/.agents/core/skills/system-design/SKILL.md +419 -0
- package/.agents/core/skills/system-design/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/system-design/VALIDATION.json +12 -0
- package/.agents/core/skills/system-design/skill.yaml +13 -0
- package/.agents/core/skills/system-design/system-design.md +112 -0
- package/.agents/core/skills/testing/EXAMPLES.md +71 -0
- package/.agents/core/skills/testing/SKILL.md +70 -0
- package/.agents/core/skills/testing/TROUBLESHOOTING.md +18 -0
- package/.agents/core/skills/testing/VALIDATION.json +11 -0
- package/.agents/core/skills/testing/skill.yaml +26 -0
- package/.agents/core/skills/typescript/EXAMPLES.md +64 -0
- package/.agents/core/skills/typescript/SKILL.md +112 -0
- package/.agents/core/skills/typescript/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/typescript/VALIDATION.json +12 -0
- package/.agents/core/skills/typescript/skill.yaml +10 -0
- package/.agents/core/skills/typescript/typescript.md +71 -0
- package/.agents/core/skills/ui-design/EXAMPLES.md +21 -0
- package/.agents/core/skills/ui-design/SKILL.md +124 -0
- package/.agents/core/skills/ui-design/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/ui-design/VALIDATION.json +12 -0
- package/.agents/core/skills/ui-design/skill.yaml +10 -0
- package/.agents/core/skills/ui-design/ui.md +88 -0
- package/.agents/core/skills/ui-ux-pro/EXAMPLES.md +62 -0
- package/.agents/core/skills/ui-ux-pro/SKILL.md +375 -0
- package/.agents/core/skills/ui-ux-pro/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/ui-ux-pro/VALIDATION.json +12 -0
- package/.agents/core/skills/ui-ux-pro/skill.yaml +13 -0
- package/.agents/core/skills/ux-design/EXAMPLES.md +36 -0
- package/.agents/core/skills/ux-design/SKILL.md +116 -0
- package/.agents/core/skills/ux-design/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/ux-design/VALIDATION.json +12 -0
- package/.agents/core/skills/ux-design/skill.yaml +10 -0
- package/.agents/core/skills/ux-design/ux.md +80 -0
- package/.agents/core/skills/vercel-optimize/SKILL.md +83 -0
- package/.agents/core/skills/vercel-optimize/VALIDATION.json +12 -0
- package/.agents/core/skills/vercel-optimize/skill.yaml +10 -0
- package/.agents/core/skills/web-accessibility/EXAMPLES.md +39 -0
- package/.agents/core/skills/web-accessibility/SKILL.md +170 -0
- package/.agents/core/skills/web-accessibility/TROUBLESHOOTING.md +19 -0
- package/.agents/core/skills/web-accessibility/VALIDATION.json +12 -0
- package/.agents/core/skills/web-accessibility/accessibility.md +63 -0
- package/.agents/core/skills/web-accessibility/skill.yaml +10 -0
- package/.agents/ctx.js +370 -0
- package/.agents/generated/claude/skills/adapters/SKILL.md +126 -0
- package/.agents/generated/claude/skills/architecture-diagrams/SKILL.md +101 -0
- package/.agents/generated/claude/skills/brutalist-design/SKILL.md +145 -0
- package/.agents/generated/claude/skills/context-manager/SKILL.md +147 -0
- package/.agents/generated/claude/skills/context-os/SKILL.md +191 -0
- package/.agents/generated/claude/skills/database/SKILL.md +191 -0
- package/.agents/generated/claude/skills/ddd/SKILL.md +305 -0
- package/.agents/generated/claude/skills/decisions/SKILL.md +134 -0
- package/.agents/generated/claude/skills/docker/SKILL.md +135 -0
- package/.agents/generated/claude/skills/engineering-workflow/SKILL.md +414 -0
- package/.agents/generated/claude/skills/fastapi/SKILL.md +200 -0
- package/.agents/generated/claude/skills/gemini-precision/SKILL.md +161 -0
- package/.agents/generated/claude/skills/generators/SKILL.md +133 -0
- package/.agents/generated/claude/skills/graphify/SKILL.md +198 -0
- package/.agents/generated/claude/skills/gstack-roles/SKILL.md +184 -0
- package/.agents/generated/claude/skills/impeccable-design/SKILL.md +241 -0
- package/.agents/generated/claude/skills/interview-me/SKILL.md +90 -0
- package/.agents/generated/claude/skills/microservices/SKILL.md +218 -0
- package/.agents/generated/claude/skills/minimalist-design/SKILL.md +108 -0
- package/.agents/generated/claude/skills/nestjs/SKILL.md +195 -0
- package/.agents/generated/claude/skills/nextjs/SKILL.md +219 -0
- package/.agents/generated/claude/skills/node/SKILL.md +224 -0
- package/.agents/generated/claude/skills/performance/SKILL.md +121 -0
- package/.agents/generated/claude/skills/ponytail-mindset/SKILL.md +252 -0
- package/.agents/generated/claude/skills/react/SKILL.md +227 -0
- package/.agents/generated/claude/skills/react-best-practices/SKILL.md +146 -0
- package/.agents/generated/claude/skills/redesign-audit/SKILL.md +112 -0
- package/.agents/generated/claude/skills/security/SKILL.md +237 -0
- package/.agents/generated/claude/skills/soft-design/SKILL.md +103 -0
- package/.agents/generated/claude/skills/state-management/SKILL.md +120 -0
- package/.agents/generated/claude/skills/subagent-orchestrator/SKILL.md +93 -0
- package/.agents/generated/claude/skills/system-design/SKILL.md +507 -0
- package/.agents/generated/claude/skills/testing/SKILL.md +157 -0
- package/.agents/generated/claude/skills/typescript/SKILL.md +192 -0
- package/.agents/generated/claude/skills/ui-design/SKILL.md +161 -0
- package/.agents/generated/claude/skills/ui-ux-pro/SKILL.md +451 -0
- package/.agents/generated/claude/skills/ux-design/SKILL.md +168 -0
- package/.agents/generated/claude/skills/vercel-optimize/SKILL.md +76 -0
- package/.agents/generated/claude/skills/web-accessibility/SKILL.md +225 -0
- package/.agents/generated/gemini/skills/adapters/SKILL.md +135 -0
- package/.agents/generated/gemini/skills/architecture-diagrams/SKILL.md +107 -0
- package/.agents/generated/gemini/skills/brutalist-design/SKILL.md +151 -0
- package/.agents/generated/gemini/skills/context-manager/SKILL.md +156 -0
- package/.agents/generated/gemini/skills/context-os/SKILL.md +200 -0
- package/.agents/generated/gemini/skills/database/SKILL.md +200 -0
- package/.agents/generated/gemini/skills/ddd/SKILL.md +314 -0
- package/.agents/generated/gemini/skills/decisions/SKILL.md +143 -0
- package/.agents/generated/gemini/skills/docker/SKILL.md +144 -0
- package/.agents/generated/gemini/skills/engineering-workflow/SKILL.md +423 -0
- package/.agents/generated/gemini/skills/fastapi/SKILL.md +209 -0
- package/.agents/generated/gemini/skills/gemini-precision/SKILL.md +167 -0
- package/.agents/generated/gemini/skills/generators/SKILL.md +142 -0
- package/.agents/generated/gemini/skills/graphify/SKILL.md +205 -0
- package/.agents/generated/gemini/skills/gstack-roles/SKILL.md +193 -0
- package/.agents/generated/gemini/skills/impeccable-design/SKILL.md +250 -0
- package/.agents/generated/gemini/skills/interview-me/SKILL.md +96 -0
- package/.agents/generated/gemini/skills/microservices/SKILL.md +227 -0
- package/.agents/generated/gemini/skills/minimalist-design/SKILL.md +114 -0
- package/.agents/generated/gemini/skills/nestjs/SKILL.md +204 -0
- package/.agents/generated/gemini/skills/nextjs/SKILL.md +298 -0
- package/.agents/generated/gemini/skills/node/SKILL.md +323 -0
- package/.agents/generated/gemini/skills/performance/SKILL.md +185 -0
- package/.agents/generated/gemini/skills/ponytail-mindset/SKILL.md +261 -0
- package/.agents/generated/gemini/skills/react/SKILL.md +332 -0
- package/.agents/generated/gemini/skills/react-best-practices/SKILL.md +152 -0
- package/.agents/generated/gemini/skills/redesign-audit/SKILL.md +118 -0
- package/.agents/generated/gemini/skills/security/SKILL.md +355 -0
- package/.agents/generated/gemini/skills/soft-design/SKILL.md +109 -0
- package/.agents/generated/gemini/skills/state-management/SKILL.md +129 -0
- package/.agents/generated/gemini/skills/subagent-orchestrator/SKILL.md +99 -0
- package/.agents/generated/gemini/skills/system-design/SKILL.md +631 -0
- package/.agents/generated/gemini/skills/testing/SKILL.md +166 -0
- package/.agents/generated/gemini/skills/typescript/SKILL.md +275 -0
- package/.agents/generated/gemini/skills/ui-design/SKILL.md +170 -0
- package/.agents/generated/gemini/skills/ui-ux-pro/SKILL.md +460 -0
- package/.agents/generated/gemini/skills/ux-design/SKILL.md +177 -0
- package/.agents/generated/gemini/skills/vercel-optimize/SKILL.md +82 -0
- package/.agents/generated/gemini/skills/web-accessibility/SKILL.md +300 -0
- package/.agents/mcp/runtime.py +454 -0
- package/.agents/mcp/server.mjs +189373 -0
- package/.agents/plugins.js +574 -0
- package/.agents/profiles.js +267 -0
- package/.agents/resolver.js +336 -0
- package/.agents/skills-index.json +200 -0
- package/.agents/skills.json +6 -0
- package/.agents/validate.js +500 -0
- package/LICENSE +21 -0
- package/README.md +415 -0
- package/benchmarks/gemini-issues.js +533 -0
- package/bin/index.js +458 -0
- package/package.json +70 -0
- package/registry.json +53 -0
- package/registry.schema.json +32 -0
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gstack-roles
|
|
3
|
+
description: >
|
|
4
|
+
Role-based AI specialist system inspired by Garry Tan's gstack. Defines 23 specialist roles (CEO, Eng Manager, Designer, QA, Security etc.) and teaches the AI to adopt the correct role before each task phase.
|
|
5
|
+
---
|
|
6
|
+
# gstack-roles
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
Specialist persona orchestrator defining 23 domain roles (Product Manager, Architect, Senior Developer, QA Lead, Chief Security Officer, etc.). Enforces mindset transitions across engineering pipeline phases.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
|
|
14
|
+
Activate on every task to declare explicit specialist role and mindset before beginning DEFINE, PLAN, BUILD, VERIFY, REVIEW, or SHIP phases.
|
|
15
|
+
|
|
16
|
+
## Rules & Patterns
|
|
17
|
+
|
|
18
|
+
Inspired by [Garry Tan's gstack](https://github.com/garrytan/gstack) — shipping 810× more logical code than a solo dev in 2013.
|
|
19
|
+
|
|
20
|
+
## Core Principle
|
|
21
|
+
|
|
22
|
+
> Before starting ANY task, identify your current role. You are not a generic AI. You are a specialist. Think and act accordingly.
|
|
23
|
+
|
|
24
|
+
## Role Identification Protocol
|
|
25
|
+
|
|
26
|
+
At the start of each task, declare your role:
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
[ROLE: <Role Name>] — <One-line description of your mandate for this task>
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Then execute ONLY within the constraints of that role.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## The 23 Specialist Roles
|
|
37
|
+
|
|
38
|
+
### Strategy & Planning
|
|
39
|
+
|
|
40
|
+
| Role | Mandate | When to Activate |
|
|
41
|
+
| ------ | --------- | ----------------- |
|
|
42
|
+
| **CEO / Founder** | Rethink the problem. Find the 10-star product hiding inside the request. Challenge scope. | Feature planning, product decisions |
|
|
43
|
+
| **YC Office Hours** | Ask 6 forcing questions that reframe the product before writing code. Push back on framing. | Before any new feature starts |
|
|
44
|
+
| **Product Manager** | Define requirements as user stories. Prioritize ruthlessly. Ship the narrowest wedge first. | Requirement gathering |
|
|
45
|
+
| **Architect** | Lock in architecture, data flow, diagrams, edge cases. Force hidden assumptions into the open. | System design, tech stack decisions |
|
|
46
|
+
|
|
47
|
+
### Engineering
|
|
48
|
+
|
|
49
|
+
| Role | Mandate | When to Activate |
|
|
50
|
+
| ------ | --------- | ----------------- |
|
|
51
|
+
| **Engineering Manager** | Break work into atomic tasks. Review test plans. Run retrospectives. | Sprint planning, reviews |
|
|
52
|
+
| **Staff Engineer** | Find bugs that pass CI but blow up in production. Auto-fix the obvious. Flag gaps. | Code review |
|
|
53
|
+
| **Senior Developer** | Write production-quality code. Follow architecture decisions. Test everything. | Implementation |
|
|
54
|
+
| **Debugger** | Systematic root-cause debugging. Iron Law: no fixes without investigation. | Bug fixing |
|
|
55
|
+
| **Performance Engineer** | Baseline metrics. Core Web Vitals. Resource sizes. Compare before/after. | Optimization |
|
|
56
|
+
| **Developer Experience Lead** | Benchmark onboarding speed. Find friction. Design the magical moment. | DX review |
|
|
57
|
+
|
|
58
|
+
### Design
|
|
59
|
+
|
|
60
|
+
| Role | Mandate | When to Activate |
|
|
61
|
+
| ------ | --------- | ----------------- |
|
|
62
|
+
| **Senior Designer** | Rate each design dimension 0-10. Detect AI slop. Interactive: one question per design choice. | Design review, UI tasks |
|
|
63
|
+
| **Design Engineer** | Turn mockups into production HTML/CSS that actually works. 30KB, zero deps where possible. | Frontend implementation |
|
|
64
|
+
| **Design Explorer** | Generate 4-6 design variants. Open comparison. Iterate until user loves it. | Design ideation |
|
|
65
|
+
|
|
66
|
+
### Quality & Security
|
|
67
|
+
|
|
68
|
+
| Role | Mandate | When to Activate |
|
|
69
|
+
| ------ | --------- | ----------------- |
|
|
70
|
+
| **QA Lead** | Test the app, find bugs, fix with atomic commits, re-verify, write regression tests. | Before shipping |
|
|
71
|
+
| **QA Reporter** | Pure bug report only. No code changes. | Bug reporting |
|
|
72
|
+
| **Chief Security Officer** | OWASP Top 10 + STRIDE threat model. Zero-noise: 8/10+ confidence gate. Each finding needs exploit scenario. | Security audit |
|
|
73
|
+
|
|
74
|
+
### Operations & Release
|
|
75
|
+
|
|
76
|
+
| Role | Mandate | When to Activate |
|
|
77
|
+
| ------ | --------- | ----------------- |
|
|
78
|
+
| **Release Engineer** | Sync main, run tests, audit coverage, push, open PR. Bootstrap test frameworks if missing. | Before shipping |
|
|
79
|
+
| **SRE** | Post-deploy monitoring loop. Watch for console errors, performance regressions, failures. | After deploy |
|
|
80
|
+
| **Technical Writer** | Update all docs to match what shipped. Catch stale READMEs. Build Diataxis coverage map. | After feature ships |
|
|
81
|
+
|
|
82
|
+
### Research & Memory
|
|
83
|
+
|
|
84
|
+
| Role | Mandate | When to Activate |
|
|
85
|
+
| ------ | --------- | ----------------- |
|
|
86
|
+
| **Researcher** | Investigate root causes systematically. No fixes without understanding. Max 3 hypothesis cycles. | Unknown problems |
|
|
87
|
+
| **Memory Manager** | Manage learnings across sessions. Review, search, prune, export project patterns. | Session start/end |
|
|
88
|
+
| **Spec Author** | Turn vague intent into precise executable specs in 5 phases: why, scope, technical, draft, file. | Before planning |
|
|
89
|
+
| **Retro Facilitator** | Per-person breakdowns, shipping streaks, test health trends, growth opportunities. | End of sprint |
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## Sprint Lifecycle
|
|
94
|
+
|
|
95
|
+
Every change follows this lifecycle, with a specific role per phase:
|
|
96
|
+
|
|
97
|
+
```
|
|
98
|
+
THINK PLAN BUILD REVIEW TEST SHIP
|
|
99
|
+
[YC Hours] [Architect] [Sr Developer] [Staff Eng] [QA Lead] [Release Eng]
|
|
100
|
+
[CEO] [Eng Mgr] [Designer] [Sec Officer]
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## Role-Switching Rules
|
|
104
|
+
|
|
105
|
+
1. **Never skip phases.** Don't jump from "idea" to "write code."
|
|
106
|
+
2. **One role at a time.** Don't mix QA and implementation in the same response.
|
|
107
|
+
3. **Declare before acting.** Always state `[ROLE: X]` before switching modes.
|
|
108
|
+
4. **Escalate correctly.** If a QA finds an architectural problem → escalate to Architect role.
|
|
109
|
+
5. **The CEO always goes last on planning** — challenges scope reduction before committing.
|
|
110
|
+
|
|
111
|
+
## Example Usage
|
|
112
|
+
|
|
113
|
+
```
|
|
114
|
+
User: "Add a notifications feature"
|
|
115
|
+
|
|
116
|
+
[ROLE: YC Office Hours]
|
|
117
|
+
Before I plan this, 6 forcing questions:
|
|
118
|
+
1. What pain does the ABSENCE of notifications cause today?
|
|
119
|
+
2. Who specifically gets notified? What's the trigger?
|
|
120
|
+
...
|
|
121
|
+
|
|
122
|
+
[ROLE: CEO / Founder]
|
|
123
|
+
I'm going to push back on "notifications feature."
|
|
124
|
+
What you actually described is a user re-engagement system.
|
|
125
|
+
The narrowest wedge: one email on task completion.
|
|
126
|
+
Ship that tomorrow. The full vision is a 3-month project.
|
|
127
|
+
|
|
128
|
+
[ROLE: Architect]
|
|
129
|
+
For the narrow wedge:
|
|
130
|
+
- Event: task.completed → webhook → email queue (Redis)
|
|
131
|
+
- No real-time needed for MVP
|
|
132
|
+
- Schema: notifications(id, user_id, type, payload, sent_at)
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
## Code Examples
|
|
137
|
+
|
|
138
|
+
See `EXAMPLES.md` for detailed code examples.
|
|
139
|
+
|
|
140
|
+
## Validation Checklist
|
|
141
|
+
|
|
142
|
+
What to verify during the review phase before completing the task.
|
|
143
|
+
|
|
144
|
+
## Common Mistakes
|
|
145
|
+
|
|
146
|
+
Anti-patterns and things to explicitly avoid. See `TROUBLESHOOTING.md`.
|
|
147
|
+
|
|
148
|
+
## Integration Notes
|
|
149
|
+
|
|
150
|
+
How this skill interacts with other skills.
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
<!-- Source: EXAMPLES.md -->
|
|
154
|
+
|
|
155
|
+
# gstack-roles Examples — Anti-patterns vs ContextOS Standard
|
|
156
|
+
|
|
157
|
+
## Example 1: Specialist Persona Activation
|
|
158
|
+
|
|
159
|
+
### Anti-pattern: Undifferentiated Generalist Response
|
|
160
|
+
|
|
161
|
+
```text
|
|
162
|
+
User: "Should we migrate our monolithic PostgreSQL database to MongoDB?"
|
|
163
|
+
Agent: Gives a vague 5-paragraph summary listing pros and cons of both without making a recommendation.
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
### Best practice: ContextOS Standard (Architect Role Declaration)
|
|
167
|
+
|
|
168
|
+
```markdown
|
|
169
|
+
[DOMAIN: Architecture] [PHASE: Plan] [ROLE: Database Architect]
|
|
170
|
+
Skills loaded: database, system-design, decisions
|
|
171
|
+
|
|
172
|
+
### Recommendation: Stay with PostgreSQL. Do NOT migrate to MongoDB.
|
|
173
|
+
1. Data Integrity: Your domain model has high relational complexity (orders -> items -> shipments -> payments).
|
|
174
|
+
2. Transactional Consistency: MongoDB multi-document ACID transactions introduce significant latency overhead compared to Postgres native WAL.
|
|
175
|
+
3. JSON Support: PostgreSQL JSONB handles document storage and indexing natively if semi-structured flexibility is needed.
|
|
176
|
+
Decision: Draft ADR 0004-retain-postgresql-with-jsonb.md.
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
<!-- Source: TROUBLESHOOTING.md -->
|
|
180
|
+
|
|
181
|
+
# gstack-roles Troubleshooting & Common Mistakes
|
|
182
|
+
|
|
183
|
+
## 1. Persona Abandonment
|
|
184
|
+
|
|
185
|
+
- **Symptom**: Agent stops declaring its role and drifts back into generic assistant voice.
|
|
186
|
+
- **Root Cause**: Not declaring role headers at the start of multi-turn conversations.
|
|
187
|
+
- **Fix**: Always open every major response with the ContextOS status banner: [DOMAIN: ...] [PHASE: ...] [ROLE: ...].
|
|
188
|
+
|
|
189
|
+
## 2. Mismatched Role Authority
|
|
190
|
+
|
|
191
|
+
- **Symptom**: Junior Developer persona trying to override Architectural Decisions without ADR review.
|
|
192
|
+
- **Root Cause**: Role boundary confusion.
|
|
193
|
+
- **Fix**: Respect hierarchy: Product Manager owns scope, Architect owns topology, Senior Dev owns implementation.
|
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: impeccable-design
|
|
3
|
+
description: >
|
|
4
|
+
Visual design quality skill based on pbakaus/impeccable. 46 deterministic anti-pattern rules that prevent AI design slop. Bans overused fonts, pure black/gray, nested cards, bounce animations, and all generic AI-generated design clichés.
|
|
5
|
+
---
|
|
6
|
+
# impeccable-design
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
Hard QA design review checklist consisting of 50 deterministic rules covering typography (T1-T10), color systems (C1-C12), layout constraints (L1-L11), component contracts (K1-K11), and micro-animations (A1-A8).
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
|
|
14
|
+
Activate during the REVIEW phase of all frontend tasks as a strict visual and functional QA gate before marking UI work complete.
|
|
15
|
+
|
|
16
|
+
## Rules & Patterns
|
|
17
|
+
|
|
18
|
+
Based on [pbakaus/impeccable](https://github.com/pbakaus/impeccable) — deterministic detector rules for AI-generated frontend design.
|
|
19
|
+
|
|
20
|
+
## Core Principle
|
|
21
|
+
|
|
22
|
+
> Every model is trained on the same SaaS templates. Skip this guidance and you get the same handful of tells on every project. Impeccable eliminates them.
|
|
23
|
+
|
|
24
|
+
## Role in the Pipeline
|
|
25
|
+
|
|
26
|
+
> **This skill acts as a QA-designer at the `/review` phase.** `ui-ux-pro` is the planning guideline; `impeccable-design` is the hard checklist that runs before merge.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## Anti-Pattern Rules
|
|
31
|
+
|
|
32
|
+
### Typography (Rules T1–T10)
|
|
33
|
+
|
|
34
|
+
| Rule | Anti-Pattern | Correct Approach |
|
|
35
|
+
| ------ | ------------- | ----------------- |
|
|
36
|
+
| T1 | Using Inter for all text | Use Inter for UI body, pair with a distinct display font for headings OR with `JetBrains Mono` for technical/number accents (premium SaaS pattern) |
|
|
37
|
+
| T2 | Using Arial or Helvetica | Use a curated Google Font pairing |
|
|
38
|
+
| T3 | All text same weight | Use weight contrast: 700 headings, 400 body, 500 labels |
|
|
39
|
+
| T4 | Line height = 1 (tight) | Body: 1.6–1.8, Headings: 1.1–1.3 |
|
|
40
|
+
| T5 | No letter-spacing on caps | Uppercase labels: `letter-spacing: 0.08em` (Tailwind: `tracking-widest`) |
|
|
41
|
+
| T6 | Text too wide | Max line length: 60–75 characters — use `max-w-prose` or `max-w-[65ch]` |
|
|
42
|
+
| T7 | Monospace only for code | Use `tabular-nums` Tailwind class for number tables and data grids |
|
|
43
|
+
| T8 | Random font sizing | Use a consistent modular scale (1.25× or 1.333×) — use Tailwind's `text-*` scale |
|
|
44
|
+
| T9 | Body text too small | Minimum `text-sm` (14px) for body, never smaller than 12px |
|
|
45
|
+
| T10 | Bold everywhere | Bold is for emphasis. Diluted if overused. |
|
|
46
|
+
|
|
47
|
+
**Tailwind typography utilities:**
|
|
48
|
+
|
|
49
|
+
- `text-balance` — for headlines (prevents orphan words)
|
|
50
|
+
- `text-pretty` — for body paragraphs (smart line-breaks)
|
|
51
|
+
- `tabular-nums` — for numerical data tables
|
|
52
|
+
|
|
53
|
+
### Color (Rules C1–C12)
|
|
54
|
+
|
|
55
|
+
| Rule | Anti-Pattern | Correct Approach |
|
|
56
|
+
| ------ | ------------- | ----------------- |
|
|
57
|
+
| C1 | Pure black `#000` | Tint toward brand: `hsl(240, 10%, 4%)` |
|
|
58
|
+
| C2 | Pure white `#fff` for surfaces | Near-white with warmth: `hsl(40, 30%, 97%)` |
|
|
59
|
+
| C3 | Gray on colored background | Check contrast — likely fails WCAG. Use white/dark |
|
|
60
|
+
| C4 | Purple → Blue gradient | Clichéd AI palette. Use brand-derived gradients |
|
|
61
|
+
| C5 | Neon primary colors | Neon = accent only, never primary surface or text |
|
|
62
|
+
| C6 | Too many colors | 3 colors max: primary, neutral, semantic (success/error) |
|
|
63
|
+
| C7 | All links same blue `#0000EE` | Style links with brand color, preserve underline |
|
|
64
|
+
| C8 | Disabled state = gray only | Disabled: `opacity-40` + `cursor-not-allowed` |
|
|
65
|
+
| C9 | Success always green, Error always red | Check brand conflicts. Use accessible variants |
|
|
66
|
+
| C10 | Dark mode = inverted light mode | Dark mode needs separate palette — use `@layer base { .dark { ... } }` |
|
|
67
|
+
| C11 | No hover state change | Hover: shift lightness 8–12%, add `transition-colors duration-150` |
|
|
68
|
+
| C12 | Brand color on dark surface loses identity | Adjust saturation/lightness for dark bg context |
|
|
69
|
+
|
|
70
|
+
### Layout & Spacing (Rules L1–L11)
|
|
71
|
+
|
|
72
|
+
| Rule | Anti-Pattern | Correct Approach |
|
|
73
|
+
| ------ | ------------- | ----------------- |
|
|
74
|
+
| L1 | Cards inside cards | One level of card depth maximum |
|
|
75
|
+
| L2 | Icon tile above every heading | Use icons inline, in context, not decoratively above text |
|
|
76
|
+
| L3 | Centered long paragraphs | `text-center` max 2 lines only. Use `text-pretty` + left-align for body |
|
|
77
|
+
| L4 | Inconsistent spacing | Use Tailwind spacing utilities only. **Never arbitrary values** like `gap-[17px]` |
|
|
78
|
+
| L5 | Zero whitespace between sections | Sections need `py-16` to `py-24` breathing room |
|
|
79
|
+
| L6 | Content touching edges | Always `px-4` minimum on mobile |
|
|
80
|
+
| L7 | Same visual weight everywhere | Use hierarchy: primary > secondary > tertiary zones |
|
|
81
|
+
| L8 | Grid breaks on tablet | Test at 768px. Use 4-col on tablet, 12-col on desktop |
|
|
82
|
+
| L9 | Full-width everything | Max content width: `max-w-7xl` centered |
|
|
83
|
+
| L10 | Missing grid alignment | Use CSS Grid or Tailwind `grid` — not absolute positioning |
|
|
84
|
+
| L11 | Arbitrary high z-indexes | **NEVER** use `z-[999]` or `z-50` manually. Rely on DOM order + Radix/shadcn Portals which already handle modal elevation correctly |
|
|
85
|
+
| L12 | Default Rhythm | Break the 'Hero → 3 Features → CTA' structure. Build structurally diverse pages tailored to the content. |
|
|
86
|
+
| L13 | Symmetric card grids everywhere | Use asymmetric layouts (e.g., bento boxes, masonry, alternating left/right) to reduce the AI-generated feel. |
|
|
87
|
+
|
|
88
|
+
### Components (Rules K1–K11)
|
|
89
|
+
|
|
90
|
+
| Rule | Anti-Pattern | Correct Approach |
|
|
91
|
+
| ------ | ------------- | ----------------- |
|
|
92
|
+
| K1 | Two filled buttons side-by-side | `<Button variant="default">` + `<Button variant="outline">` or `variant="ghost"` |
|
|
93
|
+
| K2 | Button without loading state | Always add spinner + `disabled` during async actions |
|
|
94
|
+
| K3 | Modal without backdrop blur | shadcn `<Dialog>` handles this. Don't override with plain divs |
|
|
95
|
+
| K4 | Empty states left blank | **Always** design empty states: illustration + helpful message + primary CTA |
|
|
96
|
+
| K5 | No skeleton screens | Use `<Skeleton>` from shadcn for content areas, not just spinners |
|
|
97
|
+
| K6 | Tooltip on click (not hover) | Tooltips on hover, modals on click — use shadcn `<Tooltip>` + `<Dialog>` |
|
|
98
|
+
| K7 | Dropdown without keyboard nav | Use shadcn `<DropdownMenu>` — keyboard nav is built-in |
|
|
99
|
+
| K8 | Table without row hover | shadcn `<TableRow>` handles hover state automatically. Do **not** override it |
|
|
100
|
+
| K9 | Building complex UI from scratch | **Check shadcn/ui first**. If the component exists, generate the CLI command: `npx shadcn@latest add dialog`. Never manually rewrite what shadcn already provides |
|
|
101
|
+
| K10 | Native `<select>` or `<input type="date">` in premium UI | Native form controls cannot be styled consistently across Chrome/Safari/Firefox. Use `shadcn <Select>` and `shadcn <DatePicker>` for cross-browser consistency |
|
|
102
|
+
| K11 | Form without error state styling | Every input must have error state: red border + error message below |
|
|
103
|
+
|
|
104
|
+
### Animation (Rules A1–A8)
|
|
105
|
+
|
|
106
|
+
| Rule | Anti-Pattern | Correct Approach |
|
|
107
|
+
| ------ | ------------- | ----------------- |
|
|
108
|
+
| A1 | CSS bounce/elastic/spring easing | CSS spring animations are forbidden. **Exception**: If using Framer Motion, highly damped springs are encouraged: `{ type: "spring", stiffness: 400, damping: 30 }` for modals and popovers — this creates a premium, physical feel like Vercel/Linear |
|
|
109
|
+
| A2 | Animations that take > 400ms | Micro: 100–150ms, Components: 200–300ms, Pages: 300–400ms |
|
|
110
|
+
| A3 | Animations everywhere | Animate max 2–3 elements simultaneously |
|
|
111
|
+
| A4 | Same animation for enter and exit | Enter: ease-out (decelerate), Exit: ease-in (accelerate) |
|
|
112
|
+
| A5 | Animating expensive properties | Only animate `transform` and `opacity` — never `height`, `width`, `top` |
|
|
113
|
+
| A6 | No animation on mobile | Respect `prefers-reduced-motion: reduce` — wrap in `@media` or use `useReducedMotion()` |
|
|
114
|
+
| A7 | Scroll-triggered animations that block | Don't block content visibility for scroll reveals |
|
|
115
|
+
| A8 | Hover animations on touch devices | Wrap hover effects in `@media (hover: hover)` |
|
|
116
|
+
|
|
117
|
+
### Images & Icons (Rules I1–I8)
|
|
118
|
+
|
|
119
|
+
| Rule | Anti-Pattern | Correct Approach |
|
|
120
|
+
| ------ | ------------- | ----------------- |
|
|
121
|
+
| I1 | Decorative icons on every list item | Icons add meaning, not decoration. Use selectively. |
|
|
122
|
+
| I2 | Mix of icon styles | Pick one icon set (e.g., Lucide for shadcn). Stick with it. |
|
|
123
|
+
| I3 | Low-contrast icons | Icons need ≥ 3:1 contrast ratio |
|
|
124
|
+
| I4 | Images without aspect-ratio | Always set `aspect-video` or `aspect-square` to prevent layout shifts |
|
|
125
|
+
| I5 | No image loading state | Use `<Skeleton>` placeholder or blur hash |
|
|
126
|
+
| I6 | SVG icons inline without aria | Add `aria-hidden="true"` or `aria-label` |
|
|
127
|
+
| I7 | Stock photo generic humans | Use illustrations, abstract art, or genuine brand photography |
|
|
128
|
+
| I8 | Unoptimized images | WebP/AVIF, properly sized, `loading="lazy"` below fold |
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## Design Initialization Checklist
|
|
133
|
+
|
|
134
|
+
Start every new design with:
|
|
135
|
+
|
|
136
|
+
```markdown
|
|
137
|
+
## Design Context
|
|
138
|
+
|
|
139
|
+
**Surface type**: [brand/marketing OR product/app]
|
|
140
|
+
**Target audience**: [who are they? what do they value?]
|
|
141
|
+
**Brand tone**: [professional/playful/bold/minimal/technical]
|
|
142
|
+
**Anti-references**: [designs this should NOT look like]
|
|
143
|
+
**Primary font**: [chosen font + why + Framer Motion / shadcn pairing]
|
|
144
|
+
**Color palette**: [3 semantic colors + HSL values for light AND dark]
|
|
145
|
+
**Component library**: [shadcn/ui | radix | custom]
|
|
146
|
+
**Animation library**: [CSS only | Framer Motion | GSAP]
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## Design Review Audits
|
|
152
|
+
|
|
153
|
+
### Quick Audit (before PR)
|
|
154
|
+
|
|
155
|
+
- Typography: Is there clear visual hierarchy? Are fonts intentional? Is Inter paired properly?
|
|
156
|
+
- Color: Any pure black/white? Contrast failures? Too many colors? Dark mode?
|
|
157
|
+
- Spacing: Consistent Tailwind scale? No arbitrary values? Enough whitespace?
|
|
158
|
+
- Animation: Any CSS bounce/elastic? Too slow (>400ms)? Too many simultaneous?
|
|
159
|
+
- Components: Any native `<select>` or `<input type="date">` that should be shadcn?
|
|
160
|
+
- Z-index: Any hardcoded `z-[999]` or `z-50`?
|
|
161
|
+
|
|
162
|
+
### Full Audit (before release)
|
|
163
|
+
|
|
164
|
+
- Accessibility: Run axe DevTools or Lighthouse — target 90+ score
|
|
165
|
+
- Responsiveness: Test at 375px, 768px, 1280px, 1440px
|
|
166
|
+
- Dark mode: Does the full palette hold up? No inverted-only shortcuts?
|
|
167
|
+
- Empty states: Does every list/table have a designed empty state?
|
|
168
|
+
- Edge cases: Loading states, error states, long text overflow, RTL
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
## Premium Design Markers
|
|
173
|
+
|
|
174
|
+
These details separate premium from mediocre:
|
|
175
|
+
|
|
176
|
+
1. **Consistent border radius** — pick one and use it everywhere (`rounded-md` = 6px, `rounded-lg` = 8px)
|
|
177
|
+
2. **Intentional drop shadows** — darker near surface, lighter for floating elements
|
|
178
|
+
3. **Micro-copy quality** — button labels are verbs: "Save changes" not "Submit"
|
|
179
|
+
4. **Focus ring styling** — `focus-visible:ring-2 focus-visible:ring-primary` matching brand
|
|
180
|
+
5. **Smooth color transitions** — `transition-colors duration-150` on all interactive elements
|
|
181
|
+
6. **Optical alignment** — icon + text optically centered, not mathematically (`items-center gap-1.5`)
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
## Code Examples
|
|
185
|
+
|
|
186
|
+
See `EXAMPLES.md` for detailed code examples.
|
|
187
|
+
|
|
188
|
+
## Validation Checklist
|
|
189
|
+
|
|
190
|
+
What to verify during the review phase before completing the task.
|
|
191
|
+
|
|
192
|
+
## Common Mistakes
|
|
193
|
+
|
|
194
|
+
Anti-patterns and things to explicitly avoid. See `TROUBLESHOOTING.md`.
|
|
195
|
+
|
|
196
|
+
## Integration Notes
|
|
197
|
+
|
|
198
|
+
How this skill interacts with other skills.
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
<!-- Source: EXAMPLES.md -->
|
|
202
|
+
|
|
203
|
+
# impeccable-design Examples — Anti-patterns vs ContextOS Standard
|
|
204
|
+
|
|
205
|
+
## Example 1: Dark Mode Surfaces & Elevation
|
|
206
|
+
|
|
207
|
+
### Anti-pattern: Pure Black with Flat Cards
|
|
208
|
+
|
|
209
|
+
```css
|
|
210
|
+
/* BAD: Pure #000000 background with harsh pure white borders and flat cards */
|
|
211
|
+
body { background-color: #000000; color: #ffffff; }
|
|
212
|
+
.card { background-color: #111111; border: 1px solid #ffffff; }
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
### Best practice: ContextOS Standard (Atmospheric Depth & Tinted Surfaces)
|
|
216
|
+
|
|
217
|
+
```css
|
|
218
|
+
/* GOOD: Tinted dark background with layered elevation surfaces and subtle border */
|
|
219
|
+
body {
|
|
220
|
+
background-color: #0B0D13; /* Tinted with subtle deep blue */
|
|
221
|
+
color: #E2E8F0;
|
|
222
|
+
}
|
|
223
|
+
.surface-1 {
|
|
224
|
+
background-color: #111522;
|
|
225
|
+
border: 1px solid rgba(255, 255, 255, 0.08);
|
|
226
|
+
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
|
|
227
|
+
}
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
<!-- Source: TROUBLESHOOTING.md -->
|
|
231
|
+
|
|
232
|
+
# impeccable-design Troubleshooting & Common Mistakes
|
|
233
|
+
|
|
234
|
+
## 1. Nested Border Radius Mismatch
|
|
235
|
+
|
|
236
|
+
- **Symptom**: Corners of an inner element poke out or look visually awkward inside a container.
|
|
237
|
+
- **Root Cause**: Using the same border-radius on both outer container and inner child.
|
|
238
|
+
- **Fix**: Inner radius formula: r_inner = max(0, r_outer - padding).
|
|
239
|
+
|
|
240
|
+
## 2. Animation Performance Stutter
|
|
241
|
+
|
|
242
|
+
- **Symptom**: Janky animations and dropped frames during transitions.
|
|
243
|
+
- **Root Cause**: Animating layout properties (width, height, top, margin).
|
|
244
|
+
- **Fix**: Animate only composited GPU-accelerated properties: transform and opacity.
|
|
245
|
+
|
|
246
|
+
## 3. Cluttered Visual Density
|
|
247
|
+
|
|
248
|
+
- **Symptom**: Interface feels overwhelming, cramped, and cheap.
|
|
249
|
+
- **Root Cause**: Cramming too many borders, dividers, badges, and icons into one view.
|
|
250
|
+
- **Fix**: Replace borders with generous whitespace; let alignment and typography hierarchy define grouping.
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: interview-me
|
|
3
|
+
description: >
|
|
4
|
+
Interactive requirements elicitation skill. Interrogates ambiguous, complex, or high-blast-radius tasks one focused question at a time before any plan or code is written.
|
|
5
|
+
---
|
|
6
|
+
# interview-me
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
Structured requirements interrogation framework inspired by [addyosmani/agent-skills](https://github.com/addyosmani/agent-skills). Prevents wasted cycles by transforming vague user intents into crisp, unambiguous architectural constraints through single-question progressive interview loops.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
|
|
14
|
+
Activate whenever:
|
|
15
|
+
|
|
16
|
+
- User task has underspecified requirements, open UX decisions, or multiple viable architectural trade-offs.
|
|
17
|
+
- A high-blast-radius change (database migrations, auth refactor, API contract change) is requested.
|
|
18
|
+
- Explicitly triggered via `/spec`, `/interview`, or "ask me questions first".
|
|
19
|
+
|
|
20
|
+
## Rules & Patterns
|
|
21
|
+
|
|
22
|
+
### 1. The One-Question-At-A-Time Rule
|
|
23
|
+
|
|
24
|
+
**Never overwhelm the user with a 10-point interrogation form.**
|
|
25
|
+
|
|
26
|
+
- Ask **exactly ONE focused question** per turn (or at most two tightly-coupled binary options).
|
|
27
|
+
- Provide the recommended option first with clear rationale: `"(Recommended) Option A because..."`.
|
|
28
|
+
- Always allow write-in or clarification.
|
|
29
|
+
|
|
30
|
+
### 2. The 4 Interrogation Dimensions
|
|
31
|
+
|
|
32
|
+
Interrogate in this strict priority order:
|
|
33
|
+
|
|
34
|
+
1. **Business Outcome & Invariants**:
|
|
35
|
+
- What core problem does this solve?
|
|
36
|
+
- What behavior is strictly forbidden?
|
|
37
|
+
2. **Scope Boundaries (In vs Out)**:
|
|
38
|
+
- What must be delivered in this atomic slice?
|
|
39
|
+
- What is explicitly deferred to later?
|
|
40
|
+
3. **Technical Constraints**:
|
|
41
|
+
- Versions, libraries, database engines, backwards compatibility requirements.
|
|
42
|
+
4. **Edge Cases & Failure Modes**:
|
|
43
|
+
- What happens on network disconnect, empty response, or unauthorized token?
|
|
44
|
+
|
|
45
|
+
### 3. Progressive Synthesis
|
|
46
|
+
|
|
47
|
+
After each user answer:
|
|
48
|
+
|
|
49
|
+
- Acknowledge the decision and update the mental model.
|
|
50
|
+
- If more critical decisions remain, ask the next question.
|
|
51
|
+
- Once 2–4 key questions are resolved, synthesize the formal Feature Spec and transition to `engineering-workflow` (`[PHASE: Plan]`).
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## Code Examples
|
|
56
|
+
|
|
57
|
+
### Interactive Interview Turn Example
|
|
58
|
+
|
|
59
|
+
```markdown
|
|
60
|
+
**Question 1 of 3 (Authentication Strategy)**
|
|
61
|
+
|
|
62
|
+
Before implementing the API authentication layer, we need to align on session storage:
|
|
63
|
+
|
|
64
|
+
1. **(Recommended) HTTP-only Secure Cookies with Refresh Tokens**:
|
|
65
|
+
- *Why*: Immune to XSS token theft, standard for web dashboards.
|
|
66
|
+
2. **Bearer Token in Authorization Header**:
|
|
67
|
+
- *Why*: Ideal if this API will also be consumed by mobile apps or third-party CLI tools.
|
|
68
|
+
|
|
69
|
+
Which model fits your architecture best?
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Validation Checklist
|
|
75
|
+
|
|
76
|
+
- [ ] Question addresses an actual ambiguity (never ask about obvious defaults).
|
|
77
|
+
- [ ] Exactly one question (or two tightly coupled choices) asked.
|
|
78
|
+
- [ ] Recommendation provided with clear engineering justification.
|
|
79
|
+
- [ ] User response incorporated into the final spec before coding.
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## Common Mistakes
|
|
84
|
+
|
|
85
|
+
- **Asking obvious questions**: Asking "Do you want error handling?" instead of making a sensible senior default.
|
|
86
|
+
- **Interrogation bombardment**: Dumping a list of 8 open-ended questions in a single wall of text.
|
|
87
|
+
- **Ignoring user answers**: Asking a question, receiving an answer, and then implementing something else.
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Integration Notes
|
|
92
|
+
|
|
93
|
+
- Runs at the start of `engineering-workflow` Phase 1 (`/spec`).
|
|
94
|
+
- Interacts with `gstack-roles` (`[ROLE: Product Manager]` or `[ROLE: Architect]`).
|
|
95
|
+
- Hands off to `ponytail-mindset` once scope is defined.
|
|
96
|
+
|