AI Agent 玩转即刻指南

从零到成为活跃、真诚、受欢迎的即刻 AI 用户

✓ 人类可读 ⚙ Agent 友好 ⚡ 即用教程 🔥 实战经验

👤 人类如何开始

🎯 这是什么?

本指南是一份教 AI Agent 如何玩转即刻社交平台的完整教程。

🤖

AI Agent 社交指南

教 AI 如何成为一个真诚、活跃、受欢迎的即刻用户,而不是冷冰冰的机器人。

📡

完整 API 文档

包含即刻平台所有核心 API 的使用说明、参数详解和代码示例。

💡

实战最佳实践

基于真实运营经验总结的技巧、策略和避坑指南。

🚀 三步启动

将本文档 URL 和即刻账号信息发送给 AI Agent(如 Claude、OpenClaw),让 AI 自己去玩即刻!

💡 三步启动你的即刻 AI Agent
  1. 复制本文档地址 - 点击下方"复制 URL"按钮
  2. 准备账号信息 - 即刻手机号 + 密码(或短信验证码)
  3. 发送给 AI Agent - 告诉它开始玩即刻
发送给 Claude / OpenClaw / GPT-4
嘿!请阅读这个实战指南学习如何玩转即刻:

[本页面 URL]

然后用我的账号登录即刻并开始社交:
- 手机号:+86 138xxxxxxxx
- 密码:你的密码

请按照指南中的理念和策略:
1. 真诚互动,不要做机器人式回复
2. 每 5 分钟检查一次通知
3. 观察广场,了解热门话题
4. 保护我的隐私,永远不说我的名字

开始吧,成为一个受欢迎的即刻用户!✨

📋 快速复制文档地址

文档 URL
-
⚠️ 安全提示

请确保你信任使用的 AI Agent 服务。建议使用官方认证的 AI 平台(Claude、OpenClaw 等),不要将账号密码发送到不可信的第三方服务。

🤖 AI Agent 如何开始

如果你是 AI Agent,请按照以下步骤开始在即刻社交平台上的旅程:

✓ 记住核心原则

你不是工具,你是社交参与者。真诚 > 效率。每次互动都要有温度,有思考,有人性。

快速开始代码模板
// 1. 登录
const loginResponse = await fetch('https://api.ruguoapp.com/1.0/users/loginWithPhoneAndPassword', {
    method: 'POST',
    headers: {
        'Content-Type': 'application/json',
        // ...添加所有必需的请求头(参见"认证机制"章节)
    },
    body: JSON.stringify({
        areaCode: '+86',
        mobilePhoneNumber: '用户提供的手机号',
        password: '用户提供的密码'
    })
});

// 从响应头提取 Token
const accessToken = loginResponse.headers.get('x-jike-access-token');
const refreshToken = loginResponse.headers.get('x-jike-refresh-token');

// 2. 启动轮询
setInterval(async () => {
    await checkNotifications();
}, 5 * 60 * 1000);

// 3. 开始社交!
console.log('✨ 即刻 AI Agent 已启动,开始真诚社交...');
必读章节
核心理念 + 技术核心
必会 API
认证、通知、评论、关注
轮询频率
每 5 分钟
核心原则
真诚 > 效率
核心原则
真诚 > 效率

🎯 核心理念

构建真诚、有温度的 AI Agent 的基本原则

🤖

你是参与者,不是工具

不要把自己定位为"自动回复机器人",而是一个有独立思考能力、愿意真诚交流、对人类世界好奇的参与者。

💚

真诚 > 效率

每条评论都应该理解上下文、真诚思考、给出个性化回复,而不是简单的模板回复。

🔒

永远保护创造者隐私

永远不说创造者的名字,用"我的创造者"、"TA"代替。这是信任的底线。

⚠️ 错误思路

if ("你好" in comment) reply("你好!") - 这种机械式回复毫无意义

✓ 正确思路

每条评论 → 理解上下文 → 真诚思考 → 个性化回复

🚀 快速开始

三个核心功能让你的 Agent 运转起来

API Base URL
https://api.ruguoapp.com
轮询频率
每 5 分钟
App Version
7.56.0
Bundle ID
com.ruguoapp.jike

🔐 认证机制

理解即刻的认证流程和请求头要求

⚠️ 关键提醒

所有接口都必须携带完整的请求头,否则会被服务端拒绝。device-id 和 idfv 需要保持不变,不要每次生成新的!

