opencode-knowledge-work 0.0.0-stage → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +212 -0
- package/README.md +124 -2
- package/content/bio-research/.mcp.json +48 -0
- package/content/bio-research/CONNECTORS.md +23 -0
- package/content/bio-research/LICENSE +202 -0
- package/content/bio-research/README.md +83 -0
- package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/LICENSE.txt +201 -0
- package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/SKILL.md +280 -0
- package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/references/asm_schema_overview.md +226 -0
- package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/references/field_classification_guide.md +503 -0
- package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/references/flattening_guide.md +254 -0
- package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/references/supported_instruments.md +151 -0
- package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/requirements.txt +26 -0
- package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/scripts/convert_to_asm.py +543 -0
- package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/scripts/export_parser.py +481 -0
- package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/scripts/flatten_asm.py +254 -0
- package/content/bio-research/skills/bio-research-instrument-data-to-allotrope/scripts/validate_asm.py +1102 -0
- package/content/bio-research/skills/bio-research-nextflow-development/LICENSE.txt +201 -0
- package/content/bio-research/skills/bio-research-nextflow-development/SKILL.md +290 -0
- package/content/bio-research/skills/bio-research-nextflow-development/references/geo-sra-acquisition.md +416 -0
- package/content/bio-research/skills/bio-research-nextflow-development/references/installation.md +96 -0
- package/content/bio-research/skills/bio-research-nextflow-development/references/pipelines/atacseq.md +138 -0
- package/content/bio-research/skills/bio-research-nextflow-development/references/pipelines/rnaseq.md +118 -0
- package/content/bio-research/skills/bio-research-nextflow-development/references/pipelines/sarek.md +145 -0
- package/content/bio-research/skills/bio-research-nextflow-development/references/troubleshooting.md +137 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/check_environment.py +452 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/config/genomes.yaml +148 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/config/pipelines/atacseq.yaml +187 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/config/pipelines/rnaseq.yaml +147 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/config/pipelines/sarek.yaml +233 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/detect_data_type.py +300 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/generate_samplesheet.py +455 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/manage_genomes.py +521 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/sra_geo_fetch.py +732 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/__init__.py +69 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/file_discovery.py +189 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/ncbi_utils.py +808 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/sample_inference.py +290 -0
- package/content/bio-research/skills/bio-research-nextflow-development/scripts/utils/validators.py +256 -0
- package/content/bio-research/skills/bio-research-scientific-problem-selection/LICENSE.txt +201 -0
- package/content/bio-research/skills/bio-research-scientific-problem-selection/SKILL.md +269 -0
- package/content/bio-research/skills/bio-research-scientific-problem-selection/references/01-intuition-pumps.md +264 -0
- package/content/bio-research/skills/bio-research-scientific-problem-selection/references/02-risk-assessment.md +323 -0
- package/content/bio-research/skills/bio-research-scientific-problem-selection/references/03-optimization-function.md +481 -0
- package/content/bio-research/skills/bio-research-scientific-problem-selection/references/04-parameter-strategy.md +396 -0
- package/content/bio-research/skills/bio-research-scientific-problem-selection/references/05-decision-tree.md +85 -0
- package/content/bio-research/skills/bio-research-scientific-problem-selection/references/06-adversity-planning.md +123 -0
- package/content/bio-research/skills/bio-research-scientific-problem-selection/references/07-problem-inversion.md +152 -0
- package/content/bio-research/skills/bio-research-scientific-problem-selection/references/08-integration-synthesis.md +173 -0
- package/content/bio-research/skills/bio-research-scientific-problem-selection/references/09-meta-framework.md +504 -0
- package/content/bio-research/skills/bio-research-scvi-tools/LICENSE.txt +201 -0
- package/content/bio-research/skills/bio-research-scvi-tools/SKILL.md +155 -0
- package/content/bio-research/skills/bio-research-scvi-tools/references/atac_peakvi.md +398 -0
- package/content/bio-research/skills/bio-research-scvi-tools/references/batch_correction_sysvi.md +417 -0
- package/content/bio-research/skills/bio-research-scvi-tools/references/citeseq_totalvi.md +420 -0
- package/content/bio-research/skills/bio-research-scvi-tools/references/data_preparation.md +286 -0
- package/content/bio-research/skills/bio-research-scvi-tools/references/environment_setup.md +254 -0
- package/content/bio-research/skills/bio-research-scvi-tools/references/label_transfer.md +373 -0
- package/content/bio-research/skills/bio-research-scvi-tools/references/multiome_multivi.md +384 -0
- package/content/bio-research/skills/bio-research-scvi-tools/references/rna_velocity_velovi.md +410 -0
- package/content/bio-research/skills/bio-research-scvi-tools/references/scarches_mapping.md +401 -0
- package/content/bio-research/skills/bio-research-scvi-tools/references/scrna_integration.md +429 -0
- package/content/bio-research/skills/bio-research-scvi-tools/references/spatial_deconvolution.md +438 -0
- package/content/bio-research/skills/bio-research-scvi-tools/references/troubleshooting.md +420 -0
- package/content/bio-research/skills/bio-research-scvi-tools/scripts/cluster_embed.py +212 -0
- package/content/bio-research/skills/bio-research-scvi-tools/scripts/differential_expression.py +220 -0
- package/content/bio-research/skills/bio-research-scvi-tools/scripts/integrate_datasets.py +237 -0
- package/content/bio-research/skills/bio-research-scvi-tools/scripts/model_utils.py +634 -0
- package/content/bio-research/skills/bio-research-scvi-tools/scripts/prepare_data.py +169 -0
- package/content/bio-research/skills/bio-research-scvi-tools/scripts/train_model.py +370 -0
- package/content/bio-research/skills/bio-research-scvi-tools/scripts/transfer_labels.py +224 -0
- package/content/bio-research/skills/bio-research-scvi-tools/scripts/validate_adata.py +397 -0
- package/content/bio-research/skills/bio-research-single-cell-rna-qc/LICENSE.txt +201 -0
- package/content/bio-research/skills/bio-research-single-cell-rna-qc/SKILL.md +175 -0
- package/content/bio-research/skills/bio-research-single-cell-rna-qc/references/scverse_qc_guidelines.md +186 -0
- package/content/bio-research/skills/bio-research-single-cell-rna-qc/scripts/qc_analysis.py +232 -0
- package/content/bio-research/skills/bio-research-single-cell-rna-qc/scripts/qc_core.py +233 -0
- package/content/bio-research/skills/bio-research-single-cell-rna-qc/scripts/qc_plotting.py +235 -0
- package/content/bio-research/skills/bio-research-start/SKILL.md +79 -0
- package/content/customer-support/.mcp.json +40 -0
- package/content/customer-support/CONNECTORS.md +19 -0
- package/content/customer-support/LICENSE +202 -0
- package/content/customer-support/README.md +140 -0
- package/content/customer-support/skills/customer-support-customer-escalation/SKILL.md +248 -0
- package/content/customer-support/skills/customer-support-customer-research/SKILL.md +252 -0
- package/content/customer-support/skills/customer-support-draft-response/SKILL.md +418 -0
- package/content/customer-support/skills/customer-support-kb-article/SKILL.md +351 -0
- package/content/customer-support/skills/customer-support-ticket-triage/SKILL.md +275 -0
- package/content/data/.mcp.json +36 -0
- package/content/data/CONNECTORS.md +18 -0
- package/content/data/LICENSE +202 -0
- package/content/data/README.md +121 -0
- package/content/data/skills/data-analyze/SKILL.md +119 -0
- package/content/data/skills/data-build-dashboard/SKILL.md +924 -0
- package/content/data/skills/data-create-viz/SKILL.md +154 -0
- package/content/data/skills/data-data-context-extractor/SKILL.md +227 -0
- package/content/data/skills/data-data-context-extractor/references/domain-template.md +147 -0
- package/content/data/skills/data-data-context-extractor/references/example-output.md +198 -0
- package/content/data/skills/data-data-context-extractor/references/skill-template.md +148 -0
- package/content/data/skills/data-data-context-extractor/references/sql-dialects.md +121 -0
- package/content/data/skills/data-data-context-extractor/scripts/package_data_skill.py +126 -0
- package/content/data/skills/data-data-visualization/SKILL.md +305 -0
- package/content/data/skills/data-explore-data/SKILL.md +325 -0
- package/content/data/skills/data-sql-queries/SKILL.md +428 -0
- package/content/data/skills/data-statistical-analysis/SKILL.md +245 -0
- package/content/data/skills/data-validate-data/SKILL.md +383 -0
- package/content/data/skills/data-write-query/SKILL.md +122 -0
- package/content/design/.mcp.json +44 -0
- package/content/design/CONNECTORS.md +18 -0
- package/content/design/README.md +117 -0
- package/content/design/skills/design-accessibility-review/SKILL.md +128 -0
- package/content/design/skills/design-design-critique/SKILL.md +118 -0
- package/content/design/skills/design-design-handoff/SKILL.md +131 -0
- package/content/design/skills/design-design-system/SKILL.md +190 -0
- package/content/design/skills/design-research-synthesis/SKILL.md +92 -0
- package/content/design/skills/design-user-research/SKILL.md +41 -0
- package/content/design/skills/design-ux-copy/SKILL.md +107 -0
- package/content/engineering/.mcp.json +48 -0
- package/content/engineering/CONNECTORS.md +19 -0
- package/content/engineering/README.md +136 -0
- package/content/engineering/skills/engineering-architecture/SKILL.md +85 -0
- package/content/engineering/skills/engineering-code-review/SKILL.md +118 -0
- package/content/engineering/skills/engineering-debug/SKILL.md +95 -0
- package/content/engineering/skills/engineering-deploy-checklist/SKILL.md +78 -0
- package/content/engineering/skills/engineering-documentation/SKILL.md +49 -0
- package/content/engineering/skills/engineering-incident-response/SKILL.md +158 -0
- package/content/engineering/skills/engineering-standup/SKILL.md +75 -0
- package/content/engineering/skills/engineering-system-design/SKILL.md +42 -0
- package/content/engineering/skills/engineering-tech-debt/SKILL.md +32 -0
- package/content/engineering/skills/engineering-testing-strategy/SKILL.md +33 -0
- package/content/enterprise-search/.mcp.json +36 -0
- package/content/enterprise-search/CONNECTORS.md +21 -0
- package/content/enterprise-search/LICENSE +202 -0
- package/content/enterprise-search/README.md +157 -0
- package/content/enterprise-search/skills/enterprise-search-digest/SKILL.md +173 -0
- package/content/enterprise-search/skills/enterprise-search-knowledge-synthesis/SKILL.md +258 -0
- package/content/enterprise-search/skills/enterprise-search-search/SKILL.md +178 -0
- package/content/enterprise-search/skills/enterprise-search-search-strategy/SKILL.md +222 -0
- package/content/enterprise-search/skills/enterprise-search-source-management/SKILL.md +173 -0
- package/content/finance/.mcp.json +32 -0
- package/content/finance/CONNECTORS.md +20 -0
- package/content/finance/LICENSE +202 -0
- package/content/finance/README.md +92 -0
- package/content/finance/skills/finance-audit-support/SKILL.md +374 -0
- package/content/finance/skills/finance-close-management/SKILL.md +221 -0
- package/content/finance/skills/finance-financial-statements/SKILL.md +335 -0
- package/content/finance/skills/finance-journal-entry/SKILL.md +131 -0
- package/content/finance/skills/finance-journal-entry-prep/SKILL.md +186 -0
- package/content/finance/skills/finance-reconciliation/SKILL.md +175 -0
- package/content/finance/skills/finance-sox-testing/SKILL.md +218 -0
- package/content/finance/skills/finance-variance-analysis/SKILL.md +266 -0
- package/content/human-resources/.mcp.json +28 -0
- package/content/human-resources/CONNECTORS.md +19 -0
- package/content/human-resources/README.md +138 -0
- package/content/human-resources/skills/human-resources-comp-analysis/SKILL.md +92 -0
- package/content/human-resources/skills/human-resources-draft-offer/SKILL.md +82 -0
- package/content/human-resources/skills/human-resources-interview-prep/SKILL.md +37 -0
- package/content/human-resources/skills/human-resources-onboarding/SKILL.md +104 -0
- package/content/human-resources/skills/human-resources-org-planning/SKILL.md +28 -0
- package/content/human-resources/skills/human-resources-people-report/SKILL.md +99 -0
- package/content/human-resources/skills/human-resources-performance-review/SKILL.md +149 -0
- package/content/human-resources/skills/human-resources-policy-lookup/SKILL.md +94 -0
- package/content/human-resources/skills/human-resources-recruiting-pipeline/SKILL.md +31 -0
- package/content/legal/.mcp.json +36 -0
- package/content/legal/CONNECTORS.md +21 -0
- package/content/legal/LICENSE +202 -0
- package/content/legal/README.md +234 -0
- package/content/legal/skills/legal-brief/SKILL.md +208 -0
- package/content/legal/skills/legal-compliance-check/SKILL.md +274 -0
- package/content/legal/skills/legal-legal-response/SKILL.md +457 -0
- package/content/legal/skills/legal-legal-risk-assessment/SKILL.md +265 -0
- package/content/legal/skills/legal-meeting-briefing/SKILL.md +220 -0
- package/content/legal/skills/legal-review-contract/SKILL.md +358 -0
- package/content/legal/skills/legal-signature-request/SKILL.md +104 -0
- package/content/legal/skills/legal-triage-nda/SKILL.md +262 -0
- package/content/legal/skills/legal-vendor-check/SKILL.md +159 -0
- package/content/manifest.json +86 -0
- package/content/marketing/.mcp.json +60 -0
- package/content/marketing/CONNECTORS.md +20 -0
- package/content/marketing/LICENSE +202 -0
- package/content/marketing/README.md +90 -0
- package/content/marketing/skills/marketing-brand-review/SKILL.md +276 -0
- package/content/marketing/skills/marketing-campaign-plan/SKILL.md +308 -0
- package/content/marketing/skills/marketing-competitive-brief/SKILL.md +331 -0
- package/content/marketing/skills/marketing-content-creation/SKILL.md +157 -0
- package/content/marketing/skills/marketing-draft-content/SKILL.md +117 -0
- package/content/marketing/skills/marketing-email-sequence/SKILL.md +220 -0
- package/content/marketing/skills/marketing-performance-report/SKILL.md +392 -0
- package/content/marketing/skills/marketing-seo-audit/SKILL.md +190 -0
- package/content/operations/.mcp.json +32 -0
- package/content/operations/CONNECTORS.md +20 -0
- package/content/operations/README.md +135 -0
- package/content/operations/skills/operations-capacity-plan/SKILL.md +113 -0
- package/content/operations/skills/operations-change-request/SKILL.md +121 -0
- package/content/operations/skills/operations-compliance-tracking/SKILL.md +44 -0
- package/content/operations/skills/operations-process-doc/SKILL.md +82 -0
- package/content/operations/skills/operations-process-optimization/SKILL.md +39 -0
- package/content/operations/skills/operations-risk-assessment/SKILL.md +40 -0
- package/content/operations/skills/operations-runbook/SKILL.md +87 -0
- package/content/operations/skills/operations-status-report/SKILL.md +77 -0
- package/content/operations/skills/operations-vendor-review/SKILL.md +104 -0
- package/content/pdf-viewer/.mcp.json +8 -0
- package/content/pdf-viewer/CONNECTORS.md +15 -0
- package/content/pdf-viewer/LICENSE +202 -0
- package/content/pdf-viewer/README.md +57 -0
- package/content/pdf-viewer/commands/annotate.md +51 -0
- package/content/pdf-viewer/commands/fill-form.md +73 -0
- package/content/pdf-viewer/commands/open.md +34 -0
- package/content/pdf-viewer/commands/sign.md +54 -0
- package/content/pdf-viewer/skills/pdf-viewer-view-pdf/SKILL.md +147 -0
- package/content/product-management/.mcp.json +72 -0
- package/content/product-management/CONNECTORS.md +22 -0
- package/content/product-management/LICENSE +202 -0
- package/content/product-management/README.md +118 -0
- package/content/product-management/commands/brainstorm.md +120 -0
- package/content/product-management/skills/product-management-competitive-brief/SKILL.md +302 -0
- package/content/product-management/skills/product-management-metrics-review/SKILL.md +388 -0
- package/content/product-management/skills/product-management-product-brainstorming/SKILL.md +273 -0
- package/content/product-management/skills/product-management-roadmap-update/SKILL.md +266 -0
- package/content/product-management/skills/product-management-sprint-planning/SKILL.md +94 -0
- package/content/product-management/skills/product-management-stakeholder-update/SKILL.md +352 -0
- package/content/product-management/skills/product-management-synthesize-research/SKILL.md +312 -0
- package/content/product-management/skills/product-management-write-spec/SKILL.md +250 -0
- package/content/productivity/.mcp.json +44 -0
- package/content/productivity/CONNECTORS.md +18 -0
- package/content/productivity/LICENSE +202 -0
- package/content/productivity/README.md +97 -0
- package/content/productivity/skills/dashboard.html +3111 -0
- package/content/productivity/skills/productivity-memory-management/SKILL.md +323 -0
- package/content/productivity/skills/productivity-start/SKILL.md +158 -0
- package/content/productivity/skills/productivity-task-management/SKILL.md +91 -0
- package/content/productivity/skills/productivity-update/SKILL.md +168 -0
- package/content/sales/.mcp.json +100 -0
- package/content/sales/CONNECTORS.md +36 -0
- package/content/sales/LICENSE +202 -0
- package/content/sales/README.md +148 -0
- package/content/sales/skills/sales-account-context/SKILL.md +94 -0
- package/content/sales/skills/sales-account-plan/SKILL.md +95 -0
- package/content/sales/skills/sales-account-research/SKILL.md +99 -0
- package/content/sales/skills/sales-account-tiering/SKILL.md +101 -0
- package/content/sales/skills/sales-call-prep/SKILL.md +111 -0
- package/content/sales/skills/sales-call-summary/SKILL.md +111 -0
- package/content/sales/skills/sales-close-plan/SKILL.md +106 -0
- package/content/sales/skills/sales-competitive-intelligence/SKILL.md +102 -0
- package/content/sales/skills/sales-create-an-asset/SKILL.md +105 -0
- package/content/sales/skills/sales-crm-hygiene-check/SKILL.md +103 -0
- package/content/sales/skills/sales-customer-health/SKILL.md +108 -0
- package/content/sales/skills/sales-customer-voice/SKILL.md +94 -0
- package/content/sales/skills/sales-daily-briefing/SKILL.md +61 -0
- package/content/sales/skills/sales-deal-advance-gap/SKILL.md +102 -0
- package/content/sales/skills/sales-deal-review/SKILL.md +105 -0
- package/content/sales/skills/sales-deal-signals/SKILL.md +96 -0
- package/content/sales/skills/sales-deal-slip-scenario/SKILL.md +101 -0
- package/content/sales/skills/sales-draft-outreach/SKILL.md +116 -0
- package/content/sales/skills/sales-end-of-day/SKILL.md +114 -0
- package/content/sales/skills/sales-expansion-whitespace/SKILL.md +97 -0
- package/content/sales/skills/sales-forecast/SKILL.md +100 -0
- package/content/sales/skills/sales-handle-objection/SKILL.md +93 -0
- package/content/sales/skills/sales-inbox-sweep/SKILL.md +114 -0
- package/content/sales/skills/sales-lead-triage/SKILL.md +105 -0
- package/content/sales/skills/sales-log-activity/SKILL.md +111 -0
- package/content/sales/skills/sales-pipeline-review/SKILL.md +97 -0
- package/content/sales/skills/sales-renewal-radar/SKILL.md +95 -0
- package/content/sales/skills/sales-rep-context/SKILL.md +90 -0
- package/content/sales/skills/sales-route-lead/SKILL.md +111 -0
- package/content/sales/skills/sales-schedule-meeting/SKILL.md +99 -0
- package/content/sales/skills/sales-setup/SKILL.md +195 -0
- package/content/sales/skills/sales-stakeholder-map/SKILL.md +107 -0
- package/content/sales/skills/sales-team-pipeline/SKILL.md +105 -0
- package/content/sales/skills/sales-update-opportunity/SKILL.md +111 -0
- package/content/sales/skills/sales-weekly-wrap/SKILL.md +90 -0
- package/content/sales/skills/sales-win-loss-review/SKILL.md +88 -0
- package/content/small-business/.mcp.json +148 -0
- package/content/small-business/README.md +117 -0
- package/content/small-business/skills/small-business-ad-manager/SKILL.md +128 -0
- package/content/small-business/skills/small-business-ad-manager/reference/ad_copy.md +112 -0
- package/content/small-business/skills/small-business-ad-manager/reference/change_playbook.md +127 -0
- package/content/small-business/skills/small-business-ad-manager/reference/data_sources.md +100 -0
- package/content/small-business/skills/small-business-ad-manager/reference/diagnostics.md +89 -0
- package/content/small-business/skills/small-business-ad-manager/reference/gotchas.md +181 -0
- package/content/small-business/skills/small-business-ap-processor/SKILL.md +158 -0
- package/content/small-business/skills/small-business-ap-processor/reference/coding_rules.md +70 -0
- package/content/small-business/skills/small-business-ap-processor/reference/gotchas.md +131 -0
- package/content/small-business/skills/small-business-ap-processor/reference/intake_and_extraction.md +82 -0
- package/content/small-business/skills/small-business-ap-processor/reference/matching_and_exceptions.md +80 -0
- package/content/small-business/skills/small-business-ap-processor/reference/payment_run.md +77 -0
- package/content/small-business/skills/small-business-brand-style/SKILL.md +106 -0
- package/content/small-business/skills/small-business-build-agent/SKILL.md +105 -0
- package/content/small-business/skills/small-business-build-agent/reference/capture.md +133 -0
- package/content/small-business/skills/small-business-build-agent/reference/gotchas.md +204 -0
- package/content/small-business/skills/small-business-build-agent/reference/skill_authoring.md +165 -0
- package/content/small-business/skills/small-business-build-connector/SKILL.md +102 -0
- package/content/small-business/skills/small-business-build-connector/reference/discovery.md +120 -0
- package/content/small-business/skills/small-business-build-connector/reference/gotchas.md +237 -0
- package/content/small-business/skills/small-business-build-connector/reference/paths.md +106 -0
- package/content/small-business/skills/small-business-build-connector/reference/use-zapier.md +128 -0
- package/content/small-business/skills/small-business-business-pulse/SKILL.md +181 -0
- package/content/small-business/skills/small-business-business-pulse/reference/data_sources.md +173 -0
- package/content/small-business/skills/small-business-business-pulse/reference/gotchas.md +103 -0
- package/content/small-business/skills/small-business-business-pulse/reference/output_template.md +109 -0
- package/content/small-business/skills/small-business-business-pulse/reference/thresholds.md +71 -0
- package/content/small-business/skills/small-business-business-pulse/reference/v2_sources.md +63 -0
- package/content/small-business/skills/small-business-call-list/SKILL.md +82 -0
- package/content/small-business/skills/small-business-canva-creator/SKILL.md +448 -0
- package/content/small-business/skills/small-business-canva-creator/reference/canva-api.md +208 -0
- package/content/small-business/skills/small-business-canva-creator/reference/examples/boutique-brief-campaign.md +181 -0
- package/content/small-business/skills/small-business-canva-creator/reference/gotchas.md +380 -0
- package/content/small-business/skills/small-business-canva-creator/reference/hubspot-staging.md +137 -0
- package/content/small-business/skills/small-business-cash-flow-snapshot/SKILL.md +251 -0
- package/content/small-business/skills/small-business-cash-flow-snapshot/reference/examples/worked-example.md +92 -0
- package/content/small-business/skills/small-business-cash-flow-snapshot/reference/gotchas.md +62 -0
- package/content/small-business/skills/small-business-cash-flow-snapshot/reference/v2_sources.md +84 -0
- package/content/small-business/skills/small-business-close-month/SKILL.md +86 -0
- package/content/small-business/skills/small-business-content-strategy/SKILL.md +152 -0
- package/content/small-business/skills/small-business-content-strategy/reference/examples/retail-boutique-example.md +71 -0
- package/content/small-business/skills/small-business-content-strategy/reference/gotchas.md +104 -0
- package/content/small-business/skills/small-business-content-strategy/reference/v2_sources.md +40 -0
- package/content/small-business/skills/small-business-contract-review/SKILL.md +158 -0
- package/content/small-business/skills/small-business-contract-review/reference/docusign-fetch.md +32 -0
- package/content/small-business/skills/small-business-contract-review/reference/examples/flagged-summary-saas.md +97 -0
- package/content/small-business/skills/small-business-contract-review/reference/gmail-fetch.md +30 -0
- package/content/small-business/skills/small-business-contract-review/reference/gotchas.md +105 -0
- package/content/small-business/skills/small-business-contract-review/reference/m365-fetch.md +60 -0
- package/content/small-business/skills/small-business-crm-autopilot/SKILL.md +162 -0
- package/content/small-business/skills/small-business-crm-autopilot/reference/cleanup-checklist.md +82 -0
- package/content/small-business/skills/small-business-crm-autopilot/reference/examples/cleanup-deal.md +83 -0
- package/content/small-business/skills/small-business-crm-autopilot/reference/examples/log-call-happy-path.md +68 -0
- package/content/small-business/skills/small-business-crm-autopilot/reference/examples/log-email-happy-path.md +50 -0
- package/content/small-business/skills/small-business-crm-autopilot/reference/gotchas.md +110 -0
- package/content/small-business/skills/small-business-crm-autopilot/reference/hubspot-fields.md +62 -0
- package/content/small-business/skills/small-business-crm-autopilot/reference/lightweight_crm.md +125 -0
- package/content/small-business/skills/small-business-crm-autopilot/reference/salesforce-fields.md +122 -0
- package/content/small-business/skills/small-business-crm-autopilot/reference/standing_mode.md +144 -0
- package/content/small-business/skills/small-business-grant-rfp-writer/SKILL.md +162 -0
- package/content/small-business/skills/small-business-grant-rfp-writer/reference/drafting.md +129 -0
- package/content/small-business/skills/small-business-grant-rfp-writer/reference/go_no_go.md +125 -0
- package/content/small-business/skills/small-business-grant-rfp-writer/reference/gotchas.md +180 -0
- package/content/small-business/skills/small-business-grant-rfp-writer/reference/opportunity_sources.md +90 -0
- package/content/small-business/skills/small-business-grant-rfp-writer/reference/org_profile.md +81 -0
- package/content/small-business/skills/small-business-grow-pipeline/SKILL.md +92 -0
- package/content/small-business/skills/small-business-growth-pulse/SKILL.md +143 -0
- package/content/small-business/skills/small-business-growth-pulse/reference/data_sources.md +113 -0
- package/content/small-business/skills/small-business-growth-pulse/reference/gotchas.md +175 -0
- package/content/small-business/skills/small-business-growth-pulse/reference/output_template.md +122 -0
- package/content/small-business/skills/small-business-growth-pulse/reference/thresholds.md +110 -0
- package/content/small-business/skills/small-business-hiring-screener/SKILL.md +137 -0
- package/content/small-business/skills/small-business-hiring-screener/reference/candidate_comms.md +132 -0
- package/content/small-business/skills/small-business-hiring-screener/reference/fair_screening.md +103 -0
- package/content/small-business/skills/small-business-hiring-screener/reference/gotchas.md +183 -0
- package/content/small-business/skills/small-business-hiring-screener/reference/onboarding.md +82 -0
- package/content/small-business/skills/small-business-hiring-screener/reference/rubric.md +122 -0
- package/content/small-business/skills/small-business-inbox-manager/SKILL.md +130 -0
- package/content/small-business/skills/small-business-inbox-manager/reference/digest_format.md +110 -0
- package/content/small-business/skills/small-business-inbox-manager/reference/gotchas.md +220 -0
- package/content/small-business/skills/small-business-inbox-manager/reference/handoffs.md +77 -0
- package/content/small-business/skills/small-business-inbox-manager/reference/reply_drafting.md +116 -0
- package/content/small-business/skills/small-business-inbox-manager/reference/triage_rules.md +72 -0
- package/content/small-business/skills/small-business-inventory-planner/SKILL.md +126 -0
- package/content/small-business/skills/small-business-inventory-planner/reference/data_sources.md +94 -0
- package/content/small-business/skills/small-business-inventory-planner/reference/gotchas.md +153 -0
- package/content/small-business/skills/small-business-inventory-planner/reference/po_drafting.md +92 -0
- package/content/small-business/skills/small-business-inventory-planner/reference/seasonality.md +112 -0
- package/content/small-business/skills/small-business-inventory-planner/reference/velocity_and_reorder.md +154 -0
- package/content/small-business/skills/small-business-invoice-chase/SKILL.md +131 -0
- package/content/small-business/skills/small-business-invoice-chase/reference/examples/firm-reminder.md +28 -0
- package/content/small-business/skills/small-business-invoice-chase/reference/examples/gentle-reminder.md +27 -0
- package/content/small-business/skills/small-business-invoice-chase/reference/gotchas.md +75 -0
- package/content/small-business/skills/small-business-invoice-chase/reference/tone-matching.md +44 -0
- package/content/small-business/skills/small-business-invoice-chase/reference/v2_sources.md +78 -0
- package/content/small-business/skills/small-business-job-post-builder/SKILL.md +204 -0
- package/content/small-business/skills/small-business-job-post-builder/reference/docusign-routing.md +63 -0
- package/content/small-business/skills/small-business-job-post-builder/reference/examples/worked-example.md +110 -0
- package/content/small-business/skills/small-business-job-post-builder/reference/existing-document-merge.md +58 -0
- package/content/small-business/skills/small-business-job-post-builder/reference/gotchas.md +68 -0
- package/content/small-business/skills/small-business-job-post-builder/reference/interview-guide-structure.md +93 -0
- package/content/small-business/skills/small-business-job-post-builder/reference/job-post-structure.md +62 -0
- package/content/small-business/skills/small-business-job-post-builder/reference/offer-letter-template.md +145 -0
- package/content/small-business/skills/small-business-job-post-builder/reference/role-intake.md +73 -0
- package/content/small-business/skills/small-business-lead-finder/SKILL.md +119 -0
- package/content/small-business/skills/small-business-lead-finder/reference/gotchas.md +152 -0
- package/content/small-business/skills/small-business-lead-finder/reference/icp_method.md +97 -0
- package/content/small-business/skills/small-business-lead-finder/reference/output_template.md +124 -0
- package/content/small-business/skills/small-business-lead-finder/reference/scoring.md +92 -0
- package/content/small-business/skills/small-business-lead-finder/reference/sourcing.md +78 -0
- package/content/small-business/skills/small-business-lead-triage/SKILL.md +81 -0
- package/content/small-business/skills/small-business-lead-triage/reference/examples/happy-path-triage.md +68 -0
- package/content/small-business/skills/small-business-lead-triage/reference/gotchas.md +76 -0
- package/content/small-business/skills/small-business-lead-triage/reference/hubspot-scoring.md +169 -0
- package/content/small-business/skills/small-business-marketing-monday/SKILL.md +108 -0
- package/content/small-business/skills/small-business-monday-brief/SKILL.md +97 -0
- package/content/small-business/skills/small-business-month-end-prep/SKILL.md +331 -0
- package/content/small-business/skills/small-business-month-end-prep/reference/close-packet-format.md +127 -0
- package/content/small-business/skills/small-business-month-end-prep/reference/examples/pl-narrative.md +52 -0
- package/content/small-business/skills/small-business-month-end-prep/reference/gotchas.md +113 -0
- package/content/small-business/skills/small-business-month-end-prep/reference/paypal-settlements.md +110 -0
- package/content/small-business/skills/small-business-month-end-prep/reference/quickbooks-reconcile.md +71 -0
- package/content/small-business/skills/small-business-month-end-prep/reference/v2_sources.md +125 -0
- package/content/small-business/skills/small-business-month-end-prep/reference/xero-reconcile.md +175 -0
- package/content/small-business/skills/small-business-month-end-prep/reference/zoho-books-reconcile.md +168 -0
- package/content/small-business/skills/small-business-outreach-composer/SKILL.md +144 -0
- package/content/small-business/skills/small-business-outreach-composer/reference/gotchas.md +213 -0
- package/content/small-business/skills/small-business-outreach-composer/reference/output_template.md +147 -0
- package/content/small-business/skills/small-business-outreach-composer/reference/sequence_patterns.md +99 -0
- package/content/small-business/skills/small-business-outreach-composer/reference/slop_test.md +164 -0
- package/content/small-business/skills/small-business-pay-the-bills/SKILL.md +101 -0
- package/content/small-business/skills/small-business-payroll-prep/SKILL.md +139 -0
- package/content/small-business/skills/small-business-payroll-prep/reference/anomaly_rules.md +99 -0
- package/content/small-business/skills/small-business-payroll-prep/reference/books_sync.md +72 -0
- package/content/small-business/skills/small-business-payroll-prep/reference/gotchas.md +153 -0
- package/content/small-business/skills/small-business-payroll-prep/reference/run_sheet_format.md +90 -0
- package/content/small-business/skills/small-business-payroll-prep/reference/timesheet_intake.md +118 -0
- package/content/small-business/skills/small-business-plan-payroll/SKILL.md +88 -0
- package/content/small-business/skills/small-business-proposal-builder/SKILL.md +168 -0
- package/content/small-business/skills/small-business-proposal-builder/reference/discovery_extraction.md +138 -0
- package/content/small-business/skills/small-business-proposal-builder/reference/gotchas.md +184 -0
- package/content/small-business/skills/small-business-proposal-builder/reference/output_template.md +128 -0
- package/content/small-business/skills/small-business-proposal-builder/reference/pricing_method.md +125 -0
- package/content/small-business/skills/small-business-proposal-builder/reference/proposal_structure.md +120 -0
- package/content/small-business/skills/small-business-reactivate/SKILL.md +109 -0
- package/content/small-business/skills/small-business-report-builder/SKILL.md +142 -0
- package/content/small-business/skills/small-business-report-builder/reference/data_sources.md +168 -0
- package/content/small-business/skills/small-business-report-builder/reference/gotchas.md +155 -0
- package/content/small-business/skills/small-business-report-builder/reference/output_template.md +109 -0
- package/content/small-business/skills/small-business-report-builder/reference/report_spec.md +109 -0
- package/content/small-business/skills/small-business-report-builder/reference/saved_reports.md +50 -0
- package/content/small-business/skills/small-business-report-pack/SKILL.md +83 -0
- package/content/small-business/skills/small-business-restock/SKILL.md +88 -0
- package/content/small-business/skills/small-business-review-reputation/SKILL.md +130 -0
- package/content/small-business/skills/small-business-review-reputation/reference/churn-signals.md +110 -0
- package/content/small-business/skills/small-business-review-reputation/reference/examples/example-report.md +150 -0
- package/content/small-business/skills/small-business-review-reputation/reference/gotchas.md +164 -0
- package/content/small-business/skills/small-business-review-reputation/reference/response-patterns.md +123 -0
- package/content/small-business/skills/small-business-review-reputation/reference/sources.md +116 -0
- package/content/small-business/skills/small-business-seo-ai-visibility/SKILL.md +143 -0
- package/content/small-business/skills/small-business-seo-ai-visibility/reference/ai_visibility.md +173 -0
- package/content/small-business/skills/small-business-seo-ai-visibility/reference/audit_checklist.md +134 -0
- package/content/small-business/skills/small-business-seo-ai-visibility/reference/catalog_refresh.md +126 -0
- package/content/small-business/skills/small-business-seo-ai-visibility/reference/content_rewrite.md +113 -0
- package/content/small-business/skills/small-business-seo-ai-visibility/reference/gotchas.md +211 -0
- package/content/small-business/skills/small-business-smb-onboard/SKILL.md +82 -0
- package/content/small-business/skills/small-business-smb-onboard/reference/examples/happy-path.md +190 -0
- package/content/small-business/skills/small-business-smb-onboard/reference/gotchas.md +111 -0
- package/content/small-business/skills/small-business-smb-onboard/reference/onboard-checklist.md +99 -0
- package/content/small-business/skills/small-business-smb-onboard/reference/website-research.md +82 -0
- package/content/small-business/skills/small-business-smb-router/SKILL.md +216 -0
- package/content/small-business/skills/small-business-smb-router/reference/connector-map.md +96 -0
- package/content/small-business/skills/small-business-social-content-engine/SKILL.md +162 -0
- package/content/small-business/skills/small-business-social-content-engine/reference/calendar.md +116 -0
- package/content/small-business/skills/small-business-social-content-engine/reference/canva-api.md +208 -0
- package/content/small-business/skills/small-business-social-content-engine/reference/examples/okonkwo-campaign.md +190 -0
- package/content/small-business/skills/small-business-social-content-engine/reference/gotchas.md +447 -0
- package/content/small-business/skills/small-business-social-content-engine/reference/publishing.md +166 -0
- package/content/small-business/skills/small-business-social-content-engine/reference/shopify-assets.md +77 -0
- package/content/small-business/skills/small-business-speed-to-lead/SKILL.md +172 -0
- package/content/small-business/skills/small-business-speed-to-lead/reference/approval.md +61 -0
- package/content/small-business/skills/small-business-speed-to-lead/reference/gotchas.md +167 -0
- package/content/small-business/skills/small-business-speed-to-lead/reference/qualification.md +153 -0
- package/content/small-business/skills/small-business-speed-to-lead/reference/response_patterns.md +184 -0
- package/content/small-business/skills/small-business-tax-prep/SKILL.md +85 -0
- package/content/small-business/skills/small-business-tax-season-organizer/SKILL.md +210 -0
- package/content/small-business/skills/small-business-tax-season-organizer/reference/calculation-assumptions.md +177 -0
- package/content/small-business/skills/small-business-tax-season-organizer/reference/connector-queries.md +267 -0
- package/content/small-business/skills/small-business-tax-season-organizer/reference/examples/quarterly-estimate.md +92 -0
- package/content/small-business/skills/small-business-tax-season-organizer/reference/examples/year-end-1099.md +102 -0
- package/content/small-business/skills/small-business-tax-season-organizer/reference/gotchas.md +104 -0
- package/content/small-business/skills/small-business-tax-season-organizer/reference/output-formats.md +68 -0
- package/content/small-business/skills/small-business-ticket-deflector/SKILL.md +164 -0
- package/content/small-business/skills/small-business-ticket-deflector/reference/examples/deny-refund-request.md +98 -0
- package/content/small-business/skills/small-business-ticket-deflector/reference/examples/respond-refund-request.md +77 -0
- package/content/small-business/skills/small-business-ticket-deflector/reference/gotchas.md +57 -0
- package/index.ts +83 -0
- package/package.json +28 -3
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# Gotchas
|
|
2
|
+
|
|
3
|
+
Edge cases where the `crm-autopilot` skill is most likely to produce bad CRM data. Each entry uses the Good / Bad pattern.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Gotcha: Creating a duplicate contact when the email is already in HubSpot under a different case
|
|
8
|
+
|
|
9
|
+
**Why it matters:** HubSpot dedupes on exact email match. `Sarah.Lin@acme.com` and `sarah.lin@acme.com` are treated as distinct, but an owner who already created one will see a silent duplicate appear. That destroys the owner's trust in the skill.
|
|
10
|
+
|
|
11
|
+
### ✗ Bad
|
|
12
|
+
|
|
13
|
+
> Searched HubSpot for `Sarah.Lin@acme.com` — no match. Creating new contact: Sarah Lin (Sarah.Lin@acme.com).
|
|
14
|
+
|
|
15
|
+
New contact is created; owner's existing `sarah.lin@acme.com` contact now has a duplicate.
|
|
16
|
+
|
|
17
|
+
### ✓ Good
|
|
18
|
+
|
|
19
|
+
> Searched HubSpot for `sarah.lin@acme.com` (case-insensitive) — no match. Creating new contact: Sarah Lin (sarah.lin@acme.com). Announcing before write.
|
|
20
|
+
|
|
21
|
+
Always normalize email to lowercase before lookup. Announce the creation so the owner can catch misses.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## Gotcha: Writing the full email thread as the activity body
|
|
26
|
+
|
|
27
|
+
**Why it matters:** HubSpot activities are signal surfaces for fast scanning, not a transcript archive. A 12-message thread pasted into the activity body is useless; a three-sentence summary of what was agreed is actionable.
|
|
28
|
+
|
|
29
|
+
### ✗ Bad
|
|
30
|
+
|
|
31
|
+
> **Activity body:**
|
|
32
|
+
> *From: Sarah Lin — Thu Apr 9…*
|
|
33
|
+
> *Hi! Following up on our call, here are the specs we discussed…*
|
|
34
|
+
> *[1,200 more words]*
|
|
35
|
+
|
|
36
|
+
Owner scrolls past it every time.
|
|
37
|
+
|
|
38
|
+
### ✓ Good
|
|
39
|
+
|
|
40
|
+
> **Activity body:** Sarah confirmed scope for Q2 expansion — 50 seats, USD 18K ACV, start date June 1. She'll send the signed SOW by Friday. No open questions.
|
|
41
|
+
|
|
42
|
+
Summary names the decisions, the numbers, and the next step.
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Gotcha: Auto-creating a deal when the right one can't be resolved
|
|
47
|
+
|
|
48
|
+
**Why it matters:** Duplicate deals are very hard to untangle in HubSpot — they split activity history, confuse reporting, and the owner usually notices weeks later when a forecast looks wrong.
|
|
49
|
+
|
|
50
|
+
### ✗ Bad
|
|
51
|
+
|
|
52
|
+
> No open deal found for Sarah Lin at Acme. Creating new deal: "Acme — new opportunity" and logging the call to it.
|
|
53
|
+
|
|
54
|
+
Now there are two Acme deals and the owner has no idea which one is real.
|
|
55
|
+
|
|
56
|
+
### ✓ Good
|
|
57
|
+
|
|
58
|
+
> No open deal found for Sarah Lin at Acme. Which deal should I log this to? Options: (1) Acme Q2 Expansion (closed-won Feb), (2) Acme Renewal 2027 (open). Or do you want to skip logging for now?
|
|
59
|
+
|
|
60
|
+
Ask. Never create a deal on behalf of the owner.
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## Gotcha: Resolving against an empty portal
|
|
65
|
+
|
|
66
|
+
**Why it matters:** A brand-new HubSpot portal returns zero contacts and zero deals, and every resolution step then "fails" in a way that reads like a data problem. The skill starts proposing contacts to create and deals to log against, and the owner ends up with a CRM seeded by a logging run instead of by their own setup.
|
|
67
|
+
|
|
68
|
+
### ✗ Bad
|
|
69
|
+
|
|
70
|
+
> No contact found for sarah@acme.com. Creating contact. No open deal found — which deal should I log this to? (none listed)
|
|
71
|
+
|
|
72
|
+
The portal has nothing in it. There is no deal to pick.
|
|
73
|
+
|
|
74
|
+
### ✓ Good
|
|
75
|
+
|
|
76
|
+
> Your CRM has no contacts or deals yet — it looks brand new. I can keep this call log in the spreadsheet CRM until it is populated (on HubSpot, I can also start its own setup). Which?
|
|
77
|
+
|
|
78
|
+
Check the counts first (Step 3). An empty portal is a setup question, not a resolution problem. Do not use `get_user_details`' `onboarded` flag as the test: a portal full of contacts can still report `onboarded: false`. The flag says whether HubSpot's guided setup ran, not whether there is data.
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## Gotcha: Proposing a deal stage change based on email language
|
|
83
|
+
|
|
84
|
+
**Why it matters:** "We're moving forward" in an email doesn't always mean "advance to closed-won." Customers say it when they're moving forward with evaluation, or with a procurement step. Owners have context the skill doesn't. Auto-advancing stage is destructive to the pipeline.
|
|
85
|
+
|
|
86
|
+
### ✗ Bad
|
|
87
|
+
|
|
88
|
+
> Email from Sarah says "we're moving forward." Proposing `dealstage` → Closed Won. Writing now.
|
|
89
|
+
|
|
90
|
+
### ✓ Good
|
|
91
|
+
|
|
92
|
+
> Flagging: the Apr 18 email from Sarah ("we're moving forward with the Anthropic evaluation") may indicate stage movement. Current stage is "Proposal Sent." Do you want to advance it? I won't change stage without your explicit go-ahead.
|
|
93
|
+
|
|
94
|
+
Surface the evidence, hold the write.
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Gotcha: Overwriting an owner-set next-step during cleanup
|
|
99
|
+
|
|
100
|
+
**Why it matters:** The owner may have set a next step that reflects context the skill can't see — a phone call, a Slack thread, a private note. Overwriting it because a recent email suggests something different erases real work.
|
|
101
|
+
|
|
102
|
+
### ✗ Bad
|
|
103
|
+
|
|
104
|
+
> `hs_next_step` currently says "wait for legal review." Latest email from Sarah says "let's schedule pricing review." Updating `hs_next_step` to "schedule pricing review."
|
|
105
|
+
|
|
106
|
+
### ✓ Good
|
|
107
|
+
|
|
108
|
+
> `hs_next_step` currently reads "wait for legal review" (set by you 3 days ago). The Apr 19 email from Sarah suggests a pricing review is also needed. Propose appending or replacing? Current → Proposed: "wait for legal review" → "wait for legal review; then schedule pricing review." Approve?
|
|
109
|
+
|
|
110
|
+
Show the current value, propose the change explicitly, wait for approval.
|
package/content/small-business/skills/small-business-crm-autopilot/reference/hubspot-fields.md
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# HubSpot fields and activity types
|
|
2
|
+
|
|
3
|
+
The specific HubSpot objects, properties, and activity types the `crm-autopilot` skill reads from and writes to. Only the fields listed here are in-scope for this skill — everything else in HubSpot is untouched.
|
|
4
|
+
|
|
5
|
+
## Contacts — write
|
|
6
|
+
|
|
7
|
+
| Field | Usage |
|
|
8
|
+
|---------------|----------------------------------------------------------------------------------------|
|
|
9
|
+
| `email` | Primary identifier for lookup + dedupe. Always set on creation. |
|
|
10
|
+
| `firstname` | Set from email signature or calendar invite if available. Leave blank if unknown. |
|
|
11
|
+
| `lastname` | Set from email signature or calendar invite if available. Leave blank if unknown. |
|
|
12
|
+
| `company` | Set from email signature domain or calendar organization if available. |
|
|
13
|
+
|
|
14
|
+
Do not write any other contact properties. Owner, lifecycle stage, and lead source are user-managed fields — never overwrite.
|
|
15
|
+
|
|
16
|
+
## Contacts — read (for lookup)
|
|
17
|
+
|
|
18
|
+
| Field | Usage |
|
|
19
|
+
|---------------|--------------------------------------------------------------------|
|
|
20
|
+
| `email` | Search key. Case-insensitive exact match. |
|
|
21
|
+
| `firstname` · `lastname` · `company` | Displayed to the user during ambiguity resolution. |
|
|
22
|
+
| `hs_object_id`| Used for association with deals and activities. |
|
|
23
|
+
|
|
24
|
+
## Deals — read (all cleanup + resolution paths)
|
|
25
|
+
|
|
26
|
+
| Field | Usage |
|
|
27
|
+
|-----------------------------|----------------------------------------------------------|
|
|
28
|
+
| `dealname` | Displayed to the user; used for fuzzy match against email/meeting topic |
|
|
29
|
+
| `dealstage` | Read-only during cleanup — flag discrepancies, never change |
|
|
30
|
+
| `amount` | Read during cleanup; flag if recent email/meeting implies change |
|
|
31
|
+
| `closedate` | Read during cleanup; flag if outdated |
|
|
32
|
+
| `hs_next_step` | Read + propose updates during cleanup |
|
|
33
|
+
| `hubspot_owner_id` | Displayed to the user; never changed |
|
|
34
|
+
| `notes_last_updated` | Used to detect stale deals. This is HubSpot's "Last Activity Date" on the deal object. There is no `hs_lastactivitydate` property — do not look for one |
|
|
35
|
+
| Associated contacts | Used to determine whether recent email/meeting participants are on the deal |
|
|
36
|
+
|
|
37
|
+
## Deals — write (cleanup path only, with approval)
|
|
38
|
+
|
|
39
|
+
| Field | Rule |
|
|
40
|
+
|-----------------|------------------------------------------------------------------|
|
|
41
|
+
| `hs_next_step` | Propose updates; write only with explicit user approval |
|
|
42
|
+
| `closedate` | Propose updates; write only with explicit user approval |
|
|
43
|
+
| `amount` | Propose updates; write only with explicit user approval |
|
|
44
|
+
| Contact assoc. | Propose adding missing deal participants; write only with approval |
|
|
45
|
+
|
|
46
|
+
**Never write** `dealstage`, `pipeline`, `hubspot_owner_id`, or any custom property during cleanup. Those are owner-managed.
|
|
47
|
+
|
|
48
|
+
## Activities — write
|
|
49
|
+
|
|
50
|
+
| Activity type | Used by | Fields set |
|
|
51
|
+
|--------------------------------|----------------|--------------------------------------------------------------------------|
|
|
52
|
+
| Email engagement (`EMAIL`) | Email path | `hs_email_subject` (thread subject), `hs_email_text` (summary, not full thread), `hs_timestamp` (latest message time), associated contact(s) + deal |
|
|
53
|
+
| Call engagement (`CALL`) | Call path | `hs_call_title` (event title), `hs_call_body` (summary), `hs_call_duration` (from calendar), `hs_timestamp` (event start), associated contact(s) + deal |
|
|
54
|
+
| Note (`NOTE`) | Cleanup path | `hs_note_body` (when flagging something for future review that doesn't fit a field update) |
|
|
55
|
+
|
|
56
|
+
Use HubSpot's standard engagement vocabulary. Do not invent custom activity types.
|
|
57
|
+
|
|
58
|
+
## Association rules
|
|
59
|
+
|
|
60
|
+
- Every activity must associate to the deal AND to at least one contact.
|
|
61
|
+
- If a contact is created on-the-fly during activity logging, associate it to the deal in the same operation so the activity shows up on both the contact and deal timelines.
|
|
62
|
+
- Do not associate a contact to a deal during an activity-logging flow unless the contact is actually a participant in that email thread or meeting.
|
package/content/small-business/skills/small-business-crm-autopilot/reference/lightweight_crm.md
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
# The Lightweight CRM
|
|
2
|
+
|
|
3
|
+
For owners with no CRM at all — a large share of this segment. Telling them to go buy HubSpot is not an answer, and it is the point where the skill would otherwise stop being useful.
|
|
4
|
+
|
|
5
|
+
Build them one in a spreadsheet or Notion and maintain it exactly the same way.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Where it lives
|
|
10
|
+
|
|
11
|
+
**Google Sheets or Excel** — the default. Every owner can open it, share it, and take it with them.
|
|
12
|
+
|
|
13
|
+
**Notion** — when they already use it. Better for notes, worse for anything numeric.
|
|
14
|
+
|
|
15
|
+
**Monday.com** — when they already use it, and the strongest of these three. Board items act
|
|
16
|
+
as records, per-column updates work, and the contact timeline already holds emails, calls,
|
|
17
|
+
meetings and notes. Read and write both. If the owner is in Monday.com daily, maintaining
|
|
18
|
+
their boards beats building a sheet they will forget to open.
|
|
19
|
+
|
|
20
|
+
**A local file** — when nothing is connected. Still works.
|
|
21
|
+
|
|
22
|
+
Ask once, then stop asking.
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Structure
|
|
27
|
+
|
|
28
|
+
Four tabs. Resist adding more — every extra field is one that goes stale and makes the sheet feel like homework.
|
|
29
|
+
|
|
30
|
+
### Contacts
|
|
31
|
+
|
|
32
|
+
| Column | Notes |
|
|
33
|
+
|---|---|
|
|
34
|
+
| Name | |
|
|
35
|
+
| Company | |
|
|
36
|
+
| Email | |
|
|
37
|
+
| Phone | |
|
|
38
|
+
| Role | |
|
|
39
|
+
| First seen | Date |
|
|
40
|
+
| Last contact | Auto-updated on every logged activity |
|
|
41
|
+
| Notes | |
|
|
42
|
+
|
|
43
|
+
### Deals
|
|
44
|
+
|
|
45
|
+
| Column | Notes |
|
|
46
|
+
|---|---|
|
|
47
|
+
| Deal | Short name the owner recognizes |
|
|
48
|
+
| Company | |
|
|
49
|
+
| Contact | |
|
|
50
|
+
| Value | |
|
|
51
|
+
| Stage | Keep it to four: New, Quoted, Won, Lost |
|
|
52
|
+
| Next step | The single most important column |
|
|
53
|
+
| Next step date | |
|
|
54
|
+
| Last activity | Auto-updated |
|
|
55
|
+
| Source | How they found the business |
|
|
56
|
+
| Notes | |
|
|
57
|
+
|
|
58
|
+
**Four stages, not eight.** Owners without a CRM do not need a pipeline taxonomy; they need to know what to do next. More stages means more records sitting in the wrong one.
|
|
59
|
+
|
|
60
|
+
### Activity
|
|
61
|
+
|
|
62
|
+
| Column | Notes |
|
|
63
|
+
|---|---|
|
|
64
|
+
| Date | When it happened, not when it was logged |
|
|
65
|
+
| Type | Email, call, meeting, note |
|
|
66
|
+
| Contact | |
|
|
67
|
+
| Deal | |
|
|
68
|
+
| Summary | Three to five lines |
|
|
69
|
+
| Next step set | Yes or no |
|
|
70
|
+
|
|
71
|
+
Append only. Never edit history — this tab is the record the owner relies on when they cannot remember what was agreed.
|
|
72
|
+
|
|
73
|
+
### Queue
|
|
74
|
+
|
|
75
|
+
A filtered view, not a fourth data set: every open deal with no next step, or with a next-step date in the past. This is the tab the owner actually opens.
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## Maintaining it
|
|
80
|
+
|
|
81
|
+
Identical to the HubSpot path. Same modes, same approval gates, same rules.
|
|
82
|
+
|
|
83
|
+
- Log activity from email, calendar, and transcripts
|
|
84
|
+
- Update Last contact and Last activity automatically
|
|
85
|
+
- Propose field changes, never write stage or value without approval
|
|
86
|
+
- Draft follow-ups on quiet deals
|
|
87
|
+
- Keep the queue current
|
|
88
|
+
|
|
89
|
+
The only real difference is that resolving a contact means matching a row rather than searching an API. Match on email address first, then on name and company — and when it's ambiguous, ask rather than guessing. A wrongly merged row is harder to unpick in a spreadsheet than in a CRM.
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## Introducing it
|
|
94
|
+
|
|
95
|
+
Do not present this as a downgrade. For most of these owners it is the first time their pipeline has existed anywhere but their head.
|
|
96
|
+
|
|
97
|
+
```
|
|
98
|
+
You don't have a CRM connected, so I'll build you one in Sheets. Four tabs —
|
|
99
|
+
contacts, deals, activity, and a queue of what needs a next step.
|
|
100
|
+
|
|
101
|
+
It's not a toy. I'll keep it current the same way I would HubSpot: log your
|
|
102
|
+
calls and emails automatically, draft follow-ups when a deal goes quiet, and
|
|
103
|
+
flag anything with no next step. And it exports cleanly if you ever move to
|
|
104
|
+
a real CRM.
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
The last sentence matters. Owners avoid spreadsheet systems because they fear being stuck in one.
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## When to suggest they upgrade
|
|
112
|
+
|
|
113
|
+
Only when the data says so, and only once:
|
|
114
|
+
|
|
115
|
+
- More than about 150 open deals
|
|
116
|
+
- More than one person needing to edit at the same time
|
|
117
|
+
- They start asking for reporting the sheet cannot do
|
|
118
|
+
|
|
119
|
+
```
|
|
120
|
+
You're at 180 open deals and Teri's editing this too. That's about where a
|
|
121
|
+
spreadsheet starts costing you more than it saves. Worth a look at HubSpot —
|
|
122
|
+
everything here exports straight in.
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
Say it once. Do not repeat it. An owner who has decided against a CRM has usually decided for a reason, and nagging is how a useful skill becomes an annoying one.
|
package/content/small-business/skills/small-business-crm-autopilot/reference/salesforce-fields.md
ADDED
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
# Salesforce objects, fields, and activity types
|
|
2
|
+
|
|
3
|
+
The Salesforce objects and fields the `crm-autopilot` skill reads and writes,
|
|
4
|
+
and how it reaches them. Only the fields listed here are in scope; everything
|
|
5
|
+
else in the org is left alone.
|
|
6
|
+
|
|
7
|
+
**Source of these names.** Standard-object API names, plus the Headless 360
|
|
8
|
+
tool contract Salesforce published. Any operation name `discover` returns is
|
|
9
|
+
the truth over this file.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## How the connector works
|
|
14
|
+
|
|
15
|
+
Salesforce is reached through the Headless 360 server, which the owner adds
|
|
16
|
+
as a custom connector (it has a per-org address and its own OAuth client, so
|
|
17
|
+
it is not in the plugin manifest). It exposes four tools, and every step in
|
|
18
|
+
this skill is the same three-beat flow:
|
|
19
|
+
|
|
20
|
+
1. `discover` — say what you need in plain words ("find a contact by email",
|
|
21
|
+
"open opportunities with no recent activity", "log a completed call").
|
|
22
|
+
It returns ranked operations.
|
|
23
|
+
2. `describe` — the one you pick. Read its parameters and any ordered steps
|
|
24
|
+
before calling. Never skip this: parameter names are the operation's,
|
|
25
|
+
not this file's.
|
|
26
|
+
3. `dispatch_readonly` for any read; `dispatch` only for the one write the
|
|
27
|
+
owner approved. `dispatch` runs as the signed-in user with that user's
|
|
28
|
+
access, and there is no delete operation, which matches this skill's
|
|
29
|
+
first gate.
|
|
30
|
+
|
|
31
|
+
Shape notes are in `../../../shared/connector-call-shapes.md`.
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Contacts — write (`Contact`)
|
|
36
|
+
|
|
37
|
+
| Field | Usage |
|
|
38
|
+
|---|---|
|
|
39
|
+
| `Email` | Primary identifier for lookup and dedupe. Always set on creation. |
|
|
40
|
+
| `FirstName` | From the email signature or calendar invite if available. |
|
|
41
|
+
| `LastName` | Required by Salesforce. From the signature or invite; if unknown, ask before creating — do not invent one. |
|
|
42
|
+
| `AccountId` | Set only when the company is unambiguous (an existing Account matching the email domain). Otherwise leave blank and say so. |
|
|
43
|
+
|
|
44
|
+
Do not write any other contact field. `OwnerId`, `LeadSource`, and any custom
|
|
45
|
+
field are user-managed.
|
|
46
|
+
|
|
47
|
+
## Contacts — read (for lookup)
|
|
48
|
+
|
|
49
|
+
| Field | Usage |
|
|
50
|
+
|---|---|
|
|
51
|
+
| `Email` | Search key. Salesforce email matching is case-insensitive. |
|
|
52
|
+
| `FirstName` · `LastName` · `Account.Name` | Shown to the owner during ambiguity resolution. |
|
|
53
|
+
| `Id` | The `WhoId` on any activity logged against this person. |
|
|
54
|
+
|
|
55
|
+
A person may exist as a `Lead` rather than a `Contact` (unconverted). Search
|
|
56
|
+
both by email, with `IsConverted = false` on the Lead side — a converted lead's
|
|
57
|
+
row persists and would otherwise match beside the Contact it became. A match
|
|
58
|
+
on an unconverted `Lead` is reported as a lead, and the activity is
|
|
59
|
+
logged with `WhoId` = the lead's `Id` **and no `WhatId`** — Salesforce
|
|
60
|
+
rejects an activity that names a Lead and an Opportunity together. Say the
|
|
61
|
+
deal is unset and that it attaches once the lead is converted.
|
|
62
|
+
|
|
63
|
+
## Opportunities — read (all cleanup and resolution paths)
|
|
64
|
+
|
|
65
|
+
| Field | Usage |
|
|
66
|
+
|---|---|
|
|
67
|
+
| `Name` | Shown to the owner; fuzzy-matched against the email subject or meeting title |
|
|
68
|
+
| `StageName` | Read-only during cleanup — flag discrepancies, never change |
|
|
69
|
+
| `Amount` | Read during cleanup; flag if a recent email or meeting implies a change |
|
|
70
|
+
| `CloseDate` | Read during cleanup; flag if in the past on an open opportunity |
|
|
71
|
+
| `NextStep` | Read, and propose updates during cleanup |
|
|
72
|
+
| `OwnerId` → `Owner.Name` | Shown to the owner; never changed |
|
|
73
|
+
| `IsClosed` | Open-pipeline filter |
|
|
74
|
+
| `LastActivityDate` | Stale-deal detection. Set by completed Tasks and Events; **null on a record with no logged activity ever** — treat null as the quietest deal, not as "no data" |
|
|
75
|
+
| `OpportunityContactRoles` (subquery) | Whether the email or meeting participants are on the opportunity. A child object, not a column: `SELECT Id, (SELECT ContactId, Role FROM OpportunityContactRoles) FROM Opportunity WHERE Id = ...` |
|
|
76
|
+
|
|
77
|
+
## Opportunities — write (cleanup path only, with approval)
|
|
78
|
+
|
|
79
|
+
| Field | Rule |
|
|
80
|
+
|---|---|
|
|
81
|
+
| `NextStep` | Proposed from the extracted next step; written only on approval |
|
|
82
|
+
| `CloseDate` | Proposed when the evidence names a date; written only on approval |
|
|
83
|
+
| `StageName`, `Amount` | **Never written by this skill.** Flag and defer; stage drives the forecast the owner reports to other people |
|
|
84
|
+
|
|
85
|
+
Never create an Opportunity unprompted. Never close one.
|
|
86
|
+
|
|
87
|
+
## Activities — write
|
|
88
|
+
|
|
89
|
+
| Activity | Object | Fields |
|
|
90
|
+
|---|---|---|
|
|
91
|
+
| Call | `Task` | `Subject`, `Description` (the summary, never the transcript), `ActivityDate` (the real date), `Status` = Completed, `TaskSubtype` = Call, `WhoId` (contact or lead), `WhatId` (opportunity) |
|
|
92
|
+
| Email | `Task` | Same, `TaskSubtype` = Email |
|
|
93
|
+
| Meeting | `Event` | `Subject`, `Description`, `StartDateTime` and `EndDateTime` (the real times), `WhoId`, `WhatId` |
|
|
94
|
+
|
|
95
|
+
`WhoId` takes a Contact or Lead `Id`; `WhatId` takes an Opportunity or Account
|
|
96
|
+
`Id`. Either may stand alone: a deal-only activity (`WhatId` set, no `WhoId`) is
|
|
97
|
+
valid, and so is a contact-only one. The single constraint is that a Lead
|
|
98
|
+
`WhoId` requires an empty `WhatId`. An activity with neither is orphaned and
|
|
99
|
+
invisible from the deal; if the deal cannot be resolved, log against the
|
|
100
|
+
contact and say the deal is unset.
|
|
101
|
+
|
|
102
|
+
## Association rules
|
|
103
|
+
|
|
104
|
+
- A contact joins an opportunity through `OpportunityContactRole`; propose
|
|
105
|
+
adding a participant who is on the email or meeting but not on the
|
|
106
|
+
opportunity, never add silently.
|
|
107
|
+
- A contact's company is `AccountId`. If the email domain matches exactly one
|
|
108
|
+
Account, propose it; if it matches none or several, leave it blank and say
|
|
109
|
+
so.
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## What the Salesforce path cannot do here
|
|
114
|
+
|
|
115
|
+
- **Delete.** No operation exists; the skill never wanted one.
|
|
116
|
+
- **Arbitrary joins in one read.** SOQL covers parent lookups (contact →
|
|
117
|
+
account, opportunity → account) and one level of child subquery (an
|
|
118
|
+
opportunity's contact roles); anything wider is two reads, and the report
|
|
119
|
+
says so.
|
|
120
|
+
- **Bypass the user's own access.** `dispatch` runs as the signed-in owner.
|
|
121
|
+
A field they cannot edit in Salesforce cannot be edited from here either,
|
|
122
|
+
and the error is reported as that, not as a plugin failure.
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
# Standing Mode
|
|
2
|
+
|
|
3
|
+
The scheduled sweep. This is what turns the skill from a tool the owner remembers to use into one that keeps the CRM current on its own.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## What a run does
|
|
8
|
+
|
|
9
|
+
1. Pull everything since the last run — sent and received mail with external contacts, completed calendar events, new call transcripts
|
|
10
|
+
2. Resolve each to a contact and a deal
|
|
11
|
+
3. Log the activity
|
|
12
|
+
4. Extract structured fields and propose updates
|
|
13
|
+
5. Find deals that have gone quiet and draft the next touch
|
|
14
|
+
6. Refresh the next-step queue
|
|
15
|
+
7. Report what needs the owner
|
|
16
|
+
|
|
17
|
+
Record the run timestamp so the next sweep knows where to start. Re-logging the same meeting twice is a visible error and it clutters the record the owner relies on.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Extracting from a call transcript
|
|
22
|
+
|
|
23
|
+
The highest-value input in this whole skill. A recorded sales call contains everything the owner would otherwise type from memory three days later, badly.
|
|
24
|
+
|
|
25
|
+
Pull these:
|
|
26
|
+
|
|
27
|
+
| Field | What to look for |
|
|
28
|
+
|---|---|
|
|
29
|
+
| Next step | What was agreed, and by when. Usually said in the last two minutes |
|
|
30
|
+
| Owner of the next step | Whether it's on the owner or the customer |
|
|
31
|
+
| Budget signal | Any number mentioned, even in passing |
|
|
32
|
+
| Timeline | Dates, seasons, "before the end of the quarter" |
|
|
33
|
+
| Objection | What they pushed back on. Often the most useful field |
|
|
34
|
+
| Other people | Anyone named who wasn't on the call — they're usually a decision-maker |
|
|
35
|
+
| Competitor mentioned | Who else they're talking to |
|
|
36
|
+
|
|
37
|
+
**Quote the objection verbatim.** A paraphrase loses the thing that made it useful. "It's not the price, it's that we'd have to shut down the floor for two days" is a specific problem the owner can solve. "Had concerns about implementation" is not.
|
|
38
|
+
|
|
39
|
+
Write the summary in three to five lines. The transcript stays available; the summary is what gets read.
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
Call summary — Ridgeline, Jul 27, 34 min
|
|
43
|
+
|
|
44
|
+
Dana confirmed all six buildings, wants one plan not per-building. Budget
|
|
45
|
+
signal: "we paid around 8 last time" (that was 2 units, not 6).
|
|
46
|
+
|
|
47
|
+
Objection, her words: "the part I can't sell upstairs is another vendor
|
|
48
|
+
changeover — last one was a mess."
|
|
49
|
+
|
|
50
|
+
Next step: Ray sends the proposal by Wed. Dana loops in Priya (facilities
|
|
51
|
+
director, wasn't on the call) before they decide.
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Everything in that summary either changes what the owner does next or explains why the deal might not close.
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## Finding quiet deals
|
|
59
|
+
|
|
60
|
+
A deal is quiet when it has no activity in 14+ days, or its close date has passed and it's still open.
|
|
61
|
+
|
|
62
|
+
Rank by what's at stake — value first, then how long it's been silent. An owner will act on three quiet deals and ignore a list of twenty.
|
|
63
|
+
|
|
64
|
+
**Draft the next touch, don't just flag it.** A flag creates work. A draft removes it.
|
|
65
|
+
|
|
66
|
+
Ground each draft in what actually happened last: the last exchange, what was promised, what was left open. "Following up on our conversation" is the generic version and it converts poorly. "You were going to check with Priya on the changeover timing — any word?" is a real message.
|
|
67
|
+
|
|
68
|
+
Read [the shared voice profile](../../../shared/voice-profile.md) so drafts sound like the owner. Every one waits for approval.
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## The next-step queue
|
|
73
|
+
|
|
74
|
+
Every open deal needs three things: an owner, a next action, and a date. Deals missing any of them are the ones that quietly die.
|
|
75
|
+
|
|
76
|
+
Surfacing them is most of the value in a standing run:
|
|
77
|
+
|
|
78
|
+
```
|
|
79
|
+
No next step set — these are the ones that go quiet:
|
|
80
|
+
Fairmount Commercial USD 9,400 last activity Jul 11
|
|
81
|
+
Delta Park USD 22,000 last activity Jul 19
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Two lines, and the owner can fix both in a minute.
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## The standing-run report
|
|
89
|
+
|
|
90
|
+
Lead with what needs the owner. Never open with a list of everything logged — that reads as noise and trains them to skip it.
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
## CRM — since Monday
|
|
94
|
+
|
|
95
|
+
### Needs you
|
|
96
|
+
|
|
97
|
+
3 follow-ups drafted on quiet deals — Ridgeline, Corwin & Bay, Delta Park.
|
|
98
|
+
Review and send?
|
|
99
|
+
|
|
100
|
+
Fairmount close date passed Jul 18 and it's still open. Push the date, or
|
|
101
|
+
mark it lost?
|
|
102
|
+
|
|
103
|
+
### Logged automatically
|
|
104
|
+
|
|
105
|
+
11 emails · 4 meetings · 2 call transcripts across 9 deals
|
|
106
|
+
|
|
107
|
+
### Proposed field updates
|
|
108
|
+
|
|
109
|
+
Ridgeline next step: proposal by Wed (from Thursday's call)
|
|
110
|
+
Corwin & Bay budget: ~USD 9,400 mentioned (from Tuesday's email)
|
|
111
|
+
|
|
112
|
+
### No next step set
|
|
113
|
+
|
|
114
|
+
Fairmount USD 9,400 · Delta Park USD 22,000
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
The owner reads the first section and acts. Everything below it is there for when they want to check.
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
## Cadence
|
|
122
|
+
|
|
123
|
+
Daily is usually too often — there isn't enough new activity and the report becomes noise the owner stops opening.
|
|
124
|
+
|
|
125
|
+
Twice a week or weekly fits most businesses. Match it to how often they actually talk to customers.
|
|
126
|
+
|
|
127
|
+
Ask once at setup, then leave it alone:
|
|
128
|
+
|
|
129
|
+
```
|
|
130
|
+
Weekly on Monday, or twice a week? Weekly works for most people — daily
|
|
131
|
+
ends up being a lot of empty reports.
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## What standing mode must never do on its own
|
|
137
|
+
|
|
138
|
+
- Change a deal stage. It drives forecasts the owner reports to other people.
|
|
139
|
+
- Close or mark a deal lost.
|
|
140
|
+
- Create a deal.
|
|
141
|
+
- Send a follow-up.
|
|
142
|
+
- Delete anything.
|
|
143
|
+
|
|
144
|
+
Everything on that list gets proposed and waits. The point of a standing run is that the owner can ignore it for a week without anything irreversible happening.
|