{"slug":"lancelin111-douyin-0fdf6a","title":"\u6296\u97f3\u89c6\u9891\u4e0a\u4f20\u81ea\u52a8\u5316\u811a\u672c","description":"\u901a\u8fc7\u672c\u5730 Node \u811a\u672c\u4e0e Puppeteer \u9a71\u52a8\u6d4f\u89c8\u5668\uff0c\u5b8c\u6210\u6296\u97f3\u521b\u4f5c\u8005\u5e73\u53f0\u7684\u767b\u5f55\u3001Cookie \u4fdd\u5b58\u3001\u89c6\u9891\u4e0a\u4f20\u3001\u6807\u9898\u63cf\u8ff0\u6807\u7b7e\u586b\u5199\u4e0e\u8349\u7a3f/\u53d1\u5e03\u64cd\u4f5c\u3002\u9002\u7528\u4e8e\u5df2\u6709\u89c6\u9891\u6587\u4ef6\u3001\u613f\u610f\u5728\u672c\u673a\u5b8c\u6210\u626b\u7801\u767b\u5f55\u4e0e\u77ed\u4fe1\u9a8c\u8bc1\u7684\u7528\u6237\uff1b\u4e0d\u6d89\u53ca\u5185\u5bb9\u521b\u4f5c\uff0c\u4e5f\u4e0d\u4fdd\u8bc1\u5e73\u53f0\u5ba1\u6838\u7ed3\u679c\u3002","category":"\u53d1\u5e03\u4e0e\u8fd0\u8425","tags":["lancelin111","\u53d1\u5e03\u4e0e\u8fd0\u8425"],"author":"lancelin111","source_url":"https://github.com/lancelin111/douyin-mcp-server/blob/594290ded2d02611f361475782d20d3bd0dac417/skills/douyin/SKILL.md","license":"MIT","status":"published","verification":"source_reviewed","verification_notes":"\u5df2\u6838\u5bf9\u539f\u59cb\u4ed3\u5e93\u3001\u56fa\u5b9a\u63d0\u4ea4\u3001\u8bb8\u53ef\u3001\u6280\u80fd\u6b63\u6587\u4e0e\u5305\u7ed3\u6784\uff0c\u5e76\u8865\u5145\u4e2d\u6587\u6267\u884c\u9a8c\u6536\u8bf4\u660e\uff1b\u672a\u8fd0\u884c\u5305\u5185\u811a\u672c\u3002","revision":"02969b3e1a5641ca894b3acbaf688118","created_at":"2026-11-02T14:47:08+00:00","updated_at":"2026-11-02T14:47:08+00:00","source_repo":"lancelin111/douyin-mcp-server","source_path":"skills/douyin/SKILL.md","source_commit":"594290ded2d02611f361475782d20d3bd0dac417","source_updated_at":"2026-11-02T14:46:04+00:00","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","quality":{"review_type":"text_and_package_review","readiness":"requires_setup","reviewed_at":"2026-11-02T14:46:04+00:00","review_summary":"\u5305\u5185\u786e\u6709\u767b\u5f55\u3001\u4e0a\u4f20\u3001\u7ba1\u7406\u4e09\u7c7b\u811a\u672c\u4e0e\u4f9d\u8d56\u58f0\u660e\uff0c\u4efb\u52a1\u8def\u5f84\u6e05\u6670\uff1b\u4f46\u9700\u672c\u673a\u5b89\u88c5\u4f9d\u8d56\u3001\u5b8c\u6210\u4eba\u5de5\u767b\u5f55\u4e0e\u77ed\u4fe1\u9a8c\u8bc1\uff0c\u4e14\u811a\u672c\u672a\u8fd0\u884c\u9a8c\u8bc1\uff0c\u5e73\u53f0\u517c\u5bb9\u6027\u5f85\u7528\u6237\u5b9e\u6d4b\u3002","cost_notes":"\u811a\u672c\u4e0e\u4f9d\u8d56\u672c\u8eab\u4e0d\u4ea7\u751f\u8d39\u7528\uff1b\u6296\u97f3\u5e73\u53f0\u8d26\u53f7\u4e0e\u53d1\u5e03\u884c\u4e3a\u662f\u5426\u6d89\u53ca\u5e73\u53f0\u89c4\u5219\u6216\u5546\u4e1a\u63a8\u5e7f\u8d39\u7528\u9700\u7528\u6237\u81ea\u884c\u786e\u8ba4\uff0c\u672c\u5ba1\u9605\u4e0d\u62a5\u4ef7\u3002","source_sha256":"82ace840165f31a7cc90f4632aa8a94ab04ce33718d127d5e51eb59c77dcb14a","prerequisites":["Node.js \u4e0e npm","\u672c\u673a\u5b89\u88c5 Chrome \u6216 Chromium","\u53ef\u8bbf\u95ee\u6296\u97f3\u521b\u4f5c\u8005\u5e73\u53f0\u7684\u7f51\u7edc\u73af\u5883","\u7528\u6237\u672c\u4eba\u7684\u6296\u97f3\u8d26\u53f7\u4e0e\u53ef\u63a5\u6536\u77ed\u4fe1\u9a8c\u8bc1\u7801\u7684\u624b\u673a"],"checks":["\u786e\u8ba4 package.json \u4e2d\u4f9d\u8d56\u4ec5\u4e3a puppeteer \u7b49\u58f0\u660e\u9879\uff0cnpm install \u80fd\u5b8c\u6210\u5b89\u88c5","\u8fd0\u884c login.js \u540e\u786e\u8ba4 Cookie \u6587\u4ef6\u751f\u6210\u4e14\u6743\u9650\u4e3a 0600","\u7528 --no-publish \u4e0a\u4f20\u4e00\u4e2a\u6d4b\u8bd5\u89c6\u9891\uff0c\u786e\u8ba4\u8349\u7a3f\u7bb1\u51fa\u73b0\u5bf9\u5e94\u6807\u9898\u4e0e\u6807\u7b7e","\u8fd0\u884c manage.js check/info/clear\uff0c\u786e\u8ba4\u767b\u5f55\u72b6\u6001\u8bfb\u53d6\u4e0e\u6e05\u9664\u884c\u4e3a\u7b26\u5408\u8bf4\u660e","\u6838\u5bf9\u811a\u672c\u8bbf\u95ee\u57df\u540d\u662f\u5426\u4ec5\u4e3a creator.douyin.com \u4e0e www.douyin.com"],"limitations":["\u672c\u6b21\u4ec5\u505a\u6587\u672c\u4e0e\u5305\u7ed3\u6784\u5ba1\u9605\uff0c\u672a\u8fd0\u884c\u4efb\u4f55\u811a\u672c\uff0c\u672a\u9a8c\u8bc1\u6296\u97f3\u5f53\u524d\u9875\u9762\u9009\u62e9\u5668\u662f\u5426\u4ecd\u6709\u6548","\u9996\u6b21\u4e0a\u4f20\u9700\u77ed\u4fe1\u9a8c\u8bc1\uff0c\u65e0\u6cd5\u5b8c\u5168\u65e0\u4eba\u503c\u5b88\uff1bCookie \u7ea6 30 \u5929\u6709\u6548\u671f\u4e3a\u6587\u6863\u8bf4\u6cd5\uff0c\u672a\u5b9e\u6d4b","\u5e73\u53f0\u6539\u7248\u3001\u98ce\u63a7\u6216\u9a8c\u8bc1\u7801\u7b56\u7565\u53d8\u5316\u53ef\u80fd\u5bfc\u81f4\u4e0a\u4f20\u5931\u8d25\uff0c\u811a\u672c\u4e0d\u4fdd\u8bc1\u53d1\u5e03\u6210\u529f\u6216\u901a\u8fc7\u5ba1\u6838","\u811a\u672c\u4f1a\u4ee5\u7528\u6237\u8d26\u53f7\u6267\u884c\u53d1\u5e03\u52a8\u4f5c\uff0c\u9700\u7528\u6237\u81ea\u884c\u786e\u8ba4\u5185\u5bb9\u5408\u89c4\u4e0e\u6388\u6743"],"issues":["SKILL.md \u58f0\u79f0\u201c\u81ea\u5305\u542b\u3001\u65e0\u9700\u514b\u9686\u5916\u90e8\u4ed3\u5e93\u201d\uff0c\u4f46 homepage \u6307\u5411\u5916\u90e8 GitHub \u4ed3\u5e93\uff0c\u9700\u6838\u5b9e\u5305\u5185\u4ee3\u7801\u4e0e\u4e0a\u6e38\u662f\u5426\u4e00\u81f4","\u6587\u6863\u7ed9\u51fa\u201c\u4e0a\u4f20\u5e76\u53d1\u5e03\u6210\u529f\u201d\u7684\u8f93\u51fa\u793a\u4f8b\uff0c\u5c5e\u4e8e\u672a\u7ecf\u672c\u6b21\u9a8c\u8bc1\u7684\u627f\u8bfa\u6027\u8868\u8ff0\uff0c\u5efa\u8bae\u6539\u4e3a\u72b6\u6001\u63d0\u793a\u5e76\u5f15\u5bfc\u7528\u6237\u5230\u5e73\u53f0\u6838\u5bf9","\u672a\u8bf4\u660e\u5931\u8d25\u91cd\u8bd5\u3001\u8d85\u65f6\u4e0e\u9009\u62e9\u5668\u5931\u6548\u65f6\u7684\u9519\u8bef\u5904\u7406\u8fb9\u754c"],"missing_files":[]},"quality_url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/files/SHILIU-QUALITY.md","usage_guide":{"task":"\u5728\u672c\u673a\u5b89\u88c5\u4f9d\u8d56\u540e\uff0c\u7528\u547d\u4ee4\u884c\u811a\u672c\u767b\u5f55\u6296\u97f3\u521b\u4f5c\u8005\u5e73\u53f0\u5e76\u4e0a\u4f20\u6307\u5b9a\u89c6\u9891\uff0c\u6216\u4ec5\u4fdd\u5b58\u4e3a\u8349\u7a3f\uff1b\u540c\u65f6\u53ef\u68c0\u67e5\u3001\u67e5\u770b\u3001\u6e05\u9664\u672c\u5730\u767b\u5f55 Cookie\u3002","inputs":"Node.js \u4e0e npm \u73af\u5883\uff1b\u53ef\u7528\u7684 Chrome/Chromium\uff1b\u89c6\u9891\u6587\u4ef6\u7edd\u5bf9\u8def\u5f84\uff1b\u89c6\u9891\u6807\u9898\uff0c\u53ef\u9009\u63cf\u8ff0\u4e0e\u9017\u53f7\u5206\u9694\u6807\u7b7e\uff1b\u7528\u6237\u672c\u4eba\u53ef\u5b8c\u6210\u7684\u626b\u7801\u6216\u8d26\u53f7\u767b\u5f55\u53ca\u9996\u6b21\u4e0a\u4f20\u7684\u77ed\u4fe1\u9a8c\u8bc1\u7801\uff1b\u5bf9\u6296\u97f3\u521b\u4f5c\u8005\u5e73\u53f0\u9875\u9762\u7ed3\u6784\u7684\u5f53\u524d\u53ef\u7528\u6027\u3002","outputs":"\u672c\u5730 Cookie \u6587\u4ef6\uff08douyin-cookies.json\uff09\u4e0e\u6d4f\u89c8\u5668\u7528\u6237\u6570\u636e\u76ee\u5f55\uff1b\u547d\u4ee4\u884c\u8f93\u51fa\u7684\u767b\u5f55\u72b6\u6001\u3001\u4e0a\u4f20/\u8349\u7a3f\u7ed3\u679c\uff1b\u53ef\u590d\u6838\u7684\u53d1\u5e03\u72b6\u6001\u9700\u7528\u6237\u81ea\u884c\u5230\u521b\u4f5c\u8005\u5e73\u53f0\u786e\u8ba4\u3002","example_input":"\u8bf7\u7528\u8fd9\u4e2a\u6280\u80fd\u628a\u6211\u672c\u5730\u7684 /Users/me/videos/demo.mp4 \u4e0a\u4f20\u5230\u6296\u97f3\uff0c\u6807\u9898\u5199\u201c\u5468\u672b\u6563\u6b65\u8bb0\u5f55\u201d\uff0c\u6807\u7b7e\u201c\u65e5\u5e38,\u751f\u6d3b\u201d\uff0c\u5148\u53ea\u4fdd\u5b58\u8349\u7a3f\uff0c\u4e0d\u8981\u76f4\u63a5\u53d1\u5e03\u3002","example_output":"\u793a\u610f\uff1a\u811a\u672c\u5148\u63d0\u793a\u6253\u5f00\u6d4f\u89c8\u5668\u5b8c\u6210\u767b\u5f55\u5e76\u4fdd\u5b58 Cookie\uff1b\u968f\u540e\u6267\u884c\u4e0a\u4f20\u547d\u4ee4\uff0c\u8f93\u51fa\u201c\u5df2\u4fdd\u5b58\u8349\u7a3f\u201d\u7c7b\u72b6\u6001\u4fe1\u606f\u4e0e\u6807\u9898\u3001\u6807\u7b7e\u56de\u663e\uff1b\u6700\u7ec8\u662f\u5426\u51fa\u73b0\u5728\u8349\u7a3f\u7bb1\u9700\u7528\u6237\u5728\u521b\u4f5c\u8005\u5e73\u53f0\u6838\u5bf9\u3002\u4ee5\u4e0a\u4e3a\u4ea4\u4ed8\u7ed3\u6784\u793a\u610f\uff0c\u4e0d\u4ee3\u8868\u5b9e\u9645\u8fd0\u884c\u7ed3\u679c\u3002"},"read_url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a","skill_url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/files/SKILL.md","download_url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/download","install_url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/install","files":[{"path":"LICENSE","bytes":1086,"url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/files/LICENSE"},{"path":"SHILIU-QUALITY.md","bytes":2224,"url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/files/SHILIU-QUALITY.md"},{"path":"SKILL.md","bytes":6547,"url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/files/SKILL.md"},{"path":"douyin-uploader.js","bytes":27623,"url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/files/douyin-uploader.js"},{"path":"package.json","bytes":849,"url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/files/package.json"},{"path":"scripts/login.js","bytes":1354,"url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/files/scripts/login.js"},{"path":"scripts/manage.js","bytes":2917,"url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/files/scripts/manage.js"},{"path":"scripts/upload.js","bytes":3382,"url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/files/scripts/upload.js"},{"path":"shiliu-quality.json","bytes":2108,"url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/files/shiliu-quality.json"},{"path":"shiliu-source.json","bytes":272,"url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/files/shiliu-source.json"},{"path":"usage.json","bytes":1203,"url":"https://shiliuai.cn/api/v2/skills/lancelin111-douyin-0fdf6a/files/usage.json"}],"content":"---\nname: douyin\ndescription: \"Douyin (TikTok China) video uploader & automation tool. Upload videos, manage login sessions, and automate publishing to Douyin Creator Platform. \u6296\u97f3\u89c6\u9891\u4e0a\u4f20\u5de5\u5177 | \u81ea\u52a8\u5316\u53d1\u5e03 | \u521b\u4f5c\u8005\u5e73\u53f0\u3002Use when uploading video to Douyin, logging in to Douyin, or checking Douyin login status.\"\nversion: 2.2.0\nallowed-tools: Bash(node *) Bash(npm *)\nmetadata:\n  openclaw:\n    requires:\n      bins:\n        - node\n        - npm\n      anyBins:\n        - chromium\n        - google-chrome\n        - chrome\n    install:\n      - kind: node\n        package: puppeteer\n        bins: []\n    homepage: https://github.com/lancelin111/douyin-mcp-server\n    emoji: \"\\U0001F3AC\"\n    os:\n      - macos\n      - linux\n      - windows\n---\n\n# Douyin Video Uploader | \u6296\u97f3\u89c6\u9891\u4e0a\u4f20\u5de5\u5177\n\n> **Douyin (TikTok China) video upload automation** \u2014 login, upload, and manage your Douyin Creator account from the command line or AI agents.\n>\n> \u81ea\u52a8\u5316\u4e0a\u4f20\u89c6\u9891\u5230\u6296\u97f3\u521b\u4f5c\u8005\u5e73\u53f0\uff0c\u652f\u6301\u767b\u5f55\u3001\u4e0a\u4f20\u548c\u8d26\u53f7\u7ba1\u7406\u3002\n\n**Keywords:** Douyin uploader, TikTok China, video upload, social media automation, \u6296\u97f3\u4e0a\u4f20, \u6296\u97f3\u81ea\u52a8\u5316, \u77ed\u89c6\u9891\u53d1\u5e03, creator platform\n\n**This skill is self-contained \u2014 all code is bundled, no external repo cloning needed.**\n\u6b64 skill \u4e3a\u81ea\u5305\u542b\u7ed3\u6784\uff0c\u6240\u6709\u4ee3\u7801\u5df2\u6253\u5305\u5728\u5185\uff0c\u65e0\u9700\u514b\u9686\u5916\u90e8\u4ed3\u5e93\u3002\n\n## Important: First Upload Requires SMS Verification | \u91cd\u8981\u63d0\u793a\uff1a\u9996\u6b21\u4e0a\u4f20\u9700\u8981\u77ed\u4fe1\u9a8c\u8bc1\n\n> **After logging in, your first video upload will require SMS verification.** Enter the verification code when prompted. After this one-time verification, all subsequent uploads will be fully automated.\n>\n> **\u767b\u5f55\u6210\u529f\u540e\uff0c\u7b2c\u4e00\u6b21\u4e0a\u4f20\u89c6\u9891\u9700\u8981\u77ed\u4fe1\u9a8c\u8bc1\u3002** \u6309\u63d0\u793a\u8f93\u5165\u9a8c\u8bc1\u7801\u5373\u53ef\u3002\u5b8c\u6210\u4e00\u6b21\u9a8c\u8bc1\u540e\uff0c\u4e4b\u540e\u7684\u4e0a\u4f20\u5c06\u5b8c\u5168\u81ea\u52a8\u5316\uff0c\u65e0\u9700\u518d\u6b21\u9a8c\u8bc1\u3002\n\n## Transparency Statement | \u900f\u660e\u5ea6\u58f0\u660e\n\n### Data Storage | \u6570\u636e\u5b58\u50a8\n- **Cookie file / Cookie \u6587\u4ef6**: `{baseDir}/douyin-cookies.json` \u2014 Stores Douyin login credentials locally only (file permission: 0600) / \u5b58\u50a8\u6296\u97f3\u767b\u5f55\u51ed\u8bc1\uff0c\u4ec5\u5728\u672c\u5730\u4fdd\u5b58\uff08\u6587\u4ef6\u6743\u9650\uff1a0600\uff09\n- **Browser data / \u6d4f\u89c8\u5668\u6570\u636e**: `{baseDir}/chrome-user-data/` \u2014 Puppeteer browser session data\n\n### Network Access | \u7f51\u7edc\u8bbf\u95ee\nThis tool only accesses official Douyin domains / \u672c\u5de5\u5177\u4ec5\u8bbf\u95ee\u4ee5\u4e0b\u6296\u97f3\u5b98\u65b9\u57df\u540d\uff1a\n- `https://creator.douyin.com` \u2014 Douyin Creator Platform (login & upload) / \u6296\u97f3\u521b\u4f5c\u8005\u5e73\u53f0\uff08\u767b\u5f55\u3001\u4e0a\u4f20\uff09\n- `https://www.douyin.com` \u2014 Douyin main site (permission verification) / \u6296\u97f3\u4e3b\u7ad9\uff08\u6743\u9650\u9a8c\u8bc1\uff09\n\n**No third-party servers are accessed. Your credentials are never uploaded or leaked.**\n\u4e0d\u4f1a\u8bbf\u95ee\u4efb\u4f55\u7b2c\u4e09\u65b9\u670d\u52a1\u5668\uff0c\u4e0d\u4f1a\u4e0a\u4f20\u6216\u6cc4\u9732\u60a8\u7684\u767b\u5f55\u51ed\u8bc1\u3002\n\n### Code Behavior | \u4ee3\u7801\u884c\u4e3a\n1. **login.js**: Opens browser \u2192 navigates to Douyin login \u2192 waits for manual login \u2192 saves Cookie locally / \u6253\u5f00\u6d4f\u89c8\u5668 \u2192 \u5bfc\u822a\u5230\u6296\u97f3\u767b\u5f55\u9875 \u2192 \u7b49\u5f85\u7528\u6237\u624b\u52a8\u767b\u5f55 \u2192 \u4fdd\u5b58 Cookie \u5230\u672c\u5730\u6587\u4ef6\n2. **upload.js**: Loads Cookie \u2192 auto-login \u2192 uploads video \u2192 fills title/description/tags \u2192 publishes / \u8bfb\u53d6\u672c\u5730 Cookie \u2192 \u81ea\u52a8\u767b\u5f55 \u2192 \u4e0a\u4f20\u6307\u5b9a\u89c6\u9891\u6587\u4ef6 \u2192 \u586b\u5199\u6807\u9898/\u63cf\u8ff0/\u6807\u7b7e \u2192 \u53d1\u5e03\n3. **manage.js**: Read/validate/delete local Cookie files / \u8bfb\u53d6/\u9a8c\u8bc1/\u5220\u9664\u672c\u5730 Cookie \u6587\u4ef6\n\n### Dependencies | \u4f9d\u8d56\n- **puppeteer**: Browser automation (Chromium) / \u6d4f\u89c8\u5668\u81ea\u52a8\u5316\uff08Chromium\uff09\n- Full dependencies: see `package.json` in this directory / \u5b8c\u6574\u4f9d\u8d56: \u89c1\u672c\u76ee\u5f55 `package.json`\n\n## Installation | \u5b89\u88c5\n\nFirst-time setup \u2014 install dependencies / \u9996\u6b21\u4f7f\u7528\u9700\u8981\u5b89\u88c5\u4f9d\u8d56\uff1a\n\n```bash\ncd {baseDir} && npm install\n```\n\n> **Note / \u8bf4\u660e**: Only installs puppeteer, no external repo cloning needed / \u4ec5\u5b89\u88c5 puppeteer \u4f9d\u8d56\uff0c\u65e0\u9700\u514b\u9686\u5916\u90e8\u4ed3\u5e93\u3002\n\n## Feature 1: Login to Douyin | \u529f\u80fd\u4e00\uff1a\u767b\u5f55\u6296\u97f3\n\nLogin to Douyin Creator Platform and save credentials (Cookie).\n\u767b\u5f55\u6296\u97f3\u521b\u4f5c\u8005\u5e73\u53f0\uff0c\u4fdd\u5b58\u767b\u5f55\u51ed\u8bc1\uff08Cookie\uff09\u3002\n\n```bash\ncd {baseDir} && node scripts/login.js\n```\n\n**Process / \u6d41\u7a0b\uff1a**\n1. Auto-opens a browser window / \u81ea\u52a8\u6253\u5f00\u6d4f\u89c8\u5668\u7a97\u53e3\n2. Waits for user to complete login (QR code or password) / \u7b49\u5f85\u7528\u6237\u5b8c\u6210\u767b\u5f55\uff08\u626b\u7801\u6216\u8d26\u53f7\u5bc6\u7801\uff09\n3. Saves Cookie automatically after login / \u767b\u5f55\u6210\u529f\u540e\u81ea\u52a8\u4fdd\u5b58 Cookie\n\n**Output example / \u8f93\u51fa\u793a\u4f8b\uff1a**\n```\n\u2705 Login successful!\nUser: \u7528\u6237\u6635\u79f0\nCookies saved: 25\n```\n\n## Feature 2: Upload Video | \u529f\u80fd\u4e8c\uff1a\u4e0a\u4f20\u89c6\u9891\n\nUpload video to Douyin with title, description and tags.\n\u4e0a\u4f20\u89c6\u9891\u5230\u6296\u97f3\uff0c\u652f\u6301\u8bbe\u7f6e\u6807\u9898\u3001\u63cf\u8ff0\u548c\u6807\u7b7e\u3002\n\n```bash\ncd {baseDir} && node scripts/upload.js --video \"\u89c6\u9891\u8def\u5f84\" --title \"\u89c6\u9891\u6807\u9898\"\n```\n\n**Parameters / \u53c2\u6570\uff1a**\n\n| Parameter \u53c2\u6570 | Required \u5fc5\u9700 | Description \u8bf4\u660e |\n|-----|-----|------|\n| `--video` | Yes \u662f | Absolute path to video file / \u89c6\u9891\u6587\u4ef6\u7edd\u5bf9\u8def\u5f84 |\n| `--title` | Yes \u662f | Video title / \u89c6\u9891\u6807\u9898 |\n| `--description` | No \u5426 | Video description / \u89c6\u9891\u63cf\u8ff0 |\n| `--tags` | No \u5426 | Tags, comma-separated / \u6807\u7b7e\uff0c\u9017\u53f7\u5206\u9694 |\n| `--no-publish` | No \u5426 | Save as draft only / \u4ec5\u4fdd\u5b58\u8349\u7a3f |\n\n**Full example / \u5b8c\u6574\u793a\u4f8b\uff1a**\n```bash\ncd {baseDir} && node scripts/upload.js \\\n  --video \"/Users/xxx/video.mp4\" \\\n  --title \"\u6211\u7684\u89c6\u9891\" \\\n  --description \"\u89c6\u9891\u63cf\u8ff0\" \\\n  --tags \"\u65e5\u5e38,\u751f\u6d3b,\u8bb0\u5f55\"\n```\n\n**Output example / \u8f93\u51fa\u793a\u4f8b\uff1a**\n```\n\u2705 Video upload and publish successful!\nTitle: \u6211\u7684\u89c6\u9891\nStatus: Published\n```\n\n## Feature 3: Manage Login Status | \u529f\u80fd\u4e09\uff1a\u7ba1\u7406\u767b\u5f55\u72b6\u6001\n\nCheck, view or clear login data / \u68c0\u67e5\u3001\u67e5\u770b\u6216\u6e05\u9664\u767b\u5f55\u6570\u636e\u3002\n\n### Check if login is valid | \u68c0\u67e5\u767b\u5f55\u662f\u5426\u6709\u6548\n```bash\ncd {baseDir} && node scripts/manage.js check\n```\n\n### View Cookie info | \u67e5\u770b Cookie \u4fe1\u606f\n```bash\ncd {baseDir} && node scripts/manage.js info\n```\n\n### Clear login data | \u6e05\u9664\u767b\u5f55\u6570\u636e\n```bash\ncd {baseDir} && node scripts/manage.js clear\n```\n\n## FAQ | \u5e38\u89c1\u95ee\u9898\n\n**Q: \"Login expired\" error?**\n**Q: \u63d0\u793a \"Login expired\"\uff1f**\n```bash\ncd {baseDir} && node scripts/manage.js clear\ncd {baseDir} && node scripts/login.js\n```\n\n**Q: SMS verification during upload? / Q: \u4e0a\u4f20\u65f6\u9047\u5230\u77ed\u4fe1\u9a8c\u8bc1\uff1f**\nThe program will prompt you \u2014 enter the code as instructed.\n\u7a0b\u5e8f\u4f1a\u81ea\u52a8\u63d0\u793a\uff0c\u6309\u63d0\u793a\u8f93\u5165\u9a8c\u8bc1\u7801\u5373\u53ef\u3002\n\n**Q: How long does the Cookie last? / Q: Cookie \u6709\u6548\u671f\u591a\u4e45\uff1f**\nAbout 30 days. Check login status regularly.\n\u7ea6 30 \u5929\uff0c\u5efa\u8bae\u5b9a\u671f\u68c0\u67e5\u767b\u5f55\u72b6\u6001\u3002\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"}
