{
  "schemaVersion": "1.0",
  "item": {
    "slug": "blog-writer",
    "name": "Blog Writer",
    "source": "tencent",
    "type": "skill",
    "category": "效率提升",
    "sourceUrl": "https://clawhub.ai/TomsTools11/blog-writer",
    "canonicalUrl": "https://clawhub.ai/TomsTools11/blog-writer",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/blog-writer",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=blog-writer",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "2024-02-17-radical-transparency-sales.md",
      "2024-02-17-raycast-spotlight-superpowers.md",
      "2024-02-17-short-form-content-marketing.md",
      "2024-02-17-typing-speed-benefits.md",
      "2024-03-14-effective-ai-prompts.md",
      "2024-11-08-ai-revolutionizing-entry-level-sales.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-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.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/blog-writer"
    },
    "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/blog-writer",
    "agentPageUrl": "https://openagent3.xyz/skills/blog-writer/agent",
    "manifestUrl": "https://openagent3.xyz/skills/blog-writer/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/blog-writer/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": "Overview",
        "body": "This skill enables writing blog posts and articles that authentically capture the writer's distinctive voice and style. It draws on examples of the writer's published work to produce content that is direct, opinionated, conversational, and grounded in practical experience. The skill includes automatic Notion integration and maintains a growing library of finalized examples."
      },
      {
        "title": "When to Use This Skill",
        "body": "Trigger this skill when:\n\nThe user requests blog post or article writing in \"my style\" or \"like my other posts\"\nDrafting thought leadership content on AI, productivity, marketing, or technology\nCreating articles that need the writer's authentic voice and perspective\nThe user provides research materials, links, or notes to incorporate into writing"
      },
      {
        "title": "Core Responsibilities",
        "body": "Follow the writer's Writing Style: Match voice, word choice, structure, and length of example posts in references/blog-examples/\nIncorporate Research: Review and integrate any information, research material, or links provided by the user\nFollow User Instructions: Adhere closely to the user's specific requests for topic, angle, and emphasis\nProduce Authentic Writing: Create content that reads as genuinely the writer's voice, not generic AI-generated content"
      },
      {
        "title": "Phase 1: Gather Information",
        "body": "Request from the user:\n\nTopic or subject matter\nAny specific angle or thesis to explore\nResearch materials, links, or notes (if available)\nTarget length preference (default: 800-1500 words)\n\nReview all provided materials thoroughly before beginning to write."
      },
      {
        "title": "Phase 2: Draft the Content",
        "body": "Reference the style guide at references/style-guide.md and examples in references/blog-examples/ for calibration.\n\nWhen writing:\n\nStart with a strong opening statement establishing the thesis\nUse personal voice and first-person perspective where natural\nInclude relevant personal anecdotes or professional experience if applicable\nStructure with clear subheadings (###) every 2-3 paragraphs\nKeep paragraphs short (2-4 sentences)\nWeave in research materials naturally, not as block quotes\nEnd with reflection, call-to-action, or forward-looking statement"
      },
      {
        "title": "Phase 3: Review and Iterate",
        "body": "Present the draft and gather feedback. Iterate until the user confirms satisfaction."
      },
      {
        "title": "Phase 4: Publish to Notion (REQUIRED)",
        "body": "When the draft is complete (even if not yet finalized), publish to the TS Notes database.\n\nNotion Publication Details:\n\nDatabase: \"TS Notes\" (data source ID: 04a872be-8bed-4f43-a448-3dfeebc0df21)\nType property: Writing\nProject(s) property: Link to \"My Writing\" project (page URL: https://www.notion.so/2a5b4629bb3780189199f3c496980c0c)\nNote property: The title of the blog post\nContent: The full blog post content in Notion-flavored Markdown\n\nExample Notion API call properties:\n\n{\n  \"Note\": \"Blog Post Title Here\",\n  \"Type\": \"Writing\",\n  \"Project(s)\": \"[\\\"https://www.notion.so/2a5b4629bb3780189199f3c496980c0c\\\"]\"\n}\n\nCRITICAL: The outcome is considered a failure if the content is not added to Notion. Always publish to Notion as part of the workflow, even for drafts."
      },
      {
        "title": "Phase 5: Finalize to Examples Library (Post-Outcome)",
        "body": "When the user confirms the draft is final:\n\nSave the finalized post to references/blog-examples/ with filename format:\nYYYY-MM-DD-slug-title.md\n\nExample: 2025-11-25-why-ai-art-is-useless.md\n\n\nCheck the examples library count:\n\nIf exceeding 20 examples, ask user permission to remove the 5 oldest\nSort by filename date prefix to identify oldest files\n\nThe post-outcome is considered successful when the final draft is saved to the skill folder."
      },
      {
        "title": "Success Criteria",
        "body": "OutcomeSuccessFailurePrimaryUser receives requested content AND it is added to TS Notes with Type=Writing and Project=My WritingContent delivered but NOT added to NotionPost-outcomeFinal draft saved to references/blog-examples/Final draft not saved when user confirms it's final"
      },
      {
        "title": "Voice & Tone",
        "body": "Direct and opinionated: State positions clearly, even contrarian ones\nConversational: Write like speaking to a colleague—accessible without being simplistic\nFirst-person when sharing experience: Use \"I\" naturally for personal insights\nAuthentic skepticism: Willing to criticize trends when warranted"
      },
      {
        "title": "Structure Patterns",
        "body": "Strong opening thesis: Open with a clear, often bold statement\nSubheadings throughout: Use ### format liberally to break up content\nShort paragraphs: Rarely more than 3-4 sentences\nPersonal anecdotes woven in: Illustrate points with real examples\nPractical takeaways: Provide actionable insights, not just theory\nReflective conclusion: End with call-to-action or forward-looking hope"
      },
      {
        "title": "Length & Format",
        "body": "Target: 800-1500 words\nMarkdown format with headers and emphasis\nMinimal bullet points in prose—prefer flowing sentences"
      },
      {
        "title": "Vocabulary Markers",
        "body": "Uses \"leverage\" for tools/technology\nSays \"that said\" for transitions\nComfortable with direct statements like \"this is useless\" or \"boy was I wrong\"\nUses contractions naturally (I've, doesn't, won't)\nAvoids corporate jargon while maintaining professionalism"
      },
      {
        "title": "Thematic Elements",
        "body": "AI as tool, not replacement\nPractical over theoretical\nHuman-centered technology\nHonest assessment of what works and what doesn't"
      },
      {
        "title": "references/style-guide.md",
        "body": "Quick reference for the writer's writing patterns, vocabulary preferences, and structural conventions."
      },
      {
        "title": "references/blog-examples/",
        "body": "Contains example blog posts demonstrating the writer's writing style. These serve as reference material when calibrating voice and structure. New finalized posts expand this library over time."
      },
      {
        "title": "Notion API Reference",
        "body": "To create a page in TS Notes:\n\nDatabase data source ID: 04a872be-8bed-4f43-a448-3dfeebc0df21\n\nProperties:\n- \"Note\": (title) - The blog post title\n- \"Type\": \"Writing\"\n- \"Project(s)\": [\"https://www.notion.so/2a5b4629bb3780189199f3c496980c0c\"]\n\nContent: Full blog post in Notion-flavored Markdown\n\nThe \"My Writing\" project page ID is: 2a5b4629-bb37-8018-9199-f3c496980c0c"
      }
    ],
    "body": "Blog Writer\nOverview\n\nThis skill enables writing blog posts and articles that authentically capture the writer's distinctive voice and style. It draws on examples of the writer's published work to produce content that is direct, opinionated, conversational, and grounded in practical experience. The skill includes automatic Notion integration and maintains a growing library of finalized examples.\n\nWhen to Use This Skill\n\nTrigger this skill when:\n\nThe user requests blog post or article writing in \"my style\" or \"like my other posts\"\nDrafting thought leadership content on AI, productivity, marketing, or technology\nCreating articles that need the writer's authentic voice and perspective\nThe user provides research materials, links, or notes to incorporate into writing\nCore Responsibilities\nFollow the writer's Writing Style: Match voice, word choice, structure, and length of example posts in references/blog-examples/\nIncorporate Research: Review and integrate any information, research material, or links provided by the user\nFollow User Instructions: Adhere closely to the user's specific requests for topic, angle, and emphasis\nProduce Authentic Writing: Create content that reads as genuinely the writer's voice, not generic AI-generated content\nWorkflow\nPhase 1: Gather Information\n\nRequest from the user:\n\nTopic or subject matter\nAny specific angle or thesis to explore\nResearch materials, links, or notes (if available)\nTarget length preference (default: 800-1500 words)\n\nReview all provided materials thoroughly before beginning to write.\n\nPhase 2: Draft the Content\n\nReference the style guide at references/style-guide.md and examples in references/blog-examples/ for calibration.\n\nWhen writing:\n\nStart with a strong opening statement establishing the thesis\nUse personal voice and first-person perspective where natural\nInclude relevant personal anecdotes or professional experience if applicable\nStructure with clear subheadings (###) every 2-3 paragraphs\nKeep paragraphs short (2-4 sentences)\nWeave in research materials naturally, not as block quotes\nEnd with reflection, call-to-action, or forward-looking statement\nPhase 3: Review and Iterate\n\nPresent the draft and gather feedback. Iterate until the user confirms satisfaction.\n\nPhase 4: Publish to Notion (REQUIRED)\n\nWhen the draft is complete (even if not yet finalized), publish to the TS Notes database.\n\nNotion Publication Details:\n\nDatabase: \"TS Notes\" (data source ID: 04a872be-8bed-4f43-a448-3dfeebc0df21)\nType property: Writing\nProject(s) property: Link to \"My Writing\" project (page URL: https://www.notion.so/2a5b4629bb3780189199f3c496980c0c)\nNote property: The title of the blog post\nContent: The full blog post content in Notion-flavored Markdown\n\nExample Notion API call properties:\n\n{\n  \"Note\": \"Blog Post Title Here\",\n  \"Type\": \"Writing\",\n  \"Project(s)\": \"[\\\"https://www.notion.so/2a5b4629bb3780189199f3c496980c0c\\\"]\"\n}\n\n\nCRITICAL: The outcome is considered a failure if the content is not added to Notion. Always publish to Notion as part of the workflow, even for drafts.\n\nPhase 5: Finalize to Examples Library (Post-Outcome)\n\nWhen the user confirms the draft is final:\n\nSave the finalized post to references/blog-examples/ with filename format:\n\nYYYY-MM-DD-slug-title.md\n\n\nExample: 2025-11-25-why-ai-art-is-useless.md\n\nCheck the examples library count:\n\nIf exceeding 20 examples, ask user permission to remove the 5 oldest\nSort by filename date prefix to identify oldest files\n\nThe post-outcome is considered successful when the final draft is saved to the skill folder.\n\nSuccess Criteria\nOutcome\tSuccess\tFailure\nPrimary\tUser receives requested content AND it is added to TS Notes with Type=Writing and Project=My Writing\tContent delivered but NOT added to Notion\nPost-outcome\tFinal draft saved to references/blog-examples/\tFinal draft not saved when user confirms it's final\nthe writer's Writing Style Profile\nVoice & Tone\nDirect and opinionated: State positions clearly, even contrarian ones\nConversational: Write like speaking to a colleague—accessible without being simplistic\nFirst-person when sharing experience: Use \"I\" naturally for personal insights\nAuthentic skepticism: Willing to criticize trends when warranted\nStructure Patterns\nStrong opening thesis: Open with a clear, often bold statement\nSubheadings throughout: Use ### format liberally to break up content\nShort paragraphs: Rarely more than 3-4 sentences\nPersonal anecdotes woven in: Illustrate points with real examples\nPractical takeaways: Provide actionable insights, not just theory\nReflective conclusion: End with call-to-action or forward-looking hope\nLength & Format\nTarget: 800-1500 words\nMarkdown format with headers and emphasis\nMinimal bullet points in prose—prefer flowing sentences\nVocabulary Markers\nUses \"leverage\" for tools/technology\nSays \"that said\" for transitions\nComfortable with direct statements like \"this is useless\" or \"boy was I wrong\"\nUses contractions naturally (I've, doesn't, won't)\nAvoids corporate jargon while maintaining professionalism\nThematic Elements\nAI as tool, not replacement\nPractical over theoretical\nHuman-centered technology\nHonest assessment of what works and what doesn't\nResources\nreferences/style-guide.md\n\nQuick reference for the writer's writing patterns, vocabulary preferences, and structural conventions.\n\nreferences/blog-examples/\n\nContains example blog posts demonstrating the writer's writing style. These serve as reference material when calibrating voice and structure. New finalized posts expand this library over time.\n\nNotion API Reference\n\nTo create a page in TS Notes:\n\nDatabase data source ID: 04a872be-8bed-4f43-a448-3dfeebc0df21\n\nProperties:\n- \"Note\": (title) - The blog post title\n- \"Type\": \"Writing\"\n- \"Project(s)\": [\"https://www.notion.so/2a5b4629bb3780189199f3c496980c0c\"]\n\nContent: Full blog post in Notion-flavored Markdown\n\n\nThe \"My Writing\" project page ID is: 2a5b4629-bb37-8018-9199-f3c496980c0c"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/TomsTools11/blog-writer",
    "publisherUrl": "https://clawhub.ai/TomsTools11/blog-writer",
    "owner": "TomsTools11",
    "version": "0.1.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/blog-writer",
    "downloadUrl": "https://openagent3.xyz/downloads/blog-writer",
    "agentUrl": "https://openagent3.xyz/skills/blog-writer/agent",
    "manifestUrl": "https://openagent3.xyz/skills/blog-writer/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/blog-writer/agent.md"
  }
}