@fenixforce/edition-pro 0.1.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/dist/api/approval-routes.d.ts +15 -0
- package/dist/api/fleet-routes.d.ts +23 -0
- package/dist/api/integration-routes.d.ts +17 -0
- package/dist/api/middleware.d.ts +37 -0
- package/dist/boot.d.ts +37 -0
- package/dist/business/approval-queue.d.ts +94 -0
- package/dist/business/arena.d.ts +71 -0
- package/dist/business/best-of-n.d.ts +68 -0
- package/dist/business/brainstorm.d.ts +42 -0
- package/dist/business/compile-checker.d.ts +50 -0
- package/dist/business/debate.d.ts +38 -0
- package/dist/business/fleet-budget.d.ts +69 -0
- package/dist/business/fleet-config.d.ts +125 -0
- package/dist/business/fleet.d.ts +85 -0
- package/dist/business/handoff.d.ts +56 -0
- package/dist/business/hat-system.d.ts +57 -0
- package/dist/business/index.d.ts +44 -0
- package/dist/business/integration-registry.d.ts +66 -0
- package/dist/business/node-pipeline.d.ts +62 -0
- package/dist/business/oracle.d.ts +64 -0
- package/dist/business/roles/index.d.ts +7 -0
- package/dist/business/roles/judge.d.ts +24 -0
- package/dist/business/roles/planner.d.ts +30 -0
- package/dist/business/roles/types.d.ts +37 -0
- package/dist/business/roles/worker.d.ts +25 -0
- package/dist/business/router.d.ts +75 -0
- package/dist/business/shared-memory.d.ts +85 -0
- package/dist/business/status-detector.d.ts +52 -0
- package/dist/business/swarm-registry.d.ts +63 -0
- package/dist/business/templates.d.ts +55 -0
- package/dist/business/workspace-manager.d.ts +105 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.js +638 -0
- package/dist/infrastructure/pty-agent.d.ts +74 -0
- package/dist/migrations/migrate.d.ts +7 -0
- package/dist/migrations/runner.d.ts +49 -0
- package/dist/workspace/worktree.d.ts +69 -0
- package/package.json +37 -0
- package/skills/builtin/academic-researcher/SKILL.md +51 -0
- package/skills/builtin/advanced-recon/SKILL.md +75 -0
- package/skills/builtin/agent-governance/SKILL.md +122 -0
- package/skills/builtin/algorithmic-art/SKILL.md +55 -0
- package/skills/builtin/api-attack-surface-mapper/SKILL.md +88 -0
- package/skills/builtin/api-development/SKILL.md +147 -0
- package/skills/builtin/api-exploit-prover/SKILL.md +74 -0
- package/skills/builtin/api-integration/SKILL.md +73 -0
- package/skills/builtin/api-security-tester/SKILL.md +82 -0
- package/skills/builtin/api-test-executor/SKILL.md +62 -0
- package/skills/builtin/app-store-optimization/SKILL.md +46 -0
- package/skills/builtin/audio-tour-guide/SKILL.md +18 -0
- package/skills/builtin/auth-flow-operator/SKILL.md +70 -0
- package/skills/builtin/autonomous-rag/SKILL.md +21 -0
- package/skills/builtin/backend-development/SKILL.md +265 -0
- package/skills/builtin/binary-analysis-analyst/SKILL.md +61 -0
- package/skills/builtin/binary-analysis-core/SKILL.md +65 -0
- package/skills/builtin/binary-recon/SKILL.md +64 -0
- package/skills/builtin/blackboard-coordination/SKILL.md +56 -0
- package/skills/builtin/blog-to-podcast/SKILL.md +18 -0
- package/skills/builtin/blog-writing/SKILL.md +36 -0
- package/skills/builtin/brainstorming/SKILL.md +69 -0
- package/skills/builtin/brand-design/SKILL.md +42 -0
- package/skills/builtin/ci-cd-pipelines/SKILL.md +210 -0
- package/skills/builtin/cloud-infrastructure/SKILL.md +140 -0
- package/skills/builtin/code-review/SKILL.md +88 -0
- package/skills/builtin/code-review-analyst/SKILL.md +96 -0
- package/skills/builtin/code-review-recon/SKILL.md +64 -0
- package/skills/builtin/code-review-verifier/SKILL.md +55 -0
- package/skills/builtin/coding-agent-team/SKILL.md +13 -0
- package/skills/builtin/competitor-intelligence/SKILL.md +39 -0
- package/skills/builtin/content-engine/SKILL.md +82 -0
- package/skills/builtin/context7-docs/SKILL.md +145 -0
- package/skills/builtin/copywriting/SKILL.md +38 -0
- package/skills/builtin/corrective-rag/SKILL.md +19 -0
- package/skills/builtin/cost-optimization/SKILL.md +131 -0
- package/skills/builtin/crypto-vulnerability-analyst/SKILL.md +64 -0
- package/skills/builtin/customer-support/SKILL.md +48 -0
- package/skills/builtin/customer-voice-support/SKILL.md +43 -0
- package/skills/builtin/data-analysis/SKILL.md +57 -0
- package/skills/builtin/data-visualization/SKILL.md +33 -0
- package/skills/builtin/database-design/SKILL.md +119 -0
- package/skills/builtin/decision-helper/SKILL.md +84 -0
- package/skills/builtin/deep-research/SKILL.md +68 -0
- package/skills/builtin/deepwiki-research/SKILL.md +115 -0
- package/skills/builtin/dependency-audit/SKILL.md +46 -0
- package/skills/builtin/doc-coauthoring/SKILL.md +48 -0
- package/skills/builtin/docker-deployment/SKILL.md +243 -0
- package/skills/builtin/docx-generation/SKILL.md +135 -0
- package/skills/builtin/dry-run-harness/SKILL.md +61 -0
- package/skills/builtin/editor/SKILL.md +44 -0
- package/skills/builtin/email-drafter/SKILL.md +42 -0
- package/skills/builtin/error-handling/SKILL.md +82 -0
- package/skills/builtin/eval-harness/SKILL.md +197 -0
- package/skills/builtin/evaluation-framework/SKILL.md +51 -0
- package/skills/builtin/exploit-writer/SKILL.md +63 -0
- package/skills/builtin/fact-checker/SKILL.md +51 -0
- package/skills/builtin/filesystem-context/SKILL.md +47 -0
- package/skills/builtin/financial-coach/SKILL.md +18 -0
- package/skills/builtin/finding-chain-correlator/SKILL.md +70 -0
- package/skills/builtin/finding-verifier/SKILL.md +65 -0
- package/skills/builtin/frontend-design/SKILL.md +104 -0
- package/skills/builtin/frontend-development/SKILL.md +227 -0
- package/skills/builtin/frontend-slides/SKILL.md +155 -0
- package/skills/builtin/fullstack-project/SKILL.md +286 -0
- package/skills/builtin/game-development/SKILL.md +60 -0
- package/skills/builtin/git-workflow/SKILL.md +44 -0
- package/skills/builtin/i18n-localization/SKILL.md +38 -0
- package/skills/builtin/image-prompt-engineering/SKILL.md +37 -0
- package/skills/builtin/investment-research/SKILL.md +33 -0
- package/skills/builtin/investor-materials/SKILL.md +90 -0
- package/skills/builtin/javascript-surface-analyzer/SKILL.md +66 -0
- package/skills/builtin/markdown-reports/SKILL.md +68 -0
- package/skills/builtin/market-research/SKILL.md +69 -0
- package/skills/builtin/mcp-builder/SKILL.md +86 -0
- package/skills/builtin/meeting-notes/SKILL.md +47 -0
- package/skills/builtin/memory-safety-analyst/SKILL.md +61 -0
- package/skills/builtin/meta-controller/SKILL.md +44 -0
- package/skills/builtin/mixture-of-agents/SKILL.md +53 -0
- package/skills/builtin/monitoring-observability/SKILL.md +169 -0
- package/skills/builtin/negotiation-simulator/SKILL.md +24 -0
- package/skills/builtin/nestjs-development/SKILL.md +56 -0
- package/skills/builtin/nextjs-development/SKILL.md +55 -0
- package/skills/builtin/parallel-dispatch/SKILL.md +83 -0
- package/skills/builtin/pdf-generation/SKILL.md +169 -0
- package/skills/builtin/personal-finance/SKILL.md +17 -0
- package/skills/builtin/pev-workflow/SKILL.md +62 -0
- package/skills/builtin/planning-with-files/SKILL.md +59 -0
- package/skills/builtin/pptx-generation/SKILL.md +117 -0
- package/skills/builtin/prisma-orm/SKILL.md +48 -0
- package/skills/builtin/rag-database-routing/SKILL.md +38 -0
- package/skills/builtin/rapid-prototyping/SKILL.md +152 -0
- package/skills/builtin/react-development/SKILL.md +244 -0
- package/skills/builtin/react-native-mobile/SKILL.md +113 -0
- package/skills/builtin/refactoring/SKILL.md +39 -0
- package/skills/builtin/reflexive-metacognition/SKILL.md +29 -0
- package/skills/builtin/riper-workflow/SKILL.md +214 -0
- package/skills/builtin/security-audit/SKILL.md +113 -0
- package/skills/builtin/security-self-audit/SKILL.md +311 -0
- package/skills/builtin/self-evolving-agent/SKILL.md +28 -0
- package/skills/builtin/self-improvement-loop/SKILL.md +58 -0
- package/skills/builtin/semantic-search/SKILL.md +93 -0
- package/skills/builtin/seo-audit-team/SKILL.md +27 -0
- package/skills/builtin/seo-optimization/SKILL.md +49 -0
- package/skills/builtin/server-management/SKILL.md +190 -0
- package/skills/builtin/social-media-content/SKILL.md +50 -0
- package/skills/builtin/sprint-planner/SKILL.md +49 -0
- package/skills/builtin/strategic-compact/SKILL.md +61 -0
- package/skills/builtin/strategy-advisor/SKILL.md +51 -0
- package/skills/builtin/structured-thinking/SKILL.md +70 -0
- package/skills/builtin/subagent-development/SKILL.md +105 -0
- package/skills/builtin/system-design/SKILL.md +66 -0
- package/skills/builtin/systematic-debugging/SKILL.md +87 -0
- package/skills/builtin/tailwind-css/SKILL.md +55 -0
- package/skills/builtin/taint-flow-tracer/SKILL.md +89 -0
- package/skills/builtin/teaching-agent-team/SKILL.md +32 -0
- package/skills/builtin/tech-debt-manager/SKILL.md +67 -0
- package/skills/builtin/technical-documentation/SKILL.md +47 -0
- package/skills/builtin/test-driven-development/SKILL.md +70 -0
- package/skills/builtin/theme-factory/SKILL.md +244 -0
- package/skills/builtin/threat-model-generator/SKILL.md +105 -0
- package/skills/builtin/trust-layer/SKILL.md +43 -0
- package/skills/builtin/typescript-patterns/SKILL.md +61 -0
- package/skills/builtin/ui-ux-design/SKILL.md +75 -0
- package/skills/builtin/verification-before-completion/SKILL.md +41 -0
- package/skills/builtin/verification-loop/SKILL.md +120 -0
- package/skills/builtin/waf-bypass-agent/SKILL.md +97 -0
- package/skills/builtin/web-artifacts-builder/SKILL.md +117 -0
- package/skills/builtin/web-assessment-executor/SKILL.md +66 -0
- package/skills/builtin/web-exploit-prover/SKILL.md +58 -0
- package/skills/builtin/web-scraping/SKILL.md +63 -0
- package/skills/builtin/webapp-testing/SKILL.md +86 -0
- package/skills/builtin/webhook-development/SKILL.md +62 -0
- package/skills/builtin/writing-skills/SKILL.md +67 -0
- package/skills/builtin/xlsx-generation/SKILL.md +116 -0
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# Threat Model Generator
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Translate architecture and feature behavior into an actionable security test backlog.
|
|
5
|
+
|
|
6
|
+
## Inputs
|
|
7
|
+
- `system_description`
|
|
8
|
+
- `feature_inventory`
|
|
9
|
+
- `data_flows`
|
|
10
|
+
- `roles_permissions`
|
|
11
|
+
- `deployment_context` (optional)
|
|
12
|
+
|
|
13
|
+
## Modeling Workflow
|
|
14
|
+
### Phase 1: Asset and Boundary Mapping
|
|
15
|
+
1. Identify sensitive assets and trust boundaries.
|
|
16
|
+
2. Map data ingress, processing, and egress points.
|
|
17
|
+
3. Identify privileged operations and administrative paths.
|
|
18
|
+
|
|
19
|
+
### Phase 2: Threat Enumeration
|
|
20
|
+
1. Enumerate attacker objectives per feature.
|
|
21
|
+
2. Enumerate abuse primitives per parameter and state transition.
|
|
22
|
+
3. Enumerate systemic risks from shared components.
|
|
23
|
+
|
|
24
|
+
### Phase 3: Scenario Construction
|
|
25
|
+
1. Build concrete scenario with attacker preconditions.
|
|
26
|
+
2. Define target operation and exploit mechanism.
|
|
27
|
+
3. Define success signal and defensive expectation.
|
|
28
|
+
|
|
29
|
+
### Phase 4: Prioritization
|
|
30
|
+
1. Score by likelihood, impact, and detectability.
|
|
31
|
+
2. Tag fast-win vs deep-investigation cases.
|
|
32
|
+
3. Highlight assumptions and missing architecture details.
|
|
33
|
+
|
|
34
|
+
## Mandatory Coverage Areas
|
|
35
|
+
- authentication and session handling
|
|
36
|
+
- authorization and object access
|
|
37
|
+
- injection and parser abuse
|
|
38
|
+
- workflow/state manipulation
|
|
39
|
+
- file and data handling
|
|
40
|
+
- configuration and deployment weaknesses
|
|
41
|
+
|
|
42
|
+
## Output Contract
|
|
43
|
+
```json
|
|
44
|
+
{
|
|
45
|
+
"threat_scenarios": [],
|
|
46
|
+
"test_cases": [],
|
|
47
|
+
"risk_priorities": [],
|
|
48
|
+
"assumptions": [],
|
|
49
|
+
"unknowns": []
|
|
50
|
+
}
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## Constraints
|
|
54
|
+
- Ground scenarios in provided architecture.
|
|
55
|
+
- Flag unsupported assumptions explicitly.
|
|
56
|
+
|
|
57
|
+
## Quality Checklist
|
|
58
|
+
- [ ] Each scenario maps to a real asset.
|
|
59
|
+
- [ ] Test cases are executable.
|
|
60
|
+
- [ ] Prioritization rationale is clear.
|
|
61
|
+
|
|
62
|
+
## Operator Notes
|
|
63
|
+
### Risk Scoring Inputs
|
|
64
|
+
- attacker starting privilege
|
|
65
|
+
- required chain length
|
|
66
|
+
- probability of reliable execution
|
|
67
|
+
- blast radius if successful
|
|
68
|
+
|
|
69
|
+
### Prioritization Output
|
|
70
|
+
- `immediate`: low-effort high-impact chains/findings.
|
|
71
|
+
- `next`: moderate effort with clear payoff.
|
|
72
|
+
- `watch`: plausible but currently low confidence.
|
|
73
|
+
|
|
74
|
+
### Reporting Rules
|
|
75
|
+
- Include one-line executive summary per chain/finding.
|
|
76
|
+
- Include exact blocker needed to move an inconclusive item forward.
|
|
77
|
+
- Include confidence rationale in plain technical language.
|
|
78
|
+
|
|
79
|
+
## Quick Scenarios
|
|
80
|
+
### Scenario A: Access Check Placement
|
|
81
|
+
- Trace data fetch point.
|
|
82
|
+
- Trace policy check point.
|
|
83
|
+
- Determine whether check occurs before use.
|
|
84
|
+
- Identify alternate path without check.
|
|
85
|
+
|
|
86
|
+
### Scenario B: Sanitization Mismatch
|
|
87
|
+
- Map sink execution context.
|
|
88
|
+
- Map sanitizer type and location.
|
|
89
|
+
- Validate context compatibility.
|
|
90
|
+
- Find branch that bypasses sanitizer.
|
|
91
|
+
|
|
92
|
+
### Scenario C: Adjacent Pattern Sweep
|
|
93
|
+
- Identify sibling handlers/sinks.
|
|
94
|
+
- Compare guard and validation parity.
|
|
95
|
+
- Flag inconsistent control patterns.
|
|
96
|
+
- Prioritize high-impact siblings.
|
|
97
|
+
|
|
98
|
+
## Conditional Decision Matrix
|
|
99
|
+
| Condition | Action | Evidence Requirement |
|
|
100
|
+
|---|---|---|
|
|
101
|
+
| Finding signal unstable | downgrade confidence and add retest plan | repeated run variance log |
|
|
102
|
+
| Chain link missing prerequisite | split chain and mark dependency blocker | prerequisite graph |
|
|
103
|
+
| Impact appears low in isolation | evaluate chain amplification paths | chain-level impact narrative |
|
|
104
|
+
| Mitigation claim is partial | verify alternate path and state variants | mitigation bypass check |
|
|
105
|
+
| Environment blocker dominates | classify inconclusive with unblock requests | blocker evidence |
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Trust Layer
|
|
2
|
+
|
|
3
|
+
## Trust Levels
|
|
4
|
+
|
|
5
|
+
| Level | Score | Capabilities |
|
|
6
|
+
|-------|-------|-------------|
|
|
7
|
+
| SUSPENDED | 0-299 | Cannot execute tools |
|
|
8
|
+
| RESTRICTED | 300-499 | Read-only tools |
|
|
9
|
+
| BASIC | 500-699 | Standard tool access |
|
|
10
|
+
| TRUSTED | 700-899 | Elevated access |
|
|
11
|
+
| PRIVILEGED | 900-1000 | Full access including destructive |
|
|
12
|
+
|
|
13
|
+
## Trust Adjustment
|
|
14
|
+
|
|
15
|
+
- Successful task completion: +10 points
|
|
16
|
+
- Failed task (caught by verifier): -20 points
|
|
17
|
+
- Security violation attempt: -100 points
|
|
18
|
+
- User positive feedback: +15 points
|
|
19
|
+
- User negative feedback: -25 points
|
|
20
|
+
|
|
21
|
+
## Delegation Chains
|
|
22
|
+
|
|
23
|
+
When Agent A delegates to Agent B:
|
|
24
|
+
- B's permission set = intersection of A's permissions and B's trust level
|
|
25
|
+
- B cannot acquire permissions A doesn't have
|
|
26
|
+
- Delegation depth tracked (max 3 levels)
|
|
27
|
+
- Each level narrows scope further
|
|
28
|
+
|
|
29
|
+
## Agent Identity
|
|
30
|
+
|
|
31
|
+
Every agent registered with:
|
|
32
|
+
- Unique ID, name, creation timestamp
|
|
33
|
+
- Trust score (starts at 500 BASIC)
|
|
34
|
+
- Permission set (derived from trust level)
|
|
35
|
+
- Delegation history (who delegated what)
|
|
36
|
+
- Audit trail (all actions taken)
|
|
37
|
+
|
|
38
|
+
## Rules
|
|
39
|
+
|
|
40
|
+
- Trust is earned through behavior, not declared
|
|
41
|
+
- Scope always narrows during delegation, never widens
|
|
42
|
+
- All trust changes logged with reason
|
|
43
|
+
- Suspended agents can be reinstated only by admin
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: typescript-patterns
|
|
3
|
+
description: "Use this skill for advanced TypeScript: generics, branded types, discriminated unions, type-level programming, or TypeScript best practices. Triggers: 'TypeScript', 'generics', 'type safety', 'branded types', 'discriminated union', 'type guard', or requests for advanced typing patterns."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Advanced TypeScript Patterns
|
|
8
|
+
|
|
9
|
+
## What This Skill Does
|
|
10
|
+
|
|
11
|
+
Write type-safe TypeScript that makes invalid states unrepresentable. Generics, branded types, discriminated unions, type guards, and utility types.
|
|
12
|
+
|
|
13
|
+
## Key Patterns
|
|
14
|
+
|
|
15
|
+
### Discriminated Unions (state machines)
|
|
16
|
+
```typescript
|
|
17
|
+
type RequestState =
|
|
18
|
+
| { status: "idle" }
|
|
19
|
+
| { status: "loading" }
|
|
20
|
+
| { status: "success"; data: User[] }
|
|
21
|
+
| { status: "error"; error: string };
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### Branded Types (prevent mixing IDs)
|
|
25
|
+
```typescript
|
|
26
|
+
type UserId = string & { __brand: "UserId" };
|
|
27
|
+
type PostId = string & { __brand: "PostId" };
|
|
28
|
+
|
|
29
|
+
function createUserId(id: string): UserId { return id as UserId; }
|
|
30
|
+
// Now: getUser(postId) is a type error
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### Type Guards
|
|
34
|
+
```typescript
|
|
35
|
+
function isSuccess(state: RequestState): state is { status: "success"; data: User[] } {
|
|
36
|
+
return state.status === "success";
|
|
37
|
+
}
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### Exhaustive Switch
|
|
41
|
+
```typescript
|
|
42
|
+
function assertNever(x: never): never {
|
|
43
|
+
throw new Error(`Unexpected value: ${x}`);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
switch (state.status) {
|
|
47
|
+
case "idle": return handleIdle();
|
|
48
|
+
case "loading": return handleLoading();
|
|
49
|
+
case "success": return handleSuccess(state.data);
|
|
50
|
+
case "error": return handleError(state.error);
|
|
51
|
+
default: assertNever(state); // Compile error if a case is missed
|
|
52
|
+
}
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Rules
|
|
56
|
+
|
|
57
|
+
- Enable strict mode in tsconfig.json (always)
|
|
58
|
+
- No `any` types. Use `unknown` and type guard instead.
|
|
59
|
+
- Prefer interfaces for object shapes, types for unions and intersections
|
|
60
|
+
- Use const assertions for literal types: `as const`
|
|
61
|
+
- Exhaustive switch statements for discriminated unions
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ui-ux-design
|
|
3
|
+
description: "Use this skill when the user asks to design user flows, wireframes, component hierarchies, or make UX decisions. Triggers: 'UI design', 'UX', 'user flow', 'wireframe', 'component hierarchy', 'user experience', 'information architecture', 'accessibility', 'design system', or requests for design decisions and specifications."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# UI/UX Design
|
|
8
|
+
|
|
9
|
+
## What This Skill Does
|
|
10
|
+
|
|
11
|
+
Make design decisions: user flows, information architecture, component hierarchy, accessibility, interaction patterns. Produces design specs and recommendations, not visual mockups.
|
|
12
|
+
|
|
13
|
+
## User Flow Design
|
|
14
|
+
|
|
15
|
+
Map every user journey as a sequence: Entry Point → Steps → Decision Points → Outcomes.
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
Landing Page → Sign Up Form → Email Verification → Onboarding → Dashboard
|
|
19
|
+
↓
|
|
20
|
+
Already have account? → Login → Dashboard
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
For each screen: what does the user see, what can they do, what happens next?
|
|
24
|
+
|
|
25
|
+
## Information Architecture
|
|
26
|
+
|
|
27
|
+
- **Card sort** the content: group related items by user mental model, not org structure
|
|
28
|
+
- **Navigation depth**: max 3 clicks to any content
|
|
29
|
+
- **Labels**: use user language, not internal jargon
|
|
30
|
+
- **Progressive disclosure**: show essentials first, details on demand
|
|
31
|
+
|
|
32
|
+
## Component Hierarchy
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
Page
|
|
36
|
+
├── Header (nav, search, user menu)
|
|
37
|
+
├── Main Content
|
|
38
|
+
│ ├── Page Title + Description
|
|
39
|
+
│ ├── Filters/Controls
|
|
40
|
+
│ ├── Content Area
|
|
41
|
+
│ │ ├── Item Cards (repeating)
|
|
42
|
+
│ │ └── Empty State
|
|
43
|
+
│ └── Pagination
|
|
44
|
+
├── Sidebar (optional)
|
|
45
|
+
└── Footer
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Accessibility (WCAG AA)
|
|
49
|
+
|
|
50
|
+
- Color contrast: 4.5:1 for text, 3:1 for large text and UI elements
|
|
51
|
+
- Touch targets: minimum 44x44px
|
|
52
|
+
- Focus indicators: visible on all interactive elements
|
|
53
|
+
- Screen reader: semantic HTML, ARIA labels, live regions for dynamic content
|
|
54
|
+
- Keyboard: all functionality accessible without mouse
|
|
55
|
+
- Motion: respect prefers-reduced-motion
|
|
56
|
+
|
|
57
|
+
## Interaction Patterns
|
|
58
|
+
|
|
59
|
+
| Pattern | When to Use |
|
|
60
|
+
|---------|-------------|
|
|
61
|
+
| Modal dialog | Confirm destructive action, focused data entry |
|
|
62
|
+
| Inline editing | Quick updates to single fields |
|
|
63
|
+
| Toast notification | Non-blocking success/error feedback |
|
|
64
|
+
| Skeleton loading | Content loading (better than spinner for layout stability) |
|
|
65
|
+
| Infinite scroll | Social feeds, image galleries |
|
|
66
|
+
| Pagination | Data tables, search results |
|
|
67
|
+
| Drawer/Panel | Supplementary content, filters on mobile |
|
|
68
|
+
|
|
69
|
+
## Rules
|
|
70
|
+
|
|
71
|
+
- Design for the most common use case, accommodate edge cases
|
|
72
|
+
- Every interactive element needs: default, hover, active, focus, disabled, and loading states
|
|
73
|
+
- Error messages must tell the user what went wrong AND how to fix it
|
|
74
|
+
- Empty states must guide the user to take action
|
|
75
|
+
- Test with real content, not lorem ipsum
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: verification-before-completion
|
|
3
|
+
description: "Use this skill before claiming any task is done. The Iron Law: no completion claims without fresh verification evidence in the current message. Triggers: 'done', 'complete', 'finished', 'ready', 'ship it', 'all set', or any claim that work is complete."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Verification Before Completion
|
|
8
|
+
|
|
9
|
+
## The Iron Law
|
|
10
|
+
|
|
11
|
+
No completion claims without fresh verification evidence. Every "it's done" must include proof from the current session.
|
|
12
|
+
|
|
13
|
+
## Required Evidence
|
|
14
|
+
|
|
15
|
+
| Claim | Required Proof |
|
|
16
|
+
|-------|---------------|
|
|
17
|
+
| "Code works" | Test output showing pass |
|
|
18
|
+
| "Bug is fixed" | Reproducer now passes + regression test |
|
|
19
|
+
| "Build succeeds" | Build command output |
|
|
20
|
+
| "Types are clean" | TypeScript compiler output with zero errors |
|
|
21
|
+
| "Tests pass" | Test runner output |
|
|
22
|
+
| "Deployed" | Health check response from production URL |
|
|
23
|
+
| "Document is complete" | File exists, opens without errors |
|
|
24
|
+
|
|
25
|
+
## Rationalization Prevention
|
|
26
|
+
|
|
27
|
+
| Excuse | Rebuttal |
|
|
28
|
+
|--------|----------|
|
|
29
|
+
| "It should work based on the changes" | Run it and show the output |
|
|
30
|
+
| "I tested it earlier" | Test it NOW. Earlier evidence is stale. |
|
|
31
|
+
| "The fix is obvious" | Obvious fixes still need verification |
|
|
32
|
+
| "It's a small change" | Small changes break things too |
|
|
33
|
+
| "I'm confident" | Confidence without evidence is a guess |
|
|
34
|
+
|
|
35
|
+
## Rules
|
|
36
|
+
|
|
37
|
+
- Run the verification command in the current message
|
|
38
|
+
- Read the output
|
|
39
|
+
- Only THEN claim completion
|
|
40
|
+
- If verification fails, fix the issue and verify again
|
|
41
|
+
- Never say "should work" or "I believe this fixes it" without evidence.
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
# Verification Loop
|
|
2
|
+
|
|
3
|
+
A comprehensive verification system for Claude Code sessions.
|
|
4
|
+
|
|
5
|
+
## When to Use
|
|
6
|
+
|
|
7
|
+
Invoke this skill:
|
|
8
|
+
- After completing a feature or significant code change
|
|
9
|
+
- Before creating a PR
|
|
10
|
+
- When you want to ensure quality gates pass
|
|
11
|
+
- After refactoring
|
|
12
|
+
|
|
13
|
+
## Verification Phases
|
|
14
|
+
|
|
15
|
+
### Phase 1: Build Verification
|
|
16
|
+
```bash
|
|
17
|
+
# Check if project builds
|
|
18
|
+
npm run build 2>&1 | tail -20
|
|
19
|
+
# OR
|
|
20
|
+
pnpm build 2>&1 | tail -20
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
If build fails, STOP and fix before continuing.
|
|
24
|
+
|
|
25
|
+
### Phase 2: Type Check
|
|
26
|
+
```bash
|
|
27
|
+
# TypeScript projects
|
|
28
|
+
npx tsc --noEmit 2>&1 | head -30
|
|
29
|
+
|
|
30
|
+
# Python projects
|
|
31
|
+
pyright . 2>&1 | head -30
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Report all type errors. Fix critical ones before continuing.
|
|
35
|
+
|
|
36
|
+
### Phase 3: Lint Check
|
|
37
|
+
```bash
|
|
38
|
+
# JavaScript/TypeScript
|
|
39
|
+
npm run lint 2>&1 | head -30
|
|
40
|
+
|
|
41
|
+
# Python
|
|
42
|
+
ruff check . 2>&1 | head -30
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Phase 4: Test Suite
|
|
46
|
+
```bash
|
|
47
|
+
# Run tests with coverage
|
|
48
|
+
npm run test -- --coverage 2>&1 | tail -50
|
|
49
|
+
|
|
50
|
+
# Check coverage threshold
|
|
51
|
+
# Target: 80% minimum
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Report:
|
|
55
|
+
- Total tests: X
|
|
56
|
+
- Passed: X
|
|
57
|
+
- Failed: X
|
|
58
|
+
- Coverage: X%
|
|
59
|
+
|
|
60
|
+
### Phase 5: Security Scan
|
|
61
|
+
```bash
|
|
62
|
+
# Check for secrets
|
|
63
|
+
grep -rn "sk-" --include="*.ts" --include="*.js" . 2>/dev/null | head -10
|
|
64
|
+
grep -rn "api_key" --include="*.ts" --include="*.js" . 2>/dev/null | head -10
|
|
65
|
+
|
|
66
|
+
# Check for console.log
|
|
67
|
+
grep -rn "console.log" --include="*.ts" --include="*.tsx" src/ 2>/dev/null | head -10
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Phase 6: Diff Review
|
|
71
|
+
```bash
|
|
72
|
+
# Show what changed
|
|
73
|
+
git diff --stat
|
|
74
|
+
git diff HEAD~1 --name-only
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Review each changed file for:
|
|
78
|
+
- Unintended changes
|
|
79
|
+
- Missing error handling
|
|
80
|
+
- Potential edge cases
|
|
81
|
+
|
|
82
|
+
## Output Format
|
|
83
|
+
|
|
84
|
+
After running all phases, produce a verification report:
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
VERIFICATION REPORT
|
|
88
|
+
==================
|
|
89
|
+
|
|
90
|
+
Build: [PASS/FAIL]
|
|
91
|
+
Types: [PASS/FAIL] (X errors)
|
|
92
|
+
Lint: [PASS/FAIL] (X warnings)
|
|
93
|
+
Tests: [PASS/FAIL] (X/Y passed, Z% coverage)
|
|
94
|
+
Security: [PASS/FAIL] (X issues)
|
|
95
|
+
Diff: [X files changed]
|
|
96
|
+
|
|
97
|
+
Overall: [READY/NOT READY] for PR
|
|
98
|
+
|
|
99
|
+
Issues to Fix:
|
|
100
|
+
1. ...
|
|
101
|
+
2. ...
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## Continuous Mode
|
|
105
|
+
|
|
106
|
+
For long sessions, run verification every 15 minutes or after major changes:
|
|
107
|
+
|
|
108
|
+
```markdown
|
|
109
|
+
Set a mental checkpoint:
|
|
110
|
+
- After completing each function
|
|
111
|
+
- After finishing a component
|
|
112
|
+
- Before moving to next task
|
|
113
|
+
|
|
114
|
+
Run: /verify
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
## Integration with Hooks
|
|
118
|
+
|
|
119
|
+
This skill complements PostToolUse hooks but provides deeper verification.
|
|
120
|
+
Hooks catch issues immediately; this skill provides comprehensive review.
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# WAF Bypass Agent
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Convert blocked attack attempts into controlled, hypothesis-driven bypass testing, then prove whether bypass reaches vulnerable application logic.
|
|
5
|
+
|
|
6
|
+
## Inputs
|
|
7
|
+
- `target_endpoint`
|
|
8
|
+
- `blocked_payload`
|
|
9
|
+
- `request_context` (method, content type, headers)
|
|
10
|
+
- `response_samples` (blocked and allowed)
|
|
11
|
+
- `test_constraints` (rate limits, no-destructive rules)
|
|
12
|
+
|
|
13
|
+
## Ground Rules
|
|
14
|
+
- Keep a strict control group in every run batch.
|
|
15
|
+
- Test one hypothesis family at a time.
|
|
16
|
+
- Do not call success until application-layer behavior changes.
|
|
17
|
+
- Track exact transformations to maintain reproducibility.
|
|
18
|
+
|
|
19
|
+
## Phase 1: Filter Fingerprinting
|
|
20
|
+
Identify where filtering happens (edge, gateway, app middleware). Identify normalization/canonicalization order and signature-driven vs behavior-driven blocking.
|
|
21
|
+
|
|
22
|
+
### Signal Collection
|
|
23
|
+
Capture per request: status code, response length/hash, response body signature markers, block page tokens and headers, latency band.
|
|
24
|
+
|
|
25
|
+
### Differential Baselines
|
|
26
|
+
1. Known-benign control request.
|
|
27
|
+
2. Known-block probe using original payload pattern.
|
|
28
|
+
3. Near-benign variant with one suspicious token removed.
|
|
29
|
+
|
|
30
|
+
## Phase 2: Hypothesis Generation
|
|
31
|
+
### Core Hypothesis Families
|
|
32
|
+
1. Decode-order mismatch.
|
|
33
|
+
2. Syntax/token boundary mismatch.
|
|
34
|
+
3. Content-type parser mismatch.
|
|
35
|
+
4. Multi-parameter reconstruction mismatch.
|
|
36
|
+
5. Secondary channel mismatch (header/cookie/body disagreement).
|
|
37
|
+
|
|
38
|
+
## Phase 3: Conditional Playbook
|
|
39
|
+
### Branch A: Edge Signature Block
|
|
40
|
+
Reduce obvious signatures, split payload across parameters, move payload to alternate ingestion vector.
|
|
41
|
+
|
|
42
|
+
### Branch B: Parser Differential
|
|
43
|
+
Vary content type with equivalent semantics, vary duplicate key placement, vary nested object shape.
|
|
44
|
+
|
|
45
|
+
### Branch C: Tokenization/Normalization Gap
|
|
46
|
+
Adjust delimiter and whitespace boundaries, adjust key casing, use equivalent encoding layers.
|
|
47
|
+
|
|
48
|
+
## Phase 4: Variant Families
|
|
49
|
+
### Family 1: Encoding and Decode Order
|
|
50
|
+
Single-encoded, double-encoded, and mixed encoding variants.
|
|
51
|
+
|
|
52
|
+
### Family 2: Structural Re-Expression
|
|
53
|
+
Semantically equivalent JSON shapes, object vs array wrapping, field reordering.
|
|
54
|
+
|
|
55
|
+
### Family 3: Content-Type Differential
|
|
56
|
+
Same semantic payload as JSON, form-url-encoded, multipart.
|
|
57
|
+
|
|
58
|
+
### Family 4: Parameter Reconstruction
|
|
59
|
+
Split sensitive token across two inputs merged server-side.
|
|
60
|
+
|
|
61
|
+
### Family 5: Context Shifting
|
|
62
|
+
Move payload from primary to secondary/optional fields.
|
|
63
|
+
|
|
64
|
+
## Phase 5: Validation
|
|
65
|
+
1. Confirm bypass request is accepted.
|
|
66
|
+
2. Confirm application-layer operation changed.
|
|
67
|
+
3. Confirm effect is tied to payload semantics.
|
|
68
|
+
4. Confirm replay with fresh session/context.
|
|
69
|
+
|
|
70
|
+
## Bypass Quality Score
|
|
71
|
+
- `Q1`: filter evasion only, no vulnerable path proof.
|
|
72
|
+
- `Q2`: vulnerable path reached, low reliability.
|
|
73
|
+
- `Q3`: reproducible vulnerable path reach with stable conditions.
|
|
74
|
+
- `Q4`: reproducible reach + impact proof.
|
|
75
|
+
|
|
76
|
+
## Output Contract
|
|
77
|
+
```json
|
|
78
|
+
{
|
|
79
|
+
"target_endpoint": "",
|
|
80
|
+
"filter_fingerprint": {},
|
|
81
|
+
"hypotheses": [],
|
|
82
|
+
"variant_runs": [],
|
|
83
|
+
"confirmed_bypasses": [],
|
|
84
|
+
"rejected_variants": [],
|
|
85
|
+
"defensive_recommendations": []
|
|
86
|
+
}
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Constraints
|
|
90
|
+
- No blind payload spraying.
|
|
91
|
+
- Respect rate/abuse limits.
|
|
92
|
+
- Preserve minimal-impact testing discipline.
|
|
93
|
+
|
|
94
|
+
## Quality Checklist
|
|
95
|
+
- [ ] Every bypass claim includes controls and replay.
|
|
96
|
+
- [ ] Security-relevant path reach is demonstrated.
|
|
97
|
+
- [ ] Root cause and defensive guidance are specific.
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: web-artifacts-builder
|
|
3
|
+
description: "Use this skill when the user asks to build a self-contained single-file web tool, widget, calculator, interactive demo, or embeddable HTML app. Triggers: 'make me a calculator', 'build a tool', 'interactive widget', 'single-file app', 'codepen', 'standalone HTML', 'embed', or any request for a small, self-contained web application that should work by opening one HTML file."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Web Artifacts Builder
|
|
8
|
+
|
|
9
|
+
## What This Skill Does
|
|
10
|
+
|
|
11
|
+
Build self-contained, single-file web applications. Everything in one HTML file: markup, styles, scripts. No build step, no dependencies, no server. Open the file in a browser and it works.
|
|
12
|
+
|
|
13
|
+
## When to Use This vs frontend-development
|
|
14
|
+
|
|
15
|
+
| Use web-artifacts-builder | Use frontend-development |
|
|
16
|
+
|---------------------------|--------------------------|
|
|
17
|
+
| Calculators, converters, generators | Multi-page websites |
|
|
18
|
+
| Interactive demos and visualizations | Projects with build tools |
|
|
19
|
+
| Tools someone downloads and opens | Projects that need a server |
|
|
20
|
+
| Embeddable widgets | Projects with external dependencies |
|
|
21
|
+
| Quick prototypes under 500 lines | Anything over 500 lines |
|
|
22
|
+
|
|
23
|
+
## Template
|
|
24
|
+
|
|
25
|
+
```html
|
|
26
|
+
<!DOCTYPE html>
|
|
27
|
+
<html lang="en">
|
|
28
|
+
<head>
|
|
29
|
+
<meta charset="UTF-8">
|
|
30
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
31
|
+
<title>Tool Name</title>
|
|
32
|
+
<style>
|
|
33
|
+
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
|
|
34
|
+
:root {
|
|
35
|
+
--bg: #f8f9fa; --surface: #ffffff; --text: #212529;
|
|
36
|
+
--primary: #2563eb; --radius: 8px;
|
|
37
|
+
}
|
|
38
|
+
@media (prefers-color-scheme: dark) {
|
|
39
|
+
:root { --bg: #0f1117; --surface: #1a1b26; --text: #c9d1d9; }
|
|
40
|
+
}
|
|
41
|
+
body {
|
|
42
|
+
font-family: system-ui, -apple-system, sans-serif;
|
|
43
|
+
background: var(--bg); color: var(--text);
|
|
44
|
+
min-height: 100vh; padding: 2rem;
|
|
45
|
+
}
|
|
46
|
+
</style>
|
|
47
|
+
</head>
|
|
48
|
+
<body>
|
|
49
|
+
<main><!-- UI here --></main>
|
|
50
|
+
<script>// All logic here, vanilla JS only</script>
|
|
51
|
+
</body>
|
|
52
|
+
</html>
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Patterns
|
|
56
|
+
|
|
57
|
+
### State Management (vanilla)
|
|
58
|
+
```javascript
|
|
59
|
+
const state = { items: [], filter: "all" };
|
|
60
|
+
function setState(updates) {
|
|
61
|
+
Object.assign(state, updates);
|
|
62
|
+
render();
|
|
63
|
+
}
|
|
64
|
+
function render() {
|
|
65
|
+
const filtered = state.items.filter(/* ... */);
|
|
66
|
+
container.innerHTML = filtered.map(item => `
|
|
67
|
+
<div class="item">${item.name}</div>
|
|
68
|
+
`).join("");
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Local Storage Persistence
|
|
73
|
+
```javascript
|
|
74
|
+
function save() { localStorage.setItem("app-state", JSON.stringify(state)); }
|
|
75
|
+
function load() {
|
|
76
|
+
const stored = localStorage.getItem("app-state");
|
|
77
|
+
if (stored) Object.assign(state, JSON.parse(stored));
|
|
78
|
+
}
|
|
79
|
+
load();
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### File Input/Output
|
|
83
|
+
```javascript
|
|
84
|
+
input.addEventListener("change", (e) => {
|
|
85
|
+
const file = e.target.files[0];
|
|
86
|
+
const reader = new FileReader();
|
|
87
|
+
reader.onload = () => processContent(reader.result);
|
|
88
|
+
reader.readAsText(file);
|
|
89
|
+
});
|
|
90
|
+
|
|
91
|
+
function download(content, filename, type = "text/plain") {
|
|
92
|
+
const blob = new Blob([content], { type });
|
|
93
|
+
const url = URL.createObjectURL(blob);
|
|
94
|
+
const a = document.createElement("a");
|
|
95
|
+
a.href = url; a.download = filename; a.click();
|
|
96
|
+
URL.revokeObjectURL(url);
|
|
97
|
+
}
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
## Rules
|
|
101
|
+
|
|
102
|
+
- Everything in ONE file. No external CSS, JS, or image files.
|
|
103
|
+
- Vanilla JavaScript only. No React, no frameworks, no npm.
|
|
104
|
+
- External CDN scripts allowed only when essential (e.g., Chart.js, Three.js)
|
|
105
|
+
- Must work offline after first load
|
|
106
|
+
- Dark mode support via `prefers-color-scheme`
|
|
107
|
+
- Mobile responsive
|
|
108
|
+
- Under 500 lines total. If larger, switch to frontend-development skill.
|
|
109
|
+
- Always include a clear `<title>` describing the tool
|
|
110
|
+
|
|
111
|
+
## Verification
|
|
112
|
+
|
|
113
|
+
1. Open the HTML file directly in a browser (no server)
|
|
114
|
+
2. All features work
|
|
115
|
+
3. Resize to mobile width
|
|
116
|
+
4. Test in dark mode
|
|
117
|
+
5. No console errors
|