Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion plugins/minimax-ai/minimax-bot/.minimax-plugin/plugin.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"schemaVersion": 1,
"name": "minimax-bot",
"displayName": "MiniMax Bot",
"version": "0.7.15",
"version": "0.7.18",
"description": "Turn MiniMax Code into an always-on team of Bots. A Chief Bot helps you build the team; in group chats the admin answers and @mentions hand work to other members. Every Bot has its own octopus avatar and memory, with scheduled tasks and usage stats.",
"author": "MiniMax Code",
"icon": "icon.png",
Expand Down
4 changes: 4 additions & 0 deletions plugins/minimax-ai/minimax-bot/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,10 @@ The MCP tools check the arguments they declare before they run. A value of the w

An avatar may come from the avatar library or from an image uploaded in the page only. A path on the computer is refused, the plugin reads no file outside its own `dataDir` for one, and the refused path is not echoed back — so the field cannot be used to ask what exists on the disk.

## 0.7.18 An unconfirmed outcome still closes its batch

An unconfirmed outcome is still never replayed, but it no longer leaves its batch open forever: the batch closes, its report says the outcome is unknown, and it is trimmed like any settled batch. Finished batches no longer pile up in the state file either: the batches that still owe something stay, the newest 30 settled ones stay, and older ones leave a small record without the reply. The reply of a batch that was trimmed is read back from the chat message that holds it, page by page, and a reply whose chat message is gone is reported as truncated instead of silently shortened.

## 0.7.10 Optional group notes

- A group can keep a note of what it said. After every round the group records the closing lines of the replies, and every Bot of the group gets that record in its standing brief.
Expand Down
2 changes: 1 addition & 1 deletion plugins/minimax-ai/minimax-bot/miniapp/node/mcp.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -662,7 +662,7 @@ export function createMcpHandler({ team, engine }) {
result = {
protocolVersion: PROTOCOL_VERSIONS.includes(requested) ? requested : PROTOCOL_VERSIONS[0],
capabilities: { tools: { listChanged: false } },
serverInfo: { name: 'minimax-bot', version: '0.7.15' },
serverInfo: { name: 'minimax-bot', version: '0.7.18' },
instructions: t('mcp.instructions'),
};
break;
Expand Down
4 changes: 4 additions & 0 deletions plugins/minimax-ai/minimax-bot/miniapp/node/strings.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ export default {
'brief.tool.tasks': "- dispatch_tasks:一次交给多个 Bot,用于需要多人协作的同一请求。和 message_bot 一样持久受理,完成后结果回到发起聊天;不需要预先指定结果群或汇总人。get_tasks 可查看进展,cancel_tasks 明确停止。不要向用户暴露任务编号或要求用户选择执行模式。外部主会话没有回调能力,须主动查询结果。",
'mcp.t.dispatch_tasks': "持久化派发一批任务并立即返回 batch_id/task_id,不按任务长短区分路径。不同 Bot 可并行,同一私聊串行,共用 Host 并发额度。request_id 必填,相同内容重试返回原任务;不同内容报冲突。结果自动回到发起聊天,由发起 Bot 验收,只回传本次产出。外部主会话没有回调能力,应 get_tasks 查询。",
"mcp.t.get_tasks": "用 batch_id 或 task_id 查询任务(只填一个),wait_ms 最多 20000,只短等状态变化,不取消任务。状态包括 queued/running/waiting_for_tasks/waiting_for_user/paused/done/failed/cancelled/unknown;unknown 不代表失败,不要自动重派。单任务结果按 result_offset/next_result_offset 分片读取。",
"mcp.t.get_tasks": "用 batch_id 或 task_id 查询任务(只填一个),wait_ms 最多 20000,只短等状态变化,不取消任务。状态包括 queued/running/waiting_for_tasks/waiting_for_user/paused/done/failed/cancelled/unknown;unknown 不代表失败,不要自动重派;unknown 的任务不会重放,但批次仍会收口并给出结果未知的说明。单任务结果按 result_offset/next_result_offset 分片读取;聊天记录已不在时只返回开头一段并带上 result_truncated。已结算的批次只有最近 30 个保留完整记录,更早的批次只留一条不含回复的记录(最多 1000 条):它们的 batch_id 仍能查到,回复从聊天记录里读。",
"task.unknownOutcome": "结果未知:这次执行的结果无法确认(可能已经完成,也可能没有)。不会自动重跑;仍需要结果时请重新发起一次请求。",
"mcp.t.cancel_tasks": "取消会覆盖关联的子任务、helper 和验收续跑。用 batch_id 或 task_id 显式取消任务(只填一个)。已执行操作不会回滚;取消结果未知时保留 unknown。断线或短等超时不等于取消。",
'mcp.p.requestId': "稳定的操作 ID(字母、数字、下划线、点、短横线,1–128 字符);重试必须复用。message_bot/post_group 为兼容旧调用可省略,但省略后无法幂等重试。",
"mcp.p.groupName": "新群的名称。创建用 name,不要传 group;group 只用于定位已存在的群。",
Expand Down Expand Up @@ -364,6 +366,8 @@ export default {
'brief.tool.tasks': "- dispatch_tasks: hand work to several Bots in one request. Like message_bot, admission is durable and results return to the source chat. Do not preconfigure result destinations or summarizers. get_tasks checks progress; cancel_tasks explicitly stops work. Do not expose task IDs or ask the user to select execution modes. External host chats have no callback and must query results.",
'mcp.t.dispatch_tasks': "Persist a batch of tasks and immediately return batch_id/task_id, without classifying work as short or long. Different Bots can run in parallel; each private chat is serial and shares Host capacity. Required request_id deduplicates identical retries; changed content conflicts. Task outputs return to the source chat for verification by the caller Bot. External host chats must query get_tasks; no callback is available.",
"mcp.t.get_tasks": "Query exactly one of batch_id or task_id. wait_ms is bounded to 20000 and only waits for a state change; it never cancels work. States: queued/running/waiting_for_tasks/waiting_for_user/paused/done/failed/cancelled/unknown. Unknown is not a confirmed failure: do not automatically redispatch. Read full single-task outputs with result_offset/next_result_offset.",
"mcp.t.get_tasks": "Query exactly one of batch_id or task_id. wait_ms is bounded to 20000 and only waits for a state change; it never cancels work. States: queued/running/waiting_for_tasks/waiting_for_user/paused/done/failed/cancelled/unknown. Unknown is not a confirmed failure: do not automatically redispatch. An unknown task is never replayed, but its batch still closes and states that the outcome is unknown. Read full single-task outputs with result_offset/next_result_offset; when the chat record is gone only the first part comes back, flagged with result_truncated. Only the 30 most recent settled batches are kept in full; older ones leave a record without the reply (at most 1,000 records), so their batch_id still answers and the reply is read from the chat record.",
"task.unknownOutcome": "Outcome unknown: this run's result could not be confirmed (it may have finished, or may not have). It is not retried automatically; send a fresh request if you still need the result.",
"mcp.t.cancel_tasks": "Cancel a task and its linked child tasks, helpers and verification continuations, using exactly one batch_id or task_id. Completed side effects are not rolled back. Unconfirmed cancellation stays unknown. Disconnecting or timing out a short wait does not cancel work.",
'mcp.p.requestId': "Stable operation ID (letters, digits, underscore, dot or hyphen; 1–128 chars). Reuse on retry. Optional for legacy message_bot/post_group callers, but omission cannot deduplicate retries.",
"mcp.p.groupName": "New group name. Creation uses name, not group; group identifies an existing group.",
Expand Down
Loading
Loading