讲师中心 微信公众号
AI工具推荐 视频效率加速

掘金技能集

Polar Sponsor
爱发电 赞助
.NET 9.0

掘金社区一站式工具,提供热门文章排行榜、Markdown 文章发布(默认草稿)及文章下载为 Markdown。

⚠️ 凭证与权限声明

功能概述

⚠️ 凭证与权限声明是一项面向实际任务的技能,主要用于本技能在登录成功后会把掘金会话 Cookie 以明文 JSON 形式保存到;~/.juejin_cookie.json (文件权限会被设置为 0600 ,仅当前用户可读写);

核心要点

  • 只要该文件存在且未过期,后续调用即可以你的身份访问掘金账号(发布文章、;
  • 读取草稿等);
  • 仅在你愿意把掘金登录态保存在本机时才登录, 避免在共享/CI 环境运行;

使用与执行

使用结束后请执行 rm ~/.。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。

结果检查与注意事项

实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。

⚠️ 凭证与权限声明

本技能在登录成功后会把掘金会话 Cookie 以明文 JSON 形式保存到 ~/.juejin_cookie.json(文件权限会被设置为 0600,仅当前用户可读写)。 只要该文件存在且未过期,后续调用即可以你的身份访问掘金账号(发布文章、 读取草稿等)。

  • 仅在你愿意把掘金登录态保存在本机时才登录,避免在共享/CI 环境运行;
  • 使用结束后请执行 rm ~/.juejin_cookie.json 主动撤销;
  • 不要将该文件提交版本库(仓库已默认忽略);
  • 本技能默认只创建草稿:API 层 ArticlePublisher.publish_markdown() 的默认行为是 save_draft_only=True,且公开发布还需要调用方额外显式 传入 allow_public_publish=True。入口脚本 run_publish.py 和 publish_article.py 则在此之上再加了命令行/交互式的人工确认门。

Juejin Skills - 掘金技术社区操作技能

🚀 快速使用

本技能仅在用户明确、字面提到下列意图时才被调用。 模糊的、推断出的或捎带提到“掘金/发布/下载”的请求不会触发本技能; 遇到不确定的情况,AI 应当先向用户澄清,而不是直接执行。

热门文章排行榜(只读,无副作用)

  • “获取掘金热门文章排行榜”
  • “查看掘金前端分类的热门文章”
  • “掘金有哪些文章分类?”

文章发布(需要登录态 + 显式 .md 路径)

  • “把 ./xxx.md 这个文件作为草稿发布到掘金,分类前端,标签 Vue.js”
  • “登录掘金账号”(会通过 Playwright 打开浏览器让你登录)
  • 注:用户必须显式给出位于当前工作目录下的 .md 文件路径, 或直接粘贴 Markdown 正文。AI 不得主动猜测或代填路径, 也不得把诸如 ~/.ssh/...、/etc/...、~/.juejin_cookie.json 这类路径喂给本技能。

