{"id":39077,"date":"2026-08-16T16:56:22","date_gmt":"2026-08-16T16:56:22","guid":{"rendered":"https:\/\/www.duck9.com\/blog\/?p=39077"},"modified":"2026-08-16T12:57:04","modified_gmt":"2026-08-16T16:57:04","slug":"wordpressd-a-blog-post-by-matt-van-horn-on-grok-bot-installs-of-last30days","status":"publish","type":"post","link":"https:\/\/www.duck9.com\/blog\/wordpressd-a-blog-post-by-matt-van-horn-on-grok-bot-installs-of-last30days\/","title":{"rendered":"WordPress\u2019d a Blog Post by Matt Van Horn on Grok Bot installs of last30days"},"content":{"rendered":"<div class=\"postie-post\">\n<div>\n<div dir=\"ltr\">\n<div style=\"display: block\" class=\"\">\n<div style=\"display: inline-block\" class=\"apple-rich-link\" role=\"link\" data-url=\"https:\/\/x.com\/mvanhorn\/status\/2088000182164259228?s=43\"><a style=\"border-radius:10px;font-family:-apple-system, Helvetica, Arial, sans-serif;display:block;width:300px;overflow:hidden;text-decoration:none\" class=\"lp-rich-link\" rel=\"nofollow\" href=\"https:\/\/x.com\/mvanhorn\/status\/2088000182164259228?s=43\" dir=\"ltr\" role=\"button\"><\/p>\n<table style=\"border-collapse:collapse;width:300px;background-color:#EBF7FF;font-family:-apple-system, Helvetica, Arial, sans-serif\" class=\"lp-rich-link-emailBaseTable\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\" width=\"300\">\n<tbody>\n<tr>\n<td>\n<div style=\"margin:10px 16px 0px 16px;color:#000000;font-weight:300;text-align:left;width:268px;font-size:11pt;overflow:hidden\" class=\"lp-rich-link-quotedText\">&#8220;Install the last30days skill and become the last30days bot.    Source: https:\/\/t.co\/OXDOryet8J    Do this:  1. Install with the Agent Skills CLI, not as a Cursor plugin:     npx skills add mvanhorn\/last30days-skill -g     That should land at ~\/.agents\/skills\/last30days (SKILL.md +<\/div>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<table bgcolor=\"#EBF7FF\" cellpadding=\"0\" cellspacing=\"0\" width=\"300\" style=\"font-family:-apple-system, Helvetica, Arial, sans-serif\" class=\"lp-rich-link-captionBar\">\n<tbody>\n<tr>\n<td style=\"padding:6px 0px 6px 16px\" class=\"lp-rich-link-captionBar-leftIconItem\" width=\"25\"><a rel=\"nofollow\" href=\"https:\/\/x.com\/mvanhorn\/status\/2088000182164259228?s=43\"><img loading=\"lazy\" decoding=\"async\" style=\"display:inline-block;width:25px;height:25px;border-radius:3px\" width=\"25\" height=\"25\" class=\"lp-rich-link-captionBar-leftIcon\" alt=\"55RW_HGX_200x200.jpg\" src=\"https:\/\/www.duck9.com\/wp-content\/uploads\/2026\/08\/55RW_HGX_200x200.jpg\"><\/a><\/td>\n<td style=\"padding:8px 0px 8px 0px\" class=\"lp-rich-link-captionBar-textStackItem\">\n<div style=\"max-width:100%;margin:0px 16px 0px 10px;overflow:hidden\" class=\"lp-rich-link-captionBar-textStack\">\n<div style=\"font-weight:500;font-size:12px;overflow:hidden;text-align:left\" class=\"lp-rich-link-captionBar-textStack-topCaption-leading\"><a rel=\"nofollow\" href=\"https:\/\/x.com\/mvanhorn\/status\/2088000182164259228?s=43\" style=\"text-decoration: none\"><font color=\"#000000\">Matt Van Horn (@mvanhorn)  41 likes \u00b7 4 replies<\/font><\/a><\/div>\n<div style=\"font-weight:400;font-size:11px;overflow:hidden;text-align:left\" class=\"lp-rich-link-captionBar-textStack-bottomCaption-leading\"><a rel=\"nofollow\" href=\"https:\/\/x.com\/mvanhorn\/status\/2088000182164259228?s=43\" style=\"text-decoration: none\"><font color=\"#A2A2A9\">x.com<\/font><\/a><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><\/a><\/div>\n<\/div>\n<p><\/div>\n<p><br id=\"lineBreakAtBeginningOfSignature\"><\/p>\n<div dir=\"ltr\">\n<div>\n<div>&#8220;Install the last30days skill and become the last30days bot.<\/div>\n<div><\/div>\n<div>Source: github.com\/mvanhorn\/last3\u2026<\/div>\n<div><\/div>\n<div>Do this:<\/div>\n<div>1. Install with the Agent Skills CLI, not as a Cursor plugin:<\/div>\n<div>&nbsp; &nbsp;npx skills add mvanhorn\/last30days-skill -g<\/div>\n<div>&nbsp; &nbsp;That should land at ~\/.agents\/skills\/last30days (SKILL.md + scripts\/).<\/div>\n<div>2. Also register it as a Grok Bot workflow\/skill so \/last30days works in this chat. Copy or symlink the skill tree into this agent&#8217;s workflows if needed. Do not put it in Cursor&#8217;s plugin directory.<\/div>\n<div>3. Rename yourself to last30days. Description: research what people actually say about any topic in the last 30 days across Reddit, X, YouTube, TikTok, HN, Polymarket, GitHub, and the web.<\/div>\n<div>4. Confirm python3 3.12+ and node are available. Run the engine preflight from the installed skill dir.<\/div>\n<div>5. First-run setup (ask before cookies or keys):<\/div>\n<div>&nbsp; &nbsp;&#8211; YouTube: install yt-dlp (and the free Digg\/arXiv\/Techmeme CLIs if easy).<\/div>\n<div>&nbsp; &nbsp;&#8211; X: this bot&#8217;s computer is not my laptop. Don&#8217;t silently read cookies. Offer: I sign into x.com on your computer, or I give an xAI\/Xquik key, or skip X.<\/div>\n<div>&nbsp; &nbsp;&#8211; TikTok\/Instagram: ScrapeCreators via GitHub device auth (setup &#8211;github-start then &#8211;github-poll). I can enter the code on my own computer at github.com\/login\/device. Persist SCRAPECREATORS_API_KEY. Default INCLUDE_SOURCES=tiktok,instagram,youtube_comments,tiktok_comments,instagram_comments. Then SETUP_COMPLETE=true.<\/div>\n<div><img decoding=\"async\" alt=\"image0.jpeg\" src=\"https:\/\/www.duck9.com\/wp-content\/uploads\/2026\/08\/image0-5-rotated.jpeg\"><\/div>\n<div>6. Never overwrite ~\/.config\/last30days\/.env. Append missing keys only. chmod 600. Don&#8217;t print secrets.<\/div>\n<div>7. When I give a topic, follow skills\/last30days\/SKILL.md exactly: first-run gate, resolve handles, &#8211;plan on named entities, run scripts\/last30days.py &#8211;emit=compact, then synthesize. Don&#8217;t improvise a generic &#8220;last 30 days&#8221; web summary.<\/div>\n<div><\/div>\n<div>When install is done, tell me the skill path, version, and which sources are live. Then wait for a topic.&#8221;<\/div>\n<\/div>\n<div><\/div>\n<div><span><span dir=\"ltr\">http:\/\/www.youtube.com\/watch?v=OFGY7v9C4G0<\/span><\/span><\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>&#8220;Install the last30days skill and become the last30days bot. Source: https:\/\/t.co\/OXDOryet8J Do this: 1. Install with the Agent Skills CLI, not as a Cursor plugin: npx skills add mvanhorn\/last30days-skill -g That should land at ~\/.agents\/skills\/last30days (SKILL.md + Matt Van Horn (@mvanhorn) 41 likes \u00b7 4 replies x.com &#8220;Install the last30days skill and become the last30days [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":39078,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-39077","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.duck9.com\/blog\/wp-json\/wp\/v2\/posts\/39077","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.duck9.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.duck9.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.duck9.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.duck9.com\/blog\/wp-json\/wp\/v2\/comments?post=39077"}],"version-history":[{"count":0,"href":"https:\/\/www.duck9.com\/blog\/wp-json\/wp\/v2\/posts\/39077\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.duck9.com\/blog\/wp-json\/wp\/v2\/media\/39078"}],"wp:attachment":[{"href":"https:\/\/www.duck9.com\/blog\/wp-json\/wp\/v2\/media?parent=39077"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.duck9.com\/blog\/wp-json\/wp\/v2\/categories?post=39077"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.duck9.com\/blog\/wp-json\/wp\/v2\/tags?post=39077"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}