2245 lines
105 KiB
JSON
2245 lines
105 KiB
JSON
{
|
||
"version": 1,
|
||
"source": {
|
||
"kind": "explicit",
|
||
"name": "dws-tool-metadata/chat",
|
||
"repository": "DingTalk-Real-AI/dingtalk-workspace-cli",
|
||
"channel": "open-source",
|
||
"reviewed": true
|
||
},
|
||
"tools": {
|
||
"chat.add_custom_group_role": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.add_emoji_reaction": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"chat": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"conversation-id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"group": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
}
|
||
},
|
||
"review_reason": "The four reviewed conversation locator flags are aliases for one openConversationId property; the typed require-one-of constraint owns their conditional requirement.",
|
||
"cli_path": "chat message add-emoji",
|
||
"runtime_gate": "none",
|
||
"confirmation": "not_required"
|
||
},
|
||
"chat.add_group_member": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.add_message_favorite": {
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: this executable CLI wrapper calls a remote helper that is absent from the pinned MCP metadata snapshot; no single pinned semantically equivalent interface_ref can represent the command.",
|
||
"reviewed": true
|
||
},
|
||
"chat.add_robot_to_group": {
|
||
"interface_ref": {
|
||
"product_id": "bot",
|
||
"rpc_name": "add_robot_to_group"
|
||
},
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.add_text_emotion": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"chat": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"conversation-id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"group": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
}
|
||
},
|
||
"review_reason": "The four reviewed conversation locator flags are aliases for one openConversationId property; the typed require-one-of constraint owns their conditional requirement.",
|
||
"cli_path": "chat message add-text-emotion",
|
||
"runtime_gate": "none",
|
||
"confirmation": "not_required"
|
||
},
|
||
"chat.combine_forward_messages": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.create_and_send_card": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.create_group_conversation": {
|
||
"interface_ref": {
|
||
"product_id": "im",
|
||
"rpc_name": "create_group_conversation"
|
||
},
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.create_smart_conv_category": {
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: this executable CLI wrapper calls a remote helper that is absent from the pinned MCP metadata snapshot; no single pinned semantically equivalent interface_ref can represent the command.",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"keywords": {
|
||
"description": "群名称关键词列表,逗号分隔(可选)",
|
||
"interface_type": "array",
|
||
"property": "groupNameKeywords",
|
||
"required": false
|
||
},
|
||
"members": {
|
||
"description": "群内成员 openDingTalkId 列表,逗号分隔(可选)",
|
||
"interface_type": "array",
|
||
"property": "memberOpenDingTalkIds",
|
||
"required": false
|
||
},
|
||
"name": {
|
||
"description": "分组名称 (必填)",
|
||
"property": "categoryName",
|
||
"required": true
|
||
}
|
||
},
|
||
"review_reason": "Expose the existing smart-category helper through the reviewed Agent Schema and preserve its CLI-to-interface parameter contract.",
|
||
"cli_path": "chat category create-smart",
|
||
"runtime_gate": "none",
|
||
"confirmation": "not_required"
|
||
},
|
||
"chat.create_text_emotion": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.dismiss_group": {
|
||
"effect": "destructive",
|
||
"risk": "high",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.download_media": {
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "命令包含多个 RPC、条件分派或本地 HTTP/文件步骤,不能绑定为单一 interface_ref",
|
||
"reviewed": true
|
||
},
|
||
"chat.forward_message": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.forward_topic": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.get_conv_info_by_group_id": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.get_conversation_info": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.get_group_invite_url": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.get_group_members": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.list_conversation_message_v2": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.list_conversations_by_category": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.list_custom_group_roles": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.list_group_bots": {
|
||
"interface_ref": {
|
||
"product_id": "bot",
|
||
"rpc_name": "list_group_bots"
|
||
},
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.list_individual_chat_message": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.list_message_favorites": {
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: this executable CLI wrapper calls a remote helper that is absent from the pinned MCP metadata snapshot; no single pinned semantically equivalent interface_ref can represent the command.",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"size": {
|
||
"interface_type": "string"
|
||
}
|
||
},
|
||
"review_reason": "Preserve the reviewed CLI-to-interface conversion: Cobra validates --size as an integer from 1 to 100, then the helper serializes it to the string-valued list_message_favorites size property.",
|
||
"cli_path": "chat message list-favorites",
|
||
"runtime_gate": "none",
|
||
"confirmation": "not_required"
|
||
},
|
||
"chat.list_messages_by_ids": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.list_owned_or_admin_groups": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"limit": {
|
||
"required": false
|
||
},
|
||
"role": {
|
||
"required": false
|
||
}
|
||
},
|
||
"review_reason": "The reviewed CLI lists all owned or administered groups when --role and --limit are omitted; both flags are optional filters despite stricter imported interface metadata.",
|
||
"cli_path": "chat group list-my-groups",
|
||
"runtime_gate": "none",
|
||
"confirmation": "not_required"
|
||
},
|
||
"chat.list_pin_messages": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.list_special_focus_messages": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.list_top_conversations": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.list_topic_replies": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.list_user_define_conv_categories": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.query_custom_user_roles": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.query_message_send_status": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.query_msg_read_status": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.quit_group": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.recall_message": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "not_required",
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.recall_robot_message": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "not_required",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "命令包含多个 RPC、条件分派或本地 HTTP/文件步骤,不能绑定为单一 interface_ref",
|
||
"reviewed": true,
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.remove_custom_group_role": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "not_required",
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.remove_custom_user_roles": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "not_required",
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.remove_emoji_reaction": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"chat": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"conversation-id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"group": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
}
|
||
},
|
||
"review_reason": "The four reviewed conversation locator flags are aliases for one openConversationId property; the typed require-one-of constraint owns their conditional requirement.",
|
||
"cli_path": "chat message remove-emoji",
|
||
"runtime_gate": "none",
|
||
"confirmation": "not_required"
|
||
},
|
||
"chat.remove_group_member": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "not_required",
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.remove_message_favorite": {
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: this executable CLI wrapper calls a remote helper that is absent from the pinned MCP metadata snapshot; no single pinned semantically equivalent interface_ref can represent the command.",
|
||
"reviewed": true
|
||
},
|
||
"chat.remove_robot_in_group": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "not_required",
|
||
"interface_ref": {
|
||
"product_id": "bot",
|
||
"rpc_name": "remove_robot_in_group"
|
||
},
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.remove_text_emotion": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"chat": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"conversation-id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"group": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
}
|
||
},
|
||
"review_reason": "The four reviewed conversation locator flags are aliases for one openConversationId property; the typed require-one-of constraint owns their conditional requirement.",
|
||
"cli_path": "chat message remove-text-emotion",
|
||
"runtime_gate": "none",
|
||
"confirmation": "not_required"
|
||
},
|
||
"chat.reply_personal_message": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "not_required",
|
||
"idempotency": "unknown",
|
||
"interface_ref": {
|
||
"product_id": "chat",
|
||
"rpc_name": "send_personal_message"
|
||
},
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.search_at_me_message": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.search_bots": {
|
||
"interface_ref": {
|
||
"product_id": "bot",
|
||
"rpc_name": "search_bots"
|
||
},
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.search_common_groups": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.search_groups": {
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: the CLI calls im/search_groups with a flat payload, while the pinned snapshot only contains the incompatible chat/search_groups_by_keyword contract.",
|
||
"reviewed": true
|
||
},
|
||
"chat.search_messages": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.search_messages_by_keyword": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.search_messages_by_sender": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.search_messages_by_time_range": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.search_my_robots": {
|
||
"interface_ref": {
|
||
"product_id": "bot",
|
||
"rpc_name": "search_my_robots"
|
||
},
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.send_message_by_custom_robot": {
|
||
"interface_ref": {
|
||
"product_id": "bot",
|
||
"rpc_name": "send_message_by_custom_robot"
|
||
},
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.send_personal_message": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "not_required",
|
||
"idempotency": "unknown",
|
||
"interface_ref": {
|
||
"product_id": "chat",
|
||
"rpc_name": "send_personal_message"
|
||
},
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.send_robot_message": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "命令包含多个 RPC、条件分派或本地 HTTP/文件步骤,不能绑定为单一 interface_ref",
|
||
"reviewed": true
|
||
},
|
||
"chat.set_custom_user_roles": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.set_group_member_mute_list": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"off": {
|
||
"required": false
|
||
}
|
||
},
|
||
"review_reason": "The reviewed Cobra contract makes --off an optional mode switch: omission adds members to the mute list, while --off removes them. The shared MCP schema incorrectly marks the boolean as unconditionally required.",
|
||
"cli_path": "chat group-mute-member",
|
||
"runtime_gate": "none",
|
||
"confirmation": "not_required"
|
||
},
|
||
"chat.set_group_mute": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"off": {
|
||
"required": false
|
||
}
|
||
},
|
||
"review_reason": "The reviewed optional --off switch selects unmute; omission deliberately selects mute, so false is a valid default rather than missing required input.",
|
||
"cli_path": "chat group-mute",
|
||
"runtime_gate": "none",
|
||
"confirmation": "not_required"
|
||
},
|
||
"chat.set_pin_message": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.set_top_conversation": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"off": {
|
||
"required": false
|
||
}
|
||
},
|
||
"review_reason": "The reviewed optional --off switch selects unpin; omission deliberately selects pin, so false is a valid default rather than missing required input.",
|
||
"cli_path": "chat set-top",
|
||
"runtime_gate": "none",
|
||
"confirmation": "not_required"
|
||
},
|
||
"chat.transfer_group_owner": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.unread_message_conversation_list": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.unset_pin_message": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.update_conv_member_roles": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"off": {
|
||
"required": false
|
||
}
|
||
},
|
||
"review_reason": "The reviewed optional --off switch selects administrator removal; omission deliberately selects administrator assignment.",
|
||
"cli_path": "chat group set-admin",
|
||
"runtime_gate": "none",
|
||
"confirmation": "not_required"
|
||
},
|
||
"chat.update_custom_group_role": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.update_group_icon": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.update_group_name": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.update_group_settings": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.update_notification_off": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"chat": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"conversation-id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"off": {
|
||
"required": false
|
||
}
|
||
},
|
||
"review_reason": "The reviewed locator aliases feed one openConversationId property, while optional --off selects unmute; typed constraints require one locator without making the mode switch mandatory.",
|
||
"cli_path": "chat mute",
|
||
"runtime_gate": "none",
|
||
"confirmation": "not_required"
|
||
},
|
||
"chat.update_show_history_msg_option": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.update_streaming_card": {
|
||
"interface_mode": "mcp",
|
||
"availability": "available",
|
||
"reviewed": true
|
||
},
|
||
"chat.edit_message": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "not_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: the executable CLI builds or accepts message content and calls im/edit_message, which is absent from the pinned MCP metadata snapshot.",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"conversation-id": {
|
||
"property": "openConversationId",
|
||
"required": true
|
||
},
|
||
"group": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"chat": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"msg-id": {
|
||
"property": "openMessageId",
|
||
"required": true
|
||
},
|
||
"text": {
|
||
"property": "text",
|
||
"required": false
|
||
},
|
||
"title": {
|
||
"property": "title",
|
||
"required": false
|
||
},
|
||
"content": {
|
||
"property": "content",
|
||
"required": false
|
||
},
|
||
"at-all": {
|
||
"property": "atAll",
|
||
"required": false,
|
||
"interface_type": "boolean"
|
||
},
|
||
"at-open-dingtalk-ids": {
|
||
"property": "atOpenDingTalkIds",
|
||
"required": false,
|
||
"interface_type": "array"
|
||
}
|
||
},
|
||
"review_reason": "The reviewed handler requires one conversation locator, a message ID, and exactly one of text or raw content; it optionally derives a title and maps mention controls before invoking edit_message.",
|
||
"cli_path": "chat message edit",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.get_conv_categories_info": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: the executable CLI parses category IDs and calls im/get_conv_categories_info, which is absent from the pinned MCP metadata snapshot.",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"category-ids": {
|
||
"property": "categoryIds",
|
||
"required": true,
|
||
"interface_type": "array"
|
||
}
|
||
},
|
||
"review_reason": "The reviewed handler requires a comma-separated category-ID list, parses it to integers, and invokes get_conv_categories_info without a mutation or confirmation gate.",
|
||
"cli_path": "chat category batch-info",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.list_conv_categories_by_conv": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: the executable CLI maps a conversation locator to im/list_conv_categories_by_conv, which is absent from the pinned MCP metadata snapshot.",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"group": {
|
||
"property": "openConversationId",
|
||
"required": true
|
||
},
|
||
"conversation-id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
}
|
||
},
|
||
"review_reason": "The reviewed handler accepts one of three conversation locator aliases and invokes list_conv_categories_by_conv without a mutation or confirmation gate.",
|
||
"cli_path": "chat category list-by-conv",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.update_group_nick": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: the executable CLI maps nickname update or clear semantics to im/update_group_nick, which is absent from the pinned MCP metadata snapshot.",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"group": {
|
||
"property": "openConversationId",
|
||
"required": true
|
||
},
|
||
"nick": {
|
||
"property": "nick",
|
||
"required": false
|
||
}
|
||
},
|
||
"review_reason": "The reviewed handler requires the target conversation while intentionally allowing omitted --nick to send an empty nickname and clear the current user's group nickname.",
|
||
"cli_path": "chat group update-nick",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.upgrade_group_to_external": {
|
||
"effect": "destructive",
|
||
"risk": "high",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: the executable CLI validates an optional string map and calls im/upgrade_group_to_external, which is absent from the pinned MCP metadata snapshot.",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"group": {
|
||
"property": "openConversationId",
|
||
"required": true
|
||
},
|
||
"extension": {
|
||
"property": "extension",
|
||
"required": false,
|
||
"interface_type": "object"
|
||
}
|
||
},
|
||
"review_reason": "The reviewed handler validates the target group and optional string-valued extension object, permits caller-authoritative dry-run, and requires explicit --yes before the irreversible upgrade.",
|
||
"cli_path": "chat group upgrade-to-external",
|
||
"runtime_gate": "confirm_dangerous"
|
||
},
|
||
"chat.shortcut_bot_search": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed paginated member adapter: it resolves a complete unique group candidate set, follows get_group_members cursors to completion or a reviewed hard page limit, de-duplicates stable member identities, and publishes im.group-members.v1 completeness facts.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +bot-search",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_bot_find": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +bot-find",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_conversation_info": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +conversation-info",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_conversation_clear_all_red_point": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +conversation-clear-all-red-point",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_conversation_list": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +conversation-list",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_conversation_list_top": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the mounted Shortcut: --type all|group|direct is a local semantic filter over list_top_conversations.singleChat, so the composite interface owns validation and normalized output without changing lower-service arguments.",
|
||
"cli_path": "chat +conversation-list-top",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_category_list": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +category-list",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_category_create": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +category-create",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_category_delete": {
|
||
"effect": "destructive",
|
||
"risk": "high",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +category-delete",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_category_rename": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +category-rename",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_search": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-search",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_chat_invite_url": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-invite-url",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_chat_dismiss": {
|
||
"effect": "destructive",
|
||
"risk": "high",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-dismiss",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_set_history": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-set-history",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_update_nick": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-update-nick",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_update_alias": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-update-alias",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_list_mine": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-list-mine",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_chat_list_all": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-list-all",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_chat_list_join_requests": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-list-join-requests",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_chat_bots": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-bots",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_chat_set_admin": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-set-admin",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_mute": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-mute",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_role_list": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-role-list",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_chat_role_add": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-role-add",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_role_update": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-role-update",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_role_set_user": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-role-set-user",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_role_query_user": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +chat-role-query-user",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_chat_create": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed create-chat adapter: it batch-resolves every natural member and optional owner query, maps an explicit owner to ownerOpenDingTalkId or reads the current profile as fallback, de-duplicates stable member identities, creates one group, and normalizes the public conversation identity.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the executable ID/query member and owner contract, all-or-nothing structured resolution failures, dry-run resolution parity, owner membership invariant, and single create_group_conversation write. It intentionally does not invent description, initial-bot, idempotency, or Lark visibility semantics.",
|
||
"cli_path": "chat +chat-create",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_members_list": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed member-bucket adapter: it accepts a stable conversation ID or resolves one complete group-name candidate set, fully paginates and de-duplicates user members, reads the lower all-bot list, and publishes im.group-members.v1 bucket completeness and partial-failure facts.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against executable target/type/page constraints, paginated get_group_members continuation, stable user de-duplication, list_group_bots projection, per-bucket ledger, and bounded page-limit semantics.",
|
||
"cli_path": "chat +chat-members-list",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_chat_messages": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed history adapter: it accepts a stable group/user identity or deterministically resolves one natural query, routes the group/direct read, optionally follows bounded typed nextPage.time pages with stable-ID de-duplication, projects im.message-list.v1 completeness facts, atomically exports JSON, and optionally orchestrates safe resource downloads.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against structured target failures, group/direct lower reads, page/result hard limits, continuation stop conditions, partial failure ledger, JSON no-clobber/atomic publication, and optional safe resource downloads. All paths remain read/not_required.",
|
||
"cli_path": "chat +chat-messages",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_messages_reply": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed quote-reply adapter: it resolves or reads the referenced sender before one personal-message write, constructs DingTalk's reply content, and enriches the successful response with stable continuation context while preserving the lower payload.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against explicit/open identity resolution, exact referenced-message lookup, no-write dry-run behavior, optional idempotency key, single send_personal_message write, and additive im.message-reply.v1 result fields. Thread reply is intentionally not advertised because no verified writer exists.",
|
||
"cli_path": "chat +messages-reply",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_send": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed composite send adapter: it selects current-user, bot, or webhook transport; current-user supports deterministic natural resolution, mediaId images and native local-file upload, while bot supports bounded stable-ID multi-group input with an im.batch-write.v1 per-target ledger.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the typed identity matrix, structured ambiguity handling, dry-run parity, bot group-file safety/limit/de-duplication, one-confirmation batch ledger, and real lower mappings; bot/webhook natural targets or rich media remain rejected because no equivalent contract exists.",
|
||
"cli_path": "chat +messages-send",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_send_by_webhook": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +messages-send-by-webhook",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_send_card": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed card lifecycle adapter: it can resolve a userId through contact search with exact matching, call create_and_send_card alone, or compose creation with update_streaming_card after extracting the returned bizId.",
|
||
"parameters": {
|
||
"receiver-open-dingtalk-id": {
|
||
"property": "receiverOpenDingTalkId",
|
||
"required": false
|
||
}
|
||
},
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against authenticated contact-search resolution, create-only, two-action dry-run, create/update success, missing bizId, and partial-failure behavior that preserves the created bizId; the explicit openDingTalkId flag is bound to the lower interface's exact receiverOpenDingTalkId property.",
|
||
"cli_path": "chat +messages-send-card",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_list_direct": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +messages-list-direct",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_messages_list_unread_conversations": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +messages-list-unread-conversations",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_messages_mget": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed exact-ID message reader: it validates and de-duplicates up to 50 IDs, projects them through the shared additive im.message-list.v1 builder, accounts for every missing ID, and optionally downloads resources with task-level failure accounting.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the executable ID bounds, shared identity/context/reaction/quote/forward/resource projection, missing-ID completeness ledger, and safe relative-path download workflow. Downloads stay read/not_required and any failure preserves messages while setting complete=false.",
|
||
"cli_path": "chat +messages-mget",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_messages_query_send_status": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +messages-query-send-status",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_messages_read_status": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +messages-read-status",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_messages_update_card": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +messages-update-card",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_list_pin": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +messages-list-pin",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_at_me": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command. Optional downloads stay read/not_required under the existing safe local-download convention and therefore do not create a non-interactive confirmation no-op.",
|
||
"cli_path": "chat +at-me",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_broadcast": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +broadcast",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_dm": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +dm",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_group_members": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against group-name fail-closed resolution, cursor termination/stall handling, page-limit continuation, stable-ID de-duplication, and final read/not_required delivery.",
|
||
"cli_path": "chat +group-members",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_my_groups": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +my-groups",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_search_msg": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed search adapter: it batch-resolves natural group and sender queries before search, combines resolved stable IDs with explicit filters, cursor pagination and batched mget enrichment, projects im.message-list.v1, and folds search/enrichment/resource failures into completeness accounting.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the executable advanced-search flags, all-or-nothing structured target resolution, and page/enrichment ledgers. Any unresolved or ambiguous query prevents the search call; optional downloads stay read/not_required under the existing safe local-download convention and therefore do not create a non-interactive confirmation no-op.",
|
||
"cli_path": "chat +search-msg",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_send_to_group": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +send-to-group",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_thread_replies": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed thread reader adapter: it accepts threadId/topicId, reads lower topic replies, projects the shared additive im.message-list.v1 fields with proof-oriented pagination, and optionally downloads reply resources whose failures fold into task completeness.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the executable thread/topic alias contract and real list_topic_replies mapping. Optional downloads stay read/not_required under the existing safe local-download convention and therefore do not create a non-interactive confirmation no-op.",
|
||
"cli_path": "chat +thread-replies",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_unread_chats": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in shortcut adapter: the executable CLI owns validation, optional multi-step orchestration, output projection, and confirmation; the complete command contract is not represented by one pinned MCP interface_ref.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the built-in Shortcut registry and mounted Cobra command: publishes the executable risk gate and composite interface without inventing a direct MCP identity.",
|
||
"cli_path": "chat +unread-chats",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.update_text_emotion": {
|
||
"effect": "write",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: the executable CLI calls im/update_text_emotion, which is proven by dws-wukong develop@30f13f02 but absent from the pinned MCP metadata snapshot; no pinned interface_ref can represent the command yet.",
|
||
"reviewed": true,
|
||
"parameters": {
|
||
"background-id": {
|
||
"property": "backgroundId",
|
||
"description": "新文字表情的背景 ID",
|
||
"required": true
|
||
},
|
||
"chat": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"conversation-id": {
|
||
"property": "openConversationId",
|
||
"description": "会话 openConversationId;与 --group、--id、--chat 四选一",
|
||
"required": false
|
||
},
|
||
"emotion-id": {
|
||
"property": "emotionId",
|
||
"description": "新的文字表情 ID,可通过 create-text-emotion 获取",
|
||
"required": true
|
||
},
|
||
"emotion-name": {
|
||
"property": "emotionName",
|
||
"description": "新的文字表情名称",
|
||
"required": true
|
||
},
|
||
"group": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"id": {
|
||
"property": "openConversationId",
|
||
"required": false
|
||
},
|
||
"msg-id": {
|
||
"property": "openMsgId",
|
||
"description": "需要原地更新文字表情的消息 openMsgId",
|
||
"required": true
|
||
},
|
||
"old-emotion-id": {
|
||
"property": "oldEmotionId",
|
||
"description": "消息上当前文字表情的 emotionId",
|
||
"required": true
|
||
},
|
||
"text": {
|
||
"property": "text",
|
||
"description": "新的文字表情内容",
|
||
"required": true
|
||
}
|
||
},
|
||
"review_reason": "Ported from dws-wukong commits d6831318 and bcf56ccf, merged at 30f13f02. The four conversation locators alias one property; the other six business parameters are required by Cobra before the single im/update_text_emotion call.",
|
||
"cli_path": "chat message update-text-emotion",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.get_group_mute_config": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: this executable CLI wrapper calls a remote helper that is absent from the pinned MCP metadata snapshot; no single pinned semantically equivalent interface_ref can represent the command.",
|
||
"reviewed": true,
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.batch_query_group_chat_settings": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: this executable CLI wrapper calls a remote helper that is absent from the pinned MCP metadata snapshot; no single pinned semantically equivalent interface_ref can represent the command.",
|
||
"reviewed": true,
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.batch_update_group_chat_settings": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed unpinned remote adapter: this executable CLI wrapper calls a remote helper that is absent from the pinned MCP metadata snapshot; no single pinned semantically equivalent interface_ref can represent the command.",
|
||
"reviewed": true,
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_category_add_conversation": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command owns validation, lower-call argument mapping, result projection, and confirmation rather than exposing one pinned RPC contract.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted Cobra flags, typed confirmation gate, and executable category membership write path.",
|
||
"cli_path": "chat +category-add-conversation",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_category_list_conversations": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command owns validation and the category conversation projection rather than exposing one pinned RPC contract.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted Cobra flags, and read-only category listing path.",
|
||
"cli_path": "chat +category-list-conversations",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_category_remove_conversation": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command owns validation, lower-call argument mapping, result projection, and confirmation rather than exposing one pinned RPC contract.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted Cobra flags, typed confirmation gate, and executable category membership removal path.",
|
||
"cli_path": "chat +category-remove-conversation",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_add_bot": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command owns bot and conversation validation, lower-call mapping, and confirmation rather than exposing one pinned RPC contract.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, required robot/conversation identifiers, and typed confirmation before adding the bot.",
|
||
"cli_path": "chat +chat-add-bot",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_audit_join": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates the join record, actors and audit disposition before one confirmed moderation action.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted audit flags and enums, and typed confirmation for every join-request disposition.",
|
||
"cli_path": "chat +chat-audit-join",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_get_by_id": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates the numeric group identifier and projects the returned conversation identity.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, required --group-id flag, and read-only group lookup path.",
|
||
"cli_path": "chat +chat-get-by-id",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_chat_members_get": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates a conversation and stable member identifiers, then projects member details.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted --id/--users contract, and read-only batch member lookup.",
|
||
"cli_path": "chat +chat-members-get",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_chat_mute_member": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed member-mute adapter: the executable command resolves supported member identities, validates mute/off semantics, maps the lower call, and requires confirmation.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, member resolution path, mute duration validation, off mode, and typed confirmation gate.",
|
||
"cli_path": "chat +chat-mute-member",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_quit": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates the target group and requires confirmation before the current user leaves it.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted group identifier, and typed confirmation for the leave-group action.",
|
||
"cli_path": "chat +chat-quit",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_remove_bot": {
|
||
"effect": "destructive",
|
||
"risk": "high",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates stable group and bot identities and gates the destructive removal before the lower call.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted --id/--bot-id contract, high-risk classification, and typed confirmation gate.",
|
||
"cli_path": "chat +chat-remove-bot",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_role_remove": {
|
||
"effect": "destructive",
|
||
"risk": "high",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates stable group and role identities and gates permanent role deletion before the lower call.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted --group/--role-id contract, high-risk classification, and typed confirmation gate.",
|
||
"cli_path": "chat +chat-role-remove",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_role_remove_user": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates group, member and role identities before a confirmed role-assignment update.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted group/user/role list contract, and typed confirmation gate.",
|
||
"cli_path": "chat +chat-role-remove-user",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_transfer_owner": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed ownership-transfer adapter: the executable command validates the group and new owner identity and requires confirmation before changing ownership.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted owner identifiers, current ownership impact, and typed confirmation gate.",
|
||
"cli_path": "chat +chat-transfer-owner",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_update": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed group-name adapter: the executable command resolves a stable or unique natural group target, validates the new name, and performs one confirmed update.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, unique group resolution, name-only boundary, and typed confirmation gate.",
|
||
"cli_path": "chat +chat-update",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_update_icon": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates the group and uploaded icon media identifier before a confirmed update.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted group/media flags, mediaId boundary, and typed confirmation gate.",
|
||
"cli_path": "chat +chat-update-icon",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_chat_update_settings": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates a supported setting key and binary status before one confirmed group-setting update.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted setting enum/status contract, and typed confirmation gate.",
|
||
"cli_path": "chat +chat-update-settings",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_conversation_clear_messages": {
|
||
"effect": "destructive",
|
||
"risk": "high",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed destructive Shortcut adapter: the executable command validates one conversation and requires explicit confirmation before irreversibly clearing the current user's message history view.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted conversation identifier, high-risk classification, and typed confirmation gate; stored examples intentionally omit --yes.",
|
||
"cli_path": "chat +conversation-clear-messages",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_conversation_clear_red_point": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates one conversation and requires confirmation before clearing its unread indicator.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted conversation identifier, and typed confirmation gate.",
|
||
"cli_path": "chat +conversation-clear-red-point",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_conversation_hide": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates one conversation and requires confirmation before hiding it from the current user's list.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, temporary hide semantics, mounted identifier, and typed confirmation gate.",
|
||
"cli_path": "chat +conversation-hide",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_conversation_mark_read": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates a conversation/message read boundary and requires confirmation before moving the read position.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted conversation/message identifiers, and typed confirmation gate.",
|
||
"cli_path": "chat +conversation-mark-read",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_conversation_mark_unread": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates one conversation and requires confirmation before changing its unread state.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted conversation identifier, and typed confirmation gate.",
|
||
"cli_path": "chat +conversation-mark-unread",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_conversation_mute": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates one conversation and on/off mode before a confirmed notification-setting update.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted conversation/off contract, and typed confirmation gate.",
|
||
"cli_path": "chat +conversation-mute",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_conversation_set_top": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed batch Shortcut adapter: the executable command validates and de-duplicates up to ten conversations, performs confirmed per-target updates, and returns a success/failure ledger.",
|
||
"parameters": {
|
||
"conversation-id": {
|
||
"property": "conversationId",
|
||
"description": "单个会话 openConversationId;会话 ID 去重后必须为 1-10 个",
|
||
"required": false
|
||
},
|
||
"conversation-ids": {
|
||
"property": "conversationIds",
|
||
"description": "多个会话 openConversationId;会话 ID 去重后必须为 1-10 个",
|
||
"required": false
|
||
}
|
||
},
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, scalar/list target contract, batch bound, off mode, typed confirmation and partial-failure ledger.",
|
||
"cli_path": "chat +conversation-set-top",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_feed_group_query_item": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed composite read adapter: the executable command reads a category page, filters requested conversation IDs locally, and publishes unresolved pagination facts rather than inventing a server-side multi-ID RPC.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, exact-ID filtering, incomplete-page failure ledger, and read-only execution path.",
|
||
"cli_path": "chat +feed-group-query-item",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_flag_cancel": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed batch favorite adapter: the executable command validates up to ten message IDs, performs confirmed per-item updates, and returns a typed success/failure ledger.",
|
||
"parameters": {
|
||
"message-id": {
|
||
"property": "messageId",
|
||
"description": "单条消息 openMessageId;消息 ID 去重后必须为 1-10 条",
|
||
"required": false
|
||
},
|
||
"message-ids": {
|
||
"property": "messageIds",
|
||
"description": "多条消息 openMessageId;消息 ID 去重后必须为 1-10 条",
|
||
"required": false
|
||
}
|
||
},
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, message favorite boundary, batch validation, typed confirmation, and partial-failure ledger.",
|
||
"cli_path": "chat +flag-cancel",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_flag_create": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed batch favorite adapter: the executable command validates up to ten message IDs, performs confirmed per-item updates, and returns a typed success/failure ledger.",
|
||
"parameters": {
|
||
"message-id": {
|
||
"property": "messageId",
|
||
"description": "单条消息 openMessageId;消息 ID 去重后必须为 1-10 条",
|
||
"required": false
|
||
},
|
||
"message-ids": {
|
||
"property": "messageIds",
|
||
"description": "多条消息 openMessageId;消息 ID 去重后必须为 1-10 条",
|
||
"required": false
|
||
}
|
||
},
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, message favorite boundary, batch validation, typed confirmation, and partial-failure ledger.",
|
||
"cli_path": "chat +flag-create",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_flag_list": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed built-in Shortcut adapter: the executable command validates pagination and projects the current user's message favorites without conflating them with Pin or conversation top state.",
|
||
"parameters": {
|
||
"cursor": {
|
||
"property": "cursor",
|
||
"description": "数字分页游标,首次传 0;--cursor 必须大于等于 0,--size 必须在 1-100 之间",
|
||
"required": false
|
||
},
|
||
"size": {
|
||
"property": "size",
|
||
"description": "每页数量;--cursor 必须大于等于 0,--size 必须在 1-100 之间",
|
||
"required": false
|
||
}
|
||
},
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted pagination flags, message favorite semantics, and read-only path.",
|
||
"cli_path": "chat +flag-list",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_messages_add_emoji": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed reaction adapter: the executable command validates stable conversation/message identifiers and emoji name before one confirmed reaction update.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted reaction flags, emoji boundary, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-add-emoji",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_add_text_emotion": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed text-emotion adapter: the executable command validates the message and complete emotion payload before one confirmed update.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted emotion parameters, create-before-add workflow, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-add-text-emotion",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_batch_recall_by_bot": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed bot batch adapter: the executable command validates robot identity and process keys, requires one confirmation, and delegates the bounded batch recall.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, required robot/process-key contract, bot direct-message recall semantics, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-batch-recall-by-bot",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_batch_send_by_bot": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed bot batch adapter: the executable command validates robot identity, exactly one recipient identity list and Markdown payload before the confirmed batch send.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, user/openDingTalkId recipient constraints, Markdown payload, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-batch-send-by-bot",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_combine_forward": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed forwarding adapter: the executable command validates one source conversation, multiple source messages, one destination and optional idempotency value before confirmed combined forwarding.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, source/message/destination identity contract, combined-forward boundary, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-combine-forward",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_create_text_emotion": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed text-emotion adapter: the executable command validates the template name, text and optional background before one confirmed creation.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted template parameters, returned emotionId workflow, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-create-text-emotion",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_forward": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed forwarding adapter: the executable command validates source conversation/message, destination conversation and optional idempotency value before one confirmed forward.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, stable source/destination identity contract, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-forward",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_forward_topic": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed topic-forward adapter: the executable command validates source message/conversation/thread and destination conversation before one confirmed forward.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, stable topic identity tuple, destination contract, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-forward-topic",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_list": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed history adapter: the executable command validates group/time/direction/pagination and projects conversation messages with optional reactions.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted history flags, group-only lower read, and read-only execution path.",
|
||
"cli_path": "chat +messages-list",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_messages_recall": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed recall adapter: the executable command accepts a stable conversation/message pair or performs a read-only message lookup to complete it, then requires confirmation before recall.",
|
||
"parameters": {
|
||
"msg-id": {
|
||
"property": "msgId",
|
||
"description": "消息 openMessageId;一次只能撤回一个消息 ID;--message-ids 仅接受单值",
|
||
"required": true
|
||
}
|
||
},
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, compatibility single-message flags, lookup fallback, stable recall tuple, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-recall",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_recall_by_bot": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed bot recall adapter: the executable command validates robot, group and process-key identities before one confirmed group-message recall.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, required robot/group/process-key contract, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-recall-by-bot",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_remove_emoji": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed reaction adapter: the executable command validates stable conversation/message identifiers and emoji name before one confirmed reaction removal.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted reaction flags, emoji boundary, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-remove-emoji",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_remove_text_emotion": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed text-emotion adapter: the executable command validates the message and complete emotion payload before one confirmed removal.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted emotion parameters, exact removal identity, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-remove-text-emotion",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_resource_download": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed resource adapter: the executable command resolves a mediaId or fileId URL, validates trusted HTTPS redirects and portable workspace-relative paths, downloads to a temporary file, and atomically publishes without overwrite by default.",
|
||
"parameters": {
|
||
"type": {
|
||
"property": "type",
|
||
"description": "资源类型(mediaId 或 fileId);--type mediaId 时必须同时提供 --message-id 和 --open-conversation-id;fileId 不需要消息上下文",
|
||
"required": false
|
||
},
|
||
"message-id": {
|
||
"property": "messageId",
|
||
"description": "mediaId 所属消息的 openMessageId;--type mediaId 时必须同时提供 --message-id 和 --open-conversation-id;fileId 不需要消息上下文",
|
||
"required": false
|
||
},
|
||
"open-conversation-id": {
|
||
"property": "openConversationId",
|
||
"description": "mediaId 所属会话的 openConversationId;--type mediaId 时必须同时提供 --message-id 和 --open-conversation-id;fileId 不需要消息上下文",
|
||
"required": false
|
||
},
|
||
"output": {
|
||
"property": "output",
|
||
"description": "工作目录内的相对文件或目录路径;--output 必须是工作目录内的相对路径,不允许绝对路径或 .. 逃逸",
|
||
"required": false
|
||
}
|
||
},
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, media/file identity constraints, trusted-host validation, symlink/escape rejection, atomic no-clobber workflow, and read/not-required safety convention.",
|
||
"cli_path": "chat +messages-resource-download",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_messages_resource_url": {
|
||
"effect": "read",
|
||
"risk": "low",
|
||
"confirmation": "not_required",
|
||
"idempotency": "idempotent",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed resource adapter: the executable command validates resource type plus message/conversation context and projects the temporary download URL response.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, mounted media identity/context contract, and read-only URL resolution path.",
|
||
"cli_path": "chat +messages-resource-url",
|
||
"runtime_gate": "none"
|
||
},
|
||
"chat.shortcut_messages_send_by_bot": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed bot send adapter: the executable command validates robot/group identity, Markdown content and @ targets before one confirmed group send.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, Markdown-only bot boundary, @ target flags, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-send-by-bot",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_set_pin": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed message-state adapter: the executable command validates stable conversation/message identifiers and requires confirmation before setting Pin state.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, Pin versus Top distinction, mounted identifiers, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-set-pin",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_set_top": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed message-state adapter: the executable command validates stable conversation/message identifiers and requires confirmation before setting message Top state.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, message Top versus Pin distinction, mounted identifiers, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-set-top",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_unset_pin": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed message-state adapter: the executable command validates stable conversation/message identifiers and requires confirmation before clearing Pin state.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, Pin versus Top distinction, mounted identifiers, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-unset-pin",
|
||
"runtime_gate": "typed_yes"
|
||
},
|
||
"chat.shortcut_messages_unset_top": {
|
||
"effect": "write",
|
||
"risk": "medium",
|
||
"confirmation": "user_required",
|
||
"idempotency": "unknown",
|
||
"interface_mode": "composite",
|
||
"availability": "available",
|
||
"interface_reason": "Reviewed message-state adapter: the executable command validates stable conversation/message identifiers and requires confirmation before clearing message Top state.",
|
||
"reviewed": true,
|
||
"review_reason": "Reviewed against the public Shortcut registry, message Top versus Pin distinction, mounted identifiers, and typed confirmation gate.",
|
||
"cli_path": "chat +messages-unset-top",
|
||
"runtime_gate": "typed_yes"
|
||
}
|
||
}
|
||
}
|