{"slug":"xiaohongshu-ops","title":"\u5c0f\u7ea2\u4e66\u8fd0\u8425\u52a9\u624b","description":"\u5c0f\u7ea2\u4e66\u5168\u94fe\u8def\u8fd0\u8425\uff1a\u9996\u9875\u5206\u6790\u3001\u8d26\u53f7\u8bca\u65ad\u3001\u9009\u9898\u7075\u611f\u3001\u5185\u5bb9\u521b\u4f5c\u3001\u81ea\u52a8\u53d1\u5e03\u4e0e\u8bc4\u8bba\u56de\u590d\u3002","category":"\u53d1\u5e03\u4e0e\u8fd0\u8425","tags":["\u5c0f\u7ea2\u4e66","\u8fd0\u8425","\u53d1\u5e03"],"author":"Pe","source_url":"https://github.com/pigbiglong/xiaohongshu-ops-skill/blob/main/SKILL.md","license":"MIT","status":"published","verification":"source_reviewed","verification_notes":"\u6765\u6e90 pigbiglong/xiaohongshu-ops-skill\uff08SKILL.md\uff09\uff0c\u672c\u5730\u6253\u5305\u4e0a\u4f20\uff1b\u672a\u6267\u884c\u5305\u5185\u811a\u672c\u3002","revision":"318cc0d1cdf34e53a8f627901d41a765","created_at":"2026-10-28T15:41:05+00:00","updated_at":"2026-10-28T15:41:13+00:00","source_repo":"","source_path":"","source_commit":"","source_updated_at":"","stars":0,"proxy_score":null,"score":null,"grade":null,"dimensions":{},"evaluation":{},"installs":0,"platforms":[],"formats":[],"category_slug":"publishing","category_name":"\u53d1\u5e03\u4e0e\u8fd0\u8425","usage_guide":{},"read_url":"https://shiliuai.cn/api/v2/skills/xiaohongshu-ops","skill_url":"https://shiliuai.cn/api/v2/skills/xiaohongshu-ops/files/SKILL.md","download_url":"https://shiliuai.cn/api/v2/skills/xiaohongshu-ops/download","install_url":"https://shiliuai.cn/api/v2/skills/xiaohongshu-ops/install","files":[{"path":"LICENSE","bytes":1056,"url":"https://shiliuai.cn/api/v2/skills/xiaohongshu-ops/files/LICENSE"},{"path":"README.md","bytes":7007,"url":"https://shiliuai.cn/api/v2/skills/xiaohongshu-ops/files/README.md"},{"path":"SKILL.md","bytes":21685,"url":"https://shiliuai.cn/api/v2/skills/xiaohongshu-ops/files/SKILL.md"},{"path":"references/comment-ops.md","bytes":2800,"url":"https://shiliuai.cn/api/v2/skills/xiaohongshu-ops/files/references/comment-ops.md"},{"path":"references/knowledge-base.md","bytes":2778,"url":"https://shiliuai.cn/api/v2/skills/xiaohongshu-ops/files/references/knowledge-base.md"},{"path":"references/publish-flows.md","bytes":4066,"url":"https://shiliuai.cn/api/v2/skills/xiaohongshu-ops/files/references/publish-flows.md"},{"path":"references/runtime-rules.md","bytes":4813,"url":"https://shiliuai.cn/api/v2/skills/xiaohongshu-ops/files/references/runtime-rules.md"},{"path":"references/topic-analysis-template.md","bytes":2283,"url":"https://shiliuai.cn/api/v2/skills/xiaohongshu-ops/files/references/topic-analysis-template.md"},{"path":"scripts/xhs-cli.py","bytes":6974,"url":"https://shiliuai.cn/api/v2/skills/xiaohongshu-ops/files/scripts/xhs-cli.py"}],"content":"---\nname: xiaohongshu-ops\ntitle: \u5c0f\u7ea2\u4e66\u5168\u94fe\u8def\u8fd0\u8425\uff08Hermes \u9002\u914d\u7248\uff09\ndescription: \u628a Hermes Agent \u53d8\u6210\u4f60\u7684\u5c0f\u7ea2\u4e66\u8fd0\u8425\u52a9\u624b \u2014 \u9996\u9875\u5206\u6790\u3001\u8d26\u53f7\u8bca\u65ad\u3001\u9009\u9898\u7075\u611f\u3001\u5185\u5bb9\u521b\u4f5c\u3001\u81ea\u52a8\u53d1\u5e03\u3001\u8bc4\u8bba\u56de\u590d\u3001\u7206\u6b3e\u590d\u523b\u3001\u77e5\u8bc6\u5e93\u6c89\u6dc0\u3002\u5168\u94fe\u8def SOP \u8986\u76d6\uff0c\u57fa\u4e8e\u6d4f\u89c8\u5668\u81ea\u52a8\u5316\uff08CDP\uff09\u3002\ntags:\n  - xiaohongshu\n  - \u5c0f\u7ea2\u4e66\n  - content-ops\n  - social-media\n  - browser-automation\n  - full-chain\n---\n\n# \u5c0f\u7ea2\u4e66\u5168\u94fe\u8def\u8fd0\u8425\uff08Hermes \u9002\u914d\u7248\uff09\n\n> \u57fa\u4e8e [Xiangyu-CAS/xiaohongshu-ops-skill](https://github.com/Xiangyu-CAS/xiaohongshu-ops-skill) (1.7k\u2b50) \u9002\u914d\u4e3a Hermes Agent \u539f\u751f Skill\n\n## \u524d\u7f6e\u8981\u6c42\n\n### 1. Chrome CDP \u8c03\u8bd5\u7aef\u53e3\n```bash\n# \u542f\u52a8\u8c03\u8bd5\u6a21\u5f0f Chrome\uff08\u72ec\u7acb profile\uff09\nchrome-debug\n\n# \u5728 Hermes \u4e2d\u8fde\u63a5\n# \u8fd0\u884c:  /browser connect\n# \u786e\u8ba4 browser.cdp_url = http://localhost:9222\n```\n\n### 2. \u767b\u5f55\u5c0f\u7ea2\u4e66\u521b\u4f5c\u5e73\u53f0\n```bash\n# \u5728\u5df2\u8fde\u63a5\u7684\u6d4f\u89c8\u5668\u4e2d\u5bfc\u822a\u5230\u521b\u4f5c\u5e73\u53f0\nbrowser_navigate('https://creator.xiaohongshu.com')\n\n# \u626b\u7801\u767b\u5f55\uff08\u9996\u6b21\uff09\n# \u4f7f\u7528\u624b\u673a\u5c0f\u7ea2\u4e66 App \u626b\u7801\n# \u767b\u5f55\u6210\u529f\u540e cookie \u6301\u4e45\u5316\u5728 debug profile \u4e2d\uff0c\u540e\u7eed\u65e0\u9700\u91cd\u590d\u767b\u5f55\n```\n\n### 3. \u77e5\u8bc6\u5e93\u76ee\u5f55\uff08\u81ea\u52a8\u521b\u5efa\uff09\n```bash\nmkdir -p ~/xhs-knowledge-base/{accounts,topics,patterns,actions,reviews}\n```\n\n---\n\n## \u5de5\u4f5c\u6d41\u603b\u89c8\n\n```\n\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n\u2502                    \u5165\u53e3                              \u2502\n\u2502  \u81ea\u7136\u8bed\u8a00\u6307\u4ee4 \u2192 \u81ea\u52a8\u8def\u7531\u5230\u5bf9\u5e94\u5de5\u4f5c\u6d41                   \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n        \u2502\n        \u25bc\n\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n\u2502 \u9996\u9875\u63a8\u8350\u6d41\u5206\u6790    \u2502  \u2502  \u8d26\u53f7\u5206\u6790 & \u8bca\u65ad  \u2502  \u2502  \u9009\u9898\u7075\u611f\u751f\u6210     \u2502\n\u2502 (workflow 1)    \u2502  \u2502  (workflow 2)    \u2502  \u2502  (workflow 3)    \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n        \u2502                    \u2502                      \u2502\n        \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n                             \u25bc\n              \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n              \u2502       \u5185\u5bb9\u521b\u4f5c & \u53d1\u5e03         \u2502\n              \u2502  (workflow 4)               \u2502\n              \u2502  \u96c6\u6210 xiaohongshu-emotional  \u2502\n              \u2502  -content + flux-image-gen  \u2502\n              \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n                             \u2502\n                             \u25bc\n              \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n              \u2502  \u8bc4\u8bba\u56de\u590d & \u4e92\u52a8             \u2502\n              \u2502  (workflow 5)               \u2502\n              \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n                             \u2502\n                             \u25bc\n              \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n              \u2502  \u77e5\u8bc6\u5e93\u6c89\u6dc0                  \u2502\n              \u2502  (workflow 6)               \u2502\n              \u2502  + \u7206\u6b3e\u590d\u523b (workflow 7)    \u2502\n              \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n```\n\n---\n\n## Workflow 1: \u9996\u9875\u63a8\u8350\u6d41\u5206\u6790\n\n### \u89e6\u53d1\u8bcd\n- \"\u5e2e\u6211\u5206\u6790\u4e00\u4e0b\u6211\u5c0f\u7ea2\u4e66\u9996\u9875\u63a8\u8350\u6d41\"\n- \"\u770b\u770b\u9996\u9875\u5728\u63a8\u4ec0\u4e48\"\n- \"\u9996\u9875\u63a8\u8350\u6709\u4ec0\u4e48\u8d8b\u52bf\"\n\n### \u6b65\u9aa4\n\n**Step 1: \u6253\u5f00\u5c0f\u7ea2\u4e66\u9996\u9875**\n```\nbrowser_navigate('https://www.xiaohongshu.com/explore')\n```\n\u786e\u8ba4\u5f53\u524d\u9875\u9762\u662f\u63a8\u8350\u6d41\uff08\u4e0d\u662f\u641c\u7d22\u9875/\u4e2a\u4eba\u9875/\u6d88\u606f\u9875\uff09\u3002\n\n**Step 2: \u91c7\u6837\u9996\u9875\u524d 10-20 \u6761\u5185\u5bb9**\n```python\n# \u65b9\u6848 A: \u6807\u51c6\u65b9\u5f0f\uff08browser_snapshot \u53ef\u7528\u65f6\uff09\nbrowser_scroll(direction='down')\nbrowser_snapshot(full=true)\n\n# \u65b9\u6848 B: CDP \u76f4\u8fde\uff08\u63a8\u8350\uff0c\u66f4\u53ef\u9760 \u2014 \u907f\u514d Gemini/Glic \u5e72\u6270\uff09\n# \u5148\u7528 Target.getTargets \u627e\u5230\u6b63\u786e tab\ntabs = browser_cdp(method='Target.getTargets', params={})\npage_tab = [t for t in tabs['result']['targetInfos']\n            if t['type'] == 'page' and 'xiaohongshu.com' in t.get('url', '')]\nif page_tab:\n    tab_id = page_tab[0]['targetId']\n    # \u6eda\u52a8\u52a0\u8f7d\u66f4\u591a\n    browser_cdp(method='Runtime.evaluate', target_id=tab_id,\n        params={'expression': 'window.scrollBy(0, 3000)', 'returnByValue': True})\n    # \u63d0\u53d6\u6807\u9898\n    titles = browser_cdp(method='Runtime.evaluate', target_id=tab_id,\n        params={'expression': '''\n            [...document.querySelectorAll('a[href*=\"explore/\"]')]\n              .filter(a => a.textContent?.trim().length > 3 && !a.href.includes('channel_id'))\n              .map(a => a.textContent?.trim())\n              .filter(Boolean)\n              .slice(0, 30)\n        ''', 'returnByValue': True})\n```\n\n\u6bcf\u6761\u5361\u7247\u8bb0\u5f55\u5b57\u6bb5\uff1a\n- `title`\uff1a\u6807\u9898\u539f\u6587\n- `hook`\uff1a\u9996\u5c4f\u94a9\u5b50\n- `cover_text`\uff1a\u5c01\u9762\u5927\u5b57\u6216\u4e3b\u6587\u6848\n- `cover_type`\uff1a\u56fe\u6587 / \u89c6\u9891 / \u6587\u5b57\u914d\u56fe\n- `account_type`\uff1a\u8fbe\u4eba / \u666e\u901a\u7528\u6237 / \u54c1\u724c\n- `likes`\u3001`comments`\u3001`collects`\uff08\u82e5\u53ef\u89c1\uff09\n- `tags`\uff1a\u8bdd\u9898\u6807\u7b7e\n\n**Step 3: \u5206\u6790\u6846\u67b6**\n\u4f7f\u7528\u4ee5\u4e0b 4 \u7ef4\u5ea6\u5206\u6790\u6bcf\u6761\u5185\u5bb9\uff1a\n1. **\u63a8\u8350\u89e6\u53d1**\uff1a\u4e3a\u4ec0\u4e48\u5b83\u51fa\u73b0\u5728\u9996\u9875\uff1f\n2. **\u505c\u7559\u94a9\u5b50**\uff1a\u6807\u9898/\u5c01\u9762/\u60c5\u7eea\u70b9\n3. **\u4f20\u64ad\u673a\u5236**\uff1a\u6536\u85cf\u578b/\u8f6c\u53d1\u578b/\u8bc4\u8bba\u578b/\u5bf9\u53f7\u5165\u5ea7\u578b\n4. **\u7ed3\u6784\u6a21\u677f**\uff1a\u5f00\u5934-\u5c55\u5f00-\u53cd\u8f6c-\u6536\u53e3\u8282\u594f\n\n**Step 4: \u8f93\u51fa\u683c\u5f0f**\n```\n## \u9996\u9875\u753b\u50cf\n- \u4e3b\u5bfc\u4e3b\u9898\uff1aXXX\n- \u5e38\u89c1\u60c5\u7eea\uff1aXXX\n- \u9ad8\u9891\u5185\u5bb9\u7c7b\u578b\uff1aXXX\n\n## \u9ad8\u4fe1\u53f7\u6837\u672c\uff083-5 \u6761\uff09\n1. \u6807\u9898\uff1aXXX\n   \u94a9\u5b50\uff1aXXX\n   \u7ed3\u6784\uff1aXXX\n   \u4e92\u52a8\uff1aXXX\n   \u53ef\u590d\u7528\u70b9\uff1aXXX\n\n## \u53ef\u590d\u7528\u6a21\u5f0f\n- \u6a21\u5f0f 1\uff1aXXX\n- \u6a21\u5f0f 2\uff1aXXX\n\n## \u4e0b\u6b65\u52a8\u4f5c\n- \u5efa\u8bae\u7ee7\u7eed\u89c2\u5bdf\uff1aXXX\n- \u5efa\u8bae\u5c1d\u8bd5\u9009\u9898\uff1aXXX\n```\n\n**Step 5: \u6c89\u6dc0\u5230\u77e5\u8bc6\u5e93**\n```\n# \u5199\u5165 ~/xhs-knowledge-base/patterns/\nwrite_file(path='~/xhs-knowledge-base/patterns/<date>-<topic>.md', content='...')\nwrite_file(path='~/xhs-knowledge-base/topics/<date>-topic-ideas.md', content='...')\n\n# \u540c\u6b65\u5230 Holographic Memory\nfact_store(action='add', content='...', category='general', tags='xhs,pattern')\n```\n\n---\n\n## Workflow 2: \u8d26\u53f7\u5206\u6790 & \u8bca\u65ad\n\n### \u89e6\u53d1\u8bcd\n- \"\u5e2e\u6211\u5206\u6790\u8fd9\u4e2a\u8d26\u53f7\"\n- \"\u770b\u770b\u6211\u7684\u8d26\u53f7\u8868\u73b0\"\n- \"\u8d26\u53f7\u8bca\u65ad\"\n\n### \u6b65\u9aa4\n\n**Step 1: \u6253\u5f00\u76ee\u6807\u8d26\u53f7\u4e3b\u9875**\n```python\n# \u65b9\u5f0f A: \u6807\u51c6\u5bfc\u822a\nbrowser_navigate('https://www.xiaohongshu.com/user/profile/<user_id>')\n\n# \u65b9\u5f0f B: CDP \u76f4\u8fde\uff08\u5f53 browser_navigate \u88ab Gemini \u62e6\u622a\u65f6\uff09\ntabs = browser_cdp(method='Target.getTargets', params={})\npage_tab = [t for t in tabs['result']['targetInfos']\n            if t['type'] == 'page' and 'xiaohongshu.com' in t.get('url', '')]\nif page_tab:\n    tab_id = page_tab[0]['targetId']\n    browser_cdp(method='Page.navigate', target_id=tab_id,\n        params={'url': 'https://www.xiaohongshu.com/user/profile/<user_id>'})\n    # \u7b49\u9875\u9762\u52a0\u8f7d\u540e\u7528 CDP \u63d0\u53d6\u6570\u636e\n    import time; time.sleep(2)\n    info = browser_cdp(method='Runtime.evaluate', target_id=tab_id,\n        params={'expression': 'document.body.innerText.slice(0, 3000)',\n                'returnByValue': True})\n```\n\n**Step 2: \u91c7\u6837\u6700\u8fd1 9-15 \u7bc7\u5185\u5bb9**\n\u8bb0\u5f55\uff1a\u5934\u50cf\u3001\u6635\u79f0\u3001\u7b80\u4ecb\u3001\u7c89\u4e1d\u91cf\u3001\u83b7\u8d5e\u6536\u85cf\u603b\u91cf\n\u6bcf\u7bc7\uff1a\u6807\u9898\u3001\u5c01\u9762\u3001\u7c7b\u578b\u3001\u53d1\u5e03\u65f6\u95f4\u3001\u70b9\u8d5e/\u8bc4\u8bba/\u6536\u85cf\u3001\u8bdd\u9898\u3001\u89d2\u5ea6\n\n**Step 3: \u4e94\u7ef4\u8bc4\u5206\u8bca\u65ad**\n| \u7ef4\u5ea6 | 1-5\u5206 | \u8bf4\u660e |\n|------|-------|------|\n| \u5b9a\u4f4d\u6e05\u6670\u5ea6 | x/5 | \u80fd\u5426\u4e00\u53e5\u8bdd\u8bf4\u6e05\u8d26\u53f7 |\n| \u5185\u5bb9\u7ed3\u6784\u529b | x/5 | \u6807\u9898/\u5c01\u9762/\u6b63\u6587\u662f\u5426\u7a33\u5b9a |\n| \u4e92\u52a8\u8f6c\u5316\u529b | x/5 | \u8bc4\u8bba\u533a\u662f\u5426\u6709\u88ab\u5f15\u5bfc |\n| \u8d26\u53f7\u8fa8\u8bc6\u5ea6 | x/5 | \u662f\u5426\u50cf\"\u540c\u4e00\u4e2a\u8d26\u53f7\" |\n| \u589e\u957f\u53ef\u6301\u7eed\u6027 | x/5 | \u7206\u6b3e\u662f\u5426\u4f9d\u8d56\u5076\u53d1 |\n\n**Step 4: \u8f93\u51fa**\n```\n## \u8d26\u53f7\u5feb\u7167\n- \u4e00\u53e5\u8bdd\u5b9a\u4f4d\uff1aXXX\n- \u5185\u5bb9\u652f\u67f1\uff1aXXX\n- \u5f53\u524d\u72b6\u6001\uff1a\u589e\u957f\u671f / \u6478\u7d22\u671f / \u6df7\u4e71\u671f / \u7a33\u5b9a\u671f\n\n## \u4e94\u7ef4\u8bc4\u5206\uff08\u5e26\u7406\u7531\uff09\n## \u8bca\u65ad\u7ed3\u8bba\n## \u4e0b\u6b65\u52a8\u4f5c\uff08\u81f3\u5c11 3 \u6761\uff0c\u6309\u4f18\u5148\u7ea7\uff09\n```\n\n---\n\n## Workflow 3: \u9009\u9898\u7075\u611f\u751f\u6210\uff08\u5e73\u53f0\u641c\u7d22\u9a71\u52a8\uff09\n\n### \u89e6\u53d1\u8bcd\n- \"\u7ed9\u6211 5 \u6761\u5c0f\u7ea2\u4e66\u9009\u9898\"\n- \"\u6700\u8fd1\u6709\u4ec0\u4e48\u597d\u53d1\u7684\"\n- \"\u7ed3\u5408\u6211\u7684\u5b9a\u4f4d\u7ed9\u9009\u9898\"\n- \"\u60c5\u611f\u8d5b\u9053\u6700\u8fd1\u6709\u54ea\u4e9b\u65b9\u5411\"\n- \"\u641c\u4e00\u4e0bXX\u65b9\u5411\u7684\u70ed\u95e8\u5185\u5bb9\"\n\n### \u65b9\u6cd5\n\u6df7\u5408\u4e09\u7c7b\u4fe1\u53f7\uff0c\u901a\u8fc7**\u5c0f\u7ea2\u4e66\u5185\u90e8\u641c\u7d22**\u83b7\u53d6\u5b9e\u65f6\u6570\u636e\uff1a\n\n### Step 1: \u591a\u5173\u952e\u8bcd\u641c\u7d22 \u2014 \u83b7\u53d6\u5e73\u53f0\u4fe1\u53f7\n\n\u7528 CDP \u76f4\u8fde\u5728\u6d4f\u89c8\u5668\u4e2d\u6267\u884c\u641c\u7d22\uff08\u907f\u514d Gemini \u5e72\u6270\uff09\uff1a\n\n```python\n# 1. \u627e\u5230\u6b63\u786e\u7684 tab\ntabs = browser_cdp(method='Target.getTargets', params={})\npage_tab = [t for t in tabs['result']['targetInfos']\n            if t['type'] == 'page' and 'xiaohongshu.com' in t.get('url', '')]\nif not page_tab:\n    # \u5982\u679c\u6ca1\u6709\u5c0f\u7ea2\u4e66 tab\uff0c\u5148\u5bfc\u822a\u8fc7\u53bb\n    browser_navigate('https://www.xiaohongshu.com')\n    tabs = browser_cdp(method='Target.getTargets', params={})\n    page_tab = [t for t in tabs['result']['targetInfos']\n                if t['type'] == 'page' and 'xiaohongshu.com' in t.get('url', '')]\ntab_id = page_tab[0]['targetId']\n\n# 2. \u641c\u7d22\u5173\u952e\u8bcd\uff08URL \u4e2d keyword \u8981 URL encode\uff09\nsearch_url = 'https://www.xiaohongshu.com/search_result/?keyword=%s&sort=general&type=general'\nbrowser_cdp(method='Page.navigate', target_id=tab_id,\n    params={'url': search_url % '\u60c5\u611f\u7597\u6108'})\n\n# 3. \u63d0\u53d6\u641c\u7d22\u7ed3\u679c\uff08\u641c\u7d22\u9875\u4e0e explore \u9875 DOM \u4e0d\u540c\uff01\u7528 body.innerText\uff09\nimport time; time.sleep(2)\nresults = browser_cdp(method='Runtime.evaluate', target_id=tab_id,\n    params={'expression': 'document.body.innerText.slice(0, 4000)',\n            'returnByValue': True})\n# \u7ed3\u679c\u4e2d\u4f1a\u6309\u987a\u5e8f\u663e\u793a\uff1a\u6807\u9898 + \u4f5c\u8005 + \u65e5\u671f + \u4e92\u52a8\u6570\n```\n\n**\u641c\u7d22\u7b56\u7565\uff1a** \u81f3\u5c11\u641c 2-3 \u4e2a\u4e0d\u540c\u89d2\u5ea6\u7684\u5173\u952e\u8bcd\n\n| \u76ee\u7684 | \u5173\u952e\u8bcd\u793a\u4f8b | \u8bf4\u660e |\n|------|-----------|------|\n| \u8d5b\u9053\u5168\u666f | \u60c5\u611f\u7597\u6108\u3001\u4e24\u6027\u5173\u7cfb | \u770b\u6574\u4f53\u70ed\u5ea6\u5206\u5e03 |\n| \u5b50\u65b9\u5411\u6df1\u6316 | \u5206\u624b\u3001\u5185\u8017\u3001\u539f\u751f\u5bb6\u5ead | \u770b\u7ec6\u5206\u65b9\u5411\u7ade\u4e89 |\n| \u9a8c\u8bc1\u84dd\u6d77 | \u5206\u79bb \u60c5\u611f\u3001\u544a\u522b \u7231 | \u770b\u662f\u5426\u6709\u7ade\u54c1 |\n\n### Step 2: \u89e3\u6790\u641c\u7d22\u4fe1\u53f7\n\n\u4ece\u641c\u7d22\u7ed3\u679c\u4e2d\u63d0\u53d6\uff1a\n- **\u6807\u9898\u539f\u6587** \u2014 \u8bb0\u5f55\u7206\u6b3e\u6807\u9898\u7684\u53e5\u5f0f\u3001\u60c5\u7eea\u8bcd\u3001\u6807\u70b9\u7b26\u53f7\uff08\u2757\ud83d\udd25\u7b49\uff09\n- **\u8d5e\u6570** \u2014 8.3\u4e07\u300117.4\u4e07\u30015043 \u7b49\uff0c\u5224\u65ad\u8d5b\u9053\u7684\"\u5929\u82b1\u677f\"\n- **\u4f5c\u8005\u7c7b\u578b** \u2014 \u5927V\u8fd8\u662f\u7d20\u4eba\uff08\u7d20\u4eba\u9ad8\u8d5e\u8bf4\u660e\u5185\u5bb9\u8d28\u91cf>\u8d26\u53f7\u4f53\u91cf\uff09\n- **\u76f8\u5173\u641c\u7d22\u8bcd** \u2014 \u5c0f\u7ea2\u4e66\u641c\u7d22\u9875\u5e95\u90e8\u7684\u76f8\u5173\u63a8\u8350\u8bcd\uff08\u5982\u300c\u91ca\u6000\u6587\u6848\u300d\u300c\u4f53\u9762\u544a\u522b\u300d\u300c\u7126\u8651\u7f13\u89e3\u300d\uff09\n- **\u5185\u5bb9\u7c7b\u578b** \u2014 \u56fe\u6587/\u89c6\u9891/\u6587\u5b57\u914d\u56fe\n\n### Step 3: \u7ade\u4e89\u5206\u6790 \u2014 \u5224\u65ad\u7ea2\u6d77/\u84dd\u6d77\n\n| \u4fe1\u53f7 | \u7ea2\u6d77 | \u84dd\u6d77 |\n|------|------|------|\n| \u9ad8\u8d5e\u6761\u6570 | \u524d 10 \u6761\u90fd\u6709 5000+ | \u524d 10 \u6761\u53ea\u6709\u51e0\u767e |\n| \u4f5c\u8005\u4f53\u91cf | \u5168\u662f 10\u4e07+ \u7c89\u5927V | \u7d20\u4eba\u4e5f\u80fd\u51fa\u7206\u6b3e |\n| \u5185\u5bb9\u6df1\u5ea6 | \u5168\u662f\"\u88ab\u8fd9\u6bb5\u8bdd\u6cbb\u6108\u4e86\"\u540c\u8d28\u5316 | \u627e\u4e0d\u5230\"\u5fc3\u7406\u5b66+\u60c5\u611f\"\u7ed3\u5408\u5185\u5bb9 |\n| \u67d0\u4e00\u5173\u952e\u8bcd | \u5206\u624b \u6709 1.3\u4e07+ | \u5206\u79bb \u51e0\u4e4e\u6ca1\u6709\u7ed3\u679c |\n\n### Step 4: \u751f\u6210\u9009\u9898\u6e05\u5355\n\n\u6bcf\u4e2a\u65b9\u5411\u4ea7\u51fa **3-5 \u6761**\u9009\u9898\uff0c\u6bcf\u6761\u5305\u542b\uff1a\n\n```\n1. \u9009\u9898\u6807\u9898\uff1a\n   \u9009\u9898\u89d2\u5ea6\uff1a\u652f\u6301 / \u53cd\u5bf9 / \u4e2d\u7acb / \u4e89\u8bae\u70b9\n   \u76ee\u6807\u4eba\u7fa4\uff1a\n   \u4e92\u52a8\u94a9\u5b50\uff1a\n   \u5185\u5bb9\u7ed3\u6784\uff1a3\u6bb5\u5f0f\u5927\u7eb2\n   \u98ce\u9669\u63d0\u793a\uff1a\u662f\u5426\u5bb9\u6613\u5f15\u6218/\u8e29\u7ebf\n   \u4f9d\u636e\uff1axx\u6761\u641c\u7d22\u7ed3\u679c\u4e2d xx\u8d5e\u7684\u7206\u6b3e\u7ed3\u6784\u590d\u7528\n```\n\n### Step 5: \u7ed9\u51fa\u8d77\u53f7\u7b56\u7565\n\n\u6839\u636e\u8d26\u53f7\u9636\u6bb5\uff08\u65b0\u53f7/\u8001\u53f7/\u8f6c\u578b\u53f7\uff09\u7ed9\u51fa\u53d1\u5e03\u987a\u5e8f\u5efa\u8bae\uff1a\n\n**\u65b0\u53f7/\u8f6c\u578b\u53f7\u63a8\u8350\u7b56\u7565\uff1a**\n```\n\u7b2c1-3\u7bc7   \u8e6d\u8d5b\u9053\u70ed\u5ea6\u578b\uff08\u7528\u5df2\u9a8c\u8bc1\u7684\u7206\u6b3e\u6807\u9898\u9aa8\u67b6\uff0c\u5feb\u901f\u62ff\u521d\u59cb\u6d41\u91cf\uff09\n  \u2193\n\u7b2c4-5\u7bc7   \u5dee\u5f02\u5316\u6df1\u5ea6\u578b\uff08\u5c55\u793a\u72ec\u7279\u89c6\u89d2\uff0c\u7559\u4eba\uff09\n  \u2193\n\u7b2c7\u7bc7     \u4e2a\u4ebaIP\u578b\uff08\u5efa\u4eba\u8bbe\u8fa8\u8bc6\u5ea6\uff0c\u8ba9\u4eba\u8bb0\u4f4f\u4f60\u662f\u8c01\uff09\n  \u2193\n\u540e\u7eed       \u6df7\u53d1\uff0c\u5f62\u6210\u7a33\u5b9a\u7684\"XX+XX\"\u5185\u5bb9\u652f\u67f1\n```\n\n### \u5df2\u77e5\u6807\u9898\u9aa8\u67b6\uff08\u7ecf\u9a8c\u8bc1\u6709\u6548\uff09\n\n\u60c5\u611f\u8d5b\u9053\u5df2\u9a8c\u8bc1\u7684\u6807\u9898\u516c\u5f0f\uff1a\n```\n\u7a81\u7136\u88ab\u8fd9\u6bb5\u8bdd[\u6cbb\u6108/\u70b9\u9192/\u5e73\u590d]\u4e86\n\u53e5\u53e5\u4e0d\u63d0[\u7231/\u611f\u60c5]\uff0c\u5374\u53e5\u53e5\u90fd\u662f[\u7231/\u611f\u60c5]\n\u539f\u6765\u771f\u7684\u6709\u4eba[\u5206\u624b/\u653e\u5f03]\u4e0d\u662f\u56e0\u4e3a\u4e0d\u7231\u4e86\n\u653e\u4e0b\u4e00\u4e2a\u4eba\u7684[\u8d85\u7edd/\u6700\u597d]\u5fc3\u6001\n\u662f\u65f6\u5019\u8be5[\u653e\u624b/\u7ed3\u675f]\u4e86\u2026\n\u4f60\u54ed\u7684\u4e0d\u662f[\u4ed6/\u90a3\u4e2a\u4eba]\uff0c\u662f[\u5b89\u5168\u611f/\u81ea\u5df1]\u7684\u5d29\u584c\n```\n\n### \u8f93\u51fa\u683c\u5f0f\n\n```markdown\n## \u8d5b\u9053\u5168\u666f\n- \u6240\u5c5e\u5927\u8d5b\u9053\uff1a\u60c5\u611f\u7597\u6108\n- \u5b50\u65b9\u5411\u70ed\u5ea6\uff1a\u65b9\u5411A(\u2b50\u2b50\u2b50) \u65b9\u5411B(\u2b50\u2b50) \u65b9\u5411C(\u2b50)\n- \u6700\u5927\u7206\u6b3e\u5929\u82b1\u677f\uff1a17.4\u4e07\u8d5e\n- \u7ade\u4e89\u683c\u5c40\uff1a\u84dd\u6d77\u4fe1\u53f7 / \u7ea2\u6d77\u8b66\u544a\n\n## \u63a8\u8350\u9009\u9898\uff08\u6309\u4f18\u5148\u7ea7\uff09\n1. \u6807\u9898\uff1aXXX\n   \u4f9d\u636e\uff1aXXX\u65b9\u5411\u641c\u7d22\u4e2dYYY\u8d5e\u7684\u6a21\u5f0f\u590d\u7528\n   \u4e92\u52a8\u94a9\u5b50\uff1aXXX\n   \u7ed3\u6784\uff1aXXX\n\n## \u8d77\u53f7\u7b56\u7565\n\u7b2c1\u7bc7 \u2192 \u7b2c3\u7bc7 \u2192 \u7b2c7\u7bc7 \u2192 \u540e\u7eed\n```\n\n> **\u60c5\u611f\u8d5b\u9053\u6df1\u5ea6\u9009\u9898\u5206\u6790\u6a21\u677f**\uff1a\u89c1 `references/topic-analysis-template.md`\uff0c\u5305\u542b\u5b8c\u6574\u8f93\u51fa\u7ed3\u6784\u3001\u641c\u7d22\u7b56\u7565\u3001\u84dd\u6d77\u9a8c\u8bc1\u65b9\u6cd5\u8bba\u3002\n\n---\n\n## Workflow 4: \u5185\u5bb9\u521b\u4f5c & \u53d1\u5e03\n\n### \u89e6\u53d1\u8bcd\n- \"\u5e2e\u6211\u53d1\u5e03\u4e00\u7bc7\u7b14\u8bb0\"\n- \"\u521b\u4f5c\u4e00\u7bc7\u5173\u4e8eXX\u7684\u5185\u5bb9\"\n- \"\u5199\u4e00\u7bc7\u5c0f\u7ea2\u4e66\"\n\n### \u5185\u5bb9\u521b\u4f5c\n\u6839\u636e\u5185\u5bb9\u7c7b\u578b\u8def\u7531\uff1a\n\n**\u60c5\u611f\u65b9\u5411** \u2192 \u96c6\u6210 `xiaohongshu-emotional-content` skill\n- 5 \u6bb5\u5f0f\u7ed3\u6784\uff1aHook \u2192 \u6545\u4e8b \u2192 \u8f6c\u6298 \u2192 \u771f\u76f8 \u2192 \u91d1\u53e5\u6536\u5c3e\n- \u5fc3\u7406\u5b66\u7406\u8bba\u652f\u6491\uff08\u4f9d\u604b\u7406\u8bba/\u5ba2\u4f53\u5173\u7cfb/\u5b58\u5728\u5b64\u72ec\u7b49\uff09\n- \u6697\u8272\u8c03\u6e29\u6696\u89c6\u89c9\u98ce\u683c\n\n**\u901a\u7528\u65b9\u5411** \u2192 \u4f7f\u7528\u901a\u7528\u6a21\u677f\n- \u6807\u9898\uff08\u226420\u5b57\uff09\n- \u6b63\u6587\uff08\u77ed\u53e5+\u6362\u884c\uff0cmax 3\u884c/\u6bb5\uff09\n- \u5c01\u9762\u6587\u6848\n- \u4e92\u52a8CTA\n\n**\u5c01\u9762\u56fe\u751f\u6210** \u2192 \u96c6\u6210 `flux-image-generation` skill\n```\n# \u4f7f\u7528 FLUX.1-schnell \u751f\u6210\u5c01\u9762\n# \u63d0\u793a\u8bcd\uff1a\u7cbe\u7b80\u82f1\u6587\uff0c2-3\u53e5\n# \u5c3a\u5bf8\uff1a1024\u00d71024\n# \u538b\u7f29\u540e\u4e0a\u4f20\uff1a768px JPEG quality=90\n```\n\n### \u53d1\u5e03\u6d41\u7a0b\uff08via \u521b\u4f5c\u5e73\u53f0\uff09\n\n**Step 1: \u6253\u5f00\u521b\u4f5c\u5e73\u53f0**\n```\nbrowser_navigate('https://creator.xiaohongshu.com/publish/publish')\n```\n\n**Step 2: \u9009\u62e9\u53d1\u5e03\u7c7b\u578b**\n- \u56fe\u6587\uff08\u9ed8\u8ba4\u63a8\u8350\uff09\n- \u89c6\u9891\n- \u957f\u6587\n\n**Step 3: \u4e0a\u4f20\u7d20\u6750**\n```\n# \u56fe\u6587\u4e0a\u4f20 \u2014 \u4f7f\u7528 CDP \u5904\u7406\u6587\u4ef6\u4e0a\u4f20\nbrowser_click(ref='@upload-btn')   # \u70b9\u51fb\u4e0a\u4f20\u6309\u94ae\n# CDP: DOM.setFileInputFiles \u6216\u901a\u8fc7 Input.dispatchFileChooserEvent\nbrowser_cdp(method='DOM.setFileInputFiles', params={\n  'objectId': '...',\n  'files': ['/path/to/image.jpg']\n})\n```\n\n**Step 4: \u586b\u5199\u5185\u5bb9**\n```\nbrowser_type(ref='@title-input', text='\u6807\u9898\uff08\u226420\u5b57\uff09')\nbrowser_type(ref='@body-input', text='\u6b63\u6587\u5185\u5bb9...')\n```\n\n**Step 5: \u4e09\u8981\u7d20\u6821\u9a8c & \u505c\u5728\u53d1\u5e03\u6309\u94ae**\n\u786e\u8ba4\u4e09\u9879\u9f50\u5168\uff1a\n- \u2705 \u5c01\u9762\n- \u2705 \u6807\u9898\uff08\u226420\u5b57\uff09\n- \u2705 \u6b63\u6587\n\n**\u505c\u5728\u300c\u53d1\u5e03\u300d\u6309\u94ae\uff0c\u7b49\u5f85\u7528\u6237\u786e\u8ba4\u540e\u70b9\u51fb**\n\n---\n\n## Workflow 5: \u8bc4\u8bba\u56de\u590d & \u4e92\u52a8\n\n### \u89e6\u53d1\u8bcd\n- \"\u5e2e\u6211\u770b\u770b\u6700\u65b0\u8bc4\u8bba\"\n- \"\u56de\u590d\u8bc4\u8bba\"\n\n### \u6d41\u7a0b\n**Step 1: \u6253\u5f00\u901a\u77e5\u9875**\n```\nbrowser_navigate('https://creator.xiaohongshu.com/notifications')\n```\n\n**Step 2: \u6293\u53d6\u6700\u65b0\u8bc4\u8bba**\n\u8bb0\u5f55\uff1a\u7528\u6237\u540d\u3001\u8bc4\u8bba\u6587\u672c\u3001\u65f6\u95f4\n\n**Step 3: \u8f93\u51fa\u68c0\u67e5\u7ed3\u679c**\n- \u65b0\u8bc4\u8bba\u6761\u6570\n- \u6700\u65b0 3-5 \u6761\u6458\u8981\n- \u9ad8\u98ce\u9669\u4fe1\u53f7\uff08\u8fb1\u9a82\u3001\u9493\u9c7c\u3001\u8fdd\u89c4\uff09\n\n**Step 4: \u7528\u6237\u786e\u8ba4\u540e\u56de\u590d**\n\u6309\u7167 `persona` \u8bbe\u5b9a\u7684\u8bed\u6c14\u9010\u6761\u56de\u590d\n\n**\u98ce\u63a7\u89c4\u5219\uff1a**\n- \u9ed8\u8ba4\u4e00\u6b21\u53ea\u53d1 1 \u6761\n- \u8fde\u7eed\u56de\u590d\u95f4\u9694 8-15 \u79d2\n- \u9047\u5230\"\u64cd\u4f5c\u9891\u7e41/\u8bf7\u7a0d\u540e\u518d\u8bd5\"\u7acb\u5373\u505c\u6b62\n- \u56de\u590d \u2264280 \u5b57\n\n---\n\n## Workflow 6: \u77e5\u8bc6\u5e93\u6c89\u6dc0\n\n### \u76ee\u5f55\u7ed3\u6784\n```\n~/xhs-knowledge-base/\n\u251c\u2500\u2500 README.md           # \u603b\u89c8\u5165\u53e3\n\u251c\u2500\u2500 accounts/           # \u8d26\u53f7\u5b9a\u4f4d\u3001\u8bca\u65ad\u3001\u7ade\u54c1\u5206\u6790\n\u251c\u2500\u2500 topics/             # \u9009\u9898\u3001\u6807\u9898\u9aa8\u67b6\u3001\u5185\u5bb9\u65b9\u5411\n\u251c\u2500\u2500 patterns/           # \u7206\u6b3e\u7ed3\u6784\u3001\u5c01\u9762\u6a21\u677f\u3001\u4e92\u52a8\u94a9\u5b50\n\u251c\u2500\u2500 actions/            # \u53d1\u5e03\u3001\u56de\u590d\u3001\u4e0b\u8f7d\u3001\u590d\u523b\u8bb0\u5f55\n\u2514\u2500\u2500 reviews/            # \u590d\u76d8\u3001\u5931\u8d25\u539f\u56e0\u3001\u4e0b\u6b21\u8c03\u6574\n```\n\n### \u6587\u4ef6\u547d\u540d\n```\naccounts/2026-03-19-account-analysis-xxx.md\ntopics/2026-03-19-topic-ideas-xxx.md\npatterns/2026-03-19-title-hook-pattern.md\nactions/2026-03-19-publish-xxx.md\nreviews/2026-03-19-reply-retro.md\n```\n\n### \u540c\u65f6\u540c\u6b65\u5230 Holographic Memory\n```python\nfrom hermes_tools import fact_store, write_file\n# \u7ed3\u6784\u5316\u8bb0\u5f55\u5199\u6587\u4ef6\nwrite_file(path='~/xhs-knowledge-base/...', content='...')\n# \u5173\u952e\u7ed3\u8bba\u540c\u6b65\u5230 fact_store\nfact_store(action='add', content='...', category='general', tags='xhs,pattern')\n```\n\n---\n\n## Workflow 7: \u7206\u6b3e\u7b14\u8bb0\u590d\u523b\n\n### \u89e6\u53d1\u8bcd\n- \"\u5e2e\u6211\u590d\u523b\u8fd9\u7bc7\u7206\u6b3e\"\n- \"\u590d\u5236\u8fd9\u4e2a\u7b14\u8bb0\u7684\u98ce\u683c\"\n\n### \u56db\u6b65\u6d41\u7a0b\n1. **\u8f93\u5165** \u7206\u6b3e\u7b14\u8bb0 URL\n2. **\u5206\u6790** \u7206\u6b3e\u56e0\u7d20\uff08\u6807\u9898/\u5c01\u9762/\u6b63\u6587/\u4e92\u52a8\u673a\u5236\uff09\n3. **\u751f\u6210** \u65b0\u5c01\u9762\uff08\u4f7f\u7528 FLUX\uff0cstyle-only \u6a21\u5f0f\uff09\n4. **\u53d1\u5e03** \u65b0\u7b14\u8bb0\n\n### \u5c01\u9762\u6293\u53d6\u89c4\u5219\n```\n// \u8f6e\u64ad\u9875\u5f3a\u5236\u4f7f\u7528 active slide\nconst activeImg = document\n  .querySelector('.swiper-slide-active:not(.swiper-slide-duplicate) .swiper-container img')\n  ?.currentSrc;\n```\n\n### \u6539\u5199\u89c4\u5219\n- **\u4fdd\u7559**\uff1a\u540c\u4e3b\u9898\u3001\u540c\u4e92\u52a8\u673a\u5236\u3001\u540c\u5185\u5bb9\u7ed3\u6784\n- **\u66ff\u6362**\uff1a\u5177\u4f53\u63aa\u8f9e\u3001\u6848\u4f8b\u7ec6\u8282\u3001\u8868\u8fbe\u987a\u5e8f\n- **\u7981\u6b62**\uff1a\u9010\u53e5\u7167\u6284\u3001\u539f\u56fe\u4e8c\u6b21\u4f7f\u7528\u3001\u4f5c\u8005\u4e13\u5c5e\u4fe1\u606f\u8fc1\u79fb\n\n---\n\n## Persona \u8bbe\u7f6e\n\n\u9ed8\u8ba4 persona \u9002\u7528\u4e8e\u901a\u7528\u8fd0\u8425\u3002**\u5982\u679c\u4f60\u8fd0\u884c\u60c5\u611f\u8d5b\u9053**\uff0c\u8bf7\u5148\u52a0\u8f7d `xiaohongshu-emotional-content` skill\uff0c\u5b83\u4f1a\u8986\u76d6\u5185\u5bb9\u98ce\u683c\u8bbe\u7f6e\u3002\n\n\u53ef\u4ee5\u901a\u8fc7\u4ee5\u4e0b\u65b9\u5f0f\u81ea\u5b9a\u4e49 persona\uff1a\n```\n# \u5199\u5165\u81ea\u5b9a\u4e49 persona\nwrite_file(path='~/xhs-knowledge-base/persona.md', content='\n# \u6211\u7684\u5c0f\u7ea2\u4e66\u4eba\u8bbe\n- \u8eab\u4efd\uff1aXXX\n- \u6c14\u8d28\uff1aXXX\n- \u8bed\u6c14\uff1a\u77ed\u53e5/\u6709\u6e29\u5ea6/\u76f4\u63a5\n- \u7981\u5fcc\uff1aXXX\n')\n```\n\n---\n\n### \u5931\u8d25\u964d\u7ea7\u7b56\u7565\n\n| \u95ee\u9898 | \u5904\u7406\u65b9\u5f0f |\n|------|---------|\n| \u9875\u9762\u7ed3\u6784\u53d8\u5316 | \u5148 `browser_snapshot` \u5237\u65b0 ref\uff0c\u4e0d\u76f2\u8dd1\u65e7\u8def\u5f84 |\n| \u8fde\u7eed 2 \u6b21\u70b9\u51fb\u5931\u8d25 | \u505c\u6b62\u76f2\u8bd5\uff0c\u544a\u8bc9\u7528\u6237\"\u9875\u9762\u7ed3\u6784\u53ef\u80fd\u53d8\u4e86\" |\n| \u4e0a\u4f20\u8def\u5f84\u9519\u8bef | \u5148\u590d\u5236\u6587\u4ef6\u5230 `/tmp/xhs-uploads/` \u518d\u4e0a\u4f20 |\n| \u53d1\u5e03\u9875\u5143\u7d20\u5931\u6548 | snapshot \u5237\u65b0\u5f15\u7528\uff0c\u4ecd\u5931\u8d25\u5219\u8ba9\u7528\u6237\u624b\u52a8\u70b9\"\u53d1\u5e03\" |\n| \u91c7\u6837\u4e0d\u8db3 | \u6807\u6ce8\"\u6837\u672c\u504f\u5c11\uff0c\u7ed3\u8bba\u4ec5\u4f9b\u8bd5\u8dd1\" |\n| \u767b\u5f55\u5931\u6548 | \u63d0\u793a\u91cd\u65b0\u626b\u7801\u767b\u5f55 |\n| \u8bc4\u8bba\u8fc7\u4e8e\u9891\u7e41 | \u505c\u6b62\uff0c\u7b49\u5f85 15 \u5206\u949f\u540e\u518d\u8bd5 |\n| `browser_navigate` \u5931\u8d25(`ERR_BLOCKED_BY_CLIENT`) | Chrome Gemini/Glic \u4fa7\u680f\u5e72\u6270\u3002\u5148\u7528 `Target.getTargets` \u627e\u5230\u6b63\u786e tab ID\uff0c\u5207\u5230 CDP \u76f4\u8fde\uff1a`browser_cdp(method='Target.activateTarget', params={'targetId': tab_id})`\uff0c\u518d `browser_cdp(method='Page.navigate', target_id=tab_id, params={'url': '...'})` |\n| `browser_snapshot` \u8fd4\u56de Gemini \u9762\u677f\u800c\u975e\u9875\u9762 | \u8bf4\u660e Gemini \u4fa7\u680f\u6b63\u5728\u8986\u76d6\u9875\u9762\u3002\u5173\u95ed\u65b9\u6cd5\uff1a\u5728 `Target.getTargets` \u4e2d\u627e\u5230 `type: 'webview'`\u3001url \u542b `glic` \u6216 title \u542b `Gemini` \u7684 target \u2192 `Target.closeTarget`\uff1b\u7136\u540e\u6fc0\u6d3b\u6b63\u786e\u7684\u9875\u9762 tab \u7ee7\u7eed\u64cd\u4f5c |\n| Gemini \u5e72\u6270\u4e0b\u63d0\u53d6\u6570\u636e | \u653e\u5f03 `browser_snapshot`\uff0c\u76f4\u63a5\u7528 CDP\uff1a`browser_cdp(method='Runtime.evaluate', target_id=page_tab_id, params={'expression': '...', 'returnByValue': true})`\u3002**\u5fc5\u987b\u4f20 `target_id`**\u2014\u2014\u5373\u4f7f Gemini \u88ab\u5173\u95ed\u540e Chrome \u4e5f\u4f1a\u81ea\u52a8\u91cd\u542f Glic\uff0c\u4e0d\u4f20\u4f1a hit \u9519\u8bef target \u5bfc\u81f4 `'Runtime.evaluate' wasn't found`\u3002\u6bcf\u6b21\u8c03\u7528\u524d\u7528 `Target.getTargets` \u786e\u8ba4\u76ee\u6807 tab \u7684 targetId \u4ecd\u7136\u6709\u6548 |\n\n---\n\n## \u5feb\u901f\u542f\u52a8\u68c0\u67e5\u6e05\u5355\n\n- [ ] Chrome \u8c03\u8bd5\u6a21\u5f0f\u8fd0\u884c\u4e2d\uff08`chrome-debug`\uff09\n- [ ] Hermes CDP \u5df2\u8fde\u63a5\uff08`/browser connect` \u6216 config \u81ea\u52a8\uff09\n- [ ] \u5df2\u767b\u5f55 `creator.xiaohongshu.com`\uff08\u9996\u6b21\u626b\u7801\uff09\n- [ ] `~/xhs-knowledge-base/` \u76ee\u5f55\u5df2\u521b\u5efa\n- [ ] \u5982\u679c\u662f\u60c5\u611f\u8d5b\u9053\uff1a\u5df2\u52a0\u8f7d `xiaohongshu-emotional-content`\n- [ ] \u5982\u679c\u9700\u8981\u5c01\u9762\u56fe\uff1a\u5df2\u52a0\u8f7d `flux-image-generation`\n\n---\n\n## \u26a0\ufe0f Chrome 147+ Gemini/Glic \u8986\u76d6\u5c42\u95ee\u9898\n\nChrome 147 \u4ee5\u4e0a\u7248\u672c\u5185\u7f6e\u7684 Gemini \u52a9\u624b\uff08chrome://glic/\uff09\u4f1a\u5728\u6807\u7b7e\u9875\u4e0a\u53e0\u52a0\u4e00\u5c42 AI \u9762\u677f\uff0c\u5bfc\u81f4 `browser_navigate` \u5931\u8d25\uff08`ERR_BLOCKED_BY_CLIENT`\uff09\u3001`browser_snapshot` \u53ea\u8fd4\u56de Gemini \u9762\u677f\u800c\u4e0d\u662f\u9875\u9762\u5185\u5bb9\u3002\n\n**\u5224\u65ad\u65b9\u6cd5\uff1a**\n- `browser_snapshot()` \u8fd4\u56de\u7684 `frame_tree.top` \u4e3a `null`\n- snapshot \u5185\u5bb9\u53ea\u5269 Gemini \u9762\u677f\u7684\u6309\u94ae\u548c\u6587\u5b57\n- `browser_navigate(url)` \u8fd4\u56de `net::ERR_BLOCKED_BY_CLIENT`\n\n**\u89e3\u51b3\u65b9\u6848\uff08\u5206\u4e24\u6b65\uff09\uff1a**\n\n### Step 1: \u5173\u95ed Gemini \u5e76\u91cd\u65b0\u5bfc\u822a\n```python\n# 1. \u7528 CDP \u63a2\u7d22\u6240\u6709\u6807\u7b7e\u9875\uff0c\u627e\u5230\u5e76\u5173\u95ed Gemini/Glic\ntabs_result = browser_cdp(method='Target.getTargets', params={})\nfor tab in tabs_result['result']['targetInfos']:\n    if 'glic' in tab.get('url', '') or 'Gemini' in tab.get('title', ''):\n        browser_cdp(method='Target.closeTarget', params={'targetId': tab['targetId']})\n\n# 2. \u6fc0\u6d3b\u5c0f\u7ea2\u4e66\u6807\u7b7e\u9875\uff08\u5982\u679c\u5df2\u5b58\u5728\uff09\nfor tab in tabs_result['result']['targetInfos']:\n    if 'xiaohongshu.com' in tab.get('url', ''):\n        target_id = tab['targetId']\n        browser_cdp(method='Target.activateTarget', params={'targetId': target_id})\n        break\n\n# 3. \u7528 CDP \u76f4\u63a5\u5bfc\u822a\nbrowser_cdp(method='Page.navigate', target_id=target_id, params={'url': 'https://www.xiaohongshu.com/explore'})\n\n# 4. \u7528 CDP evaluate \u63d0\u53d6\u6570\u636e\ndata = browser_cdp(method='Runtime.evaluate', target_id=target_id, params={\n    'expression': 'document.title',\n    'returnByValue': True\n})\n```\n\n### Step 2: \u5207\u6362\u5230 CDP \u76f4\u8fde\u6a21\u5f0f\n\u5982\u679c Gemini \u53cd\u590d\u51fa\u73b0\uff0c\u76f4\u63a5\u5207\u6362\u5230 CDP \u6a21\u5f0f\uff1a\n- \u7528 `Target.getTargets` \u83b7\u53d6\u6807\u7b7e\u9875\u5217\u8868\n- \u7528 `Target.activateTarget` \u6fc0\u6d3b\u76ee\u6807\u9875\n- \u7528 `Page.navigate` \u5bfc\u822a\n- \u7528 `Runtime.evaluate` \u63d0\u53d6\u6570\u636e\n- \u7528 `document.body.innerText` \u83b7\u53d6\u641c\u7d22\u5217\u8868\n\n---\n\n## \u5f15\u7528\n\n- \u539f\u59cb\u9879\u76ee\uff1a[Xiangyu-CAS/xiaohongshu-ops-skill](https://github.com/Xiangyu-CAS/xiaohongshu-ops-skill)\n- MCP \u5e95\u5ea7\uff1a[xpzouying/xiaohongshu-mcp](https://github.com/xpzouying/xiaohongshu-mcp)\n","usage":"\u8bfb\u53d6 SKILL.md\uff0c\u5e76\u6309\u9700\u8bfb\u53d6\u914d\u5957\u6587\u4ef6\uff1b\u4e0b\u8f7d ZIP \u83b7\u53d6\u5b8c\u6574\u5305\u3002\u6280\u80fd\u662f\u4efb\u52a1\u65b9\u6cd5\uff0c\u4e0d\u6388\u4e88\u65b0\u589e\u8d26\u6237\u3001\u4ed8\u8d39\u6216\u7cfb\u7edf\u6743\u9650\u3002"}
