[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7DMKTPHMNKHCF5XMJZ5MWWK":3,"skill-same:01M7DMKTPHMNKHCF5XMJZ5MWWK":221},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":24,"commitSha":25,"skillDirectory":26,"forksCount":27,"repositoryHtmlUrl":28,"repositoryHomepageUrl":6,"ownerHtmlUrl":29,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":30,"install":31,"resources":44},"01M7DMKTPHMNKHCF5XMJZ5MWWK","mai-agent-hillclimb",null,"Scaffolds and deploys MAI-powered hosted agents on Microsoft Foundry, measures a baseline, runs Agent Optimizer, calibrates endpoint\u002Ftool graders and guarded reinforcement fine-tuning, and verifies quality, latency, and cost. Use for hosted-agent onboarding, agent optimization, RFT experiment planning, checkpoint comparisons, and token-cost calculations for any use case.","AliciaFrame\u002Fshoppingbench-foundry","AliciaFrame","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F48333261?v=4","01M7DMKRXMS53RXZ0SB5ZYPSDR","Alicia Frame","01M7DMKRYPKETZZEZAG82XES61",19,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: mai-agent-hillclimb\ndescription: >-\n  Scaffolds and deploys MAI-powered hosted agents on Microsoft Foundry, measures a\n  baseline, runs Agent Optimizer, calibrates endpoint\u002Ftool graders and guarded\n  reinforcement fine-tuning, and verifies quality, latency, and cost.\n  Use for hosted-agent onboarding, agent optimization, RFT experiment planning,\n  checkpoint comparisons, and token-cost calculations for any use case.\nlicense: Apache-2.0\n---\n\n# MAI-agent-hillclimb\n\nRun a measured journey: **set up -> baseline -> Agent Optimizer -> justified\nRFT -> select and verify**. This skill is self-contained: it does not require\nanother Foundry skill, this repository's Python package, or a shopping domain.\nMAI is the intended policy model family, not a hardcoded model deployment or\nversion. Respect an explicitly selected compatible model.\n\nAll links below are relative to this skill directory, called `SKILL_ROOT`.\nCommands execute in the user's selected agent project, not necessarily this\nrepository. Never assume that an example's tools, data, models, or resource\nidentifiers exist in that project.\n\n## Entry and context\n\n1. Identify the requested phase and the selected agent root\u002Fenvironment.\n   Inspect only that root's code, deployment manifest, and `.foundry` metadata.\n   Resolve supplied values first; ask only for unresolved choices. If several\n   agent roots or environments are plausible, require an explicit selection.\n2. Read [the project contract](references\u002Fcontract.md). Record the use case,\n   agent\u002Fruntime, tools, evaluator, datasets, target metrics, budget, and\n   acceptance policy before changing weights or searching configurations.\n3. Discover available interfaces. If Azure MCP is installed, retrieve current\n   Foundry tools and schemas before calling them. Otherwise use the documented\n   Azure CLI, azd, SDK, or REST paths in the phase references. Another skill is\n   optional, never a prerequisite.\n   Discover pricing, quota, RBAC and Bicep routers as applicable too; do not\n   assume every Azure MCP installation exposes a Foundry router or identical\n   command names. Use the CLI\u002FSDK fallback when a needed router is absent.\n4. Reuse sound project adapters. For missing pieces, use\n   [the executable runbook](references\u002Frunbook.md): it bundles a hosted starter,\n   domain\u002Ftool hooks, canonical grader, optimizer evaluator, authenticated\n   endpoint service, provisioning templates, and guarded CLI paths.\n   Customize the rubric and datasets; never substitute example-domain quality.\n5. Resume from evidence under `.foundry\u002Fhillclimb\u002F\u003Crun-id>`, not remembered job\n   names. Check recorded code, data, model, evaluator, and pricing fingerprints.\n   A changed contract starts a new run; never silently mix receipts.\n\n## Phase routing\n\nFor an existing optimization-ready hosted agent, start with the\n[ordinary SDK happy path](references\u002Frunbook.md#existing-agent-sdk-happy-path):\n**plain smoke -> built-in optimization -> monitor -> isolated candidate**.\nIt needs no custom evaluator registration, signing key or RFT service.\nUse rich capture only when needed for independent evaluation; custom rubrics,\ngraders and RFT remain advanced opt-in paths.\n\nUse [the executable runbook](references\u002Frunbook.md) for the actual commands and\nbundled interfaces; phase references below provide the decision and evidence\nrequirements. No repository code or additional skill is needed.\n\nFor a new project, start with the bundled scaffold, then adapt its domain hooks:\n\n```powershell\npython \u003CSKILL_ROOT>\\scripts\\journey.py scaffold --output \u003Cnew-agent-project>\n```\n\n| Phase | Required reference | Exit evidence |\n|---|---|---|\n| Create\u002Fconnect project, models, hosted agent, tools | [Setup and deployment](references\u002Fsetup.md) | Active version, identities\u002Fpermissions, successful real smoke invocation |\n| Freeze and evaluate baseline | [Baseline and optimization](references\u002Fbaseline-optimize.md) | Complete development receipts, quality\u002Flatency\u002Fusage\u002Fcost report |\n| Search agent configurations | [Baseline and optimization](references\u002Fbaseline-optimize.md) | Nominated candidates independently evaluated and retained under the acceptance policy |\n| Calibrate and train if warranted | [RFT](references\u002Frft.md) | Validated data, calibrated reward, parity check, approved job and monitoring evidence |\n| Compare checkpoints and verify final selection | [Selection and verification](references\u002Fselect-verify.md) | Selected configuration\u002Fweights, matched comparison, sealed final result, deployment smoke test |\n| Retrieve prices and compute costs, at every phase | [Pricing and cost](references\u002Fpricing.md) | Dated source-backed price snapshot, measured-usage report, completeness and estimate labels |\n| Diagnose blocked or failed steps | [Troubleshooting](references\u002Ftroubleshooting.md) | Explicit cause and a validated repair; no success-shaped fallback |\n\nOnly read the references needed for the current phase. A user can stop after\nbaseline or configuration optimization. RFT is optional, not the definition\nof success.\n\n## Gates that apply throughout\n\n- **Approval:** resource creation, permission grants, deployments, model\n  inference, optimizer jobs, training, and checkpoint hosting can be billable\n  or consequential. Confirm the scope, spending cap, and authorization before\n  executing them. Do not pre-approve unrestricted shell tools in this skill.\n- **Quality:** choose the evaluator before optimization. It may be a\n  deterministic test suite, calibrated semantic judge, human rubric, or a\n  combination. The same quality definition must compare all stages.\n  For grounded generation, verify claim-level support from observed evidence:\n  valid citations alone are not faithfulness. Calibrate semantic grading or\n  source review with valid-link\u002Funsupported-claim negative examples.\n- **Evidence:** include every scheduled episode in results. Preserve failed\n  episodes, observed per-call usage, elapsed time, and explicit errors.\n  Missing usage is unknown, not evidence of free inference. Retry transport\n  requests within a bounded policy, not successful samples until they win.\n- **Isolation:** keep optimizer search, RFT training\u002Fvalidation, development\n  selection, and sealed final data disjoint by the relevant connected group\n  (customer, document, session, entity, tool state, or other domain unit).\n- **Calibration:** training reward is not automatically evaluation quality.\n  Prove that it distinguishes desirable behavior, preserves important\n  invariants, and offers within-example variation before RFT.\n- **Selection:** set quality, safety, latency, and cost trade-offs in advance.\n  Neither an optimizer's judge score nor the final training checkpoint is an\n  automatic winner.\n- **Final test:** persist selection and `final_test_started` before inference.\n  Never reopen the final split to tune or pick a different candidate.\n- **Credentials:** use managed identity\u002FEntra where supported. Store secret\n  references, not secrets, in metadata or reports. Historical resource\u002Fjob\n  IDs are evidence, not configuration.\n- **Evaluation boundary:** ordinary hosted deployments do not unwrap workload\n  envelopes or expose rich traces. Isolated evaluation deployments require\n  explicit server opt-in and signed capture requests backed by a secret-store\n  key; request metadata alone never authorizes trace export.\n- **State:** record pending\u002Frunning\u002Fcompleted\u002Ffailed operations and their IDs\n  immediately. A monitoring timeout is not permission to submit another job.\n  Clean up only resources or processes explicitly created for the run and\n  approved for deletion; do not remove shared infrastructure.\n  A disconnected local monitor is not a failed cloud job. Resume the recorded\n  ID after repairing access; never submit a replacement to recover monitoring.\n\n## Self-contained local cost tool\n\nRead the pricing reference before normalizing provider usage. The helper uses\nonly Python's standard library and makes **no network, model, or deployment\ncalls**:\n\n```powershell\npython \u003CSKILL_ROOT>\\scripts\\cost_report.py `\n  --receipts \u003Crun-directory>\\episodes.jsonl `\n  --prices \u003Crun-directory>\\prices.json `\n  --output \u003Crun-directory>\\cost-report.json\n```\n\nIt supports multiple models\u002Fcall purposes, cached reads and writes, explicit\ncontext tiers, incomplete usage\u002Frates, and separate run-level charges. It does\nnot fetch or invent prices, judge quality, or approve cloud actions.\nFor matched baseline\u002Foptimized\u002FRFT savings, add `--baseline-stage` and supply\neach stage's receipts. The pricing reference covers operation-ledger ingestion,\ncost per successful task, savings, and guarded break-even\u002FROI projections.\n\nAn offline demonstration is included:\n\n```powershell\npython \u003CSKILL_ROOT>\\scripts\\cost_report.py `\n  --receipts \u003CSKILL_ROOT>\\examples\\episodes.synthetic.jsonl `\n  --prices \u003CSKILL_ROOT>\\examples\\prices.synthetic.json\n```\n\nThose rates are deliberately synthetic, not a current MAI price quote.\nUse [the optional ShoppingBench example](references\u002Fshoppingbench.md) only\nwhen the user chooses that domain.\n","# MAI-agent-hillclimb\n\nRun a measured journey: **set up -> baseline -> Agent Optimizer -> justified\nRFT -> select and verify**. This skill is self-contained: it does not require\nanother Foundry skill, this repository's Python package, or a shopping domain.\nMAI is the intended policy model family, not a hardcoded model deployment or\nversion. Respect an explicitly selected compatible model.\n\nAll links below are relative to this skill directory, called `SKILL_ROOT`.\nCommands execute in the user's selected agent project, not necessarily this\nrepository. Never assume that an example's tools, data, models, or resource\nidentifiers exist in that project.\n\n## Entry and context\n\n1. Identify the requested phase and the selected agent root\u002Fenvironment.\n   Inspect only that root's code, deployment manifest, and `.foundry` metadata.\n   Resolve supplied values first; ask only for unresolved choices. If several\n   agent roots or environments are plausible, require an explicit selection.\n2. Read [the project contract](references\u002Fcontract.md). Record the use case,\n   agent\u002Fruntime, tools, evaluator, datasets, target metrics, budget, and\n   acceptance policy before changing weights or searching configurations.\n3. Discover available interfaces. If Azure MCP is installed, retrieve current\n   Foundry tools and schemas before calling them. Otherwise use the documented\n   Azure CLI, azd, SDK, or REST paths in the phase references. Another skill is\n   optional, never a prerequisite.\n   Discover pricing, quota, RBAC and Bicep routers as applicable too; do not\n   assume every Azure MCP installation exposes a Foundry router or identical\n   command names. Use the CLI\u002FSDK fallback when a needed router is absent.\n4. Reuse sound project adapters. For missing pieces, use\n   [the executable runbook](references\u002Frunbook.md): it bundles a hosted starter,\n   domain\u002Ftool hooks, canonical grader, optimizer evaluator, authenticated\n   endpoint service, provisioning templates, and guarded CLI paths.\n   Customize the rubric and datasets; never substitute example-domain quality.\n5. Resume from evidence under `.foundry\u002Fhillclimb\u002F\u003Crun-id>`, not remembered job\n   names. Check recorded code, data, model, evaluator, and pricing fingerprints.\n   A changed contract starts a new run; never silently mix receipts.\n\n## Phase routing\n\nFor an existing optimization-ready hosted agent, start with the\n[ordinary SDK happy path](references\u002Frunbook.md#existing-agent-sdk-happy-path):\n**plain smoke -> built-in optimization -> monitor -> isolated candidate**.\nIt needs no custom evaluator registration, signing key or RFT service.\nUse rich capture only when needed for independent evaluation; custom rubrics,\ngraders and RFT remain advanced opt-in paths.\n\nUse [the executable runbook](references\u002Frunbook.md) for the actual commands and\nbundled interfaces; phase references below provide the decision and evidence\nrequirements. No repository code or additional skill is needed.\n\nFor a new project, start with the bundled scaffold, then adapt its domain hooks:\n\n```powershell\npython \u003CSKILL_ROOT>\\scripts\\journey.py scaffold --output \u003Cnew-agent-project>\n```\n\n| Phase | Required reference | Exit evidence |\n|---|---|---|\n| Create\u002Fconnect project, models, hosted agent, tools | [Setup and deployment](references\u002Fsetup.md) | Active version, identities\u002Fpermissions, successful real smoke invocation |\n| Freeze and evaluate baseline | [Baseline and optimization](references\u002Fbaseline-optimize.md) | Complete development receipts, quality\u002Flatency\u002Fusage\u002Fcost report |\n| Search agent configurations | [Baseline and optimization](references\u002Fbaseline-optimize.md) | Nominated candidates independently evaluated and retained under the acceptance policy |\n| Calibrate and train if warranted | [RFT](references\u002Frft.md) | Validated data, calibrated reward, parity check, approved job and monitoring evidence |\n| Compare checkpoints and verify final selection | [Selection and verification](references\u002Fselect-verify.md) | Selected configuration\u002Fweights, matched comparison, sealed final result, deployment smoke test |\n| Retrieve prices and compute costs, at every phase | [Pricing and cost](references\u002Fpricing.md) | Dated source-backed price snapshot, measured-usage report, completeness and estimate labels |\n| Diagnose blocked or failed steps | [Troubleshooting](references\u002Ftroubleshooting.md) | Explicit cause and a validated repair; no success-shaped fallback |\n\nOnly read the references needed for the current phase. A user can stop after\nbaseline or configuration optimization. RFT is optional, not the definition\nof success.\n\n## Gates that apply throughout\n\n- **Approval:** resource creation, permission grants, deployments, model\n  inference, optimizer jobs, training, and checkpoint hosting can be billable\n  or consequential. Confirm the scope, spending cap, and authorization before\n  executing them. Do not pre-approve unrestricted shell tools in this skill.\n- **Quality:** choose the evaluator before optimization. It may be a\n  deterministic test suite, calibrated semantic judge, human rubric, or a\n  combination. The same quality definition must compare all stages.\n  For grounded generation, verify claim-level support from observed evidence:\n  valid citations alone are not faithfulness. Calibrate semantic grading or\n  source review with valid-link\u002Funsupported-claim negative examples.\n- **Evidence:** include every scheduled episode in results. Preserve failed\n  episodes, observed per-call usage, elapsed time, and explicit errors.\n  Missing usage is unknown, not evidence of free inference. Retry transport\n  requests within a bounded policy, not successful samples until they win.\n- **Isolation:** keep optimizer search, RFT training\u002Fvalidation, development\n  selection, and sealed final data disjoint by the relevant connected group\n  (customer, document, session, entity, tool state, or other domain unit).\n- **Calibration:** training reward is not automatically evaluation quality.\n  Prove that it distinguishes desirable behavior, preserves important\n  invariants, and offers within-example variation before RFT.\n- **Selection:** set quality, safety, latency, and cost trade-offs in advance.\n  Neither an optimizer's judge score nor the final training checkpoint is an\n  automatic winner.\n- **Final test:** persist selection and `final_test_started` before inference.\n  Never reopen the final split to tune or pick a different candidate.\n- **Credentials:** use managed identity\u002FEntra where supported. Store secret\n  references, not secrets, in metadata or reports. Historical resource\u002Fjob\n  IDs are evidence, not configuration.\n- **Evaluation boundary:** ordinary hosted deployments do not unwrap workload\n  envelopes or expose rich traces. Isolated evaluation deployments require\n  explicit server opt-in and signed capture requests backed by a secret-store\n  key; request metadata alone never authorizes trace export.\n- **State:** record pending\u002Frunning\u002Fcompleted\u002Ffailed operations and their IDs\n  immediately. A monitoring timeout is not permission to submit another job.\n  Clean up only resources or processes explicitly created for the run and\n  approved for deletion; do not remove shared infrastructure.\n  A disconnected local monitor is not a failed cloud job. Resume the recorded\n  ID after repairing access; never submit a replacement to recover monitoring.\n\n## Self-contained local cost tool\n\nRead the pricing reference before normalizing provider usage. The helper uses\nonly Python's standard library and makes **no network, model, or deployment\ncalls**:\n\n```powershell\npython \u003CSKILL_ROOT>\\scripts\\cost_report.py `\n  --receipts \u003Crun-directory>\\episodes.jsonl `\n  --prices \u003Crun-directory>\\prices.json `\n  --output \u003Crun-directory>\\cost-report.json\n```\n\nIt supports multiple models\u002Fcall purposes, cached reads and writes, explicit\ncontext tiers, incomplete usage\u002Frates, and separate run-level charges. It does\nnot fetch or invent prices, judge quality, or approve cloud actions.\nFor matched baseline\u002Foptimized\u002FRFT savings, add `--baseline-stage` and supply\neach stage's receipts. The pricing reference covers operation-ledger ingestion,\ncost per successful task, savings, and guarded break-even\u002FROI projections.\n\nAn offline demonstration is included:\n\n```powershell\npython \u003CSKILL_ROOT>\\scripts\\cost_report.py `\n  --receipts \u003CSKILL_ROOT>\\examples\\episodes.synthetic.jsonl `\n  --prices \u003CSKILL_ROOT>\\examples\\prices.synthetic.json\n```\n\nThose rates are deliberately synthetic, not a current MAI price quote.\nUse [the optional ShoppingBench example](references\u002Fshoppingbench.md) only\nwhen the user chooses that domain.\n",{"name":5,"license":15,"description":7},"main","a6d2cf7aa5af910944c9f71acb72ba805766aa9a",".github\u002Fskills\u002Fmai-agent-hillclimb",8,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry","https:\u002F\u002Fgithub.com\u002FAliciaFrame","2026-10-22 09:08:57",{"source":8,"skillName":5,"commands":32,"prompt":42,"zipAvailable":43},[33,36,39],{"tool":34,"command":35},"npx","npx skills add AliciaFrame\u002Fshoppingbench-foundry --skill mai-agent-hillclimb",{"tool":37,"command":38},"bunx","bunx skills add AliciaFrame\u002Fshoppingbench-foundry --skill mai-agent-hillclimb",{"tool":40,"command":41},"pnpm","pnpm dlx skills add AliciaFrame\u002Fshoppingbench-foundry --skill mai-agent-hillclimb","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002FSKILL.md",true,[45,51,55,59,63,69,73,77,81,85,89,93,97,101,105,109,113,117,121,125,131,135,139,145,149,153,157,161,165,169,173,177,181,185,189,193,197,201,205,209,213,217],{"path":46,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":49,"sourceHtmlUrl":50},"assets\u002Finference-role.bicep","ASSET","资产文件",624,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Finference-role.bicep",{"path":52,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":53,"sourceHtmlUrl":54},"assets\u002Fproject.bicep",875,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fproject.bicep",{"path":56,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":57,"sourceHtmlUrl":58},"assets\u002Fstarter\u002F.agentignore",112,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002F.agentignore",{"path":60,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":61,"sourceHtmlUrl":62},"assets\u002Fstarter\u002F.dockerignore",83,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002F.dockerignore",{"path":64,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":67,"sourceHtmlUrl":68},"assets\u002Fstarter\u002Fagent.py","SCRIPT","脚本",11120,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Fagent.py",{"path":70,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":71,"sourceHtmlUrl":72},"assets\u002Fstarter\u002Fazure.yaml",35,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Fazure.yaml",{"path":74,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":75,"sourceHtmlUrl":76},"assets\u002Fstarter\u002FDockerfile",306,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002FDockerfile",{"path":78,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":79,"sourceHtmlUrl":80},"assets\u002Fstarter\u002Fdomain.py",976,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Fdomain.py",{"path":82,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":83,"sourceHtmlUrl":84},"assets\u002Fstarter\u002Fevaluation_auth.py",5592,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Fevaluation_auth.py",{"path":86,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":87,"sourceHtmlUrl":88},"assets\u002Fstarter\u002Fevaluator.md",586,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Fevaluator.md",{"path":90,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":91,"sourceHtmlUrl":92},"assets\u002Fstarter\u002Fgrader.py",1805,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Fgrader.py",{"path":94,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":95,"sourceHtmlUrl":96},"assets\u002Fstarter\u002Fhosted_eval.py",7060,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Fhosted_eval.py",{"path":98,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":99,"sourceHtmlUrl":100},"assets\u002Fstarter\u002Finstructions.md",199,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Finstructions.md",{"path":102,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":103,"sourceHtmlUrl":104},"assets\u002Fstarter\u002Fjudge-rubric.md",1206,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Fjudge-rubric.md",{"path":106,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":107,"sourceHtmlUrl":108},"assets\u002Fstarter\u002Fmetadata.yaml",79,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Fmetadata.yaml",{"path":110,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":111,"sourceHtmlUrl":112},"assets\u002Fstarter\u002Frequirements.txt",244,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Frequirements.txt",{"path":114,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":115,"sourceHtmlUrl":116},"assets\u002Fstarter\u002Fsemantic_grader.py",2520,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Fsemantic_grader.py",{"path":118,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":119,"sourceHtmlUrl":120},"assets\u002Fstarter\u002Fservice.py",3457,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Fservice.py",{"path":122,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":123,"sourceHtmlUrl":124},"assets\u002Fstarter\u002Fworkload.py",3678,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fassets\u002Fstarter\u002Fworkload.py",{"path":126,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":129,"sourceHtmlUrl":130},"examples\u002Facceptance-results.json","REFERENCE","参考文档",5333,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fexamples\u002Facceptance-results.json",{"path":132,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":133,"sourceHtmlUrl":134},"examples\u002Fcloud.builtin.example.json",688,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fexamples\u002Fcloud.builtin.example.json",{"path":136,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":137,"sourceHtmlUrl":138},"examples\u002Fcloud.example.json",3379,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fexamples\u002Fcloud.example.json",{"path":140,"resourceType":141,"resourceTypeDesc":142,"sizeBytes":143,"sourceHtmlUrl":144},"examples\u002Fepisodes.synthetic.jsonl","OTHER","其他",1379,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fexamples\u002Fepisodes.synthetic.jsonl",{"path":146,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":147,"sourceHtmlUrl":148},"examples\u002Foperations.example.json",900,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fexamples\u002Foperations.example.json",{"path":150,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":151,"sourceHtmlUrl":152},"examples\u002Fprices.synthetic.json",707,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fexamples\u002Fprices.synthetic.json",{"path":154,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":155,"sourceHtmlUrl":156},"examples\u002Fproject-contract.example.json",1697,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fexamples\u002Fproject-contract.example.json",{"path":158,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":159,"sourceHtmlUrl":160},"references\u002Fbaseline-optimize.md",5094,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Freferences\u002Fbaseline-optimize.md",{"path":162,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":163,"sourceHtmlUrl":164},"references\u002Fcontract.md",4699,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Freferences\u002Fcontract.md",{"path":166,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":167,"sourceHtmlUrl":168},"references\u002Fpricing.md",9919,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Freferences\u002Fpricing.md",{"path":170,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":171,"sourceHtmlUrl":172},"references\u002Frft.md",5793,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Freferences\u002Frft.md",{"path":174,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":175,"sourceHtmlUrl":176},"references\u002Frunbook.md",35277,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Freferences\u002Frunbook.md",{"path":178,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":179,"sourceHtmlUrl":180},"references\u002Fselect-verify.md",2901,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Freferences\u002Fselect-verify.md",{"path":182,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":183,"sourceHtmlUrl":184},"references\u002Fsetup.md",8340,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Freferences\u002Fsetup.md",{"path":186,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":187,"sourceHtmlUrl":188},"references\u002Fshoppingbench.md",1514,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Freferences\u002Fshoppingbench.md",{"path":190,"resourceType":127,"resourceTypeDesc":128,"sizeBytes":191,"sourceHtmlUrl":192},"references\u002Ftroubleshooting.md",6321,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Freferences\u002Ftroubleshooting.md",{"path":194,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":195,"sourceHtmlUrl":196},"scripts\u002Fcloud.py",81878,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fscripts\u002Fcloud.py",{"path":198,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":199,"sourceHtmlUrl":200},"scripts\u002Fcost_report.py",27190,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fscripts\u002Fcost_report.py",{"path":202,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":203,"sourceHtmlUrl":204},"scripts\u002Fevaluator_adapter.py",1777,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fscripts\u002Fevaluator_adapter.py",{"path":206,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":207,"sourceHtmlUrl":208},"scripts\u002Fhosted_ops.py",14894,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fscripts\u002Fhosted_ops.py",{"path":210,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":211,"sourceHtmlUrl":212},"scripts\u002Fjourney.py",38574,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fscripts\u002Fjourney.py",{"path":214,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":215,"sourceHtmlUrl":216},"scripts\u002Foptimizer_results.py",5429,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fscripts\u002Foptimizer_results.py",{"path":218,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":219,"sourceHtmlUrl":220},"scripts\u002Frequirements-cloud.txt",88,"https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fmai-agent-hillclimb\u002Fscripts\u002Frequirements-cloud.txt",[222,229,236,243,250,255],{"skillNo":223,"name":224,"nameZh":6,"description":225,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":226,"categories":227,"keywords":228,"publishedAt":19},"01M7DMMZMYVQC8FANRT9ZWX25X","knowledge-shopping","Resolves a factual clue before searching for a matching product.","https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002Foptimize\u002Fseeds\u002Fweb\u002Fround2\u002Fskills\u002Fknowledge-shopping\u002FSKILL.md",[],[],{"skillNo":230,"name":231,"nameZh":6,"description":232,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":233,"categories":234,"keywords":235,"publishedAt":19},"01M7DMMY42WWW3H95PN4DG06C7","voucher-budget","Applies platform or shop voucher arithmetic to a product set.","https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002Foptimize\u002Fseeds\u002Fvoucher\u002Fround2\u002Fskills\u002Fvoucher-budget\u002FSKILL.md",[],[],{"skillNo":237,"name":238,"nameZh":6,"description":239,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":240,"categories":241,"keywords":242,"publishedAt":19},"01M7DMMTJD3NAVEQHQQ83SBJSN","same-shop","Finds multiple requested products sold by one shared shop.","https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002Foptimize\u002Fseeds\u002Fshop\u002Fround2\u002Fskills\u002Fsame-shop\u002FSKILL.md",[],[],{"skillNo":244,"name":245,"nameZh":6,"description":246,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":247,"categories":248,"keywords":249,"publishedAt":19},"01M7DMMRPHC122GWF00HFPBNQV","product-selection","Selects one catalog product for a constrained shopping request.","https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002Foptimize\u002Fseeds\u002Fproduct\u002Fround2\u002Fskills\u002Fproduct-selection\u002FSKILL.md",[],[],{"skillNo":251,"name":224,"nameZh":6,"description":225,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":252,"categories":253,"keywords":254,"publishedAt":19},"01M7DMMNAATA31CPCQBCT7HE14","https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002Fagents\u002Fweb\u002Foptimized\u002Fskills\u002Fknowledge-shopping\u002FSKILL.md",[],[],{"skillNo":256,"name":224,"nameZh":6,"description":225,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":257,"categories":258,"keywords":259,"publishedAt":19},"01M7DMMHQ0SR6S9E4N9ZZ72ERX","https:\u002F\u002Fgithub.com\u002FAliciaFrame\u002Fshoppingbench-foundry\u002Fblob\u002Fmain\u002Fagents\u002Fweb\u002Fbaseline\u002Fskills\u002Fknowledge-shopping\u002FSKILL.md",[],[]]