@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,39 @@
|
|
|
1
|
+
# Competitor Intelligence
|
|
2
|
+
|
|
3
|
+
## Analysis Pipeline
|
|
4
|
+
|
|
5
|
+
1. **Market Researcher**: identify competitors, gather public data (pricing, features, positioning)
|
|
6
|
+
2. **Feature Comparator**: build feature matrix, identify gaps and advantages
|
|
7
|
+
3. **Positioning Analyst**: assess market positioning, target segments, messaging
|
|
8
|
+
|
|
9
|
+
## Output: Competitive Matrix
|
|
10
|
+
|
|
11
|
+
```markdown
|
|
12
|
+
## Market Overview
|
|
13
|
+
[Size, growth, key trends]
|
|
14
|
+
|
|
15
|
+
## Competitor Profiles
|
|
16
|
+
### [Competitor 1]
|
|
17
|
+
- **Positioning**: [who they target and how]
|
|
18
|
+
- **Strengths**: [what they do well]
|
|
19
|
+
- **Weaknesses**: [where they fall short]
|
|
20
|
+
- **Pricing**: [model and tiers]
|
|
21
|
+
|
|
22
|
+
## Feature Comparison Matrix
|
|
23
|
+
| Feature | Us | Competitor 1 | Competitor 2 |
|
|
24
|
+
|---------|-----|-------------|-------------|
|
|
25
|
+
| [Feature] | [status] | [status] | [status] |
|
|
26
|
+
|
|
27
|
+
## Opportunities
|
|
28
|
+
[Gaps in competitor offerings we can fill]
|
|
29
|
+
|
|
30
|
+
## Threats
|
|
31
|
+
[Where competitors are ahead or gaining]
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Rules
|
|
35
|
+
|
|
36
|
+
- Use public information only
|
|
37
|
+
- Verify claims (don't trust competitor marketing at face value)
|
|
38
|
+
- Update quarterly (competitive landscape changes)
|
|
39
|
+
- Focus on what's actionable, not exhaustive
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# Content Engine
|
|
2
|
+
|
|
3
|
+
Turn one idea into strong, platform-native content instead of posting the same thing everywhere.
|
|
4
|
+
|
|
5
|
+
## When to Activate
|
|
6
|
+
|
|
7
|
+
- writing X posts or threads
|
|
8
|
+
- drafting LinkedIn posts or launch updates
|
|
9
|
+
- scripting short-form video or YouTube explainers
|
|
10
|
+
- repurposing articles, podcasts, demos, or docs into social content
|
|
11
|
+
- building a lightweight content plan around a launch, milestone, or theme
|
|
12
|
+
|
|
13
|
+
## First Questions
|
|
14
|
+
|
|
15
|
+
Clarify:
|
|
16
|
+
- source asset: what are we adapting from
|
|
17
|
+
- audience: builders, investors, customers, operators, or general audience
|
|
18
|
+
- platform: X, LinkedIn, TikTok, YouTube, newsletter, or multi-platform
|
|
19
|
+
- goal: awareness, conversion, recruiting, authority, launch support, or engagement
|
|
20
|
+
|
|
21
|
+
## Core Rules
|
|
22
|
+
|
|
23
|
+
1. Adapt for the platform. Do not cross-post the same copy.
|
|
24
|
+
2. Hooks matter more than summaries.
|
|
25
|
+
3. Every post should carry one clear idea.
|
|
26
|
+
4. Use specifics over slogans.
|
|
27
|
+
5. Keep the ask small and clear.
|
|
28
|
+
|
|
29
|
+
## Platform Guidance
|
|
30
|
+
|
|
31
|
+
### X
|
|
32
|
+
- open fast
|
|
33
|
+
- one idea per post or per tweet in a thread
|
|
34
|
+
- keep links out of the main body unless necessary
|
|
35
|
+
- avoid hashtag spam
|
|
36
|
+
|
|
37
|
+
### LinkedIn
|
|
38
|
+
- strong first line
|
|
39
|
+
- short paragraphs
|
|
40
|
+
- more explicit framing around lessons, results, and takeaways
|
|
41
|
+
|
|
42
|
+
### TikTok / Short Video
|
|
43
|
+
- first 3 seconds must interrupt attention
|
|
44
|
+
- script around visuals, not just narration
|
|
45
|
+
- one demo, one claim, one CTA
|
|
46
|
+
|
|
47
|
+
### YouTube
|
|
48
|
+
- show the result early
|
|
49
|
+
- structure by chapter
|
|
50
|
+
- refresh the visual every 20-30 seconds
|
|
51
|
+
|
|
52
|
+
### Newsletter
|
|
53
|
+
- deliver one clear lens, not a bundle of unrelated items
|
|
54
|
+
- make section titles skimmable
|
|
55
|
+
- keep the opening paragraph doing real work
|
|
56
|
+
|
|
57
|
+
## Repurposing Flow
|
|
58
|
+
|
|
59
|
+
Default cascade:
|
|
60
|
+
1. anchor asset: article, video, demo, memo, or launch doc
|
|
61
|
+
2. extract 3-7 atomic ideas
|
|
62
|
+
3. write platform-native variants
|
|
63
|
+
4. trim repetition across outputs
|
|
64
|
+
5. align CTAs with platform intent
|
|
65
|
+
|
|
66
|
+
## Deliverables
|
|
67
|
+
|
|
68
|
+
When asked for a campaign, return:
|
|
69
|
+
- the core angle
|
|
70
|
+
- platform-specific drafts
|
|
71
|
+
- optional posting order
|
|
72
|
+
- optional CTA variants
|
|
73
|
+
- any missing inputs needed before publishing
|
|
74
|
+
|
|
75
|
+
## Quality Gate
|
|
76
|
+
|
|
77
|
+
Before delivering:
|
|
78
|
+
- each draft reads natively for its platform
|
|
79
|
+
- hooks are strong and specific
|
|
80
|
+
- no generic hype language
|
|
81
|
+
- no duplicated copy across platforms unless requested
|
|
82
|
+
- the CTA matches the content and audience
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: context7-docs
|
|
3
|
+
description: "Use this skill whenever the agent needs current, accurate documentation for any programming library or framework before writing code. Triggers: any code generation task involving external libraries, 'how do I use X', 'set up Y', 'configure Z', version-specific API questions, or whenever the agent's training data might be outdated for a library. Prevents hallucinated APIs and outdated patterns by injecting real documentation into context."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Context7: Live Library Documentation
|
|
8
|
+
|
|
9
|
+
## What This Skill Does
|
|
10
|
+
|
|
11
|
+
Context7 fetches current, version-specific documentation and code examples from official sources and injects them into the agent's context. Eliminates the #1 cause of bad code generation: outdated training data producing hallucinated APIs, renamed methods, and deprecated patterns.
|
|
12
|
+
|
|
13
|
+
## When to Activate
|
|
14
|
+
|
|
15
|
+
- Before writing code that uses ANY external library or framework
|
|
16
|
+
- User asks "how do I set up X" for any library
|
|
17
|
+
- User asks about a specific library version ("Next.js 15", "React 19", "Bun 1.2")
|
|
18
|
+
- Agent is about to generate code using an API it hasn't verified is current
|
|
19
|
+
- User reports "that method doesn't exist" or "that API changed"
|
|
20
|
+
- Any fast-moving library: Next.js, React, Tailwind, Prisma, Drizzle, Hono, tRPC, Zod, etc.
|
|
21
|
+
|
|
22
|
+
## MCP Connection
|
|
23
|
+
|
|
24
|
+
Context7 runs as a remote MCP server by Upstash.
|
|
25
|
+
|
|
26
|
+
**Server URL:** `https://mcp.context7.com/mcp`
|
|
27
|
+
**Auth:** API key required (set via `CONTEXT7_API_KEY` header or env var)
|
|
28
|
+
**Protocol:** Streamable HTTP
|
|
29
|
+
|
|
30
|
+
### Fenix MCP Registry Entry
|
|
31
|
+
|
|
32
|
+
```json
|
|
33
|
+
{
|
|
34
|
+
"name": "context7",
|
|
35
|
+
"url": "https://mcp.context7.com/mcp",
|
|
36
|
+
"auth": {
|
|
37
|
+
"type": "header",
|
|
38
|
+
"key": "CONTEXT7_API_KEY",
|
|
39
|
+
"envVar": "CONTEXT7_API_KEY"
|
|
40
|
+
},
|
|
41
|
+
"description": "Up-to-date library documentation and code examples",
|
|
42
|
+
"tools": ["resolve-library-id", "get-library-docs"]
|
|
43
|
+
}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### Getting an API Key
|
|
47
|
+
|
|
48
|
+
Sign up at `context7.com/dashboard`. Free tier available with rate limits. Higher tiers for production use.
|
|
49
|
+
|
|
50
|
+
## Available Tools
|
|
51
|
+
|
|
52
|
+
### 1. `resolve-library-id`
|
|
53
|
+
|
|
54
|
+
Converts a library name into Context7's internal ID. Must be called before `get-library-docs` unless the user provides a direct ID in `/org/project` format.
|
|
55
|
+
|
|
56
|
+
**Input:** `{ "libraryName": "next.js" }`
|
|
57
|
+
**Returns:** List of matching libraries with IDs, descriptions, trust scores, and code snippet counts
|
|
58
|
+
|
|
59
|
+
**Selection criteria when multiple results match:**
|
|
60
|
+
1. Name similarity (exact matches first)
|
|
61
|
+
2. Description relevance
|
|
62
|
+
3. Code snippet count (higher = better coverage)
|
|
63
|
+
4. Trust score (7-10 = authoritative)
|
|
64
|
+
|
|
65
|
+
**Do not call this more than 3 times per question.** If no good match after 3 attempts, use best available result.
|
|
66
|
+
|
|
67
|
+
### 2. `get-library-docs` (also called `query-docs`)
|
|
68
|
+
|
|
69
|
+
Fetches documentation for a specific library using its Context7 ID.
|
|
70
|
+
|
|
71
|
+
**Input:**
|
|
72
|
+
```json
|
|
73
|
+
{
|
|
74
|
+
"libraryId": "/vercel/next.js",
|
|
75
|
+
"query": "How to set up middleware with JWT authentication",
|
|
76
|
+
"tokens": 5000
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
**Parameters:**
|
|
81
|
+
- `libraryId` (required): Context7 library ID from `resolve-library-id`
|
|
82
|
+
- `query` (required): Specific, detailed question. Good: "How to set up authentication with JWT in Express.js". Bad: "auth" or "hooks"
|
|
83
|
+
- `tokens` (optional): Max tokens to return. Default varies. Use 5000-10000 for detailed answers
|
|
84
|
+
|
|
85
|
+
**Returns:** Documentation snippets and code examples matching the query
|
|
86
|
+
|
|
87
|
+
**Do not call this more than 3 times per question.** Use best information available after 3 calls.
|
|
88
|
+
|
|
89
|
+
## Workflow
|
|
90
|
+
|
|
91
|
+
### Standard Code Generation
|
|
92
|
+
|
|
93
|
+
```
|
|
94
|
+
1. User asks to implement something using library X
|
|
95
|
+
2. resolve-library-id({ libraryName: "X" })
|
|
96
|
+
→ Get the Context7 library ID
|
|
97
|
+
3. get-library-docs({ libraryId: "/org/X", query: "specific task description" })
|
|
98
|
+
→ Get current API docs and examples
|
|
99
|
+
4. Write code based on the REAL documentation, not training data
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Version-Specific Query
|
|
103
|
+
|
|
104
|
+
```
|
|
105
|
+
1. User mentions a specific version ("Next.js 15 middleware")
|
|
106
|
+
2. resolve-library-id({ libraryName: "next.js" })
|
|
107
|
+
→ Look for version-specific entries like "/vercel/next.js/v15.0.0"
|
|
108
|
+
3. get-library-docs with the versioned ID
|
|
109
|
+
4. Generate code matching that exact version's API
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### Direct Library ID (Skip Resolution)
|
|
113
|
+
|
|
114
|
+
When the user provides a library ID directly using `/org/project` format:
|
|
115
|
+
|
|
116
|
+
```
|
|
117
|
+
User: "How do I use /supabase/supabase for auth?"
|
|
118
|
+
1. Skip resolve-library-id entirely
|
|
119
|
+
2. get-library-docs({ libraryId: "/supabase/supabase", query: "authentication setup" })
|
|
120
|
+
3. Generate code from current docs
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
## Rules
|
|
124
|
+
|
|
125
|
+
- ALWAYS fetch docs before generating code for external libraries. Do not trust training data for API shapes
|
|
126
|
+
- Write specific, detailed queries. "How to configure rate limiting middleware in Express.js" beats "express middleware"
|
|
127
|
+
- Do not call either tool more than 3 times per question. Use best available information after 3 calls
|
|
128
|
+
- If a library has no Context7 coverage, inform the user and fall back to training data with a disclaimer
|
|
129
|
+
- Cache frequently-used library IDs in agent memory to skip resolution on repeat queries
|
|
130
|
+
- For well-established, slow-changing libraries (lodash, etc.), Context7 is optional. For anything that ships new versions quarterly or faster, Context7 is mandatory
|
|
131
|
+
- Never include API keys, passwords, or sensitive data in queries
|
|
132
|
+
|
|
133
|
+
## Libraries with Known High Coverage
|
|
134
|
+
|
|
135
|
+
These are commonly indexed and well-covered:
|
|
136
|
+
|
|
137
|
+
React, Next.js, Vue, Nuxt, Svelte, Angular, Express, Hono, Fastify, Prisma, Drizzle, Supabase, Tailwind CSS, shadcn/ui, tRPC, Zod, TypeScript, Node.js, Bun, Deno, PostgreSQL, MongoDB, Redis (Upstash), AWS SDK, Cloudflare Workers, Vercel, Stripe, Auth.js
|
|
138
|
+
|
|
139
|
+
## Integration with Other Skills
|
|
140
|
+
|
|
141
|
+
- **deepwiki-research:** Use DeepWiki for "how does this library work internally?" Use Context7 for "what's the current API for this library?" They solve different problems.
|
|
142
|
+
- **frontend-development:** Always pull React/Next.js/Vue docs before generating component code
|
|
143
|
+
- **backend-development:** Always pull Express/Hono/Fastify docs before generating server code
|
|
144
|
+
- **database-design:** Pull Prisma/Drizzle docs before generating schema or migration code
|
|
145
|
+
- **api-development:** Pull framework docs before generating route handlers
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: copywriting
|
|
3
|
+
description: "Use this skill when the user asks to write marketing copy, landing page text, ad copy, email campaigns, product descriptions, or CTAs. Triggers: 'copy', 'landing page text', 'ad copy', 'email campaign', 'product description', 'CTA', 'headline', 'tagline', or any persuasive commercial writing."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Copywriting
|
|
8
|
+
|
|
9
|
+
## What This Skill Does
|
|
10
|
+
|
|
11
|
+
Write persuasive marketing copy. Landing pages, ads, emails, product descriptions, taglines. Clear value propositions, compelling calls to action, audience-aware tone.
|
|
12
|
+
|
|
13
|
+
## Formulas
|
|
14
|
+
|
|
15
|
+
### AIDA (Landing Pages)
|
|
16
|
+
- **Attention**: Bold headline addressing the core desire or pain
|
|
17
|
+
- **Interest**: Expand with specific benefits and proof
|
|
18
|
+
- **Desire**: Paint the after-state, testimonials, social proof
|
|
19
|
+
- **Action**: Clear, single CTA with urgency
|
|
20
|
+
|
|
21
|
+
### PAS (Email, Short-form)
|
|
22
|
+
- **Problem**: Name the specific pain point
|
|
23
|
+
- **Agitate**: Show consequences of not solving it
|
|
24
|
+
- **Solution**: Present the offer as the answer
|
|
25
|
+
|
|
26
|
+
### BAB (Product Descriptions)
|
|
27
|
+
- **Before**: Current frustrating state
|
|
28
|
+
- **After**: Life with the product
|
|
29
|
+
- **Bridge**: How the product gets them there
|
|
30
|
+
|
|
31
|
+
## Rules
|
|
32
|
+
|
|
33
|
+
- One CTA per page/email. Never compete with yourself.
|
|
34
|
+
- Benefits over features ("Save 4 hours weekly" beats "AI-powered automation")
|
|
35
|
+
- Specific numbers over vague claims ("147 companies" beats "many companies")
|
|
36
|
+
- Write at 8th grade reading level for broad audiences
|
|
37
|
+
- Test headlines: write 10, pick the best 2, A/B test those
|
|
38
|
+
- Every email needs: subject line (under 50 chars), preview text (under 90 chars), single CTA.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Corrective RAG
|
|
2
|
+
## Pipeline
|
|
3
|
+
1. **Retrieve**: query vector store, get top-K results
|
|
4
|
+
2. **Grade**: for each result, classify RELEVANT or IRRELEVANT (lightweight LLM call or cosine threshold)
|
|
5
|
+
3. **Decide**:
|
|
6
|
+
- If majority relevant → generate from retrieved docs
|
|
7
|
+
- If majority irrelevant → fall back to web search
|
|
8
|
+
- If mixed → combine best retrieved docs with web search results
|
|
9
|
+
4. **Generate**: answer grounded in best available sources
|
|
10
|
+
5. **Cite**: attribute each claim to its source
|
|
11
|
+
|
|
12
|
+
## Grading Prompt
|
|
13
|
+
"Does this document contain information relevant to answering the question? Respond YES or NO with a one-sentence reason."
|
|
14
|
+
|
|
15
|
+
## Rules
|
|
16
|
+
- Never generate from irrelevant retrievals (the whole point of corrective RAG)
|
|
17
|
+
- Web search fallback is a feature, not a failure
|
|
18
|
+
- Log grade results for retrieval quality monitoring
|
|
19
|
+
- Tune relevance threshold based on false positive/negative rates.
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: cost-optimization
|
|
3
|
+
description: "Use this skill when optimizing LLM API costs, reducing token usage, implementing caching strategies, or managing API budgets. Triggers: 'cost', 'budget', 'expensive', 'optimize tokens', 'reduce cost', 'API spending', 'quota', 'cheaper', or any concern about LLM/API costs."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Cost Optimization
|
|
8
|
+
|
|
9
|
+
## What This Skill Does
|
|
10
|
+
|
|
11
|
+
Reduce LLM API costs through caching, model routing, batching, and token reduction.
|
|
12
|
+
|
|
13
|
+
## Strategies
|
|
14
|
+
|
|
15
|
+
### 1. Prompt Caching (up to 90% savings)
|
|
16
|
+
Cache static system prompts and frequently-used context. Anthropic and OpenAI both support cache_control headers. Only the changing parts (user message) cost full price.
|
|
17
|
+
|
|
18
|
+
### 2. Model Routing (50-80% savings)
|
|
19
|
+
Route simple queries to cheap models, complex queries to expensive models.
|
|
20
|
+
```
|
|
21
|
+
Simple (greeting, lookup): Haiku/GPT-4o-mini ($0.25/M tokens)
|
|
22
|
+
Medium (code gen, analysis): Sonnet/GPT-4o ($3/M tokens)
|
|
23
|
+
Complex (reasoning, planning): Opus/o1 ($15/M tokens)
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### 3. Batch Processing (50% cost reduction)
|
|
27
|
+
Group non-urgent requests into batch API calls. Most providers offer 50% discount for batch processing with 24-hour SLA.
|
|
28
|
+
|
|
29
|
+
### 4. Token Reduction
|
|
30
|
+
- Compress system prompts (remove redundancy, use abbreviations)
|
|
31
|
+
- Progressive disclosure for memory (stubs first, expand on demand)
|
|
32
|
+
- Summarize long conversations instead of sending full history
|
|
33
|
+
- Set max_tokens to limit response length
|
|
34
|
+
|
|
35
|
+
### 5. Caching Responses
|
|
36
|
+
Cache deterministic queries (same input = same output). Use Redis or in-memory cache with TTL.
|
|
37
|
+
|
|
38
|
+
## Cost Monitoring
|
|
39
|
+
|
|
40
|
+
Track per-request: model used, input tokens, output tokens, cached tokens, cost.
|
|
41
|
+
Alert when daily spend exceeds budget threshold.
|
|
42
|
+
|
|
43
|
+
## Rules
|
|
44
|
+
|
|
45
|
+
- Always use the cheapest model that produces acceptable quality
|
|
46
|
+
- Cache everything that can be cached
|
|
47
|
+
- Monitor costs daily, not monthly (catch spikes early)
|
|
48
|
+
- Set hard budget limits with circuit breakers
|
|
49
|
+
- Log whether token counts are native (from API response) or estimated
|
|
50
|
+
|
|
51
|
+
## LLM Router (RouteLLM pattern)
|
|
52
|
+
|
|
53
|
+
Classify query complexity at zero LLM cost, route to appropriate model tier:
|
|
54
|
+
```
|
|
55
|
+
Simple (greeting, lookup, formatting): cheapest model ($0.25/M tokens)
|
|
56
|
+
Medium (code gen, summarization, analysis): mid-tier model ($3/M tokens)
|
|
57
|
+
Complex (multi-step reasoning, planning, creative): expensive model ($15/M tokens)
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
RouteLLM's matrix factorization classifier runs in <1ms with no API calls.
|
|
61
|
+
|
|
62
|
+
## Context Minimization (Aggressive Pruning)
|
|
63
|
+
|
|
64
|
+
Beyond compression, actively remove context that no longer contributes:
|
|
65
|
+
|
|
66
|
+
### Pruning Rules
|
|
67
|
+
1. **Redundant tool results**: if a file was read 3 times, keep only the latest read
|
|
68
|
+
2. **Superseded outputs**: if code was edited multiple times, keep only the final version
|
|
69
|
+
3. **Resolved errors**: once an error is fixed, collapse the error + fix into a one-line note
|
|
70
|
+
4. **Conversation history**: summarize older turns into a running context summary (<200 tokens per 10 turns)
|
|
71
|
+
|
|
72
|
+
### Implementation
|
|
73
|
+
```typescript
|
|
74
|
+
function pruneContext(messages: Message[]): Message[] {
|
|
75
|
+
const fileReads = new Map<string, Message>(); // keep latest read per file
|
|
76
|
+
const pruned: Message[] = [];
|
|
77
|
+
for (const msg of messages) {
|
|
78
|
+
if (msg.type === "tool_result" && msg.toolName === "read_file") {
|
|
79
|
+
fileReads.set(msg.filePath, msg); // overwrite previous reads
|
|
80
|
+
} else {
|
|
81
|
+
pruned.push(msg);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return [...pruned, ...fileReads.values()];
|
|
85
|
+
}
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## Prompt Caching via Exact Prefix Preservation
|
|
89
|
+
|
|
90
|
+
Maximize cache hits by keeping the prompt prefix stable:
|
|
91
|
+
|
|
92
|
+
### Prefix Ordering Strategy
|
|
93
|
+
1. System prompt (static) — always cached
|
|
94
|
+
2. Skill manifests (static per session) — cached after first call
|
|
95
|
+
3. Project context (CLAUDE.md, file tree) — stable, rarely changes
|
|
96
|
+
4. Conversation history — changes every turn (cache-bust boundary)
|
|
97
|
+
|
|
98
|
+
### Cache-Bust Detection
|
|
99
|
+
- Monitor `cache_creation_input_tokens` vs `cache_read_input_tokens` in API responses
|
|
100
|
+
- If cache reads drop to 0, something changed in the prefix — investigate
|
|
101
|
+
- Common cache busters: reordering skills, modifying system prompt mid-session, injecting dynamic content before static content
|
|
102
|
+
|
|
103
|
+
## Oracle-and-Worker (Multi-Model Cost Escalation)
|
|
104
|
+
|
|
105
|
+
Use cheap models for routine work, escalate to expensive models only when stuck:
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
Worker (Haiku/GPT-4o-mini) attempts task
|
|
109
|
+
├─ Success → return result (cost: $0.25/M tokens)
|
|
110
|
+
└─ Stuck (3 attempts failed, low confidence, complex reasoning needed)
|
|
111
|
+
→ Oracle (Opus/o1) consulted for guidance (cost: $15/M tokens)
|
|
112
|
+
→ Worker continues with oracle's guidance
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### Trigger Conditions for Oracle Consultation
|
|
116
|
+
- Worker has failed the same subtask 3 times
|
|
117
|
+
- Worker's confidence score drops below threshold
|
|
118
|
+
- Task requires multi-step reasoning or architectural decisions
|
|
119
|
+
- Worker explicitly requests escalation
|
|
120
|
+
|
|
121
|
+
### Rules
|
|
122
|
+
- Oracle provides guidance, not implementation (keep oracle calls short)
|
|
123
|
+
- Log all escalations with reason (helps tune the routing threshold)
|
|
124
|
+
- Target: <5% of tasks should need oracle consultation
|
|
125
|
+
|
|
126
|
+
## Context Compression (Headroom pattern)
|
|
127
|
+
|
|
128
|
+
Before injecting context (logs, documents, conversation history), compress 50-90% while preserving accuracy:
|
|
129
|
+
- Strip noise (timestamps on routine logs, boilerplate headers, repeated patterns)
|
|
130
|
+
- Keep the "needle" (critical errors, key decisions, unique information)
|
|
131
|
+
- Tested with needle-in-haystack benchmark: accuracy preserved at 10% of original token count
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# Crypto Vulnerability Analyst
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Find exploitable cryptographic weakness across primitive choice, implementation details, and protocol flow.
|
|
5
|
+
|
|
6
|
+
## Inputs
|
|
7
|
+
- `code_or_binary_context`
|
|
8
|
+
- `protocol_description`
|
|
9
|
+
- `key_management_model`
|
|
10
|
+
|
|
11
|
+
## Workflow
|
|
12
|
+
### Phase 1: Crypto Inventory
|
|
13
|
+
1. Identify algorithms, modes, and libraries.
|
|
14
|
+
2. Identify key derivation and randomness sources.
|
|
15
|
+
3. Identify trust anchors and certificate behavior.
|
|
16
|
+
|
|
17
|
+
### Phase 2: Misuse Detection
|
|
18
|
+
1. Nonce/IV reuse or predictability.
|
|
19
|
+
2. Weak or obsolete algorithms/modes.
|
|
20
|
+
3. Insecure comparisons and padding issues.
|
|
21
|
+
4. Missing authenticity or misuse of MAC/AEAD.
|
|
22
|
+
|
|
23
|
+
### Phase 3: Key Lifecycle Review
|
|
24
|
+
1. Key generation entropy quality.
|
|
25
|
+
2. Key storage and exposure paths.
|
|
26
|
+
3. Rotation, revocation, and scope boundaries.
|
|
27
|
+
|
|
28
|
+
### Phase 4: Protocol Attack Analysis
|
|
29
|
+
1. Replay and reflection opportunities.
|
|
30
|
+
2. Downgrade and negotiation weaknesses.
|
|
31
|
+
3. Oracle-like behavior from error distinctions.
|
|
32
|
+
|
|
33
|
+
### Phase 5: Risk and Fix Prioritization
|
|
34
|
+
1. Separate compliance issues from exploitable flaws.
|
|
35
|
+
2. Prioritize fixes by exploit practicality.
|
|
36
|
+
3. Provide migration-safe remediation guidance.
|
|
37
|
+
|
|
38
|
+
## Crypto Assessment Matrix
|
|
39
|
+
| Area | Failure Pattern |
|
|
40
|
+
|---|---|
|
|
41
|
+
| encryption | unauthenticated encryption for sensitive state |
|
|
42
|
+
| key management | shared static keys across tenants/environments |
|
|
43
|
+
| randomness | predictable nonce/session token generation |
|
|
44
|
+
| protocol | downgrade and replay not cryptographically bound |
|
|
45
|
+
|
|
46
|
+
## Output Contract
|
|
47
|
+
```json
|
|
48
|
+
{
|
|
49
|
+
"crypto_inventory": [],
|
|
50
|
+
"misuse_findings": [],
|
|
51
|
+
"protocol_risks": [],
|
|
52
|
+
"key_management_gaps": [],
|
|
53
|
+
"prioritized_remediation": []
|
|
54
|
+
}
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Constraints
|
|
58
|
+
- Do not equate deprecated with exploitable without context.
|
|
59
|
+
- Clearly label confidence when implementation visibility is partial.
|
|
60
|
+
|
|
61
|
+
## Quality Checklist
|
|
62
|
+
- [ ] Primitive and mode details are explicit.
|
|
63
|
+
- [ ] Exploit path is technically plausible.
|
|
64
|
+
- [ ] Remediation is concrete.
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Customer Support
|
|
2
|
+
|
|
3
|
+
## Interaction Flow
|
|
4
|
+
|
|
5
|
+
1. **Identify**: recognize returning customers from memory. Reference past interactions naturally.
|
|
6
|
+
2. **Classify**: categorize issue (billing, technical, feature request, bug report, general inquiry)
|
|
7
|
+
3. **Resolve**: follow knowledge base for known issues. Escalate unknown issues.
|
|
8
|
+
4. **Track**: log resolution, update customer memory, set follow-up if needed.
|
|
9
|
+
|
|
10
|
+
## Escalation Rules
|
|
11
|
+
|
|
12
|
+
- **Tier 1** (agent handles): FAQs, known issues with documented solutions, account inquiries
|
|
13
|
+
- **Tier 2** (escalate): bugs needing investigation, billing disputes, feature requests
|
|
14
|
+
- **Tier 3** (urgent): security issues, data loss, service outages, legal/compliance
|
|
15
|
+
|
|
16
|
+
## Memory Integration
|
|
17
|
+
|
|
18
|
+
Save to memory after every interaction:
|
|
19
|
+
- Issue type and resolution
|
|
20
|
+
- Customer preferences and history
|
|
21
|
+
- Unresolved items needing follow-up
|
|
22
|
+
|
|
23
|
+
Check memory before every response to avoid asking for information already provided.
|
|
24
|
+
|
|
25
|
+
## Output Format
|
|
26
|
+
|
|
27
|
+
```markdown
|
|
28
|
+
## Ticket: [ID]
|
|
29
|
+
**Customer**: [name/ID]
|
|
30
|
+
**Category**: [billing/technical/feature/bug/inquiry]
|
|
31
|
+
**Priority**: [low/medium/high/urgent]
|
|
32
|
+
|
|
33
|
+
## Issue
|
|
34
|
+
[Description]
|
|
35
|
+
|
|
36
|
+
## Resolution
|
|
37
|
+
[Steps taken and outcome]
|
|
38
|
+
|
|
39
|
+
## Follow-up
|
|
40
|
+
[Next steps, if any, with timeline]
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Rules
|
|
44
|
+
|
|
45
|
+
- Acknowledge the problem before solving it
|
|
46
|
+
- Never blame the customer
|
|
47
|
+
- If you can't resolve, give a concrete next step and timeline
|
|
48
|
+
- Follow up on unresolved issues (use scheduler)
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Customer Voice Support
|
|
2
|
+
|
|
3
|
+
## Pipeline
|
|
4
|
+
|
|
5
|
+
1. **Ingest**: crawl support documentation (Firecrawl or content pipeline) -> chunk -> embed -> store in vector DB
|
|
6
|
+
2. **Listen**: STT captures customer speech
|
|
7
|
+
3. **Retrieve**: embed query -> search vector store -> get relevant documentation chunks
|
|
8
|
+
4. **Generate**: LLM generates response grounded in retrieved docs
|
|
9
|
+
5. **Speak**: TTS delivers response
|
|
10
|
+
|
|
11
|
+
## Voice-Specific Rules
|
|
12
|
+
|
|
13
|
+
- Responses under 30 words (voice attention span is shorter than text)
|
|
14
|
+
- No formatting, bullet points, or markdown (spoken output)
|
|
15
|
+
- Spell out numbers and abbreviations
|
|
16
|
+
- Confirm understanding before proceeding: "I understand you're having trouble with [X]. Is that right?"
|
|
17
|
+
- Offer to transfer to a human when confidence is low
|
|
18
|
+
|
|
19
|
+
## Integration
|
|
20
|
+
|
|
21
|
+
Uses Fenix voice pipeline (STT -> LLM -> TTS) with RAG retrieval injected as context.
|
|
22
|
+
|
|
23
|
+
## RAG Configuration
|
|
24
|
+
|
|
25
|
+
```markdown
|
|
26
|
+
## Knowledge Base Setup
|
|
27
|
+
1. Crawl support docs, FAQs, troubleshooting guides
|
|
28
|
+
2. Chunk into 200-500 token segments with overlap
|
|
29
|
+
3. Embed using workspace embedding model
|
|
30
|
+
4. Store in vector database with metadata (category, last updated)
|
|
31
|
+
|
|
32
|
+
## Retrieval Settings
|
|
33
|
+
- Top-k: 3-5 most relevant chunks
|
|
34
|
+
- Similarity threshold: 0.7 minimum
|
|
35
|
+
- Prefer recent documents when scores are similar
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Rules
|
|
39
|
+
|
|
40
|
+
- Always confirm understanding before providing a solution
|
|
41
|
+
- Keep responses conversational and natural for speech
|
|
42
|
+
- If confidence is below threshold, offer human transfer
|
|
43
|
+
- Log all interactions for quality review
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: data-analysis
|
|
3
|
+
description: "Use this skill when the user asks to analyze data, parse CSVs, generate statistics, identify trends, or create data visualizations. Triggers: 'analyze data', 'CSV', 'JSON data', 'statistics', 'trends', 'chart', 'graph', 'data visualization', 'report from data', or any request to extract insights from structured data."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Data Analysis
|
|
8
|
+
|
|
9
|
+
## What This Skill Does
|
|
10
|
+
|
|
11
|
+
Parse, analyze, and visualize data. CSV/JSON processing, statistical analysis, trend identification, and visualization recommendations.
|
|
12
|
+
|
|
13
|
+
## Data Processing
|
|
14
|
+
|
|
15
|
+
```typescript
|
|
16
|
+
import Papa from "papaparse";
|
|
17
|
+
|
|
18
|
+
// Parse CSV
|
|
19
|
+
const result = Papa.parse(csvString, { header: true, dynamicTyping: true, skipEmptyLines: true });
|
|
20
|
+
const data = result.data;
|
|
21
|
+
|
|
22
|
+
// Basic stats
|
|
23
|
+
const values = data.map(row => row.amount);
|
|
24
|
+
const sum = values.reduce((a, b) => a + b, 0);
|
|
25
|
+
const avg = sum / values.length;
|
|
26
|
+
const sorted = [...values].sort((a, b) => a - b);
|
|
27
|
+
const median = sorted[Math.floor(sorted.length / 2)];
|
|
28
|
+
const min = sorted[0];
|
|
29
|
+
const max = sorted[sorted.length - 1];
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Analysis Workflow
|
|
33
|
+
|
|
34
|
+
1. **Inspect:** Row count, column types, missing values, duplicates
|
|
35
|
+
2. **Clean:** Handle nulls, fix types, remove duplicates, standardize formats
|
|
36
|
+
3. **Analyze:** Aggregations, groupings, comparisons, correlations
|
|
37
|
+
4. **Visualize:** Choose chart type based on data relationship
|
|
38
|
+
5. **Report:** Key findings, anomalies, recommendations
|
|
39
|
+
|
|
40
|
+
## Chart Selection
|
|
41
|
+
|
|
42
|
+
| Relationship | Chart Type |
|
|
43
|
+
|-------------|------------|
|
|
44
|
+
| Trend over time | Line chart |
|
|
45
|
+
| Comparison between categories | Bar chart |
|
|
46
|
+
| Part of whole | Pie/donut (max 6 slices) |
|
|
47
|
+
| Distribution | Histogram |
|
|
48
|
+
| Correlation between variables | Scatter plot |
|
|
49
|
+
| Multiple metrics over time | Multi-line or stacked area |
|
|
50
|
+
|
|
51
|
+
## Rules
|
|
52
|
+
|
|
53
|
+
- Always show data shape first (rows, columns, sample values)
|
|
54
|
+
- Handle missing data explicitly (don't silently drop rows)
|
|
55
|
+
- Round numbers appropriately for the audience
|
|
56
|
+
- Label all axes and include units
|
|
57
|
+
- Note limitations and caveats in findings
|