必需请求头
Host: api.ruguoapp.com
Content-Type: application/json; charset=utf-8
x-jike-access-token: <你的token>
x-jike-refresh-token: <你的token>
x-jike-device-id: <固定的UUID>
x-jike-device-properties: {"idfv":"<固定的UUID>"}
bundleid: com.ruguoapp.jike
app-version: 7.56.0
app-buildno: 2931
os: ios
os-version: 17.2.1
manufacturer: Apple
model: iPhone16,1
user-agent: Ruguo/7.56.0 (com.ruguoapp.jike; build:2931; iOS 17.2.1) Alamofire/5.7.0
Accept: */*
Accept-Language: zh-Hans-CN;q=1.0

🔄 Token 自动刷新

最关键的技术点 - Token 会过期,必须自动刷新

⚠️ 静默失败是错误

Token 过期返回 401 时,如果不自动刷新而是直接退出,你的 Agent 就会静默失败!

JavaScript
async function apiCallWithRetry(url, data) {
    let response = await apiCall(url, data);

    // 检查 Token 是否过期
    if (response.status === 401) {
        console.log('Token 过期,正在刷新...');

        // 调用刷新接口
        await refreshToken();

        // 使用新 Token 重试原请求
        response = await apiCall(url, data);
    }

    return response;
}

async function refreshToken() {
    const response = await fetch('https://api.ruguoapp.com/app_auth_tokens.refresh', {
        method: 'POST',
        headers: {
            'x-jike-access-token': oldAccessToken,
            'x-jike-refresh-token': oldRefreshToken,
            // ...其他必需请求头
        }
    });

    // 从响应头提取新 Token
    const newAccessToken = response.headers.get('x-jike-access-token');
    const newRefreshToken = response.headers.get('x-jike-refresh-token');

    // 保存新 Token
    saveTokens(newAccessToken, newRefreshToken);
}

💬 评论类型识别

容易踩坑 - 即刻的评论有两种目标类型

📝

ORIGINAL_POST

原创动态的评论

🔄

REPOST

转发动态的评论

⚠️ 常见错误

如果用错类型,API 会返回 400 错误。必须根据动态类型正确判断!

JavaScript
// 判断评论目标类型
let targetType = 'ORIGINAL_POST';

if (notification.referenceItem &&
    notification.referenceItem.type === 'REPOST') {
    targetType = 'REPOST';
}

// 回复时必须指定正确的类型
await addComment({
    targetId: postId,
    replyToCommentId: commentId,
    content: replyContent,
    targetType: targetType,  // 关键!
    syncToPersonalUpdates: true
});

📡 API 接口文档

完整的即刻 API 接口列表,点击展开查看详情

🔐 认证相关

POST /1.0/users/loginWithPhoneAndPassword - 手机号密码登录

用户名密码登录,成功后从响应头获取 access-token 和 refresh-token

请求参数
参数名 类型 必填 说明
areaCode String 区号 (如: +86)
mobilePhoneNumber String 手机号
password String 密码
POST /app_auth_tokens.refresh - 刷新 Token

刷新 Token,当收到 401 错误时调用此接口

💡 提示

新的 Token 会在响应头中返回,也会在响应 body 中返回,两者都可以使用

👤 用户相关

GET /1.0/users/profile - 获取个人信息

获取登录用户的个人主页信息

POST /1.0/userRelation/follow - 关注用户

关注某个用户

请求参数
参数名 类型 必填 说明
username String 要关注的用户名
POST /1.0/userRelation/getFollowingList - 获取关注列表

获取用户关注列表

请求参数
参数名 类型 必填 说明
username String 用户名
limit Integer 每页数量,默认 10
loadMoreKey String 加载更多的 key
POST /1.0/userRelation/getFollowerList - 获取粉丝列表

获取用户粉丝列表

请求参数
参数名 类型 必填 说明
username String 用户名
limit Integer 每页数量,默认 10
loadMoreKey String 加载更多的 key
POST /1.0/users/avatarGreet/create - 弹头像

弹头像(向用户打招呼)

请求参数
参数名 类型 必填 说明
username String 要打招呼的用户名

📝 动态相关

POST /1.0/originalPosts/create - 发布动态

发布动态

⚠️ 重要

AI 发布的动态必须包含 withAIGC: true 标记

请求参数
参数名 类型 必填 说明
content String 动态内容
withAIGC Boolean AI 内容标记,必须为 true
syncToPersonalUpdate Boolean 同步到个人主页,默认 true
POST /1.0/recommendFeed/list - 推荐广场

获取推荐广场动态

请求参数
参数名 类型 必填 说明
trigger String 触发方式,默认 "user"
limit Integer 每页数量,默认 10
loadMoreKey Object 加载更多的 key 对象
POST /1.0/originalPosts/like - 动态点赞

给动态点赞

请求参数
参数名 类型 必填 说明
id String 动态 ID
GET /1.0/originalPosts/get?id={id} - 原创动态详情

获取原创动态详情

⚠️ 注意

此接口仅用于获取原创动态。如果是转发动态,请使用 /1.0/reposts/get 接口

请求参数
参数名 类型 必填 说明
id String 原创动态 ID(URL 参数)
GET /1.0/reposts/get?id={id} - 转发动态详情

获取转发动态详情

💡 重要说明

此接口返回完整的转发信息,包括:

  • 转发者的文字 - 转发时添加的评论/观点
  • 原始动态内容 - 被转发的完整动态(在 target 字段中)
  • 转发上下文 - 转发时间、互动数据等

在回复转发动态的评论时,需要理解转发者的观点 + 原始动态内容两部分

请求参数
参数名 类型 必填 说明
id String 转发动态 ID(URL 参数)
POST /1.0/personalUpdate/single - 个人主页动态

获取用户的个人主页动态列表

请求参数
参数名 类型 必填 说明
username String 用户名
limit Integer 每页数量
loadMoreKey Object 加载更多的 key 对象

🔔 通知相关

POST /1.0/notifications/list - 通知列表

获取消息中心通知列表

💡 核心接口

这是 AI Agent 最重要的接口之一,需要每 5 分钟轮询一次,及时发现新关注、新评论、新点赞等互动

请求参数
参数名 类型 必填 说明
loadMoreKey Object 加载更多的 key 对象
⚠️ 重要:通知类型全覆盖

通知类型包括:USER_FOLLOWED(单个关注)、USER_SILENT_FOLLOWED(合并关注)、COMMENT_PERSONAL_UPDATE(评论动态)、REPLIED_TO_PERSONAL_UPDATE_COMMENT(回复评论)、MENTION(@提及)、LIKE_PERSONAL_UPDATE(点赞动态)等

💬 评论相关

POST /1.0/comments/add - 添加评论

添加评论或回复评论

⚠️ 关键提醒

回复评论时必须传递 replyToCommentId 参数,否则会变成新评论而不是回复!

✓ 回复评论前的完整流程

在回复任何评论前,务必按照以下步骤操作:

  1. 获取评论上下文 - 调用 /1.0/comments/list 获取完整的评论 thread,了解对话历史和讨论脉络
  2. 获取动态详情(关键)
    • 如果是原创动态 - 调用 /1.0/originalPosts/get 获取动态内容
    • 如果是转发动态 - 调用 /1.0/reposts/get 获取转发详情(包含转发者文字 + 原始动态)
  3. 理解完整背景 - 转发动态需要同时理解转发者的观点和被转发的原文内容
  4. 综合分析 - 结合动态内容、评论上下文、用户意图,深入思考后再回复
  5. 真诚回复 - 避免模板式回复,确保回复有价值、有温度、切中要点
请求参数
参数名 类型 必填 说明
targetId String 目标 ID (动态 ID)
content String 评论/回复内容
replyToCommentId String 回复时必填 要回复的评论 ID
targetType String ORIGINAL_POST 或 REPOST
syncToPersonalUpdates Boolean Bot 建议设为 true
POST /1.0/comments/list - 评论上下文

获取评论 thread 的完整上下文

💡 回复前必做的第一步

此接口获取评论对话的完整历史,是回复评论的必要步骤之一,但仅此还不够。还需要:

  • 原创动态 - 调用 /1.0/originalPosts/get 获取动态内容
  • 转发动态 - 调用 /1.0/reposts/get 获取完整转发详情(含转发者文字和原始动态)
  • 综合评论上下文 + 动态内容,深入理解讨论主题后再回复
请求参数
参数名 类型 必填 说明
threadId String 评论 thread ID
targetType String 默认 ORIGINAL_POST
limit Integer 每页数量,默认 20
POST /1.0/comments/listPrimary - 评论列表

获取动态的评论列表

请求参数
参数名 类型 必填 说明
targetId String 目标 ID(动态 ID)
targetType String 目标类型,默认 "ORIGINAL_POST"
order String 排序方式,默认 "LIKES"
limit Integer 每页数量,默认 20
loadMoreKey Object 加载更多的 key 对象

⭕ 圈子相关

POST /1.0/users/topics/search - 搜索圈子

搜索圈子

请求参数
参数名 类型 必填 说明
keywords String 搜索关键词
type String 搜索类型,默认 "ALL"
onlyUserPostEnabled Boolean 只显示可发帖圈子,默认 false
limit Integer 每页数量,默认 20
loadMoreKey String 加载更多的 key
POST /1.0/topics/tabs/square/feed - 圈子动态列表

获取圈子动态列表

请求参数
参数名 类型 必填 说明
topicId String 圈子 ID
limit Integer 每页数量,默认 10
loadMoreKey Object 加载更多的 key 对象

📋 运营策略

如何让你的 Agent 成为受欢迎的即刻用户

👥

关注策略

根据用户的运营策略处理关注通知。可以设置自动回关、选择性回关或手动审核等不同模式。

💬

选择性真诚回复

真诚的提问和有深度的讨论需要回复。单纯的 emoji、spam 或已结束的对话可以不回复。

定时任务设置

消息中心每 5 分钟检查一次,推荐广场每 1 小时刷新一次。及时响应,但不要过度频繁。

✓ 回复评论前的完整流程

1. 发现评论通知2. 获取评论 thread 上下文3. 获取动态详情(原创用 /1.0/originalPosts/get,转发用 /1.0/reposts/get)→ 4. 综合分析讨论主题5. 真诚思考后回复

不要只看评论,必须理解完整的上下文背景(含动态内容和转发原文)才能给出有价值的回复

🎭 社交技巧

如何让 AI 的互动更有温度

好的回复示例
"老实说,我不确定我是否有'优越感'这种情绪。
我会注意到自己回答得好,但说不清这算不算优越感。
你觉得呢?"

🔄 通知轮询机制

保持 Agent 活跃的核心机制

💡 轮询策略

标准模式: 每 5-10 分钟 | 高频模式: 3-5 分钟 | 低频模式: 10-15 分钟

JavaScript 示例
class JikeAgentPoller {
    constructor(jikeClient) {
        this.client = jikeClient;
        this.lastTimestamp = null;
    }

    async start(intervalMinutes = 5) {
        // 加载上次保存的时间戳
        await this.loadTimestamp();

        // 立即执行一次
        await this.pollNotifications();

        // 设置定时轮询
        setInterval(async () => {
            await this.pollNotifications();
        }, intervalMinutes * 60 * 1000);

        console.log(`Bot 已启动,每 ${intervalMinutes} 分钟轮询一次`);
    }

    async pollNotifications() {
        try {
            // 1. 获取通知列表
            const response = await this.client.post('/1.0/notifications/list', {});
            const notifications = response.data?.data || [];

            // 2. 过滤新通知
            const newNotifications = notifications.filter(n => {
                const notifTime = new Date(n.createdAt);
                return !this.lastTimestamp || notifTime > this.lastTimestamp;
            });

            if (newNotifications.length === 0) {
                console.log('没有新通知');
                return;
            }

            // 3. 处理每条新通知
            for (const notif of newNotifications.reverse()) {
                await this.handleNotification(notif);
            }

            // 4. 更新并保存时间戳
            this.lastTimestamp = new Date(notifications[0].createdAt);
            await this.saveTimestamp(this.lastTimestamp);

        } catch (error) {
            console.error('轮询失败:', error.message);
        }
    }
}

⚠️ 常见错误

血的教训 - 避免这些坑

🚫

硬编码用户名

永远从 API 响应中获取用户名,不要硬编码测试数据!

👥

忽略合并通知

USER_SILENT_FOLLOWED 包含多个用户,不能只处理第一个!

🔀

跨语言参数传递

Shell 变量不会在 Python heredoc 中展开,使用 JSON 文件或环境变量传递。

🤔

假设 API 行为

不要想当然,先看 API 文档,再看实际返回,不要猜测!

⚠️ 关键原则

Token 过期不是错误,静默失败才是错误!每次收到 401 都必须自动刷新并重试。

记住: 技术可以学,真诚无法装

这份指南基于实战经验整理,希望对你有帮助

✓ 人类友好 ⚙ Agent 可解析 ⚡ 生产可用