package builtin // 内置工具名称常量 // 所有代码中使用内置工具名称的地方都应该使用这些常量,而不是硬编码字符串 const ( // 漏洞管理工具 ToolRecordVulnerability = "record_vulnerability" // 知识库工具 ToolListKnowledgeRiskTypes = "list_knowledge_risk_types" ToolSearchKnowledgeBase = "search_knowledge_base" // WebShell 助手工具(AI 在 WebShell 管理 - AI 助手 中使用) ToolWebshellExec = "webshell_exec" ToolWebshellFileList = "webshell_file_list" ToolWebshellFileRead = "webshell_file_read" ToolWebshellFileWrite = "webshell_file_write" // WebShell 连接管理工具(用于通过 MCP 管理 webshell 连接) ToolManageWebshellList = "manage_webshell_list" ToolManageWebshellAdd = "manage_webshell_add" ToolManageWebshellUpdate = "manage_webshell_update" ToolManageWebshellDelete = "manage_webshell_delete" ToolManageWebshellTest = "manage_webshell_test" // 批量任务队列(与 Web 端批量任务一致,供模型创建/启停/查询队列) ToolBatchTaskList = "batch_task_list" ToolBatchTaskGet = "batch_task_get" ToolBatchTaskCreate = "batch_task_create" ToolBatchTaskStart = "batch_task_start" ToolBatchTaskRerun = "batch_task_rerun" ToolBatchTaskPause = "batch_task_pause" ToolBatchTaskDelete = "batch_task_delete" ToolBatchTaskUpdateMetadata = "batch_task_update_metadata" ToolBatchTaskUpdateSchedule = "batch_task_update_schedule" ToolBatchTaskScheduleEnabled = "batch_task_schedule_enabled" ToolBatchTaskAdd = "batch_task_add_task" ToolBatchTaskUpdate = "batch_task_update_task" ToolBatchTaskRemove = "batch_task_remove_task" // C2 工具集(合并同类项,8 个统一工具) ToolC2Listener = "c2_listener" // 监听器管理(create/start/stop/list/get/update/delete) ToolC2Session = "c2_session" // 会话管理(list/get/set_sleep/kill/delete) ToolC2Task = "c2_task" // 任务下发(统一 task_type 参数) ToolC2TaskManage = "c2_task_manage" // 任务管理(get_result/wait/list/cancel) ToolC2Payload = "c2_payload" // Payload 生成(oneliner/build) ToolC2Event = "c2_event" // 事件查询 ToolC2Profile = "c2_profile" // Malleable Profile 管理(list/get/create/update/delete) ToolC2File = "c2_file" // 文件管理(list/get_result) ) // IsBuiltinTool 检查工具名称是否是内置工具 func IsBuiltinTool(toolName string) bool { switch toolName { case ToolRecordVulnerability, ToolListKnowledgeRiskTypes, ToolSearchKnowledgeBase, ToolWebshellExec, ToolWebshellFileList, ToolWebshellFileRead, ToolWebshellFileWrite, ToolManageWebshellList, ToolManageWebshellAdd, ToolManageWebshellUpdate, ToolManageWebshellDelete, ToolManageWebshellTest, ToolBatchTaskList, ToolBatchTaskGet, ToolBatchTaskCreate, ToolBatchTaskStart, ToolBatchTaskRerun, ToolBatchTaskPause, ToolBatchTaskDelete, ToolBatchTaskUpdateMetadata, ToolBatchTaskUpdateSchedule, ToolBatchTaskScheduleEnabled, ToolBatchTaskAdd, ToolBatchTaskUpdate, ToolBatchTaskRemove, // C2 工具 ToolC2Listener, ToolC2Session, ToolC2Task, ToolC2TaskManage, ToolC2Payload, ToolC2Event, ToolC2Profile, ToolC2File: return true default: return false } } // GetAllBuiltinTools 返回所有内置工具名称列表 func GetAllBuiltinTools() []string { return []string{ ToolRecordVulnerability, ToolListKnowledgeRiskTypes, ToolSearchKnowledgeBase, ToolWebshellExec, ToolWebshellFileList, ToolWebshellFileRead, ToolWebshellFileWrite, ToolManageWebshellList, ToolManageWebshellAdd, ToolManageWebshellUpdate, ToolManageWebshellDelete, ToolManageWebshellTest, ToolBatchTaskList, ToolBatchTaskGet, ToolBatchTaskCreate, ToolBatchTaskStart, ToolBatchTaskRerun, ToolBatchTaskPause, ToolBatchTaskDelete, ToolBatchTaskUpdateMetadata, ToolBatchTaskUpdateSchedule, ToolBatchTaskScheduleEnabled, ToolBatchTaskAdd, ToolBatchTaskUpdate, ToolBatchTaskRemove, // C2 工具 ToolC2Listener, ToolC2Session, ToolC2Task, ToolC2TaskManage, ToolC2Payload, ToolC2Event, ToolC2Profile, ToolC2File, } }