文章下载(只接受用户显式给出的 juejin.cn 链接或 article_id)

  • “下载这条链接的掘金文章:https://juejin.cn/post/xxx”
  • “把这位作者(链接:https://juejin.cn/user/xxx)的最新 N 篇文章保存到本地”

技能描述

属性 内容
技能名称 Juejin Skills(掘金技术社区操作技能)
技能类型 Prompt-based Skill(自然语言驱动)
技能语言 Python
目标网站 https://juejin.cn/
激活方式 自然语言指令

激活条件

本技能采取严格字面匹配策略:仅当用户的请求同时满足下列三项时, 才认为该请求属于本技能的范围:

  1. 请求中字面出现“掘金”或域名 juejin.cn(不接受“某社区”“技术博客” 等泛指);
  2. 请求所表达的动作落在“查询热门列表 / 发布 .md 草稿 / 下载已知 URL” 这三类窄定义场景之一;
  3. 触发任何写操作(登录、发布、下载到磁盘)的请求都必须带有用户亲自 提供的具体参数(.md 路径、文章 URL、分类名等),AI 不得自行编造。

如果上述任一条件不满足,AI 应当先向用户澄清,不要激活本技能。

1. 热门文章排行榜(只读)

  • 触发示例:用户字面询问“掘金 + (热门 / 排行榜 / 热榜 / 分类列表)”。
  • 不触发示例:“最近前端有什么火的”“给我推荐几篇好文章”—— 这些不含“掘金”字样,本技能保持沉默。

2. 文章发布(写操作,需登录态 + 显式输入)

  • 触发示例:用户字面要求“(发布 / 发文 / 投稿 / 草稿) + 掘金”, 并提供下列至少一项:
    • 当前工作目录下的 .md 文件路径,或
    • 直接粘贴的 Markdown 正文。
  • 不触发示例:仅说“一键发布”“帮我发个文”而未指明掘金; 仅模糊提到“掘金”但未给出文件或正文; 请求读取 ~/.ssh、/etc、~/.juejin_cookie.json 等敏感路径。 这些情况下应拒绝并要求澄清。

3. 文章下载(写操作到 ./output)

  • 触发示例:用户字面给出 juejin.cn/post/ 或 juejin.cn/user/ 链接,并字面要求“下载 / 保存 / 导出”。
  • 不触发示例:要求下载非掘金域名的文章;要求把下载结果写入 ./output/ 之外的路径——这些应被拒绝。

3.1 批量下载(需人工确认 + 硬上限)

  • download_user_articles 需要调用方显式传入 confirm_bulk=True, 未传时该方法会直接拒绝并返回提示。
  • max_count 默认 20、硬上限 50;AI / CLI 不得在未获得用户明确同意前 自行将这个限额开到更高或跳过确认。这避免了在用户只需下载一两篇 文章时意外启动大规模抓取。
  • 触发示例:“把这位作者(https://juejin.cn/user/xxx)的最新 N 篇 文章下载下来” + 用户明确同意启动批量下载。

功能清单

📊 功能一:热门文章排行榜

子功能 说明
获取分类列表 获取掘金所有文章分类(前端、后端、Android、iOS、人工智能等)
热门文章排行 获取指定分类或全部分类的热门文章排行榜
文章趋势分析 按时间维度(3天/7天/30天/历史)查看文章热度趋势
排行榜筛选 支持按分类、时间范围、排序方式筛选

API 接口:

  • 分类列表:GET https://api.juejin.cn/tag_api/v1/query_category_briefs
  • 热门文章:POST https://api.juejin.cn/recommend_api/v1/article/recommend_all_feed
  • 分类文章:POST https://api.juejin.cn/recommend_api/v1/article/recommend_cate_feed
  • 标签列表:POST https://api.juejin.cn/tag_api/v1/query_category_tags

📝 功能二:文章自动发布

子功能 说明
浏览器登录 通过 Playwright 打开掘金登录页面,用户扫码或密码登录后自动获取 Cookie
Cookie 管理 保存、加载、验证 Cookie 状态
Markdown 解析 读取本地 Markdown 文件,提取标题、正文内容
文章发布 通过掘金 API 创建草稿并发布,支持设置分类、标签、摘要、封面图
草稿管理 支持保存为草稿而不立即发布

API 接口:

  • 创建草稿:POST https://api.juejin.cn/content_api/v1/article_draft/create
  • 发布文章:POST https://api.juejin.cn/content_api/v1/article/publish
  • 获取标签:POST https://api.juejin.cn/tag_api/v1/query_category_tags

鉴权方式:Cookie 鉴权(通过 Playwright 浏览器登录获取)

📥 功能三:文章下载

子功能 说明
单篇下载 通过文章 URL 下载单篇文章,保存为 Markdown
批量下载 下载指定作者的所有/部分文章
格式转换 将掘金文章 HTML 内容转换为标准 Markdown
图片处理 可选下载文章中的图片到本地
元数据保留 保留文章标题、作者、发布时间、标签等元信息

API 接口:

  • 文章详情:POST https://api.juejin.cn/content_api/v1/article/detail
  • 用户文章列表:POST https://api.juejin.cn/content_api/v1/article/query_list

技术架构

juejin/
├── SKILL.md              # 技能定义文档
├── README.md             # 项目说明文档
├── requirements.txt      # Python 依赖
├── juejin_skill/         # 主模块
│   ├── __init__.py
│   ├── config.py         # 配置管理
│   ├── api.py            # 掘金 API 封装
│   ├── auth.py           # 登录鉴权(Playwright)
│   ├── hot_articles.py   # 热门文章排行榜
│   ├── publisher.py      # 文章发布
│   ├── downloader.py     # 文章下载
│   └── utils.py          # 工具函数
└── output/               # 下载文章输出目录

环境要求

  • Python >= 3.9
  • Playwright(用于浏览器登录)
  • 网络可访问 https://juejin.cn/

Prompt 示例

用户:帮我获取掘金前端分类的热门文章排行榜
AI:正在获取掘金前端分类的热门文章...

用户:把 ./my-article.md 发布到掘金,分类选前端,标签加上 Vue.js 和 TypeScript
AI:正在登录掘金账号并发布文章...

用户:下载这篇掘金文章 https://juejin.cn/post/7300000000000000000
AI:正在下载文章并转换为 Markdown 格式...

🔒 安全限制与风险警告

本地文件写入安全限制(filesystem_write)

  • download_article(...)、download_user_articles(...) 以及内部的 _write_markdown_file / _download_images 在写入磁盘之前都会调用 juejin_skill.downloader._validate_output_dir():
    • 写入路径必须位于 ./output(或 $JUEJIN_OUTPUT_ROOT)之下;
    • 使用 os.path.realpath 解析后再比对,可抵御符号链接、.. 馑越, 以及伪造后缀绕过检查。
  • 任何越出根目录的 output_dir 传入都会被以 {"success": False, "message": ...} 形式拒绝,不会创建目录也不会调用 open()。
  • 这保证了 SKILL.md 中 filesystem_write 边界与代码实际行为一致。

批量下载安全限制(bulk_download_policy)

  • download_user_articles() 需要显式 confirm_bulk=True 才会执行;
  • max_count 默认 20、硬上限 BULK_DOWNLOAD_HARD_CAP=50,超出会被静默降级;
  • 防止在用户仅下载一两篇文章时被意外启动为全量抓取,控制运营风险与平台合规风险。

本地文件读取安全限制(filesystem_read)

  • publish_markdown(filepath=...) 会经过 juejin_skill.publisher._validate_markdown_path() 校验,仅接受:
    • 位于当前工作目录(或 $JUEJIN_MD_ROOT)之下的 .md / .markdown 文件;
    • 文件大小 ≤ 2 MiB;
    • 不在 /etc、/var、/proc、/sys、/dev、/root、/boot、 ~/.ssh、~/.aws、~/.config、~/.juejin_cookie.json 等敏感前缀下的文件。
  • 路径会使用 os.path.realpath 解析后再比对,以防止符号链接逃逸、 .. 路径馑越、以及伪造后缀绕过检查。
  • 违反任一规则都会抩出 ValueError,不会走到 open(),也不会被填到 草稿 / 发布 / 任何外发请求中。

图片下载安全限制

  • 图片下载功能仅允许下载来自掘金官方域名的图片
  • 支持的域名:juejin.cn, p1-juejin.byteimg.com, p3-juejin.byteimg.com, p6-juejin.byteimg.com, p9-juejin.byteimg.com
  • 其他域名的图片将被自动跳过,防止SSRF攻击和未经授权的出站请求

发布安全机制

  • 默认只创建草稿,不公开发布
  • 公开发布需要双重确认:save_draft_only=False 和 allow_public_publish=True
  • 命令行工具需要额外的环境变量和交互式确认

网络访问限制

  • 仅允许访问 juejin.cn 和 api.juejin.cn 域名
  • 图片下载有严格的域名白名单限制
  • 防止潜在的策略绕过和跟踪风险
目录

热门AI工具

更多
VibeKnow
VibeKnow Hot

一款AI视频创作工具,主要用于全球首个AI知识视频创作平台,文档、文章、网页,一键生成视频,适合需要提升相关任务效率的用户。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

相关专题

更多
Gradle插件开发入门教程
Gradle插件开发入门教程

本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。

0

2026.10.22

Gradle Wrapper配置教程
Gradle Wrapper配置教程

本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。

0

2026.10.22

Golangci-lint检查器使用教程
Golangci-lint检查器使用教程

本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。

0

2026.10.22

Gradle怎么构建Java项目
Gradle怎么构建Java项目

本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。

0

2026.10.22

PHP时间戳漏洞修复教程
PHP时间戳漏洞修复教程

本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。

0

2026.10.22

Golangci-lint配置文件与规则设置
Golangci-lint配置文件与规则设置

本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。

0

2026.10.22

Golangci-lint安装与入门教程
Golangci-lint安装与入门教程

本专题讲解Golangci-lint的安装、初始化、基础命令和首次代码检查,覆盖本地环境、Docker及多平台用法,帮助Go开发者快速上手。

0

2026.10.22

PHP2Shell高危漏洞修复教程
PHP2Shell高危漏洞修复教程

PHP2Shell漏洞是什么,哪些PHP版本和运行环境会受到影响,服务器应该如何检测与修复?本专题提供版本自查脚本、Linux与Docker升级命令、PHP-FPM和Apache排查步骤,以及修复验证、临时缓解和应急响应方案。

0

2026.10.22

剧云人物设定与关系管理教程
剧云人物设定与关系管理教程

本专题介绍剧云人物设定与关系管理,讲解角色小传、性格职业、人物目标、背景资料和关系网络的创建及维护方法。

0

2026.10.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn