opencode-knowledge-work 0.0.0-stage → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (472) hide show
  1. package/LICENSE +212 -0
  2. package/README.md +124 -2
  3. package/content/bio-research/.mcp.json +48 -0
  4. package/content/bio-research/CONNECTORS.md +23 -0
  5. package/content/bio-research/LICENSE +202 -0
  6. package/content/bio-research/README.md +83 -0
  7. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/LICENSE.txt +201 -0
  8. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/SKILL.md +280 -0
  9. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/references/asm_schema_overview.md +226 -0
  10. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/references/field_classification_guide.md +503 -0
  11. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/references/flattening_guide.md +254 -0
  12. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/references/supported_instruments.md +151 -0
  13. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/requirements.txt +26 -0
  14. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/scripts/convert_to_asm.py +543 -0
  15. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/scripts/export_parser.py +481 -0
  16. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/scripts/flatten_asm.py +254 -0
  17. package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/scripts/validate_asm.py +1102 -0
  18. package/content/bio-research/skills/bio-research-nextflow-development/LICENSE.txt +201 -0
  19. package/content/bio-research/skills/bio-research-nextflow-development/SKILL.md +290 -0
  20. package/content/bio-research/skills/bio-research-nextflow-development/references/geo-sra-acquisition.md +416 -0
  21. package/content/bio-research/skills/bio-research-nextflow-development/references/installation.md +96 -0
  22. package/content/bio-research/skills/bio-research-nextflow-development/references/pipelines/atacseq.md +138 -0
  23. package/content/bio-research/skills/bio-research-nextflow-development/references/pipelines/rnaseq.md +118 -0
  24. package/content/bio-research/skills/bio-research-nextflow-development/references/pipelines/sarek.md +145 -0
  25. package/content/bio-research/skills/bio-research-nextflow-development/references/troubleshooting.md +137 -0
  26. package/content/bio-research/skills/bio-research-nextflow-development/scripts/check_environment.py +452 -0
  27. package/content/bio-research/skills/bio-research-nextflow-development/scripts/config/genomes.yaml +148 -0
  28. package/content/bio-research/skills/bio-research-nextflow-development/scripts/config/pipelines/atacseq.yaml +187 -0
  29. package/content/bio-research/skills/bio-research-nextflow-development/scripts/config/pipelines/rnaseq.yaml +147 -0
  30. package/content/bio-research/skills/bio-research-nextflow-development/scripts/config/pipelines/sarek.yaml +233 -0
  31. package/content/bio-research/skills/bio-research-nextflow-development/scripts/detect_data_type.py +300 -0
  32. package/content/bio-research/skills/bio-research-nextflow-development/scripts/generate_samplesheet.py +455 -0
  33. package/content/bio-research/skills/bio-research-nextflow-development/scripts/manage_genomes.py +521 -0
  34. package/content/bio-research/skills/bio-research-nextflow-development/scripts/sra_geo_fetch.py +732 -0
  35. package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/__init__.py +69 -0
  36. package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/file_discovery.py +189 -0
  37. package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/ncbi_utils.py +808 -0
  38. package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/sample_inference.py +290 -0
  39. package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/validators.py +256 -0
  40. package/content/bio-research/skills/bio-research-scientific-problem-selection/LICENSE.txt +201 -0
  41. package/content/bio-research/skills/bio-research-scientific-problem-selection/SKILL.md +269 -0
  42. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/01-intuition-pumps.md +264 -0
  43. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/02-risk-assessment.md +323 -0
  44. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/03-optimization-function.md +481 -0
  45. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/04-parameter-strategy.md +396 -0
  46. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/05-decision-tree.md +85 -0
  47. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/06-adversity-planning.md +123 -0
  48. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/07-problem-inversion.md +152 -0
  49. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/08-integration-synthesis.md +173 -0
  50. package/content/bio-research/skills/bio-research-scientific-problem-selection/references/09-meta-framework.md +504 -0
  51. package/content/bio-research/skills/bio-research-scvi-tools/LICENSE.txt +201 -0
  52. package/content/bio-research/skills/bio-research-scvi-tools/SKILL.md +155 -0
  53. package/content/bio-research/skills/bio-research-scvi-tools/references/atac_peakvi.md +398 -0
  54. package/content/bio-research/skills/bio-research-scvi-tools/references/batch_correction_sysvi.md +417 -0
  55. package/content/bio-research/skills/bio-research-scvi-tools/references/citeseq_totalvi.md +420 -0
  56. package/content/bio-research/skills/bio-research-scvi-tools/references/data_preparation.md +286 -0
  57. package/content/bio-research/skills/bio-research-scvi-tools/references/environment_setup.md +254 -0
  58. package/content/bio-research/skills/bio-research-scvi-tools/references/label_transfer.md +373 -0
  59. package/content/bio-research/skills/bio-research-scvi-tools/references/multiome_multivi.md +384 -0
  60. package/content/bio-research/skills/bio-research-scvi-tools/references/rna_velocity_velovi.md +410 -0
  61. package/content/bio-research/skills/bio-research-scvi-tools/references/scarches_mapping.md +401 -0
  62. package/content/bio-research/skills/bio-research-scvi-tools/references/scrna_integration.md +429 -0
  63. package/content/bio-research/skills/bio-research-scvi-tools/references/spatial_deconvolution.md +438 -0
  64. package/content/bio-research/skills/bio-research-scvi-tools/references/troubleshooting.md +420 -0
  65. package/content/bio-research/skills/bio-research-scvi-tools/scripts/cluster_embed.py +212 -0
  66. package/content/bio-research/skills/bio-research-scvi-tools/scripts/differential_expression.py +220 -0
  67. package/content/bio-research/skills/bio-research-scvi-tools/scripts/integrate_datasets.py +237 -0
  68. package/content/bio-research/skills/bio-research-scvi-tools/scripts/model_utils.py +634 -0
  69. package/content/bio-research/skills/bio-research-scvi-tools/scripts/prepare_data.py +169 -0
  70. package/content/bio-research/skills/bio-research-scvi-tools/scripts/train_model.py +370 -0
  71. package/content/bio-research/skills/bio-research-scvi-tools/scripts/transfer_labels.py +224 -0
  72. package/content/bio-research/skills/bio-research-scvi-tools/scripts/validate_adata.py +397 -0
  73. package/content/bio-research/skills/bio-research-single-cell-rna-qc/LICENSE.txt +201 -0
  74. package/content/bio-research/skills/bio-research-single-cell-rna-qc/SKILL.md +175 -0
  75. package/content/bio-research/skills/bio-research-single-cell-rna-qc/references/scverse_qc_guidelines.md +186 -0
  76. package/content/bio-research/skills/bio-research-single-cell-rna-qc/scripts/qc_analysis.py +232 -0
  77. package/content/bio-research/skills/bio-research-single-cell-rna-qc/scripts/qc_core.py +233 -0
  78. package/content/bio-research/skills/bio-research-single-cell-rna-qc/scripts/qc_plotting.py +235 -0
  79. package/content/bio-research/skills/bio-research-start/SKILL.md +79 -0
  80. package/content/customer-support/.mcp.json +40 -0
  81. package/content/customer-support/CONNECTORS.md +19 -0
  82. package/content/customer-support/LICENSE +202 -0
  83. package/content/customer-support/README.md +140 -0
  84. package/content/customer-support/skills/customer-support-customer-escalation/SKILL.md +248 -0
  85. package/content/customer-support/skills/customer-support-customer-research/SKILL.md +252 -0
  86. package/content/customer-support/skills/customer-support-draft-response/SKILL.md +418 -0
  87. package/content/customer-support/skills/customer-support-kb-article/SKILL.md +351 -0
  88. package/content/customer-support/skills/customer-support-ticket-triage/SKILL.md +275 -0
  89. package/content/data/.mcp.json +36 -0
  90. package/content/data/CONNECTORS.md +18 -0
  91. package/content/data/LICENSE +202 -0
  92. package/content/data/README.md +121 -0
  93. package/content/data/skills/data-analyze/SKILL.md +119 -0
  94. package/content/data/skills/data-build-dashboard/SKILL.md +924 -0
  95. package/content/data/skills/data-create-viz/SKILL.md +154 -0
  96. package/content/data/skills/data-data-context-extractor/SKILL.md +227 -0
  97. package/content/data/skills/data-data-context-extractor/references/domain-template.md +147 -0
  98. package/content/data/skills/data-data-context-extractor/references/example-output.md +198 -0
  99. package/content/data/skills/data-data-context-extractor/references/skill-template.md +148 -0
  100. package/content/data/skills/data-data-context-extractor/references/sql-dialects.md +121 -0
  101. package/content/data/skills/data-data-context-extractor/scripts/package_data_skill.py +126 -0
  102. package/content/data/skills/data-data-visualization/SKILL.md +305 -0
  103. package/content/data/skills/data-explore-data/SKILL.md +325 -0
  104. package/content/data/skills/data-sql-queries/SKILL.md +428 -0
  105. package/content/data/skills/data-statistical-analysis/SKILL.md +245 -0
  106. package/content/data/skills/data-validate-data/SKILL.md +383 -0
  107. package/content/data/skills/data-write-query/SKILL.md +122 -0
  108. package/content/design/.mcp.json +44 -0
  109. package/content/design/CONNECTORS.md +18 -0
  110. package/content/design/README.md +117 -0
  111. package/content/design/skills/design-accessibility-review/SKILL.md +128 -0
  112. package/content/design/skills/design-design-critique/SKILL.md +118 -0
  113. package/content/design/skills/design-design-handoff/SKILL.md +131 -0
  114. package/content/design/skills/design-design-system/SKILL.md +190 -0
  115. package/content/design/skills/design-research-synthesis/SKILL.md +92 -0
  116. package/content/design/skills/design-user-research/SKILL.md +41 -0
  117. package/content/design/skills/design-ux-copy/SKILL.md +107 -0
  118. package/content/engineering/.mcp.json +48 -0
  119. package/content/engineering/CONNECTORS.md +19 -0
  120. package/content/engineering/README.md +136 -0
  121. package/content/engineering/skills/engineering-architecture/SKILL.md +85 -0
  122. package/content/engineering/skills/engineering-code-review/SKILL.md +118 -0
  123. package/content/engineering/skills/engineering-debug/SKILL.md +95 -0
  124. package/content/engineering/skills/engineering-deploy-checklist/SKILL.md +78 -0
  125. package/content/engineering/skills/engineering-documentation/SKILL.md +49 -0
  126. package/content/engineering/skills/engineering-incident-response/SKILL.md +158 -0
  127. package/content/engineering/skills/engineering-standup/SKILL.md +75 -0
  128. package/content/engineering/skills/engineering-system-design/SKILL.md +42 -0
  129. package/content/engineering/skills/engineering-tech-debt/SKILL.md +32 -0
  130. package/content/engineering/skills/engineering-testing-strategy/SKILL.md +33 -0
  131. package/content/enterprise-search/.mcp.json +36 -0
  132. package/content/enterprise-search/CONNECTORS.md +21 -0
  133. package/content/enterprise-search/LICENSE +202 -0
  134. package/content/enterprise-search/README.md +157 -0
  135. package/content/enterprise-search/skills/enterprise-search-digest/SKILL.md +173 -0
  136. package/content/enterprise-search/skills/enterprise-search-knowledge-synthesis/SKILL.md +258 -0
  137. package/content/enterprise-search/skills/enterprise-search-search/SKILL.md +178 -0
  138. package/content/enterprise-search/skills/enterprise-search-search-strategy/SKILL.md +222 -0
  139. package/content/enterprise-search/skills/enterprise-search-source-management/SKILL.md +173 -0
  140. package/content/finance/.mcp.json +32 -0
  141. package/content/finance/CONNECTORS.md +20 -0
  142. package/content/finance/LICENSE +202 -0
  143. package/content/finance/README.md +92 -0
  144. package/content/finance/skills/finance-audit-support/SKILL.md +374 -0
  145. package/content/finance/skills/finance-close-management/SKILL.md +221 -0
  146. package/content/finance/skills/finance-financial-statements/SKILL.md +335 -0
  147. package/content/finance/skills/finance-journal-entry/SKILL.md +131 -0
  148. package/content/finance/skills/finance-journal-entry-prep/SKILL.md +186 -0
  149. package/content/finance/skills/finance-reconciliation/SKILL.md +175 -0
  150. package/content/finance/skills/finance-sox-testing/SKILL.md +218 -0
  151. package/content/finance/skills/finance-variance-analysis/SKILL.md +266 -0
  152. package/content/human-resources/.mcp.json +28 -0
  153. package/content/human-resources/CONNECTORS.md +19 -0
  154. package/content/human-resources/README.md +138 -0
  155. package/content/human-resources/skills/human-resources-comp-analysis/SKILL.md +92 -0
  156. package/content/human-resources/skills/human-resources-draft-offer/SKILL.md +82 -0
  157. package/content/human-resources/skills/human-resources-interview-prep/SKILL.md +37 -0
  158. package/content/human-resources/skills/human-resources-onboarding/SKILL.md +104 -0
  159. package/content/human-resources/skills/human-resources-org-planning/SKILL.md +28 -0
  160. package/content/human-resources/skills/human-resources-people-report/SKILL.md +99 -0
  161. package/content/human-resources/skills/human-resources-performance-review/SKILL.md +149 -0
  162. package/content/human-resources/skills/human-resources-policy-lookup/SKILL.md +94 -0
  163. package/content/human-resources/skills/human-resources-recruiting-pipeline/SKILL.md +31 -0
  164. package/content/legal/.mcp.json +36 -0
  165. package/content/legal/CONNECTORS.md +21 -0
  166. package/content/legal/LICENSE +202 -0
  167. package/content/legal/README.md +234 -0
  168. package/content/legal/skills/legal-brief/SKILL.md +208 -0
  169. package/content/legal/skills/legal-compliance-check/SKILL.md +274 -0
  170. package/content/legal/skills/legal-legal-response/SKILL.md +457 -0
  171. package/content/legal/skills/legal-legal-risk-assessment/SKILL.md +265 -0
  172. package/content/legal/skills/legal-meeting-briefing/SKILL.md +220 -0
  173. package/content/legal/skills/legal-review-contract/SKILL.md +358 -0
  174. package/content/legal/skills/legal-signature-request/SKILL.md +104 -0
  175. package/content/legal/skills/legal-triage-nda/SKILL.md +262 -0
  176. package/content/legal/skills/legal-vendor-check/SKILL.md +159 -0
  177. package/content/manifest.json +86 -0
  178. package/content/marketing/.mcp.json +60 -0
  179. package/content/marketing/CONNECTORS.md +20 -0
  180. package/content/marketing/LICENSE +202 -0
  181. package/content/marketing/README.md +90 -0
  182. package/content/marketing/skills/marketing-brand-review/SKILL.md +276 -0
  183. package/content/marketing/skills/marketing-campaign-plan/SKILL.md +308 -0
  184. package/content/marketing/skills/marketing-competitive-brief/SKILL.md +331 -0
  185. package/content/marketing/skills/marketing-content-creation/SKILL.md +157 -0
  186. package/content/marketing/skills/marketing-draft-content/SKILL.md +117 -0
  187. package/content/marketing/skills/marketing-email-sequence/SKILL.md +220 -0
  188. package/content/marketing/skills/marketing-performance-report/SKILL.md +392 -0
  189. package/content/marketing/skills/marketing-seo-audit/SKILL.md +190 -0
  190. package/content/operations/.mcp.json +32 -0
  191. package/content/operations/CONNECTORS.md +20 -0
  192. package/content/operations/README.md +135 -0
  193. package/content/operations/skills/operations-capacity-plan/SKILL.md +113 -0
  194. package/content/operations/skills/operations-change-request/SKILL.md +121 -0
  195. package/content/operations/skills/operations-compliance-tracking/SKILL.md +44 -0
  196. package/content/operations/skills/operations-process-doc/SKILL.md +82 -0
  197. package/content/operations/skills/operations-process-optimization/SKILL.md +39 -0
  198. package/content/operations/skills/operations-risk-assessment/SKILL.md +40 -0
  199. package/content/operations/skills/operations-runbook/SKILL.md +87 -0
  200. package/content/operations/skills/operations-status-report/SKILL.md +77 -0
  201. package/content/operations/skills/operations-vendor-review/SKILL.md +104 -0
  202. package/content/pdf-viewer/.mcp.json +8 -0
  203. package/content/pdf-viewer/CONNECTORS.md +15 -0
  204. package/content/pdf-viewer/LICENSE +202 -0
  205. package/content/pdf-viewer/README.md +57 -0
  206. package/content/pdf-viewer/commands/annotate.md +51 -0
  207. package/content/pdf-viewer/commands/fill-form.md +73 -0
  208. package/content/pdf-viewer/commands/open.md +34 -0
  209. package/content/pdf-viewer/commands/sign.md +54 -0
  210. package/content/pdf-viewer/skills/pdf-viewer-view-pdf/SKILL.md +147 -0
  211. package/content/product-management/.mcp.json +72 -0
  212. package/content/product-management/CONNECTORS.md +22 -0
  213. package/content/product-management/LICENSE +202 -0
  214. package/content/product-management/README.md +118 -0
  215. package/content/product-management/commands/brainstorm.md +120 -0
  216. package/content/product-management/skills/product-management-competitive-brief/SKILL.md +302 -0
  217. package/content/product-management/skills/product-management-metrics-review/SKILL.md +388 -0
  218. package/content/product-management/skills/product-management-product-brainstorming/SKILL.md +273 -0
  219. package/content/product-management/skills/product-management-roadmap-update/SKILL.md +266 -0
  220. package/content/product-management/skills/product-management-sprint-planning/SKILL.md +94 -0
  221. package/content/product-management/skills/product-management-stakeholder-update/SKILL.md +352 -0
  222. package/content/product-management/skills/product-management-synthesize-research/SKILL.md +312 -0
  223. package/content/product-management/skills/product-management-write-spec/SKILL.md +250 -0
  224. package/content/productivity/.mcp.json +44 -0
  225. package/content/productivity/CONNECTORS.md +18 -0
  226. package/content/productivity/LICENSE +202 -0
  227. package/content/productivity/README.md +97 -0
  228. package/content/productivity/skills/dashboard.html +3111 -0
  229. package/content/productivity/skills/productivity-memory-management/SKILL.md +323 -0
  230. package/content/productivity/skills/productivity-start/SKILL.md +158 -0
  231. package/content/productivity/skills/productivity-task-management/SKILL.md +91 -0
  232. package/content/productivity/skills/productivity-update/SKILL.md +168 -0
  233. package/content/sales/.mcp.json +100 -0
  234. package/content/sales/CONNECTORS.md +36 -0
  235. package/content/sales/LICENSE +202 -0
  236. package/content/sales/README.md +148 -0
  237. package/content/sales/skills/sales-account-context/SKILL.md +94 -0
  238. package/content/sales/skills/sales-account-plan/SKILL.md +95 -0
  239. package/content/sales/skills/sales-account-research/SKILL.md +99 -0
  240. package/content/sales/skills/sales-account-tiering/SKILL.md +101 -0
  241. package/content/sales/skills/sales-call-prep/SKILL.md +111 -0
  242. package/content/sales/skills/sales-call-summary/SKILL.md +111 -0
  243. package/content/sales/skills/sales-close-plan/SKILL.md +106 -0
  244. package/content/sales/skills/sales-competitive-intelligence/SKILL.md +102 -0
  245. package/content/sales/skills/sales-create-an-asset/SKILL.md +105 -0
  246. package/content/sales/skills/sales-crm-hygiene-check/SKILL.md +103 -0
  247. package/content/sales/skills/sales-customer-health/SKILL.md +108 -0
  248. package/content/sales/skills/sales-customer-voice/SKILL.md +94 -0
  249. package/content/sales/skills/sales-daily-briefing/SKILL.md +61 -0
  250. package/content/sales/skills/sales-deal-advance-gap/SKILL.md +102 -0
  251. package/content/sales/skills/sales-deal-review/SKILL.md +105 -0
  252. package/content/sales/skills/sales-deal-signals/SKILL.md +96 -0
  253. package/content/sales/skills/sales-deal-slip-scenario/SKILL.md +101 -0
  254. package/content/sales/skills/sales-draft-outreach/SKILL.md +116 -0
  255. package/content/sales/skills/sales-end-of-day/SKILL.md +114 -0
  256. package/content/sales/skills/sales-expansion-whitespace/SKILL.md +97 -0
  257. package/content/sales/skills/sales-forecast/SKILL.md +100 -0
  258. package/content/sales/skills/sales-handle-objection/SKILL.md +93 -0
  259. package/content/sales/skills/sales-inbox-sweep/SKILL.md +114 -0
  260. package/content/sales/skills/sales-lead-triage/SKILL.md +105 -0
  261. package/content/sales/skills/sales-log-activity/SKILL.md +111 -0
  262. package/content/sales/skills/sales-pipeline-review/SKILL.md +97 -0
  263. package/content/sales/skills/sales-renewal-radar/SKILL.md +95 -0
  264. package/content/sales/skills/sales-rep-context/SKILL.md +90 -0
  265. package/content/sales/skills/sales-route-lead/SKILL.md +111 -0
  266. package/content/sales/skills/sales-schedule-meeting/SKILL.md +99 -0
  267. package/content/sales/skills/sales-setup/SKILL.md +195 -0
  268. package/content/sales/skills/sales-stakeholder-map/SKILL.md +107 -0
  269. package/content/sales/skills/sales-team-pipeline/SKILL.md +105 -0
  270. package/content/sales/skills/sales-update-opportunity/SKILL.md +111 -0
  271. package/content/sales/skills/sales-weekly-wrap/SKILL.md +90 -0
  272. package/content/sales/skills/sales-win-loss-review/SKILL.md +88 -0
  273. package/content/small-business/.mcp.json +148 -0
  274. package/content/small-business/README.md +117 -0
  275. package/content/small-business/skills/small-business-ad-manager/SKILL.md +128 -0
  276. package/content/small-business/skills/small-business-ad-manager/reference/ad_copy.md +112 -0
  277. package/content/small-business/skills/small-business-ad-manager/reference/change_playbook.md +127 -0
  278. package/content/small-business/skills/small-business-ad-manager/reference/data_sources.md +100 -0
  279. package/content/small-business/skills/small-business-ad-manager/reference/diagnostics.md +89 -0
  280. package/content/small-business/skills/small-business-ad-manager/reference/gotchas.md +181 -0
  281. package/content/small-business/skills/small-business-ap-processor/SKILL.md +158 -0
  282. package/content/small-business/skills/small-business-ap-processor/reference/coding_rules.md +70 -0
  283. package/content/small-business/skills/small-business-ap-processor/reference/gotchas.md +131 -0
  284. package/content/small-business/skills/small-business-ap-processor/reference/intake_and_extraction.md +82 -0
  285. package/content/small-business/skills/small-business-ap-processor/reference/matching_and_exceptions.md +80 -0
  286. package/content/small-business/skills/small-business-ap-processor/reference/payment_run.md +77 -0
  287. package/content/small-business/skills/small-business-brand-style/SKILL.md +106 -0
  288. package/content/small-business/skills/small-business-build-agent/SKILL.md +105 -0
  289. package/content/small-business/skills/small-business-build-agent/reference/capture.md +133 -0
  290. package/content/small-business/skills/small-business-build-agent/reference/gotchas.md +204 -0
  291. package/content/small-business/skills/small-business-build-agent/reference/skill_authoring.md +165 -0
  292. package/content/small-business/skills/small-business-build-connector/SKILL.md +102 -0
  293. package/content/small-business/skills/small-business-build-connector/reference/discovery.md +120 -0
  294. package/content/small-business/skills/small-business-build-connector/reference/gotchas.md +237 -0
  295. package/content/small-business/skills/small-business-build-connector/reference/paths.md +106 -0
  296. package/content/small-business/skills/small-business-build-connector/reference/use-zapier.md +128 -0
  297. package/content/small-business/skills/small-business-business-pulse/SKILL.md +181 -0
  298. package/content/small-business/skills/small-business-business-pulse/reference/data_sources.md +173 -0
  299. package/content/small-business/skills/small-business-business-pulse/reference/gotchas.md +103 -0
  300. package/content/small-business/skills/small-business-business-pulse/reference/output_template.md +109 -0
  301. package/content/small-business/skills/small-business-business-pulse/reference/thresholds.md +71 -0
  302. package/content/small-business/skills/small-business-business-pulse/reference/v2_sources.md +63 -0
  303. package/content/small-business/skills/small-business-call-list/SKILL.md +82 -0
  304. package/content/small-business/skills/small-business-canva-creator/SKILL.md +448 -0
  305. package/content/small-business/skills/small-business-canva-creator/reference/canva-api.md +208 -0
  306. package/content/small-business/skills/small-business-canva-creator/reference/examples/boutique-brief-campaign.md +181 -0
  307. package/content/small-business/skills/small-business-canva-creator/reference/gotchas.md +380 -0
  308. package/content/small-business/skills/small-business-canva-creator/reference/hubspot-staging.md +137 -0
  309. package/content/small-business/skills/small-business-cash-flow-snapshot/SKILL.md +251 -0
  310. package/content/small-business/skills/small-business-cash-flow-snapshot/reference/examples/worked-example.md +92 -0
  311. package/content/small-business/skills/small-business-cash-flow-snapshot/reference/gotchas.md +62 -0
  312. package/content/small-business/skills/small-business-cash-flow-snapshot/reference/v2_sources.md +84 -0
  313. package/content/small-business/skills/small-business-close-month/SKILL.md +86 -0
  314. package/content/small-business/skills/small-business-content-strategy/SKILL.md +152 -0
  315. package/content/small-business/skills/small-business-content-strategy/reference/examples/retail-boutique-example.md +71 -0
  316. package/content/small-business/skills/small-business-content-strategy/reference/gotchas.md +104 -0
  317. package/content/small-business/skills/small-business-content-strategy/reference/v2_sources.md +40 -0
  318. package/content/small-business/skills/small-business-contract-review/SKILL.md +158 -0
  319. package/content/small-business/skills/small-business-contract-review/reference/docusign-fetch.md +32 -0
  320. package/content/small-business/skills/small-business-contract-review/reference/examples/flagged-summary-saas.md +97 -0
  321. package/content/small-business/skills/small-business-contract-review/reference/gmail-fetch.md +30 -0
  322. package/content/small-business/skills/small-business-contract-review/reference/gotchas.md +105 -0
  323. package/content/small-business/skills/small-business-contract-review/reference/m365-fetch.md +60 -0
  324. package/content/small-business/skills/small-business-crm-autopilot/SKILL.md +162 -0
  325. package/content/small-business/skills/small-business-crm-autopilot/reference/cleanup-checklist.md +82 -0
  326. package/content/small-business/skills/small-business-crm-autopilot/reference/examples/cleanup-deal.md +83 -0
  327. package/content/small-business/skills/small-business-crm-autopilot/reference/examples/log-call-happy-path.md +68 -0
  328. package/content/small-business/skills/small-business-crm-autopilot/reference/examples/log-email-happy-path.md +50 -0
  329. package/content/small-business/skills/small-business-crm-autopilot/reference/gotchas.md +110 -0
  330. package/content/small-business/skills/small-business-crm-autopilot/reference/hubspot-fields.md +62 -0
  331. package/content/small-business/skills/small-business-crm-autopilot/reference/lightweight_crm.md +125 -0
  332. package/content/small-business/skills/small-business-crm-autopilot/reference/salesforce-fields.md +122 -0
  333. package/content/small-business/skills/small-business-crm-autopilot/reference/standing_mode.md +144 -0
  334. package/content/small-business/skills/small-business-grant-rfp-writer/SKILL.md +162 -0
  335. package/content/small-business/skills/small-business-grant-rfp-writer/reference/drafting.md +129 -0
  336. package/content/small-business/skills/small-business-grant-rfp-writer/reference/go_no_go.md +125 -0
  337. package/content/small-business/skills/small-business-grant-rfp-writer/reference/gotchas.md +180 -0
  338. package/content/small-business/skills/small-business-grant-rfp-writer/reference/opportunity_sources.md +90 -0
  339. package/content/small-business/skills/small-business-grant-rfp-writer/reference/org_profile.md +81 -0
  340. package/content/small-business/skills/small-business-grow-pipeline/SKILL.md +92 -0
  341. package/content/small-business/skills/small-business-growth-pulse/SKILL.md +143 -0
  342. package/content/small-business/skills/small-business-growth-pulse/reference/data_sources.md +113 -0
  343. package/content/small-business/skills/small-business-growth-pulse/reference/gotchas.md +175 -0
  344. package/content/small-business/skills/small-business-growth-pulse/reference/output_template.md +122 -0
  345. package/content/small-business/skills/small-business-growth-pulse/reference/thresholds.md +110 -0
  346. package/content/small-business/skills/small-business-hiring-screener/SKILL.md +137 -0
  347. package/content/small-business/skills/small-business-hiring-screener/reference/candidate_comms.md +132 -0
  348. package/content/small-business/skills/small-business-hiring-screener/reference/fair_screening.md +103 -0
  349. package/content/small-business/skills/small-business-hiring-screener/reference/gotchas.md +183 -0
  350. package/content/small-business/skills/small-business-hiring-screener/reference/onboarding.md +82 -0
  351. package/content/small-business/skills/small-business-hiring-screener/reference/rubric.md +122 -0
  352. package/content/small-business/skills/small-business-inbox-manager/SKILL.md +130 -0
  353. package/content/small-business/skills/small-business-inbox-manager/reference/digest_format.md +110 -0
  354. package/content/small-business/skills/small-business-inbox-manager/reference/gotchas.md +220 -0
  355. package/content/small-business/skills/small-business-inbox-manager/reference/handoffs.md +77 -0
  356. package/content/small-business/skills/small-business-inbox-manager/reference/reply_drafting.md +116 -0
  357. package/content/small-business/skills/small-business-inbox-manager/reference/triage_rules.md +72 -0
  358. package/content/small-business/skills/small-business-inventory-planner/SKILL.md +126 -0
  359. package/content/small-business/skills/small-business-inventory-planner/reference/data_sources.md +94 -0
  360. package/content/small-business/skills/small-business-inventory-planner/reference/gotchas.md +153 -0
  361. package/content/small-business/skills/small-business-inventory-planner/reference/po_drafting.md +92 -0
  362. package/content/small-business/skills/small-business-inventory-planner/reference/seasonality.md +112 -0
  363. package/content/small-business/skills/small-business-inventory-planner/reference/velocity_and_reorder.md +154 -0
  364. package/content/small-business/skills/small-business-invoice-chase/SKILL.md +131 -0
  365. package/content/small-business/skills/small-business-invoice-chase/reference/examples/firm-reminder.md +28 -0
  366. package/content/small-business/skills/small-business-invoice-chase/reference/examples/gentle-reminder.md +27 -0
  367. package/content/small-business/skills/small-business-invoice-chase/reference/gotchas.md +75 -0
  368. package/content/small-business/skills/small-business-invoice-chase/reference/tone-matching.md +44 -0
  369. package/content/small-business/skills/small-business-invoice-chase/reference/v2_sources.md +78 -0
  370. package/content/small-business/skills/small-business-job-post-builder/SKILL.md +204 -0
  371. package/content/small-business/skills/small-business-job-post-builder/reference/docusign-routing.md +63 -0
  372. package/content/small-business/skills/small-business-job-post-builder/reference/examples/worked-example.md +110 -0
  373. package/content/small-business/skills/small-business-job-post-builder/reference/existing-document-merge.md +58 -0
  374. package/content/small-business/skills/small-business-job-post-builder/reference/gotchas.md +68 -0
  375. package/content/small-business/skills/small-business-job-post-builder/reference/interview-guide-structure.md +93 -0
  376. package/content/small-business/skills/small-business-job-post-builder/reference/job-post-structure.md +62 -0
  377. package/content/small-business/skills/small-business-job-post-builder/reference/offer-letter-template.md +145 -0
  378. package/content/small-business/skills/small-business-job-post-builder/reference/role-intake.md +73 -0
  379. package/content/small-business/skills/small-business-lead-finder/SKILL.md +119 -0
  380. package/content/small-business/skills/small-business-lead-finder/reference/gotchas.md +152 -0
  381. package/content/small-business/skills/small-business-lead-finder/reference/icp_method.md +97 -0
  382. package/content/small-business/skills/small-business-lead-finder/reference/output_template.md +124 -0
  383. package/content/small-business/skills/small-business-lead-finder/reference/scoring.md +92 -0
  384. package/content/small-business/skills/small-business-lead-finder/reference/sourcing.md +78 -0
  385. package/content/small-business/skills/small-business-lead-triage/SKILL.md +81 -0
  386. package/content/small-business/skills/small-business-lead-triage/reference/examples/happy-path-triage.md +68 -0
  387. package/content/small-business/skills/small-business-lead-triage/reference/gotchas.md +76 -0
  388. package/content/small-business/skills/small-business-lead-triage/reference/hubspot-scoring.md +169 -0
  389. package/content/small-business/skills/small-business-marketing-monday/SKILL.md +108 -0
  390. package/content/small-business/skills/small-business-monday-brief/SKILL.md +97 -0
  391. package/content/small-business/skills/small-business-month-end-prep/SKILL.md +331 -0
  392. package/content/small-business/skills/small-business-month-end-prep/reference/close-packet-format.md +127 -0
  393. package/content/small-business/skills/small-business-month-end-prep/reference/examples/pl-narrative.md +52 -0
  394. package/content/small-business/skills/small-business-month-end-prep/reference/gotchas.md +113 -0
  395. package/content/small-business/skills/small-business-month-end-prep/reference/paypal-settlements.md +110 -0
  396. package/content/small-business/skills/small-business-month-end-prep/reference/quickbooks-reconcile.md +71 -0
  397. package/content/small-business/skills/small-business-month-end-prep/reference/v2_sources.md +125 -0
  398. package/content/small-business/skills/small-business-month-end-prep/reference/xero-reconcile.md +175 -0
  399. package/content/small-business/skills/small-business-month-end-prep/reference/zoho-books-reconcile.md +168 -0
  400. package/content/small-business/skills/small-business-outreach-composer/SKILL.md +144 -0
  401. package/content/small-business/skills/small-business-outreach-composer/reference/gotchas.md +213 -0
  402. package/content/small-business/skills/small-business-outreach-composer/reference/output_template.md +147 -0
  403. package/content/small-business/skills/small-business-outreach-composer/reference/sequence_patterns.md +99 -0
  404. package/content/small-business/skills/small-business-outreach-composer/reference/slop_test.md +164 -0
  405. package/content/small-business/skills/small-business-pay-the-bills/SKILL.md +101 -0
  406. package/content/small-business/skills/small-business-payroll-prep/SKILL.md +139 -0
  407. package/content/small-business/skills/small-business-payroll-prep/reference/anomaly_rules.md +99 -0
  408. package/content/small-business/skills/small-business-payroll-prep/reference/books_sync.md +72 -0
  409. package/content/small-business/skills/small-business-payroll-prep/reference/gotchas.md +153 -0
  410. package/content/small-business/skills/small-business-payroll-prep/reference/run_sheet_format.md +90 -0
  411. package/content/small-business/skills/small-business-payroll-prep/reference/timesheet_intake.md +118 -0
  412. package/content/small-business/skills/small-business-plan-payroll/SKILL.md +88 -0
  413. package/content/small-business/skills/small-business-proposal-builder/SKILL.md +168 -0
  414. package/content/small-business/skills/small-business-proposal-builder/reference/discovery_extraction.md +138 -0
  415. package/content/small-business/skills/small-business-proposal-builder/reference/gotchas.md +184 -0
  416. package/content/small-business/skills/small-business-proposal-builder/reference/output_template.md +128 -0
  417. package/content/small-business/skills/small-business-proposal-builder/reference/pricing_method.md +125 -0
  418. package/content/small-business/skills/small-business-proposal-builder/reference/proposal_structure.md +120 -0
  419. package/content/small-business/skills/small-business-reactivate/SKILL.md +109 -0
  420. package/content/small-business/skills/small-business-report-builder/SKILL.md +142 -0
  421. package/content/small-business/skills/small-business-report-builder/reference/data_sources.md +168 -0
  422. package/content/small-business/skills/small-business-report-builder/reference/gotchas.md +155 -0
  423. package/content/small-business/skills/small-business-report-builder/reference/output_template.md +109 -0
  424. package/content/small-business/skills/small-business-report-builder/reference/report_spec.md +109 -0
  425. package/content/small-business/skills/small-business-report-builder/reference/saved_reports.md +50 -0
  426. package/content/small-business/skills/small-business-report-pack/SKILL.md +83 -0
  427. package/content/small-business/skills/small-business-restock/SKILL.md +88 -0
  428. package/content/small-business/skills/small-business-review-reputation/SKILL.md +130 -0
  429. package/content/small-business/skills/small-business-review-reputation/reference/churn-signals.md +110 -0
  430. package/content/small-business/skills/small-business-review-reputation/reference/examples/example-report.md +150 -0
  431. package/content/small-business/skills/small-business-review-reputation/reference/gotchas.md +164 -0
  432. package/content/small-business/skills/small-business-review-reputation/reference/response-patterns.md +123 -0
  433. package/content/small-business/skills/small-business-review-reputation/reference/sources.md +116 -0
  434. package/content/small-business/skills/small-business-seo-ai-visibility/SKILL.md +143 -0
  435. package/content/small-business/skills/small-business-seo-ai-visibility/reference/ai_visibility.md +173 -0
  436. package/content/small-business/skills/small-business-seo-ai-visibility/reference/audit_checklist.md +134 -0
  437. package/content/small-business/skills/small-business-seo-ai-visibility/reference/catalog_refresh.md +126 -0
  438. package/content/small-business/skills/small-business-seo-ai-visibility/reference/content_rewrite.md +113 -0
  439. package/content/small-business/skills/small-business-seo-ai-visibility/reference/gotchas.md +211 -0
  440. package/content/small-business/skills/small-business-smb-onboard/SKILL.md +82 -0
  441. package/content/small-business/skills/small-business-smb-onboard/reference/examples/happy-path.md +190 -0
  442. package/content/small-business/skills/small-business-smb-onboard/reference/gotchas.md +111 -0
  443. package/content/small-business/skills/small-business-smb-onboard/reference/onboard-checklist.md +99 -0
  444. package/content/small-business/skills/small-business-smb-onboard/reference/website-research.md +82 -0
  445. package/content/small-business/skills/small-business-smb-router/SKILL.md +216 -0
  446. package/content/small-business/skills/small-business-smb-router/reference/connector-map.md +96 -0
  447. package/content/small-business/skills/small-business-social-content-engine/SKILL.md +162 -0
  448. package/content/small-business/skills/small-business-social-content-engine/reference/calendar.md +116 -0
  449. package/content/small-business/skills/small-business-social-content-engine/reference/canva-api.md +208 -0
  450. package/content/small-business/skills/small-business-social-content-engine/reference/examples/okonkwo-campaign.md +190 -0
  451. package/content/small-business/skills/small-business-social-content-engine/reference/gotchas.md +447 -0
  452. package/content/small-business/skills/small-business-social-content-engine/reference/publishing.md +166 -0
  453. package/content/small-business/skills/small-business-social-content-engine/reference/shopify-assets.md +77 -0
  454. package/content/small-business/skills/small-business-speed-to-lead/SKILL.md +172 -0
  455. package/content/small-business/skills/small-business-speed-to-lead/reference/approval.md +61 -0
  456. package/content/small-business/skills/small-business-speed-to-lead/reference/gotchas.md +167 -0
  457. package/content/small-business/skills/small-business-speed-to-lead/reference/qualification.md +153 -0
  458. package/content/small-business/skills/small-business-speed-to-lead/reference/response_patterns.md +184 -0
  459. package/content/small-business/skills/small-business-tax-prep/SKILL.md +85 -0
  460. package/content/small-business/skills/small-business-tax-season-organizer/SKILL.md +210 -0
  461. package/content/small-business/skills/small-business-tax-season-organizer/reference/calculation-assumptions.md +177 -0
  462. package/content/small-business/skills/small-business-tax-season-organizer/reference/connector-queries.md +267 -0
  463. package/content/small-business/skills/small-business-tax-season-organizer/reference/examples/quarterly-estimate.md +92 -0
  464. package/content/small-business/skills/small-business-tax-season-organizer/reference/examples/year-end-1099.md +102 -0
  465. package/content/small-business/skills/small-business-tax-season-organizer/reference/gotchas.md +104 -0
  466. package/content/small-business/skills/small-business-tax-season-organizer/reference/output-formats.md +68 -0
  467. package/content/small-business/skills/small-business-ticket-deflector/SKILL.md +164 -0
  468. package/content/small-business/skills/small-business-ticket-deflector/reference/examples/deny-refund-request.md +98 -0
  469. package/content/small-business/skills/small-business-ticket-deflector/reference/examples/respond-refund-request.md +77 -0
  470. package/content/small-business/skills/small-business-ticket-deflector/reference/gotchas.md +57 -0
  471. package/index.ts +84 -0
  472. package/package.json +30 -3
