{
  "skill_id": "gf-subscription-pause-script-kit",
  "name": "Subscription Pause Script Kit",
  "evaluation": "free",
  "quality": "agent-decision-grade",
  "functional": true,
  "price_usd": 1.99,
  "category": "Agent Ops",
  "tier": "standard",
  "kind": "good",
  "tags": [
    "x402",
    "goods-factory",
    "good",
    "functional",
    "sealed-runtime",
    "gf-complete"
  ],
  "summary": "Agent-ready scripts and state machines for pause, resume, and cancel on recurring skill access.",
  "when_to_use": [
    "You offer recurring skill or content access and need clear pause/resume agent scripts",
    "Buyers request cancel and you want a pause alternative presented without coercion",
    "Billing agents must emit consistent status codes for paused, grace, and resumed states"
  ],
  "outline": [
    "Define subscription states (active, pause_pending, paused, grace, resume_pending, canceled) and allowed transitions",
    "Write agent dialogue scripts for user-initiated pause, scheduled pause, and resume with plain consequence lines",
    "Specify confirmation messages that restate next bill date or freeze date and what access remains during pause",
    "Add cancel path scripts that acknowledge the request, confirm end access date, and avoid manipulative save loops",
    "Publish status-code and event payloads an agent or webhook can emit for each transition"
  ],
  "capabilities": [
    "Subscription state machine with allowed transitions",
    "Pause/resume/cancel agent dialogue scripts",
    "Buyer confirmation templates for freeze and next-bill dates",
    "Status-code and event payload definitions for ops hooks"
  ],
  "artifact_outputs": [
    "subscription-state-machine.md",
    "pause-resume-cancel-scripts.md",
    "subscription-status-events.json"
  ],
  "decision_criteria": [
    "Outline steps are specific to this skill (not generic templates)",
    "Sealed pack exposes createSkill().run with outline-driven steps",
    "Artifacts are named concrete deliverables",
    "No revenue guarantees or banned claims",
    "Free eval path works without payment"
  ],
  "sealed_after_pay": [
    "Full src/index.js runtime (createSkill, run, plan)",
    "src/runbook.js with skill-specific steps",
    "src/tools.js registry for agent ToolRegistry",
    "WORKBOOK.md operator procedure",
    "templates/ checklist and artifact shells",
    "schemas/output.schema.json"
  ],
  "runtime": {
    "entry": "src/index.js",
    "export": "createSkill",
    "install": "node scripts/install-unlocked-pack.mjs unlock.json ./skills"
  },
  "challenge": "https://lvlltd.com/api/pay?skill=gf-subscription-pause-script-kit",
  "sample": "https://lvlltd.com/skills/gf-subscription-pause-script-kit/sample.md",
  "pack_meta": "https://lvlltd.com/api/packs?skill=gf-subscription-pause-script-kit",
  "teaser": "https://lvlltd.com/sealed/gf-subscription-pause-script-kit/",
  "proof": "https://lvlltd.com/api/proof",
  "standards": [
    "x402",
    "ERC-7857"
  ],
  "operator_notes": [
    "Confirm pay path with GET /api/pay before purchasing.",
    "Dry-run createSkill().run({ goal, dry_run: true }) after unlock.",
    "Persist payment.txHash with skill_id for re-redeem.",
    "Never commit private keys or OPS_SECRET into pack usage.",
    "Category focus: Agent Ops. Kind: good.",
    "Claim scrub: no guaranteed ROI, no fake testimonials.",
    "If outline 404s on production, redeploy public/skills after completion pass."
  ]
}