tribunal-kit 5.8.4 → 6.0.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/.agent/ARCHITECTURE.md +219 -215
- package/.agent/agents/accessibility-reviewer.md +66 -151
- package/.agent/agents/ai-code-reviewer.md +22 -2
- package/.agent/agents/anti-pattern-reviewer.md +99 -0
- package/.agent/agents/api-architect.md +19 -2
- package/.agent/agents/backend-specialist.md +25 -3
- package/.agent/agents/cloud-engineer.md +21 -0
- package/.agent/agents/code-archaeologist.md +20 -3
- package/.agent/agents/complexity-reviewer.md +22 -2
- package/.agent/agents/database-architect.md +24 -3
- package/.agent/agents/db-latency-auditor.md +22 -2
- package/.agent/agents/debugger.md +19 -3
- package/.agent/agents/dependency-reviewer.md +19 -2
- package/.agent/agents/devops-engineer.md +24 -3
- package/.agent/agents/documentation-writer.md +21 -3
- package/.agent/agents/explorer-agent.md +21 -3
- package/.agent/agents/frontend-reviewer.md +19 -3
- package/.agent/agents/frontend-specialist.md +72 -224
- package/.agent/agents/game-developer.md +22 -3
- package/.agent/agents/interaction-reviewer.md +118 -0
- package/.agent/agents/logic-reviewer.md +18 -3
- package/.agent/agents/minimalist-reviewer.md +98 -0
- package/.agent/agents/mobile-developer.md +21 -3
- package/.agent/agents/mobile-reviewer.md +22 -2
- package/.agent/agents/orchestrator.md +19 -3
- package/.agent/agents/penetration-tester.md +22 -3
- package/.agent/agents/performance-optimizer.md +21 -3
- package/.agent/agents/performance-reviewer.md +2 -0
- package/.agent/agents/precedence-reviewer.md +19 -5
- package/.agent/agents/product-manager.md +20 -3
- package/.agent/agents/product-owner.md +22 -1
- package/.agent/agents/product-reviewer.md +98 -0
- package/.agent/agents/project-planner.md +19 -3
- package/.agent/agents/qa-automation-engineer.md +24 -3
- package/.agent/agents/resilience-reviewer.md +21 -2
- package/.agent/agents/schema-reviewer.md +21 -2
- package/.agent/agents/security-auditor.md +7 -1
- package/.agent/agents/seo-specialist.md +18 -3
- package/.agent/agents/sql-reviewer.md +22 -2
- package/.agent/agents/supervisor-agent.md +22 -3
- package/.agent/agents/swarm-worker-registry.md +7 -0
- package/.agent/agents/system-architect.md +19 -0
- package/.agent/agents/test-coverage-reviewer.md +22 -2
- package/.agent/agents/test-engineer.md +21 -2
- package/.agent/agents/throughput-optimizer.md +22 -2
- package/.agent/agents/type-safety-reviewer.md +21 -2
- package/.agent/agents/ui-ux-auditor.md +44 -242
- package/.agent/agents/ui-visual-auditor.md +99 -0
- package/.agent/agents/ux-reviewer.md +104 -0
- package/.agent/agents/visual-reviewer.md +98 -0
- package/.agent/agents/vitals-reviewer.md +23 -2
- package/.agent/history/README.md +53 -0
- package/.agent/history/case-law/cases/template-case.json +19 -0
- package/.agent/history/integrity_manifest.json +131 -33
- package/.agent/history/memory/.memory.idx +1581 -1
- package/.agent/history/memory/MEMORY.md +105 -1
- package/.agent/routing_index.json +272 -690
- package/.agent/rules/GEMINI.md +10 -12
- package/.agent/rules/GEMINI_PLANNER.md +84 -0
- package/.agent/scripts/_utils.js +28 -7
- package/.agent/scripts/case_law_manager.js +2 -0
- package/.agent/scripts/context_broker.js +152 -19
- package/.agent/scripts/guardrail_engine.js +60 -5
- package/.agent/scripts/impact_classifier.js +167 -0
- package/.agent/scripts/integrity_manifest.js +10 -4
- package/.agent/scripts/marathon_harness.js +10 -1
- package/.agent/scripts/minimal_change_engine.js +437 -0
- package/.agent/scripts/pipeline_engine.js +856 -0
- package/.agent/scripts/skill_evolution.js +36 -21
- package/.agent/scripts/socratic_gate_policy.js +60 -0
- package/.agent/scripts/swarm_dispatcher.js +65 -6
- package/.agent/scripts/token_budget_broker.js +52 -0
- package/.agent/scripts/verify_all.js +13 -0
- package/.agent/scripts/visual_audit.js +92 -0
- package/.agent/skills/12-principles-of-animation/SKILL.md +19 -10
- package/.agent/skills/60fps-animation/SKILL.md +19 -10
- package/.agent/skills/accessible-animation/SKILL.md +19 -10
- package/.agent/skills/adapt/SKILL.md +19 -10
- package/.agent/skills/advanced-rag-pipelines/SKILL.md +21 -3
- package/.agent/skills/agent-organizer/SKILL.md +21 -7
- package/.agent/skills/agentic-patterns/SKILL.md +19 -7
- package/.agent/skills/ai-prompt-injection-defense/SKILL.md +21 -7
- package/.agent/skills/animation-on-scroll/SKILL.md +19 -10
- package/.agent/skills/animation-systems/SKILL.md +19 -10
- package/.agent/skills/antfu-conventions/SKILL.md +21 -10
- package/.agent/skills/api-patterns/SKILL.md +21 -7
- package/.agent/skills/api-patterns/scripts/__pycache__/api_validator.cpython-311.pyc +0 -0
- package/.agent/skills/api-security-auditor/SKILL.md +21 -7
- package/.agent/skills/app-builder/SKILL.md +21 -7
- package/.agent/skills/apple-design/SKILL.md +19 -10
- package/.agent/skills/architecture/SKILL.md +21 -7
- package/.agent/skills/audit-and-fix/SKILL.md +19 -10
- package/.agent/skills/authentication-best-practices/SKILL.md +21 -7
- package/.agent/skills/backend-security-expert/SKILL.md +21 -7
- package/.agent/skills/baseline-ui/SKILL.md +19 -10
- package/.agent/skills/bash-linux/SKILL.md +21 -7
- package/.agent/skills/behavioral-modes/SKILL.md +19 -7
- package/.agent/skills/better-colors/SKILL.md +31 -14
- package/.agent/skills/better-ui/SKILL.md +19 -10
- package/.agent/skills/bolder/SKILL.md +19 -10
- package/.agent/skills/brainstorming/SKILL.md +17 -7
- package/.agent/skills/browser-native-ai/SKILL.md +19 -3
- package/.agent/skills/build-primitive/SKILL.md +19 -10
- package/.agent/skills/building-native-ui/SKILL.md +21 -7
- package/.agent/skills/cicd-pro/SKILL.md +21 -10
- package/.agent/skills/clarify/SKILL.md +19 -10
- package/.agent/skills/clean-code/SKILL.md +21 -7
- package/.agent/skills/cloud-architect/SKILL.md +21 -10
- package/.agent/skills/cobejs/SKILL.md +19 -10
- package/.agent/skills/code-review-checklist/SKILL.md +21 -7
- package/.agent/skills/codebase-design/SKILL.md +21 -10
- package/.agent/skills/colorize/SKILL.md +19 -10
- package/.agent/skills/compact-landing/SKILL.md +19 -10
- package/.agent/skills/company-logos/SKILL.md +19 -10
- package/.agent/skills/config-validator/SKILL.md +21 -7
- package/.agent/skills/containerization-pro/SKILL.md +21 -10
- package/.agent/skills/create-design-md/SKILL.md +19 -10
- package/.agent/skills/critique/SKILL.md +19 -10
- package/.agent/skills/csharp-developer/SKILL.md +21 -7
- package/.agent/skills/data-validation-schemas/SKILL.md +21 -7
- package/.agent/skills/database-design/SKILL.md +21 -7
- package/.agent/skills/database-design/scripts/__pycache__/schema_validator.cpython-311.pyc +0 -0
- package/.agent/skills/delight/SKILL.md +19 -10
- package/.agent/skills/deployment-procedures/SKILL.md +21 -7
- package/.agent/skills/design-lab/SKILL.md +21 -10
- package/.agent/skills/devops-engineer/SKILL.md +21 -7
- package/.agent/skills/devops-incident-responder/SKILL.md +21 -7
- package/.agent/skills/diagnosing-bugs/SKILL.md +21 -10
- package/.agent/skills/distill/SKILL.md +19 -10
- package/.agent/skills/documentation-templates/SKILL.md +21 -7
- package/.agent/skills/domain-modeling/SKILL.md +21 -10
- package/.agent/skills/edge-computing/SKILL.md +21 -7
- package/.agent/skills/emil-design-eng/SKILL.md +19 -10
- package/.agent/skills/error-resilience/SKILL.md +21 -7
- package/.agent/skills/extract-design-system/SKILL.md +21 -7
- package/.agent/skills/fabel-protocol/SKILL.md +19 -2
- package/.agent/skills/fixing-accessibility/SKILL.md +25 -14
- package/.agent/skills/fixing-metadata/SKILL.md +19 -10
- package/.agent/skills/fixing-motion-performance/SKILL.md +19 -10
- package/.agent/skills/framer-motion-expert/SKILL.md +19 -6
- package/.agent/skills/frontend-design/SKILL.md +66 -204
- package/.agent/skills/frontend-design/scripts/__pycache__/accessibility_checker.cpython-311.pyc +0 -0
- package/.agent/skills/frontend-design/scripts/__pycache__/ux_audit.cpython-311.pyc +0 -0
- package/.agent/skills/frontend-security-expert/SKILL.md +21 -7
- package/.agent/skills/game-design-expert/SKILL.md +21 -7
- package/.agent/skills/game-engineering-expert/SKILL.md +21 -7
- package/.agent/skills/generative-ui-expert/SKILL.md +19 -3
- package/.agent/skills/geo-fundamentals/SKILL.md +21 -7
- package/.agent/skills/geo-fundamentals/scripts/__pycache__/geo_checker.cpython-311.pyc +0 -0
- package/.agent/skills/git-pro/SKILL.md +21 -10
- package/.agent/skills/github-operations/SKILL.md +21 -7
- package/.agent/skills/gpt-taste/SKILL.md +19 -10
- package/.agent/skills/gsap-core/SKILL.md +21 -4
- package/.agent/skills/gsap-frameworks/SKILL.md +21 -4
- package/.agent/skills/gsap-performance/SKILL.md +20 -5
- package/.agent/skills/gsap-plugins/SKILL.md +20 -5
- package/.agent/skills/gsap-react/SKILL.md +20 -5
- package/.agent/skills/gsap-scrolltrigger/SKILL.md +21 -4
- package/.agent/skills/gsap-timeline/SKILL.md +20 -5
- package/.agent/skills/gsap-utils/SKILL.md +20 -5
- package/.agent/skills/harden/SKILL.md +19 -10
- package/.agent/skills/harness-protocol/SKILL.md +20 -4
- package/.agent/skills/i18n-localization/SKILL.md +21 -7
- package/.agent/skills/i18n-localization/scripts/__pycache__/i18n_checker.cpython-311.pyc +0 -0
- package/.agent/skills/impeccable/SKILL.md +21 -10
- package/.agent/skills/improve-codebase-architecture/SKILL.md +21 -10
- package/.agent/skills/improve-ui/SKILL.md +19 -10
- package/.agent/skills/intelligent-routing/SKILL.md +19 -7
- package/.agent/skills/knowledge-graph/SKILL.md +20 -4
- package/.agent/skills/landing-page/SKILL.md +20 -10
- package/.agent/skills/lint-and-validate/SKILL.md +21 -7
- package/.agent/skills/lint-and-validate/scripts/__pycache__/lint_runner.cpython-311.pyc +0 -0
- package/.agent/skills/lint-and-validate/scripts/__pycache__/type_coverage.cpython-311.pyc +0 -0
- package/.agent/skills/llm-engineering/SKILL.md +21 -7
- package/.agent/skills/local-first/SKILL.md +21 -7
- package/.agent/skills/local-first-architecture/SKILL.md +19 -10
- package/.agent/skills/lottie-animation/SKILL.md +19 -10
- package/.agent/skills/marquee-loop/SKILL.md +19 -10
- package/.agent/skills/masked-reveal/SKILL.md +19 -10
- package/.agent/skills/mcp-builder/SKILL.md +21 -7
- package/.agent/skills/micro-interaction/SKILL.md +19 -10
- package/.agent/skills/mobile-design/SKILL.md +21 -6
- package/.agent/skills/mobile-design/scripts/__pycache__/mobile_audit.cpython-311.pyc +0 -0
- package/.agent/skills/monorepo-management/SKILL.md +21 -7
- package/.agent/skills/morphing-icons/SKILL.md +19 -10
- package/.agent/skills/motion-engineering/SKILL.md +86 -171
- package/.agent/skills/nextjs-react-expert/SKILL.md +19 -7
- package/.agent/skills/nextjs-react-expert/scripts/__pycache__/convert_rules.cpython-311.pyc +0 -0
- package/.agent/skills/nextjs-react-expert/scripts/__pycache__/react_performance_checker.cpython-311.pyc +0 -0
- package/.agent/skills/nodejs-best-practices/SKILL.md +21 -7
- package/.agent/skills/observability/SKILL.md +21 -7
- package/.agent/skills/page-transition-animation/SKILL.md +19 -10
- package/.agent/skills/parallel-agents/SKILL.md +23 -7
- package/.agent/skills/performance-profiling/SKILL.md +21 -7
- package/.agent/skills/performance-profiling/scripts/__pycache__/lighthouse_audit.cpython-311.pyc +0 -0
- package/.agent/skills/plan-writing/SKILL.md +21 -7
- package/.agent/skills/platform-engineer/SKILL.md +21 -7
- package/.agent/skills/playwright-best-practices/SKILL.md +21 -7
- package/.agent/skills/polish/SKILL.md +19 -10
- package/.agent/skills/powershell-windows/SKILL.md +21 -7
- package/.agent/skills/pricing-page/SKILL.md +19 -10
- package/.agent/skills/product-aware-heuristics/SKILL.md +358 -0
- package/.agent/skills/progressive-blur/SKILL.md +19 -10
- package/.agent/skills/project-idioms/SKILL.md +20 -8
- package/.agent/skills/python-patterns/SKILL.md +21 -7
- package/.agent/skills/python-pro/SKILL.md +21 -6
- package/.agent/skills/quieter/SKILL.md +19 -10
- package/.agent/skills/react-doctor/SKILL.md +19 -10
- package/.agent/skills/react-specialist/SKILL.md +19 -6
- package/.agent/skills/readme-builder/SKILL.md +21 -7
- package/.agent/skills/realtime-patterns/SKILL.md +21 -7
- package/.agent/skills/red-team-tactics/SKILL.md +21 -7
- package/.agent/skills/redesign-skill/SKILL.md +19 -10
- package/.agent/skills/review-animations/SKILL.md +21 -10
- package/.agent/skills/rust-pro/SKILL.md +21 -7
- package/.agent/skills/seo-fundamentals/SKILL.md +21 -7
- package/.agent/skills/seo-fundamentals/scripts/__pycache__/seo_checker.cpython-311.pyc +0 -0
- package/.agent/skills/server-management/SKILL.md +21 -7
- package/.agent/skills/shadcn-ui-expert/SKILL.md +21 -7
- package/.agent/skills/shape/SKILL.md +19 -10
- package/.agent/skills/skill-creator/SKILL.md +21 -7
- package/.agent/skills/soft-skill/SKILL.md +19 -10
- package/.agent/skills/sounds-on-the-web/SKILL.md +19 -10
- package/.agent/skills/sql-pro/SKILL.md +21 -7
- package/.agent/skills/supabase-postgres-best-practices/SKILL.md +21 -7
- package/.agent/skills/svg-animation/SKILL.md +19 -10
- package/.agent/skills/swiftui-expert/SKILL.md +21 -7
- package/.agent/skills/swiss-design/SKILL.md +19 -10
- package/.agent/skills/system-design-pro/SKILL.md +21 -9
- package/.agent/skills/systematic-debugging/SKILL.md +21 -7
- package/.agent/skills/tailwind-patterns/SKILL.md +21 -7
- package/.agent/skills/taste-skill/SKILL.md +19 -10
- package/.agent/skills/tdd-workflow/SKILL.md +21 -10
- package/.agent/skills/test-result-analyzer/SKILL.md +18 -6
- package/.agent/skills/testing-patterns/SKILL.md +21 -7
- package/.agent/skills/testing-patterns/scripts/__pycache__/test_runner.cpython-311.pyc +0 -0
- package/.agent/skills/thermo-nuclear-code-quality-review/SKILL.md +21 -10
- package/.agent/skills/thinking-protocol/SKILL.md +20 -8
- package/.agent/skills/to-spring-or-not-to-spring/SKILL.md +19 -10
- package/.agent/skills/transitions-dev/SKILL.md +19 -10
- package/.agent/skills/trend-researcher/SKILL.md +17 -6
- package/.agent/skills/typescript-advanced/SKILL.md +21 -7
- package/.agent/skills/typeset/SKILL.md +19 -10
- package/.agent/skills/ui-reasoning-engine/SKILL.md +154 -0
- package/.agent/skills/ui-skill-packs/SKILL.md +77 -0
- package/.agent/skills/ui-skills-root/SKILL.md +21 -9
- package/.agent/skills/ui-ux-pro-max/SKILL.md +62 -583
- package/.agent/skills/ui-ux-researcher/SKILL.md +17 -6
- package/.agent/skills/vue-expert/SKILL.md +19 -6
- package/.agent/skills/vulnerability-scanner/SKILL.md +21 -7
- package/.agent/skills/vulnerability-scanner/scripts/__pycache__/security_scan.cpython-311.pyc +0 -0
- package/.agent/skills/web-accessibility-auditor/SKILL.md +21 -7
- package/.agent/skills/web-design-guidelines/SKILL.md +32 -206
- package/.agent/skills/web-quality-audit/SKILL.md +19 -10
- package/.agent/skills/webapp-testing/SKILL.md +21 -7
- package/.agent/skills/webapp-testing/scripts/__pycache__/playwright_runner.cpython-311.pyc +0 -0
- package/.agent/skills/webgpu-performance/SKILL.md +19 -3
- package/.agent/skills/whimsy-injector/SKILL.md +20 -10
- package/.agent/skills/workflow-optimizer/SKILL.md +16 -6
- package/.agent/templates/DESIGN.md +292 -0
- package/.agent/templates/design-tokens.json +137 -0
- package/.agent/workflows/acf.md +13 -6
- package/.agent/workflows/api-tester.md +15 -8
- package/.agent/workflows/audit.md +19 -8
- package/.agent/workflows/brainstorm.md +14 -9
- package/.agent/workflows/changelog.md +14 -8
- package/.agent/workflows/create.md +16 -8
- package/.agent/workflows/debug.md +15 -10
- package/.agent/workflows/deploy.md +16 -8
- package/.agent/workflows/enhance.md +15 -10
- package/.agent/workflows/fix.md +15 -8
- package/.agent/workflows/generate.md +17 -11
- package/.agent/workflows/marathon.md +15 -8
- package/.agent/workflows/migrate.md +16 -8
- package/.agent/workflows/minimal.md +94 -0
- package/.agent/workflows/orchestrate.md +15 -8
- package/.agent/workflows/performance-benchmarker.md +15 -8
- package/.agent/workflows/pipeline.md +155 -0
- package/.agent/workflows/plan.md +14 -10
- package/.agent/workflows/preview.md +14 -7
- package/.agent/workflows/refactor.md +16 -8
- package/.agent/workflows/review-ai.md +15 -7
- package/.agent/workflows/review.md +15 -7
- package/.agent/workflows/session.md +14 -7
- package/.agent/workflows/status.md +13 -7
- package/.agent/workflows/strengthen-skills.md +15 -6
- package/.agent/workflows/super-prompt.md +19 -10
- package/.agent/workflows/swarm.md +15 -7
- package/.agent/workflows/test.md +15 -8
- package/.agent/workflows/tribunal-backend.md +16 -9
- package/.agent/workflows/tribunal-database.md +15 -8
- package/.agent/workflows/tribunal-frontend.md +26 -11
- package/.agent/workflows/tribunal-full.md +29 -14
- package/.agent/workflows/tribunal-mobile.md +15 -8
- package/.agent/workflows/tribunal-performance.md +15 -8
- package/.agent/workflows/tribunal-speed.md +16 -9
- package/.agent/workflows/tribunal-ui.md +82 -0
- package/.agent/workflows/ui-ux-pro-max.md +51 -107
- package/CONTRIBUTING.md +2 -2
- package/README.md +5 -5
- package/bin/mcp-server.js +126 -76
- package/bin/wrapper.js +67 -31
- package/dist/cli.js +39 -1
- package/dist/commands/compile.js +7 -0
- package/dist/commands/context.js +8 -3
- package/dist/commands/graph.js +8 -2
- package/dist/commands/init.js +37 -2
- package/dist/commands/memory.js +119 -68
- package/dist/commands/minimal.js +71 -0
- package/dist/commands/native.js +228 -0
- package/dist/commands/optimize.js +15 -5
- package/dist/commands/validate.js +67 -0
- package/dist/esm/index.mjs +26 -32
- package/dist/mcp/server.js +4 -138
- package/dist/utils/fs.js +10 -4
- package/dist/utils/helpers.js +10 -1
- package/dist/utils/version.js +9 -2
- package/mcp_config.json +10 -1
- package/package.json +19 -15
- package/scripts/benchmark.js +58 -0
- package/scripts/sync-version.js +129 -76
- package/scripts/visual_audit.js +126 -0
|
@@ -1,15 +1,29 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: playwright-best-practices
|
|
3
3
|
description: Playwright End-to-End (E2E) testing mastery. Resilient selectors, auto-waiting mechanisms, parallel test execution, mocking network requests, fixture management, and cross-browser CI configurations. Use when configuring, deploying, or writing E2E web tests.
|
|
4
|
-
|
|
5
|
-
version:
|
|
6
|
-
last-updated: 2026-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
tools: Read, Grep, Glob, Bash, Edit, Write
|
|
5
|
+
version: 3.0.0
|
|
6
|
+
last-updated: 2026-07-30
|
|
7
|
+
skills:
|
|
8
|
+
- testing-patterns
|
|
9
|
+
- webapp-testing
|
|
10
|
+
- qa-automation-engineer
|
|
11
|
+
scripts-binding:
|
|
12
|
+
- .agent/scripts/test_runner.js
|
|
13
|
+
- .agent/scripts/verify_all.js
|
|
11
14
|
---
|
|
12
15
|
|
|
16
|
+
# Playwright E2E — Bulletproof Testing Mastery
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Mandatory Pre-Flight Context Inspection
|
|
21
|
+
|
|
22
|
+
Before writing Playwright E2E tests or test fixtures, you MUST inspect:
|
|
23
|
+
1. Auto-Waiting & Resilient Selectors (Section 26) → Use `getByRole()`, `getByLabel()` or `getByTestId()`; ban `page.waitForTimeout()` and CSS layout paths
|
|
24
|
+
2. Complete Test Isolation Rule (Section 53) → Isolate every test in fresh browser context; ban cascading tests dependent on previous test outcomes
|
|
25
|
+
3. External Network Interception (Section 86) → Intercept 3rd party external APIs (`page.route()`) to eliminate flaky network failures in CI
|
|
26
|
+
|
|
13
27
|
## Hallucination Traps (Read First)
|
|
14
28
|
|
|
15
29
|
- ❌ Using `page.waitForTimeout(3000)` for synchronization -> ✅ Use `page.waitForSelector()`, `expect(locator).toBeVisible()`, or auto-waiting locators
|
|
@@ -1,20 +1,29 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: polish
|
|
3
3
|
description: Final production quality pass for spacing, alignment, visual rhythm, dark mode consistency, and edge states. Use before shipping or merging a feature to ensure 100% UI fidelity.
|
|
4
|
-
version:
|
|
5
|
-
last-updated: 2026-07-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
4
|
+
version: 3.0.0
|
|
5
|
+
last-updated: 2026-07-30
|
|
6
|
+
skills:
|
|
7
|
+
- better-ui
|
|
8
|
+
- harden
|
|
9
|
+
- baseline-ui
|
|
10
|
+
tools: Read, Grep, Glob, Bash, Edit, Write
|
|
11
|
+
scripts-binding:
|
|
12
|
+
- .agent/scripts/lint_runner.js
|
|
13
|
+
- .agent/scripts/verify_all.js
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
# Polish — Final Pre-Ship UI Quality Pass
|
|
17
17
|
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Mandatory Pre-Flight Context Inspection
|
|
21
|
+
|
|
22
|
+
Before running a pre-ship quality pass, you MUST inspect:
|
|
23
|
+
1. Target component / view state → Test across light and dark theme modes
|
|
24
|
+
2. The 10-Point Polish Checklist (Section 22) → Audit 8px grid alignment, tabular numbers, focus rings, press feedback, and CLS loading skeletons
|
|
25
|
+
3. Edge case string truncation → Test long user input strings with `truncate` or `line-clamp` boundaries
|
|
26
|
+
|
|
18
27
|
The comprehensive pre-ship inspection checklist to verify that code meets top-tier design-engineering standards.
|
|
19
28
|
|
|
20
29
|
---
|
|
@@ -1,19 +1,33 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: powershell-windows
|
|
3
3
|
description: PowerShell and Windows environment mastery. Object-oriented piping, strict error handling (ErrorActionPreference), PSProviders, active directory querying, credential management, and execution policies. Use when automating Azure, Windows environments, or writing .ps1 scripts.
|
|
4
|
-
|
|
5
|
-
version:
|
|
6
|
-
last-updated: 2026-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
tools: Read, Grep, Glob, Bash, Edit, Write
|
|
5
|
+
version: 3.0.0
|
|
6
|
+
last-updated: 2026-07-30
|
|
7
|
+
skills:
|
|
8
|
+
- server-management
|
|
9
|
+
- devops-engineer
|
|
10
|
+
- bash-linux
|
|
11
|
+
scripts-binding:
|
|
12
|
+
- .agent/scripts/lint_runner.js
|
|
13
|
+
- .agent/scripts/verify_all.js
|
|
11
14
|
---
|
|
12
15
|
|
|
13
16
|
# PowerShell — Windows Automation Mastery
|
|
14
17
|
|
|
15
18
|
---
|
|
16
19
|
|
|
20
|
+
## Mandatory Pre-Flight Context Inspection
|
|
21
|
+
|
|
22
|
+
Before writing PowerShell `.ps1` scripts or Windows automation commands, you MUST inspect:
|
|
23
|
+
1. Object Pipeline vs String Parsing Rule (Section 23) → Operate directly on .NET object properties (`Get-Process | Stop-Process`); ban string splitting/parsing
|
|
24
|
+
2. Mandatory Script Strict Mode Header (Section 43) → Always declare `$ErrorActionPreference = "Stop"` and `Set-StrictMode -Version Latest` at top of automation scripts
|
|
25
|
+
3. Process-Scoped Execution Policy Bypass (Section 68) → Use process-level policy override (`powershell.exe -ExecutionPolicy Bypass -File ...`); ban system-wide `Set-ExecutionPolicy Unrestricted`
|
|
26
|
+
|
|
27
|
+
# PowerShell — Windows Automation Mastery
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
17
31
|
## 1. The Object Pipeline
|
|
18
32
|
|
|
19
33
|
Unlike Bash where everything is strings (requiring `awk`/`grep`), PowerShell passes structured .NET class instances between commands.
|
|
@@ -1,20 +1,29 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: pricing-page
|
|
3
3
|
description: SaaS pricing table architecture, billing cycle toggles (Monthly/Annual), feature comparison matrices, tier highlighting, and conversion optimization.
|
|
4
|
-
version:
|
|
5
|
-
last-updated: 2026-07-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
4
|
+
version: 3.0.0
|
|
5
|
+
last-updated: 2026-07-30
|
|
6
|
+
skills:
|
|
7
|
+
- landing-page
|
|
8
|
+
- compact-landing
|
|
9
|
+
- baseline-ui
|
|
10
|
+
tools: Read, Grep, Glob, Bash, Edit, Write
|
|
11
|
+
scripts-binding:
|
|
12
|
+
- .agent/scripts/lint_runner.js
|
|
13
|
+
- .agent/scripts/verify_all.js
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
# Pricing Page — SaaS Pricing Architecture & Comparison Grids
|
|
17
17
|
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Mandatory Pre-Flight Context Inspection
|
|
21
|
+
|
|
22
|
+
Before engineering SaaS pricing pages or comparison tables, you MUST inspect:
|
|
23
|
+
1. Tabular Price Numbers (Section 27) → Apply `font-variant-numeric: tabular-nums` to price digits to prevent layout jittering during Monthly/Annual toggles
|
|
24
|
+
2. Featured Tier Distinction (Section 31) → Highlight the "Most Popular" plan with distinct accent borders, badge pill, and solid primary CTA
|
|
25
|
+
3. Discount Badge (Section 26) → Display explicit "Save X%" discount badge alongside the Annual billing toggle option
|
|
26
|
+
|
|
18
27
|
Architect high-converting SaaS pricing tables with clear billing toggles, tier differentiation, and feature comparison matrices.
|
|
19
28
|
|
|
20
29
|
---
|
|
@@ -0,0 +1,358 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: product-aware-heuristics
|
|
3
|
+
description: Defines specific visual and structural design heuristics and React/Tailwind templates tailored to different product types (SaaS, developer tools, AI interfaces, landing pages, fintech, e-commerce, and editorial).
|
|
4
|
+
version: 3.0.0
|
|
5
|
+
last-updated: 2026-07-30
|
|
6
|
+
skills:
|
|
7
|
+
- ui-reasoning-engine
|
|
8
|
+
- interface-design
|
|
9
|
+
- baseline-ui
|
|
10
|
+
- better-ui
|
|
11
|
+
tools: Read, Grep, Glob, Bash, Edit, Write
|
|
12
|
+
scripts-binding:
|
|
13
|
+
- .agent/scripts/lint_runner.js
|
|
14
|
+
- .agent/scripts/verify_all.js
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# Product-Aware Heuristics — Category-Specific Design Systems
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Mandatory Pre-Flight Context Inspection
|
|
22
|
+
|
|
23
|
+
Before selecting layout templates or component heuristics, you MUST inspect:
|
|
24
|
+
1. `DESIGN.md` / `package.json` → Identify product domain (SaaS, DevTool, AI Chat, Landing Page, Fintech)
|
|
25
|
+
2. Tabular Data & Monospace Rules → Enforce `font-variant-numeric: tabular-nums` for financial data and `JetBrains Mono` for developer tools
|
|
26
|
+
3. Touch & Pointer Bounds → Ensure interactive buttons and checkboxes meet 44x44px touch target guidelines
|
|
27
|
+
|
|
28
|
+
An interface must match its domain context. A developer tool should not look like a luxury editorial website. This skill defines the heuristics, layout requirements, and drop-in layout templates for different product categories.
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## 1. SaaS & Enterprise Applications
|
|
33
|
+
* **Goal:** Operational efficiency, scannability, multi-record management, and action density.
|
|
34
|
+
* **Visual Tone:** Swiss Precision or Soft Minimal. Clear borders, muted tinted grays, and highly legible typography.
|
|
35
|
+
* **Heuristics:**
|
|
36
|
+
* **Data Density:** Prefer structured tables and compact list views. Spacing should be tight but consistent (`8px` to `16px` grid).
|
|
37
|
+
* **Keyboard Workflows:** All common actions must have keyboard shortcuts. Tab focus paths must be linear and predictable.
|
|
38
|
+
* **Filters & Actions:** Provide global filters, batch action bars (appearing only when records are selected), and quick search boundaries.
|
|
39
|
+
* **Responsive:** Grid layouts reflow to linear scroll cards on smaller screens; large tabular displays must support horizontal scrolling with sticky primary columns.
|
|
40
|
+
|
|
41
|
+
### SaaS Code Template (Dense Dynamic Table with Sidebar Detail Panel)
|
|
42
|
+
```tsx
|
|
43
|
+
import React, { useState } from 'react';
|
|
44
|
+
import { Filter, MoreHorizontal, FileText, Check, ChevronRight, X } from 'lucide-react';
|
|
45
|
+
|
|
46
|
+
export function SaaSDataTable({ records }) {
|
|
47
|
+
const [selectedIds, setSelectedIds] = useState<string[]>([]);
|
|
48
|
+
const [activeDetailId, setActiveDetailId] = useState<string | null>(null);
|
|
49
|
+
|
|
50
|
+
const activeRecord = records.find(r => r.id === activeDetailId);
|
|
51
|
+
|
|
52
|
+
return (
|
|
53
|
+
<div className="w-full flex gap-4 bg-[var(--bg-base)] p-4 rounded-[var(--radius-lg)]">
|
|
54
|
+
{/* Table Main Area */}
|
|
55
|
+
<div className="flex-1 bg-[var(--bg-surface)] border border-[var(--border-subtle)] rounded-[var(--radius-md)] overflow-hidden shadow-[var(--shadow-sm)]">
|
|
56
|
+
{/* Table Toolbar */}
|
|
57
|
+
<div className="flex items-center justify-between px-4 py-3 border-b border-[var(--border-subtle)] bg-[var(--bg-base)]">
|
|
58
|
+
<div className="flex items-center gap-2">
|
|
59
|
+
<button className="flex items-center gap-1.5 px-3 py-1.5 bg-white dark:bg-[var(--bg-surface-raised)] border border-[var(--border-subtle)] rounded-[var(--radius-sm)] text-[var(--text-secondary)] hover:text-[var(--text-primary)] transition-all text-xs font-medium">
|
|
60
|
+
<Filter size={14} /> Filter
|
|
61
|
+
</button>
|
|
62
|
+
</div>
|
|
63
|
+
{selectedIds.length > 0 && (
|
|
64
|
+
<div className="flex items-center gap-2 animate-fade-in">
|
|
65
|
+
<span className="text-xs text-[var(--text-secondary)]">{selectedIds.length} selected</span>
|
|
66
|
+
<button className="px-3 py-1.5 bg-[var(--color-error)] text-white text-xs font-semibold rounded-[var(--radius-sm)] hover:opacity-90 transition-all">
|
|
67
|
+
Delete Selected
|
|
68
|
+
</button>
|
|
69
|
+
</div>
|
|
70
|
+
)}
|
|
71
|
+
</div>
|
|
72
|
+
|
|
73
|
+
{/* Table container */}
|
|
74
|
+
<div className="overflow-x-auto">
|
|
75
|
+
<table className="w-full border-collapse text-left text-xs">
|
|
76
|
+
<thead>
|
|
77
|
+
<tr className="border-b border-[var(--border-subtle)] bg-[var(--bg-base)] text-[var(--text-muted)] uppercase tracking-wider font-semibold">
|
|
78
|
+
<th className="p-3 w-8">
|
|
79
|
+
<input
|
|
80
|
+
type="checkbox"
|
|
81
|
+
onChange={(e) => setSelectedIds(e.target.checked ? records.map(r => r.id) : [])}
|
|
82
|
+
checked={selectedIds.length === records.length}
|
|
83
|
+
className="rounded border-[var(--border-subtle)]"
|
|
84
|
+
/>
|
|
85
|
+
</th>
|
|
86
|
+
<th className="p-3 font-semibold">Name</th>
|
|
87
|
+
<th className="p-3 font-semibold">Status</th>
|
|
88
|
+
<th className="p-3 font-semibold">Usage</th>
|
|
89
|
+
<th className="p-3"></th>
|
|
90
|
+
</tr>
|
|
91
|
+
</thead>
|
|
92
|
+
<tbody className="divide-y divide-[var(--border-subtle)]">
|
|
93
|
+
{records.map((record) => (
|
|
94
|
+
<tr
|
|
95
|
+
key={record.id}
|
|
96
|
+
onClick={() => setActiveDetailId(record.id)}
|
|
97
|
+
className={`hover:bg-[var(--bg-base)]/50 transition-colors group cursor-pointer ${activeDetailId === record.id ? 'bg-[var(--bg-base)]' : ''}`}
|
|
98
|
+
>
|
|
99
|
+
<td className="p-3" onClick={(e) => e.stopPropagation()}>
|
|
100
|
+
<input
|
|
101
|
+
type="checkbox"
|
|
102
|
+
checked={selectedIds.includes(record.id)}
|
|
103
|
+
onChange={(e) => setSelectedIds(prev => e.target.checked ? [...prev, record.id] : prev.filter(id => id !== record.id))}
|
|
104
|
+
className="rounded border-[var(--border-subtle)]"
|
|
105
|
+
/>
|
|
106
|
+
</td>
|
|
107
|
+
<td className="p-3 font-medium text-[var(--text-primary)]">{record.name}</td>
|
|
108
|
+
<td className="p-3">
|
|
109
|
+
<span className="inline-flex items-center gap-1 px-2 py-0.5 rounded-full text-[10px] font-semibold bg-emerald-500/10 text-emerald-500">
|
|
110
|
+
<span className="w-1.5 h-1.5 rounded-full bg-emerald-500" /> Active
|
|
111
|
+
</span>
|
|
112
|
+
</td>
|
|
113
|
+
<td className="p-3 font-mono text-[var(--text-secondary)]">{record.usage} GB</td>
|
|
114
|
+
<td className="p-3 text-right" onClick={(e) => e.stopPropagation()}>
|
|
115
|
+
<button className="p-1 rounded hover:bg-[var(--bg-surface-raised)] text-[var(--text-muted)] group-hover:text-[var(--text-primary)] transition-all">
|
|
116
|
+
<MoreHorizontal size={14} />
|
|
117
|
+
</button>
|
|
118
|
+
</td>
|
|
119
|
+
</tr>
|
|
120
|
+
))}
|
|
121
|
+
</tbody>
|
|
122
|
+
</table>
|
|
123
|
+
</div>
|
|
124
|
+
</div>
|
|
125
|
+
|
|
126
|
+
{/* Detail Slideout Panel */}
|
|
127
|
+
{activeRecord && (
|
|
128
|
+
<div className="w-[300px] border border-[var(--border-subtle)] bg-[var(--bg-surface)] p-4 rounded-[var(--radius-md)] shadow-[var(--shadow-lg)] flex flex-col justify-between animate-slide-in">
|
|
129
|
+
<div>
|
|
130
|
+
<div className="flex justify-between items-center mb-4">
|
|
131
|
+
<h3 className="text-xs font-bold uppercase tracking-wider text-[var(--text-primary)]">Record details</h3>
|
|
132
|
+
<button onClick={() => setActiveDetailId(null)} className="p-1 text-[var(--text-secondary)] hover:bg-[var(--bg-base)] rounded">
|
|
133
|
+
<X size={14} />
|
|
134
|
+
</button>
|
|
135
|
+
</div>
|
|
136
|
+
<div className="space-y-3">
|
|
137
|
+
<div>
|
|
138
|
+
<span className="text-[10px] text-[var(--text-muted)] block">Name</span>
|
|
139
|
+
<span className="text-xs font-semibold text-[var(--text-primary)]">{activeRecord.name}</span>
|
|
140
|
+
</div>
|
|
141
|
+
<div>
|
|
142
|
+
<span className="text-[10px] text-[var(--text-muted)] block">Usage Metrics</span>
|
|
143
|
+
<span className="text-xs font-mono text-[var(--text-secondary)]">{activeRecord.usage} Gigabytes</span>
|
|
144
|
+
</div>
|
|
145
|
+
</div>
|
|
146
|
+
</div>
|
|
147
|
+
<button className="w-full mt-6 py-2 bg-[var(--color-primary)] text-white hover:bg-[var(--color-primary-hover)] rounded text-xs font-semibold transition-all">
|
|
148
|
+
Open full report
|
|
149
|
+
</button>
|
|
150
|
+
</div>
|
|
151
|
+
)}
|
|
152
|
+
</div>
|
|
153
|
+
);
|
|
154
|
+
}
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## 2. Developer Tools
|
|
160
|
+
* **Goal:** Technical clarity, command-driven inputs, diagnostics readability, and low cognitive overhead.
|
|
161
|
+
* **Visual Tone:** Swiss Precision or Neon Cyberpunk. Dark backgrounds, high contrast, monospace font blocks, and flat borders.
|
|
162
|
+
* **Heuristics:**
|
|
163
|
+
* **Monospace Integration:** Log listings, code snippets, status outputs, and parameters must be wrapped in `<code/>` or `<pre/>` containers using `JetBrains Mono` or equivalent.
|
|
164
|
+
* **Interactive Consoles:** Integrate quick-copy buttons for snippets. Terminal emulator areas should have responsive layouts that prevent truncation of long lines.
|
|
165
|
+
* **Status Indicators:** Use explicit semantic color markers (e.g., solid red circle for critical error, pulsing green for active daemon) accompanied by text labels, never color alone.
|
|
166
|
+
* **Density:** Extreme. Maximize visible data on-screen; minimize decorative card wrapping and whitespace.
|
|
167
|
+
|
|
168
|
+
### Developer Tool Code Template (Terminal log stream)
|
|
169
|
+
```tsx
|
|
170
|
+
import React, { useState } from 'react';
|
|
171
|
+
import { Copy, Terminal, Check } from 'lucide-react';
|
|
172
|
+
|
|
173
|
+
export function DevConsole({ logs }) {
|
|
174
|
+
const [copied, setCopied] = useState(false);
|
|
175
|
+
const command = 'npm run dev --port 8080';
|
|
176
|
+
|
|
177
|
+
const handleCopy = () => {
|
|
178
|
+
navigator.clipboard.writeText(command);
|
|
179
|
+
setCopied(true);
|
|
180
|
+
setTimeout(() => setCopied(false), 2000);
|
|
181
|
+
};
|
|
182
|
+
|
|
183
|
+
return (
|
|
184
|
+
<div className="w-full bg-[var(--bg-base)] dark:bg-black border border-[var(--border-default)] rounded-[var(--radius-sm)] overflow-hidden font-mono shadow-[var(--shadow-sm)]">
|
|
185
|
+
{/* Console Header */}
|
|
186
|
+
<div className="flex items-center justify-between px-3 py-2 bg-[var(--bg-surface)] border-b border-[var(--border-subtle)]">
|
|
187
|
+
<div className="flex items-center gap-2 text-xs text-[var(--text-secondary)]">
|
|
188
|
+
<Terminal size={14} /> console.log
|
|
189
|
+
</div>
|
|
190
|
+
<button
|
|
191
|
+
onClick={handleCopy}
|
|
192
|
+
className="flex items-center gap-1 px-2 py-1 text-[10px] bg-[var(--bg-surface-raised)] border border-[var(--border-subtle)] rounded text-[var(--text-secondary)] hover:text-[var(--text-primary)] transition-all"
|
|
193
|
+
>
|
|
194
|
+
{copied ? <Check size={12} className="text-emerald-500" /> : <Copy size={12} />}
|
|
195
|
+
{copied ? 'Copied' : 'Copy'}
|
|
196
|
+
</button>
|
|
197
|
+
</div>
|
|
198
|
+
|
|
199
|
+
{/* Console Body */}
|
|
200
|
+
<div className="p-3 text-xs text-slate-300 space-y-1.5 overflow-y-auto max-h-[300px] leading-relaxed">
|
|
201
|
+
<div className="text-[var(--text-muted)]">$ {command}</div>
|
|
202
|
+
{logs.map((log, index) => (
|
|
203
|
+
<div key={index} className="flex gap-2 items-start">
|
|
204
|
+
<span className="text-[var(--text-muted)] select-none">[{log.time}]</span>
|
|
205
|
+
<span className={log.type === 'error' ? 'text-rose-400' : log.type === 'warn' ? 'text-amber-400' : 'text-emerald-400'}>
|
|
206
|
+
{log.type.toUpperCase()}:
|
|
207
|
+
</span>
|
|
208
|
+
<span className="text-slate-100">{log.message}</span>
|
|
209
|
+
</div>
|
|
210
|
+
))}
|
|
211
|
+
</div>
|
|
212
|
+
</div>
|
|
213
|
+
);
|
|
214
|
+
}
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## 3. Consumer Marketing & Landing Pages
|
|
220
|
+
* **Goal:** Emotional appeal, high conversion flows, brand differentiation, and typographic pacing.
|
|
221
|
+
* **Visual Tone:** Editorial, Dark Luxury, Swiss Precision, or Organic Natural.
|
|
222
|
+
* **Heuristics:**
|
|
223
|
+
* **Layout Asymmetry:** Avoid 50/50 hero templates. Use overlapping layers, full-bleed media breakouts, and dramatic grid breaks.
|
|
224
|
+
* **Typography Hierarchy:** Large, expressive display headings paired with highly legible body columns constrained to `60-70ch` to prevent eye strain.
|
|
225
|
+
* **Controlled Motion:** Use scroll-driven reveals (e.g., clip-path reveals, stagger entry) to guide reading flow. Avoid constant looping animations.
|
|
226
|
+
* **Visual Proof Grid:** Grid rows for logos and customer reviews must balance visual weight and scale.
|
|
227
|
+
|
|
228
|
+
### Landing Page Code Template (Asymmetric Hero Section)
|
|
229
|
+
```tsx
|
|
230
|
+
import React from 'react';
|
|
231
|
+
import { ArrowRight } from 'lucide-react';
|
|
232
|
+
|
|
233
|
+
export function AsymmetricHero() {
|
|
234
|
+
return (
|
|
235
|
+
<section className="relative w-full py-20 px-4 md:px-8 overflow-hidden bg-[var(--bg-base)]">
|
|
236
|
+
<div className="max-w-6xl mx-auto grid grid-cols-1 lg:grid-cols-12 gap-12 items-center">
|
|
237
|
+
{/* Left Side: Editorial Typography Column (Spans 7 columns) */}
|
|
238
|
+
<div className="lg:col-span-7 space-y-6">
|
|
239
|
+
<span className="inline-flex px-3 py-1 text-[10px] uppercase font-bold tracking-widest bg-[var(--color-primary)]/10 text-[var(--color-primary)] rounded-full">
|
|
240
|
+
Flagship Release
|
|
241
|
+
</span>
|
|
242
|
+
<h1 className="text-4xl md:text-6xl font-extrabold tracking-tight leading-[1.05] text-[var(--text-primary)] text-wrap-balance">
|
|
243
|
+
Create interfaces that feel <span className="underline decoration-wavy decoration-[var(--color-primary)]">human</span> again.
|
|
244
|
+
</h1>
|
|
245
|
+
<p className="text-base text-[var(--text-secondary)] max-w-[55ch] leading-relaxed text-wrap-pretty">
|
|
246
|
+
We extract clean, reusable design principles from elite developer interfaces and encode them into deterministic token specifications.
|
|
247
|
+
</p>
|
|
248
|
+
<div className="flex flex-wrap gap-4 pt-4">
|
|
249
|
+
<button className="flex items-center gap-2 px-6 py-3 bg-[var(--color-primary)] text-white hover:bg-[var(--color-primary-hover)] active:scale-95 transition-all rounded-[var(--radius-soft)] text-sm font-semibold shadow-[var(--shadow-md)]">
|
|
250
|
+
Get Started <ArrowRight size={16} />
|
|
251
|
+
</button>
|
|
252
|
+
<button className="px-6 py-3 border border-[var(--border-default)] hover:bg-[var(--bg-surface-raised)] transition-all rounded-[var(--radius-soft)] text-sm font-semibold text-[var(--text-secondary)]">
|
|
253
|
+
View Design Kit
|
|
254
|
+
</button>
|
|
255
|
+
</div>
|
|
256
|
+
</div>
|
|
257
|
+
|
|
258
|
+
{/* Right Side: Visual Accent Panel (Spans 5 columns, asymmetric displacement) */}
|
|
259
|
+
<div className="lg:col-span-5 relative mt-8 lg:mt-0">
|
|
260
|
+
<div className="absolute inset-0 bg-gradient-to-tr from-[var(--color-primary)]/20 to-transparent blur-3xl -z-10" />
|
|
261
|
+
<div className="bg-[var(--bg-surface)] border border-[var(--border-subtle)] p-6 rounded-[var(--radius-lg)] shadow-[var(--shadow-lg)] transform hover:-translate-y-1 hover:rotate-1 transition-all duration-300">
|
|
262
|
+
<h3 className="text-base font-bold text-[var(--text-primary)] mb-2">Picasso v3 Token Output</h3>
|
|
263
|
+
<pre className="text-[10px] font-mono text-[var(--text-secondary)] bg-[var(--bg-base)] p-3 rounded border border-[var(--border-subtle)] overflow-x-auto">
|
|
264
|
+
{`{
|
|
265
|
+
"theme": "dark-luxury",
|
|
266
|
+
"primary": "oklch(65% 0.22 250)",
|
|
267
|
+
"geometry": {
|
|
268
|
+
"radius-default": "12px",
|
|
269
|
+
"border-subtle": "1px hairlines"
|
|
270
|
+
}
|
|
271
|
+
}`}
|
|
272
|
+
</pre>
|
|
273
|
+
</div>
|
|
274
|
+
</div>
|
|
275
|
+
</div>
|
|
276
|
+
</section>
|
|
277
|
+
);
|
|
278
|
+
}
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
---
|
|
282
|
+
|
|
283
|
+
## 4. AI Interfaces
|
|
284
|
+
* **Goal:** Interactive stream clarity, model transparency, history containment, and prompting accessibility.
|
|
285
|
+
* **Visual Tone:** Neo-Glassmorphism, Dark Luxury, or Soft Minimal.
|
|
286
|
+
* **Heuristics:**
|
|
287
|
+
* **Streaming Content States:** Show skeleton overlays or pulsing typing indicator bubbles during LLM processing. Stream response blocks chunk-by-chunk without layout shifts.
|
|
288
|
+
* **System Boundaries:** Visually differentiate user inputs, assistant responses, and system alerts (using background tinting or subtle border lines).
|
|
289
|
+
* **Actionable Prompts:** Provide quick-start suggestion chips at the bottom of empty chat views.
|
|
290
|
+
* **Scroll Locking:** Automatically anchor chat containers to the bottom as long messages render, but release lock if the user manually scrolls up to read history.
|
|
291
|
+
|
|
292
|
+
### AI Chat Code Template (Input Prompt Area)
|
|
293
|
+
```tsx
|
|
294
|
+
import React, { useState } from 'react';
|
|
295
|
+
import { Send, Sparkles } from 'lucide-react';
|
|
296
|
+
|
|
297
|
+
export function AIChatInput({ onSubmit }) {
|
|
298
|
+
const [input, setInput] = useState('');
|
|
299
|
+
const suggestions = ['Generate SaaS Layout', 'Optimize CSS Grids', 'APCA Contrast Check'];
|
|
300
|
+
|
|
301
|
+
return (
|
|
302
|
+
<div className="w-full max-w-2xl mx-auto space-y-3 p-4 bg-[var(--bg-surface)] border border-[var(--border-subtle)] rounded-[var(--radius-md)] shadow-[var(--shadow-md)]">
|
|
303
|
+
{/* Suggestions Chips Row */}
|
|
304
|
+
<div className="flex flex-wrap gap-2">
|
|
305
|
+
{suggestions.map((sug, i) => (
|
|
306
|
+
<button
|
|
307
|
+
key={i}
|
|
308
|
+
onClick={() => setInput(sug)}
|
|
309
|
+
className="flex items-center gap-1.5 px-3 py-1.5 bg-[var(--bg-base)] hover:bg-[var(--bg-surface-raised)] border border-[var(--border-subtle)] rounded-full text-xs text-[var(--text-secondary)] hover:text-[var(--text-primary)] transition-all font-medium"
|
|
310
|
+
>
|
|
311
|
+
<Sparkles size={12} className="text-[var(--color-primary)]" /> {sug}
|
|
312
|
+
</button>
|
|
313
|
+
))}
|
|
314
|
+
</div>
|
|
315
|
+
|
|
316
|
+
{/* Input Text Form */}
|
|
317
|
+
<form
|
|
318
|
+
onSubmit={(e) => { e.preventDefault(); if (input.trim()) { onSubmit(input); setInput(''); } }}
|
|
319
|
+
className="flex gap-2 items-center border border-[var(--border-default)] rounded-[var(--radius-sm)] px-3 py-2 bg-[var(--bg-base)] focus-within:ring-1 focus-within:ring-[var(--color-primary)] transition-all"
|
|
320
|
+
>
|
|
321
|
+
<input
|
|
322
|
+
type="text"
|
|
323
|
+
value={input}
|
|
324
|
+
onChange={(e) => setInput(e.target.value)}
|
|
325
|
+
placeholder="Ask Antigravity UI to design..."
|
|
326
|
+
className="flex-1 bg-transparent border-0 outline-none text-xs text-[var(--text-primary)] placeholder-[var(--text-muted)]"
|
|
327
|
+
/>
|
|
328
|
+
<button
|
|
329
|
+
type="submit"
|
|
330
|
+
disabled={!input.trim()}
|
|
331
|
+
className="p-2 bg-[var(--color-primary)] text-white hover:bg-[var(--color-primary-hover)] disabled:bg-[var(--text-muted)] disabled:opacity-50 disabled:cursor-not-allowed rounded-[var(--radius-sm)] transition-all"
|
|
332
|
+
>
|
|
333
|
+
<Send size={14} />
|
|
334
|
+
</button>
|
|
335
|
+
</form>
|
|
336
|
+
</div>
|
|
337
|
+
);
|
|
338
|
+
}
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
---
|
|
342
|
+
|
|
343
|
+
## 5. Fintech & Dashboards
|
|
344
|
+
* **Goal:** Financial precision, trust, quick status retrieval, and clean charts.
|
|
345
|
+
* **Visual Tone:** Soft Minimal or Dark Luxury. Green/red semantic indicators should be soft sage and terracotta to avoid harsh, alarmist styling.
|
|
346
|
+
* **Heuristics:**
|
|
347
|
+
* **Tabular Data Precision:** Use tabular numbers (`font-variant-numeric: tabular-nums`) to align digits perfectly in records.
|
|
348
|
+
* **Interactive Visualizations:** Chart axes must have visible grids and clear legend labels. Hover tooltips must follow mouse movements and show precise numerical values.
|
|
349
|
+
|
|
350
|
+
---
|
|
351
|
+
|
|
352
|
+
## Pre-Flight Checklist
|
|
353
|
+
- [ ] Have I verified the visual guidelines match the target Product Category?
|
|
354
|
+
- [ ] Have I checked for tabular numbers alignment in Fintech interfaces?
|
|
355
|
+
- [ ] Have I checked for monospace format in Developer Tools?
|
|
356
|
+
|
|
357
|
+
## VBC Protocol (Verification-Before-Completion)
|
|
358
|
+
You MUST verify existing code signatures and variables before attempting to modify or call them. No hallucination is permitted.
|
|
@@ -1,20 +1,29 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: progressive-blur
|
|
3
3
|
description: Smooth progressive backdrop blurs, depth overlays, and modern glassmorphism using CSS mask-image and multi-layered backdrop filters without GPU performance drops.
|
|
4
|
-
version:
|
|
5
|
-
last-updated: 2026-07-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
4
|
+
version: 3.0.0
|
|
5
|
+
last-updated: 2026-07-30
|
|
6
|
+
skills:
|
|
7
|
+
- 60fps-animation
|
|
8
|
+
- better-colors
|
|
9
|
+
- baseline-ui
|
|
10
|
+
tools: Read, Grep, Glob, Bash, Edit, Write
|
|
11
|
+
scripts-binding:
|
|
12
|
+
- .agent/scripts/lint_runner.js
|
|
13
|
+
- .agent/scripts/verify_all.js
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
# Progressive Blur — Multi-Layered Glassmorphism & Depth
|
|
17
17
|
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Mandatory Pre-Flight Context Inspection
|
|
21
|
+
|
|
22
|
+
Before engineering glassmorphism or backdrop blurs, you MUST inspect:
|
|
23
|
+
1. Vendor prefixes → Enforce `-webkit-backdrop-filter` alongside `backdrop-filter` for Safari support
|
|
24
|
+
2. GPU Protection Rule (Section 70) → Strictly prohibit animating `backdrop-filter: blur()` radius; animate `opacity` of static blurred pseudo-elements instead
|
|
25
|
+
3. Masked Blur Gradient layers (Section 25) → Blend multi-step blur layers with linear gradient masks to avoid harsh edge cutoffs
|
|
26
|
+
|
|
18
27
|
Architect high-performance, progressive backdrop blurs and frosted glass interfaces that feel tactile and fluid.
|
|
19
28
|
|
|
20
29
|
---
|
|
@@ -5,16 +5,28 @@ description: >
|
|
|
5
5
|
from the developer's own code decisions. Generated by skill_evolution.js.
|
|
6
6
|
Commit this file to share your Engineering Culture across the team.
|
|
7
7
|
Every agent MUST respect these idioms above generic defaults.
|
|
8
|
-
version:
|
|
9
|
-
last-updated: 2026-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
version: 3.0.0
|
|
9
|
+
last-updated: 2026-07-30
|
|
10
|
+
skills:
|
|
11
|
+
- clean-code
|
|
12
|
+
- codebase-design
|
|
13
|
+
- fabel-protocol
|
|
14
|
+
tools: Read, Grep, Glob, Bash, Edit, Write
|
|
15
|
+
scripts-binding:
|
|
16
|
+
- .agent/scripts/skill_evolution.js
|
|
17
|
+
- .agent/scripts/verify_all.js
|
|
15
18
|
---
|
|
16
19
|
|
|
17
|
-
|
|
20
|
+
# Project Idioms — Auto-Evolved Skill
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## Mandatory Pre-Flight Context Inspection
|
|
25
|
+
|
|
26
|
+
Before generating code or suggesting architectural patterns, you MUST inspect:
|
|
27
|
+
1. Recorded Idioms table (Section 43) → Check active project-specific architectural overrides
|
|
28
|
+
2. `skill_evolution.js` status → Verify if staged commits contain un-digested architectural deltas
|
|
29
|
+
3. Override protocol (Section 71) → Never contradict a project idiom silently; flag deviations explicitlyrst)
|
|
18
30
|
|
|
19
31
|
- ❌ Overriding project idioms without explicit justification -> ✅ Idioms represent team decisions; flag deviations with reasoning
|
|
20
32
|
- ❌ Applying idioms from one project to a different project -> ✅ Idioms are project-specific; verify they apply to the current codebase
|
|
@@ -1,15 +1,29 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: python-patterns
|
|
3
3
|
description: Python development principles and decision-making. Framework selection, async patterns, type hints, project structure. Teaches thinking, not copying.
|
|
4
|
-
|
|
5
|
-
version:
|
|
6
|
-
last-updated: 2026-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
tools: Read, Grep, Glob, Bash, Edit, Write
|
|
5
|
+
version: 3.0.0
|
|
6
|
+
last-updated: 2026-07-30
|
|
7
|
+
skills:
|
|
8
|
+
- python-pro
|
|
9
|
+
- clean-code
|
|
10
|
+
- data-validation-schemas
|
|
11
|
+
scripts-binding:
|
|
12
|
+
- .agent/scripts/lint_runner.js
|
|
13
|
+
- .agent/scripts/verify_all.js
|
|
11
14
|
---
|
|
12
15
|
|
|
16
|
+
# Python Development Principles
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Mandatory Pre-Flight Context Inspection
|
|
21
|
+
|
|
22
|
+
Before architecting Python projects or selecting frameworks, you MUST inspect:
|
|
23
|
+
1. Typed Data Models over Dicts (Section 15) → Use Pydantic models or `@dataclass` for structured data; ban un-typed `dict` passing
|
|
24
|
+
2. Specific Exception Handling (Section 16) → Catch explicit exceptions (`ValueError`, `AppError`); ban bare `except:` or generic `except Exception:` swallowing
|
|
25
|
+
3. Pathlib Modern API (Section 17) → Use `pathlib.Path` for cross-platform filesystem operations; ban legacy `os.path`
|
|
26
|
+
|
|
13
27
|
## Hallucination Traps (Read First)
|
|
14
28
|
|
|
15
29
|
- ❌ Using `dict` for structured data when a dataclass/Pydantic model exists -> ✅ Dicts have no type safety; use typed models
|