方正鸿云编辑助手

by behurry

方正鸿云学术出版平台自动化技能。使用 browser 工具处理登录和页面交互,API 调用使用 browser.evaluate() 执行。触发关键词:登录方正鸿云、切换刊物、自动催修、自动催审、鸿云任务提醒、自动填写送审单、自动注册 DOI、获取登录 Cookie、调用获取刊物信息接口、调用获取发布站点接口、调用获取刊期列表接口、调用获取刊期论文列表接口、调用 DOI 注册接口。

View Chinese version with editor review

安装

claude skill add --url github.com/openclaw/skills/tree/main/skills/behurry/founder-hy-editor-browser

文档

方正鸿云编辑器浏览器自动化技能

环境变量配置(可选)

以下环境变量均为可选,如未设置,技能会在需要时提示用户输入:

变量名必需默认值说明
FOUNDER_PLATFORM_URLhttp://journal.portal.founderss.cn/平台登录地址
FOUNDER_USERNAME登录用户名(未设置时使用时输入)
FOUNDER_PASSWORD登录密码(未设置时使用时输入)

配置方式(任选其一):

  1. 系统环境变量

    bash
    export FOUNDER_USERNAME="your_username"
    export FOUNDER_PASSWORD="your_password"
    
  2. 使用时输入 - 不设置环境变量,首次使用时通过"登录方正鸿云"功能手动输入


核心规则

规则 1:使用 browser.evaluate() 执行 API 调用

所有 API 接口调用使用 browser.evaluate() 在浏览器上下文中执行,避免 Cookie 失效问题。

操作正确方式
调用获取刊物信息接口browser.evaluate() 执行 fetch
调用获取发布站点接口browser.evaluate() 执行 fetch
调用获取刊期列表接口browser.evaluate() 执行 fetch
调用获取刊期论文列表接口browser.evaluate() 执行 fetch
调用 DOI 注册接口browser.evaluate() 执行 fetch

规则 2:Cookie 复用机制

所有需要登录的功能,优先检查会话中是否存在有效的 founder_cookie

code
开始功能
  ↓
检查会话变量 founder_cookie
  ↓
├─ 存在且有效 → 直接使用
└─ 为空或失效 → 执行 [获取登录 Cookie] → 存储到会话

Cookie 有效性检查

  • 会话变量为空 → 需要重新获取
  • API 调用返回登录重定向 → Cookie 失效,需要重新获取

会话变量说明

  • founder_cookie 存储在当前会话的临时内存中
  • 会话结束后自动清除

触发关键词与操作流程

1. 登录方正鸿云

触发词: 登录方正鸿云

操作步骤:

  1. 使用 browser 工具打开平台地址
  2. 等待登录页面加载完成
  3. 如环境变量存在用户名则自动填充,否则等待用户输入
  4. 如环境变量存在密码则自动填充,否则等待用户输入
  5. 点击登录按钮
  6. 等待进入主页面
  7. 向用户反馈登录完成

2. 切换刊物

触发词: 切换刊物

操作步骤:

  1. 首先执行"登录方正鸿云"操作
  2. 等待用户输入刊物名称
  3. 在头部"请选择刊物"的输入框点击激活
  4. 输入刊物名称进行匹配
  5. 点击选择匹配到的第一条记录
  6. 等待页面刷新并加载完成
  7. 再次执行一次刷新操作
  8. 向用户反馈切换完成

3. 自动催修

触发词: 自动催修

功能说明: 获取退修中阶段的过期稿件列表并展示(不执行催修操作)

参数:

  • 页码: 可选参数,默认第 1 页
  • 用户可指定页码,如"自动催修 第 2 页"

操作步骤:

  1. 检查 Cookie - 检查会话变量 founder_cookie
  2. 获取页码参数 - 解析用户输入,默认页码 = 1
  3. 生成时间戳 - 获取当前时间的毫秒级时间戳
  4. 调用获取退修论文列表接口(使用 browser.evaluate()):
    code
    POST /je-api/journal-edit-article/e5/listdata
    Body: {"mod":"e6","list":7,"page":<页码>,"count":20,"sortby":"SYS_LASTMODIFIED","sortType":1,"conditions":[{"key":"a_timeEditEnd","value":<时间戳>,"op":1}]}
    
  5. 解析返回的 JSON 数据,提取稿件信息
  6. 计算过期天数并转换为 X 天前 格式
  7. 向用户反馈列表

注意

  • 本功能仅展示过期稿件列表,不执行催修操作
  • 支持分页查询,默认第 1 页

4. 自动催审

触发词: 自动催审

功能说明: 获取送专家审阶段的过期稿件列表并展示(不执行催审操作)

操作步骤:

  1. 检查 Cookie - 检查会话变量 founder_cookie
  2. 生成时间戳 - 获取当前时间的毫秒级时间戳
  3. 调用获取送专家审论文列表接口(使用 browser.evaluate()):
    code
    POST /je-api/journal-edit-article/e5/listdata
    Body: {"mod":"e4","list":5,"page":1,"count":20,"conditions":[{"key":"a_stage","value":3,"op":0},{"key":"a_timeReviewEnd","value":<时间戳>,"op":1}]}
    
  4. 解析返回的 JSON 数据,提取稿件信息
  5. 计算过期天数并转换为 已过期 X 天 格式
  6. 向用户反馈列表

注意

  • 本功能仅展示过期稿件列表,不执行催审操作

5. 鸿云任务提醒

触发词: 鸿云任务提醒

