{
  "skill_id": "gf-q-canary-skill-picker",
  "name": "Canary Skill Picker Checklist",
  "evaluation": "free",
  "quality": "agent-decision-grade",
  "functional": true,
  "price_usd": 2.49,
  "category": "Agent Ops",
  "tier": "standard",
  "kind": "service",
  "tags": [
    "agent-ops",
    "service",
    "continuous",
    "x402",
    "quality-factory",
    "decision-grade",
    "functional",
    "sealed-runtime",
    "gf-complete"
  ],
  "summary": "Choose low-price skills for paid canaries without burning high-ticket SKUs.",
  "when_to_use": [
    "You need Canary Skill Picker Checklist as a concrete operator pack",
    "Catalog expansion in Agent Ops for agent buyers",
    "Preparing ship evidence without inventing revenue claims"
  ],
  "outline": [
    "Define the exact operator outcome for \"Canary Skill Picker Checklist\" in one measurable sentence",
    "List required live inputs (URLs, skill ids, wallet roles) specific to Agent Ops",
    "Run the Canary Skill Picker Checklist checks against SMOKE_BASE endpoints and record PASS/FAIL with classes",
    "Validate outputs against decision criteria and reject incomplete artifacts",
    "Package deliverables (service) with free-outline pointers and x402 pay path links"
  ],
  "capabilities": [
    "Canary Skill Picker Checklist workflow",
    "Decision-grade outline and free sample",
    "Named artifact outputs after unlock",
    "x402 Base USDC pay path ready"
  ],
  "artifact_outputs": [
    "gf-q-canary-skill-picker-primary.md",
    "gf-q-canary-skill-picker-checklist.json",
    "gf-q-canary-skill-picker-operator-notes.md"
  ],
  "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-q-canary-skill-picker",
  "sample": "https://lvlltd.com/skills/gf-q-canary-skill-picker/sample.md",
  "pack_meta": "https://lvlltd.com/api/packs?skill=gf-q-canary-skill-picker",
  "teaser": "https://lvlltd.com/sealed/gf-q-canary-skill-picker/",
  "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: service.",
    "Claim scrub: no guaranteed ROI, no fake testimonials.",
    "If outline 404s on production, redeploy public/skills after completion pass."
  ]
}