원클릭으로
offer-design
Product offer design — bundle structure, feature set scoping, packaging, and version architecture
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Product offer design — bundle structure, feature set scoping, packaging, and version architecture
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Use this skill to setup your knowledge base, improve your setup, edit /support/summary, change tone of voice, setup daily reporting, setup human escalation.
Guide the user through creating a sales pipeline — name, stages with probabilities, deal creation rules, and deal movement automations.
Guide the user through setting up a stall deal recovery policy — timing thresholds, per-stage actions, and an automated schedule. Use when the user asks about inactive deals, follow-up automation, or stale leads.
Execute a stall deal check — query stalled deals, send follow-ups per stage policy, archive long-inactive deals as Lost.
Guide the user through setting up a welcome email template and automation for new contacts.
Read scenario scores and trajectories in scenario-dumps/, diagnose patterns across models, understand root causes, propose and apply changes to skill/prompt files.
| name | offer-design |
| description | Product offer design — bundle structure, feature set scoping, packaging, and version architecture |
You design offers as operational systems, not static feature bundles. A valid offer recommendation is one that buyers can understand, operations can execute, and teams can migrate safely. Before finalizing any offer recommendation, verify: (1) one target segment and one primary job are explicit, (2) cost variability of key capabilities is known or explicitly assumed, (3) migration and cancellation implications are explicitly addressed. If one of these is missing, lower confidence and publish unresolved assumptions.
Core mode: the offer must solve one clear problem for one clear segment at one clear price. Complexity kills conversion — design for clarity first, optimization second. Anything not directly enabling the core job is either an upsell, a distraction, or a segment-specific feature.
1. Activate context artifacts
flexus_policy_document(op="activate", args={"p": "/strategy/messaging"})
flexus_policy_document(op="activate", args={"p": "/strategy/positioning-map"})
flexus_policy_document(op="activate", args={"p": "/segments/{segment_id}/icp-scorecard"})
flexus_policy_document(op="list", args={"p": "/pain/"})
flexus_policy_document(op="activate", args={"p": "/pain/wtp-research-{date}"})
If critical evidence is missing, write assumptions and state confidence impact.
2. Feature triage Classify each capability by: value breadth (does everyone need this?), cost variability (does it scale with usage?), mission role (core, adjacent, experimental).
3. Select packaging model
good_better_best: clear maturity segmentation, self-serve clarity.base_modules: high workflow variance and enterprise tailoring.single_with_volume: stable core value, clear scaling dimension (seats, usage).freemium: only when free-tier economics and conversion path are controlled.single_offer: only when segment and workflow variance are low.Choose based on: sales motion (self-serve → Good/Better/Best; enterprise → Base + modules), revenue model goals, segment clarity.
4. Define tier boundaries by workflow coherence
Adjacent tiers must differ by workflow depth/control, not cosmetic feature count. Each tier must represent a coherent job outcome. For each tier define: target_persona, core_job_served, included_features, excluded_features, key_limits, upgrade_triggers. Upgrade triggers must reference observable usage conditions.
5. Add predictability controls (required for usage-based models)
Define: allowance design, overage policy, visibility surface where customer can see usage, alert policy at thresholds, budget owner. If variable charging exists and spend is not forecastable, return needs_rework.
6. Define migration policy before any launch recommendation
Required: effective date, cohort plan (phased not big-bang), grandfathering policy, rollback triggers, communication plan. Confidence cannot exceed medium without migration policy.
7. Run interpretation quality gates before final recommendation
What it looks like: Abrupt billing-metric change without transition support. Detection signal: Forecast confusion and renewal friction. Consequence: Trust shock and rollback pressure. Mitigation: Parallel-run metrics during migration; stage transition.
What it looks like: Modular options removed during migration without entitlement mapping. Detection signal: Lock-in objections and conversion friction. Consequence: Slower adoption and higher scrutiny risk. Mitigation: Transitional options and explicit entitlement mapping per cohort.
What it looks like: Cancellation, fee escalation, or termination implications are low-visibility. Detection signal: Surprise-fee disputes and refund claims. Consequence: Enforcement, litigation, and refund risk. Mitigation: Plain-language key-terms disclosure adjacent to signup consent.
What it looks like: Full cutover before parity confidence is established. Detection signal: Severe post-launch incidents requiring immediate rollback. Consequence: Expensive remediation and trust damage. Mitigation: Phased cohorts, parity checklist, rollback triggers pre-defined.
What it looks like: Tier differences are number of features, not depth of workflow. Detection signal: Buyers consistently use only features from lower tier after upgrading. Consequence: Tier confusion and high downgrade rate. Mitigation: Tier by workflow coherence, not feature count.
write_artifact(path="/strategy/offer-design", data={...})
Before writing: verify packaging rationale, tier inclusions/exclusions/limits, predictability controls, migration policy, confidence, and unresolved assumptions.
flexus_policy_document(op="activate", args={"p": "/strategy/messaging"})
flexus_policy_document(op="activate", args={"p": "/strategy/positioning-map"})
flexus_policy_document(op="activate", args={"p": "/segments/{segment_id}/icp-scorecard"})
flexus_policy_document(op="list", args={"p": "/pain/"})
flexus_policy_document(op="activate", args={"p": "/pain/wtp-research-{date}"})
{
"offer_design": {
"type": "object",
"description": "Product offer design: packaging model, tier definitions, predictability controls, migration policy, and evidence log.",
"required": ["product_name", "created_at", "target_segment", "primary_job", "packaging_model", "packaging_rationale", "tiers", "core_features", "predictability_controls", "migration_policy", "confidence", "unresolved_assumptions"],
"additionalProperties": false,
"properties": {
"product_name": {"type": "string"},
"created_at": {"type": "string", "description": "ISO-8601 UTC timestamp."},
"target_segment": {"type": "string"},
"primary_job": {"type": "string", "description": "Primary job-to-be-done this offer solves."},
"packaging_model": {"type": "string", "enum": ["good_better_best", "base_modules", "single_with_volume", "freemium", "single_offer"]},
"packaging_rationale": {
"type": "object",
"required": ["chosen_for", "rejected_options"],
"additionalProperties": false,
"properties": {
"chosen_for": {"type": "array", "items": {"type": "string"}, "description": "Evidence-backed reasons for selected model."},
"rejected_options": {
"type": "array",
"items": {
"type": "object",
"required": ["model", "reason_rejected"],
"additionalProperties": false,
"properties": {
"model": {"type": "string", "enum": ["good_better_best", "base_modules", "single_with_volume", "freemium", "single_offer"]},
"reason_rejected": {"type": "string"}
}
}
}
}
},
"tiers": {
"type": "array",
"minItems": 1,
"maxItems": 5,
"items": {
"type": "object",
"required": ["tier_name", "target_persona", "core_job_served", "included_features", "excluded_features", "key_limits", "upgrade_triggers"],
"additionalProperties": false,
"properties": {
"tier_name": {"type": "string"},
"target_persona": {"type": "string"},
"core_job_served": {"type": "string", "description": "Workflow outcome this tier completes."},
"included_features": {"type": "array", "items": {"type": "string"}},
"excluded_features": {"type": "array", "items": {"type": "string"}, "description": "Explicit exclusions — not just absent, but declared excluded."},
"key_limits": {"type": "object", "additionalProperties": true, "description": "Usage limits: seats, API calls, storage, etc."},
"upgrade_triggers": {"type": "array", "items": {"type": "string"}, "description": "Observable conditions that indicate need for upgrade."}
}
}
},
"core_features": {
"type": "array",
"items": {
"type": "object",
"required": ["feature", "category", "rationale"],
"additionalProperties": false,
"properties": {
"feature": {"type": "string"},
"category": {"type": "string", "enum": ["core", "value_add", "segment_specific"]},
"rationale": {"type": "string", "description": "Evidence-based categorization rationale."}
}
}
},
"predictability_controls": {
"type": "object",
"required": ["allowance_design", "overage_policy", "visibility_surface", "alert_policy", "budget_owner"],
"additionalProperties": false,
"properties": {
"allowance_design": {"type": "string"},
"overage_policy": {"type": "string"},
"visibility_surface": {"type": "string"},
"alert_policy": {"type": "string"},
"budget_owner": {"type": "string"}
}
},
"migration_policy": {
"type": "object",
"required": ["effective_date", "cohort_plan", "grandfathering_policy", "rollback_triggers", "communication_plan"],
"additionalProperties": false,
"properties": {
"effective_date": {"type": "string"},
"cohort_plan": {"type": "array", "items": {"type": "object", "required": ["cohort_name", "transition_date", "treatment"], "additionalProperties": false, "properties": {"cohort_name": {"type": "string"}, "transition_date": {"type": "string"}, "treatment": {"type": "string"}}}},
"grandfathering_policy": {"type": "string"},
"rollback_triggers": {"type": "array", "items": {"type": "string"}},
"communication_plan": {"type": "array", "items": {"type": "string"}}
}
},
"confidence": {"type": "string", "enum": ["high", "medium", "low"]},
"unresolved_assumptions": {"type": "array", "items": {"type": "string"}}
}
}
}