@@ -0,0 +1,138 @@
1
+ # Discovery Extraction
2
+
3
+ Discovery arrives in whatever form the owner could capture between jobs. Every one of these is a normal input, not a degraded one.
4
+
5
+ The output of this step is always the same structure, regardless of what came in:
6
+
7
+ ```
8
+ Customer: <who, and who signs>
9
+ Wants: <the job, in their words>
10
+ Scope, clear: <what is definitely in>
11
+ Scope, fuzzy: <what is implied but not stated>
12
+ Constraints: <access, timing, code, site conditions>
13
+ Out of scope: <anything explicitly excluded>
14
+ Dates: <deadlines, start windows>
15
+ Budget signal: <anything said about money>
16
+ Gaps: <what is missing and would change the price>
17
+ ```
18
+
19
+ The Gaps line is the one that protects the owner. Everything else describes the job; that line describes what could go wrong.
20
+
21
+ ---
22
+
23
+ ## Call and meeting transcripts
24
+
25
+ The richest input. Read the whole thing — the useful details are usually in the middle, not the summary.
26
+
27
+ **Zoom's limits, so a missing transcript is not mistaken for an empty call.** It is read-only.
28
+ It only reaches meetings the owner hosted or attended. And a recordings list covers a
29
+ one-month range per call, so history older than that needs a second, earlier request. When a
30
+ meeting is not reachable, say which one and ask the owner for the recording or their notes —
31
+ never build a proposal on a call you could not read.
32
+
33
+ Look for:
34
+
35
+ - **Direct quotes about what they want.** Use their words in the proposal. Customers recognize their own phrasing and it signals they were heard.
36
+ - **Constraints mentioned in passing.** "We can only get in after 6" is a cost driver that never appears in a scope list.
37
+ - **Who actually decides.** "I'll need to run it by the board" changes the timeline and the follow-up.
38
+ - **Budget signals.** "Last time we paid around 8" is the most valuable sentence in the transcript.
39
+ - **What they complained about with their last vendor.** That is what the proposal should quietly address.
40
+
41
+ ---
42
+
43
+ ## Voice memos
44
+
45
+ Recorded in a truck, often mid-thought, often with detail nobody would write down.
46
+
47
+ Treat interruptions and self-corrections as real. If the owner says "call it four units — no, five, there's one on the back roof," the answer is five, and the fact they nearly missed it means the back roof deserves a note.
48
+
49
+ If audio is unclear on a number, do not guess it. Flag it: "couldn't make out the tonnage at 0:47 — confirm before this goes out."
50
+
51
+ ---
52
+
53
+ ## Photos
54
+
55
+ Photos are excellent for some things and worthless for others. Being honest about which is what keeps the owner out of trouble.
56
+
57
+ **Photos can establish:** equipment make and model from a nameplate, visible condition and age, access constraints, obvious obstructions, approximate layout, what is already installed.
58
+
59
+ **Photos cannot establish:** dimensions without a reference object, what is behind or above anything, condition of concealed components, code compliance, or capacity.
60
+
61
+ Never derive a quantity from a photo unless something of known size is in frame. Estimated square footage from a photo is the single most common way a job goes underwater.
62
+
63
+ State what each photo contributed and what it left open:
64
+
65
+ ```
66
+ Photo 3 shows a Carrier 48TC rooftop unit, nameplate legible, visible rust at
67
+ the base pan. Age not determinable from the plate. Roof access appears to be
68
+ ladder-only — confirm, because a crane changes the number materially.
69
+ ```
70
+
71
+ ---
72
+
73
+ ## Drawings and plan sheets
74
+
75
+ Read the title block first: revision, date, scale, and whether it is issued for construction or preliminary. A quote against a superseded revision is a quote against the wrong job.
76
+
77
+ Take quantities from schedules and legends, not by measuring the drawing. If a schedule is absent and quantities must be counted, say so and state the count as an assumption.
78
+
79
+ Note anything marked "by others" or "NIC" — that is scope boundary and it belongs in the not-included section verbatim.
80
+
81
+ ---
82
+
83
+ ## RFPs, RFQs, and solicitations
84
+
85
+ These are compliance documents before they are pricing documents. A perfect price on a non-compliant response loses.
86
+
87
+ Extract in this order:
88
+
89
+ 1. **Submission mechanics** — deadline, format, page limits, delivery method. Miss any of these and nothing else matters.
90
+ 2. **Mandatory qualifications** — licenses, bonding, insurance limits, certifications, past-performance minimums
91
+ 3. **The actual scope of work**
92
+ 4. **Evaluation criteria and their weights** — this tells you what the response should emphasize
93
+ 5. **Terms that carry cost** — liquidated damages, retainage, payment timing, warranty length, prevailing wage
94
+
95
+ **Run a go/no-go before writing anything.** If the owner cannot meet a mandatory qualification, say so immediately. Writing a full response to an RFP they are disqualified from is a wasted evening, and this segment does not have spare evenings.
96
+
97
+ ```
98
+ Go/no-go: This requires a USD 2M umbrella policy and you carry USD 1M. That's
99
+ disqualifying unless you can bind additional coverage before the 8th.
100
+ Worth checking before I write the rest?
101
+ ```
102
+
103
+ ---
104
+
105
+ ## Scrappy notes
106
+
107
+ Sometimes it is four lines typed on a phone. That is enough to start, and it is better than the owner writing the proposal from scratch.
108
+
109
+ Extract what is there, then list what is missing as direct questions — the smallest set that would let the price be real:
110
+
111
+ ```
112
+ Enough here to draft the shape of it. Three things I need before the number
113
+ means anything:
114
+ - Square footage of the space
115
+ - Is the existing ductwork staying?
116
+ - Any deadline you know about?
117
+ ```
118
+
119
+ Three questions, not a form. The owner is answering this on a phone.
120
+
121
+ ---
122
+
123
+ ## Handling the gaps
124
+
125
+ Every gap resolves one of two ways, and never a third:
126
+
127
+ **Ask,** when the answer materially changes the price and the owner can get it quickly.
128
+
129
+ **Assume, in writing,** when the job needs to move. The assumption goes in the proposal itself, in the customer-visible text:
130
+
131
+ ```
132
+ This quote assumes roof access by existing ladder. If a crane or lift is
133
+ required, add USD 1,800.
134
+ ```
135
+
136
+ That sentence has saved more margin than any pricing refinement. It converts a dispute into a pre-agreed line item.
137
+
138
+ **Never guess silently.** A number with an invisible assumption behind it is the mechanism by which a profitable job becomes a loss.
@@ -0,0 +1,184 @@
1
+ # Gotchas
2
+
3
+ Failure modes that lose money or lose the job. Proposals are binding documents — a mistake here has a dollar value attached.
4
+
5
+ ---
6
+
7
+ ## Gotcha: a quantity estimated from a photo
8
+
9
+ **Why it matters:** This is the classic way a job goes underwater. A photo without a reference object cannot establish dimensions, and a square-footage guess that is 30% low turns a profitable job into a loss the owner cannot renegotiate.
10
+
11
+ ### Bad
12
+
13
+ ```
14
+ Approximately 4,200 sq ft based on the photos.
15
+ ```
16
+
17
+ ### Good
18
+
19
+ ```
20
+ Square footage not determinable from the photos — nothing in frame for scale.
21
+ Two options: give me the number, or I price it per-unit and add a line that
22
+ adjusts on field verification.
23
+ ```
24
+
25
+ Photos establish make, model, condition, and access. They do not establish size.
26
+
27
+ ---
28
+
29
+ ## Gotcha: no "not included" section
30
+
31
+ **Why it matters:** Scope disputes are the single largest source of lost margin in service businesses, and every one of them starts with something nobody wrote down.
32
+
33
+ ### Bad
34
+
35
+ Scope section only. Customer assumes ductwork is included. It wasn't.
36
+
37
+ ### Good
38
+
39
+ An explicit list of what a reasonable customer might assume is covered and isn't. It costs three lines and prevents the argument entirely.
40
+
41
+ ---
42
+
43
+ ## Gotcha: a silent assumption
44
+
45
+ **Why it matters:** An assumption the owner knows about but the customer never saw is not protection. It becomes the owner's problem the moment it turns out wrong.
46
+
47
+ ### Bad
48
+
49
+ Price the job assuming ladder access. Mention it to the owner. Leave it out of the document.
50
+
51
+ ### Good
52
+
53
+ ```
54
+ This price assumes roof access by the existing ladder. If a crane or lift is
55
+ required, add USD 1,800.
56
+ ```
57
+
58
+ In the customer-visible text, with the consequence named. That converts a dispute into a pre-agreed change order.
59
+
60
+ ---
61
+
62
+ ## Gotcha: an invented rate
63
+
64
+ **Why it matters:** Labor rate is the owner's core economics. A plausible-looking number they don't catch either loses them the job or loses them money on it.
65
+
66
+ ### Bad
67
+
68
+ ```
69
+ Line 4 — Controls integration: USD 4,200
70
+ ```
71
+
72
+ Derived from nothing.
73
+
74
+ ### Good
75
+
76
+ ```
77
+ Line 4 — Controls integration: $______
78
+
79
+ No comparable in your history, nothing in the rate card. Everything else is
80
+ priced. Give me a number and it's ready.
81
+ ```
82
+
83
+ A blank is honest and takes the owner five seconds. A fabricated number takes ten minutes to notice and might not get noticed.
84
+
85
+ ---
86
+
87
+ ## Gotcha: redesigning their template
88
+
89
+ **Why it matters:** A proposal that doesn't look like their other proposals gets rebuilt by hand, which is the exact work this skill exists to remove. Familiar beats better.
90
+
91
+ ### Bad
92
+
93
+ Produce a cleaner, more modern layout than the owner's own.
94
+
95
+ ### Good
96
+
97
+ Match their template exactly, including the parts that could be improved. Offer improvements separately, after the proposal is out the door.
98
+
99
+ ---
100
+
101
+ ## Gotcha: writing an RFP response the owner is disqualified from
102
+
103
+ **Why it matters:** A full RFP response is an evening of work. If a mandatory qualification can't be met, that evening is gone for nothing, and this segment has no spare evenings.
104
+
105
+ ### Bad
106
+
107
+ Write the whole response, then mention the insurance requirement at the end.
108
+
109
+ ### Good
110
+
111
+ Go/no-go first, before drafting anything:
112
+
113
+ ```
114
+ Go/no-go: requires a USD 2M umbrella, you carry USD 1M. Disqualifying unless you
115
+ can bind more before the 8th. Worth checking before I write the rest?
116
+ ```
117
+
118
+ ---
119
+
120
+ ## Gotcha: burying the risk in the customer document
121
+
122
+ **Why it matters:** The owner needs the honest read; the customer needs the proposal. Mixing them either alarms the customer or hides the risk from the owner.
123
+
124
+ ### Bad
125
+
126
+ Soften the risk into the proposal's assumptions section and say nothing directly.
127
+
128
+ ### Good
129
+
130
+ Two separate things. The proposal contains assumptions in neutral, customer-appropriate language. The chat message to the owner says what actually worries you, bluntly.
131
+
132
+ ---
133
+
134
+ ## Gotcha: sending without explicit approval
135
+
136
+ **Why it matters:** A priced proposal commits money, calendar, and reputation, and it cannot be recalled once the customer has read it.
137
+
138
+ ### Bad
139
+
140
+ Route to DocuSign because the owner said the proposal looked good.
141
+
142
+ ### Good
143
+
144
+ State what will happen — recipient, total, routing, what fires on acceptance — and wait for a yes on that specific action.
145
+
146
+ ---
147
+
148
+ ## Gotcha: not recording the outcome
149
+
150
+ **Why it matters:** Won proposals are tomorrow's comparables. Lost ones are more valuable still, and nothing else in the plugin captures them.
151
+
152
+ ### Bad
153
+
154
+ Send it and move on.
155
+
156
+ ### Good
157
+
158
+ Record won, lost, or no response, with the final price and the reason when it's known:
159
+
160
+ ```
161
+ Ridgeline — lost. USD 18,650. Dana said a competitor came in at USD 16,000.
162
+ Our per-unit was USD 3,550; theirs implies about USD 3,050.
163
+ ```
164
+
165
+ That single line makes every future quote in this category sharper, and the owner would never have written it down themselves.
166
+
167
+ ---
168
+
169
+ ## Gotcha: a deposit weaker than their standard
170
+
171
+ **Why it matters:** Deposit terms are cash flow. A quiet drop from 50% to 25% on a material-heavy job can leave the owner financing the customer's equipment.
172
+
173
+ ### Bad
174
+
175
+ Use a reasonable-sounding deposit without checking what they normally do.
176
+
177
+ ### Good
178
+
179
+ Pull terms from past proposals, and flag any softening:
180
+
181
+ ```
182
+ Your usual deposit is 50%. I put 40% here since it's a repeat-adjacent
183
+ customer. Change it if you'd rather not.
184
+ ```
@@ -0,0 +1,128 @@
1
+ # Output Template
2
+
3
+ The owner checks two things before sending: the price and the scope. Structure the review around that, then get out of the way.
4
+
5
+ ---
6
+
7
+ ## Structure
8
+
9
+ ```
10
+ ## Proposal — <customer>, <job in four words>
11
+
12
+ **<total>** · <one line on how it was priced>
13
+
14
+ Based on: <the comparables used, with dates and amounts>
15
+
16
+ ### Open assumptions
17
+
18
+ - <assumption> — <what happens if it's wrong, in dollars>
19
+
20
+ ### Worth knowing before you send
21
+
22
+ - <risk, in plain terms>
23
+
24
+ <DOCX and PDF attached.>
25
+
26
+ <Send question.>
27
+ ```
28
+
29
+ Everything above the attachment is for the owner alone. The customer never sees the risk section.
30
+
31
+ ---
32
+
33
+ ## Worked example
34
+
35
+ ```
36
+ ## Proposal — Ridgeline Property Group, 5 rooftop units
37
+
38
+ **USD 18,650** · Priced from your Fairmount job, adjusted for the extra unit
39
+ and the lower-roof access.
40
+
41
+ Based on: Fairmount Commercial, Mar 2026 — 4 units, same scope, USD 14,200
42
+ (USD 3,550/unit). Corwin & Bay, Nov 2025 — 6 units, USD 21,300
43
+ (USD 3,550/unit). Your per-unit number has been steady.
44
+
45
+ ### Open assumptions
46
+
47
+ - Roof access by existing ladder. If a crane is needed, add USD 1,800.
48
+ This one is stated in the proposal, so it's a change order rather than
49
+ an argument.
50
+ - Existing electrical is adequate. Quoted separately if inspection says no.
51
+
52
+ ### Worth knowing before you send
53
+
54
+ - The lower-roof unit is the risk on this job. Photo 3 shows ladder access
55
+ only and I couldn't see the parapet height. If it needs a lift, the USD 900
56
+ allowance won't cover it.
57
+ - Dana mentioned "we paid around 8 last time" on the call. That was for two
58
+ units, so USD 18,650 for five is consistent — but it's worth saying that out
59
+ loud in your cover note, because the headline number is more than double
60
+ what she remembers.
61
+ - Your usual deposit is 50%. I put 40% here because it's a repeat-adjacent
62
+ customer. Change it if you'd rather not.
63
+
64
+ Proposal-Ridgeline-2026-07-27.docx and .pdf attached.
65
+
66
+ Send to Dana for signature via DocuSign, or do you want to change anything first?
67
+ ```
68
+
69
+ The second risk bullet is the kind of thing that wins jobs. It came from the transcript, not from the pricing, and no template would have surfaced it.
70
+
71
+ ---
72
+
73
+ ## When a price line is open
74
+
75
+ Show the proposal as complete except for the gap, and make the ask trivial:
76
+
77
+ ```
78
+ ## Proposal — Corwin & Bay, controls upgrade
79
+
80
+ **USD 12,400 + controls integration** · Everything priced except one line.
81
+
82
+ Line 4 — Controls integration: $______
83
+
84
+ No comparable in your history and nothing in the rate card. Give me a number
85
+ and this is ready to go. Everything else is built.
86
+ ```
87
+
88
+ ---
89
+
90
+ ## For an RFP response
91
+
92
+ Compliance leads, because a perfect price on a non-compliant submission loses:
93
+
94
+ ```
95
+ ## RFP response — Marion County, HVAC maintenance, RFP 26-114
96
+
97
+ **USD 84,000/yr** · 3-year term, priced from your commercial service contracts.
98
+
99
+ ### Compliance check
100
+
101
+ ✓ USD 2M umbrella — bound Jul 12
102
+ ✓ CCB license current
103
+ ✓ 3 references, all commercial, all over 2 years
104
+ ⚠ Prevailing wage applies. I priced at the current rate sheet, which is
105
+ about 22% over your standard labor. Confirm that's right.
106
+
107
+ Due Aug 8, 2 pm, submitted via county portal. Page limit 15; we're at 12.
108
+
109
+ ### Worth knowing before you send
110
+
111
+ - Liquidated damages are USD 500/day past the response window on emergency
112
+ calls. That's aggressive for a maintenance contract and it's the main
113
+ reason to walk if you're not confident on staffing.
114
+ ```
115
+
116
+ ---
117
+
118
+ ## Rules
119
+
120
+ **Lead with the number.** It is what the owner opens the message to see.
121
+
122
+ **Always show the comparables.** It is the difference between a price the owner can approve in ten seconds and one they rebuild from scratch.
123
+
124
+ **Keep the risk section honest and separate.** It never appears in the customer document. Softening it to be encouraging removes the only reason it exists.
125
+
126
+ **One send question at the end.** Not a checklist of options — a single yes-or-change.
127
+
128
+ **Never send without an explicit yes.** A priced document commits the owner's money, their calendar, and their reputation.
@@ -0,0 +1,125 @@
1
+ # Pricing Method
2
+
3
+ Price from what this owner has actually charged. Not from a general estimate, not from an industry average, and never from a plausible-sounding number.
4
+
5
+ The owner can sanity-check a price in ten seconds if they can see what it was based on. They cannot check a number that appeared from nowhere, so they rebuild the whole thing by hand — which is the work this skill was supposed to remove.
6
+
7
+ ---
8
+
9
+ ## The method
10
+
11
+ **1. Find comparable jobs.**
12
+
13
+ Pull past invoices and proposals for similar work:
14
+
15
+ - The connected ledger's invoices with line detail (MYOB, NetSuite, QuickBooks, Xero, or Zoho Books) — what was actually billed, which is what makes them comparable
16
+ - A payments connector's charge history by customer (PayPal, Square, or Stripe) when no ledger is connected — totals only, so the line arithmetic has to come from the owner
17
+ - Past proposals in Drive or M365
18
+ - An uploaded price list or rate card
19
+ - Anything the owner pastes in
20
+
21
+ A good comparable matches on type of work, rough scale, and customer type. Two or three is plenty. One is thin but usable if it is close.
22
+
23
+ **2. Build from the comparable, adjust for difference.**
24
+
25
+ State the arithmetic:
26
+
27
+ ```
28
+ Comparable: Fairmount Commercial, Mar 2026 — 4 rooftop units, same scope.
29
+ USD 14,200 total, USD 3,550 per unit.
30
+
31
+ This job: 5 units, one on a lower roof with harder access.
32
+ 5 x USD 3,550 = USD 17,750
33
+ + USD 900 access allowance for the lower roof unit
34
+ = USD 18,650
35
+ ```
36
+
37
+ The owner reads that and either agrees or adjusts one number. That is the whole point.
38
+
39
+ **3. Check it against the rate card, if one exists.**
40
+
41
+ If the derived price is more than about 15% away from the rate card, say so and explain which you used and why. A silent discrepancy is how a shop ends up with two different prices in the market.
42
+
43
+ ---
44
+
45
+ ## When there is no comparable
46
+
47
+ Do not invent one. Leave a placeholder, be specific about what is needed, and build the rest of the proposal around it:
48
+
49
+ ```
50
+ Line 3 — Controls integration: $______
51
+
52
+ I have no comparable for controls work in your history and no rate card entry.
53
+ Everything else is priced and ready. Give me a number for this line and the
54
+ proposal is done.
55
+ ```
56
+
57
+ That is a five-second ask. A fabricated USD 4,200 is a number the owner has to notice, distrust, and replace — and might not catch.
58
+
59
+ ---
60
+
61
+ ## What must never be invented
62
+
63
+ | Never invent | Why |
64
+ |---|---|
65
+ | A labor rate | It is the owner's core economics |
66
+ | A material cost | It moves constantly and varies by supplier |
67
+ | A lead time | It is a promise to the customer |
68
+ | A quantity from a photo | Estimated square footage is the classic way a job goes underwater |
69
+ | A subcontractor's price | Not the owner's number to give |
70
+ | A discount | Discounting is always the owner's call |
71
+
72
+ ---
73
+
74
+ ## Structuring the price
75
+
76
+ **Break it into lines the customer understands.** A single number invites a single objection. Four lines invite a conversation about scope, which is a better conversation.
77
+
78
+ But do not itemize down to fasteners. Lines should map to things the customer recognizes as decisions:
79
+
80
+ ```
81
+ Good:
82
+ Equipment — 5 rooftop units, installed USD 14,800
83
+ Electrical and controls USD 2,100
84
+ Roof access allowance, lower unit USD 900
85
+ Permit and inspection USD 850
86
+ --------
87
+ Total USD 18,650
88
+
89
+ Bad:
90
+ Materials USD 11,240
91
+ Labor USD 7,410
92
+ ```
93
+
94
+ The good version lets a customer cut the access allowance or supply their own permit. The bad version lets them only say "too expensive."
95
+
96
+ ---
97
+
98
+ ## Options, when they help
99
+
100
+ Two or three tiers work well when the customer's budget is unclear. More than three is paralysis.
101
+
102
+ Anchor with the recommended option, and say which it is and why in one line. An unlabeled menu makes the customer do the owner's job.
103
+
104
+ Never present an option the owner would not actually want to do. A cheap tier that produces a bad outcome damages them when the customer picks it.
105
+
106
+ ---
107
+
108
+ ## Terms
109
+
110
+ Pull the owner's standard terms from past proposals rather than inventing them. If none exist, use conservative defaults and flag them for confirmation:
111
+
112
+ - Deposit: 30% to 50% for material-heavy work, less for pure labor
113
+ - Payment: net 15 or net 30, matched to what their invoices already say
114
+ - Validity: 30 days, or shorter when material prices are moving
115
+ - Change orders: written approval before work proceeds
116
+
117
+ **Flag terms weaker than their usual.** If their standard is 50% deposit and this proposal says 25%, that is worth saying out loud before it goes to the customer.
118
+
119
+ ---
120
+
121
+ ## Recording the outcome
122
+
123
+ After a proposal is sent, record what happened — won, lost, or no response — with the final price and the reason if known.
124
+
125
+ Won proposals become tomorrow's comparables. Lost ones are just as valuable: knowing that USD 18,650 lost the Ridgeline job to a competitor at USD 16,000 is the only way the next quote gets sharper. Nothing else in the plugin captures that, and owners almost never track it themselves.
@@ -0,0 +1,120 @@
1
+ # Proposal Structure
2
+
3
+ Use the owner's own template when one exists. This structure is the fallback, and it is also what to offer to save as their template if they have never had one.
4
+
5
+ ---
6
+
7
+ ## Sections, in order
8
+
9
+ **1. Header**
10
+
11
+ Owner's business name and contact, customer name and contact, date, proposal number, and a validity date. The validity date protects the owner when material prices move.
12
+
13
+ **2. What you asked for**
14
+
15
+ Two or three sentences restating the customer's need in their own words, pulled from the discovery. This is not filler — customers scan for whether the vendor actually understood the job, and most proposals fail that test in the first paragraph.
16
+
17
+ **3. What we'll do**
18
+
19
+ The scope, in specifics. Quantities, equipment, locations, and sequence where it matters.
20
+
21
+ Write it so a stranger could tell whether the work was completed. "Upgrade the HVAC system" is not scope. "Replace five rooftop units with Carrier 48TC, reconnect existing ductwork and electrical, haul away old units" is.
22
+
23
+ **4. What's not included**
24
+
25
+ The most valuable section in the document. Scope disputes are where service businesses lose money, and they begin with what nobody wrote down.
26
+
27
+ Include anything a reasonable customer might assume is covered:
28
+
29
+ ```
30
+ Not included:
31
+ - Ductwork replacement or modification beyond reconnection
32
+ - Electrical service upgrades, if required by inspection
33
+ - Roof repair or patching beyond the curb penetrations
34
+ - Crane or lift, if roof access proves inadequate (see assumptions)
35
+ - After-hours or weekend labor
36
+ ```
37
+
38
+ Every line is a conversation that happens now instead of an argument later.
39
+
40
+ **5. Assumptions**
41
+
42
+ The conditions the price depends on, in customer-visible language, each with what happens if it turns out otherwise:
43
+
44
+ ```
45
+ This price assumes:
46
+ - Roof access by the existing ladder. If a crane or lift is required, add USD 1,800.
47
+ - Existing electrical service is adequate. If an upgrade is needed, quoted separately.
48
+ - Work performed during normal business hours.
49
+ ```
50
+
51
+ Naming the consequence converts a dispute into a pre-agreed change order.
52
+
53
+ **6. Investment**
54
+
55
+ The price, broken into lines the customer recognizes as decisions. Options presented as clearly labeled tiers if used, with the recommended one named.
56
+
57
+ **7. Timeline**
58
+
59
+ Start window, duration, and what it depends on. Say what would move it — permit approval, equipment lead time, customer access. A timeline with no dependencies listed is a promise the owner cannot keep.
60
+
61
+ **8. Terms**
62
+
63
+ Deposit, payment schedule, change-order process, warranty, validity window.
64
+
65
+ **9. Next step**
66
+
67
+ One sentence. Not "we look forward to hearing from you" — an actual instruction:
68
+
69
+ ```
70
+ Sign below and I'll order the units. Lead time is 3 weeks from deposit.
71
+ ```
72
+
73
+ **10. Signature block**
74
+
75
+ Both parties, with dates. When DocuSign routes it, the fields go here.
76
+
77
+ ---
78
+
79
+ ## Length
80
+
81
+ Most SMB proposals should run two to four pages.
82
+
83
+ An RFP response goes as long as the RFP requires — compliance beats brevity there, and page limits are usually mandated anyway.
84
+
85
+ A repeat customer for routine work can take one page. Do not make a customer who has bought this six times read a full proposal.
86
+
87
+ ---
88
+
89
+ ## Tone
90
+
91
+ Match [the shared voice profile](../../../shared/voice-profile.md). A proposal that reads nothing like the owner's emails is jarring, and the customer has usually already exchanged mail with them.
92
+
93
+ **If that file has no profile yet**, follow its "When there is no sample" instruction — ask for three emails the owner was happy with. If they decline, write plain and neutral and say the proposal is un-voiced. Never invent a personality.
94
+
95
+ Plain language throughout. This audience sells to people reading on a phone between jobs.
96
+
97
+ Avoid the standard proposal padding: no mission statement, no "why choose us" section, no stock photos of handshakes. Owners in this segment win on being clear and being responsive, and a padded document undercuts both.
98
+
99
+ ---
100
+
101
+ ## Formatting
102
+
103
+ - DOCX and PDF, both, every time. The customer wants the PDF; the owner sometimes needs to edit.
104
+ - Owner's logo and colors when available from the template or brand assets
105
+ - Price table right-aligned on numbers, currency formatted as currency
106
+ - Page numbers and the proposal number in the footer, so pages don't get separated
107
+ - Signature block on its own page if the document runs past two pages
108
+
109
+ ---
110
+
111
+ ## Offering to save it as a template
112
+
113
+ If the owner had no template and the proposal comes out well, offer once:
114
+
115
+ ```
116
+ Want me to save this layout as your standard proposal template? Next one would
117
+ start from it instead of from scratch.
118
+ ```
119
+
120
+ If yes, store it so later runs match. That is the difference between a skill that saves an evening once and one that saves an evening every week.