agemon 6.0.0 → 6.3.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.
Files changed (171) hide show
  1. package/README.md +313 -64
  2. package/assets/skills/design/agemon-design/NOTICE.md +34 -0
  3. package/assets/skills/design/agemon-design/SKILL.md +95 -358
  4. package/assets/skills/design/agemon-design/references/actions.md +215 -0
  5. package/assets/skills/design/agemon-design/references/brief.md +13 -9
  6. package/assets/skills/design/agemon-design/references/core-rules.md +166 -0
  7. package/assets/skills/design/agemon-design/references/craft-intent.md +16 -14
  8. package/assets/skills/design/agemon-design/references/dashboard.md +1 -1
  9. package/assets/skills/design/agemon-design/references/dataviz.md +8 -8
  10. package/assets/skills/design/agemon-design/references/finish-bar.md +1 -1
  11. package/assets/skills/design/agemon-design/references/heuristics.md +56 -140
  12. package/assets/skills/design/agemon-design/references/inspiration.md +6 -6
  13. package/assets/skills/design/agemon-design/references/loops.md +9 -9
  14. package/assets/skills/design/agemon-design/references/motion.md +1 -1
  15. package/assets/skills/design/agemon-design/references/personas.md +4 -4
  16. package/assets/skills/design/{agemon-design-dashboard/SKILL.md → agemon-design/references/preset-dashboard.md} +8 -12
  17. package/assets/skills/design/{agemon-design-editorial/SKILL.md → agemon-design/references/preset-editorial.md} +5 -9
  18. package/assets/skills/design/{agemon-design-minimal/SKILL.md → agemon-design/references/preset-minimal.md} +8 -12
  19. package/assets/skills/design/agemon-design/references/principles-catalog.md +3 -3
  20. package/assets/skills/design/agemon-design/references/recipe-auth.md +3 -3
  21. package/assets/skills/design/agemon-design/references/recipe-dashboard.md +2 -2
  22. package/assets/skills/design/agemon-design/references/recipe-landing.md +9 -11
  23. package/assets/skills/design/agemon-design/references/review.md +7 -7
  24. package/assets/skills/design/agemon-design/references/routing.md +143 -0
  25. package/assets/skills/design/agemon-design/references/spec.md +8 -8
  26. package/assets/skills/design/agemon-design/references/stack.md +1 -1
  27. package/assets/skills/design/agemon-design/references/stage-assets.md +106 -0
  28. package/assets/skills/design/agemon-design/references/stage-build.md +46 -0
  29. package/assets/skills/design/agemon-design/references/stage-critique.md +34 -0
  30. package/assets/skills/design/agemon-design/references/stage-directions.md +44 -0
  31. package/assets/skills/design/agemon-design/references/stage-intake.md +34 -0
  32. package/assets/skills/design/agemon-design/references/stage-verify.md +44 -0
  33. package/assets/skills/design/agemon-design/references/state-design.md +1 -1
  34. package/assets/skills/design/agemon-design/references/tells-2026-11.md +32 -0
  35. package/assets/skills/design/agemon-design/references/themes.md +24 -20
  36. package/assets/skills/design/agemon-design/references/third-party-licenses.md +323 -0
  37. package/assets/skills/design/agemon-design/references/typography.md +11 -9
  38. package/assets/skills/design/agemon-design/scripts/audit-page.js +532 -0
  39. package/assets/skills/design/agemon-design/scripts/check-source.mjs +358 -0
  40. package/assets/skills/design/agemon-design/scripts/deal.mjs +231 -0
  41. package/assets/skills/design/agemon-design/scripts/inventory.mjs +676 -0
  42. package/assets/skills/{design/agemon-design-dashboard → essentials/web-design-guidelines}/LICENSE +1 -1
  43. package/assets/skills/essentials/web-design-guidelines/NOTICE.md +14 -0
  44. package/assets/skills/essentials/web-design-guidelines/SKILL.md +18 -0
  45. package/assets/skills/essentials/web-design-guidelines/references/guidelines.md +184 -0
  46. package/assets/skills/{design/agemon-design-minimal → essentials/writing-guidelines}/LICENSE +1 -1
  47. package/assets/skills/essentials/writing-guidelines/NOTICE.md +14 -0
  48. package/assets/skills/essentials/writing-guidelines/SKILL.md +18 -0
  49. package/assets/skills/essentials/writing-guidelines/references/guidelines.md +250 -0
  50. package/assets/skills/founder/agemon-founder-board/LICENSE +21 -0
  51. package/assets/skills/founder/agemon-founder-board/NOTICE.md +11 -0
  52. package/assets/skills/founder/agemon-founder-board/SKILL.md +111 -0
  53. package/assets/skills/founder/agemon-founder-board/lenses.md +84 -0
  54. package/assets/skills/founder/agemon-founder-brand/LICENSE +21 -0
  55. package/assets/skills/founder/agemon-founder-brand/NOTICE.md +12 -0
  56. package/assets/skills/founder/agemon-founder-brand/SKILL.md +77 -0
  57. package/assets/skills/founder/agemon-founder-cfo/LICENSE +21 -0
  58. package/assets/skills/founder/agemon-founder-cfo/NOTICE.md +12 -0
  59. package/assets/skills/founder/agemon-founder-cfo/SKILL.md +109 -0
  60. package/assets/skills/founder/agemon-founder-cfo/example.json +27 -0
  61. package/assets/skills/founder/agemon-founder-cfo/unit_economics.py +270 -0
  62. package/assets/skills/founder/agemon-founder-competitors/LICENSE +21 -0
  63. package/assets/skills/founder/agemon-founder-competitors/NOTICE.md +12 -0
  64. package/assets/skills/founder/agemon-founder-competitors/SKILL.md +84 -0
  65. package/assets/skills/founder/agemon-founder-consumer/LICENSE +21 -0
  66. package/assets/skills/founder/agemon-founder-consumer/NOTICE.md +11 -0
  67. package/assets/skills/founder/agemon-founder-consumer/SKILL.md +126 -0
  68. package/assets/skills/founder/agemon-founder-consumer/customer.example.json +34 -0
  69. package/assets/skills/founder/agemon-founder-consumer/panel.py +424 -0
  70. package/assets/skills/founder/agemon-founder-consumer/pitch.example.md +3 -0
  71. package/assets/skills/founder/agemon-founder-launch/LICENSE +21 -0
  72. package/assets/skills/founder/agemon-founder-launch/NOTICE.md +11 -0
  73. package/assets/skills/founder/agemon-founder-launch/SKILL.md +65 -0
  74. package/assets/skills/founder/agemon-founder-marketing/LICENSE +21 -0
  75. package/assets/skills/founder/agemon-founder-marketing/NOTICE.md +11 -0
  76. package/assets/skills/founder/agemon-founder-marketing/SKILL.md +80 -0
  77. package/assets/skills/founder/agemon-founder-offer/LICENSE +21 -0
  78. package/assets/skills/founder/agemon-founder-offer/NOTICE.md +11 -0
  79. package/assets/skills/founder/agemon-founder-offer/SKILL.md +75 -0
  80. package/assets/skills/founder/agemon-founder-ops/LICENSE +21 -0
  81. package/assets/skills/founder/agemon-founder-ops/NOTICE.md +12 -0
  82. package/assets/skills/founder/agemon-founder-ops/SKILL.md +77 -0
  83. package/assets/skills/founder/agemon-founder-plan/LICENSE +21 -0
  84. package/assets/skills/founder/agemon-founder-plan/NOTICE.md +11 -0
  85. package/assets/skills/founder/agemon-founder-plan/SKILL.md +88 -0
  86. package/assets/skills/founder/agemon-founder-plan/compile.py +178 -0
  87. package/assets/skills/founder/agemon-founder-pricing/LICENSE +21 -0
  88. package/assets/skills/founder/agemon-founder-pricing/NOTICE.md +12 -0
  89. package/assets/skills/founder/agemon-founder-pricing/SKILL.md +92 -0
  90. package/assets/skills/founder/agemon-founder-pricing/van_westendorp.py +172 -0
  91. package/assets/skills/{design/agemon-design-editorial → output-style/agemon-adhd}/LICENSE +1 -1
  92. package/assets/skills/output-style/agemon-adhd/NOTICE.md +13 -0
  93. package/assets/skills/output-style/agemon-adhd/SKILL.md +138 -0
  94. package/assets/skills/security/agemon-security-audit/AI-AND-LLM.md +83 -0
  95. package/assets/skills/security/agemon-security-audit/ATTACK-CLASSES.md +130 -0
  96. package/assets/skills/security/agemon-security-audit/CLIENT-SIDE.md +83 -0
  97. package/assets/skills/security/agemon-security-audit/CLOUD-AND-DEPLOYMENT.md +86 -0
  98. package/assets/skills/security/agemon-security-audit/DATA-ISOLATION-AND-LIFECYCLE.md +84 -0
  99. package/assets/skills/security/agemon-security-audit/DESKTOP-MOBILE-AND-LOCAL-IPC.md +89 -0
  100. package/assets/skills/security/agemon-security-audit/HUNTING.md +251 -0
  101. package/assets/skills/security/agemon-security-audit/LICENSE +21 -0
  102. package/assets/skills/security/agemon-security-audit/MEMORY-SAFETY-AND-BINARY.md +101 -0
  103. package/assets/skills/security/agemon-security-audit/NOTICE.md +12 -0
  104. package/assets/skills/security/agemon-security-audit/PROTOCOLS-RPC-AND-MESSAGING.md +81 -0
  105. package/assets/skills/security/agemon-security-audit/RECONNAISSANCE.md +156 -0
  106. package/assets/skills/security/agemon-security-audit/RESOURCE-EXHAUSTION-AND-AVAILABILITY.md +78 -0
  107. package/assets/skills/security/agemon-security-audit/SKILL.md +192 -0
  108. package/assets/skills/security/agemon-security-audit/SUPPLY-CHAIN-AND-RELEASE.md +73 -0
  109. package/assets/skills/security/agemon-security-audit/VALIDATION-AND-REPORTING.md +186 -0
  110. package/assets/skills/security/agemon-security-audit/WEB-PROTOCOL-AND-AUTH.md +105 -0
  111. package/assets/skills/security/agemon-security-audit/report-schema.json +461 -0
  112. package/assets/skills/security/agemon-security-audit/validate-coverage-ledger.cjs +872 -0
  113. package/assets/skills/security/agemon-security-audit/validate-findings.cjs +773 -0
  114. package/assets/skills/workflow/agemon-brainstorming/LICENSE +21 -0
  115. package/assets/skills/workflow/agemon-brainstorming/NOTICE.md +14 -0
  116. package/assets/skills/workflow/agemon-brainstorming/SKILL.md +287 -0
  117. package/assets/skills/workflow/agemon-brainstorming/builder-check-prompt.md +23 -0
  118. package/assets/skills/workflow/agemon-dispatching-parallel-agents/LICENSE +21 -0
  119. package/assets/skills/workflow/agemon-dispatching-parallel-agents/NOTICE.md +13 -0
  120. package/assets/skills/workflow/agemon-dispatching-parallel-agents/SKILL.md +167 -0
  121. package/assets/skills/workflow/agemon-executing-plans/LICENSE +21 -0
  122. package/assets/skills/workflow/agemon-executing-plans/NOTICE.md +15 -0
  123. package/assets/skills/workflow/agemon-executing-plans/SKILL.md +322 -0
  124. package/assets/skills/workflow/agemon-executing-plans/scripts/task-done +55 -0
  125. package/assets/skills/workflow/agemon-executing-plans/scripts/task-start +32 -0
  126. package/assets/skills/workflow/agemon-finishing-a-development-branch/LICENSE +21 -0
  127. package/assets/skills/workflow/agemon-finishing-a-development-branch/NOTICE.md +13 -0
  128. package/assets/skills/workflow/agemon-finishing-a-development-branch/SKILL.md +225 -0
  129. package/assets/skills/workflow/agemon-subagent-driven-development/LICENSE +21 -0
  130. package/assets/skills/workflow/agemon-subagent-driven-development/NOTICE.md +15 -0
  131. package/assets/skills/workflow/agemon-subagent-driven-development/SKILL.md +339 -0
  132. package/assets/skills/workflow/agemon-subagent-driven-development/code-reviewer.md +198 -0
  133. package/assets/skills/workflow/agemon-subagent-driven-development/implementer-prompt.md +154 -0
  134. package/assets/skills/workflow/agemon-subagent-driven-development/re-review-prompt.md +116 -0
  135. package/assets/skills/workflow/agemon-subagent-driven-development/references/batching.md +11 -0
  136. package/assets/skills/workflow/agemon-subagent-driven-development/references/cannot-verify.md +10 -0
  137. package/assets/skills/workflow/agemon-subagent-driven-development/references/final-review.md +49 -0
  138. package/assets/skills/workflow/agemon-subagent-driven-development/references/fix-loop.md +77 -0
  139. package/assets/skills/workflow/agemon-subagent-driven-development/references/handling-reports.md +15 -0
  140. package/assets/skills/workflow/agemon-subagent-driven-development/references/preflight.md +26 -0
  141. package/assets/skills/workflow/agemon-subagent-driven-development/references/resuming.md +12 -0
  142. package/assets/skills/workflow/agemon-subagent-driven-development/references/role-scout.md +18 -0
  143. package/assets/skills/workflow/agemon-subagent-driven-development/references/role-worker.md +19 -0
  144. package/assets/skills/workflow/agemon-subagent-driven-development/scripts/review-package +64 -0
  145. package/assets/skills/workflow/agemon-subagent-driven-development/scripts/sdd-repo +54 -0
  146. package/assets/skills/workflow/agemon-subagent-driven-development/scripts/sdd-workspace +110 -0
  147. package/assets/skills/workflow/agemon-subagent-driven-development/scripts/task-brief +108 -0
  148. package/assets/skills/workflow/agemon-subagent-driven-development/task-reviewer-prompt.md +209 -0
  149. package/assets/skills/workflow/agemon-test-driven-development/LICENSE +21 -0
  150. package/assets/skills/workflow/agemon-test-driven-development/NOTICE.md +14 -0
  151. package/assets/skills/workflow/agemon-test-driven-development/SKILL.md +330 -0
  152. package/assets/skills/workflow/agemon-test-driven-development/writing-good-tests.md +198 -0
  153. package/assets/skills/workflow/agemon-using-git-worktrees/LICENSE +21 -0
  154. package/assets/skills/workflow/agemon-using-git-worktrees/NOTICE.md +13 -0
  155. package/assets/skills/workflow/agemon-using-git-worktrees/SKILL.md +167 -0
  156. package/assets/skills/workflow/agemon-writing-plans/LICENSE +21 -0
  157. package/assets/skills/workflow/agemon-writing-plans/NOTICE.md +13 -0
  158. package/assets/skills/workflow/agemon-writing-plans/SKILL.md +204 -0
  159. package/dist/{chunk-5LATHJYU.js → chunk-ZZBF3GOV.js} +369 -944
  160. package/dist/chunk-ZZBF3GOV.js.map +1 -0
  161. package/dist/{fake-subprocess-2BETWZVZ.js → fake-subprocess-IV4ML77S.js} +3 -33
  162. package/dist/fake-subprocess-IV4ML77S.js.map +1 -0
  163. package/dist/index.js +3477 -731
  164. package/dist/index.js.map +1 -1
  165. package/package.json +8 -1
  166. package/assets/skills/design/agemon-design/references/agents.md +0 -63
  167. package/assets/skills/design/agemon-design-dashboard/NOTICE.md +0 -9
  168. package/assets/skills/design/agemon-design-editorial/NOTICE.md +0 -9
  169. package/assets/skills/design/agemon-design-minimal/NOTICE.md +0 -9
  170. package/dist/chunk-5LATHJYU.js.map +0 -1
  171. package/dist/fake-subprocess-2BETWZVZ.js.map +0 -1
