[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"blog-best-google-tools-skills-for-ai-agents":3,"blog-related-best-google-tools-skills-for-ai-agents":491},{"id":4,"title":5,"body":6,"date":464,"description":465,"extension":466,"faqs":467,"image":480,"meta":481,"navigation":482,"path":483,"seo":484,"stem":485,"tags":486,"__hash__":490},"content\u002Fblog\u002Fbest-google-tools-skills-for-ai-agents.md","Best Google Tools Skills for AI Agents",{"type":7,"value":8,"toc":433},"minimark",[9,13,16,21,26,35,38,61,65,73,85,89,93,100,112,116,124,136,140,147,159,163,167,174,186,190,197,209,213,220,232,236,240,246,258,262,270,282,286,290,296,308,312,319,331,335,339,346,358,362,368,380,384,390,403,421,429],[10,11,12],"p",{},"Google's ecosystem touches almost every part of digital work. Trends data, Maps information, spreadsheet automation, web analytics, advertising. Giving your AI agent access to these tools turns it into a research and operations assistant that can pull real data and take real action.",[10,14,15],{},"agentskill.sh has a broad collection of Google tools skills. With 69,000+ skills across 20+ platforms, you'll find skills for nearly every Google service. Here are the best Google tools skills available right now.",[17,18,20],"h2",{"id":19},"google-trends-analysis","Google Trends Analysis",[22,23,25],"h3",{"id":24},"google-trends-by-openclaw","Google Trends by OpenClaw",[10,27,28,29,34],{},"The ",[30,31,33],"a",{"href":32},"\u002F@openclaw\u002Fgoogle-trends","google-trends"," skill lets your agent monitor Google Trends data. It pulls trending searches, compares keywords, and tracks interest over time. Your agent can identify seasonal patterns, compare up to five terms, and spot rising trends. Essential for content strategy, product research, and market analysis.",[10,36,37],{},"Install it:",[39,40,45],"pre",{"className":41,"code":42,"language":43,"meta":44,"style":44},"language-bash shiki shiki-themes github-light github-dark","\u002Flearn @openclaw\u002Fgoogle-trends\n","bash","",[46,47,48],"code",{"__ignoreMap":44},[49,50,53,57],"span",{"class":51,"line":52},"line",1,[49,54,56],{"class":55},"sScJk","\u002Flearn",[49,58,60],{"class":59},"sZZnC"," @openclaw\u002Fgoogle-trends\n",[22,62,64],{"id":63},"content-trend-researcher-by-neversight","Content Trend Researcher by NeverSight",[10,66,67,68,72],{},"For deeper trend analysis, the ",[30,69,71],{"href":70},"\u002F@neversight\u002Fcontent-trend-researcher","content-trend-researcher"," skill analyzes trends across Google Analytics, Google Trends, Substack, Medium, and other platforms. It identifies content opportunities by cross-referencing multiple data sources. Great for spotting what's gaining traction before it peaks.",[39,74,76],{"className":41,"code":75,"language":43,"meta":44,"style":44},"\u002Flearn @neversight\u002Fcontent-trend-researcher\n",[46,77,78],{"__ignoreMap":44},[49,79,80,82],{"class":51,"line":52},[49,81,56],{"class":55},[49,83,84],{"class":59}," @neversight\u002Fcontent-trend-researcher\n",[17,86,88],{"id":87},"google-maps-data","Google Maps Data",[22,90,92],{"id":91},"google-maps-by-openclaw","Google Maps by OpenClaw",[10,94,28,95,99],{},[30,96,98],{"href":97},"\u002F@openclaw\u002Fgoogle-maps","google-maps"," skill integrates Google Maps with the Routes API. It handles distance and travel time calculations with traffic predictions, route optimization, and location-based queries. Your agent can look up business information, calculate travel times, and extract location data for any address or place.",[39,101,103],{"className":41,"code":102,"language":43,"meta":44,"style":44},"\u002Flearn @openclaw\u002Fgoogle-maps\n",[46,104,105],{"__ignoreMap":44},[49,106,107,109],{"class":51,"line":52},[49,108,56],{"class":55},[49,110,111],{"class":59}," @openclaw\u002Fgoogle-maps\n",[22,113,115],{"id":114},"google-maps-lead-gen-by-openclaw","Google Maps Lead Gen by OpenClaw",[10,117,118,119,123],{},"For local business research, the ",[30,120,122],{"href":121},"\u002F@openclaw\u002Fgoogle-maps-leadgen-skill","google-maps-leadgen-skill"," skill generates B2B leads from Google Maps using a self-hosted MCP server and exports results to CSV or XLSX. Useful for competitive analysis, lead generation, and local market research.",[39,125,127],{"className":41,"code":126,"language":43,"meta":44,"style":44},"\u002Flearn @openclaw\u002Fgoogle-maps-leadgen-skill\n",[46,128,129],{"__ignoreMap":44},[49,130,131,133],{"class":51,"line":52},[49,132,56],{"class":55},[49,134,135],{"class":59}," @openclaw\u002Fgoogle-maps-leadgen-skill\n",[22,137,139],{"id":138},"google-maps-search-api-by-openclaw","Google Maps Search API by OpenClaw",[10,141,28,142,146],{},[30,143,145],{"href":144},"\u002F@openclaw\u002Fgoogle-maps-search-api","google-maps-search-api"," skill extracts business data from Google Maps search results automatically. It pulls reviews, ratings, hours, contact information, and other business details. Built for agents that need structured local business data at scale.",[39,148,150],{"className":41,"code":149,"language":43,"meta":44,"style":44},"\u002Flearn @openclaw\u002Fgoogle-maps-search-api\n",[46,151,152],{"__ignoreMap":44},[49,153,154,156],{"class":51,"line":52},[49,155,56],{"class":55},[49,157,158],{"class":59}," @openclaw\u002Fgoogle-maps-search-api\n",[17,160,162],{"id":161},"google-sheets-automation","Google Sheets Automation",[22,164,166],{"id":165},"google-sheets-by-openclaw","Google Sheets by OpenClaw",[10,168,28,169,173],{},[30,170,172],{"href":171},"\u002F@openclaw\u002Fgoogle-sheets","google-sheets"," skill provides Google Sheets API integration with managed OAuth. It can read and write spreadsheet data, create sheets, apply formatting, and manage workbooks. The most fundamental skill for any workflow that involves spreadsheet data.",[39,175,177],{"className":41,"code":176,"language":43,"meta":44,"style":44},"\u002Flearn @openclaw\u002Fgoogle-sheets\n",[46,178,179],{"__ignoreMap":44},[49,180,181,183],{"class":51,"line":52},[49,182,56],{"class":55},[49,184,185],{"class":59}," @openclaw\u002Fgoogle-sheets\n",[22,187,189],{"id":188},"google-sheet-by-openclaw","Google Sheet by OpenClaw",[10,191,28,192,196],{},[30,193,195],{"href":194},"\u002F@openclaw\u002Fgoogle-sheet","google-sheet"," skill reads, writes, appends, and manages Google Sheets via the Google Sheets API with a Node.js SDK. It handles cell-level operations, batch updates, and sheet management. A slightly different approach from the managed OAuth version, useful when you want more direct control.",[39,198,200],{"className":41,"code":199,"language":43,"meta":44,"style":44},"\u002Flearn @openclaw\u002Fgoogle-sheet\n",[46,201,202],{"__ignoreMap":44},[49,203,204,206],{"class":51,"line":52},[49,205,56],{"class":55},[49,207,208],{"class":59}," @openclaw\u002Fgoogle-sheet\n",[22,210,212],{"id":211},"google-sheets-automation-by-dicklesworthstone","Google Sheets Automation by Dicklesworthstone",[10,214,215,216,219],{},"For automated reporting, the ",[30,217,161],{"href":218},"\u002F@dicklesworthstone\u002Fgoogle-sheets-automation"," skill manages Google Sheets automation operations. It triggers automatically when your agent encounters spreadsheet-related tasks. Your agent can set up data pipelines that pull metrics from APIs and update dashboard spreadsheets.",[39,221,223],{"className":41,"code":222,"language":43,"meta":44,"style":44},"\u002Flearn @dicklesworthstone\u002Fgoogle-sheets-automation\n",[46,224,225],{"__ignoreMap":44},[49,226,227,229],{"class":51,"line":52},[49,228,56],{"class":55},[49,230,231],{"class":59}," @dicklesworthstone\u002Fgoogle-sheets-automation\n",[17,233,235],{"id":234},"google-analytics","Google Analytics",[22,237,239],{"id":238},"google-analytics-by-openclaw","Google Analytics by OpenClaw",[10,241,28,242,245],{},[30,243,234],{"href":244},"\u002F@openclaw\u002Fgoogle-analytics"," skill connects your agent to Google Analytics with managed OAuth. It handles account and property management through the Admin API, plus reporting through the Data API. Your agent can pull page views, sessions, user counts, conversion rates, and traffic sources without you opening the GA dashboard.",[39,247,249],{"className":41,"code":248,"language":43,"meta":44,"style":44},"\u002Flearn @openclaw\u002Fgoogle-analytics\n",[46,250,251],{"__ignoreMap":44},[49,252,253,255],{"class":51,"line":52},[49,254,56],{"class":55},[49,256,257],{"class":59}," @openclaw\u002Fgoogle-analytics\n",[22,259,261],{"id":260},"native-google-analytics-by-openclaw","Native Google Analytics by OpenClaw",[10,263,264,265,269],{},"For direct GA4 API access, the ",[30,266,268],{"href":267},"\u002F@openclaw\u002Fnative-google-analytics","native-google-analytics"," skill queries Google Analytics 4 data directly via the Analytics Data API. It pulls top pages, traffic sources, and performance metrics. Best for agents that need raw analytics data for custom analysis and reporting.",[39,271,273],{"className":41,"code":272,"language":43,"meta":44,"style":44},"\u002Flearn @openclaw\u002Fnative-google-analytics\n",[46,274,275],{"__ignoreMap":44},[49,276,277,279],{"class":51,"line":52},[49,278,56],{"class":55},[49,280,281],{"class":59}," @openclaw\u002Fnative-google-analytics\n",[17,283,285],{"id":284},"google-ads","Google Ads",[22,287,289],{"id":288},"google-ads-by-openclaw","Google Ads by OpenClaw",[10,291,28,292,295],{},[30,293,284],{"href":294},"\u002F@openclaw\u002Fgoogle-ads"," skill queries, audits, and optimizes Google Ads campaigns. It supports two modes: API mode for bulk operations and browser-based for detailed management. Your agent can monitor ad performance, adjust bids, and make optimization suggestions based on the data.",[39,297,299],{"className":41,"code":298,"language":43,"meta":44,"style":44},"\u002Flearn @openclaw\u002Fgoogle-ads\n",[46,300,301],{"__ignoreMap":44},[49,302,303,305],{"class":51,"line":52},[49,304,56],{"class":55},[49,306,307],{"class":59}," @openclaw\u002Fgoogle-ads\n",[22,309,311],{"id":310},"google-ads-by-neversight","Google Ads by NeverSight",[10,313,28,314,318],{},[30,315,317],{"href":316},"\u002F@neversight\u002Fads-google","ads-google"," skill provides deep analysis of Google Ads campaigns covering Search, Performance Max, Display, YouTube, and Demand Gen campaigns. It's audit-focused, helping your agent identify waste, opportunities, and optimizations across campaign types.",[39,320,322],{"className":41,"code":321,"language":43,"meta":44,"style":44},"\u002Flearn @neversight\u002Fads-google\n",[46,323,324],{"__ignoreMap":44},[49,325,326,328],{"class":51,"line":52},[49,327,56],{"class":55},[49,329,330],{"class":59}," @neversight\u002Fads-google\n",[17,332,334],{"id":333},"google-workspace","Google Workspace",[22,336,338],{"id":337},"google-connect-by-majiayu000","Google Connect by Majiayu000",[10,340,28,341,345],{},[30,342,344],{"href":343},"\u002F@majiayu000\u002Fgoogle-connect","google-connect"," skill connects your agent to the full Google Workspace suite: Gmail, Docs, Sheets, Calendar, Drive, Tasks, and Slides. Instead of installing separate skills for each service, this one provides a unified entry point. Load it when you need your agent to work across multiple Google services.",[39,347,349],{"className":41,"code":348,"language":43,"meta":44,"style":44},"\u002Flearn @majiayu000\u002Fgoogle-connect\n",[46,350,351],{"__ignoreMap":44},[49,352,353,355],{"class":51,"line":52},[49,354,56],{"class":55},[49,356,357],{"class":59}," @majiayu000\u002Fgoogle-connect\n",[22,359,361],{"id":360},"google-workspace-by-casper-studios","Google Workspace by Casper-Studios",[10,363,28,364,367],{},[30,365,333],{"href":366},"\u002F@casper-studios\u002Fgoogle-workspace"," skill handles Google Drive, Gmail, Calendar, and Docs operations via OAuth. It covers file uploads, email management, calendar scheduling, and document operations. A good all-in-one option for teams that live in Google Workspace.",[39,369,371],{"className":41,"code":370,"language":43,"meta":44,"style":44},"\u002Flearn @casper-studios\u002Fgoogle-workspace\n",[46,372,373],{"__ignoreMap":44},[49,374,375,377],{"class":51,"line":52},[49,376,56],{"class":55},[49,378,379],{"class":59}," @casper-studios\u002Fgoogle-workspace\n",[17,381,383],{"id":382},"getting-started","Getting Started",[10,385,386,387,389],{},"All these skills install in seconds. Open your AI agent (Claude Code, Cursor, Copilot, or any supported platform), type the ",[46,388,56],{}," command, and you're set.",[10,391,392,393,397,398,402],{},"If you're new to agent skills, start with the ",[30,394,396],{"href":395},"\u002Finstall","\u002Flearn install guide"," to set up the command. Then browse the full collection of ",[30,399,401],{"href":400},"\u002F","analytics and automation skills on agentskill.sh"," to find more tools for your workflow.",[10,404,405,406,410,411,415,416,420],{},"Google tools skills work well alongside other categories. Check out the ",[30,407,409],{"href":408},"\u002Fblog\u002Fbest-search-skills-for-ai-agents","best search skills for AI agents"," for web research, the ",[30,412,414],{"href":413},"\u002Fblog\u002Fbest-web-crawling-skills-for-ai-agents","best web crawling skills"," for data extraction, or the ",[30,417,419],{"href":418},"\u002Fblog\u002Fbest-shopify-skills-for-ai-agents","best Shopify skills"," to connect Google Analytics with your ecommerce data.",[10,422,423,424,428],{},"New Google tools skills are added to agentskill.sh regularly as the community builds integrations for more Google services. If you've built a Google tool integration, ",[30,425,427],{"href":426},"\u002Fsubmit","submit it"," to make it available to thousands of AI agent users.",[430,431,432],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":44,"searchDepth":434,"depth":434,"links":435},2,[436,441,446,451,455,459,463],{"id":19,"depth":434,"text":20,"children":437},[438,440],{"id":24,"depth":439,"text":25},3,{"id":63,"depth":439,"text":64},{"id":87,"depth":434,"text":88,"children":442},[443,444,445],{"id":91,"depth":439,"text":92},{"id":114,"depth":439,"text":115},{"id":138,"depth":439,"text":139},{"id":161,"depth":434,"text":162,"children":447},[448,449,450],{"id":165,"depth":439,"text":166},{"id":188,"depth":439,"text":189},{"id":211,"depth":439,"text":212},{"id":234,"depth":434,"text":235,"children":452},[453,454],{"id":238,"depth":439,"text":239},{"id":260,"depth":439,"text":261},{"id":284,"depth":434,"text":285,"children":456},[457,458],{"id":288,"depth":439,"text":289},{"id":310,"depth":439,"text":311},{"id":333,"depth":434,"text":334,"children":460},[461,462],{"id":337,"depth":439,"text":338},{"id":360,"depth":439,"text":361},{"id":382,"depth":434,"text":383},"2026-03-08","Discover the top Google tools skills for AI agents. Google Trends, Maps, Sheets, Analytics, and Ads automation with skills for Claude Code, Cursor, and more.","md",[468,471,474,477],{"question":469,"answer":470},"What is a Google tools skill for AI agents?","A Google tools skill is a SKILL.md file that teaches your AI agent how to work with Google services like Trends, Maps, Sheets, Analytics, or Ads. You install it with the \u002Flearn command and the agent uses it automatically when relevant.",{"question":472,"answer":473},"Do I need Google API credentials for these skills?","Most skills require either a Google API key or OAuth credentials from the Google Cloud Console. Some skills use managed OAuth through platforms like OpenClaw, which simplifies the authentication setup. Check each skill's documentation for specific requirements.",{"question":475,"answer":476},"Can I use multiple Google skills together?","Yes. Skills are modular and composable. You can install a Trends skill, a Sheets skill, and an Analytics skill side by side. Your agent picks the right one based on what you ask it to do. They work especially well together for research and reporting workflows.",{"question":478,"answer":479},"Which AI agents support Google tools skills?","Google tools skills work with any agent that supports the SKILL.md format. This includes Claude Code, Cursor, Windsurf, Copilot, Codex, Zed, and 20+ other platforms listed on agentskill.sh.",null,{},true,"\u002Fblog\u002Fbest-google-tools-skills-for-ai-agents",{"title":5,"description":465},"blog\u002Fbest-google-tools-skills-for-ai-agents",[487,488,489],"google","analytics","automation","u5Hnc6-S6AOd0wcGDMcLS1pmhj-WVuPdmSwgA5R6_VE",[492,876,1320,1907],{"id":493,"title":494,"body":495,"date":861,"description":862,"extension":466,"faqs":863,"image":480,"meta":869,"navigation":482,"path":870,"seo":871,"stem":872,"tags":873,"__hash__":875},"content\u002Fblog\u002Fbest-agent-browser-skills-for-ai-agents.md","Best Agent Browser Skills for AI Agents",{"type":7,"value":496,"toc":839},[497,500,503,507,511,518,530,534,542,554,558,565,577,581,585,593,605,609,616,628,632,636,643,655,659,662,678,682,686,689,707,711,714,725,729,732,746,750,756,772,779,790,794,804,812,820,828,836],[10,498,499],{},"Browser automation is one of the most powerful capabilities you can give an AI agent. Instead of being limited to text, your agent can navigate websites, fill forms, extract data, take screenshots, and interact with web applications like a human would.",[10,501,502],{},"agentskill.sh has a growing collection of browser skills. Here are the best ones for different use cases.",[17,504,506],{"id":505},"playwright-based-skills","Playwright-Based Skills",[22,508,510],{"id":509},"agent-browser-by-compound-engineering","Agent Browser by Compound Engineering",[10,512,28,513,517],{},[30,514,516],{"href":515},"\u002Fcompound-engineering\u002Fagent-browser","agent-browser"," skill provides full browser automation using Vercel's agent-browser CLI. It handles page navigation, element interaction, screenshots, and data extraction. This is a complete toolkit for agents that need to work with the web.",[39,519,521],{"className":41,"code":520,"language":43,"meta":44,"style":44},"\u002Flearn @compound-engineering\u002Fagent-browser\n",[46,522,523],{"__ignoreMap":44},[49,524,525,527],{"class":51,"line":52},[49,526,56],{"class":55},[49,528,529],{"class":59}," @compound-engineering\u002Fagent-browser\n",[22,531,533],{"id":532},"playwright-scraper-by-alphaonedev","Playwright Scraper by Alphaonedev",[10,535,536,537,541],{},"For JavaScript-heavy sites, ",[30,538,540],{"href":539},"\u002F@alphaonedev\u002Fplaywright-scraper","playwright-scraper"," uses Playwright for web scraping with support for dynamic content, authentication flows, pagination, and data extraction. It handles pages that simpler tools can't parse.",[39,543,545],{"className":41,"code":544,"language":43,"meta":44,"style":44},"\u002Flearn @alphaonedev\u002Fplaywright-scraper\n",[46,546,547],{"__ignoreMap":44},[49,548,549,551],{"class":51,"line":52},[49,550,56],{"class":55},[49,552,553],{"class":59}," @alphaonedev\u002Fplaywright-scraper\n",[22,555,557],{"id":556},"browser-testing-by-openclaw","Browser Testing by OpenClaw",[10,559,28,560,564],{},[30,561,563],{"href":562},"\u002F@openclaw\u002Fbrowser-testing","browser-testing"," skill focuses on automated browser testing. Your agent can write and run Playwright tests, verify UI behavior, and catch visual regressions. Useful for CI\u002FCD pipelines and pre-deploy verification.",[39,566,568],{"className":41,"code":567,"language":43,"meta":44,"style":44},"\u002Flearn @openclaw\u002Fbrowser-testing\n",[46,569,570],{"__ignoreMap":44},[49,571,572,574],{"class":51,"line":52},[49,573,56],{"class":55},[49,575,576],{"class":59}," @openclaw\u002Fbrowser-testing\n",[17,578,580],{"id":579},"headless-browser-skills","Headless Browser Skills",[22,582,584],{"id":583},"headless-chrome-by-openclaw","Headless Chrome by OpenClaw",[10,586,587,588,592],{},"For lightweight browser automation, ",[30,589,591],{"href":590},"\u002F@openclaw\u002Fheadless-chrome","headless-chrome"," runs Chromium in headless mode for fast page rendering, PDF generation, and screenshot capture. Lower overhead than full Playwright setups.",[39,594,596],{"className":41,"code":595,"language":43,"meta":44,"style":44},"\u002Flearn @openclaw\u002Fheadless-chrome\n",[46,597,598],{"__ignoreMap":44},[49,599,600,602],{"class":51,"line":52},[49,601,56],{"class":55},[49,603,604],{"class":59}," @openclaw\u002Fheadless-chrome\n",[22,606,608],{"id":607},"browser-use-by-majiayu000","Browser Use by Majiayu000",[10,610,28,611,615],{},[30,612,614],{"href":613},"\u002F@majiayu000\u002Fbrowser-use","browser-use"," skill provides a simplified interface for common browser tasks. Navigate, click, type, and extract data without writing Playwright code. Good for agents that need basic browser access without complex automation.",[39,617,619],{"className":41,"code":618,"language":43,"meta":44,"style":44},"\u002Flearn @majiayu000\u002Fbrowser-use\n",[46,620,621],{"__ignoreMap":44},[49,622,623,625],{"class":51,"line":52},[49,624,56],{"class":55},[49,626,627],{"class":59}," @majiayu000\u002Fbrowser-use\n",[17,629,631],{"id":630},"web-interaction-skills","Web Interaction Skills",[22,633,635],{"id":634},"form-filler-by-openclaw","Form Filler by OpenClaw",[10,637,28,638,642],{},[30,639,641],{"href":640},"\u002F@openclaw\u002Fform-filler","form-filler"," skill teaches your agent to identify form fields, fill them with appropriate data, handle validation errors, and submit forms. Useful for automated testing and data entry tasks.",[39,644,646],{"className":41,"code":645,"language":43,"meta":44,"style":44},"\u002Flearn @openclaw\u002Fform-filler\n",[46,647,648],{"__ignoreMap":44},[49,649,650,652],{"class":51,"line":52},[49,651,56],{"class":55},[49,653,654],{"class":59}," @openclaw\u002Fform-filler\n",[22,656,658],{"id":657},"screenshot-capture","Screenshot Capture",[10,660,661],{},"Several skills include screenshot capabilities as part of their browser automation. Screenshots let your agent:",[663,664,665,669,672,675],"ul",{},[666,667,668],"li",{},"Verify visual output of UI changes",[666,670,671],{},"Document the current state of web pages",[666,673,674],{},"Compare before\u002Fafter states during testing",[666,676,677],{},"Capture evidence for bug reports",[17,679,681],{"id":680},"use-cases-for-agent-browser-skills","Use Cases for Agent Browser Skills",[22,683,685],{"id":684},"automated-testing","Automated Testing",[10,687,688],{},"Browser skills are essential for end-to-end testing. Your agent can:",[690,691,692,695,698,701,704],"ol",{},[666,693,694],{},"Navigate to your application",[666,696,697],{},"Perform user flows (login, checkout, form submission)",[666,699,700],{},"Verify that elements render correctly",[666,702,703],{},"Take screenshots of failures",[666,705,706],{},"Report results with visual evidence",[22,708,710],{"id":709},"data-collection","Data Collection",[10,712,713],{},"When APIs aren't available, browser skills let your agent extract data directly from web pages. This works for:",[663,715,716,719,722],{},[666,717,718],{},"Competitive research (pricing pages, feature lists)",[666,720,721],{},"Content aggregation (news, reviews, product data)",[666,723,724],{},"Monitoring (checking for changes on specific pages)",[22,726,728],{"id":727},"workflow-automation","Workflow Automation",[10,730,731],{},"Browser skills automate repetitive web tasks:",[663,733,734,737,740,743],{},[666,735,736],{},"Filling forms across multiple platforms",[666,738,739],{},"Downloading reports from dashboards",[666,741,742],{},"Updating settings across services",[666,744,745],{},"Managing content across CMS platforms",[17,747,749],{"id":748},"getting-started-with-browser-skills","Getting Started with Browser Skills",[10,751,752,753,755],{},"All browser skills install in seconds with the ",[46,754,56],{}," command. Your agent needs access to run shell commands and a Chromium installation (most systems have one).",[39,757,759],{"className":41,"code":758,"language":43,"meta":44,"style":44},"\u002Flearn @compound-engineering\u002Fagent-browser    # Full browser toolkit\n",[46,760,761],{"__ignoreMap":44},[49,762,763,765,768],{"class":51,"line":52},[49,764,56],{"class":55},[49,766,767],{"class":59}," @compound-engineering\u002Fagent-browser",[49,769,771],{"class":770},"sJ8bj","    # Full browser toolkit\n",[10,773,392,774,397,776,402],{},[30,775,396],{"href":395},[30,777,778],{"href":400},"automation skills on agentskill.sh",[10,780,781,782,785,786,789],{},"Browser skills pair well with ",[30,783,784],{"href":413},"web crawling skills"," for data extraction and ",[30,787,788],{"href":408},"search skills"," for finding the right pages to interact with.",[17,791,793],{"id":792},"faq","FAQ",[795,796,797,801],"details",{},[798,799,800],"summary",{},"What is an agent browser skill?",[10,802,803],{},"An agent browser skill is a SKILL.md file that teaches your AI agent how to control a web browser. This includes navigating pages, clicking buttons, filling forms, taking screenshots, and extracting data from websites.",[795,805,806,809],{},[798,807,808],{},"Can AI agents browse the web?",[10,810,811],{},"Yes. With browser skills installed, AI agents can launch headless browsers, navigate to URLs, interact with page elements, and extract information. They can also take screenshots for visual verification.",[795,813,814,817],{},[798,815,816],{},"What browser engines do agent browser skills support?",[10,818,819],{},"Most browser skills use Chromium via Playwright or Puppeteer. Some support Firefox and WebKit as well. Playwright-based skills offer the widest browser engine coverage.",[795,821,822,825],{},[798,823,824],{},"Are browser skills safe to use?",[10,826,827],{},"Browser skills run in your local environment with your permissions. They're safe for automation tasks like testing, scraping public data, and form filling. Always review a skill's security score on agentskill.sh before installing.",[795,829,830,833],{},[798,831,832],{},"Which AI agents support browser skills?",[10,834,835],{},"Any agent that supports the SKILL.md format can use browser skills. This includes Claude Code, Cursor, Copilot, Gemini, Windsurf, and 20+ other platforms. The agent needs access to run shell commands to control the browser.",[430,837,838],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":44,"searchDepth":434,"depth":434,"links":840},[841,846,850,854,859,860],{"id":505,"depth":434,"text":506,"children":842},[843,844,845],{"id":509,"depth":439,"text":510},{"id":532,"depth":439,"text":533},{"id":556,"depth":439,"text":557},{"id":579,"depth":434,"text":580,"children":847},[848,849],{"id":583,"depth":439,"text":584},{"id":607,"depth":439,"text":608},{"id":630,"depth":434,"text":631,"children":851},[852,853],{"id":634,"depth":439,"text":635},{"id":657,"depth":439,"text":658},{"id":680,"depth":434,"text":681,"children":855},[856,857,858],{"id":684,"depth":439,"text":685},{"id":709,"depth":439,"text":710},{"id":727,"depth":439,"text":728},{"id":748,"depth":434,"text":749},{"id":792,"depth":434,"text":793},"2026-03-16","Discover the top browser automation skills for AI agents. Use Playwright, Puppeteer, and headless browsers with skills for Claude Code, Cursor, and more.",[864,865,866,867,868],{"question":800,"answer":803},{"question":808,"answer":811},{"question":816,"answer":819},{"question":824,"answer":827},{"question":832,"answer":835},{},"\u002Fblog\u002Fbest-agent-browser-skills-for-ai-agents",{"title":494,"description":862},"blog\u002Fbest-agent-browser-skills-for-ai-agents",[874,489,516],"browser","-jF3f73U6fVRlabmE3KVPPdcBSfA7zkwgZhhYwlOQus",{"id":877,"title":878,"body":879,"date":861,"description":1303,"extension":466,"faqs":1304,"image":480,"meta":1311,"navigation":482,"path":1312,"seo":1313,"stem":1314,"tags":1315,"__hash__":1319},"content\u002Fblog\u002Fself-improving-agent-skills.md","Self-Improving Agent Skills: How AI Agents Get Better Over Time",{"type":7,"value":880,"toc":1289},[881,884,887,891,894,897,930,933,937,941,944,959,962,966,969,984,988,991,995,998,1002,1077,1080,1084,1087,1175,1178,1182,1185,1211,1217,1221,1224,1227,1237,1239,1247,1255,1270,1278,1286],[10,882,883],{},"AI agents are powerful, but they're usually one-shot: you give a prompt, they give an answer, done. Self-improving agent skills change that pattern. They teach agents to evaluate their own work, identify gaps, and iterate until the output meets a quality bar.",[10,885,886],{},"This is one of the fastest-growing categories on agentskill.sh. Here's how self-improving skills work and which ones you should try.",[17,888,890],{"id":889},"what-makes-a-skill-self-improving","What Makes a Skill \"Self-Improving\"?",[10,892,893],{},"A self-improving skill includes a feedback loop in its instructions. Instead of \"generate X and return it,\" the skill says \"generate X, evaluate it against these criteria, fix any issues, and repeat until it passes.\"",[10,895,896],{},"The typical pattern looks like this:",[690,898,899,906,912,918,924],{},[666,900,901,905],{},[902,903,904],"strong",{},"Generate",": Produce an initial output",[666,907,908,911],{},[902,909,910],{},"Evaluate",": Check the output against quality criteria",[666,913,914,917],{},[902,915,916],{},"Identify gaps",": List what's missing or wrong",[666,919,920,923],{},[902,921,922],{},"Refine",": Fix the issues and produce a better version",[666,925,926,929],{},[902,927,928],{},"Repeat",": Loop until the output passes all checks",[10,931,932],{},"This is different from simple prompting because the evaluation criteria are built into the skill. The agent doesn't just try harder. It follows a structured review process.",[17,934,936],{"id":935},"types-of-self-improving-skills","Types of Self-Improving Skills",[22,938,940],{"id":939},"code-review-and-refactoring","Code Review and Refactoring",[10,942,943],{},"Code review skills are natural fits for self-improvement. The agent writes code, then reviews it for bugs, security issues, performance problems, and style violations. Each pass catches things the previous pass missed.",[39,945,947],{"className":41,"code":946,"language":43,"meta":44,"style":44},"\u002Flearn @compound-engineering\u002Fcode-reviewer    # Multi-pass code review\n",[46,948,949],{"__ignoreMap":44},[49,950,951,953,956],{"class":51,"line":52},[49,952,56],{"class":55},[49,954,955],{"class":59}," @compound-engineering\u002Fcode-reviewer",[49,957,958],{"class":770},"    # Multi-pass code review\n",[10,960,961],{},"These skills are especially valuable for complex refactoring where a single pass might introduce regressions. The agent verifies its own changes against test suites and type systems.",[22,963,965],{"id":964},"content-creation-and-seo","Content Creation and SEO",[10,967,968],{},"Writing skills that self-improve check for readability, keyword coverage, structure, and factual accuracy. The first draft gets the ideas down. Subsequent passes tighten the prose, fix inconsistencies, and optimize for search.",[39,970,972],{"className":41,"code":971,"language":43,"meta":44,"style":44},"\u002Flearn @anthropic\u002Fseo-content-optimizer       # SEO-aware content refinement\n",[46,973,974],{"__ignoreMap":44},[49,975,976,978,981],{"class":51,"line":52},[49,977,56],{"class":55},[49,979,980],{"class":59}," @anthropic\u002Fseo-content-optimizer",[49,982,983],{"class":770},"       # SEO-aware content refinement\n",[22,985,987],{"id":986},"test-generation","Test Generation",[10,989,990],{},"Test generation skills produce tests, run them, analyze failures, and fix both the tests and the code. This creates a tight feedback loop where the agent builds confidence in its own work.",[22,992,994],{"id":993},"architecture-and-design","Architecture and Design",[10,996,997],{},"Architecture skills evaluate designs against principles like SOLID, separation of concerns, and scalability. They propose a design, critique it, and propose a better version.",[17,999,1001],{"id":1000},"how-self-improving-skills-compare-to-single-pass","How Self-Improving Skills Compare to Single-Pass",[1003,1004,1005,1021],"table",{},[1006,1007,1008],"thead",{},[1009,1010,1011,1015,1018],"tr",{},[1012,1013,1014],"th",{},"Aspect",[1012,1016,1017],{},"Single-Pass",[1012,1019,1020],{},"Self-Improving",[1022,1023,1024,1038,1051,1064],"tbody",{},[1009,1025,1026,1032,1035],{},[1027,1028,1029],"td",{},[902,1030,1031],{},"Speed",[1027,1033,1034],{},"Fast",[1027,1036,1037],{},"Slower (2-5x)",[1009,1039,1040,1045,1048],{},[1027,1041,1042],{},[902,1043,1044],{},"Quality",[1027,1046,1047],{},"Good enough for simple tasks",[1027,1049,1050],{},"Higher, especially for complex work",[1009,1052,1053,1058,1061],{},[1027,1054,1055],{},[902,1056,1057],{},"Consistency",[1027,1059,1060],{},"Variable",[1027,1062,1063],{},"More predictable",[1009,1065,1066,1071,1074],{},[1027,1067,1068],{},[902,1069,1070],{},"Best for",[1027,1072,1073],{},"Quick tasks, boilerplate",[1027,1075,1076],{},"Code review, content, architecture",[10,1078,1079],{},"The tradeoff is clear: speed vs. quality. For routine tasks, single-pass skills are fine. For anything where mistakes are costly (production code, published content, architectural decisions), self-improving skills pay for themselves.",[17,1081,1083],{"id":1082},"building-your-own-self-improving-skill","Building Your Own Self-Improving Skill",[10,1085,1086],{},"The key is defining clear evaluation criteria. A self-improving skill needs to know what \"good\" looks like. Here's a minimal structure:",[39,1088,1092],{"className":1089,"code":1090,"language":1091,"meta":44,"style":44},"language-markdown shiki shiki-themes github-light github-dark","## Workflow\n\n1. Generate initial output\n2. Review against these criteria:\n   - [ ] No security vulnerabilities\n   - [ ] All edge cases handled\n   - [ ] Follows project conventions\n   - [ ] Tests pass\n3. If any criteria fail, fix and go back to step 2\n4. Maximum 3 iterations\n","markdown",[46,1093,1094,1100,1105,1115,1124,1133,1141,1149,1157,1166],{"__ignoreMap":44},[49,1095,1096],{"class":51,"line":52},[49,1097,1099],{"class":1098},"sq-ep","## Workflow\n",[49,1101,1102],{"class":51,"line":434},[49,1103,1104],{"emptyLinePlaceholder":482},"\n",[49,1106,1107,1111],{"class":51,"line":439},[49,1108,1110],{"class":1109},"s4XuR","1.",[49,1112,1114],{"class":1113},"sVt8B"," Generate initial output\n",[49,1116,1118,1121],{"class":51,"line":1117},4,[49,1119,1120],{"class":1109},"2.",[49,1122,1123],{"class":1113}," Review against these criteria:\n",[49,1125,1127,1130],{"class":51,"line":1126},5,[49,1128,1129],{"class":1109},"   -",[49,1131,1132],{"class":1113}," [ ] No security vulnerabilities\n",[49,1134,1136,1138],{"class":51,"line":1135},6,[49,1137,1129],{"class":1109},[49,1139,1140],{"class":1113}," [ ] All edge cases handled\n",[49,1142,1144,1146],{"class":51,"line":1143},7,[49,1145,1129],{"class":1109},[49,1147,1148],{"class":1113}," [ ] Follows project conventions\n",[49,1150,1152,1154],{"class":51,"line":1151},8,[49,1153,1129],{"class":1109},[49,1155,1156],{"class":1113}," [ ] Tests pass\n",[49,1158,1160,1163],{"class":51,"line":1159},9,[49,1161,1162],{"class":1109},"3.",[49,1164,1165],{"class":1113}," If any criteria fail, fix and go back to step 2\n",[49,1167,1169,1172],{"class":51,"line":1168},10,[49,1170,1171],{"class":1109},"4.",[49,1173,1174],{"class":1113}," Maximum 3 iterations\n",[10,1176,1177],{},"The iteration cap prevents infinite loops. Three passes is usually enough to catch most issues.",[17,1179,1181],{"id":1180},"popular-self-improving-skills-on-agentskillsh","Popular Self-Improving Skills on agentskill.sh",[10,1183,1184],{},"Browse the full collection of skills that include built-in iteration and quality loops:",[663,1186,1187,1193,1199,1205],{},[666,1188,1189,1192],{},[902,1190,1191],{},"Code review skills",": Multi-pass analysis that catches what humans miss",[666,1194,1195,1198],{},[902,1196,1197],{},"Content optimization",": SEO and readability improvement loops",[666,1200,1201,1204],{},[902,1202,1203],{},"Test generation",": Write, run, fix, repeat",[666,1206,1207,1210],{},[902,1208,1209],{},"Architecture review",": Design evaluation against principles",[10,1212,1213,1214,1216],{},"Install any skill with the ",[46,1215,56],{}," command in Claude Code, Cursor, Copilot, or your preferred AI agent.",[17,1218,1220],{"id":1219},"the-future-of-self-improving-agents","The Future of Self-Improving Agents",[10,1222,1223],{},"Today, self-improvement happens within a single session. The agent iterates, but it doesn't carry lessons forward. The next frontier is persistent learning: agents that remember what worked, what failed, and what patterns produce the best results.",[10,1225,1226],{},"Skills are the bridge. As agent memory improves, self-improving skills will become the foundation for agents that genuinely learn from experience. The skills you install today are teaching your agent patterns it will eventually internalize.",[10,1228,1229,1230,1233,1234,1236],{},"Start with the ",[30,1231,1232],{"href":400},"skill directory"," to find self-improving skills for your workflow. If you've built a skill with a built-in feedback loop, ",[30,1235,427],{"href":426}," to share it with the community.",[17,1238,793],{"id":792},[795,1240,1241,1244],{},[798,1242,1243],{},"What is a self-improving agent skill?",[10,1245,1246],{},"A self-improving agent skill is a SKILL.md file that instructs an AI agent to evaluate its own output, learn from feedback, and iteratively refine its results. Instead of producing one-shot answers, the agent runs multiple passes to improve quality.",[795,1248,1249,1252],{},[798,1250,1251],{},"Can AI agents really improve themselves?",[10,1253,1254],{},"Yes, within a session. AI agents can review their own output, identify weaknesses, and produce better versions. They don't permanently learn across sessions (yet), but within a task, self-improvement loops produce significantly better results than single-pass generation.",[795,1256,1257,1260],{},[798,1258,1259],{},"How do I install a self-improving skill?",[10,1261,1262,1263,1265,1266,1269],{},"Use the ",[46,1264,56],{}," command in your AI agent. Type ",[46,1267,1268],{},"\u002Flearn @owner\u002Fskill-name"," to install any skill from agentskill.sh. Self-improving skills work like any other skill but include built-in reflection and iteration loops.",[795,1271,1272,1275],{},[798,1273,1274],{},"Which AI agents support self-improving skills?",[10,1276,1277],{},"Any agent that supports the SKILL.md format can use self-improving skills. This includes Claude Code, Cursor, Copilot, Gemini, Windsurf, and 20+ other platforms listed on agentskill.sh.",[795,1279,1280,1283],{},[798,1281,1282],{},"Are self-improving skills slower than regular skills?",[10,1284,1285],{},"They take more time per task because the agent runs multiple passes. But the output quality is higher, which often saves time on manual revisions. For critical tasks like code review or content creation, the tradeoff is worth it.",[430,1287,1288],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sq-ep, html code.shiki .sq-ep{--shiki-default:#005CC5;--shiki-default-font-weight:bold;--shiki-dark:#79B8FF;--shiki-dark-font-weight:bold}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}",{"title":44,"searchDepth":434,"depth":434,"links":1290},[1291,1292,1298,1299,1300,1301,1302],{"id":889,"depth":434,"text":890},{"id":935,"depth":434,"text":936,"children":1293},[1294,1295,1296,1297],{"id":939,"depth":439,"text":940},{"id":964,"depth":439,"text":965},{"id":986,"depth":439,"text":987},{"id":993,"depth":439,"text":994},{"id":1000,"depth":434,"text":1001},{"id":1082,"depth":434,"text":1083},{"id":1180,"depth":434,"text":1181},{"id":1219,"depth":434,"text":1220},{"id":792,"depth":434,"text":793},"Learn how self-improving agent skills work. AI agents that learn from feedback, refine their output, and get better at tasks over time. Browse skills on agentskill.sh.",[1305,1306,1307,1309,1310],{"question":1243,"answer":1246},{"question":1251,"answer":1254},{"question":1259,"answer":1308},"Use the \u002Flearn command in your AI agent. Type \u002Flearn @owner\u002Fskill-name to install any skill from agentskill.sh. Self-improving skills work like any other skill but include built-in reflection and iteration loops.",{"question":1274,"answer":1277},{"question":1282,"answer":1285},{},"\u002Fblog\u002Fself-improving-agent-skills",{"title":878,"description":1303},"blog\u002Fself-improving-agent-skills",[1316,1317,1318],"self-improving","agent","ai-skills","P2dv5WLHulVXhW5ZOUY63fwqaZYOnM_7LbHl9bkj1wQ",{"id":1321,"title":1322,"body":1323,"date":861,"description":1891,"extension":466,"faqs":1892,"image":480,"meta":1898,"navigation":482,"path":1899,"seo":1900,"stem":1901,"tags":1902,"__hash__":1906},"content\u002Fblog\u002Fskills-for-claude-code-agent-teams.md","Best Skills for Claude Code Agent Teams",{"type":7,"value":1324,"toc":1864},[1325,1328,1331,1335,1338,1364,1371,1375,1379,1385,1397,1401,1407,1419,1423,1427,1433,1445,1449,1456,1468,1472,1476,1482,1494,1498,1505,1517,1521,1525,1528,1531,1534,1538,1542,1607,1611,1674,1678,1740,1744,1749,1763,1768,1782,1786,1803,1810,1820,1822,1830,1838,1846,1854,1862],[10,1326,1327],{},"Claude Code agent teams are one of the most powerful features for shipping fast. Instead of a single agent doing everything sequentially, you run multiple agents in parallel: one handles frontend, another writes tests, a third does research. They coordinate through a shared task list and merge their work.",[10,1329,1330],{},"The key to effective agent teams is choosing the right skills. Here are the best skills for multi-agent workflows and how to structure teams for maximum output.",[17,1332,1334],{"id":1333},"how-agent-teams-work","How Agent Teams Work",[10,1336,1337],{},"Agent teams follow a simple model:",[690,1339,1340,1346,1352,1358],{},[666,1341,1342,1345],{},[902,1343,1344],{},"Team leader"," creates tasks and assigns them to agents",[666,1347,1348,1351],{},[902,1349,1350],{},"Specialized agents"," pick up tasks and work independently",[666,1353,1354,1357],{},[902,1355,1356],{},"Agents communicate"," through messages when they need coordination",[666,1359,1360,1363],{},[902,1361,1362],{},"Results merge"," when all agents complete their tasks",[10,1365,1366,1367,1370],{},"The critical rule: agents should work on ",[902,1368,1369],{},"independent files and directories",". Two agents editing the same file creates conflicts and wastes tokens.",[17,1372,1374],{"id":1373},"best-skills-for-team-leaders","Best Skills for Team Leaders",[22,1376,1378],{"id":1377},"skill-creator","Skill Creator",[10,1380,28,1381,1384],{},[30,1382,1377],{"href":1383},"\u002Fcompound-engineering\u002Fskill-creator"," skill helps team leaders create custom skills for their specific project. Define project conventions, coding standards, and workflow patterns as skills that every team member follows.",[39,1386,1388],{"className":41,"code":1387,"language":43,"meta":44,"style":44},"\u002Flearn @compound-engineering\u002Fskill-creator\n",[46,1389,1390],{"__ignoreMap":44},[49,1391,1392,1394],{"class":51,"line":52},[49,1393,56],{"class":55},[49,1395,1396],{"class":59}," @compound-engineering\u002Fskill-creator\n",[22,1398,1400],{"id":1399},"seo-content-planner","SEO Content Planner",[10,1402,28,1403,1406],{},[30,1404,1399],{"href":1405},"\u002Fskills\u002Fseo-content-planner"," skill is perfect for team leaders coordinating content creation. Plan topics, assign keywords, and distribute writing tasks across agents.",[39,1408,1410],{"className":41,"code":1409,"language":43,"meta":44,"style":44},"\u002Flearn @anthropic\u002Fseo-content-planner\n",[46,1411,1412],{"__ignoreMap":44},[49,1413,1414,1416],{"class":51,"line":52},[49,1415,56],{"class":55},[49,1417,1418],{"class":59}," @anthropic\u002Fseo-content-planner\n",[17,1420,1422],{"id":1421},"best-skills-for-coding-agents","Best Skills for Coding Agents",[22,1424,1426],{"id":1425},"frontend-design","Frontend Design",[10,1428,28,1429,1432],{},[30,1430,1425],{"href":1431},"\u002Fcompound-engineering\u002Ffrontend-design"," skill gives coding agents deep knowledge of UI patterns and component architecture. Assign one agent to build components while another handles API routes.",[39,1434,1436],{"className":41,"code":1435,"language":43,"meta":44,"style":44},"\u002Flearn @compound-engineering\u002Ffrontend-design\n",[46,1437,1438],{"__ignoreMap":44},[49,1439,1440,1442],{"class":51,"line":52},[49,1441,56],{"class":55},[49,1443,1444],{"class":59}," @compound-engineering\u002Ffrontend-design\n",[22,1446,1448],{"id":1447},"code-review","Code Review",[10,1450,28,1451,1455],{},[30,1452,1454],{"href":1453},"\u002Fskills\u002Fcode-review","code-reviewer"," skill runs multi-pass reviews on code written by other agents. Have one agent write code and another review it for bugs, security issues, and style violations.",[39,1457,1459],{"className":41,"code":1458,"language":43,"meta":44,"style":44},"\u002Flearn @compound-engineering\u002Fcode-reviewer\n",[46,1460,1461],{"__ignoreMap":44},[49,1462,1463,1465],{"class":51,"line":52},[49,1464,56],{"class":55},[49,1466,1467],{"class":59}," @compound-engineering\u002Fcode-reviewer\n",[17,1469,1471],{"id":1470},"best-skills-for-research-agents","Best Skills for Research Agents",[22,1473,1475],{"id":1474},"seo-optimizer","SEO Optimizer",[10,1477,28,1478,1481],{},[30,1479,1474],{"href":1480},"\u002Fanthropic\u002Fseo-optimizer"," skill lets a dedicated agent handle keyword research, competitor analysis, and content optimization while coding agents focus on building.",[39,1483,1485],{"className":41,"code":1484,"language":43,"meta":44,"style":44},"\u002Flearn @anthropic\u002Fseo-content-optimizer\n",[46,1486,1487],{"__ignoreMap":44},[49,1488,1489,1491],{"class":51,"line":52},[49,1490,56],{"class":55},[49,1492,1493],{"class":59}," @anthropic\u002Fseo-content-optimizer\n",[22,1495,1497],{"id":1496},"web-crawling","Web Crawling",[10,1499,28,1500,1504],{},[30,1501,1503],{"href":1502},"\u002F@openclaw\u002Fcrawl4ai","crawl4ai"," skill gives research agents the ability to gather competitive intelligence, extract data from websites, and compile findings for the team.",[39,1506,1508],{"className":41,"code":1507,"language":43,"meta":44,"style":44},"\u002Flearn @openclaw\u002Fcrawl4ai\n",[46,1509,1510],{"__ignoreMap":44},[49,1511,1512,1514],{"class":51,"line":52},[49,1513,56],{"class":55},[49,1515,1516],{"class":59}," @openclaw\u002Fcrawl4ai\n",[17,1518,1520],{"id":1519},"best-skills-for-testing-agents","Best Skills for Testing Agents",[22,1522,1524],{"id":1523},"test-runner","Test Runner",[10,1526,1527],{},"Dedicated testing agents can run and analyze test suites while coding agents continue building. The test agent catches regressions early and reports issues back to the team.",[22,1529,1530],{"id":563},"Browser Testing",[10,1532,1533],{},"Browser testing skills let a dedicated agent run end-to-end tests in headless browsers, verifying that UI changes work correctly while other agents continue development.",[17,1535,1537],{"id":1536},"team-structure-patterns","Team Structure Patterns",[22,1539,1541],{"id":1540},"frontend-backend-testing","Frontend + Backend + Testing",[1003,1543,1544,1557],{},[1006,1545,1546],{},[1009,1547,1548,1551,1554],{},[1012,1549,1550],{},"Agent",[1012,1552,1553],{},"Skills",[1012,1555,1556],{},"Responsibility",[1022,1558,1559,1571,1583,1595],{},[1009,1560,1561,1566,1568],{},[1027,1562,1563],{},[902,1564,1565],{},"Leader",[1027,1567,1377],{},[1027,1569,1570],{},"Coordinate, review PRs",[1009,1572,1573,1578,1580],{},[1027,1574,1575],{},[902,1576,1577],{},"Frontend",[1027,1579,1425],{},[1027,1581,1582],{},"Components, pages, styling",[1009,1584,1585,1590,1592],{},[1027,1586,1587],{},[902,1588,1589],{},"Backend",[1027,1591,1454],{},[1027,1593,1594],{},"APIs, database, business logic",[1009,1596,1597,1602,1604],{},[1027,1598,1599],{},[902,1600,1601],{},"Tester",[1027,1603,1523],{},[1027,1605,1606],{},"Unit tests, integration tests",[22,1608,1610],{"id":1609},"content-seo-development","Content + SEO + Development",[1003,1612,1613,1623],{},[1006,1614,1615],{},[1009,1616,1617,1619,1621],{},[1012,1618,1550],{},[1012,1620,1553],{},[1012,1622,1556],{},[1022,1624,1625,1636,1649,1661],{},[1009,1626,1627,1631,1633],{},[1027,1628,1629],{},[902,1630,1565],{},[1027,1632,1399],{},[1027,1634,1635],{},"Plan content strategy",[1009,1637,1638,1643,1646],{},[1027,1639,1640],{},[902,1641,1642],{},"Writer 1",[1027,1644,1645],{},"seo-content-optimizer",[1027,1647,1648],{},"Write blog posts",[1009,1650,1651,1656,1658],{},[1027,1652,1653],{},[902,1654,1655],{},"Writer 2",[1027,1657,1645],{},[1027,1659,1660],{},"Write landing pages",[1009,1662,1663,1668,1671],{},[1027,1664,1665],{},[902,1666,1667],{},"Developer",[1027,1669,1670],{},"programmatic-seo",[1027,1672,1673],{},"Build pSEO templates",[22,1675,1677],{"id":1676},"research-sprint","Research Sprint",[1003,1679,1680,1690],{},[1006,1681,1682],{},[1009,1683,1684,1686,1688],{},[1012,1685,1550],{},[1012,1687,1553],{},[1012,1689,1556],{},[1022,1691,1692,1703,1716,1728],{},[1009,1693,1694,1698,1700],{},[1027,1695,1696],{},[902,1697,1565],{},[1027,1699,1377],{},[1027,1701,1702],{},"Define research tasks",[1009,1704,1705,1710,1713],{},[1027,1706,1707],{},[902,1708,1709],{},"Researcher 1",[1027,1711,1712],{},"crawl4ai, search",[1027,1714,1715],{},"Competitor analysis",[1009,1717,1718,1723,1725],{},[1027,1719,1720],{},[902,1721,1722],{},"Researcher 2",[1027,1724,1712],{},[1027,1726,1727],{},"Market research",[1009,1729,1730,1735,1737],{},[1027,1731,1732],{},[902,1733,1734],{},"Analyst",[1027,1736,1454],{},[1027,1738,1739],{},"Synthesize findings",[17,1741,1743],{"id":1742},"tips-for-effective-agent-teams","Tips for Effective Agent Teams",[10,1745,1746],{},[902,1747,1748],{},"Do:",[663,1750,1751,1754,1757,1760],{},[666,1752,1753],{},"Assign clear, scoped tasks with no file overlap",[666,1755,1756],{},"Use skills that produce independent outputs",[666,1758,1759],{},"Have a dedicated review agent for quality control",[666,1761,1762],{},"Keep teams small (3-5 agents)",[10,1764,1765],{},[902,1766,1767],{},"Don't:",[663,1769,1770,1773,1776,1779],{},[666,1771,1772],{},"Put two agents on the same file",[666,1774,1775],{},"Use broad skills that touch the entire codebase",[666,1777,1778],{},"Spin up more agents than you have independent tasks",[666,1780,1781],{},"Skip the review step",[17,1783,1785],{"id":1784},"getting-started-with-agent-teams","Getting Started with Agent Teams",[690,1787,1788,1791,1794,1797,1800],{},[666,1789,1790],{},"Enable agent teams in Claude Code settings",[666,1792,1793],{},"Install skills for each role your team needs",[666,1795,1796],{},"Create a team with a leader and 2-3 specialists",[666,1798,1799],{},"Define independent tasks with clear boundaries",[666,1801,1802],{},"Let agents work in parallel and review the results",[10,1804,1805,1806,1809],{},"Browse the full collection of skills on ",[30,1807,1808],{"href":400},"agentskill.sh"," to find the right tools for your team. Every skill works in single-agent and multi-agent contexts, so you can start with one agent and scale up when your workflows demand it.",[10,1811,1812,1813,1819],{},"For more on multi-agent orchestration, see how ",[30,1814,1818],{"href":1815,"rel":1816},"https:\u002F\u002Fwin.sh",[1817],"nofollow","Win.sh"," brings agent teams to business automation with specialized agents for marketing, development, and operations.",[17,1821,793],{"id":792},[795,1823,1824,1827],{},[798,1825,1826],{},"What are Claude Code agent teams?",[10,1828,1829],{},"Claude Code agent teams let you run multiple AI agents in parallel within the same project. A team leader coordinates specialized agents (researcher, coder, tester) that work on independent tasks simultaneously, then merge their results.",[795,1831,1832,1835],{},[798,1833,1834],{},"What skills work best with agent teams?",[10,1836,1837],{},"Skills that handle independent, parallelizable tasks work best. Code review, testing, research, documentation, and SEO skills can each run on separate agents without conflicts. Avoid skills that edit the same files.",[795,1839,1840,1843],{},[798,1841,1842],{},"How many agents can I run in a team?",[10,1844,1845],{},"There's no hard limit, but 3-5 agents is the sweet spot. More agents means more coordination overhead. Each agent consumes API resources, so balance parallel speed against cost.",[795,1847,1848,1851],{},[798,1849,1850],{},"Do I need special skills for agent teams?",[10,1852,1853],{},"No. Any SKILL.md works in a team context. But skills designed for clear, scoped tasks (like auditing one file or generating one component) work better than broad skills that touch many files.",[795,1855,1856,1859],{},[798,1857,1858],{},"Can agent teams from different platforms collaborate?",[10,1860,1861],{},"Currently, agent teams are a Claude Code feature. Other platforms may add similar capabilities. The skills themselves are portable across platforms, but the team coordination layer is specific to Claude Code.",[430,1863,432],{},{"title":44,"searchDepth":434,"depth":434,"links":1865},[1866,1867,1871,1875,1879,1883,1888,1889,1890],{"id":1333,"depth":434,"text":1334},{"id":1373,"depth":434,"text":1374,"children":1868},[1869,1870],{"id":1377,"depth":439,"text":1378},{"id":1399,"depth":439,"text":1400},{"id":1421,"depth":434,"text":1422,"children":1872},[1873,1874],{"id":1425,"depth":439,"text":1426},{"id":1447,"depth":439,"text":1448},{"id":1470,"depth":434,"text":1471,"children":1876},[1877,1878],{"id":1474,"depth":439,"text":1475},{"id":1496,"depth":439,"text":1497},{"id":1519,"depth":434,"text":1520,"children":1880},[1881,1882],{"id":1523,"depth":439,"text":1524},{"id":563,"depth":439,"text":1530},{"id":1536,"depth":434,"text":1537,"children":1884},[1885,1886,1887],{"id":1540,"depth":439,"text":1541},{"id":1609,"depth":439,"text":1610},{"id":1676,"depth":439,"text":1677},{"id":1742,"depth":434,"text":1743},{"id":1784,"depth":434,"text":1785},{"id":792,"depth":434,"text":793},"The best skills for Claude Code agent teams. Coordinate multiple AI agents, parallelize work, and ship faster with skills designed for multi-agent workflows.",[1893,1894,1895,1896,1897],{"question":1826,"answer":1829},{"question":1834,"answer":1837},{"question":1842,"answer":1845},{"question":1850,"answer":1853},{"question":1858,"answer":1861},{},"\u002Fblog\u002Fskills-for-claude-code-agent-teams",{"title":1322,"description":1891},"blog\u002Fskills-for-claude-code-agent-teams",[1903,1904,1905],"agent-teams","claude-code","multi-agent","ietN-nH7n615ghkXCmPEsHCr0OE7ZfYVgmBt7YVVWgE",{"id":1908,"title":1909,"body":1910,"date":2676,"description":2677,"extension":466,"faqs":2678,"image":480,"meta":2691,"navigation":482,"path":2692,"seo":2693,"stem":2694,"tags":2695,"__hash__":2700},"content\u002Fblog\u002Fhow-to-sell-to-ai-agents.md","How to Sell to AI Agents: The CLI-First Distribution Strategy",{"type":7,"value":1911,"toc":2659},[1912,1916,1919,1922,1925,1929,1932,1935,1940,1990,1995,2026,2029,2032,2036,2039,2045,2051,2054,2071,2077,2091,2094,2098,2101,2105,2108,2116,2131,2135,2138,2404,2414,2418,2421,2459,2466,2470,2477,2480,2484,2488,2495,2543,2549,2552,2559,2603,2606,2610,2613,2616,2619,2622,2625,2653,2656],[17,1913,1915],{"id":1914},"the-shift-agents-are-the-new-customers","The shift: agents are the new customers",[10,1917,1918],{},"A growing number of SaaS products are seeing a new type of user: AI agents. Not humans clicking through a UI, but autonomous agents that discover tools, connect to them, and use them as part of larger workflows.",[10,1920,1921],{},"This is not theoretical. Postiz, an open source social media scheduling tool, went from $17K to $45K MRR in weeks after making their product agent-friendly. Their founder attributes the growth directly to agents discovering and using their tool.",[10,1923,1924],{},"The pattern is simple. Agents need tools to accomplish tasks. If your product is easy for an agent to use, agents will pick you. If it's not, they'll pick a competitor.",[17,1926,1928],{"id":1927},"why-cli-beats-api-for-agents","Why CLI beats API for agents",[10,1930,1931],{},"The first instinct is to build an API. You probably already have one. But there's a problem: API requests are verbose. A single POST request with headers, JSON body, authentication, and error handling can be 15-20 lines of code that an agent needs to construct.",[10,1933,1934],{},"CLI commands are short. Compare these two approaches for scheduling a social media post:",[10,1936,1937],{},[902,1938,1939],{},"API approach (high token cost):",[39,1941,1943],{"className":41,"code":1942,"language":43,"meta":44,"style":44},"curl -X POST https:\u002F\u002Fapi.example.com\u002Fv1\u002Fposts \\\n  -H \"Authorization: Bearer sk_123\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"content\":\"Hello world\",\"integrations\":[\"twitter-456\"],\"date\":\"2026-03-11T12:00:00Z\",\"type\":\"schedule\"}'\n",[46,1944,1945,1963,1973,1982],{"__ignoreMap":44},[49,1946,1947,1950,1954,1957,1960],{"class":51,"line":52},[49,1948,1949],{"class":55},"curl",[49,1951,1953],{"class":1952},"sj4cs"," -X",[49,1955,1956],{"class":59}," POST",[49,1958,1959],{"class":59}," https:\u002F\u002Fapi.example.com\u002Fv1\u002Fposts",[49,1961,1962],{"class":1952}," \\\n",[49,1964,1965,1968,1971],{"class":51,"line":434},[49,1966,1967],{"class":1952},"  -H",[49,1969,1970],{"class":59}," \"Authorization: Bearer sk_123\"",[49,1972,1962],{"class":1952},[49,1974,1975,1977,1980],{"class":51,"line":439},[49,1976,1967],{"class":1952},[49,1978,1979],{"class":59}," \"Content-Type: application\u002Fjson\"",[49,1981,1962],{"class":1952},[49,1983,1984,1987],{"class":51,"line":1117},[49,1985,1986],{"class":1952},"  -d",[49,1988,1989],{"class":59}," '{\"content\":\"Hello world\",\"integrations\":[\"twitter-456\"],\"date\":\"2026-03-11T12:00:00Z\",\"type\":\"schedule\"}'\n",[10,1991,1992],{},[902,1993,1994],{},"CLI approach (low token cost):",[39,1996,1998],{"className":41,"code":1997,"language":43,"meta":44,"style":44},"postiz posts:create -c \"Hello world\" -i \"twitter-456\" -s \"2026-03-11T12:00:00Z\"\n",[46,1999,2000],{"__ignoreMap":44},[49,2001,2002,2005,2008,2011,2014,2017,2020,2023],{"class":51,"line":52},[49,2003,2004],{"class":55},"postiz",[49,2006,2007],{"class":59}," posts:create",[49,2009,2010],{"class":1952}," -c",[49,2012,2013],{"class":59}," \"Hello world\"",[49,2015,2016],{"class":1952}," -i",[49,2018,2019],{"class":59}," \"twitter-456\"",[49,2021,2022],{"class":1952}," -s",[49,2024,2025],{"class":59}," \"2026-03-11T12:00:00Z\"\n",[10,2027,2028],{},"The CLI version uses fewer tokens, has less room for error, and is easier for the agent to iterate on if something goes wrong. Every failed attempt with the API means reconstructing the entire JSON payload. With the CLI, the agent just tweaks a flag.",[10,2030,2031],{},"This matters at scale. When an agent runs a workflow that calls your tool hundreds of times, the token savings compound. Less context rot means more reliable execution.",[17,2033,2035],{"id":2034},"the-three-layers-api-cli-skill","The three layers: API, CLI, Skill",[10,2037,2038],{},"Building for agents requires three layers:",[10,2040,2041,2044],{},[902,2042,2043],{},"1. API (you probably have this)","\nYour REST or GraphQL endpoints. This is the foundation. The CLI wraps it.",[10,2046,2047,2050],{},[902,2048,2049],{},"2. CLI (the missing piece for most SaaS)","\nA command-line tool published to npm (or pip, cargo, etc.) that wraps your API into short, composable commands. This is what agents actually call.",[10,2052,2053],{},"Building a CLI is straightforward. The pattern:",[663,2055,2056,2059,2062,2065,2068],{},[666,2057,2058],{},"Use yargs (Node.js) or click (Python) for argument parsing",[666,2060,2061],{},"Each command maps to one API call",[666,2063,2064],{},"All output is JSON (machine-readable)",[666,2066,2067],{},"Support stdin piping for composability",[666,2069,2070],{},"Two dependencies, a few hundred lines of code",[10,2072,2073,2076],{},[902,2074,2075],{},"3. Skill file (how agents discover you)","\nA SKILL.md file that documents your CLI for agents. This is the most important piece. It teaches the agent:",[663,2078,2079,2082,2085,2088],{},[666,2080,2081],{},"What commands are available",[666,2083,2084],{},"Common workflow patterns (not just individual commands)",[666,2086,2087],{},"Gotchas and error handling",[666,2089,2090],{},"When to use which command",[10,2092,2093],{},"A good skill file is 300-700 lines. It's not just a reference manual. It's a playbook.",[17,2095,2097],{"id":2096},"how-to-build-your-cli-in-an-afternoon","How to build your CLI in an afternoon",[10,2099,2100],{},"Here's the concrete playbook:",[22,2102,2104],{"id":2103},"step-1-map-your-api-to-commands","Step 1: Map your API to commands",[10,2106,2107],{},"List your API endpoints. Each one becomes a CLI command:",[39,2109,2114],{"className":2110,"code":2112,"language":2113},[2111],"language-text","POST \u002Fapi\u002Fv1\u002Fdetect    →  myapp detect -t \"text\"\nPOST \u002Fapi\u002Fv1\u002Fhumanize  →  myapp humanize -t \"text\" -i medium\nGET  \u002Fapi\u002Fv1\u002Fcredits   →  myapp credits\n","text",[46,2115,2112],{"__ignoreMap":44},[10,2117,2118,2119,2122,2123,2126,2127,2130],{},"Keep commands short. Use single-letter aliases for common flags (",[46,2120,2121],{},"-t"," for text, ",[46,2124,2125],{},"-f"," for file, ",[46,2128,2129],{},"-i"," for intensity).",[22,2132,2134],{"id":2133},"step-2-build-the-wrapper","Step 2: Build the wrapper",[10,2136,2137],{},"The code is minimal. Here's the pattern in TypeScript:",[39,2139,2143],{"className":2140,"code":2141,"language":2142,"meta":44,"style":44},"language-typescript shiki shiki-themes github-light github-dark","\u002F\u002F api.ts - thin wrapper over fetch\nclass MyAppAPI {\n  async detect(text: string) {\n    return this.request('\u002Fdetect', { method: 'POST', body: JSON.stringify({ text }) });\n  }\n}\n\n\u002F\u002F index.ts - yargs commands\nyargs\n  .command('detect', 'Detect something', (yargs) => {\n    return yargs.option('text', { alias: 't', type: 'string' });\n  }, async (argv) => {\n    const result = await api.detect(argv.text);\n    console.log(JSON.stringify(result, null, 2));\n  })\n  .parse();\n","typescript",[46,2144,2145,2150,2162,2184,2223,2228,2233,2237,2242,2247,2280,2311,2332,2356,2387,2393],{"__ignoreMap":44},[49,2146,2147],{"class":51,"line":52},[49,2148,2149],{"class":770},"\u002F\u002F api.ts - thin wrapper over fetch\n",[49,2151,2152,2156,2159],{"class":51,"line":434},[49,2153,2155],{"class":2154},"szBVR","class",[49,2157,2158],{"class":55}," MyAppAPI",[49,2160,2161],{"class":1113}," {\n",[49,2163,2164,2167,2170,2173,2175,2178,2181],{"class":51,"line":439},[49,2165,2166],{"class":2154},"  async",[49,2168,2169],{"class":55}," detect",[49,2171,2172],{"class":1113},"(",[49,2174,2113],{"class":1109},[49,2176,2177],{"class":2154},":",[49,2179,2180],{"class":1952}," string",[49,2182,2183],{"class":1113},") {\n",[49,2185,2186,2189,2192,2195,2198,2200,2203,2206,2209,2212,2215,2217,2220],{"class":51,"line":1117},[49,2187,2188],{"class":2154},"    return",[49,2190,2191],{"class":1952}," this",[49,2193,2194],{"class":1113},".",[49,2196,2197],{"class":55},"request",[49,2199,2172],{"class":1113},[49,2201,2202],{"class":59},"'\u002Fdetect'",[49,2204,2205],{"class":1113},", { method: ",[49,2207,2208],{"class":59},"'POST'",[49,2210,2211],{"class":1113},", body: ",[49,2213,2214],{"class":1952},"JSON",[49,2216,2194],{"class":1113},[49,2218,2219],{"class":55},"stringify",[49,2221,2222],{"class":1113},"({ text }) });\n",[49,2224,2225],{"class":51,"line":1126},[49,2226,2227],{"class":1113},"  }\n",[49,2229,2230],{"class":51,"line":1135},[49,2231,2232],{"class":1113},"}\n",[49,2234,2235],{"class":51,"line":1143},[49,2236,1104],{"emptyLinePlaceholder":482},[49,2238,2239],{"class":51,"line":1151},[49,2240,2241],{"class":770},"\u002F\u002F index.ts - yargs commands\n",[49,2243,2244],{"class":51,"line":1159},[49,2245,2246],{"class":1113},"yargs\n",[49,2248,2249,2252,2255,2257,2260,2263,2266,2269,2272,2275,2278],{"class":51,"line":1168},[49,2250,2251],{"class":1113},"  .",[49,2253,2254],{"class":55},"command",[49,2256,2172],{"class":1113},[49,2258,2259],{"class":59},"'detect'",[49,2261,2262],{"class":1113},", ",[49,2264,2265],{"class":59},"'Detect something'",[49,2267,2268],{"class":1113},", (",[49,2270,2271],{"class":1109},"yargs",[49,2273,2274],{"class":1113},") ",[49,2276,2277],{"class":2154},"=>",[49,2279,2161],{"class":1113},[49,2281,2283,2285,2288,2291,2293,2296,2299,2302,2305,2308],{"class":51,"line":2282},11,[49,2284,2188],{"class":2154},[49,2286,2287],{"class":1113}," yargs.",[49,2289,2290],{"class":55},"option",[49,2292,2172],{"class":1113},[49,2294,2295],{"class":59},"'text'",[49,2297,2298],{"class":1113},", { alias: ",[49,2300,2301],{"class":59},"'t'",[49,2303,2304],{"class":1113},", type: ",[49,2306,2307],{"class":59},"'string'",[49,2309,2310],{"class":1113}," });\n",[49,2312,2314,2317,2320,2323,2326,2328,2330],{"class":51,"line":2313},12,[49,2315,2316],{"class":1113},"  }, ",[49,2318,2319],{"class":2154},"async",[49,2321,2322],{"class":1113}," (",[49,2324,2325],{"class":1109},"argv",[49,2327,2274],{"class":1113},[49,2329,2277],{"class":2154},[49,2331,2161],{"class":1113},[49,2333,2335,2338,2341,2344,2347,2350,2353],{"class":51,"line":2334},13,[49,2336,2337],{"class":2154},"    const",[49,2339,2340],{"class":1952}," result",[49,2342,2343],{"class":2154}," =",[49,2345,2346],{"class":2154}," await",[49,2348,2349],{"class":1113}," api.",[49,2351,2352],{"class":55},"detect",[49,2354,2355],{"class":1113},"(argv.text);\n",[49,2357,2359,2362,2365,2367,2369,2371,2373,2376,2379,2381,2384],{"class":51,"line":2358},14,[49,2360,2361],{"class":1113},"    console.",[49,2363,2364],{"class":55},"log",[49,2366,2172],{"class":1113},[49,2368,2214],{"class":1952},[49,2370,2194],{"class":1113},[49,2372,2219],{"class":55},[49,2374,2375],{"class":1113},"(result, ",[49,2377,2378],{"class":1952},"null",[49,2380,2262],{"class":1113},[49,2382,2383],{"class":1952},"2",[49,2385,2386],{"class":1113},"));\n",[49,2388,2390],{"class":51,"line":2389},15,[49,2391,2392],{"class":1113},"  })\n",[49,2394,2396,2398,2401],{"class":51,"line":2395},16,[49,2397,2251],{"class":1113},[49,2399,2400],{"class":55},"parse",[49,2402,2403],{"class":1113},"();\n",[10,2405,2406,2407,2409,2410,2413],{},"Dependencies: ",[46,2408,2271],{}," and optionally ",[46,2411,2412],{},"node-fetch",". That's it. Publish to npm.",[22,2415,2417],{"id":2416},"step-3-write-the-skill-file","Step 3: Write the skill file",[10,2419,2420],{},"This is where most people underinvest. A skill file needs:",[690,2422,2423,2429,2435,2441,2447,2453],{},[666,2424,2425,2428],{},[902,2426,2427],{},"Installation instructions"," (npm install command)",[666,2430,2431,2434],{},[902,2432,2433],{},"Core workflow"," (the 3-5 step pattern agents should follow)",[666,2436,2437,2440],{},[902,2438,2439],{},"Every command documented"," with examples",[666,2442,2443,2446],{},[902,2444,2445],{},"Common patterns"," (batch processing, error recovery, piping)",[666,2448,2449,2452],{},[902,2450,2451],{},"Gotchas"," (10+ things that can go wrong)",[666,2454,2455,2458],{},[902,2456,2457],{},"Quick reference card"," (all commands in one block)",[10,2460,2461,2462,2465],{},"Look at ",[30,2463,2464],{"href":400},"existing skills on agentskill.sh"," for examples. The best ones are 300-700 lines.",[22,2467,2469],{"id":2468},"step-4-cross-promote","Step 4: Cross-promote",[10,2471,2472,2473,2476],{},"Bake discovery into your CLI. When a user runs ",[46,2474,2475],{},"--help",", include a link to your skill directory or related tools. When an agent reads your skill file, it should learn about complementary tools.",[10,2478,2479],{},"This is how ecosystems form. One tool recommends another. Agents follow the recommendations.",[17,2481,2483],{"id":2482},"real-examples","Real examples",[22,2485,2487],{"id":2486},"humanizerai","HumanizerAI",[10,2489,2490,2494],{},[30,2491,2487],{"href":2492,"rel":2493},"https:\u002F\u002Fhumanizerai.com",[1817]," detects and rewrites AI-generated text to bypass detectors like GPTZero and Turnitin.",[39,2496,2498],{"className":41,"code":2497,"language":43,"meta":44,"style":44},"npm install -g humanizerai\nhumanizerai detect -t \"Your text here\"\nhumanizerai humanize -t \"Your text here\" -i aggressive\n",[46,2499,2500,2514,2526],{"__ignoreMap":44},[49,2501,2502,2505,2508,2511],{"class":51,"line":52},[49,2503,2504],{"class":55},"npm",[49,2506,2507],{"class":59}," install",[49,2509,2510],{"class":1952}," -g",[49,2512,2513],{"class":59}," humanizerai\n",[49,2515,2516,2518,2520,2523],{"class":51,"line":434},[49,2517,2486],{"class":55},[49,2519,2169],{"class":59},[49,2521,2522],{"class":1952}," -t",[49,2524,2525],{"class":59}," \"Your text here\"\n",[49,2527,2528,2530,2533,2535,2538,2540],{"class":51,"line":439},[49,2529,2486],{"class":55},[49,2531,2532],{"class":59}," humanize",[49,2534,2522],{"class":1952},[49,2536,2537],{"class":59}," \"Your text here\"",[49,2539,2016],{"class":1952},[49,2541,2542],{"class":59}," aggressive\n",[10,2544,2545,2546,2194],{},"Three commands. An agent can detect AI content, humanize it, and verify the result in a pipeline. The ",[30,2547,2548],{"href":400},"skill is on agentskill.sh",[22,2550,2551],{"id":2004},"Postiz",[10,2553,2554,2558],{},[30,2555,2551],{"href":2556,"rel":2557},"https:\u002F\u002Fpostiz.com",[1817]," schedules social media posts across 28+ platforms.",[39,2560,2562],{"className":41,"code":2561,"language":43,"meta":44,"style":44},"npm install -g postiz\npostiz integrations:list\npostiz posts:create -c \"Content\" -s \"2026-03-11T12:00:00Z\" -i \"twitter-id\"\n",[46,2563,2564,2575,2582],{"__ignoreMap":44},[49,2565,2566,2568,2570,2572],{"class":51,"line":52},[49,2567,2504],{"class":55},[49,2569,2507],{"class":59},[49,2571,2510],{"class":1952},[49,2573,2574],{"class":59}," postiz\n",[49,2576,2577,2579],{"class":51,"line":434},[49,2578,2004],{"class":55},[49,2580,2581],{"class":59}," integrations:list\n",[49,2583,2584,2586,2588,2590,2593,2595,2598,2600],{"class":51,"line":439},[49,2585,2004],{"class":55},[49,2587,2007],{"class":59},[49,2589,2010],{"class":1952},[49,2591,2592],{"class":59}," \"Content\"",[49,2594,2022],{"class":1952},[49,2596,2597],{"class":59}," \"2026-03-11T12:00:00Z\"",[49,2599,2016],{"class":1952},[49,2601,2602],{"class":59}," \"twitter-id\"\n",[10,2604,2605],{},"Their skill file is 700+ lines with 7 workflow patterns, platform-specific examples, and cross-promotion of related tools.",[17,2607,2609],{"id":2608},"the-churn-advantage","The churn advantage",[10,2611,2612],{},"There's a hidden benefit to agent distribution. Automation users churn less.",[10,2614,2615],{},"When a human uses your product, they might forget, get busy, or lose motivation. Usage drops. They cancel.",[10,2617,2618],{},"When an agent or automation uses your product, it runs consistently. Every day, every week, on schedule. The automation doesn't get discouraged. It doesn't forget.",[10,2620,2621],{},"Several SaaS founders report that users who connect through automation platforms or agent workflows have significantly lower churn than manual users. The product becomes infrastructure rather than a tool you remember to open.",[17,2623,2624],{"id":382},"Getting started",[690,2626,2627,2633,2639,2647],{},[666,2628,2629,2632],{},[902,2630,2631],{},"Build a CLI"," wrapping your existing API. Use yargs. Publish to npm.",[666,2634,2635,2638],{},[902,2636,2637],{},"Write a SKILL.md"," with workflows, patterns, and gotchas. Make it 300+ lines.",[666,2640,2641,2646],{},[902,2642,2643,2644],{},"Publish to ",[30,2645,1808],{"href":400}," so agents can discover your tool.",[666,2648,2649,2652],{},[902,2650,2651],{},"Cross-promote"," related tools in your CLI help and skill file.",[10,2654,2655],{},"Agents are already choosing tools. The question is whether they'll choose yours.",[430,2657,2658],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":44,"searchDepth":434,"depth":434,"links":2660},[2661,2662,2663,2664,2670,2674,2675],{"id":1914,"depth":434,"text":1915},{"id":1927,"depth":434,"text":1928},{"id":2034,"depth":434,"text":2035},{"id":2096,"depth":434,"text":2097,"children":2665},[2666,2667,2668,2669],{"id":2103,"depth":439,"text":2104},{"id":2133,"depth":439,"text":2134},{"id":2416,"depth":439,"text":2417},{"id":2468,"depth":439,"text":2469},{"id":2482,"depth":434,"text":2483,"children":2671},[2672,2673],{"id":2486,"depth":439,"text":2487},{"id":2004,"depth":439,"text":2551},{"id":2608,"depth":434,"text":2609},{"id":382,"depth":434,"text":2624},"2026-03-11","AI agents are the new customers. Learn how SaaS founders are growing revenue by building CLI tools and agent skills. A step-by-step playbook with real examples.",[2679,2682,2685,2688],{"question":2680,"answer":2681},"Why do AI agents prefer CLI tools over APIs?","CLI commands are shorter than full API requests with JSON payloads. This means fewer tokens consumed, less context rot, and easier iteration when something fails. An agent can write 'postiz posts:create -c text -i id' instead of constructing a multi-line curl request with headers, body, and authentication.",{"question":2683,"answer":2684},"How do I create a skill for my SaaS product?","Start by building a CLI wrapper around your existing API. Use a framework like yargs (Node.js) or click (Python). Then create a SKILL.md file that documents all commands, common workflows, and gotchas. Publish the CLI to npm and the skill to agentskill.sh.",{"question":2686,"answer":2687},"Do agent users have lower churn than regular users?","Yes. When users connect your product to an automation or agent workflow, usage becomes consistent and automatic. Manual users get discouraged and stop. Automated users keep running indefinitely. Several SaaS founders report significantly lower churn from automation-connected accounts.",{"question":2689,"answer":2690},"What is the difference between a CLI, an API, and a skill?","An API is the raw interface to your product (HTTP endpoints). A CLI is a command-line wrapper that simplifies API calls into short commands. A skill is a documentation file (SKILL.md) that teaches AI agents how to use your CLI effectively. You need all three: API for the foundation, CLI for token efficiency, skill for agent discoverability.",{},"\u002Fblog\u002Fhow-to-sell-to-ai-agents",{"title":1909,"description":2677},"blog\u002Fhow-to-sell-to-ai-agents",[2696,2697,2698,2699],"strategy","cli","saas","distribution","4bDPHjQxsGbADeEY29IOCEE0ZwGH_Z3N-INQ8zxnoHA"]