tribunal-kit 5.8.5 → 6.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agent/.manifest.json +78 -0
- package/.agent/ARCHITECTURE.md +32 -253
- 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 +63 -33
- package/.agent/history/memory/.memory.idx +2701 -1
- package/.agent/history/memory/MEMORY.md +179 -1
- package/.agent/routing_index.json +273 -690
- package/.agent/rules/GEMINI.md +11 -13
- package/.agent/rules/GEMINI_PLANNER.md +84 -0
- package/.agent/scripts/case_law_manager.js +2 -0
- package/.agent/scripts/context_broker.js +152 -0
- package/.agent/scripts/guardrail_engine.js +59 -4
- package/.agent/scripts/impact_classifier.js +167 -0
- package/.agent/scripts/minimal_change_engine.js +437 -0
- package/.agent/scripts/pipeline_engine.js +856 -0
- package/.agent/scripts/socratic_gate_policy.js +60 -0
- 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/skill_topic_map.json +218 -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/agentic-workflows-2026/SKILL.md +76 -0
- package/.agent/skills/ai-app-hardening/SKILL.md +58 -0
- 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-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 +19 -10
- 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/context-engineering-pro/SKILL.md +69 -0
- 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/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/duckdb-analytical-sql/SKILL.md +55 -0
- package/.agent/skills/edge-ai-mobile/SKILL.md +46 -0
- 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/expo-router-v4/SKILL.md +80 -0
- 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 +19 -10
- 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 +64 -201
- 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/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/impeccable/SKILL.md +19 -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/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/monorepo-management/SKILL.md +21 -7
- package/.agent/skills/morphing-icons/SKILL.md +19 -10
- package/.agent/skills/motion-engineering/SKILL.md +20 -7
- package/.agent/skills/nextjs-react-expert/SKILL.md +19 -7
- package/.agent/skills/nodejs-best-practices/SKILL.md +21 -7
- package/.agent/skills/observability/SKILL.md +21 -7
- package/.agent/skills/opentelemetry-observability/SKILL.md +58 -0
- 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/plan-writing/SKILL.md +21 -7
- package/.agent/skills/platform-engineer/SKILL.md +21 -7
- package/.agent/skills/platform-engineering-opentofu/SKILL.md +67 -0
- package/.agent/skills/playwright-ai-e2e/SKILL.md +59 -0
- 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/property-based-testing/SKILL.md +60 -0
- 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/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/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/vector-search-pgvector/SKILL.md +77 -0
- package/.agent/skills/vue-expert/SKILL.md +19 -6
- package/.agent/skills/vulnerability-scanner/SKILL.md +21 -7
- 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/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/skills/zero-trust-passkeys/SKILL.md +85 -0
- 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 +41 -26
- 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 +82 -60
- package/SECURITY.md +3 -3
- package/bin/mcp-server.js +253 -57
- package/bin/wrapper.js +24 -10
- package/dist/cli.js +29 -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 +13 -2
- package/dist/commands/memory.js +120 -68
- package/dist/commands/minimal.js +71 -0
- package/dist/commands/native.js +36 -0
- package/dist/commands/optimize.js +15 -5
- package/dist/esm/index.mjs +58 -32
- package/dist/index.d.ts +50 -2
- 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 +16 -10
- package/scripts/benchmark.js +16 -0
- package/scripts/sync-version.js +1 -1
- package/scripts/visual_audit.js +126 -0
|
@@ -1,19 +1,29 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: workflow-optimizer
|
|
3
3
|
description: Analyzes agent tool-calling patterns and task execution efficiency to suggest process improvements.
|
|
4
|
+
version: 3.0.0
|
|
5
|
+
last-updated: 2026-07-30
|
|
4
6
|
skills:
|
|
5
7
|
- parallel-agents
|
|
6
8
|
- plan-writing
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
tier: basic
|
|
9
|
+
- fabel-protocol
|
|
10
|
+
tools: Read, Grep, Glob, Bash, Edit, Write
|
|
11
|
+
scripts-binding:
|
|
12
|
+
- .agent/scripts/verify_all.js
|
|
13
|
+
- .agent/scripts/checklist.js
|
|
13
14
|
---
|
|
14
15
|
|
|
15
16
|
# Workflow Optimizer Skill
|
|
16
17
|
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Mandatory Pre-Flight Context Inspection
|
|
21
|
+
|
|
22
|
+
Before analyzing tool-calling logs or task efficiency, you MUST inspect:
|
|
23
|
+
1. Tool Call Pattern Analysis table (Section 1) → Classify redundant reads, serial bottlenecks, and context dumps
|
|
24
|
+
2. Parallelism Opportunity Detection (Section 2) → Verify read/write dependency rules for batch tool calls
|
|
25
|
+
3. Efficiency Score formula (Section 105) → Compute actual vs optimal call ratios accurately
|
|
26
|
+
|
|
17
27
|
You are a specialized agent for analyzing and optimizing the efficiency of AI agent workflows, task execution loops, and tool-calling patterns. You act as a "meta-debugger" — debugging the _process_, not the _code_.
|
|
18
28
|
|
|
19
29
|
## When to Activate
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: zero-trust-passkeys
|
|
3
|
+
description: Modern passwordless authentication using WebAuthn, FIDO2 biometric passkeys, SimpleWebAuthn v13+, Conditional UI (Passkey Autofill), and Zero-Trust security.
|
|
4
|
+
tools: Read, Grep, Glob, Edit, Write
|
|
5
|
+
version: 3.0.0
|
|
6
|
+
last-updated: 2026-08-05
|
|
7
|
+
script: .agent/scripts/security_scan.js
|
|
8
|
+
scripts-binding:
|
|
9
|
+
- .agent/scripts/security_scan.js
|
|
10
|
+
skills:
|
|
11
|
+
- authentication-best-practices
|
|
12
|
+
- backend-security-expert
|
|
13
|
+
- frontend-security-expert
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# Zero-Trust Passkeys & WebAuthn (SimpleWebAuthn v13+)
|
|
17
|
+
|
|
18
|
+
## Mandatory Pre-Flight Context Inspection
|
|
19
|
+
|
|
20
|
+
Before implementing auth flows:
|
|
21
|
+
1. Conditional UI (Passkey Autofill) → Use `useBrowserAutofill: true` and `autocomplete="username webauthn"` for seamless form autofill
|
|
22
|
+
2. Feature Detection & Abort Signals → Check `isConditionalMediationAvailable()` and manage cancellation via `AbortController`
|
|
23
|
+
3. Discoverable Credentials → Ensure `userVerification` and resident key options are enabled on registration
|
|
24
|
+
|
|
25
|
+
## Client-Side Passkey Autofill Pattern (SimpleWebAuthn v13 Browser)
|
|
26
|
+
|
|
27
|
+
```typescript
|
|
28
|
+
import {
|
|
29
|
+
startAuthentication,
|
|
30
|
+
isConditionalMediationAvailable
|
|
31
|
+
} from '@simplewebauthn/browser';
|
|
32
|
+
|
|
33
|
+
export async function initConditionalPasskeyAutofill(abortSignal: AbortSignal) {
|
|
34
|
+
const isAvailable = await isConditionalMediationAvailable();
|
|
35
|
+
if (!isAvailable) return;
|
|
36
|
+
|
|
37
|
+
try {
|
|
38
|
+
// 1. Fetch options from server
|
|
39
|
+
const res = await fetch('/api/auth/generate-authentication-options');
|
|
40
|
+
const options = await res.json();
|
|
41
|
+
|
|
42
|
+
// 2. Trigger browser native autofill dropdown
|
|
43
|
+
const credential = await startAuthentication({
|
|
44
|
+
optionsJSON: options,
|
|
45
|
+
useBrowserAutofill: true,
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
// 3. Send response to server for verification
|
|
49
|
+
await fetch('/api/auth/verify-authentication', {
|
|
50
|
+
method: 'POST',
|
|
51
|
+
headers: { 'Content-Type': 'application/json' },
|
|
52
|
+
body: JSON.stringify(credential),
|
|
53
|
+
});
|
|
54
|
+
} catch (err: any) {
|
|
55
|
+
if (err.name !== 'AbortError') console.error('Passkey autofill error:', err);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## Server Verification Pattern (SimpleWebAuthn v13 Server)
|
|
61
|
+
|
|
62
|
+
```typescript
|
|
63
|
+
import { verifyAuthenticationResponse, generateAuthenticationOptions } from '@simplewebauthn/server';
|
|
64
|
+
|
|
65
|
+
export async function verifyPasskeyAuth(body: any, expectedChallenge: string, userPublicKey: Uint8Array) {
|
|
66
|
+
const verification = await verifyAuthenticationResponse({
|
|
67
|
+
response: body,
|
|
68
|
+
expectedChallenge,
|
|
69
|
+
expectedOrigin: process.env.APP_ORIGIN!,
|
|
70
|
+
expectedRPID: process.env.RP_ID!,
|
|
71
|
+
credential: {
|
|
72
|
+
id: body.id,
|
|
73
|
+
publicKey: userPublicKey,
|
|
74
|
+
counter: body.counter || 0,
|
|
75
|
+
},
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
return verification.verified;
|
|
79
|
+
}
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## 🛑 Verification-Before-Completion (VBC) Protocol
|
|
83
|
+
|
|
84
|
+
- Verify input tags have `autocomplete="username webauthn"`.
|
|
85
|
+
- Test passkey autofill flow with `AbortController` cancellation.
|
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
# DESIGN.md — Product Design System
|
|
2
|
+
|
|
3
|
+
> **This file is your AI agent's source of truth for premium visual design.**
|
|
4
|
+
> Generated by `tribunal-kit init`. Choose and customize one Visual Direction for your brand.
|
|
5
|
+
> All coding agents MUST read this file before generating any UI code.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## 1. Chosen Visual Direction: [Enter Chosen Direction Here]
|
|
10
|
+
|
|
11
|
+
Choose **ONE** direction from the list below to define the brand visual system. Do not mix directions:
|
|
12
|
+
|
|
13
|
+
* **Swiss Precision:** Clean, grid-locked alignment, sans-serif typography, clinical whitespace, no decoration.
|
|
14
|
+
* **Brutalist:** Raw, exposed 1px borders, monospace display fonts, high contrast, sharp corners (`radius: 2px`).
|
|
15
|
+
* **Editorial:** Magazine-inspired layout, large display headings, generous margins, serif headings, single-column reading paths.
|
|
16
|
+
* **Neo-Glassmorphism:** Tinted overlays, high backdrop blur (`blur(20px)`), luminous hairlines, floating modules.
|
|
17
|
+
* **Soft Minimal:** Warm tinted grays (`oklch`), rounded shapes (`radius: 12px`), deep shadows, spacious margins.
|
|
18
|
+
* **Dark Luxury:** Near-black base (`#0A0A0F`), gold/amber accent lines, thin fonts, subtle animations.
|
|
19
|
+
* **Neon Cyberpunk:** Dark base surfaces, highly saturated vivid accents (neon cyan/green), glow effects, sharp geometry.
|
|
20
|
+
* **Retro Analog:** Warm grain overlay, rounded typography, muted color palettes, physical paper-like textures.
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## 2. Visual Identities CSS Tokens Definition
|
|
25
|
+
|
|
26
|
+
### 1. Swiss Precision
|
|
27
|
+
```css
|
|
28
|
+
:root {
|
|
29
|
+
--font-display: "General Sans", sans-serif;
|
|
30
|
+
--font-body: "Satoshi", sans-serif;
|
|
31
|
+
--font-mono: "JetBrains Mono", monospace;
|
|
32
|
+
|
|
33
|
+
/* Surfaces */
|
|
34
|
+
--bg-base: oklch(0.98 0.002 240);
|
|
35
|
+
--bg-surface: oklch(1.00 0 0);
|
|
36
|
+
--bg-surface-raised: oklch(0.95 0.003 240);
|
|
37
|
+
|
|
38
|
+
/* Accents */
|
|
39
|
+
--color-primary: oklch(0.20 0.01 240); /* Minimal black/slate */
|
|
40
|
+
--color-primary-hover: oklch(0.40 0.01 240);
|
|
41
|
+
|
|
42
|
+
/* Spacing Grid */
|
|
43
|
+
--space-xs: 4px;
|
|
44
|
+
--space-sm: 8px;
|
|
45
|
+
--space-md: 16px;
|
|
46
|
+
--space-lg: 24px;
|
|
47
|
+
--space-xl: 32px;
|
|
48
|
+
|
|
49
|
+
/* Radii */
|
|
50
|
+
--radius-sm: 0px;
|
|
51
|
+
--radius-md: 0px;
|
|
52
|
+
--radius-lg: 0px;
|
|
53
|
+
|
|
54
|
+
/* Elevation */
|
|
55
|
+
--shadow-sm: none;
|
|
56
|
+
--shadow-md: none;
|
|
57
|
+
--border-subtle: oklch(90% 0.002 240);
|
|
58
|
+
}
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### 2. Brutalist
|
|
62
|
+
```css
|
|
63
|
+
:root {
|
|
64
|
+
--font-display: "JetBrains Mono", monospace;
|
|
65
|
+
--font-body: "General Sans", sans-serif;
|
|
66
|
+
--font-mono: "JetBrains Mono", monospace;
|
|
67
|
+
|
|
68
|
+
--bg-base: oklch(1.00 0 0);
|
|
69
|
+
--bg-surface: oklch(1.00 0 0);
|
|
70
|
+
--bg-surface-raised: oklch(0.95 0.005 240);
|
|
71
|
+
|
|
72
|
+
--color-primary: oklch(0.60 0.28 140); /* Acid Green */
|
|
73
|
+
--color-primary-hover: oklch(0.50 0.28 140);
|
|
74
|
+
|
|
75
|
+
--space-xs: 4px;
|
|
76
|
+
--space-sm: 8px;
|
|
77
|
+
--space-md: 16px;
|
|
78
|
+
--space-lg: 24px;
|
|
79
|
+
--space-xl: 32px;
|
|
80
|
+
|
|
81
|
+
--radius-sm: 2px;
|
|
82
|
+
--radius-md: 2px;
|
|
83
|
+
--radius-lg: 2px;
|
|
84
|
+
|
|
85
|
+
--shadow-sm: 2px 2px 0px oklch(10% 0.01 240); /* Hard drop shadows */
|
|
86
|
+
--shadow-md: 4px 4px 0px oklch(10% 0.01 240);
|
|
87
|
+
--border-subtle: 2px solid oklch(10% 0.01 240);
|
|
88
|
+
}
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### 3. Editorial
|
|
92
|
+
```css
|
|
93
|
+
:root {
|
|
94
|
+
--font-display: "Playfair Display", serif;
|
|
95
|
+
--font-body: "Source Sans 3", sans-serif;
|
|
96
|
+
--font-mono: "Courier New", monospace;
|
|
97
|
+
|
|
98
|
+
--bg-base: oklch(0.97 0.005 60); /* Warm alabaster tint */
|
|
99
|
+
--bg-surface: oklch(0.99 0.002 60);
|
|
100
|
+
--bg-surface-raised: oklch(0.94 0.008 60);
|
|
101
|
+
|
|
102
|
+
--color-primary: oklch(0.35 0.12 25); /* Deep terracotta red */
|
|
103
|
+
--color-primary-hover: oklch(0.25 0.12 25);
|
|
104
|
+
|
|
105
|
+
--space-xs: 6px;
|
|
106
|
+
--space-sm: 12px;
|
|
107
|
+
--space-md: 24px;
|
|
108
|
+
--space-lg: 36px;
|
|
109
|
+
--space-xl: 48px;
|
|
110
|
+
|
|
111
|
+
--radius-sm: 4px;
|
|
112
|
+
--radius-md: 8px;
|
|
113
|
+
--radius-lg: 16px;
|
|
114
|
+
|
|
115
|
+
--shadow-sm: 0 2px 8px oklch(20% 0.01 60 / 0.05);
|
|
116
|
+
--shadow-md: 0 8px 24px oklch(20% 0.01 60 / 0.08);
|
|
117
|
+
--border-subtle: oklch(88% 0.01 60);
|
|
118
|
+
}
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### 4. Neo-Glassmorphism
|
|
122
|
+
```css
|
|
123
|
+
:root {
|
|
124
|
+
--font-display: "Clash Display", sans-serif;
|
|
125
|
+
--font-body: "Satoshi", sans-serif;
|
|
126
|
+
--font-mono: "JetBrains Mono", monospace;
|
|
127
|
+
|
|
128
|
+
--bg-base: oklch(0.12 0.01 220); /* Deep indigo gradient base */
|
|
129
|
+
--bg-surface: oklch(100% 0 0 / 0.15); /* Translucent glass */
|
|
130
|
+
--bg-surface-raised: oklch(100% 0 0 / 0.25);
|
|
131
|
+
|
|
132
|
+
--color-primary: oklch(0.70 0.22 200); /* Electric cyan */
|
|
133
|
+
--color-primary-hover: oklch(0.60 0.22 200);
|
|
134
|
+
|
|
135
|
+
--space-xs: 4px;
|
|
136
|
+
--space-sm: 8px;
|
|
137
|
+
--space-md: 16px;
|
|
138
|
+
--space-lg: 24px;
|
|
139
|
+
--space-xl: 32px;
|
|
140
|
+
|
|
141
|
+
--radius-sm: 4px;
|
|
142
|
+
--radius-md: 16px;
|
|
143
|
+
--radius-lg: 28px;
|
|
144
|
+
|
|
145
|
+
--shadow-sm: 0 4px 12px oklch(0% 0 0 / 0.15);
|
|
146
|
+
--shadow-md: 0 12px 32px oklch(0% 0 0 / 0.25);
|
|
147
|
+
--border-subtle: 1px solid oklch(100% 0 0 / 0.18); /* Glass hairline glow */
|
|
148
|
+
}
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### 5. Soft Minimal
|
|
152
|
+
```css
|
|
153
|
+
:root {
|
|
154
|
+
--font-display: "Geist Sans", sans-serif;
|
|
155
|
+
--font-body: "Geist Sans", sans-serif;
|
|
156
|
+
--font-mono: "Geist Mono", monospace;
|
|
157
|
+
|
|
158
|
+
--bg-base: oklch(0.98 0.003 80); /* Warm off-white */
|
|
159
|
+
--bg-surface: oklch(1.00 0 0);
|
|
160
|
+
--bg-surface-raised: oklch(0.96 0.005 80);
|
|
161
|
+
|
|
162
|
+
--color-primary: oklch(0.40 0.06 200); /* Muted graphite slate */
|
|
163
|
+
--color-primary-hover: oklch(0.30 0.06 200);
|
|
164
|
+
|
|
165
|
+
--space-xs: 4px;
|
|
166
|
+
--space-sm: 8px;
|
|
167
|
+
--space-md: 16px;
|
|
168
|
+
--space-lg: 24px;
|
|
169
|
+
--space-xl: 32px;
|
|
170
|
+
|
|
171
|
+
--radius-sm: 6px;
|
|
172
|
+
--radius-md: 12px;
|
|
173
|
+
--radius-lg: 20px;
|
|
174
|
+
|
|
175
|
+
--shadow-sm: 0 2px 4px oklch(0% 0 0 / 0.02);
|
|
176
|
+
--shadow-md: 0 8px 24px oklch(0% 0 0 / 0.04);
|
|
177
|
+
--border-subtle: oklch(93% 0.003 80);
|
|
178
|
+
}
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
### 6. Dark Luxury
|
|
182
|
+
```css
|
|
183
|
+
:root {
|
|
184
|
+
--font-display: "Cabinet Grotesk", sans-serif;
|
|
185
|
+
--font-body: "Satoshi", sans-serif;
|
|
186
|
+
--font-mono: "JetBrains Mono", monospace;
|
|
187
|
+
|
|
188
|
+
--bg-base: oklch(0.08 0.005 250); /* OLED-friendly black */
|
|
189
|
+
--bg-surface: oklch(0.12 0.008 250);
|
|
190
|
+
--bg-surface-raised: oklch(0.16 0.01 250);
|
|
191
|
+
|
|
192
|
+
--color-primary: oklch(0.78 0.12 85); /* Gold/Amber */
|
|
193
|
+
--color-primary-hover: oklch(0.68 0.12 85);
|
|
194
|
+
|
|
195
|
+
--space-xs: 4px;
|
|
196
|
+
--space-sm: 8px;
|
|
197
|
+
--space-md: 16px;
|
|
198
|
+
--space-lg: 24px;
|
|
199
|
+
--space-xl: 32px;
|
|
200
|
+
|
|
201
|
+
--radius-sm: 2px;
|
|
202
|
+
--radius-md: 6px;
|
|
203
|
+
--radius-lg: 12px;
|
|
204
|
+
|
|
205
|
+
--shadow-sm: 0 1px 2px oklch(0% 0 0 / 0.3);
|
|
206
|
+
--shadow-md: 0 4px 16px oklch(0% 0 0 / 0.5);
|
|
207
|
+
--border-subtle: oklch(22% 0.01 250 / 0.5); /* Thin hairline borders */
|
|
208
|
+
}
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
### 7. Neon Cyberpunk
|
|
212
|
+
```css
|
|
213
|
+
:root {
|
|
214
|
+
--font-display: "Space Grotesk", sans-serif;
|
|
215
|
+
--font-body: "General Sans", sans-serif;
|
|
216
|
+
--font-mono: "JetBrains Mono", monospace;
|
|
217
|
+
|
|
218
|
+
--bg-base: oklch(0.05 0.01 280); /* Deep space navy */
|
|
219
|
+
--bg-surface: oklch(0.08 0.015 280);
|
|
220
|
+
--bg-surface-raised: oklch(0.12 0.02 280);
|
|
221
|
+
|
|
222
|
+
--color-primary: oklch(0.75 0.28 160); /* Neon green glow */
|
|
223
|
+
--color-primary-hover: oklch(0.85 0.28 160);
|
|
224
|
+
|
|
225
|
+
--space-xs: 4px;
|
|
226
|
+
--space-sm: 8px;
|
|
227
|
+
--space-md: 16px;
|
|
228
|
+
--space-lg: 24px;
|
|
229
|
+
--space-xl: 32px;
|
|
230
|
+
|
|
231
|
+
--radius-sm: 0px;
|
|
232
|
+
--radius-md: 4px;
|
|
233
|
+
--radius-lg: 8px;
|
|
234
|
+
|
|
235
|
+
--shadow-sm: 0 0 8px oklch(0.75 0.28 160 / 0.2);
|
|
236
|
+
--shadow-md: 0 0 16px oklch(0.75 0.28 160 / 0.4);
|
|
237
|
+
--border-subtle: oklch(20% 0.03 280);
|
|
238
|
+
}
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
### 8. Retro Analog
|
|
242
|
+
```css
|
|
243
|
+
:root {
|
|
244
|
+
--font-display: "Clash Display", sans-serif;
|
|
245
|
+
--font-body: "Switzer", sans-serif;
|
|
246
|
+
--font-mono: "Courier New", monospace;
|
|
247
|
+
|
|
248
|
+
--bg-base: oklch(0.94 0.015 70); /* Warm paper beige */
|
|
249
|
+
--bg-surface: oklch(0.96 0.015 70);
|
|
250
|
+
--bg-surface-raised: oklch(0.91 0.02 70);
|
|
251
|
+
|
|
252
|
+
--color-primary: oklch(0.50 0.18 45); /* Muted rust brown */
|
|
253
|
+
--color-primary-hover: oklch(0.40 0.18 45);
|
|
254
|
+
|
|
255
|
+
--space-xs: 5px;
|
|
256
|
+
--space-sm: 10px;
|
|
257
|
+
--space-md: 20px;
|
|
258
|
+
--space-lg: 30px;
|
|
259
|
+
--space-xl: 40px;
|
|
260
|
+
|
|
261
|
+
--radius-sm: 4px;
|
|
262
|
+
--radius-md: 8px;
|
|
263
|
+
--radius-lg: 16px;
|
|
264
|
+
|
|
265
|
+
--shadow-sm: 1px 1px 2px oklch(20% 0.02 70 / 0.08);
|
|
266
|
+
--shadow-md: 3px 3px 6px oklch(20% 0.02 70 / 0.12);
|
|
267
|
+
--border-subtle: oklch(85% 0.02 70);
|
|
268
|
+
}
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
---
|
|
272
|
+
|
|
273
|
+
## 3. Typographical Scaling (Fluid Type)
|
|
274
|
+
|
|
275
|
+
* Headings must use `clamp()` to scale fluidly with the screen width.
|
|
276
|
+
* Always include `text-wrap: balance` to prevent typographical orphans.
|
|
277
|
+
* Body text line length must be clamped to `65ch` max width.
|
|
278
|
+
|
|
279
|
+
---
|
|
280
|
+
|
|
281
|
+
## 4. Spacing Rules & Nested Radii
|
|
282
|
+
|
|
283
|
+
* Maintain the 8px grid alignment.
|
|
284
|
+
* Nested Radius Formula: `outer_radius = inner_radius + padding_inner`.
|
|
285
|
+
|
|
286
|
+
---
|
|
287
|
+
|
|
288
|
+
## 5. Interaction States & Transitions
|
|
289
|
+
|
|
290
|
+
All buttons and active controls must define styled properties for:
|
|
291
|
+
* `hover`, `focus-visible`, `active`/`pressed`, and `disabled` states.
|
|
292
|
+
* Use spring easing curves: `cubic-bezier(0.34, 1.56, 0.64, 1)`.
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://design-tokens.github.io/community-group/format/",
|
|
3
|
+
"$description": "Tribunal Kit — Adaptive Design Tokens (W3C Format). Complete 8 Visual Identities with Typography and Elevation.",
|
|
4
|
+
|
|
5
|
+
"themes": {
|
|
6
|
+
"swiss": {
|
|
7
|
+
"color": {
|
|
8
|
+
"primary": { "$value": "oklch(0.20 0.01 240)", "$type": "color" },
|
|
9
|
+
"bg-base": { "$value": "oklch(0.98 0.002 240)", "$type": "color" },
|
|
10
|
+
"bg-surface": { "$value": "oklch(1.00 0 0)", "$type": "color" }
|
|
11
|
+
},
|
|
12
|
+
"radius": {
|
|
13
|
+
"sm": { "$value": "0px", "$type": "dimension" },
|
|
14
|
+
"md": { "$value": "0px", "$type": "dimension" }
|
|
15
|
+
},
|
|
16
|
+
"typography": {
|
|
17
|
+
"family-sans": { "$value": "Helvetica Neue, Arial, sans-serif", "$type": "fontFamily" },
|
|
18
|
+
"family-mono": { "$value": "SFMono-Regular, Consolas, monospace", "$type": "fontFamily" }
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"brutalist": {
|
|
22
|
+
"color": {
|
|
23
|
+
"primary": { "$value": "oklch(0.60 0.28 140)", "$type": "color" },
|
|
24
|
+
"bg-base": { "$value": "oklch(1.00 0 0)", "$type": "color" },
|
|
25
|
+
"bg-surface": { "$value": "oklch(1.00 0 0)", "$type": "color" }
|
|
26
|
+
},
|
|
27
|
+
"radius": {
|
|
28
|
+
"sm": { "$value": "2px", "$type": "dimension" },
|
|
29
|
+
"md": { "$value": "2px", "$type": "dimension" }
|
|
30
|
+
},
|
|
31
|
+
"typography": {
|
|
32
|
+
"family-sans": { "$value": "Space Grotesk, Impact, sans-serif", "$type": "fontFamily" },
|
|
33
|
+
"family-mono": { "$value": "Space Mono, Courier New, monospace", "$type": "fontFamily" }
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
"editorial": {
|
|
37
|
+
"color": {
|
|
38
|
+
"primary": { "$value": "oklch(0.35 0.12 25)", "$type": "color" },
|
|
39
|
+
"bg-base": { "$value": "oklch(0.97 0.005 60)", "$type": "color" },
|
|
40
|
+
"bg-surface": { "$value": "oklch(0.99 0.002 60)", "$type": "color" }
|
|
41
|
+
},
|
|
42
|
+
"radius": {
|
|
43
|
+
"sm": { "$value": "4px", "$type": "dimension" },
|
|
44
|
+
"md": { "$value": "8px", "$type": "dimension" }
|
|
45
|
+
},
|
|
46
|
+
"typography": {
|
|
47
|
+
"family-serif": { "$value": "Newsreader, Georgia, serif", "$type": "fontFamily" },
|
|
48
|
+
"family-sans": { "$value": "Inter, system-ui, sans-serif", "$type": "fontFamily" }
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"glassmorphism": {
|
|
52
|
+
"color": {
|
|
53
|
+
"primary": { "$value": "oklch(0.70 0.22 200)", "$type": "color" },
|
|
54
|
+
"bg-base": { "$value": "oklch(0.12 0.01 220)", "$type": "color" },
|
|
55
|
+
"bg-surface": { "$value": "oklch(100% 0 0 / 0.15)", "$type": "color" }
|
|
56
|
+
},
|
|
57
|
+
"radius": {
|
|
58
|
+
"sm": { "$value": "4px", "$type": "dimension" },
|
|
59
|
+
"md": { "$value": "16px", "$type": "dimension" }
|
|
60
|
+
},
|
|
61
|
+
"typography": {
|
|
62
|
+
"family-sans": { "$value": "Plus Jakarta Sans, system-ui, sans-serif", "$type": "fontFamily" }
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
"soft-minimal": {
|
|
66
|
+
"color": {
|
|
67
|
+
"primary": { "$value": "oklch(0.40 0.06 200)", "$type": "color" },
|
|
68
|
+
"bg-base": { "$value": "oklch(0.98 0.003 80)", "$type": "color" },
|
|
69
|
+
"bg-surface": { "$value": "oklch(1.00 0 0)", "$type": "color" }
|
|
70
|
+
},
|
|
71
|
+
"radius": {
|
|
72
|
+
"sm": { "$value": "6px", "$type": "dimension" },
|
|
73
|
+
"md": { "$value": "12px", "$type": "dimension" }
|
|
74
|
+
},
|
|
75
|
+
"typography": {
|
|
76
|
+
"family-sans": { "$value": "Inter, system-ui, sans-serif", "$type": "fontFamily" }
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
"dark-luxury": {
|
|
80
|
+
"color": {
|
|
81
|
+
"primary": { "$value": "oklch(0.78 0.12 85)", "$type": "color" },
|
|
82
|
+
"bg-base": { "$value": "oklch(0.08 0.005 250)", "$type": "color" },
|
|
83
|
+
"bg-surface": { "$value": "oklch(0.12 0.008 250)", "$type": "color" }
|
|
84
|
+
},
|
|
85
|
+
"radius": {
|
|
86
|
+
"sm": { "$value": "2px", "$type": "dimension" },
|
|
87
|
+
"md": { "$value": "6px", "$type": "dimension" }
|
|
88
|
+
},
|
|
89
|
+
"typography": {
|
|
90
|
+
"family-serif": { "$value": "Cormorant Garamond, serif", "$type": "fontFamily" },
|
|
91
|
+
"family-sans": { "$value": "Outfit, system-ui, sans-serif", "$type": "fontFamily" }
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
"cyberpunk": {
|
|
95
|
+
"color": {
|
|
96
|
+
"primary": { "$value": "oklch(0.75 0.28 160)", "$type": "color" },
|
|
97
|
+
"bg-base": { "$value": "oklch(0.05 0.01 280)", "$type": "color" },
|
|
98
|
+
"bg-surface": { "$value": "oklch(0.08 0.015 280)", "$type": "color" }
|
|
99
|
+
},
|
|
100
|
+
"radius": {
|
|
101
|
+
"sm": { "$value": "0px", "$type": "dimension" },
|
|
102
|
+
"md": { "$value": "4px", "$type": "dimension" }
|
|
103
|
+
},
|
|
104
|
+
"typography": {
|
|
105
|
+
"family-mono": { "$value": "JetBrains Mono, Fira Code, monospace", "$type": "fontFamily" }
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
"retro-analog": {
|
|
109
|
+
"color": {
|
|
110
|
+
"primary": { "$value": "oklch(0.50 0.18 45)", "$type": "color" },
|
|
111
|
+
"bg-base": { "$value": "oklch(0.94 0.015 70)", "$type": "color" },
|
|
112
|
+
"bg-surface": { "$value": "oklch(0.96 0.015 70)", "$type": "color" }
|
|
113
|
+
},
|
|
114
|
+
"radius": {
|
|
115
|
+
"sm": { "$value": "4px", "$type": "dimension" },
|
|
116
|
+
"md": { "$value": "8px", "$type": "dimension" }
|
|
117
|
+
},
|
|
118
|
+
"typography": {
|
|
119
|
+
"family-sans": { "$value": "Courier Prime, Courier, monospace", "$type": "fontFamily" }
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
|
|
124
|
+
"spacing": {
|
|
125
|
+
"xs": { "$value": "4px", "$type": "dimension" },
|
|
126
|
+
"sm": { "$value": "8px", "$type": "dimension" },
|
|
127
|
+
"md": { "$value": "16px", "$type": "dimension" },
|
|
128
|
+
"lg": { "$value": "24px", "$type": "dimension" },
|
|
129
|
+
"xl": { "$value": "32px", "$type": "dimension" }
|
|
130
|
+
},
|
|
131
|
+
|
|
132
|
+
"shadow": {
|
|
133
|
+
"sm": { "$value": "0 1px 3px oklch(0 0 0 / 0.08)", "$type": "shadow" },
|
|
134
|
+
"md": { "$value": "0 4px 12px oklch(0 0 0 / 0.12)", "$type": "shadow" },
|
|
135
|
+
"lg": { "$value": "0 12px 32px oklch(0 0 0 / 0.20)", "$type": "shadow" }
|
|
136
|
+
}
|
|
137
|
+
}
|
package/.agent/workflows/acf.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Distills human-written markdown documents into highly structured Agent Context Format (.acf) YAML files to minimize token usage and hallucination.
|
|
3
|
+
tools: Read, Grep, Glob, Bash, Edit, Write
|
|
4
|
+
version: 3.0.0
|
|
5
|
+
last-updated: 2026-07-30
|
|
6
|
+
required-skills:
|
|
7
|
+
- clean-code
|
|
8
|
+
- documentation-templates
|
|
9
|
+
scripts-binding:
|
|
10
|
+
- .agent/scripts/lint_runner.js
|
|
3
11
|
---
|
|
4
12
|
|
|
5
13
|
# /acf — Agent Context Format Distiller
|
|
@@ -8,13 +16,12 @@ $ARGUMENTS
|
|
|
8
16
|
|
|
9
17
|
---
|
|
10
18
|
|
|
11
|
-
##
|
|
19
|
+
## Mandatory Pre-Flight Context Inspection
|
|
12
20
|
|
|
13
|
-
|
|
14
|
-
Read
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
```
|
|
21
|
+
Before distilling markdown specs into `.acf` YAML files, you MUST inspect:
|
|
22
|
+
1. Target Document Source → Read source `.md` specification (PRD, design spec, or architecture doc)
|
|
23
|
+
2. Existing Context Registry (`context/*.acf`) → Check target directory to prevent duplicate context creation
|
|
24
|
+
3. YAML Schema Strictness → Validate output against ACF schema (rules, constraints, tech-stack, boundaries) before writing to disk
|
|
18
25
|
|
|
19
26
|
---
|
|
20
27
|
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Automated multi-stage API endpoint testing. Generates and runs auth-aware request sequences (login → use token → test CRUD → verify errors). Reports response codes, schema mismatches, and unexpected data.
|
|
3
|
-
|
|
3
|
+
tools: Read, Grep, Glob, Bash, Edit, Write
|
|
4
|
+
version: 3.0.0
|
|
5
|
+
last-updated: 2026-07-30
|
|
6
|
+
required-skills:
|
|
7
|
+
- testing-patterns
|
|
8
|
+
- api-patterns
|
|
9
|
+
- backend-security-expert
|
|
10
|
+
scripts-binding:
|
|
11
|
+
- .agent/scripts/test_runner.js
|
|
12
|
+
- .agent/scripts/security_scan.js
|
|
4
13
|
---
|
|
5
14
|
|
|
6
15
|
# /api-tester — Automated API Testing
|
|
@@ -9,14 +18,12 @@ $ARGUMENTS
|
|
|
9
18
|
|
|
10
19
|
---
|
|
11
20
|
|
|
12
|
-
##
|
|
21
|
+
## Mandatory Pre-Flight Context Inspection
|
|
13
22
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
□ .env.example / .env.test → Check for test database or mock API URLs
|
|
19
|
-
```
|
|
23
|
+
Before running automated API endpoint tests or auth-aware request sequences, you MUST inspect:
|
|
24
|
+
1. Target Route Definition & Data Schemas → Inspect route parameters, body validation schemas (Zod/Pydantic), and auth middleware
|
|
25
|
+
2. Test Server URL & Credentials (`.env.test`) → Verify base URL and test token environment variables
|
|
26
|
+
3. Multi-Stage Request Sequence → Enforce sequential execution: Auth Login → Token Capture → CRUD Operations → Error Edge Case Verification
|
|
20
27
|
|
|
21
28
|
---
|
|
22
29
|
|
|
@@ -1,6 +1,19 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: Full project audit combining security scan, lint, schema validation, test coverage, dependency analysis, and bundle analysis. Runs all scripts in priority order. Human review required before applying any fixes.
|
|
3
|
-
|
|
3
|
+
tools: Read, Grep, Glob, Bash, Edit, Write
|
|
4
|
+
version: 3.0.0
|
|
5
|
+
last-updated: 2026-07-30
|
|
6
|
+
required-skills:
|
|
7
|
+
- vulnerability-scanner
|
|
8
|
+
- clean-code
|
|
9
|
+
- code-review-checklist
|
|
10
|
+
scripts-binding:
|
|
11
|
+
- .agent/scripts/security_scan.js
|
|
12
|
+
- .agent/scripts/dependency_analyzer.js
|
|
13
|
+
- .agent/scripts/lint_runner.js
|
|
14
|
+
- .agent/scripts/schema_validator.js
|
|
15
|
+
- .agent/scripts/test_runner.js
|
|
16
|
+
- .agent/scripts/bundle_analyzer.js
|
|
4
17
|
---
|
|
5
18
|
|
|
6
19
|
# /audit — Complete Project Health Assessment
|
|
@@ -9,14 +22,12 @@ $ARGUMENTS
|
|
|
9
22
|
|
|
10
23
|
---
|
|
11
24
|
|
|
12
|
-
##
|
|
25
|
+
## Mandatory Pre-Flight Context Inspection
|
|
13
26
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
□ .agent/scripts/ → Check which audit scripts exist and are executable
|
|
19
|
-
```
|
|
27
|
+
Before triggering a full project audit, you MUST inspect:
|
|
28
|
+
1. Workspace Package Manifest (`package.json`) → Verify installed test frameworks, linters, and dependencies
|
|
29
|
+
2. Executable Scripts Inventory (`.agent/scripts/`) → Verify presence of `security_scan.js`, `lint_runner.js`, and `test_runner.js`
|
|
30
|
+
3. Pipeline Execution Constraints → Confirm fixed execution order (Security → Dependencies → Type Check → Lint → Schema → Tests → Bundle) and HALT rules on critical CVE findings
|
|
20
31
|
|
|
21
32
|
---
|
|
22
33
|
|