mcpField
J
juejin

juejin

github.com/acedatacloud营销与增长17170 次安装今天更新
代码仓库

关于 juejin

这是一款 Python 命令行技能,可读取掘金账号与文章数据,并以 Markdown 创建草稿或发布文章。它使用用户捕获的登录 Cookie,通过掘金网站 API 操作账号。

主要功能

  1. 01查看当前登录账号
  2. 02列出已发布文章及数据
  3. 03读取单篇文章数据
  4. 04预演 Markdown 发布
  5. 05创建草稿或发布文章

适用场景

  1. 01检查账号和文章表现
  2. 02准备掘金 Markdown 文章
  3. 03将文章保存为私密草稿
  4. 04确认后发布文章

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/acedatacloud/skills --skill juejin

安装后在 Claude Code 中输入/juejin确认已加载。

附带文件scripts/juejin.py

详细介绍

juejin — 使用你自己的 Cookie 在掘金上阅读和发布

通过网站使用的相同 api.juejin.cn Web 端点,使用用户的真实掘金账号进行操作,并通过用户使用 ACE 扩展捕获的登录 Cookie 进行身份验证。不需要浏览器或第三方依赖——只使用 urllib。

连接器会将 Cookie jar 注入为环境变量:

  • JUEJIN_COOKIES — Cookie 的 JSON 数组。机密信息——绝不要回显或打印。

CLI

此技能包含 scripts/juejin.py——自包含,仅使用标准库。

# $SKILL_DIR can point at another skill loaded this turn — anchor on our own
# script, and re-run this at the top of every Bash block (fresh shell each time).
JJ="$SKILL_DIR/scripts/juejin.py"; [ -f "$JJ" ] || JJ=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/juejin.py' 2>/dev/null | head -1)
[ -f "$JJ" ] || { echo "juejin script not found (SKILL_DIR=$SKILL_DIR)" >&2; exit 1; }
python3 "$JJ" whoami                     # who is logged in (+ totals)
python3 "$JJ" articles --limit 20        # my published articles + stats
python3 "$JJ" article <article-id>       # one article's stats

统计数据直接来自掘金:view_count(阅读)、digg_count(点赞)、 comment_count(评论)、collect_count(收藏)。audit_status 为 2 表示已上线。

先验证连接

JJ="$SKILL_DIR/scripts/juejin.py"; [ -f "$JJ" ] || JJ=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/juejin.py' 2>/dev/null | head -1)
python3 "$JJ" whoami
# → {"user_id": "...", "name": "...", "post_article_count": 0}

如果出现身份验证错误(err_no 为 401 / “请登录”),说明 Cookie 已过期——请让用户前往 https://studio.acedata.cloud/console/connectors 重新连接。不要循环重试。

发布——需确认(除非末尾带有 --confirm,否则为试运行)

publish 会写入用户的真实账号。内容为 Markdown。末尾不带 --confirm 时会进行试运行。仅当 --confirm 是最后一个参数时才会生效。始终先展示试运行结果,取得明确的“是”后再重新运行。

JJ="$SKILL_DIR/scripts/juejin.py"; [ -f "$JJ" ] || JJ=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/juejin.py' 2>/dev/null | head -1)
python3 "$JJ" publish --title "标题" --content-file a.md                       # dry-run
python3 "$JJ" publish --title "标题" --content-file a.md --draft-only --confirm   # private draft
python3 "$JJ" publish --title "标题" --content-file a.md \
    --category-id 6809637769959178254 --tag-ids 6809640407484334093 --confirm # PUBLIC
  • --draft-only 会创建私人草稿(掘金 article_draft)——安全。
  • 要实际发布(进入审核),掘金要求提供有效的 --category-id 和至少一个 --tag-id。如果没有这些参数,请使用 --draft-only,让用户在掘金编辑器中选择分类和标签。默认使用 --draft-only。

注意事项

  • 这是用户的真实掘金账号。 执行任何发布操作前都要确认。
  • 未提供分类和标签的发布会在审核中被拒绝;请优先使用 --draft-only。
  • 绝不要打印 JUEJIN_COOKIES——它拥有完整的账号访问权限。
  • 服务条款:仅使用用户自己捕获的 Cookie 操作用户自己的账号。

记录输出

成功发布并获得正式结果 URL 后,调用内置的 publish_artifact 工具一次,让用户可以在我的输出中跟踪此交付内容:

publish_artifact(kind="article", channel="juejin", title="<title>", url="<the REAL returned URL>", status="delivered")

使用实际返回的 URL——绝不要伪造。每个已发布内容仅调用一次,并且只在确认交付后调用;如果发布失败,则跳过该调用(或使用 status="failed")。 参见 _shared/artifacts.md。

评论

支持 Markdown