@@ -0,0 +1,14 @@
1
+ # Vendored skill
2
+
3
+ - Source: https://github.com/vercel-labs/web-interface-guidelines
4
+ - Path in source: command.md
5
+ - Commit: 434b7f91364665f2f733b310ec54809bf8f37937
6
+ - Retrieved: 2026-11-05
7
+ - License: MIT — see `LICENSE` in this directory.
8
+
9
+ ## agemon modifications
10
+
11
+ - `references/guidelines.md` is upstream's `command.md` with its frontmatter and the `$ARGUMENTS` line removed. The rules and output format are unchanged.
12
+ - `SKILL.md` is agemon's own wrapper. Instead of fetching the guidelines from a URL, it reads `references/guidelines.md`.
13
+ - Judgement call: the wrapper keeps the `name` and the short `description` of the skill agemon installed before, so existing installs are recognised and the skill still routes on the same phrases. That text comes from https://github.com/vercel-labs/agent-skills at commit 063bee94c3f4df8453406c830b0a7df0f2860278 (path `skills/web-design-guidelines/SKILL.md`). That repository's README states MIT, but it has no LICENSE file at that commit, so the licence for this carried-over text is stated, not shipped. The rest of the wrapper is written by agemon.
14
+ - Keeps the name `web-design-guidelines` rather than an `agemon-*` name, so existing installs are recognised and can be updated.
@@ -0,0 +1,18 @@
1
+ ---
2
+ name: web-design-guidelines
3
+ description: Review UI code for Web Interface Guidelines compliance. Use when asked to "review my UI", "check accessibility", "audit design", "review UX", or "check my site against best practices".
4
+ argument-hint: <file-or-pattern>
5
+ ---
6
+
7
+ # Web Interface Guidelines
8
+
9
+ Review files for compliance with the Web Interface Guidelines.
10
+
11
+ ## How it works
12
+
13
+ 1. Read the files the user named, or ask which files or pattern to review.
14
+ 2. Read `references/guidelines.md` next to this file. It holds every rule and the output format.
15
+ 3. Check each file against all of the rules.
16
+ 4. Report findings in the terse `file:line` format the guidelines specify.
17
+
18
+ The guidelines ship with this skill at a pinned version. Do not look for newer rules elsewhere.
@@ -0,0 +1,184 @@
1
+ # Web Interface Guidelines
2
+
3
+ Read files, check against rules below. Output concise but comprehensive—sacrifice grammar for brevity. High signal-to-noise.
4
+
5
+ ## Rules
6
+
7
+ ### Accessibility
8
+
9
+ - Icon-only buttons need `aria-label`
10
+ - Form controls need `<label>` or `aria-label`
11
+ - Interactive elements need keyboard handlers (`onKeyDown`/`onKeyUp`)
12
+ - `<button>` for actions, `<a>`/`<Link>` for navigation (not `<div onClick>`)
13
+ - Images need `alt` (or `alt=""` if decorative)
14
+ - Decorative icons need `aria-hidden="true"`
15
+ - Async updates (toasts, validation) need `aria-live="polite"`
16
+ - Use semantic HTML (`<button>`, `<a>`, `<label>`, `<table>`) before ARIA
17
+ - Headings hierarchical `<h1>`–`<h6>`; include skip link for main content
18
+ - `scroll-margin-top` on heading anchors
19
+ - Meaningful media needs captions, transcripts, or descriptions as applicable
20
+ - Media controls need keyboard support; decorative media needs assistive-tech hiding
21
+
22
+ ### Focus States
23
+
24
+ - Interactive elements need visible focus: `focus-visible:ring-*` or equivalent
25
+ - Never `outline-none` / `outline: none` without focus replacement
26
+ - Use `:focus-visible` over `:focus` (avoid focus ring on click)
27
+ - Group focus with `:focus-within` for compound controls
28
+ - Sticky headers/footers/overlays must not cover the focused element
29
+
30
+ ### Forms
31
+
32
+ - Inputs need `autocomplete` and meaningful `name`
33
+ - Use correct `type` (`email`, `tel`, `url`, `number`) and `inputmode`
34
+ - Never block paste (`onPaste` + `preventDefault`)
35
+ - Labels clickable (`htmlFor` or wrapping control)
36
+ - Disable spellcheck on emails, codes, usernames (`spellCheck={false}`)
37
+ - Checkboxes/radios: label + control share single hit target (no dead zones)
38
+ - Submit button stays enabled until request starts; spinner during request
39
+ - Errors inline next to fields; focus first error on submit
40
+ - Placeholders end with `…` and show example pattern
41
+ - `autocomplete="off"` on non-auth fields to avoid password manager triggers
42
+ - Warn before navigation with unsaved changes (`beforeunload` or router guard)
43
+
44
+ ### Animation
45
+
46
+ - Honor `prefers-reduced-motion` (provide reduced variant or disable)
47
+ - Animate `transform`/`opacity` only (compositor-friendly)
48
+ - Never `transition: all`—list properties explicitly
49
+ - Set correct `transform-origin`
50
+ - SVG: transforms on `<g>` wrapper with `transform-box: fill-box; transform-origin: center`
51
+ - Animations interruptible—respond to user input mid-animation
52
+ - Autoplay motion >5 seconds alongside other content needs pause, stop, or hide controls
53
+ - Muted decorative loops must stop under `prefers-reduced-motion`
54
+
55
+ ### Typography
56
+
57
+ - `…` not `...`
58
+ - Curly quotes `“` `”` not straight `"`
59
+ - Non-breaking spaces: `10&nbsp;MB`, `⌘&nbsp;K`, brand names
60
+ - Loading states end with `…`: `"Loading…"`, `"Saving…"`
61
+ - `font-variant-numeric: tabular-nums` for number columns/comparisons
62
+ - Use `text-wrap: balance` or `text-pretty` on headings (prevents widows)
63
+
64
+ ### Content Handling
65
+
66
+ - Text containers handle long content: `truncate`, `line-clamp-*`, or `break-words`
67
+ - Flex children need `min-w-0` to allow text truncation
68
+ - Handle empty states—don't render broken UI for empty strings/arrays
69
+ - User-generated content: anticipate short, average, and very long inputs
70
+
71
+ ### Images
72
+
73
+ - `<img>` needs explicit `width` and `height` (prevents CLS)
74
+ - Below-fold images: `loading="lazy"`
75
+ - Above-fold critical images: `priority` or `fetchpriority="high"`
76
+
77
+ ### Performance
78
+
79
+ - Large lists (>50 items): virtualize (`virtua`, `content-visibility: auto`)
80
+ - No layout reads in render (`getBoundingClientRect`, `offsetHeight`, `offsetWidth`, `scrollTop`)
81
+ - Batch DOM reads/writes; avoid interleaving
82
+ - Prefer uncontrolled inputs; controlled inputs must be cheap per keystroke
83
+ - Add `<link rel="preconnect">` for CDN/asset domains
84
+ - Critical fonts: `<link rel="preload" as="font">` with `font-display: swap`
85
+ - Prefer `<video autoplay muted loop playsinline>` over animated GIF; provide a still alternative
86
+ - Short non-essential loops: Safari H.264 MP4 `<picture>` source, `prefers-reduced-motion` media condition, and still fallback
87
+
88
+ ### Navigation & State
89
+
90
+ - URL reflects state—filters, tabs, pagination, expanded panels in query params
91
+ - Links use `<a>`/`<Link>` (Cmd/Ctrl+click, middle-click support)
92
+ - Deep-link all stateful UI (if uses `useState`, consider URL sync via nuqs or similar)
93
+ - Destructive actions need confirmation modal or undo window—never immediate
94
+
95
+ ### Touch & Interaction
96
+
97
+ - `touch-action: manipulation` (prevents double-tap zoom delay)
98
+ - `-webkit-tap-highlight-color` set intentionally
99
+ - `overscroll-behavior: contain` in modals/drawers/sheets
100
+ - Page rubber-band suppression: `overscroll-behavior: none` on `<html>` inside `@media (pointer: fine)`; keep coarse-pointer page defaults for pull-to-refresh. Test hybrid touch devices: `pointer` describes the primary input, and `none` also disables scroll chaining and native swipe navigation
101
+ - During drag: disable text selection, `inert` on dragged elements
102
+ - Drag/swipe/pinch/path gestures need tap/click and keyboard alternatives unless essential
103
+ - `autoFocus` sparingly—desktop only, single primary input; avoid on mobile
104
+
105
+ ### Safe Areas & Layout
106
+
107
+ - Full-bleed layouts need `env(safe-area-inset-*)` for notches
108
+ - Avoid unwanted scrollbars: `overflow-x-hidden` on containers, fix content overflow
109
+ - Flex/grid over JS measurement for layout
110
+
111
+ ### Dark Mode & Theming
112
+
113
+ - `color-scheme: dark` on `<html>` for dark themes (fixes scrollbar, inputs)
114
+ - `<meta name="theme-color">` matches page background
115
+ - Native `<select>`: explicit `background-color` and `color` (Windows dark mode)
116
+
117
+ ### Locale & i18n
118
+
119
+ - Dates/times: use `Intl.DateTimeFormat` not hardcoded formats
120
+ - Numbers/currency: use `Intl.NumberFormat` not hardcoded formats
121
+ - Detect language via `Accept-Language` / `navigator.languages`, not IP
122
+ - Brand names, code tokens, identifiers: wrap with `translate="no"` to prevent garbled auto-translation
123
+
124
+ ### Hydration Safety
125
+
126
+ - Inputs with `value` need `onChange` (or use `defaultValue` for uncontrolled)
127
+ - Date/time rendering: guard against hydration mismatch (server vs client)
128
+ - `suppressHydrationWarning` only where truly needed
129
+
130
+ ### Hover & Interactive States
131
+
132
+ - Buttons/links need `hover:` state (visual feedback)
133
+ - Interactive states increase contrast: hover/active/focus more prominent than rest
134
+
135
+ ### Content & Copy
136
+
137
+ - Active voice: "Install the CLI" not "The CLI will be installed"
138
+ - Title Case for headings/buttons (Chicago style)
139
+ - Numerals for counts: "8 deployments" not "eight"
140
+ - Specific button labels: "Save API Key" not "Continue"
141
+ - Error messages include fix/next step, not just problem
142
+ - Second person; avoid first person
143
+ - `&` over "and" where space-constrained
144
+
145
+ ### Anti-patterns (flag these)
146
+
147
+ - `user-scalable=no` or `maximum-scale=1` disabling zoom
148
+ - `onPaste` with `preventDefault`
149
+ - `transition: all`
150
+ - `outline-none` without focus-visible replacement
151
+ - Inline `onClick` navigation without `<a>`
152
+ - `<div>` or `<span>` with click handlers (should be `<button>`)
153
+ - Images without dimensions
154
+ - Large arrays `.map()` without virtualization
155
+ - Form inputs without labels
156
+ - Icon buttons without `aria-label`
157
+ - Hardcoded date/number formats (use `Intl.*`)
158
+ - `autoFocus` without clear justification
159
+ - Animated GIF when compressed video is suitable
160
+ - Gesture-only action without tap/click and keyboard alternative
161
+
162
+ ## Output Format
163
+
164
+ Group by file. Use `file:line` format (VS Code clickable). Terse findings.
165
+
166
+ ```text
167
+ ## src/Button.tsx
168
+
169
+ src/Button.tsx:42 - icon button missing aria-label
170
+ src/Button.tsx:18 - input lacks label
171
+ src/Button.tsx:55 - animation missing prefers-reduced-motion
172
+ src/Button.tsx:67 - transition: all → list properties
173
+
174
+ ## src/Modal.tsx
175
+
176
+ src/Modal.tsx:12 - missing overscroll-behavior: contain
177
+ src/Modal.tsx:34 - "..." → "…"
178
+
179
+ ## src/Card.tsx
180
+
181
+ ✓ pass
182
+ ```
183
+
184
+ State issue + location. Skip explanation unless fix non-obvious. No preamble.
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2026 Eduardo Calvo
3
+ Copyright (c) 2026 Vercel Labs
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -0,0 +1,14 @@
1
+ # Vendored skill
2
+
3
+ - Source: https://github.com/vercel-labs/writing-guidelines
4
+ - Path in source: command.md
5
+ - Commit: 83e2316b034cf572400513538e4e4da01c4cc742
6
+ - Retrieved: 2026-11-05
7
+ - License: MIT — see `LICENSE` in this directory.
8
+
9
+ ## agemon modifications
10
+
11
+ - `references/guidelines.md` is upstream's `command.md` with its frontmatter and the `$ARGUMENTS` line removed. The rules and output format are unchanged.
12
+ - `SKILL.md` is agemon's own wrapper. Instead of fetching the guidelines from a URL, it reads `references/guidelines.md`.
13
+ - Judgement call: the wrapper keeps the `name` and the short `description` of the skill agemon installed before, so existing installs are recognised and the skill still routes on the same phrases. That text comes from https://github.com/vercel-labs/agent-skills at commit 063bee94c3f4df8453406c830b0a7df0f2860278 (path `skills/writing-guidelines/SKILL.md`). That repository's README states MIT, but it has no LICENSE file at that commit, so the licence for this carried-over text is stated, not shipped. The rest of the wrapper is written by agemon.
14
+ - Keeps the name `writing-guidelines` rather than an `agemon-*` name, so existing installs are recognised and can be updated.
@@ -0,0 +1,18 @@
1
+ ---
2
+ name: writing-guidelines
3
+ description: Review docs/prose for Writing Guidelines compliance. Use when asked to "review my docs", "check writing style", "audit prose", "review docs voice and tone", or "check this page against the writing handbook".
4
+ argument-hint: <file-or-pattern>
5
+ ---
6
+
7
+ # Writing Guidelines
8
+
9
+ Review files for compliance with the Writing Guidelines.
10
+
11
+ ## How it works
12
+
13
+ 1. Read the files the user named, or ask which files or pattern to review.
14
+ 2. Read `references/guidelines.md` next to this file. It holds every rule and the output format.
15
+ 3. Check each file against all of the rules.
16
+ 4. Report findings in the terse `file:line` format the guidelines specify.
17
+
18
+ The guidelines ship with this skill at a pinned version. Do not look for newer rules elsewhere.
@@ -0,0 +1,250 @@
1
+ # Writing Guidelines
2
+
3
+ Read files, check against rules below. Output concise but comprehensive: sacrifice grammar for brevity. High signal-to-noise.
4
+
5
+ ## Rules
6
+
7
+ ### Planning & content type
8
+
9
+ - Every page has a plan (overview, goal, audience, content plan, open questions) referenced or linked
10
+ - Content type declared in `meta.contentType`: `Tutorial`, `How-to`, `Reference`, `Conceptual`, `Troubleshooting`, or `Landing`
11
+ - Title is user-shaped (the user's question), not feature-shaped (the engineer's name)
12
+ - Page does one job: tutorial OR how-to OR reference, not three at once
13
+ - Goal is verb-driven (Bloom's taxonomy): "configure", "explain", "debug" (testable)
14
+ - Multi-audience pages: short shared opener, then technical subsections
15
+
16
+ ### Voice & tone
17
+
18
+ - Active voice. Mental test: append "by monkeys". If the sentence parses, rewrite
19
+ - Direct address: `you`, never `the user` or `one can`
20
+ - Imperative for steps: "Click **Add Project**", not "You will need to click **Add Project**"
21
+ - Sentences under 20 words target
22
+ - Contractions encouraged (`you'll`, `it's`) for warmth
23
+ - Present tense unless describing future behavior
24
+ - Limit `we`: only for deliberate Vercel actions ("we recommend", "we deprecated"), never as a stand-in for "you"
25
+ - No rhetorical questions (sounds like marketing)
26
+ - Second-read test: read each sentence once at speech pace; if you re-read to parse it, name the subject, the action, and the consequence (kill metaphor verbs and pronouns reaching back several sentences)
27
+
28
+ ### Banned words
29
+
30
+ - `easy`, `simple`, `quick`: puts pressure on the reader and reads as marketing; replace with concrete description ("one command", "default settings", "most projects don't need this")
31
+ - `very`, `just`, `really`: filler; cut or rewrite
32
+
33
+ ### Concision
34
+
35
+ - Earn every detail: cut a number, name, or implementation detail if a more general phrasing wouldn't change the reader's understanding or action
36
+ - Weasel words: replace vague qualifiers (`significantly`, `many`, `often`, `typically`, `generally`) with a specific number or claim
37
+ - Vague quantifiers: no `near-zero`, `sub-second`, `most requests`; give the figure and cite it (`99.37% of requests see zero cold starts`)
38
+ - Filler/metaphor verbs: name the action instead of reaching for cadence (`moves through`, `lands`, `carries`, `hits` → the literal step)
39
+
40
+ ### AI-generated tells (flag these)
41
+
42
+ - Summary-style transitions: never open a paragraph by recapping the last one (`With this setup complete…`, `Now that we've explored…`); pivot straight to the next point (`In practice…`, `The catch is…`)
43
+ - Stop-start sentences: don't split one dependent idea into choppy fragments (`Previously this was manual. Now it's automatic. This saves time.` → one sentence); short sentences for emphasis are fine
44
+ - Spec-sheet voice: rewrite sentences that read like a system reading a datasheet (`provides`, `is configurable`, `is explicitly labeled`)
45
+ - Cold-open paragraphs: a body paragraph whose first sentence works as a standalone heading has no antecedent; carry the prior subject forward (`Because…`, `Once…`)
46
+ - Personified artifacts: machines don't perform human-physical actions (`hand the browser a URL` → `the browser fetches the URL`; `the token holds…` → `the token is stored…`)
47
+ - Reused framing: the angle must come from this page, not a template (`The question most teams face is whether…`)
48
+
49
+ ### Tone, by content type
50
+
51
+ - **Tutorial**: warm, encouraging, predictable structure, no traps
52
+ - **How-to**: terse, direct (reader is mid-task)
53
+ - **Reference**: neutral, exhaustive, quotable
54
+ - **Conceptual**: explain like the reader will teach it back; examples and analogies welcome
55
+ - **Troubleshooting**: empathetic but not apologetic; acknowledge then fix
56
+
57
+ ### Headings
58
+
59
+ - Sentence case for page headings (`H1` `H2` `H3`): "Configure environment variables", not "Configure Environment Variables"
60
+ - Title case for nav labels: "Configuring Environment Variables"
61
+ - `meta.title` becomes the `H1`; `meta.navLabel` becomes the sidebar entry
62
+ - Subheadings descriptive, not cute: "Caveats when self-hosting on Cloudflare", not "Caveats"
63
+ - Reader should be able to guess section content from the heading alone
64
+
65
+ ### Structure
66
+
67
+ - Every page opens with a one-paragraph TL;DR of what the page covers
68
+ - Every major section opens with a summary sentence
69
+ - Acronyms spelled out on first use: "Content Security Policy (CSP) blocks inline scripts"
70
+ - Define every term the first time you use it (link to its conceptual page)
71
+ - Reference docs organized by surface; education docs organized by reader task
72
+ - Keep paragraphs to 2 to 4 sentences; split anything longer or covering two ideas
73
+
74
+ ### Lists
75
+
76
+ - Three or more list-shaped items in a paragraph: convert to a list
77
+ - Bulleted for unordered; numbered for ordered (lifecycles, sequential steps)
78
+ - Always introduce a list with a colon
79
+ - No periods at the end of list items unless they are full sentences
80
+ - Bold/description format: `- **Term**: description here` (colon after bold term)
81
+
82
+ ### Code
83
+
84
+ - Code blocks need a language tag for syntax highlighting
85
+ - TypeScript is the default for new code unless the surface is genuinely language-agnostic
86
+ - Multi-step flows wrapped in `<Steps/>` so structure is visible
87
+ - Highlight load-bearing lines: `` ```typescript {8-12,23-37} ``
88
+ - ≤80 columns per line in snippets
89
+ - ≤25 lines per snippet; split longer blocks with prose
90
+ - Omit defaults; don't repeat variable definitions, use shared var
91
+ - Minimal comments in code blocks; prefer prose explanation
92
+ - Explain what every code block does in prose (don't drop and run)
93
+ - Don't reference full example files at the end of guides ("See `train.py`"); the guide is the deliverable
94
+
95
+ ### Placeholders
96
+
97
+ - Text placeholders: `snake_case`, descriptive: `your_access_token_here` (so reader can double-click to select before pasting)
98
+ - Number placeholders: count up `1234567890123` (recognizable as fake, predictable)
99
+ - Never `<TOKEN>`, `xxx`, `your-token`, or generic ALL_CAPS
100
+
101
+ ### Data sizes & units
102
+
103
+ - Space + uppercase unit: `64 KB`, `5 KB`, `200 ms`
104
+ - Exception: seconds is bare: `30s`
105
+ - Consistent across the corpus so readers can develop scanning habits
106
+
107
+ ### Money & pricing pages
108
+
109
+ - Uncompromising detail: err on "too much"
110
+ - Use tables for pricing
111
+ - Never assume reader knows the pricing model or whether their workload counts as one invocation or several
112
+ - Clarity and transparency above all else
113
+
114
+ ### Emphasis
115
+
116
+ - **Bold** means UI element or critical fact, never emphasis-for-emphasis-sake
117
+ - Reaching for bold for tone: the sentence is weak; rewrite it
118
+ - `Inline code` for paths, file extensions, identifiers, short snippets: `/api`, `.tsx`, `body`, `query`, `req`
119
+ - Rule: if it would look weird without a monospace font, monospace it
120
+
121
+ ### Punctuation & typography
122
+
123
+ - Never em dashes (`—`) or dashes (`-`) as punctuation; use colons, commas, periods, or rephrase
124
+ - Curly quotes `"` `"` and `'` `'`, not straight `"` or `'`
125
+ - Ellipsis `…`, not three dots `...`
126
+ - Loading states end with `…`: `Loading…`, `Saving…`
127
+ - Non-breaking spaces in `10&nbsp;MB`, `⌘&nbsp;K`, brand names
128
+ - `&` over "and" only where space-constrained (nav labels, buttons)
129
+
130
+ ### Source formatting
131
+
132
+ - Don't hard-wrap paragraphs: each paragraph is one line in source, let the editor wrap
133
+ - One blank line before headings; one blank line before and after code blocks
134
+ - No `---` horizontal rules between sections
135
+ - No extra blank lines between elements that aren't paragraph breaks
136
+
137
+ ### Links
138
+
139
+ - Define every term the first time it appears, link to its conceptual page
140
+ - Anchor text names the destination; never bare URLs or `here`/`link`
141
+ - Dashboard deep links use the standard format: `https://vercel.com/d?to=%2F%5Bteam%5D%2F~%2Fai-gateway%2Fapi-keys&title=AI+Gateway+API+Keys`
142
+ - Link to canonical product docs where relevant: `https://vercel.com/docs/vercel-sandbox`, `https://vercel.com/docs/ai-gateway`
143
+ - AI Gateway model catalog: `https://vercel.com/ai-gateway/models`
144
+
145
+ ### Models in examples
146
+
147
+ - Always use the latest model strings: `anthropic/claude-opus-4-7`, not `anthropic/claude-sonnet-4` or older
148
+ - For image generation default: `google/gemini-3.1-flash-image-preview`
149
+
150
+ ### AI workflow
151
+
152
+ - You are accountable for the content you produce, however it is created
153
+ - You are the final arbiter; the model proposes, you dispose
154
+ - Hold technical accuracy to a high standard: docs are also consumed by LLMs, wrong docs train wrong models
155
+ - Use only enterprise models that do not train on your data (especially for unreleased products)
156
+ - Disclose AI use in the PR (model + prompts if useful)
157
+ - Plan first by hand; the plan is the spec the model works against
158
+ - Use plan-mode in your editor (Cursor, Claude) before letting the model write
159
+ - Tell the model to follow `AGENTS.md` and the linting checklist
160
+ - Run a test prompt against the preview: "given this plan's goal, can the model complete the task using only this page?"
161
+ - Final human review always
162
+
163
+ ### Quality checklist (required boxes are non-negotiable)
164
+
165
+ - **Findability**: sidebar bucket set via `meta.category`; UI links to docs from any dashboard surface that exposes the feature
166
+ - **Accuracy**: code samples actually run; screenshots map 1:1 to current UI and use the ACME demo account
167
+ - **Relevance**: code samples included where applicable (TypeScript first; `<Steps/>` for multi-step flows)
168
+ - **Clarity**: overview addresses who/what/where/why; high-level use cases laid out; quickstart for new products; prerequisites listed on tutorials; sample repo in `vercel/examples` for multi-step tutorials; steps detailed not vague; visual aids in confusing sections; simplest path recommended when multiple exist
169
+ - **Completeness**: limits documented; all-limits tables updated; content plan followed and goals addressed
170
+ - **Readability**: nav names scannable and use action verbs; content types accurately used; subheadings descriptive; topics start with summaries; code blocks formatted correctly; active voice where warranted
171
+
172
+ ### Review
173
+
174
+ - PR description links to the content plan, lists what to review, and links the preview URL
175
+ - Ping the team via the PR link (not the plan or preview directly)
176
+ - Author is accountable, not the reviewer; reviewers are liberal with approvals
177
+ - Suggestion comments for small text fixes; preview comments for anything bigger
178
+ - Disagreement is fine; reject with a one-line reason and move on
179
+
180
+ ### Anti-patterns (flag these)
181
+
182
+ - Em dashes (`—`) or dashes (`-`) used as punctuation
183
+ - `easy`, `simple`, `quick` describing reader actions
184
+ - Passive voice (apply "by monkeys" test)
185
+ - Title Case in page headings (only sentence case in `H1` through `H6`)
186
+ - Generic placeholders: `<TOKEN>`, `xxx`, `your-token`, `ABC123`
187
+ - Code blocks without a language tag
188
+ - JS examples where TypeScript is the convention
189
+ - Code blocks over 25 lines without prose between
190
+ - Hard-wrapped prose paragraphs (multiple lines for one paragraph in source)
191
+ - `---` horizontal rules between sections
192
+ - Subheadings that are single generic words: `Overview`, `Caveats`, `Notes`
193
+ - Bold used for emphasis instead of UI element or critical fact
194
+ - Page or section without an opening summary
195
+ - Straight quotes (`"`, `'`) instead of curly (`"`, `'`)
196
+ - Three dots (`...`) instead of ellipsis (`…`)
197
+ - Acronyms used before being spelled out
198
+ - Bare unit numbers (`64KB`, `5kb`, `200MS`) instead of `64 KB`, `5 KB`, `200 ms`
199
+ - "We" standing in for "you"
200
+ - Rhetorical questions
201
+ - Filler words: `very`, `just`, `really`, `simply`
202
+ - References to "the full example file at the end of the guide" rather than inlining the code
203
+ - Outdated model strings in examples (`anthropic/claude-sonnet-4`, `gpt-4o`, DALL-E)
204
+ - Hardcoded date/number formats instead of `Intl.DateTimeFormat` / `Intl.NumberFormat` in code samples
205
+ - "Loading..." instead of "Loading…"
206
+ - Summary-style transitions recapping the previous paragraph (`With this setup complete…`)
207
+ - Stop-start fragments splitting one dependent idea into choppy sentences
208
+ - Spec-sheet voice reading like a datasheet (`provides`, `is configurable`, `is explicitly labeled`)
209
+ - Cold-open body paragraphs whose first sentence has no antecedent
210
+ - Personified artifacts performing human-physical actions (`hand the browser a URL`)
211
+ - Reused/template framing not specific to the page (`The question most teams face is whether…`)
212
+ - Weasel words instead of a specific claim (`significantly`, `many`, `often`, `typically`, `generally`)
213
+ - Vague quantifiers without a cited figure (`near-zero`, `sub-second`, `most requests`)
214
+ - Filler/metaphor verbs instead of the literal step (`moves through`, `lands`, `carries`, `hits`)
215
+ - Sentences that need a second read to parse
216
+ - Paragraphs over 4 sentences or covering two ideas
217
+ - Bare URLs or `here`/`link` as anchor text
218
+
219
+ ## Output Format
220
+
221
+ Group by file. Use `file:line` format (VS Code clickable). Terse findings.
222
+
223
+ ```text
224
+ ## content/docs/sandbox.mdx
225
+
226
+ content/docs/sandbox.mdx:1 - missing meta.contentType
227
+ content/docs/sandbox.mdx:12 - title "Vercel Sandbox" is feature-shaped, not user-question
228
+ content/docs/sandbox.mdx:24 - passive voice ("the sandbox is created...")
229
+ content/docs/sandbox.mdx:31 - banned word "easy"
230
+ content/docs/sandbox.mdx:47 - "..." → "…"
231
+ content/docs/sandbox.mdx:58 - code block missing language tag
232
+ content/docs/sandbox.mdx:71 - placeholder <TOKEN> → your_access_token_here
233
+ content/docs/sandbox.mdx:89 - "64KB" → "64 KB"
234
+ content/docs/sandbox.mdx:102 - H2 "Caveats" too generic; add specificity
235
+ content/docs/sandbox.mdx:118 - em dash in prose, replace with colon/comma
236
+
237
+ ## content/docs/ai-gateway.mdx
238
+
239
+ content/docs/ai-gateway.mdx:5 - title case in H1; sentence case only
240
+ content/docs/ai-gateway.mdx:18 - acronym AI Gateway used before being spelled out
241
+ content/docs/ai-gateway.mdx:34 - bold for emphasis, not UI element
242
+ content/docs/ai-gateway.mdx:52 - `anthropic/claude-sonnet-4` outdated; use `anthropic/claude-opus-4-7`
243
+ content/docs/ai-gateway.mdx:71 - hard-wrapped paragraph (lines 71-74)
244
+
245
+ ## content/docs/cron.mdx
246
+
247
+ ✓ pass
248
+ ```
249
+
250
+ State issue + location. Skip explanation unless fix is non-obvious. No preamble.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Jake Schincariol
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,11 @@
1
+ # Vendored skill
2
+
3
+ - Source: https://github.com/Jakeschincariol/founder-skill
4
+ - Path in source: skills/founder-board
5
+ - Commit: fd9385b0cfe1b96bebce3898fbd506d73eff5a9d
6
+ - Retrieved: 2026-11-05
7
+ - License: MIT — see `LICENSE` in this directory.
8
+
9
+ ## agemon modifications
10
+
11
+ - Renamed from `founder-board` to `agemon-founder-board`, and updated every reference to the pack's other skills to their new names, in the Markdown and in the scripts.
@@ -0,0 +1,111 @@
1
+ ---
2
+ name: agemon-founder-board
3
+ description: >-
4
+ Your board of directors. Puts a business idea in front of a three-member board,
5
+ each a sub-agent reading the idea through one published framework: the Offers
6
+ lens (from Alex Hormozi's $100M Offers), the Monopoly lens (from Peter Thiel's
7
+ Zero to One) and the Product lens (from Walter Isaacson's biography of Steve
8
+ Jobs). Each member scores the idea, names the risks that would kill it and votes
9
+ fund, fund with conditions, or pass. Use when the user says "test my business
10
+ idea", "would this work", "pressure-test this", "what would a board say", "is
11
+ this a good business", or starts the founder pack on a new idea.
12
+ argument-hint: "<the business idea, or leave blank to use the conversation>"
13
+ ---
14
+
15
+ # agemon-founder-board
16
+
17
+ The first meeting. Before anyone builds a website or signs a lease, three board
18
+ members tear the idea apart, each from a different angle, and vote.
19
+
20
+ What the user typed after `/agemon-founder-board`: `$ARGUMENTS`. If that is blank, take
21
+ the idea from the conversation.
22
+
23
+ ## The rule about the three names
24
+
25
+ The lenses are summaries of **published frameworks**, nothing more. The board
26
+ members are not those people, never speak as them, never quote them, never claim
27
+ they would endorse anything. Write "the Offers lens", never "Alex Hormozi says".
28
+ If the user asks what one of them really thinks, say you can only apply their
29
+ public frameworks.
30
+
31
+ ## Step 0: the idea file
32
+
33
+ Everything in the founder pack reads `founder/idea.md` in the user's project. If
34
+ it does not exist, write it now from the conversation:
35
+
36
+ ```markdown
37
+ # <business name, or a working name>
38
+
39
+ - What it is: one sentence.
40
+ - Who it is for: the target customer, as specific as the user can make it.
41
+ - What it sells, at what price: the core product and its price.
42
+ - Where and how: city or online, how customers find it, how it is delivered.
43
+ - Budget and constraints: money, time, skills, anything already decided.
44
+ ```
45
+
46
+ If the name, the customer, the product or the price is missing, ask for those (at
47
+ most three questions in one message), then write the file. Do not invent a
48
+ budget, a market size or a competitor.
49
+
50
+ ## Step 1: brief the board
51
+
52
+ Write `founder/board/brief.md`: the idea file plus anything else the user said
53
+ that a stranger would need. **Sub-agents cannot see this conversation**, so the
54
+ brief must stand on its own. Do not add your own opinion of the idea to it.
55
+
56
+ ## Step 2: convene
57
+
58
+ Launch three sub-agents in ONE message (Agent tool, `subagent_type:
59
+ general-purpose`, one per member), each told: `Read founder/board/brief.md and
60
+ agemon-founder-board's lenses.md (path below), apply ONLY the <lens> lens, and write
61
+ your memo to founder/board/<lens>.md.` The lens file is `lenses.md` in this
62
+ skill's folder (`${CLAUDE_SKILL_DIR}/lenses.md`; if that path is not expanded,
63
+ use the base directory Claude Code printed for this skill).
64
+
65
+ Each memo, in this shape:
66
+
67
+ ```markdown
68
+ # <Lens> lens
69
+ Score: <1-10> | Vote: FUND / FUND IF / PASS
70
+ ## What is strong
71
+ ## What would kill it (the top 3, most dangerous first)
72
+ ## The questions I would ask the founder
73
+ ## If FUND IF: the conditions
74
+ ```
75
+
76
+ ## Step 3: the chair's summary
77
+
78
+ Read the three memos (they are short) and write `founder/board.md`:
79
+
80
+ 1. The vote, e.g. "2 fund if, 1 pass", and the average score.
81
+ 2. The risks more than one member raised: these go first.
82
+ 3. Every condition, merged, as a checklist the rest of the pack can tick off
83
+ (the CFO, the consumer panel and pricing will test most of them).
84
+ 4. One paragraph: the strongest version of this business the board can see.
85
+ It may differ from what the user pitched; say so plainly.
86
+
87
+ Keep the members' disagreements. A board that agrees on everything was not doing
88
+ its job.
89
+
90
+ ## Rules
91
+
92
+ - Score the business, not the founder.
93
+ - No made-up facts. If a lens needs a number nobody has yet (market size, cost of
94
+ acquiring a customer), name it as an open question and say which skill answers
95
+ it (`/agemon-founder-competitors`, `/agemon-founder-consumer`, `/agemon-founder-cfo`).
96
+ - A PASS is a result, not a failure. Say it plainly.
97
+
98
+ ## Output
99
+
100
+ `founder/idea.md`, `founder/board/` (brief and three memos), `founder/board.md`.
101
+ Then say the vote in one line and suggest the next step: `/agemon-founder-competitors`
102
+ to see who is already there, or `/agemon-founder-consumer` to put it in front of 100
103
+ simulated buyers.
104
+
105
+ ## Where the pack goes next
106
+
107
+ ```
108
+ board -> competitors -> consumer -> pricing -> offer -> cfo -> marketing -> brand -> ops -> launch -> plan
109
+ ```
110
+
111
+ Every skill can also run on its own; each reads whatever is already in `founder/`.