by llm-xiaoye
抖音作者作品批量入库:识别作者并分页获取公开作品,按主题生成 Obsidian 笔记,维护作者目录、索引与日志;由 Agent 驱动,CC Connect 为可选接入。
# Add to your Claude Code skills
git clone https://github.com/llm-xiaoye/cc-connect-dy-authorGuides for using ai agents skills like cc-connect-dy-author.
See how cc-connect-dy-author compares with popular alternatives.
cc-connect-dy-author is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by llm-xiaoye. 抖音作者作品批量入库:识别作者并分页获取公开作品,按主题生成 Obsidian 笔记,维护作者目录、索引与日志;由 Agent 驱动,CC Connect 为可选接入。. It has 146 GitHub stars.
cc-connect-dy-author's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/llm-xiaoye/cc-connect-dy-author" and add it to your Claude Code skills directory (see the Installation section above). cc-connect-dy-author ships a SKILL.md manifest, so compatible agents can discover and load it automatically.
cc-connect-dy-author is primarily written in Python. It is open-source under llm-xiaoye on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh cc-connect-dy-author against similar tools.
No comments yet. Be the first to share your thoughts!
Available after the catalog security scan passes.
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
只使用本目录的脚本,以及本目录 config.json 中的绝对 python 路径和 cache_dir。首次安装或配置缺失时先按 README.md 安装配置,再执行任务。运行前读配置并解析当前 skill 的真实绝对目录,不猜测用户路径。笔记、知识总索引.md、导入总日志.md 和 .dy-author-review-state.json 保存在配置的 Vault 中;锁和事务文件由本仓库脚本管理。
/dy-author、Codex 显式 $dy-author,或 cc-connect 在当前消息中展开的 /dy-author 命令。讨论命令用法、历史命令、旧 run_dir 和待处理队列都不构成新的全量授权。/dy-author 或 $dy-author。先判断当前消息,再读取工作流程。input_file 必须保留显式命令前缀;脚本会在规划、继续准备和进度发送前核验。裸分享文本不得被补上命令以绕过检查。旧批次无前缀时保留状态和已保存笔记,停止全量推进;已完成草稿仍可 commit,继续全量须由用户重发显式命令。| 输入 | 执行 |
|---|---|
/dy-author <抖音作品链接或完整分享文本> |
取作者 → 翻主页全部作品(视频+图文)→ 去重 → 直接全量导入,不再询问条数 |
/dy-author 补录 |
找出库中含“面试”、尚未进题库的知识笔记,写入面试题库 |
参数为空时只说明这两种用法。分享文本里必须恰好一条抖音官方链接。
读 references/workflow.md,按其中命令执行:init → 写 input.txt → plan → 循环(prepare-all → 逐条写作 → commit)→ status。
默认先只读检查真实系统用户的 Chrome 资料与现有抖音会话,优先复用可用会话,不要求保持抖音页面打开。init 返回的 browser_session.status 为 login_required 或 profile_unavailable 时,转述其提示,请用户手动在 Chrome 打开抖音并登录后再继续;read_error 时说明读取授权或资料路径问题,不能断言已退出登录。available 仅表示已读到会话信息,不能把后续网络、接口或缓存失败说成登录失效。
默认 auto_browser_recovery=false,作者清单获取和逐条下载都不自动打开作品页。禁止因抓取失败自行打开页面或改成 true;只有用户明确要求可见浏览器恢复时才启用。当前关闭设置也约束旧批次。缺少会话或读取失败时停止准备,不批量记作品失败;已提交笔记与草稿保留,已完成草稿仍可提交。
/dy-author 或 $dy-author 前缀)用写文件工具原样写进 input_file;cc-connect 当前展开的命令按 workflow.md 保留前缀。不要把用户文本、标题或转写拼进 shell 命令。draft_files_present=true 先尝试 commit,成功就处理下一条;校验不通过只修正明确错误。部分草稿已存在时仅补缺失内容,不重下载、重转写或无条件重写已完成正文。文件存在不等于已保存,仍以 commit 成功为准。material_file;图文用图片工具逐页查看 image_files;先将核心主题和技术概念逐行写到 item_dir/catalog-terms.txt,执行 catalog-search --run RUN_DIR --id ID(普通作品只检索知识笔记,面试类同时检索题库);它会刷新并返回小型目录视图。再 Read catalog_file;面试类另读 question_catalog_file。仅按需读候选全文,不读取全库明细。knowledge_file 与 analysis_file(新骨架:一句话结论、核心要点、正文小节、模型补充〔补充知识/纠错与边界/模型判断〕、自测)。interview_required=true 时再按 references/interview-notes.md 写 interview.json 与题目正文(答题要点、答题重点、模型补充等);合并已有题目前先 Read 目标并填 expected_sha256。interview_required=false 时不写题目。interview.json 与题目正文,不改原笔记。commit --run RUN_DIR --id ID;saved 才算新增。每条正文和题目完成后立即 commit,再写下一条,不积攒十条草稿后统一保存。reason_file 后 skip(作者文档记为跳过,以后不再处理)。无法完成:写 reason_file 后 fail(下次重试)。prepare-all 返回 status=continue 时再次执行;done 且 model_analysis_needed=false 时直接汇报,禁止按标题补写或另建批次循环。媒体获取失败、浏览器恢复与 429 的处理见 references/recovery.md。prepare-all --run RUN_DIR --limit 10。本批逐条 commit/skip/fail 结束后执行 progress --run RUN_DIR --notify;batch_finished=true 时汇报一行 message(本批新增/已有/失败、累计已处理与剩余),随后立即继续下一批,无需确认。脚本只向环境中明确绑定的 cc-connect 当前项目/会话发送;notification.status=sent 或 already_attempted 时不重复回复,其他状态通过正常回复补充。发送失败不影响保存,不因此停止导入。最后不足十条也汇报。除此之外不输出过程旁白。aweme_id 的知识笔记。plan、准备前、提交锁内三次按全库扫描确认;已入库作品不下载、不改写。抖音作者/<昵称>.md 按属性 douyin_author_id(sec_uid)识别,每次按全库扫描重新生成表格;标记区域外的内容保留。跳过的作品不重试,失败的作品下次重试。aweme_id,用 source_aweme_ids 记录收录的作品;同一作品不会重复并入。按 workflow.md 的“汇报”:作者与作者文档、清单完整性、新增/已有/跳过/失败、新笔记标题、新增/合并的面试题、失败项完整链接与原因、retry_command(代码块,不自动执行),以及 usage 汇总(注明为脚本估算,实际用量以当前 Agent/模型服务的显示为准)。
从作品链接识别抖音作者,分页获取其可访问的公开视频与图文,通过分批处理、作品 ID 去重和运行检查点,将内容整理为按主题组织的 Obsidian 知识笔记,同步维护作者文档、知识索引和导入日志。
当前 Agent 负责内容理解、核心知识提炼与笔记写作;本项目脚本负责内容获取、去重、校验和事务保存。核心流程不依赖 CC Connect 或微信 Bot,CC Connect 命令接入与批次通知均为可选功能。
/dy-author 补录 为已有面试类知识笔记补建题库。普通作品链接不会授权全作者导入。只有当前消息显式使用 /dy-author 或 $dy-author 才启动本技能。
完整媒体路线面向 macOS Apple Silicon(M 系列)+ Python 3.12。本地 ASR 使用 MLX,图文 OCR 使用 Swift/Vision;Windows、Linux、Intel Mac 的完整流程目前不承诺支持。需要 Apple Command Line Tools(含 Swift),以及可用的 Google Chrome profile。首次转写会从 Hugging Face 下载模型,需要网络和本地磁盘空间。FFmpeg 可来自系统,或依赖中的 imageio-ffmpeg。
宿主 Agent 需要读取 Skill、读写本地文件、执行脚本,并能查看图文原图。只运行 Python 不会自动生成知识笔记;模型账号与服务由用户自行配置。
可独立配置 Skill,也可选用 CC Connect 接入聊天平台。配置器的命令集成采用 .claude 布局;Codex 等其他宿主需按其技能发现机制加载本仓库,文档中的 $dy-author 是显式技能入口。不同宿主的命令与工具权限不同,不承诺下载后在任意 Agent 中即用。
仅在需要聊天平台接入时,配置 CC Connect、Agent、模型账号、消息平台及实际 work_dir。微信 Bot 不是核心运行前提。
没有 Chrome 访问也可用 --no-browser 配置,但匿名请求可能拿不到完整作品;不会承诺绕过登录、验证码、私密或删除限制。首次使用建议选一个小作者,并先备份 Vault。
git clone https://github.com/llm-xiaoye/cc-connect-dy-author.git
cd cc-connect-dy-author
# 将此路径替换为你电脑上 Python 3.12 的真实绝对路径。
/absolute/path/to/python3.12 -m venv .venv
./.venv/bin/python -m pip install -r requirements.lock.txt
也可以在 GitHub 点 Code → Download ZIP 后解压,再在解压目录执行后两步。不要复制开发者的虚拟环境,不要把仓库放进会同步公开的 Vault 内。
requirements.lock.txt 保留原功能所用版本,包含固定 commit 与摘要的 F2 源码依赖;需要访问 PyPI/GitHub。它是版本固定清单,不是全包 wheel hash 锁,不要加 --require-hashes。依赖安装失败时保留错误,不把它当成作品或技能处理失败;不建议任意升级 F2、yt-dlp 或 MLX 后仍假定行为不变。
独立使用时,在仓库根执行以下命令,再按宿主的技能发现机制加载仓库:
./.venv/bin/python scripts/configure.py --vault "/absolute/path/to/your/ObsidianVault"
需要 CC Connect 命令集成时,改用下面的命令。两种配置方式选择一种,不要对已有配置重复执行。--cc-workspace 是 CC Connect 项目的实际工作目录,不是程序安装目录或 .claude 目录。
./.venv/bin/python scripts/configure.py \
--vault "/absolute/path/to/your/ObsidianVault" \
--cc-workspace "/absolute/path/to/your/cc-connect-workspace"
配置器会只读寻找真实系统用户的 Chrome 资料,优先复用已有的抖音会话;zcode 改写 HOME 不影响这个查找。缺少会话时提示你手动打开抖音登录,再重试。关闭登录页面通常不会清除会话,无需一直保持页面打开。读取失败会说明权限或路径问题,不等于账号已经退出。
0600、被 Git 忽略的 config.json,记录当前虚拟环境入口;默认 browser_profile=null 自动识别、auto_browser_recovery=false。获取作者清单及下载作品默认不弹出页面。.claude/skills/dy-author 链接与 .claude/commands/dy-author.md。已有配置、同名技能或命令时拒绝覆盖。更新时保留个人配置、虚拟环境与缓存。旧安装升级后,请将当前 config.json 的 auto_browser_recovery 设为 false;这一关闭设置也约束旧批次。其他运行参数仍使用创建时的快照,不删除旧批次或已保存笔记。
需要固定资料时,用 chrome://version 的 Profile Path 填入 --chrome-profile。标准 Chrome 缓存自动匹配;自定义 user-data 目录还需 --chrome-cache。只有明确希望可见浏览器恢复时才手动启用 auto_browser_recovery=true。请只授权自己的资料,不粘贴或提交 Cookie。
只安装 Skill、不创建 cc-connect 命令时省略 --cc-workspace。无浏览器模式用 --no-browser 代替 Chrome 参数。手动配置可参考 config.example.json,实际配置必须保存为本仓库的 config.json,所有路径换成你自己的绝对路径。字段说明见 docs/configuration.md。
若需要在长任务中主动收到每批十条的提示,在首次配置时再加:
--cc-binary "/absolute/path/to/cc-connect" \
--cc-data-dir "/absolute/path/to/the/running-service-data"
这两个参数须同时指定;data-dir 必须与正在运行的 cc-connect 服务一致。已配置者可手动更新本地 config.json 的 cc_binary 与 cc_data_dir。不要把这些参数单独当成一条 shell 命令执行。
运行时由 cc-connect 提供当前 CC_PROJECT 和 CC_SESSION_KEY,技能不会猜测其他活跃会话。不要把示例或别人的会话 ID 写死到环境。没有会话绑定时由正常 Agent 回复展示进度;没有主动提示不影响笔记保存。
./.venv/bin/python -B scripts/doctor.py
此检查只检查本地路径、平台和依赖模块发现,不联网、不下载模型、不写 Vault,也不证明抖音接口可用。完成后让 Agent 刷新技能发现或开启新会话;使用 CC Connect 时刷新对应会话。
在已加载技能的会话中发送:
/dy-author https://www.douyin.com/video/作品ID
也可以 /dy-author 后直接粘贴完整分享文本,其中必须恰好一条官方作品链接。不要先删掉 /dy-author。补录命令:
/dy-author 补录
期望流程是:识别作者 → 翻页列作品 → 查重 → 每批准备材料 → 当前 Agent 写笔记/题目 → 逐条提交 → 继续下一批 → 最终汇报。不要把 scripts/dy_author.py 的一次运行误当作整套 AI 写作;它是供 Agent 驱动的队列接口。细节见 references/workflow.md。
输出通常位于你的 Vault:
知识库/<主题分类>/<标题>.md
知识库/面试题库/<一级>/<子方向>/<题目>.md
抖音作者/<昵称>.md
知识总索引.md
导入总日志.md
附件/...
运行材料、转写、草稿和状态位于本地 .cache/runs/<run_id>/ 等目录。它们可能包含个人学习记录及源作品内容,不能上传。中断后优先保留同一 run_dir 与检查点;新发同一显式命令会建立新批次,并排除已有/已跳过作品。
.claude 适配器支持情况、安装路径是否移动,然后刷新/重启会话。只有清单完整、全部处理、无失败且无暂不支持时,才能称作者“全部作品已入库”。这里只处理账号可访问的公开内容;请遵守平台条款和内容权利。
发布包只含技能、源代码、规则、测试和通用示例;个人配置与缓存被排除。数据流、反馈脱敏和权限边界见 PRIVACY.md。模型服务仍可能接收到当前 Agent 为写作读取的转写、图片和所需目录/笔记摘录;本地 ASR/OCR 不等于整套流程完全离线。
./.venv/bin/python -B -m unittest discover -s tests
这些是本地回归,使用临时 Vault 与受控材料,不发真实抖音请求或主动聊天通知;它们不能保证未来平台接口一直可用。设计和保留的行为边界见 docs/design.md。