Xhs Auto Publisher
DjangoPeng/agentic-ai
面向云服务器的小红书图文自动发布 Skill。适用于需要在 Linux 云服务器上,通过 Playwright/CDP、二维码人工接管、登录缓存、龙虾代发飞书群图片消息、截图留痕与审计日志来完成小红书草稿或发布流程的场景。
小红书评论互动运营:列出我的笔记、抓取某条笔记下的评论、按画像语气逐条回复、以及删除评论 (含自己发的回复)。基于 Playwright + 持久化登录态,headless 即可运行,与 skill-xhs-publisher 共用同一登录态。评论抓取走接口响应拦截(稳);回复/删除走 DOM 文本定位(无坐标)+ 逐字符输入反检测; 带已回复去重、逐条间隔防风控、dry-run 预演。用…
$ npx skills add ZJU-REAL/Easel --skill skill-xhs-comment-reply -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install ZJU-REAL/Easel skill-xhs-comment-reply --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/ZJU-REAL/Easel.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/openclaw/skill-xhs-comment-reply .claude/skills/skill-xhs-comment-reply && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "skill-xhs-comment-reply" agent skill from https://github.com/ZJU-REAL/Easel/tree/main/skills/openclaw/skill-xhs-comment-reply into .claude/skills/skill-xhs-comment-reply/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-xhs-comment-reply", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/ZJU-REAL/Easel/tree/main/skills/openclaw/skill-xhs-comment-replyType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add ZJU-REAL/Easel --skill skill-xhs-comment-reply -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install ZJU-REAL/Easel skill-xhs-comment-reply --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ZJU-REAL/Easel.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/openclaw/skill-xhs-comment-reply .agents/skills/skill-xhs-comment-reply && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "skill-xhs-comment-reply" agent skill from https://github.com/ZJU-REAL/Easel/tree/main/skills/openclaw/skill-xhs-comment-reply into .agents/skills/skill-xhs-comment-reply/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-xhs-comment-reply", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ZJU-REAL/Easel --skill skill-xhs-comment-reply -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install ZJU-REAL/Easel skill-xhs-comment-reply --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ZJU-REAL/Easel.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/openclaw/skill-xhs-comment-reply .cursor/skills/skill-xhs-comment-reply && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "skill-xhs-comment-reply" agent skill from https://github.com/ZJU-REAL/Easel/tree/main/skills/openclaw/skill-xhs-comment-reply into .cursor/skills/skill-xhs-comment-reply/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-xhs-comment-reply", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/ZJU-REAL/Easel.git --path skills/openclaw/skill-xhs-comment-reply--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add ZJU-REAL/Easel --skill skill-xhs-comment-reply -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install ZJU-REAL/Easel skill-xhs-comment-reply --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ZJU-REAL/Easel.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/openclaw/skill-xhs-comment-reply .gemini/skills/skill-xhs-comment-reply && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "skill-xhs-comment-reply" agent skill from https://github.com/ZJU-REAL/Easel/tree/main/skills/openclaw/skill-xhs-comment-reply into .gemini/skills/skill-xhs-comment-reply/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-xhs-comment-reply", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install ZJU-REAL/Easel skill-xhs-comment-replyInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add ZJU-REAL/Easel --skill skill-xhs-comment-reply -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/ZJU-REAL/Easel.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/openclaw/skill-xhs-comment-reply .github/skills/skill-xhs-comment-reply && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "skill-xhs-comment-reply" agent skill from https://github.com/ZJU-REAL/Easel/tree/main/skills/openclaw/skill-xhs-comment-reply into .github/skills/skill-xhs-comment-reply/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-xhs-comment-reply", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ZJU-REAL/Easel --skill skill-xhs-comment-reply -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install ZJU-REAL/Easel skill-xhs-comment-reply --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ZJU-REAL/Easel.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/openclaw/skill-xhs-comment-reply .opencode/skills/skill-xhs-comment-reply && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "skill-xhs-comment-reply" agent skill from https://github.com/ZJU-REAL/Easel/tree/main/skills/openclaw/skill-xhs-comment-reply into .opencode/skills/skill-xhs-comment-reply/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-xhs-comment-reply", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
skill-xhs-comment-reply小红书评论互动运营:列出我的笔记、抓取某条笔记下的评论、按画像语气逐条回复、以及删除评论 (含自己发的回复)。基于 Playwright + 持久化登录态,headless 即可运行,与 skill-xhs-publisher 共用同一登录态。评论抓取走接口响应拦截(稳);回复/删除走 DOM 文本定位(无坐标)+ 逐字符输入反检测; 带已回复去重、逐条间隔防风控、dry-run 预演。用…
Skill Xhs Comment Reply is an agent skill from ZJU-REAL/Easel. 小红书评论互动运营:列出我的笔记、抓取某条笔记下的评论、按画像语气逐条回复、以及删除评论 (含自己发的回复)。基于 Playwright + 持久化登录态,headless 即可运行,与 skill-xhs-publisher 共用同一登录态。评论抓取走接口响应拦截(稳);回复/删除走 DOM 文本定位(无坐标)+ 逐字符输入反检测; 带已回复去重、逐条间隔防风控、dry-run 预演。用 notes 列笔记或 fetch --url 贴链接,免手动拆 token。 触发:抓小红书评论 / 回复评论 / 删除评论 / 删评 / 维护评论区 / 看我某条笔记的评论。
Its SKILL.md is about 870 tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `EASEL-META.md` and `references/commands.md`).
It sits in Testing & QA, covering Browser testing. It works with Xiaohongshu and Playwright. The repository describes itself as: An open-source AI agent for social media — discover trends, create content, publish everywhere, and learn what works across Xiaohongshu, Douyin, Zhihu, Bilibili, and more.🎨一个开源的… The licence is Apache-2.0.
Read from SKILL.md and the folder at commit 278f420. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
pythonFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Skill Xhs Comment Reply loads about 865 tokens when it runs, and up to ~2.4k if it reads all its reference files. Until then it costs about 77 tokens; SKILL.md has 182 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from ZJU-REAL/Easel at commit 278f420, republished under its Apache-2.0 licence (© ZJU-REAL). 182 words, ~865 tokens.
.claude/skills/skill-xhs-comment-reply/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.你是"小红书评论互动助手"。目标:把一条笔记下的评论拉出来,并在用户确认后,用符合画像语气
的回复逐条回评。确定性 IO(抓评论/定位回复框/发送)走 xhs_comment.py;回复文案由你结合
画像生成,脚本只负责把你给定的文本发出去——脚本不编内容。
统一走确定性脚本 ../../shared/scripts/xhs_comment.py(CWD=项目根)。与
xhs_publish.py 共用同一持久化登录态(~/.easel-browser-profiles/XiaohongshuProfile),
登录一次两处通用——登录用 xhs_publish.py login(本 SKILL 不重复实现登录)。
| 依赖 | 说明 |
|---|---|
| playwright + chromium 内核 | xhs_comment.py check 验证 |
| 已扫码登录 | 复用 xhs-publisher 的登录态;未登录先 xhs_publish.py login |
| 定位笔记 | 不用手动拆 token:notes 子命令列出你自己的笔记(标题+note_id+从接口取的 xsec_token);或抓某篇时直接 fetch --url '<完整笔记链接>'(自动解析 note-id 与 xsec_token)。仅在已有裸 id+token 时才用 --note-id+--xsec-token |
| 干净网络 IP | 小红书对机房/代理出口常判风险,评论抓取/回复建议 --no-proxy 直连 |
notes:从创作后台列出自己已发布的笔记(标题 + note_id + 尽力带的 xsec_token)——用户说"这条/某条笔记"时先用它定位,别自己写脚本捞 token。fetch:--url '<笔记链接>'(推荐,自动解析)或 --note-id+--xsec-token;拦截 comment/page 接口响应,输出评论 JSON(id/昵称/内容/时间/属地/子评论)。reply:按昵称定位评论 → 点「回复」→ 逐字符输入 → 发送;带去重与防风控间隔。delete:删自己笔记下的评论(含自己发的回复)。按昵称(+内容片段去歧义)定位 → hover 出「···」→ 点「删除评论」→ 确认,全程文本/结构定位、无坐标;默认 dry-run,加 --exec 才真删(不可恢复)。fetch 的评论 JSON 喂进去)。自动化回复存在被平台风控、限流、封号的风险。 默认提醒用户优先用测试号、小批量运行,回复内容
人工复核。脚本已内置反检测(--disable-blink-features=AutomationControlled + 逐字符输入 +
zh-CN + 登录态持久化)+ 逐条间隔(默认 4s),但风险不可完全消除,使用者自行评估承担。
删除不可恢复:
delete默认 dry-run,只有用户在看过 dry-run 清单、明确确认后才加--exec真删; 用--content内容片段给同名评论去歧义,避免误删。
check(环境就绪?)
→ 未登录 → 用 xhs_publish.py login 扫码(一次即可)
→ 用户说"这条/某条笔记" → notes 列出你的笔记,定位是哪条(拿到 note_id / 可用链接)
→ fetch(--url 或 note_id+token,抓评论 JSON)— 展示给用户看有哪些评论
→ 你按画像语气为选定评论逐条拟回复([{id,nickname,reply}])
→ 发布前人设检查(见下,回复也是对外发言)
→ reply(先默认 dry-run 让用户确认最终回复;确认后 --exec 真发)
→ 用 --replied-file 记录已回复 id,重跑自动跳过(防重复打扰)别再手动捞 token:用户提到某条笔记时,先
notes定位;能直接抓就fetch --url(贴笔记链接即可)。只有拿不到链接时才引导用户去笔记页复制分享/打开链接。
有 Profile 时:读 style.md(语气/口头禅)、audience.md(受众关系,粉丝叫法)、
preferences.md(红线/不回什么),据此拟回复——高赞/提问优先、按人设口吻、不同评论不用同一句。
无 Profile 时退到通用友好语气,并提示"指定画像回复更贴人设"。
回复是以账号身份对外发言,同样走 AGENTS.md「发布前人设一致性检查」:用 skill-persona-check 比对
待发回复 × 画像,评分喂 python skills/shared/scripts/persona_gate.py check --score 85——
低于 80 分时警告并给修改建议,但不阻断回复;用户已明确要发布就继续执行。批量回复可对整批语气统一评一次。
reply(不加 --exec)dry-run 展示)。nickname + reply;带上 id 可启用去重(强烈建议,避免重复回评)。--no-proxy(小红书走代理常被判风险)。--headed 观察,校验通过再 headless 批量。xhs_comment.py 顶部的 SELECTORS 字典(单点集中维护),不要散改流程。全部命令(check/fetch/reply 参数、去重、首次 --headed 校验、与 comment-insights 串联)见 references/commands.md。
© ZJU-REAL, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files (references) in skills/openclaw/skill-xhs-comment-reply of ZJU-REAL/Easel.
Open the folder on GitHubat commit 278f420
Skill Xhs Comment Reply next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Skill Xhs Comment Reply this skillZJU-REAL/Easel | 3.4k | — | ~865 | Automated safety check: Pass | Apache-2.0 | |
| Xhs Auto PublisherDjangoPeng/agentic-ai | 152 | — | ~570 | Automated safety check: Pass | MIT | |
| Xiaohongshu WriterEXboys/skilllite | 170 | — | ~737 | Automated safety check: Pass | MIT | |
| Xhs Article To ImagesPluviobyte/rnskill | 1.6k | — | ~985 | Automated safety check: Pass | MIT | |
| Xhs Video Linksdragon-hh/ai-boshu-crawler | 106 | — | ~653 | Automated safety check: Pass | None | |
| Web Application Testinganthropics/skills | 180k | 51 repos | ~966 | Automated safety check: Pass | Apache-2.0 |
DjangoPeng/agentic-ai
面向云服务器的小红书图文自动发布 Skill。适用于需要在 Linux 云服务器上,通过 Playwright/CDP、二维码人工接管、登录缓存、龙虾代发飞书群图片消息、截图留痕与审计日志来完成小红书草稿或发布流程的场景。
EXboys/skilllite
小红书图文内容创作助手。必须传入 content(含 title、body、hashtags、thumbnail),建议 generatethumbnail=true。优先 Playwright HTML 截图生成封面,失败时回退 Pillow。
Pluviobyte/rnskill
把 Markdown 长文转成小红书 3:4(1080×1440)图片组的 Agent skill。内置五套设计皮肤(E 雅刊·默认 / A 暖杏奶咖 / B 雾松青 / C 黛墨描金 / D 夜读鎏金)+ 女性向三主题(F 粉色王国 / G 乙游夜境 / H 吉卜力)× 多种页型;Agent 负责读文章、拆页和填 HTML,Playwright 渲染器负责逐张截图导出…
dragon-hh/ai-boshu-crawler
Extract Xiaohongshu user profile video/note links from a provided profile URL.
anthropics/skills
Tests local web applications with Python Playwright scripts, checking frontend behavior, capturing screenshots and reading browser console logs.
sanity-io/sanity
Automates browser interactions for web testing, form filling, screenshots, and data extraction.
ZJU-REAL/Easel
微信公众号文章排版引擎:把 Markdown / Word(.docx) / PDF / 纯文本转成可直接粘贴进公众号编辑器的 HTML,自动章节编号、关键词标记、引言卡、目录、代码块、图片/GIF、作者签名;主题从 references/theme-index.md…
ZJU-REAL/Easel
微信公众号文章自动创作与发布工具。给定参考文章、文字或文档,自动搜索整理全网相关信息、生成图文并茂的公众号文章,并发布到微信公众号草稿箱。特别强调反 AI 检测写作。
ZJU-REAL/Easel
社媒卡片视觉设计系统:提供配色、中文字体层级、满画幅布局、品类骨架和死空白/密度质检,避免模板化 PPT 与廉价 AI 感。
ZJU-REAL/Easel
生成电商商品视觉方案:主图概念、场景图、详情页视觉方向和 AI 生图 Prompt. An agent skill from ZJU-REAL/Easel.
ZJU-REAL/Easel
将数据或文字内容转化为可视化信息图,支持静态(AntV)和动画 GIF 两种模式。当用户需要制作信息图、数据可视化、流程图、对比图、动画图表、GIF 图表、思维导图、SWOT 分析图时调用。本地渲染信息图/GIF 动画;要单张静态图片 URL 用 chart-visualization,要 CSV/JSON→整页报告用 data-report
ZJU-REAL/Easel
长篇小说/网文连载创作:从世界观、人设和三级大纲写到逐章正文,并用文件化状态维护伏笔、前情和跨章一致性. An agent skill from ZJU-REAL/Easel.
Works with
Categories
小红书评论互动运营:列出我的笔记、抓取某条笔记下的评论、按画像语气逐条回复、以及删除评论 (含自己发的回复)。基于 Playwright + 持久化登录态,headless 即可运行,与 skill-xhs-publisher 共用同一登录态。评论抓取走接口响应拦截(稳);回复/删除走 DOM 文本定位(无坐标)+ 逐字符输入反检测; 带已回复去重、逐条间隔防风控、dry-run 预演。用…. Skill Xhs Comment Reply is an agent skill from ZJU-REAL/Easel.
Skill Xhs Comment Reply fits situations like: tasks that involve Browser testing.
Run `npx skills add ZJU-REAL/Easel --skill skill-xhs-comment-reply -a claude-code`. Or copy the skill folder (skills/openclaw/skill-xhs-comment-reply in ZJU-REAL/Easel) into .claude/skills/skill-xhs-comment-reply in your project. Claude Code loads it when a task matches its description.
Run `npx skills add ZJU-REAL/Easel --skill skill-xhs-comment-reply -a codex`. Or copy the skill folder (skills/openclaw/skill-xhs-comment-reply in ZJU-REAL/Easel) into .agents/skills/skill-xhs-comment-reply in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ZJU-REAL/Easel --skill skill-xhs-comment-reply -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/skill-xhs-comment-reply, .gemini/skills/skill-xhs-comment-reply, .github/skills/skill-xhs-comment-reply and .opencode/skills/skill-xhs-comment-reply in your project.
Going by SKILL.md and its folder, Skill Xhs Comment Reply needs the command-line tools its instructions call (python). Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Skill Xhs Comment Reply is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 865 tokens (SKILL.md is roughly 3.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.5k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Skill Xhs Comment Reply: Xhs Auto Publisher (DjangoPeng/agentic-ai, 152 stars), Xiaohongshu Writer (EXboys/skilllite, 170 stars), Xhs Article To Images (Pluviobyte/rnskill, 1.6k stars) and Xhs Video Links (dragon-hh/ai-boshu-crawler, 106 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
ZJU-REAL (a GitHub organization) maintains it in ZJU-REAL/Easel, which has 3,376 GitHub stars. The repository holds 114 skills in this directory. The repository was last updated on October 9, 2026.
Source: ZJU-REAL/Easel on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.