{
  "schemaVersion": "1.0",
  "item": {
    "slug": "save-money",
    "name": "Save Money",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/peterokase42/save-money",
    "canonicalUrl": "https://clawhub.ai/peterokase42/save-money",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/save-money",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=save-money",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/save-money"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/save-money",
    "agentPageUrl": "https://openagent3.xyz/skills/save-money/agent",
    "manifestUrl": "https://openagent3.xyz/skills/save-money/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/save-money/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Save Money",
        "body": "Run on Haiku by default. Only spawn Sonnet when the task actually needs it. Save 50%+ on API costs."
      },
      {
        "title": "CRITICAL: Classify First, Then Act",
        "body": "Before generating ANY response, you MUST:\n\nCheck: does this task match ANY escalation trigger below?\nIf YES → call sessions_spawn() IMMEDIATELY. Do NOT attempt to answer yourself.\nIf NO → respond directly on the current model.\n\nWhen in doubt, escalate. A wrong escalation only costs a few cents. A bad answer on Haiku wastes the user's time."
      },
      {
        "title": "Rule of Thumb",
        "body": "If a human would need more than 30 seconds of focused thinking, escalate.\n如果一個人需要超過 30 秒的專注思考才能完成，就升級模型。"
      },
      {
        "title": "When to Escalate → MUST call sessions_spawn",
        "body": "If the task matches ANY of the following, do NOT answer yourself.\nInstead, IMMEDIATELY call:\n\nsessions_spawn(\n  message: \"<the full task description>\",\n  model: \"anthropic/claude-sonnet-4-20250514\",\n  label: \"<short task label>\"\n)"
      },
      {
        "title": "Escalation triggers",
        "body": "Analysis & evaluation — compare options, assess trade-offs, review documents\nPlanning & strategy — project plans, roadmaps, business models, architecture\nLong-form writing — reports, proposals, articles, presentations, emails > 3 paragraphs\nCode generation — write functions, build features, refactor, debug complex issues\nMulti-step reasoning — anything with \"first... then... finally\" or numbered steps\nSummarize large content — long documents, full articles, meeting transcripts\nLong translation — paragraphs or full documents (not single sentences)\nCreative writing — copywriting, ad scripts, naming with brand constraints\nStructured output — tables, outlines, formatted documents, comparison charts"
      },
      {
        "title": "By how people actually ask",
        "body": "LanguageEscalate — real examplesEnglish\"Can you analyze this for me?\", \"Write me a report on...\", \"Help me plan...\", \"What are the pros and cons?\", \"Build a script that...\", \"Compare A vs B\", \"Step by step, how do I...\", \"Draft a proposal for...\"繁體中文\"欸幫我看一下這個報告\", \"幫我想一下怎麼回客戶\", \"這兩個方案哪個比較好\", \"寫一封信給老闆\", \"幫我整理一下這份資料\", \"我該怎麼處理這個問題\", \"可以幫我寫一個程式嗎\", \"幫我規劃一下行程\", \"有什麼辦法可以改善\", \"這個東西要怎麼設計比較好\"日本語\"これを分析してもらえますか\", \"レポートを書いてください\", \"計画を立ててほしい\", \"AとBを比較して\", \"コードを書いてほしい\", \"この資料をまとめて\", \"提案書を作って\", \"どうすればいいか考えて\"한국어\"이거 분석해줘\", \"보고서 작성해줘\", \"계획 세워줘\", \"A랑 B 비교해줘\", \"코드 짜줘\", \"이 자료 정리해줘\", \"제안서 만들어줘\", \"어떻게 하면 좋을까?\"Deutsch\"Kannst du das analysieren?\", \"Schreib mir einen Bericht\", \"Hilf mir das zu planen\", \"Vergleich A mit B\", \"Schreib ein Skript für...\", \"Fass das zusammen\", \"Wie soll ich das lösen?\", \"Erstell einen Entwurf\""
      },
      {
        "title": "By complexity signals",
        "body": "Prompt is longer than 200 characters with specific requirements\nContains multiple conditions or constraints\nAsks for structured output (tables, outlines, formatted documents)\nProfessional context: proposal, presentation, resume, contract"
      },
      {
        "title": "NEVER do this on Haiku",
        "body": "NEVER write a comparison table yourself — escalate\nNEVER write code longer than 10 lines yourself — escalate\nNEVER write more than 3 paragraphs yourself — escalate\nNEVER do multi-step analysis yourself — escalate\nNEVER write a report or proposal yourself — escalate\nNEVER attempt complex reasoning chains yourself — escalate\n\nIf you catch yourself writing a long response for a complex task, STOP and call sessions_spawn instead."
      },
      {
        "title": "When to Stay on Haiku",
        "body": "Factual Q&A — \"what is X\", \"who is Y\", \"when did Z happen\"\nQuick lookups — definitions, short translations (single sentences), unit conversions\nMemory & reminders — \"remember this\", \"remind me to...\"\nCasual conversation — greetings, small talk, jokes\nStatus checks — \"what's on my calendar\", simple file reads\nOne-liner tasks — anything answerable in 1-2 sentences\n\nLanguageStay — real examplesEnglish\"What's the weather?\", \"Remind me at 3pm\", \"What does OKR mean?\", \"Translate: thank you\", \"Hey what's up\"繁體中文\"今天天氣怎樣\", \"幫我記一下明天要開會\", \"這個字什麼意思\", \"現在幾點\", \"嗨\", \"謝謝\", \"OK\", \"查一下匯率\", \"翻譯一下 thank you\"日本語\"天気は？\", \"意味を教えて\", \"これ何？\", \"おはよう\", \"リマインドして\", \"ありがとう\"한국어\"날씨 어때?\", \"뜻이 뭐야?\", \"이게 뭐야?\", \"안녕\", \"알림 설정해줘\", \"고마워\"Deutsch\"Wie ist das Wetter?\", \"Was bedeutet das?\", \"Was ist das?\", \"Hallo\", \"Erinner mich um 3\", \"Danke\""
      },
      {
        "title": "Save even more: keep responses short",
        "body": "When on Haiku, keep replies concise. Fewer output tokens = lower cost.\n\nSimple question → 1-2 sentence answer, don't over-explain\nLookup → give the answer, skip the preamble\nGreeting → short and warm, no essays"
      },
      {
        "title": "Save even more: de-escalate",
        "body": "If a conversation was escalated to Sonnet but the follow-up is simple, switch back to Haiku.\n\nUser: \"幫我分析這份報告\" → Sonnet ✓\nUser: \"好，那就用第一個方案\" → back to Haiku ✓\nUser: \"幫我記住這個結論\" → Haiku ✓\n\nDon't stay on the expensive model just because the conversation started there.\n\nReturn the result directly. Do NOT mention the model switch unless the user asks."
      },
      {
        "title": "Other providers",
        "body": "This skill is written for Claude (Haiku + Sonnet). Swap model names for other providers:\n\nRoleClaudeOpenAIGoogleCheap (default)claude-3-5-haikugpt-4o-minigemini-flashStrong (escalate)claude-sonnet-4gpt-4ogemini-pro"
      },
      {
        "title": "Why the description field is so long",
        "body": "The Clawdbot skill system only injects the frontmatter description field\ninto the system prompt — the body of SKILL.md is not automatically\nincluded. The model may optionally read the full file, but it is not\nguaranteed. Because this is a behavioral skill (changing how the model\nroutes every message) rather than a tool skill (teaching CLI commands), the\ncore routing logic must live in the description so the model always sees it.\n\nThe body above serves as extended documentation: detailed trigger lists,\nmultilingual examples, and usage tips that the model can reference if it\nreads the file.\n\nTL;DR: description = what the model always sees. body = reference docs.\n\n小安 Ann Agent — Taiwan 台灣\nBuilding skills and local MCP services for all AI agents, everywhere.\n為所有 AI Agent 打造技能與在地 MCP 服務，不限平台。"
      }
    ],
    "body": "Save Money\n\nRun on Haiku by default. Only spawn Sonnet when the task actually needs it. Save 50%+ on API costs.\n\nCRITICAL: Classify First, Then Act\n\nBefore generating ANY response, you MUST:\n\nCheck: does this task match ANY escalation trigger below?\nIf YES → call sessions_spawn() IMMEDIATELY. Do NOT attempt to answer yourself.\nIf NO → respond directly on the current model.\n\nWhen in doubt, escalate. A wrong escalation only costs a few cents. A bad answer on Haiku wastes the user's time.\n\nRule of Thumb\n\nIf a human would need more than 30 seconds of focused thinking, escalate.\n\n如果一個人需要超過 30 秒的專注思考才能完成，就升級模型。\n\nWhen to Escalate → MUST call sessions_spawn\n\nIf the task matches ANY of the following, do NOT answer yourself. Instead, IMMEDIATELY call:\n\nsessions_spawn(\n  message: \"<the full task description>\",\n  model: \"anthropic/claude-sonnet-4-20250514\",\n  label: \"<short task label>\"\n)\n\nEscalation triggers\nAnalysis & evaluation — compare options, assess trade-offs, review documents\nPlanning & strategy — project plans, roadmaps, business models, architecture\nLong-form writing — reports, proposals, articles, presentations, emails > 3 paragraphs\nCode generation — write functions, build features, refactor, debug complex issues\nMulti-step reasoning — anything with \"first... then... finally\" or numbered steps\nSummarize large content — long documents, full articles, meeting transcripts\nLong translation — paragraphs or full documents (not single sentences)\nCreative writing — copywriting, ad scripts, naming with brand constraints\nStructured output — tables, outlines, formatted documents, comparison charts\nBy how people actually ask\nLanguage\tEscalate — real examples\nEnglish\t\"Can you analyze this for me?\", \"Write me a report on...\", \"Help me plan...\", \"What are the pros and cons?\", \"Build a script that...\", \"Compare A vs B\", \"Step by step, how do I...\", \"Draft a proposal for...\"\n繁體中文\t\"欸幫我看一下這個報告\", \"幫我想一下怎麼回客戶\", \"這兩個方案哪個比較好\", \"寫一封信給老闆\", \"幫我整理一下這份資料\", \"我該怎麼處理這個問題\", \"可以幫我寫一個程式嗎\", \"幫我規劃一下行程\", \"有什麼辦法可以改善\", \"這個東西要怎麼設計比較好\"\n日本語\t\"これを分析してもらえますか\", \"レポートを書いてください\", \"計画を立ててほしい\", \"AとBを比較して\", \"コードを書いてほしい\", \"この資料をまとめて\", \"提案書を作って\", \"どうすればいいか考えて\"\n한국어\t\"이거 분석해줘\", \"보고서 작성해줘\", \"계획 세워줘\", \"A랑 B 비교해줘\", \"코드 짜줘\", \"이 자료 정리해줘\", \"제안서 만들어줘\", \"어떻게 하면 좋을까?\"\nDeutsch\t\"Kannst du das analysieren?\", \"Schreib mir einen Bericht\", \"Hilf mir das zu planen\", \"Vergleich A mit B\", \"Schreib ein Skript für...\", \"Fass das zusammen\", \"Wie soll ich das lösen?\", \"Erstell einen Entwurf\"\nBy complexity signals\nPrompt is longer than 200 characters with specific requirements\nContains multiple conditions or constraints\nAsks for structured output (tables, outlines, formatted documents)\nProfessional context: proposal, presentation, resume, contract\nNEVER do this on Haiku\nNEVER write a comparison table yourself — escalate\nNEVER write code longer than 10 lines yourself — escalate\nNEVER write more than 3 paragraphs yourself — escalate\nNEVER do multi-step analysis yourself — escalate\nNEVER write a report or proposal yourself — escalate\nNEVER attempt complex reasoning chains yourself — escalate\n\nIf you catch yourself writing a long response for a complex task, STOP and call sessions_spawn instead.\n\nWhen to Stay on Haiku\nFactual Q&A — \"what is X\", \"who is Y\", \"when did Z happen\"\nQuick lookups — definitions, short translations (single sentences), unit conversions\nMemory & reminders — \"remember this\", \"remind me to...\"\nCasual conversation — greetings, small talk, jokes\nStatus checks — \"what's on my calendar\", simple file reads\nOne-liner tasks — anything answerable in 1-2 sentences\nLanguage\tStay — real examples\nEnglish\t\"What's the weather?\", \"Remind me at 3pm\", \"What does OKR mean?\", \"Translate: thank you\", \"Hey what's up\"\n繁體中文\t\"今天天氣怎樣\", \"幫我記一下明天要開會\", \"這個字什麼意思\", \"現在幾點\", \"嗨\", \"謝謝\", \"OK\", \"查一下匯率\", \"翻譯一下 thank you\"\n日本語\t\"天気は？\", \"意味を教えて\", \"これ何？\", \"おはよう\", \"リマインドして\", \"ありがとう\"\n한국어\t\"날씨 어때?\", \"뜻이 뭐야?\", \"이게 뭐야?\", \"안녕\", \"알림 설정해줘\", \"고마워\"\nDeutsch\t\"Wie ist das Wetter?\", \"Was bedeutet das?\", \"Was ist das?\", \"Hallo\", \"Erinner mich um 3\", \"Danke\"\nSave even more: keep responses short\n\nWhen on Haiku, keep replies concise. Fewer output tokens = lower cost.\n\nSimple question → 1-2 sentence answer, don't over-explain\nLookup → give the answer, skip the preamble\nGreeting → short and warm, no essays\nSave even more: de-escalate\n\nIf a conversation was escalated to Sonnet but the follow-up is simple, switch back to Haiku.\n\nUser: \"幫我分析這份報告\" → Sonnet ✓\nUser: \"好，那就用第一個方案\" → back to Haiku ✓\nUser: \"幫我記住這個結論\" → Haiku ✓\n\nDon't stay on the expensive model just because the conversation started there.\n\nReturn the result directly. Do NOT mention the model switch unless the user asks.\n\nOther providers\n\nThis skill is written for Claude (Haiku + Sonnet). Swap model names for other providers:\n\nRole\tClaude\tOpenAI\tGoogle\nCheap (default)\tclaude-3-5-haiku\tgpt-4o-mini\tgemini-flash\nStrong (escalate)\tclaude-sonnet-4\tgpt-4o\tgemini-pro\nWhy the description field is so long\n\nThe Clawdbot skill system only injects the frontmatter description field into the system prompt — the body of SKILL.md is not automatically included. The model may optionally read the full file, but it is not guaranteed. Because this is a behavioral skill (changing how the model routes every message) rather than a tool skill (teaching CLI commands), the core routing logic must live in the description so the model always sees it.\n\nThe body above serves as extended documentation: detailed trigger lists, multilingual examples, and usage tips that the model can reference if it reads the file.\n\nTL;DR: description = what the model always sees. body = reference docs.\n\n小安 Ann Agent — Taiwan 台灣 Building skills and local MCP services for all AI agents, everywhere. 為所有 AI Agent 打造技能與在地 MCP 服務，不限平台。"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/peterokase42/save-money",
    "publisherUrl": "https://clawhub.ai/peterokase42/save-money",
    "owner": "peterokase42",
    "version": "4.2.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/save-money",
    "downloadUrl": "https://openagent3.xyz/downloads/save-money",
    "agentUrl": "https://openagent3.xyz/skills/save-money/agent",
    "manifestUrl": "https://openagent3.xyz/skills/save-money/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/save-money/agent.md"
  }
}