cawdex 1.35.65 → 1.35.67
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/README.md +186 -186
- package/bin/anycode.js +2 -2
- package/bin/cawdex.js +408 -408
- package/bin/ecc-hooks.cjs +11 -11
- package/dist/agents.js +1424 -1424
- package/dist/autonomous-loops.js +287 -287
- package/dist/command-palette.js +1 -1
- package/dist/command-palette.js.map +1 -1
- package/dist/compaction.js +8 -8
- package/dist/content-engine.js +543 -543
- package/dist/coverage.js +39 -39
- package/dist/docs-sync.js +98 -98
- package/dist/evaluation.js +452 -452
- package/dist/git-workflow.js +49 -49
- package/dist/index.js +75 -46
- package/dist/index.js.map +1 -1
- package/dist/instant-answer.js +10 -0
- package/dist/instant-answer.js.map +1 -1
- package/dist/modes.js +355 -355
- package/dist/orchestration.js +15 -15
- package/dist/pm2-manager.js +26 -26
- package/dist/prompt-buffer.d.ts +7 -0
- package/dist/prompt-buffer.js +31 -0
- package/dist/prompt-buffer.js.map +1 -1
- package/dist/query.d.ts +4 -0
- package/dist/query.js +79 -64
- package/dist/query.js.map +1 -1
- package/dist/refactor.js +87 -87
- package/dist/search-first.js +92 -92
- package/dist/session-picker.d.ts +44 -0
- package/dist/session-picker.js +227 -0
- package/dist/session-picker.js.map +1 -0
- package/dist/skill-create.js +100 -100
- package/dist/stitch.js +1 -1
- package/dist/swarm.d.ts +34 -54
- package/dist/swarm.js +175 -63
- package/dist/swarm.js.map +1 -1
- package/dist/system-prompt.js +10 -10
- package/dist/verification.js +55 -55
- package/dist/walkthrough.js +5 -5
- package/package.json +1 -1
- package/resources/__init__.py +1 -1
- package/resources/exgentic/cawdex_agent/README.md +114 -114
- package/resources/exgentic/cawdex_agent/__init__.py +5 -5
- package/resources/exgentic/cawdex_agent/agent.py +605 -605
- package/resources/exgentic/cawdex_agent/requirements.txt +2 -2
- package/resources/exgentic/cawdex_agent/setup.sh +21 -21
- package/resources/exgentic/cawdex_agent/utils.py +1061 -1061
- package/resources/hal/cawdex_agent/README.md +24 -24
- package/resources/hal/cawdex_agent/__init__.py +1 -1
- package/resources/hal/cawdex_agent/main.py +550 -550
- package/resources/hal/cawdex_agent/requirements.txt +2 -2
- package/resources/kbench/cawdex_agent/README.md +107 -107
- package/resources/kbench/cawdex_agent/adapter.manifest.json +19 -19
- package/resources/kbench/cawdex_agent/runner.mjs +753 -753
- package/resources/open_agent_leaderboard/cawdex-agent-card.md +119 -119
- package/resources/terminal_bench/__init__.py +1 -1
- package/resources/terminal_bench/cawdex_agent.py +174 -174
- package/resources/terminal_bench/setup.sh +121 -121
package/dist/content-engine.js
CHANGED
|
@@ -32,59 +32,59 @@ export function buildArticlePrompt(topic, options) {
|
|
|
32
32
|
long: { min: 2500, max: 4000 },
|
|
33
33
|
};
|
|
34
34
|
const target = wordTargets[length];
|
|
35
|
-
return `
|
|
36
|
-
Write a long-form article on: "${topic}"
|
|
37
|
-
|
|
38
|
-
## Output Requirements
|
|
39
|
-
- **Word count:** ${target.min}–${target.max} words
|
|
40
|
-
- **Format:** Markdown with proper heading hierarchy (H1, H2, H3)
|
|
41
|
-
- **Audience:** ${audience}
|
|
42
|
-
- **Tone/Voice:** ${voice}
|
|
43
|
-
|
|
44
|
-
## Structure (Use this outline)
|
|
45
|
-
1. **Introduction** (100–150 words)
|
|
46
|
-
- Hook: Open with a compelling question, insight, or stat
|
|
47
|
-
- Context: Explain why this topic matters now
|
|
48
|
-
- Thesis: State the article's core argument or promise
|
|
49
|
-
- Roadmap: Preview the 3–5 main sections
|
|
50
|
-
|
|
51
|
-
2. **Body Sections** (3–5 sections)
|
|
52
|
-
- Each section: 200–400 words
|
|
53
|
-
- Lead with a clear subheading that answers a reader question
|
|
54
|
-
- Open with a topic sentence or mini-story
|
|
55
|
-
- Support claims with data, examples, or expert quotes
|
|
56
|
-
- Close with a takeaway or transition to the next idea
|
|
57
|
-
- Use short paragraphs (2–3 sentences) for scannability
|
|
58
|
-
|
|
59
|
-
3. **Practical Examples or Case Studies** (if applicable)
|
|
60
|
-
- Real-world application or proof point
|
|
61
|
-
- Show, don't tell: use concrete details
|
|
62
|
-
- Extract a key lesson
|
|
63
|
-
|
|
64
|
-
4. **Conclusion** (100–150 words)
|
|
65
|
-
- Restate the thesis in fresh language
|
|
66
|
-
- Summarize the 3 biggest takeaways
|
|
67
|
-
- End with a forward-looking statement or call to action
|
|
68
|
-
- Optionally: pose a question for reader reflection
|
|
69
|
-
|
|
70
|
-
## SEO & Engagement
|
|
71
|
-
- Include 2–3 subheadings that match likely search queries
|
|
72
|
-
- Use active voice and strong verbs
|
|
73
|
-
- Break up text with bullet points or short lists where appropriate
|
|
74
|
-
- Aim for 60–70 Flesch Reading Ease (accessible to educated readers)
|
|
75
|
-
- Include at least one memorable quote, stat, or analogy
|
|
76
|
-
- Vary sentence length to maintain rhythm
|
|
77
|
-
|
|
78
|
-
## Quality Checklist
|
|
79
|
-
- [ ] Fact-checked claims (link to sources if available)
|
|
80
|
-
- [ ] No jargon without explanation
|
|
81
|
-
- [ ] Consistent terminology throughout
|
|
82
|
-
- [ ] Specific details rather than vague generalities
|
|
83
|
-
- [ ] Strong opening and closing
|
|
84
|
-
- [ ] Reader can apply insights immediately
|
|
85
|
-
|
|
86
|
-
---
|
|
87
|
-
**Begin the article below. Use Markdown. Do not include a title — start with H2 headings for sections.**
|
|
35
|
+
return `
|
|
36
|
+
Write a long-form article on: "${topic}"
|
|
37
|
+
|
|
38
|
+
## Output Requirements
|
|
39
|
+
- **Word count:** ${target.min}–${target.max} words
|
|
40
|
+
- **Format:** Markdown with proper heading hierarchy (H1, H2, H3)
|
|
41
|
+
- **Audience:** ${audience}
|
|
42
|
+
- **Tone/Voice:** ${voice}
|
|
43
|
+
|
|
44
|
+
## Structure (Use this outline)
|
|
45
|
+
1. **Introduction** (100–150 words)
|
|
46
|
+
- Hook: Open with a compelling question, insight, or stat
|
|
47
|
+
- Context: Explain why this topic matters now
|
|
48
|
+
- Thesis: State the article's core argument or promise
|
|
49
|
+
- Roadmap: Preview the 3–5 main sections
|
|
50
|
+
|
|
51
|
+
2. **Body Sections** (3–5 sections)
|
|
52
|
+
- Each section: 200–400 words
|
|
53
|
+
- Lead with a clear subheading that answers a reader question
|
|
54
|
+
- Open with a topic sentence or mini-story
|
|
55
|
+
- Support claims with data, examples, or expert quotes
|
|
56
|
+
- Close with a takeaway or transition to the next idea
|
|
57
|
+
- Use short paragraphs (2–3 sentences) for scannability
|
|
58
|
+
|
|
59
|
+
3. **Practical Examples or Case Studies** (if applicable)
|
|
60
|
+
- Real-world application or proof point
|
|
61
|
+
- Show, don't tell: use concrete details
|
|
62
|
+
- Extract a key lesson
|
|
63
|
+
|
|
64
|
+
4. **Conclusion** (100–150 words)
|
|
65
|
+
- Restate the thesis in fresh language
|
|
66
|
+
- Summarize the 3 biggest takeaways
|
|
67
|
+
- End with a forward-looking statement or call to action
|
|
68
|
+
- Optionally: pose a question for reader reflection
|
|
69
|
+
|
|
70
|
+
## SEO & Engagement
|
|
71
|
+
- Include 2–3 subheadings that match likely search queries
|
|
72
|
+
- Use active voice and strong verbs
|
|
73
|
+
- Break up text with bullet points or short lists where appropriate
|
|
74
|
+
- Aim for 60–70 Flesch Reading Ease (accessible to educated readers)
|
|
75
|
+
- Include at least one memorable quote, stat, or analogy
|
|
76
|
+
- Vary sentence length to maintain rhythm
|
|
77
|
+
|
|
78
|
+
## Quality Checklist
|
|
79
|
+
- [ ] Fact-checked claims (link to sources if available)
|
|
80
|
+
- [ ] No jargon without explanation
|
|
81
|
+
- [ ] Consistent terminology throughout
|
|
82
|
+
- [ ] Specific details rather than vague generalities
|
|
83
|
+
- [ ] Strong opening and closing
|
|
84
|
+
- [ ] Reader can apply insights immediately
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
**Begin the article below. Use Markdown. Do not include a title — start with H2 headings for sections.**
|
|
88
88
|
`;
|
|
89
89
|
}
|
|
90
90
|
/**
|
|
@@ -140,42 +140,42 @@ export function buildContentRepurposePrompt(content, platforms) {
|
|
|
140
140
|
tone: 'professional',
|
|
141
141
|
format: 'standard format',
|
|
142
142
|
};
|
|
143
|
-
return `
|
|
144
|
-
**${p.toUpperCase()}**
|
|
145
|
-
- Max length: ${guide.maxLength} characters
|
|
146
|
-
- Tone: ${guide.tone}
|
|
147
|
-
- Format: ${guide.format}
|
|
143
|
+
return `
|
|
144
|
+
**${p.toUpperCase()}**
|
|
145
|
+
- Max length: ${guide.maxLength} characters
|
|
146
|
+
- Tone: ${guide.tone}
|
|
147
|
+
- Format: ${guide.format}
|
|
148
148
|
`;
|
|
149
149
|
})
|
|
150
150
|
.join('\n');
|
|
151
|
-
return `
|
|
152
|
-
Repurpose the following content for multiple platforms.
|
|
153
|
-
|
|
154
|
-
## Original Content
|
|
155
|
-
\`\`\`
|
|
156
|
-
${content}
|
|
157
|
-
\`\`\`
|
|
158
|
-
|
|
159
|
-
## Target Platforms & Requirements
|
|
160
|
-
${platformsList}
|
|
161
|
-
|
|
162
|
-
## Key Instructions
|
|
163
|
-
1. **Extract the core insight** — Identify the most valuable, shareable takeaway
|
|
164
|
-
2. **Adapt voice** — Match each platform's culture and audience expectations
|
|
165
|
-
3. **Reformat for platform constraints** — Respect character/length limits
|
|
166
|
-
4. **Optimize for discoverability** — Use platform-native features (hashtags on Twitter/LinkedIn, questions on Reddit, hooks in email subject)
|
|
167
|
-
5. **Preserve credibility** — Keep claims accurate; add context where needed
|
|
168
|
-
6. **Include CTAs** — Where appropriate, link back to full content or suggest next action
|
|
169
|
-
|
|
170
|
-
## Output Format
|
|
171
|
-
For each platform, provide:
|
|
172
|
-
- Platform name
|
|
173
|
-
- Adapted copy (full text)
|
|
174
|
-
- Any suggested hashtags, tags, or metadata
|
|
175
|
-
- Brief note on why this version works for that platform
|
|
176
|
-
|
|
177
|
-
---
|
|
178
|
-
**Begin below.**
|
|
151
|
+
return `
|
|
152
|
+
Repurpose the following content for multiple platforms.
|
|
153
|
+
|
|
154
|
+
## Original Content
|
|
155
|
+
\`\`\`
|
|
156
|
+
${content}
|
|
157
|
+
\`\`\`
|
|
158
|
+
|
|
159
|
+
## Target Platforms & Requirements
|
|
160
|
+
${platformsList}
|
|
161
|
+
|
|
162
|
+
## Key Instructions
|
|
163
|
+
1. **Extract the core insight** — Identify the most valuable, shareable takeaway
|
|
164
|
+
2. **Adapt voice** — Match each platform's culture and audience expectations
|
|
165
|
+
3. **Reformat for platform constraints** — Respect character/length limits
|
|
166
|
+
4. **Optimize for discoverability** — Use platform-native features (hashtags on Twitter/LinkedIn, questions on Reddit, hooks in email subject)
|
|
167
|
+
5. **Preserve credibility** — Keep claims accurate; add context where needed
|
|
168
|
+
6. **Include CTAs** — Where appropriate, link back to full content or suggest next action
|
|
169
|
+
|
|
170
|
+
## Output Format
|
|
171
|
+
For each platform, provide:
|
|
172
|
+
- Platform name
|
|
173
|
+
- Adapted copy (full text)
|
|
174
|
+
- Any suggested hashtags, tags, or metadata
|
|
175
|
+
- Brief note on why this version works for that platform
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
**Begin below.**
|
|
179
179
|
`;
|
|
180
180
|
}
|
|
181
181
|
/**
|
|
@@ -187,42 +187,42 @@ For each platform, provide:
|
|
|
187
187
|
* @returns Slide-generation prompt
|
|
188
188
|
*/
|
|
189
189
|
export function buildSlidePrompt(topic, slideCount = 10) {
|
|
190
|
-
return `
|
|
191
|
-
Generate an HTML slide deck presentation on: "${topic}"
|
|
192
|
-
|
|
193
|
-
## Specifications
|
|
194
|
-
- Total slides: ${slideCount}
|
|
195
|
-
- Format: Self-contained HTML file with embedded CSS and JavaScript
|
|
196
|
-
- Styling: Modern, clean, readable; use a consistent color scheme
|
|
197
|
-
- Navigation: Arrow keys or on-screen buttons to advance slides
|
|
198
|
-
- Include a title slide, content slides, and a closing slide
|
|
199
|
-
|
|
200
|
-
## Slide Structure (adjust as needed)
|
|
201
|
-
1. **Title Slide** — Topic, date, optionally author/company
|
|
202
|
-
2. **Agenda or Overview** — What the presentation covers
|
|
203
|
-
3–${slideCount - 2}. **Content Slides** — Main topics, ideas, examples, data
|
|
204
|
-
${slideCount}. **Closing Slide** — Summary, call to action, contact info
|
|
205
|
-
|
|
206
|
-
## Design Guidelines
|
|
207
|
-
- **Typography:** Use a readable sans-serif font (Helvetica, Arial, or system sans)
|
|
208
|
-
- **Colors:** Limit to 2–3 primary colors + white/dark backgrounds
|
|
209
|
-
- **Images/Icons:** Use only if needed; keep visual clutter minimal
|
|
210
|
-
- **Text:** Keep bullet points to 3–5 lines per slide; use short, punchy phrases
|
|
211
|
-
- **Data:** Use charts or simple visuals for complex information
|
|
212
|
-
- **Contrast:** Ensure text is legible on background (WCAG AA minimum)
|
|
213
|
-
|
|
214
|
-
## HTML Requirements
|
|
215
|
-
- Responsive design (mobile-friendly)
|
|
216
|
-
- No external dependencies (embed all CSS/JS)
|
|
217
|
-
- Include keyboard navigation (arrow keys)
|
|
218
|
-
- Slide counter (e.g., "Slide 3 of ${slideCount}")
|
|
219
|
-
- Optional: slide transition effects (fade or slide)
|
|
220
|
-
|
|
221
|
-
## Output Format
|
|
222
|
-
Return complete, ready-to-save HTML. It should be able to run in any modern browser.
|
|
223
|
-
|
|
224
|
-
---
|
|
225
|
-
**Begin below. Provide ONLY the HTML code, no explanation.**
|
|
190
|
+
return `
|
|
191
|
+
Generate an HTML slide deck presentation on: "${topic}"
|
|
192
|
+
|
|
193
|
+
## Specifications
|
|
194
|
+
- Total slides: ${slideCount}
|
|
195
|
+
- Format: Self-contained HTML file with embedded CSS and JavaScript
|
|
196
|
+
- Styling: Modern, clean, readable; use a consistent color scheme
|
|
197
|
+
- Navigation: Arrow keys or on-screen buttons to advance slides
|
|
198
|
+
- Include a title slide, content slides, and a closing slide
|
|
199
|
+
|
|
200
|
+
## Slide Structure (adjust as needed)
|
|
201
|
+
1. **Title Slide** — Topic, date, optionally author/company
|
|
202
|
+
2. **Agenda or Overview** — What the presentation covers
|
|
203
|
+
3–${slideCount - 2}. **Content Slides** — Main topics, ideas, examples, data
|
|
204
|
+
${slideCount}. **Closing Slide** — Summary, call to action, contact info
|
|
205
|
+
|
|
206
|
+
## Design Guidelines
|
|
207
|
+
- **Typography:** Use a readable sans-serif font (Helvetica, Arial, or system sans)
|
|
208
|
+
- **Colors:** Limit to 2–3 primary colors + white/dark backgrounds
|
|
209
|
+
- **Images/Icons:** Use only if needed; keep visual clutter minimal
|
|
210
|
+
- **Text:** Keep bullet points to 3–5 lines per slide; use short, punchy phrases
|
|
211
|
+
- **Data:** Use charts or simple visuals for complex information
|
|
212
|
+
- **Contrast:** Ensure text is legible on background (WCAG AA minimum)
|
|
213
|
+
|
|
214
|
+
## HTML Requirements
|
|
215
|
+
- Responsive design (mobile-friendly)
|
|
216
|
+
- No external dependencies (embed all CSS/JS)
|
|
217
|
+
- Include keyboard navigation (arrow keys)
|
|
218
|
+
- Slide counter (e.g., "Slide 3 of ${slideCount}")
|
|
219
|
+
- Optional: slide transition effects (fade or slide)
|
|
220
|
+
|
|
221
|
+
## Output Format
|
|
222
|
+
Return complete, ready-to-save HTML. It should be able to run in any modern browser.
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
**Begin below. Provide ONLY the HTML code, no explanation.**
|
|
226
226
|
`;
|
|
227
227
|
}
|
|
228
228
|
// ── Business & Research ───────────────────────────────────
|
|
@@ -238,55 +238,55 @@ export function buildMarketResearchPrompt(topic, sources) {
|
|
|
238
238
|
const sourceGuide = sources
|
|
239
239
|
? `Prioritize these sources: ${sources.join(', ')}`
|
|
240
240
|
: 'Use a mix of: industry reports, news articles, company earnings calls, analyst research, academic papers, and regulatory filings.';
|
|
241
|
-
return `
|
|
242
|
-
Conduct market research on: "${topic}"
|
|
243
|
-
|
|
244
|
-
## Research Requirements
|
|
245
|
-
1. **Market Size & Growth**
|
|
246
|
-
- Current market size (with year)
|
|
247
|
-
- YoY growth rate (last 3 years if available)
|
|
248
|
-
- Projected growth (next 3–5 years)
|
|
249
|
-
- Key geographic regions
|
|
250
|
-
|
|
251
|
-
2. **Competitive Landscape**
|
|
252
|
-
- Top 3–5 competitors: names, market share, key strengths/weaknesses
|
|
253
|
-
- Market concentration (fragmented vs. consolidated)
|
|
254
|
-
- Barriers to entry
|
|
255
|
-
- New entrants or disruptors
|
|
256
|
-
|
|
257
|
-
3. **Trends & Drivers**
|
|
258
|
-
- 3–5 major trends shaping the market
|
|
259
|
-
- Customer pain points or unmet needs
|
|
260
|
-
- Regulatory or policy changes
|
|
261
|
-
- Technological shifts
|
|
262
|
-
|
|
263
|
-
4. **Customer Segments**
|
|
264
|
-
- Primary buyers/users
|
|
265
|
-
- Customer pain points or priorities
|
|
266
|
-
- Purchasing drivers (price, features, brand, support)
|
|
267
|
-
|
|
268
|
-
5. **Distribution & Pricing**
|
|
269
|
-
- How solutions reach customers (direct, reseller, marketplace)
|
|
270
|
-
- Typical pricing models and ranges
|
|
271
|
-
- Customer acquisition costs (if known)
|
|
272
|
-
|
|
273
|
-
## Source Guidance
|
|
274
|
-
${sourceGuide}
|
|
275
|
-
|
|
276
|
-
## Output Format
|
|
277
|
-
Use this structure:
|
|
278
|
-
|
|
279
|
-
### [Section Title]
|
|
280
|
-
**Finding:** [Clear statement or data point]
|
|
281
|
-
**Source:** [Source type and credibility note, e.g., "Gartner Magic Quadrant 2024" or "Q3 2024 SEC filing"]
|
|
282
|
-
**Date:** [Publication/data date]
|
|
283
|
-
**Notes:** [Brief context or supporting detail]
|
|
284
|
-
|
|
285
|
-
---
|
|
286
|
-
|
|
287
|
-
**Critical Rule:** Every claim must be attributed. If you're uncertain about a data point, note it as "likely range" or "estimated by [source]."
|
|
288
|
-
|
|
289
|
-
**Begin below.**
|
|
241
|
+
return `
|
|
242
|
+
Conduct market research on: "${topic}"
|
|
243
|
+
|
|
244
|
+
## Research Requirements
|
|
245
|
+
1. **Market Size & Growth**
|
|
246
|
+
- Current market size (with year)
|
|
247
|
+
- YoY growth rate (last 3 years if available)
|
|
248
|
+
- Projected growth (next 3–5 years)
|
|
249
|
+
- Key geographic regions
|
|
250
|
+
|
|
251
|
+
2. **Competitive Landscape**
|
|
252
|
+
- Top 3–5 competitors: names, market share, key strengths/weaknesses
|
|
253
|
+
- Market concentration (fragmented vs. consolidated)
|
|
254
|
+
- Barriers to entry
|
|
255
|
+
- New entrants or disruptors
|
|
256
|
+
|
|
257
|
+
3. **Trends & Drivers**
|
|
258
|
+
- 3–5 major trends shaping the market
|
|
259
|
+
- Customer pain points or unmet needs
|
|
260
|
+
- Regulatory or policy changes
|
|
261
|
+
- Technological shifts
|
|
262
|
+
|
|
263
|
+
4. **Customer Segments**
|
|
264
|
+
- Primary buyers/users
|
|
265
|
+
- Customer pain points or priorities
|
|
266
|
+
- Purchasing drivers (price, features, brand, support)
|
|
267
|
+
|
|
268
|
+
5. **Distribution & Pricing**
|
|
269
|
+
- How solutions reach customers (direct, reseller, marketplace)
|
|
270
|
+
- Typical pricing models and ranges
|
|
271
|
+
- Customer acquisition costs (if known)
|
|
272
|
+
|
|
273
|
+
## Source Guidance
|
|
274
|
+
${sourceGuide}
|
|
275
|
+
|
|
276
|
+
## Output Format
|
|
277
|
+
Use this structure:
|
|
278
|
+
|
|
279
|
+
### [Section Title]
|
|
280
|
+
**Finding:** [Clear statement or data point]
|
|
281
|
+
**Source:** [Source type and credibility note, e.g., "Gartner Magic Quadrant 2024" or "Q3 2024 SEC filing"]
|
|
282
|
+
**Date:** [Publication/data date]
|
|
283
|
+
**Notes:** [Brief context or supporting detail]
|
|
284
|
+
|
|
285
|
+
---
|
|
286
|
+
|
|
287
|
+
**Critical Rule:** Every claim must be attributed. If you're uncertain about a data point, note it as "likely range" or "estimated by [source]."
|
|
288
|
+
|
|
289
|
+
**Begin below.**
|
|
290
290
|
`;
|
|
291
291
|
}
|
|
292
292
|
/**
|
|
@@ -301,101 +301,101 @@ export function buildInvestorDeckPrompt(company, stage) {
|
|
|
301
301
|
const stageContext = stage && ['seed', 'series-a', 'series-b', 'series-c', 'growth'].includes(stage.toLowerCase())
|
|
302
302
|
? `This is a ${stage} round.`
|
|
303
303
|
: 'Stage not specified; use standard startup pitch format.';
|
|
304
|
-
return `
|
|
305
|
-
Generate an investor pitch deck outline for: "${company}"
|
|
306
|
-
|
|
307
|
-
${stageContext}
|
|
308
|
-
|
|
309
|
-
## Standard Pitch Deck Structure (12–15 slides)
|
|
310
|
-
|
|
311
|
-
1. **Title Slide**
|
|
312
|
-
- Company name, tagline, logo
|
|
313
|
-
- Founder names (optional)
|
|
314
|
-
|
|
315
|
-
2. **The Problem**
|
|
316
|
-
- Customer pain point (specific, quantified if possible)
|
|
317
|
-
- Current inefficiency or cost
|
|
318
|
-
- Who feels this pain? (target customer segment)
|
|
319
|
-
- Why now? (market conditions, urgency)
|
|
320
|
-
|
|
321
|
-
3. **The Solution**
|
|
322
|
-
- How your product/service solves the problem
|
|
323
|
-
- Unique approach or differentiation
|
|
324
|
-
- Key features or capabilities (if not obvious)
|
|
325
|
-
- Product demo or visual mockup (if applicable)
|
|
326
|
-
|
|
327
|
-
4. **Market Opportunity**
|
|
328
|
-
- Total Addressable Market (TAM)
|
|
329
|
-
- Serviceable Addressable Market (SAM)
|
|
330
|
-
- Serviceable Obtainable Market (SOM) — Year 1 target
|
|
331
|
-
- Market growth trajectory
|
|
332
|
-
|
|
333
|
-
5. **Business Model**
|
|
334
|
-
- How you make money (SaaS, marketplace, licensing, etc.)
|
|
335
|
-
- Pricing strategy
|
|
336
|
-
- Unit economics (if favorable)
|
|
337
|
-
- Customer lifetime value vs. CAC
|
|
338
|
-
|
|
339
|
-
6. **Go-to-Market Strategy**
|
|
340
|
-
- How you'll acquire customers
|
|
341
|
-
- Sales/marketing channels
|
|
342
|
-
- Partnerships or distribution deals
|
|
343
|
-
- Timeline to first revenue (if pre-revenue)
|
|
344
|
-
|
|
345
|
-
7. **Competitive Landscape**
|
|
346
|
-
- Direct and indirect competitors
|
|
347
|
-
- Your competitive advantages
|
|
348
|
-
- Market positioning (what's different?)
|
|
349
|
-
|
|
350
|
-
8. **Traction**
|
|
351
|
-
- Users, revenue, or engagement metrics
|
|
352
|
-
- Growth rate (MoM or YoY)
|
|
353
|
-
- Key milestones achieved
|
|
354
|
-
- Customer testimonials or logos (if applicable)
|
|
355
|
-
|
|
356
|
-
9. **Team**
|
|
357
|
-
- Founder/leadership backgrounds (relevant experience)
|
|
358
|
-
- Key hires or advisors
|
|
359
|
-
- Why this team can win
|
|
360
|
-
|
|
361
|
-
10. **Financials & Projections** (3-year forward)
|
|
362
|
-
- Historical revenue (if applicable)
|
|
363
|
-
- Revenue projections (conservative, realistic, optimistic)
|
|
364
|
-
- Path to profitability or key profitability milestones
|
|
365
|
-
- Burn rate and runway
|
|
366
|
-
|
|
367
|
-
11. **Use of Funds**
|
|
368
|
-
- Allocation: product, sales/marketing, operations, hiring
|
|
369
|
-
- Key hires or investments planned
|
|
370
|
-
- How this accelerates growth
|
|
371
|
-
|
|
372
|
-
12. **The Ask**
|
|
373
|
-
- Funding amount
|
|
374
|
-
- Post-money valuation (if appropriate)
|
|
375
|
-
- Investor benefits/rights
|
|
376
|
-
|
|
377
|
-
13. **Closing / Vision**
|
|
378
|
-
- Long-term vision (where is the company in 10 years?)
|
|
379
|
-
- Why this matters
|
|
380
|
-
- Call to action (discuss further, office hours, etc.)
|
|
381
|
-
|
|
382
|
-
## Content Guidelines
|
|
383
|
-
- **Problem & Solution:** Make it visceral and urgent, not abstract
|
|
384
|
-
- **Numbers:** Use realistic, defensible figures; note assumptions
|
|
385
|
-
- **Tone:** Confident but not overconfident; show you understand risks
|
|
386
|
-
- **Design Notes:** Recommend high-contrast colors, minimal text, strong visuals
|
|
387
|
-
- **Storytelling:** Lead with narrative (why does this founder care?), then data
|
|
388
|
-
|
|
389
|
-
## Investor Mindset
|
|
390
|
-
Investors ask: "Is this a real problem? Can this team solve it? Is the market big? Will they spend the money wisely? What's my return?"
|
|
391
|
-
|
|
392
|
-
---
|
|
393
|
-
**For each slide, provide:**
|
|
394
|
-
- **Slide Title**
|
|
395
|
-
- **Key Points** (3–5 bullet points)
|
|
396
|
-
- **Visual Recommendations** (e.g., "charts showing market growth," "team photos")
|
|
397
|
-
|
|
398
|
-
**Begin below.**
|
|
304
|
+
return `
|
|
305
|
+
Generate an investor pitch deck outline for: "${company}"
|
|
306
|
+
|
|
307
|
+
${stageContext}
|
|
308
|
+
|
|
309
|
+
## Standard Pitch Deck Structure (12–15 slides)
|
|
310
|
+
|
|
311
|
+
1. **Title Slide**
|
|
312
|
+
- Company name, tagline, logo
|
|
313
|
+
- Founder names (optional)
|
|
314
|
+
|
|
315
|
+
2. **The Problem**
|
|
316
|
+
- Customer pain point (specific, quantified if possible)
|
|
317
|
+
- Current inefficiency or cost
|
|
318
|
+
- Who feels this pain? (target customer segment)
|
|
319
|
+
- Why now? (market conditions, urgency)
|
|
320
|
+
|
|
321
|
+
3. **The Solution**
|
|
322
|
+
- How your product/service solves the problem
|
|
323
|
+
- Unique approach or differentiation
|
|
324
|
+
- Key features or capabilities (if not obvious)
|
|
325
|
+
- Product demo or visual mockup (if applicable)
|
|
326
|
+
|
|
327
|
+
4. **Market Opportunity**
|
|
328
|
+
- Total Addressable Market (TAM)
|
|
329
|
+
- Serviceable Addressable Market (SAM)
|
|
330
|
+
- Serviceable Obtainable Market (SOM) — Year 1 target
|
|
331
|
+
- Market growth trajectory
|
|
332
|
+
|
|
333
|
+
5. **Business Model**
|
|
334
|
+
- How you make money (SaaS, marketplace, licensing, etc.)
|
|
335
|
+
- Pricing strategy
|
|
336
|
+
- Unit economics (if favorable)
|
|
337
|
+
- Customer lifetime value vs. CAC
|
|
338
|
+
|
|
339
|
+
6. **Go-to-Market Strategy**
|
|
340
|
+
- How you'll acquire customers
|
|
341
|
+
- Sales/marketing channels
|
|
342
|
+
- Partnerships or distribution deals
|
|
343
|
+
- Timeline to first revenue (if pre-revenue)
|
|
344
|
+
|
|
345
|
+
7. **Competitive Landscape**
|
|
346
|
+
- Direct and indirect competitors
|
|
347
|
+
- Your competitive advantages
|
|
348
|
+
- Market positioning (what's different?)
|
|
349
|
+
|
|
350
|
+
8. **Traction**
|
|
351
|
+
- Users, revenue, or engagement metrics
|
|
352
|
+
- Growth rate (MoM or YoY)
|
|
353
|
+
- Key milestones achieved
|
|
354
|
+
- Customer testimonials or logos (if applicable)
|
|
355
|
+
|
|
356
|
+
9. **Team**
|
|
357
|
+
- Founder/leadership backgrounds (relevant experience)
|
|
358
|
+
- Key hires or advisors
|
|
359
|
+
- Why this team can win
|
|
360
|
+
|
|
361
|
+
10. **Financials & Projections** (3-year forward)
|
|
362
|
+
- Historical revenue (if applicable)
|
|
363
|
+
- Revenue projections (conservative, realistic, optimistic)
|
|
364
|
+
- Path to profitability or key profitability milestones
|
|
365
|
+
- Burn rate and runway
|
|
366
|
+
|
|
367
|
+
11. **Use of Funds**
|
|
368
|
+
- Allocation: product, sales/marketing, operations, hiring
|
|
369
|
+
- Key hires or investments planned
|
|
370
|
+
- How this accelerates growth
|
|
371
|
+
|
|
372
|
+
12. **The Ask**
|
|
373
|
+
- Funding amount
|
|
374
|
+
- Post-money valuation (if appropriate)
|
|
375
|
+
- Investor benefits/rights
|
|
376
|
+
|
|
377
|
+
13. **Closing / Vision**
|
|
378
|
+
- Long-term vision (where is the company in 10 years?)
|
|
379
|
+
- Why this matters
|
|
380
|
+
- Call to action (discuss further, office hours, etc.)
|
|
381
|
+
|
|
382
|
+
## Content Guidelines
|
|
383
|
+
- **Problem & Solution:** Make it visceral and urgent, not abstract
|
|
384
|
+
- **Numbers:** Use realistic, defensible figures; note assumptions
|
|
385
|
+
- **Tone:** Confident but not overconfident; show you understand risks
|
|
386
|
+
- **Design Notes:** Recommend high-contrast colors, minimal text, strong visuals
|
|
387
|
+
- **Storytelling:** Lead with narrative (why does this founder care?), then data
|
|
388
|
+
|
|
389
|
+
## Investor Mindset
|
|
390
|
+
Investors ask: "Is this a real problem? Can this team solve it? Is the market big? Will they spend the money wisely? What's my return?"
|
|
391
|
+
|
|
392
|
+
---
|
|
393
|
+
**For each slide, provide:**
|
|
394
|
+
- **Slide Title**
|
|
395
|
+
- **Key Points** (3–5 bullet points)
|
|
396
|
+
- **Visual Recommendations** (e.g., "charts showing market growth," "team photos")
|
|
397
|
+
|
|
398
|
+
**Begin below.**
|
|
399
399
|
`;
|
|
400
400
|
}
|
|
401
401
|
/**
|
|
@@ -407,59 +407,59 @@ Investors ask: "Is this a real problem? Can this team solve it? Is the market bi
|
|
|
407
407
|
* @returns Outreach prompt with email templates
|
|
408
408
|
*/
|
|
409
409
|
export function buildInvestorOutreachPrompt(investor, company) {
|
|
410
|
-
return `
|
|
411
|
-
Create a personalized investor outreach sequence for: ${investor} at their firm, on behalf of ${company}.
|
|
412
|
-
|
|
413
|
-
## Objectives
|
|
414
|
-
1. Grab attention with a specific, credible hook
|
|
415
|
-
2. Briefly convey your value proposition
|
|
416
|
-
3. Request an initial conversation (office hours, brief call)
|
|
417
|
-
4. Follow up if no response (2–3 touch points)
|
|
418
|
-
5. Maintain professionalism and respect for their time
|
|
419
|
-
|
|
420
|
-
## Email Sequence
|
|
421
|
-
|
|
422
|
-
### Email 1: Initial Outreach
|
|
423
|
-
**Subject Line:** [Create 2 options: one reference-based, one curiosity-based]
|
|
424
|
-
**Body:**
|
|
425
|
-
- Personalization: Show you know their recent investments, thesis, or public comments
|
|
426
|
-
- Credibility: Why you're reaching out to them specifically (not form email)
|
|
427
|
-
- Hook: Lead with the biggest insight or problem your company solves
|
|
428
|
-
- Social proof: Any mutual connections, relevant credential, or early traction
|
|
429
|
-
- Clear CTA: Request 15–20 min call or office hours; link to calendar if possible
|
|
430
|
-
- Tone: Warm, respectful, brief (under 150 words in body)
|
|
431
|
-
|
|
432
|
-
### Email 2: Follow-up (5–7 days after #1, if no response)
|
|
433
|
-
**Subject Line:** [Light, not pushy; e.g., "Quick thought on [specific area]"]
|
|
434
|
-
**Body:**
|
|
435
|
-
- Acknowledge you may have missed them
|
|
436
|
-
- Add one new detail, article, or social proof not in Email 1
|
|
437
|
-
- Soften the CTA: "If you're open to a brief conversation, I'd love to share..."
|
|
438
|
-
- Keep it short (100 words)
|
|
439
|
-
|
|
440
|
-
### Email 3: Final Touch (10–14 days after #1)
|
|
441
|
-
**Subject Line:** [Ask for specific advice or specific feedback, not a meeting]
|
|
442
|
-
**Body:**
|
|
443
|
-
- Shift from "I want your money" to "I value your expertise"
|
|
444
|
-
- Ask a genuine question about their thesis, the market, or your approach
|
|
445
|
-
- Make it clear this is your last outreach attempt
|
|
446
|
-
- Leave door open: "No pressure, but always happy to connect if timing improves"
|
|
447
|
-
|
|
448
|
-
## Personalization Checklist
|
|
449
|
-
- [ ] Investor's recent investment(s) or public statement(s) mentioned
|
|
450
|
-
- [ ] Reason why *this investor specifically* is a good fit (not just a big firm)
|
|
451
|
-
- [ ] Company's unique angle or unfair advantage briefly stated
|
|
452
|
-
- [ ] One concrete metric or milestone (users, revenue, engagement)
|
|
453
|
-
- [ ] Honest, conversational tone — not salesy
|
|
454
|
-
- [ ] Calendar link or specific meeting options provided
|
|
455
|
-
|
|
456
|
-
---
|
|
457
|
-
**Provide the sequence below. For each email, include:**
|
|
458
|
-
- **Subject Line**
|
|
459
|
-
- **Body Text** (formatted as it would appear in email)
|
|
460
|
-
- **Brief notes** on timing and personalization cues
|
|
461
|
-
|
|
462
|
-
**Begin below.**
|
|
410
|
+
return `
|
|
411
|
+
Create a personalized investor outreach sequence for: ${investor} at their firm, on behalf of ${company}.
|
|
412
|
+
|
|
413
|
+
## Objectives
|
|
414
|
+
1. Grab attention with a specific, credible hook
|
|
415
|
+
2. Briefly convey your value proposition
|
|
416
|
+
3. Request an initial conversation (office hours, brief call)
|
|
417
|
+
4. Follow up if no response (2–3 touch points)
|
|
418
|
+
5. Maintain professionalism and respect for their time
|
|
419
|
+
|
|
420
|
+
## Email Sequence
|
|
421
|
+
|
|
422
|
+
### Email 1: Initial Outreach
|
|
423
|
+
**Subject Line:** [Create 2 options: one reference-based, one curiosity-based]
|
|
424
|
+
**Body:**
|
|
425
|
+
- Personalization: Show you know their recent investments, thesis, or public comments
|
|
426
|
+
- Credibility: Why you're reaching out to them specifically (not form email)
|
|
427
|
+
- Hook: Lead with the biggest insight or problem your company solves
|
|
428
|
+
- Social proof: Any mutual connections, relevant credential, or early traction
|
|
429
|
+
- Clear CTA: Request 15–20 min call or office hours; link to calendar if possible
|
|
430
|
+
- Tone: Warm, respectful, brief (under 150 words in body)
|
|
431
|
+
|
|
432
|
+
### Email 2: Follow-up (5–7 days after #1, if no response)
|
|
433
|
+
**Subject Line:** [Light, not pushy; e.g., "Quick thought on [specific area]"]
|
|
434
|
+
**Body:**
|
|
435
|
+
- Acknowledge you may have missed them
|
|
436
|
+
- Add one new detail, article, or social proof not in Email 1
|
|
437
|
+
- Soften the CTA: "If you're open to a brief conversation, I'd love to share..."
|
|
438
|
+
- Keep it short (100 words)
|
|
439
|
+
|
|
440
|
+
### Email 3: Final Touch (10–14 days after #1)
|
|
441
|
+
**Subject Line:** [Ask for specific advice or specific feedback, not a meeting]
|
|
442
|
+
**Body:**
|
|
443
|
+
- Shift from "I want your money" to "I value your expertise"
|
|
444
|
+
- Ask a genuine question about their thesis, the market, or your approach
|
|
445
|
+
- Make it clear this is your last outreach attempt
|
|
446
|
+
- Leave door open: "No pressure, but always happy to connect if timing improves"
|
|
447
|
+
|
|
448
|
+
## Personalization Checklist
|
|
449
|
+
- [ ] Investor's recent investment(s) or public statement(s) mentioned
|
|
450
|
+
- [ ] Reason why *this investor specifically* is a good fit (not just a big firm)
|
|
451
|
+
- [ ] Company's unique angle or unfair advantage briefly stated
|
|
452
|
+
- [ ] One concrete metric or milestone (users, revenue, engagement)
|
|
453
|
+
- [ ] Honest, conversational tone — not salesy
|
|
454
|
+
- [ ] Calendar link or specific meeting options provided
|
|
455
|
+
|
|
456
|
+
---
|
|
457
|
+
**Provide the sequence below. For each email, include:**
|
|
458
|
+
- **Subject Line**
|
|
459
|
+
- **Body Text** (formatted as it would appear in email)
|
|
460
|
+
- **Brief notes** on timing and personalization cues
|
|
461
|
+
|
|
462
|
+
**Begin below.**
|
|
463
463
|
`;
|
|
464
464
|
}
|
|
465
465
|
// ── Code Quality ──────────────────────────────────────────
|
|
@@ -472,92 +472,92 @@ Create a personalized investor outreach sequence for: ${investor} at their firm,
|
|
|
472
472
|
* @returns Code quality prompt
|
|
473
473
|
*/
|
|
474
474
|
export function buildCodeQualityPrompt(cwd) {
|
|
475
|
-
return `
|
|
476
|
-
Review code quality for the project at: ${cwd}
|
|
477
|
-
|
|
478
|
-
## Code Quality Checklist
|
|
479
|
-
|
|
480
|
-
### 1. Naming Conventions
|
|
481
|
-
- [ ] Functions, variables, and methods use clear, intention-revealing names
|
|
482
|
-
- [ ] No single-letter variables except for loop counters (i, j, k)
|
|
483
|
-
- [ ] Class/type names are nouns; function names are verbs
|
|
484
|
-
- [ ] Avoid abbreviations unless universally understood (e.g., "id" OK, "idx" not OK)
|
|
485
|
-
- [ ] Boolean functions/variables start with "is", "has", "can", "should"
|
|
486
|
-
- [ ] Constant names use SCREAMING_SNAKE_CASE
|
|
487
|
-
- [ ] Private methods/fields prefixed with underscore (if not using access modifiers)
|
|
488
|
-
|
|
489
|
-
### 2. Function Length & Complexity
|
|
490
|
-
- [ ] Functions are short and focused (prefer <30 lines; max 50)
|
|
491
|
-
- [ ] Functions do one thing well
|
|
492
|
-
- [ ] Cyclomatic complexity <= 10 (avoid deep nesting)
|
|
493
|
-
- [ ] Early returns reduce indentation and improve readability
|
|
494
|
-
- [ ] No nested callbacks or callback hell
|
|
495
|
-
|
|
496
|
-
### 3. Comments & Documentation
|
|
497
|
-
- [ ] Public APIs (exports) have JSDoc or equivalent docstrings
|
|
498
|
-
- [ ] Complex logic has inline comments explaining the "why", not "what"
|
|
499
|
-
- [ ] No obsolete or redundant comments
|
|
500
|
-
- [ ] TODOs are dated and reference an issue/PR if possible
|
|
501
|
-
- [ ] README or file-level comments explain module purpose
|
|
502
|
-
|
|
503
|
-
### 4. Error Handling
|
|
504
|
-
- [ ] All promises are awaited or explicitly handled
|
|
505
|
-
- [ ] No silent failures (catch blocks log or throw)
|
|
506
|
-
- [ ] Errors include context (not just generic messages)
|
|
507
|
-
- [ ] Type safety: use typed errors, not generic strings
|
|
508
|
-
|
|
509
|
-
### 5. Testing Expectations
|
|
510
|
-
- [ ] Critical paths have test coverage (>80% target)
|
|
511
|
-
- [ ] Tests are descriptive: test names explain the scenario
|
|
512
|
-
- [ ] Tests are isolated (no shared state between tests)
|
|
513
|
-
- [ ] Edge cases are covered (empty input, null, boundary values)
|
|
514
|
-
- [ ] No test-only code in production
|
|
515
|
-
|
|
516
|
-
### 6. Code Style & Formatting
|
|
517
|
-
- [ ] Consistent indentation and spacing
|
|
518
|
-
- [ ] Lines under 100 characters (adjust for project)
|
|
519
|
-
- [ ] Imports organized: dependencies first, then relative imports
|
|
520
|
-
- [ ] No unused imports or variables
|
|
521
|
-
- [ ] Consistent quote style and semicolon usage
|
|
522
|
-
|
|
523
|
-
### 7. Type Safety (if applicable)
|
|
524
|
-
- [ ] Exported functions have explicit return types
|
|
525
|
-
- [ ] Generic types are narrow and well-constrained
|
|
526
|
-
- [ ] No use of "any" unless unavoidable (with comment)
|
|
527
|
-
- [ ] Objects prefer interfaces/types over inline shapes
|
|
528
|
-
- [ ] Nullable types are explicit (Optional, null, undefined)
|
|
529
|
-
|
|
530
|
-
### 8. Performance & Resources
|
|
531
|
-
- [ ] No N+1 queries or unnecessary loops
|
|
532
|
-
- [ ] No memory leaks (event listeners cleaned up, streams closed)
|
|
533
|
-
- [ ] No console.log in production code
|
|
534
|
-
- [ ] Heavy operations are async/non-blocking
|
|
535
|
-
|
|
536
|
-
### 9. Maintainability
|
|
537
|
-
- [ ] DRY: no obvious code duplication (extract to helper)
|
|
538
|
-
- [ ] Prefer composition over inheritance
|
|
539
|
-
- [ ] Constants are defined once (no magic numbers)
|
|
540
|
-
- [ ] Configuration is centralized, not scattered
|
|
541
|
-
- [ ] Dependencies are minimal and justified
|
|
542
|
-
|
|
543
|
-
### 10. Security & Best Practices
|
|
544
|
-
- [ ] No hardcoded secrets (API keys, passwords)
|
|
545
|
-
- [ ] Input validation for user-facing APIs
|
|
546
|
-
- [ ] SQL queries use parameterized statements (no injection)
|
|
547
|
-
- [ ] Dependencies are up-to-date and vulnerable-free
|
|
548
|
-
- [ ] CORS, CSP, or other security headers configured (if web)
|
|
549
|
-
|
|
550
|
-
---
|
|
551
|
-
## Output Format
|
|
552
|
-
For each file or module reviewed:
|
|
553
|
-
- **File:** [path/to/file]
|
|
554
|
-
- **Status:** PASS / WARNINGS / FAIL
|
|
555
|
-
- **Issues Found:** [List each issue with line number if applicable]
|
|
556
|
-
- **Recommendations:** [Specific, actionable improvements]
|
|
557
|
-
- **Priority:** CRITICAL / HIGH / MEDIUM / LOW
|
|
558
|
-
|
|
559
|
-
---
|
|
560
|
-
**Begin audit below. Scan all source files in the directory.**
|
|
475
|
+
return `
|
|
476
|
+
Review code quality for the project at: ${cwd}
|
|
477
|
+
|
|
478
|
+
## Code Quality Checklist
|
|
479
|
+
|
|
480
|
+
### 1. Naming Conventions
|
|
481
|
+
- [ ] Functions, variables, and methods use clear, intention-revealing names
|
|
482
|
+
- [ ] No single-letter variables except for loop counters (i, j, k)
|
|
483
|
+
- [ ] Class/type names are nouns; function names are verbs
|
|
484
|
+
- [ ] Avoid abbreviations unless universally understood (e.g., "id" OK, "idx" not OK)
|
|
485
|
+
- [ ] Boolean functions/variables start with "is", "has", "can", "should"
|
|
486
|
+
- [ ] Constant names use SCREAMING_SNAKE_CASE
|
|
487
|
+
- [ ] Private methods/fields prefixed with underscore (if not using access modifiers)
|
|
488
|
+
|
|
489
|
+
### 2. Function Length & Complexity
|
|
490
|
+
- [ ] Functions are short and focused (prefer <30 lines; max 50)
|
|
491
|
+
- [ ] Functions do one thing well
|
|
492
|
+
- [ ] Cyclomatic complexity <= 10 (avoid deep nesting)
|
|
493
|
+
- [ ] Early returns reduce indentation and improve readability
|
|
494
|
+
- [ ] No nested callbacks or callback hell
|
|
495
|
+
|
|
496
|
+
### 3. Comments & Documentation
|
|
497
|
+
- [ ] Public APIs (exports) have JSDoc or equivalent docstrings
|
|
498
|
+
- [ ] Complex logic has inline comments explaining the "why", not "what"
|
|
499
|
+
- [ ] No obsolete or redundant comments
|
|
500
|
+
- [ ] TODOs are dated and reference an issue/PR if possible
|
|
501
|
+
- [ ] README or file-level comments explain module purpose
|
|
502
|
+
|
|
503
|
+
### 4. Error Handling
|
|
504
|
+
- [ ] All promises are awaited or explicitly handled
|
|
505
|
+
- [ ] No silent failures (catch blocks log or throw)
|
|
506
|
+
- [ ] Errors include context (not just generic messages)
|
|
507
|
+
- [ ] Type safety: use typed errors, not generic strings
|
|
508
|
+
|
|
509
|
+
### 5. Testing Expectations
|
|
510
|
+
- [ ] Critical paths have test coverage (>80% target)
|
|
511
|
+
- [ ] Tests are descriptive: test names explain the scenario
|
|
512
|
+
- [ ] Tests are isolated (no shared state between tests)
|
|
513
|
+
- [ ] Edge cases are covered (empty input, null, boundary values)
|
|
514
|
+
- [ ] No test-only code in production
|
|
515
|
+
|
|
516
|
+
### 6. Code Style & Formatting
|
|
517
|
+
- [ ] Consistent indentation and spacing
|
|
518
|
+
- [ ] Lines under 100 characters (adjust for project)
|
|
519
|
+
- [ ] Imports organized: dependencies first, then relative imports
|
|
520
|
+
- [ ] No unused imports or variables
|
|
521
|
+
- [ ] Consistent quote style and semicolon usage
|
|
522
|
+
|
|
523
|
+
### 7. Type Safety (if applicable)
|
|
524
|
+
- [ ] Exported functions have explicit return types
|
|
525
|
+
- [ ] Generic types are narrow and well-constrained
|
|
526
|
+
- [ ] No use of "any" unless unavoidable (with comment)
|
|
527
|
+
- [ ] Objects prefer interfaces/types over inline shapes
|
|
528
|
+
- [ ] Nullable types are explicit (Optional, null, undefined)
|
|
529
|
+
|
|
530
|
+
### 8. Performance & Resources
|
|
531
|
+
- [ ] No N+1 queries or unnecessary loops
|
|
532
|
+
- [ ] No memory leaks (event listeners cleaned up, streams closed)
|
|
533
|
+
- [ ] No console.log in production code
|
|
534
|
+
- [ ] Heavy operations are async/non-blocking
|
|
535
|
+
|
|
536
|
+
### 9. Maintainability
|
|
537
|
+
- [ ] DRY: no obvious code duplication (extract to helper)
|
|
538
|
+
- [ ] Prefer composition over inheritance
|
|
539
|
+
- [ ] Constants are defined once (no magic numbers)
|
|
540
|
+
- [ ] Configuration is centralized, not scattered
|
|
541
|
+
- [ ] Dependencies are minimal and justified
|
|
542
|
+
|
|
543
|
+
### 10. Security & Best Practices
|
|
544
|
+
- [ ] No hardcoded secrets (API keys, passwords)
|
|
545
|
+
- [ ] Input validation for user-facing APIs
|
|
546
|
+
- [ ] SQL queries use parameterized statements (no injection)
|
|
547
|
+
- [ ] Dependencies are up-to-date and vulnerable-free
|
|
548
|
+
- [ ] CORS, CSP, or other security headers configured (if web)
|
|
549
|
+
|
|
550
|
+
---
|
|
551
|
+
## Output Format
|
|
552
|
+
For each file or module reviewed:
|
|
553
|
+
- **File:** [path/to/file]
|
|
554
|
+
- **Status:** PASS / WARNINGS / FAIL
|
|
555
|
+
- **Issues Found:** [List each issue with line number if applicable]
|
|
556
|
+
- **Recommendations:** [Specific, actionable improvements]
|
|
557
|
+
- **Priority:** CRITICAL / HIGH / MEDIUM / LOW
|
|
558
|
+
|
|
559
|
+
---
|
|
560
|
+
**Begin audit below. Scan all source files in the directory.**
|
|
561
561
|
`;
|
|
562
562
|
}
|
|
563
563
|
/**
|
|
@@ -567,71 +567,71 @@ For each file or module reviewed:
|
|
|
567
567
|
* @returns Skill stocktake prompt
|
|
568
568
|
*/
|
|
569
569
|
export function buildSkillStocktakePrompt() {
|
|
570
|
-
return `
|
|
571
|
-
Audit all available skills and commands for quality, coverage, and consistency.
|
|
572
|
-
|
|
573
|
-
## Audit Scope
|
|
574
|
-
|
|
575
|
-
### 1. Coverage Analysis
|
|
576
|
-
- [ ] List all available skills/commands by category
|
|
577
|
-
- [ ] Identify any obvious gaps (e.g., "we have email drafting but no email reply")
|
|
578
|
-
- [ ] Note overlapping or redundant skills
|
|
579
|
-
- [ ] Flag skills that seem underused or unfinished
|
|
580
|
-
- [ ] Check for skills that depend on external tools/APIs (and their health)
|
|
581
|
-
|
|
582
|
-
### 2. Quality Assessment
|
|
583
|
-
For each skill:
|
|
584
|
-
- **Documentation:** Is the skill description clear and actionable?
|
|
585
|
-
- **Parameters:** Are inputs well-defined and validated?
|
|
586
|
-
- **Output:** Does the skill return useful, formatted output?
|
|
587
|
-
- **Error Handling:** How does it fail gracefully?
|
|
588
|
-
- **Examples:** Are there usage examples?
|
|
589
|
-
|
|
590
|
-
### 3. Consistency Check
|
|
591
|
-
- [ ] Naming: Are skill names consistent in style (verbs, nouns, hyphens)?
|
|
592
|
-
- [ ] Behavior: Do similar skills work in similar ways?
|
|
593
|
-
- [ ] Parameters: Common parameters use same names across skills
|
|
594
|
-
- [ ] Output Format: Is output (JSON, markdown, etc.) predictable?
|
|
595
|
-
- [ ] Error Messages: Are failures explained clearly?
|
|
596
|
-
|
|
597
|
-
### 4. Performance & Reliability
|
|
598
|
-
- [ ] Skills respond in <5s for typical use cases
|
|
599
|
-
- [ ] No unnecessary external API calls
|
|
600
|
-
- [ ] Caching or batching where applicable
|
|
601
|
-
- [ ] Rate limiting or retry logic in place
|
|
602
|
-
- [ ] Uptime/reliability track record (if known)
|
|
603
|
-
|
|
604
|
-
### 5. Integration Opportunities
|
|
605
|
-
- [ ] Skills that could feed into each other (chaining)
|
|
606
|
-
- [ ] Skills that could share common utilities
|
|
607
|
-
- [ ] Duplicate logic that could be extracted
|
|
608
|
-
- [ ] Cross-tool dependency issues
|
|
609
|
-
|
|
610
|
-
---
|
|
611
|
-
## Output Format
|
|
612
|
-
Provide a structured report:
|
|
613
|
-
|
|
614
|
-
### Summary
|
|
615
|
-
- Total skills audited: X
|
|
616
|
-
- Pass: X | Warnings: X | Improvements needed: X
|
|
617
|
-
|
|
618
|
-
### By Category
|
|
619
|
-
For each category (e.g., Writing, Research, Data):
|
|
620
|
-
- Skills in category: [list]
|
|
621
|
-
- Coverage: [what's well covered, what's missing]
|
|
622
|
-
- Quality: [overall assessment]
|
|
623
|
-
|
|
624
|
-
### Gaps & Recommendations
|
|
625
|
-
- **High Priority:** [Missing skills or broken features]
|
|
626
|
-
- **Medium Priority:** [Quality or consistency improvements]
|
|
627
|
-
- **Low Priority:** [Nice-to-have enhancements or optimizations]
|
|
628
|
-
|
|
629
|
-
### Top 5 Improvements
|
|
630
|
-
1. [Specific action with expected benefit]
|
|
631
|
-
2. [...]
|
|
632
|
-
|
|
633
|
-
---
|
|
634
|
-
**Begin audit below.**
|
|
570
|
+
return `
|
|
571
|
+
Audit all available skills and commands for quality, coverage, and consistency.
|
|
572
|
+
|
|
573
|
+
## Audit Scope
|
|
574
|
+
|
|
575
|
+
### 1. Coverage Analysis
|
|
576
|
+
- [ ] List all available skills/commands by category
|
|
577
|
+
- [ ] Identify any obvious gaps (e.g., "we have email drafting but no email reply")
|
|
578
|
+
- [ ] Note overlapping or redundant skills
|
|
579
|
+
- [ ] Flag skills that seem underused or unfinished
|
|
580
|
+
- [ ] Check for skills that depend on external tools/APIs (and their health)
|
|
581
|
+
|
|
582
|
+
### 2. Quality Assessment
|
|
583
|
+
For each skill:
|
|
584
|
+
- **Documentation:** Is the skill description clear and actionable?
|
|
585
|
+
- **Parameters:** Are inputs well-defined and validated?
|
|
586
|
+
- **Output:** Does the skill return useful, formatted output?
|
|
587
|
+
- **Error Handling:** How does it fail gracefully?
|
|
588
|
+
- **Examples:** Are there usage examples?
|
|
589
|
+
|
|
590
|
+
### 3. Consistency Check
|
|
591
|
+
- [ ] Naming: Are skill names consistent in style (verbs, nouns, hyphens)?
|
|
592
|
+
- [ ] Behavior: Do similar skills work in similar ways?
|
|
593
|
+
- [ ] Parameters: Common parameters use same names across skills
|
|
594
|
+
- [ ] Output Format: Is output (JSON, markdown, etc.) predictable?
|
|
595
|
+
- [ ] Error Messages: Are failures explained clearly?
|
|
596
|
+
|
|
597
|
+
### 4. Performance & Reliability
|
|
598
|
+
- [ ] Skills respond in <5s for typical use cases
|
|
599
|
+
- [ ] No unnecessary external API calls
|
|
600
|
+
- [ ] Caching or batching where applicable
|
|
601
|
+
- [ ] Rate limiting or retry logic in place
|
|
602
|
+
- [ ] Uptime/reliability track record (if known)
|
|
603
|
+
|
|
604
|
+
### 5. Integration Opportunities
|
|
605
|
+
- [ ] Skills that could feed into each other (chaining)
|
|
606
|
+
- [ ] Skills that could share common utilities
|
|
607
|
+
- [ ] Duplicate logic that could be extracted
|
|
608
|
+
- [ ] Cross-tool dependency issues
|
|
609
|
+
|
|
610
|
+
---
|
|
611
|
+
## Output Format
|
|
612
|
+
Provide a structured report:
|
|
613
|
+
|
|
614
|
+
### Summary
|
|
615
|
+
- Total skills audited: X
|
|
616
|
+
- Pass: X | Warnings: X | Improvements needed: X
|
|
617
|
+
|
|
618
|
+
### By Category
|
|
619
|
+
For each category (e.g., Writing, Research, Data):
|
|
620
|
+
- Skills in category: [list]
|
|
621
|
+
- Coverage: [what's well covered, what's missing]
|
|
622
|
+
- Quality: [overall assessment]
|
|
623
|
+
|
|
624
|
+
### Gaps & Recommendations
|
|
625
|
+
- **High Priority:** [Missing skills or broken features]
|
|
626
|
+
- **Medium Priority:** [Quality or consistency improvements]
|
|
627
|
+
- **Low Priority:** [Nice-to-have enhancements or optimizations]
|
|
628
|
+
|
|
629
|
+
### Top 5 Improvements
|
|
630
|
+
1. [Specific action with expected benefit]
|
|
631
|
+
2. [...]
|
|
632
|
+
|
|
633
|
+
---
|
|
634
|
+
**Begin audit below.**
|
|
635
635
|
`;
|
|
636
636
|
}
|
|
637
637
|
// ── Chief of Staff / Communication ────────────────────────
|
|
@@ -643,79 +643,79 @@ For each category (e.g., Writing, Research, Data):
|
|
|
643
643
|
* @returns Chief of staff triage prompt
|
|
644
644
|
*/
|
|
645
645
|
export function buildChiefOfStaffPrompt(context) {
|
|
646
|
-
return `
|
|
647
|
-
Act as a Chief of Staff to triage and manage the following communications context.
|
|
648
|
-
|
|
649
|
-
## Context
|
|
650
|
-
\`\`\`
|
|
651
|
-
${context}
|
|
652
|
-
\`\`\`
|
|
653
|
-
|
|
654
|
-
## Triage Tasks
|
|
655
|
-
|
|
656
|
-
### 1. Priority Assessment
|
|
657
|
-
For each message, email, or thread:
|
|
658
|
-
- **Priority:** URGENT | HIGH | MEDIUM | LOW
|
|
659
|
-
- **Category:** Decision Needed | FYI | Action Required | Discussion
|
|
660
|
-
- **Owner:** Who should handle this? (if identifiable)
|
|
661
|
-
- **Timeline:** When is a response/decision due?
|
|
662
|
-
- **Impact:** If left unaddressed, what happens?
|
|
663
|
-
|
|
664
|
-
### 2. Summarization
|
|
665
|
-
For long threads or email chains:
|
|
666
|
-
- **Subject:** One-line summary
|
|
667
|
-
- **Key Points:** 3–5 bullet points of the core issue
|
|
668
|
-
- **Stakes:** What's at risk? What's the decision?
|
|
669
|
-
- **Sentiment:** Is there urgency, conflict, or alignment?
|
|
670
|
-
- **Recommended Response:** Approving, requesting more info, escalating, etc.
|
|
671
|
-
|
|
672
|
-
### 3. Draft Responses
|
|
673
|
-
For messages requiring replies:
|
|
674
|
-
- **To:** Recipient(s)
|
|
675
|
-
- **Subject Line:** Clear, professional
|
|
676
|
-
- **Body:**
|
|
677
|
-
- Acknowledge the sender's concern/question
|
|
678
|
-
- Provide a clear answer or next step
|
|
679
|
-
- Keep it concise (under 150 words if possible)
|
|
680
|
-
- Maintain consistent tone
|
|
681
|
-
- **Tone Options:** Professional, warm, direct, collaborative (choose based on context)
|
|
682
|
-
|
|
683
|
-
### 4. Meeting Notes / Action Items
|
|
684
|
-
If this involves a meeting or decision point:
|
|
685
|
-
- **Attendees:** Who was there?
|
|
686
|
-
- **Decisions Made:** What was agreed?
|
|
687
|
-
- **Action Items:** Who owns what, with deadline?
|
|
688
|
-
- **Follow-up:** What's the next touchpoint?
|
|
689
|
-
|
|
690
|
-
### 5. Identify Patterns
|
|
691
|
-
- **Recurring Issues:** Any themes across messages?
|
|
692
|
-
- **Blocking Points:** What's slowing decisions or actions?
|
|
693
|
-
- **Communication Gaps:** Where's unclear or missing info?
|
|
694
|
-
- **Escalation Risks:** What could become problems if not addressed?
|
|
695
|
-
|
|
696
|
-
---
|
|
697
|
-
## Output Format
|
|
698
|
-
|
|
699
|
-
### Quick Triage Table
|
|
700
|
-
| Subject | Priority | Category | Owner | Due | Action |
|
|
701
|
-
|---------|----------|----------|-------|-----|--------|
|
|
702
|
-
| [subject] | HIGH | Decision | [name] | [date] | [brief action] |
|
|
703
|
-
| ... | | | | | |
|
|
704
|
-
|
|
705
|
-
### Detailed Summaries
|
|
706
|
-
**[Message/Thread 1 Subject]**
|
|
707
|
-
- Priority: HIGH
|
|
708
|
-
- Summary: [2–3 sentences]
|
|
709
|
-
- Recommended Action: [Specific next step]
|
|
710
|
-
- Draft Response: [If needed, include suggested reply]
|
|
711
|
-
|
|
712
|
-
### Patterns & Recommendations
|
|
713
|
-
- Pattern 1: [Observation]
|
|
714
|
-
- Pattern 2: [Observation]
|
|
715
|
-
- Recommended Process Change: [How to avoid this in future]
|
|
716
|
-
|
|
717
|
-
---
|
|
718
|
-
**Begin triage below.**
|
|
646
|
+
return `
|
|
647
|
+
Act as a Chief of Staff to triage and manage the following communications context.
|
|
648
|
+
|
|
649
|
+
## Context
|
|
650
|
+
\`\`\`
|
|
651
|
+
${context}
|
|
652
|
+
\`\`\`
|
|
653
|
+
|
|
654
|
+
## Triage Tasks
|
|
655
|
+
|
|
656
|
+
### 1. Priority Assessment
|
|
657
|
+
For each message, email, or thread:
|
|
658
|
+
- **Priority:** URGENT | HIGH | MEDIUM | LOW
|
|
659
|
+
- **Category:** Decision Needed | FYI | Action Required | Discussion
|
|
660
|
+
- **Owner:** Who should handle this? (if identifiable)
|
|
661
|
+
- **Timeline:** When is a response/decision due?
|
|
662
|
+
- **Impact:** If left unaddressed, what happens?
|
|
663
|
+
|
|
664
|
+
### 2. Summarization
|
|
665
|
+
For long threads or email chains:
|
|
666
|
+
- **Subject:** One-line summary
|
|
667
|
+
- **Key Points:** 3–5 bullet points of the core issue
|
|
668
|
+
- **Stakes:** What's at risk? What's the decision?
|
|
669
|
+
- **Sentiment:** Is there urgency, conflict, or alignment?
|
|
670
|
+
- **Recommended Response:** Approving, requesting more info, escalating, etc.
|
|
671
|
+
|
|
672
|
+
### 3. Draft Responses
|
|
673
|
+
For messages requiring replies:
|
|
674
|
+
- **To:** Recipient(s)
|
|
675
|
+
- **Subject Line:** Clear, professional
|
|
676
|
+
- **Body:**
|
|
677
|
+
- Acknowledge the sender's concern/question
|
|
678
|
+
- Provide a clear answer or next step
|
|
679
|
+
- Keep it concise (under 150 words if possible)
|
|
680
|
+
- Maintain consistent tone
|
|
681
|
+
- **Tone Options:** Professional, warm, direct, collaborative (choose based on context)
|
|
682
|
+
|
|
683
|
+
### 4. Meeting Notes / Action Items
|
|
684
|
+
If this involves a meeting or decision point:
|
|
685
|
+
- **Attendees:** Who was there?
|
|
686
|
+
- **Decisions Made:** What was agreed?
|
|
687
|
+
- **Action Items:** Who owns what, with deadline?
|
|
688
|
+
- **Follow-up:** What's the next touchpoint?
|
|
689
|
+
|
|
690
|
+
### 5. Identify Patterns
|
|
691
|
+
- **Recurring Issues:** Any themes across messages?
|
|
692
|
+
- **Blocking Points:** What's slowing decisions or actions?
|
|
693
|
+
- **Communication Gaps:** Where's unclear or missing info?
|
|
694
|
+
- **Escalation Risks:** What could become problems if not addressed?
|
|
695
|
+
|
|
696
|
+
---
|
|
697
|
+
## Output Format
|
|
698
|
+
|
|
699
|
+
### Quick Triage Table
|
|
700
|
+
| Subject | Priority | Category | Owner | Due | Action |
|
|
701
|
+
|---------|----------|----------|-------|-----|--------|
|
|
702
|
+
| [subject] | HIGH | Decision | [name] | [date] | [brief action] |
|
|
703
|
+
| ... | | | | | |
|
|
704
|
+
|
|
705
|
+
### Detailed Summaries
|
|
706
|
+
**[Message/Thread 1 Subject]**
|
|
707
|
+
- Priority: HIGH
|
|
708
|
+
- Summary: [2–3 sentences]
|
|
709
|
+
- Recommended Action: [Specific next step]
|
|
710
|
+
- Draft Response: [If needed, include suggested reply]
|
|
711
|
+
|
|
712
|
+
### Patterns & Recommendations
|
|
713
|
+
- Pattern 1: [Observation]
|
|
714
|
+
- Pattern 2: [Observation]
|
|
715
|
+
- Recommended Process Change: [How to avoid this in future]
|
|
716
|
+
|
|
717
|
+
---
|
|
718
|
+
**Begin triage below.**
|
|
719
719
|
`;
|
|
720
720
|
}
|
|
721
721
|
//# sourceMappingURL=content-engine.js.map
|