操作步骤:

  1. 使用 browser 工具打开平台主页
  2. 检查登录状态,如未登录则执行登录
  3. 提取"待处理任务"区域的所有任务项及数量
  4. 向用户反馈汇总列表
  5. 关闭浏览器页面

6. 自动填写送审单

触发词: 自动填写送审单

操作步骤:

  1. 浏览器进入学术出版云服务平台
  2. 进入编审中心 → 初审中
  3. 选中列表第一篇稿件
  4. 点击送专家审
  5. 通过 AI 选择审稿专家(前 4 位)
  6. 送审附言选择系统第一个常用语
  7. 填写完成后等待人工确认
  8. 向用户反馈送审单填写完成

7. 自动注册 DOI

触发词: 自动注册 DOI

操作步骤:

  1. 检查 Cookie - 检查会话变量 founder_cookie
  2. 调用刊物信息接口获取刊物 ID
  3. 调用获取发布站点接口获取站点 ID
  4. 调用获取刊期列表接口,自动提取最新刊期 ID
  5. 调用获取刊期论文列表接口
  6. 筛选未注册 DOI 的论文
  7. 调用 DOI 注册接口提交注册
  8. 向用户反馈结果(异步任务)

注意

  • 整个流程无需人工干预
  • DOI 注册是异步任务,最终结果需到系统中查看

8. 获取登录 Cookie

触发词: 获取登录 Cookie

功能说明: 获取平台登录 Cookie 并存储到会话变量 founder_cookie

操作步骤:

  1. 检查会话变量 - 检查 founder_cookie 是否存在:
    • 如果存在且有效 → 直接返回,无需重新获取
    • 如果为空或不存在 → 继续执行以下步骤
  2. 打开平台 - 使用 browser 工具打开平台 URL
  3. 检查登录状态
    • 如果显示登录表单 → 执行自动登录
    • 如果已显示工作台 → 跳过登录
  4. 输入用户名 - 从环境变量读取或等待用户输入
  5. 输入密码 - 从环境变量读取或等待用户输入
  6. 点击登录 - 等待进入工作台
  7. 提取 Cookie - 执行 document.cookie
  8. 存储到会话 - 存储到会话变量 founder_cookie
  9. 关闭浏览器 - 关闭页面
  10. 反馈用户 - 返回获取成功信息

注意:

  • 优先复用 - 先检查会话变量,避免重复登录
  • ⚠️ Cookie 有时效性,如 API 返回登录重定向需重新获取

9-13. API 接口调用

触发词说明
调用获取刊物信息接口获取刊物 ID 和名称
调用获取发布站点接口获取站点 ID
调用获取刊期列表接口获取刊期列表
调用获取刊期论文列表接口获取指定刊期的论文列表
调用 DOI 注册接口批量提交 DOI 注册

通用流程

  1. 检查 Cookie 是否存在,如失效则重新获取
  2. 使用 browser.evaluate() 调用对应 API 接口
  3. 解析返回的 JSON 数据
  4. 存储结果到会话变量(如适用)
  5. 向用户反馈结果

会话变量汇总

变量名来源说明
founder_cookie获取登录 Cookie登录 Cookie(会话内存,结束后清除)
journal_id调用获取刊物信息接口刊物 ID
journal_name调用获取刊物信息接口刊物名称
site_id调用获取发布站点接口站点 ID
period_list调用获取刊期列表接口刊期列表
period_id调用获取刊期列表接口选定的刊期 ID
article_list调用获取刊期论文列表接口论文列表

说明

  • 所有会话变量存储在当前会话的临时内存中
  • 会话结束后自动清除

工具使用说明

使用 browser 工具的场景

  • 获取登录 Cookie
  • 登录方正鸿云
  • 切换刊物
  • 自动催修/催审
  • 鸿云任务提醒
  • 自动填写送审单
  • API 接口调用(使用 browser.evaluate()

工具分工

场景使用工具
获取登录 Cookiebrowser
调用 API 接口browser.evaluate()
登录方正鸿云browser
切换刊物browser
自动催修/催审browser
鸿云任务提醒browser
自动填写送审单browser

错误处理与退出机制

  • 重试限制:每个操作步骤最多重试 2 次
  • 退出条件:连续 2 次失败时终止并反馈错误信息
  • 任何操作失败时,向用户反馈具体错误信息

结束操作

所有技能执行完成后

  1. 关闭当前浏览器页面
  2. 向用户反馈操作完成

安全说明

凭证管理

  • 不硬编码凭证 - 用户名和密码通过环境变量或使用时输入
  • 会话临时存储 - Cookie 存储在会话内存,结束后清除
  • ⚠️ 建议 - 敏感操作后重新获取 Cookie

推荐配置方式

推荐:使用系统环境变量

bash
export FOUNDER_USERNAME="your_username"
export FOUNDER_PASSWORD="your_password"

可选:不设置环境变量,每次使用时输入

安全最佳实践

  1. 不要在公开场合分享你的登录凭据
  2. 定期更换平台登录密码
  3. 使用完毕后会话自动清除 Cookie
  4. 建议在可信环境中使用此技能

无匹配关键词时的响应

当用户未触发上述关键词时,回复:

请输入指定操作关键词(登录鸿云平台/切换刊物/自动催修/自动催审/鸿云任务提醒/自动填写送审单/自动注册 DOI/获取登录 Cookie/调用获取刊物信息接口/调用获取发布站点接口/调用获取刊期列表接口/调用获取刊期论文列表接口/调用 DOI 注册接口)