用途:通过 Substack 内部 API 检索任意 Substack 通讯的文章,支持列出、获取、搜索和下载文章,并在认证后访问付费或仅订阅者可见的完整内容。
主要能力:list-posts 列出或搜索文章(支持 new/top 排序、分页、全文搜索、table/json 输出);get-post 获取单篇文章(summary/html/json);get-text 抓取文章并保存为带元数据头的 Markdown。
使用方式:需设置 SUBSTACK_SID 环境变量为 substack.sid cookie 值,Python 3.9+,通过 uv run 运行。脚本位于 skills/substack/scripts/substack.py。示例:uv run skills/substack/scripts/substack.py list-posts https://www.lennysnewsletter.com;uv run skills/substack/scripts/substack.py get-text https://www.lennysnewsletter.com my-post-slug --out ./article.md。通讯参数可接受完整 URL 或裸子域名(如 lenny)。
限制:使用 Substack 未公开的内部 API,可能失效;401/403 通常表示 cookie 过期或改名(历史上 connect.sid 曾改名为 substack.sid,由脚本中 COOKIE_NAME 常量控制)。未认证时付费文章正文会在付费墙处截断,认证(付费订阅)后返回完整内容。cookie 约有效 3 个月,除非登出否则可跨 MFA 存活。若失效,可用 website-to-api 元技能重新发现 API 并更新脚本与 SKILL.md。