接口
给脚本和 AI 助手用的入口。网页里那套加密是在你的浏览器里跑的,不经过这里;走这些接口时,文本会交给服务端处理。
两种模式
字节级:密钥是一段字符表文本(双方各持一份)。密文长度等于明文的字节数,标点原样保留。
词级:密钥只有一个种子或口令,密文读起来像中文。参数传 session 或 seed,不需要字符表。
不想自己准备字符表时,传 lang(zh/ja/ko/en/ru/ar/el/he/th/hi)按输出语言现建一张;同一语言 + 同一种子,双方得到同一张表。
一、加解密
把文本变成密文、把密文还原。这一组是公开的,不需要任何凭证。
加解密
POST /api/encrypt
加密:字节级传 source,词级传 session/seed;支持 items 批量与 recipients 群发
text — 明文source — 字符集文本(字节级)preset — 内置字符集名(字节级,替代 source)lang — 输出语言(不传 source 时按语言建默认表:zh/ja/ko/en/ru/ar/el/he/th/hi)session — 会话串(词级,自动切词级模式)seed — 种子(词级)seed_phrase — 口令(词级)words — 自定义词表mode — dedup|hash|raw|wordn — 表长amb — 歧义槽mask — 是否开掩码ttl_minutes — 会话串有效期items — 批量数组recipients — 群发数组dry_run — 只校验不出密文
{"text":"我的微信是 ABCD1234","session":"EC1:芦苇-湖泊-9066-0MKN::-"}
加解密
POST /api/decrypt
解密;传 sessions 数组即可认领(逐个会话串试解)
cipher — 密文source — 字符集文本preset — 内置字符集名lang — 输出语言(不传 source 时按语言建默认表)session — 会话串sessions — 候选会话串数组seed — 种子seed_phrase — 口令words — 自定义词表mode — dedup|hash|raw|wordn — 表长amb — 歧义槽mask — 是否开掩码items — 批量数组dry_run — 只校验能不能解出来
{"cipher":"<密文>","sessions":["EC1:芦苇-湖泊-9066-0MKN::-"]}
其他
POST /api/phrase
生成一份能念的口令:口令、实际种子、念读版、会话串与模式指纹一次给全
ttl_minutes — 会话串有效期(分钟),0 表示永久words — 可选:自定义词表原文(会进指纹)
{"ttl_minutes": 30}
加解密
POST /api/identify
识别字符集来源:给指纹或原文,返回是哪个内置经典还是自定义表
fingerprint — 8 位十六进制source — 或原文
{"fingerprint":"CFDE52D2"}
其他
POST /api/session-check
会话串体检:校验位过不过、词表指纹对不对、生效种子、念读版、有效期
session — 会话串sessions — 批量数组words — 自定义词表
{"session":"EC1:芦苇-湖泊-9066-0MKN::-"}
二、给 Agent
让 AI 助手自己找到用法、发现能力、按协议调用。同样是公开的。
给 Agent
GET /api/agent-kit
上手包:能力、场景、工作流、坑
无请求体参数
GET /api/agent-kit?scenario=group_chat
给 Agent
GET /api/endpoints
本目录本身:每个端点的用途、参数与示例
无请求体参数
GET /api/endpoints
给 Agent
POST /api/mcp
MCP 服务器(JSON-RPC 2.0):tools/list、tools/call、resources/list、prompts/list
jsonrpc — 固定 2.0id — 请求编号method — tools/list、tools/call、resources/list、resources/read、prompts/list、prompts/get
{"jsonrpc":"2.0","id":1,"method":"tools/list"}
三、运维(需鉴权)
自检与运营统计是我们自己用的,不对外开放:只接受同源页面发起的请求,或带 X-Stats-Token 的运维请求;其余一律 403。
端点:GET /api/self-check(全链路自检)、GET /api/stats(计数聚合)、POST /api/event(页面埋点,只收事件名)、GET /api/health(存活检查)。
示例
curl -X POST https://argot.im/api/encrypt \
-H 'Content-Type: application/json' \
-d '{"text":"今晚八点老地方见","lang":"ja"}'
curl -X POST https://argot.im/api/decrypt \
-H 'Content-Type: application/json' \
-d '{"cipher":"<上一步的密文>","lang":"ja"}'
MCP 服务
同一个内核暴露成 MCP(JSON-RPC 2.0):POST /api/mcp。客户端清单在 /mcp.json,上手包在 /api/agent-kit。
工具
build_table — 由字符集文本生成 256 项映射表,并给出全文指纹供双方核对。encrypt — 用字符表把明文编码成汉字密文。decrypt — 用字符表把密文还原为明文,返回所有合法候选。generate_phrase — 生成一份能念的口令:口令、实际种子、念读版、会话串与模式指纹一次给全,起一段词级约定时先用它。self_check — 部署自检:把整条链路跑一遍(建表 → 加密 → 解密 → 会话串 → 词级往返 → 认领 → 识别 → 文档契约 → 吞吐),逐项返回结论与耗时。check_session — 会话串体检:校验位过不过、词表指纹对不对、最终生效的种子是什么。identify_sender — 认领密文:拿一段密文去试各个会话串。能解出的候选会全部列出(带相似度),只有一条能解出时 confidence=single;多条都能解出时词级模式分不出对错,按语义确认。identify_table — 识别字符集来源:给 8 位指纹或字符集原文,返回它是哪个内置经典,还是自定义表。
提示词
troubleshoot — 按症状排查:解不开、指纹对不上、认领分不清、会话串失效、配置链接说词表不一致。encrypt_text — 把一段文本用隐语编码成另一种文字(默认汉字),标点原样保留。share_link — 把一个链接或账号藏进普通中文(字节级,双方各持字符表)。group_chat — 群聊里让每个人收到只有自己能解开的版本。encrypted_call — 加密通话:逐条消息单独加密,可开掩码。start_agreement — 起一段新的约定:生成口令、核对指纹、再加密。claim_cipher — 认领一段密文:试自己的会话串,看是不是发给我的。decrypt_text — 把一段汉字密文还原成明文。
资源
从 entropy://index 进:端点目录、上手包、配方、事件目录、自检、技能包全文、十张内置字符表。
要知道的几件事
- 明文会经过服务端。要全程不出机器,用技能包里的零依赖命令行,不给
--api 就走本机内核。
- 有频率限制。单 IP 每 10 秒 40 次,超了封 10 秒。批量用
items(一次最多 50 条)比逐条打省额度。
- 不开跨域。浏览器里别的站点读不到响应;脚本和 Agent 不受影响。
- 算法公开。安全性来自字符表与种子,不来自实现保密。字符表别写进日志、别提交到仓库。
机器可读的版本:openapi.json ·
端点目录 ·
llms.txt ·
技能包