Files
DP/Server/app/api/v1/ai_tools.py

1233 lines
44 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# -*- coding: utf-8 -*-
"""
AI 工具定义
将 PS 操作注册为 function calling 的 tool schema
前端收到 tool_calls 后执行 JSX把结果回传
"""
# ==================== 工具 SchemaOpenAI function calling 格式)====================
PS_TOOLS = [
{
"type": "function",
"function": {
"name": "get_document_info",
"description": "获取当前 Photoshop 文档信息(名称、尺寸、分辨率)",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "get_layer_structure",
"description": "获取当前文档的图层结构树(所有顶层组和子图层)",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "create_layer",
"description": "在 Photoshop 中创建新图层",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "新图层的名称"}
},
"required": ["name"],
},
},
},
{
"type": "function",
"function": {
"name": "rename_layer",
"description": "重命名当前选中的图层",
"parameters": {
"type": "object",
"properties": {"new_name": {"type": "string", "description": "新名称"}},
"required": ["new_name"],
},
},
},
{
"type": "function",
"function": {
"name": "delete_layer",
"description": "删除当前选中的图层",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "duplicate_layer",
"description": "复制当前选中的图层",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "align_layers",
"description": "对齐当前选中的图层",
"parameters": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"left",
"right",
"centerH",
"top",
"bottom",
"centerV",
],
"description": "对齐方式left=左对齐, right=右对齐, centerH=水平居中, top=顶对齐, bottom=底对齐, centerV=垂直居中",
}
},
"required": ["type"],
},
},
},
{
"type": "function",
"function": {
"name": "merge_layers",
"description": "合并当前选中的图层",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "create_layer_group",
"description": "创建图层组(如果不存在)",
"parameters": {
"type": "object",
"properties": {"name": {"type": "string", "description": "图层组名称"}},
"required": ["name"],
},
},
},
{
"type": "function",
"function": {
"name": "move_layer_to_group",
"description": "将当前图层移入指定图层组",
"parameters": {
"type": "object",
"properties": {
"group_name": {"type": "string", "description": "目标图层组名称"}
},
"required": ["group_name"],
},
},
},
# ==================== 套图工具 ====================
{
"type": "function",
"function": {
"name": "identify_pieces",
"description": "识别裁片部位。截取当前PS画布并分析每个裁片图层的形状和位置用视觉AI识别哪个图层是前片、后片、袖子等。应在套图前先调用以建立图层名到裁片部位的对应关系。",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "generate_garment_preview",
"description": "【阶段1-生成预览】将用户上传的成衣照片中的花样,填充到 PS 文档的裁片轮廓上,生成一张带轮廓的花样预览图。预览图会显示在聊天中,供用户确认效果。需要用户已上传成衣图片。",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "generate_design_images",
"description": "通用豆包出图。按提示词生成设计图、方向图、概念图、背景图或海报素材。支持纯文生图;如果当前聊天里已上传参考图,可设置 use_reference_image=true 基于该图继续出图。count 大于 1 时会返回 1 到 4 张连贯方案图。",
"parameters": {
"type": "object",
"properties": {
"prompt": {
"type": "string",
"description": "生成要求。尽量写清主体、风格、构图、配色、材质、光线、氛围和用途。",
},
"count": {
"type": "integer",
"description": "生成数量1 到 4默认 1。",
},
"use_reference_image": {
"type": "boolean",
"description": "是否使用当前聊天最近上传的图片作为参考图。",
},
"size": {
"type": "string",
"description": "输出尺寸,默认 2K。",
},
},
"required": ["prompt"],
},
},
},
{
"type": "function",
"function": {
"name": "extract_and_apply_all_pieces",
"description": "【阶段2-正式套图】用户确认预览OK后调用。自动根据 pattern_mode 选择策略all_over模式=生成一张面料图覆盖所有裁片最快placement模式=逐片处理。all_over模式下不需要先生成预览图generate_garment_preview直接调用即可。",
"parameters": {
"type": "object",
"properties": {
"pieces": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "裁片图层名称(使用实际图层名)",
},
"type": {
"type": "string",
"enum": [
"solid",
"all_over",
"fill_pattern",
"theme_pattern",
"mixed_pattern",
],
"description": "图案类型",
},
"color": {
"type": "string",
"description": "颜色 hexsolid/theme_pattern 必填)",
},
"description": {
"type": "string",
"description": "图案描述",
},
},
"required": ["name", "type"],
},
"description": "裁片列表type/color 来自 identify_pieces 的分析结果",
}
},
"required": ["pieces"],
},
},
},
{
"type": "function",
"function": {
"name": "verify_pattern_result",
"description": "验证套图效果。自动截取当前 PS 画布与原始成衣对比,由视觉 AI 评分(1-10)并给出改进建议。应在套图完成后调用。",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
# ==================== PS 通用操作工具 ====================
{
"type": "function",
"function": {
"name": "move_layer",
"description": "移动图层。dx 正值向右dy 正值向下(单位像素)",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "图层名称"},
"dx": {"type": "number", "description": "水平位移(像素,正=右)"},
"dy": {"type": "number", "description": "垂直位移(像素,正=下)"},
},
"required": ["name", "dx", "dy"],
},
},
},
{
"type": "function",
"function": {
"name": "resize_layer",
"description": "缩放图层百分比。100=不变200=放大2倍50=缩小一半",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "图层名称"},
"scale_x": {"type": "number", "description": "水平缩放百分比"},
"scale_y": {
"type": "number",
"description": "垂直缩放百分比(省略则与 scale_x 相同)",
},
},
"required": ["name", "scale_x"],
},
},
},
{
"type": "function",
"function": {
"name": "rotate_layer",
"description": "旋转图层(角度,正值=顺时针)",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "图层名称"},
"angle": {"type": "number", "description": "旋转角度(正=顺时针)"},
},
"required": ["name", "angle"],
},
},
},
{
"type": "function",
"function": {
"name": "flip_layer",
"description": "翻转图层",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "图层名称"},
"direction": {
"type": "string",
"enum": ["horizontal", "vertical"],
"description": "翻转方向",
},
},
"required": ["name", "direction"],
},
},
},
{
"type": "function",
"function": {
"name": "set_layer_opacity",
"description": "设置图层透明度0=完全透明100=完全不透明)",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "图层名称"},
"opacity": {"type": "number", "description": "透明度 0-100"},
},
"required": ["name", "opacity"],
},
},
},
{
"type": "function",
"function": {
"name": "set_layer_blend_mode",
"description": "设置图层混合模式",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "图层名称"},
"mode": {
"type": "string",
"enum": [
"normal",
"multiply",
"screen",
"overlay",
"darken",
"lighten",
"color_dodge",
"color_burn",
"soft_light",
"hard_light",
"difference",
"exclusion",
"hue",
"saturation",
"color",
"luminosity",
],
"description": "混合模式",
},
},
"required": ["name", "mode"],
},
},
},
{
"type": "function",
"function": {
"name": "set_layer_visible",
"description": "显示或隐藏图层",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "图层名称"},
"visible": {
"type": "boolean",
"description": "true=显示false=隐藏",
},
},
"required": ["name", "visible"],
},
},
},
{
"type": "function",
"function": {
"name": "set_text_content",
"description": "修改文字图层的文本内容",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "文字图层名称"},
"text": {"type": "string", "description": "新的文本内容"},
},
"required": ["name", "text"],
},
},
},
{
"type": "function",
"function": {
"name": "set_text_color",
"description": "修改文字图层的颜色",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "文字图层名称"},
"color": {
"type": "string",
"description": "颜色 hex 值,如 #FF0000",
},
},
"required": ["name", "color"],
},
},
},
{
"type": "function",
"function": {
"name": "set_text_size",
"description": "修改文字图层的字号(像素)",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "文字图层名称"},
"size": {"type": "number", "description": "字号(像素)"},
},
"required": ["name", "size"],
},
},
},
{
"type": "function",
"function": {
"name": "group_layers",
"description": "将多个图层编组",
"parameters": {
"type": "object",
"properties": {
"layer_names": {
"type": "array",
"items": {"type": "string"},
"description": "要编组的图层名称列表",
},
"group_name": {"type": "string", "description": "组名称"},
},
"required": ["layer_names", "group_name"],
},
},
},
{
"type": "function",
"function": {
"name": "merge_visible",
"description": "合并所有可见图层",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "flatten_image",
"description": "拼合图像(所有图层合并为背景层)",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "resize_canvas",
"description": "调整画布大小(像素)",
"parameters": {
"type": "object",
"properties": {
"width": {"type": "number", "description": "画布宽度(像素)"},
"height": {"type": "number", "description": "画布高度(像素)"},
"anchor": {
"type": "string",
"enum": [
"top-left",
"top",
"top-right",
"left",
"center",
"right",
"bottom-left",
"bottom",
"bottom-right",
],
"description": "锚点位置(默认 center",
},
},
"required": ["width", "height"],
},
},
},
{
"type": "function",
"function": {
"name": "adjust_brightness_contrast",
"description": "调整当前图层的亮度和对比度",
"parameters": {
"type": "object",
"properties": {
"brightness": {"type": "number", "description": "亮度 -150 到 150"},
"contrast": {"type": "number", "description": "对比度 -50 到 100"},
},
"required": ["brightness", "contrast"],
},
},
},
{
"type": "function",
"function": {
"name": "desaturate",
"description": "将当前图层去色(变为灰度)",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "rasterize_layer",
"description": "栅格化图层(将智能对象/文字/形状转为像素图层)",
"parameters": {
"type": "object",
"properties": {"name": {"type": "string", "description": "图层名称"}},
"required": ["name"],
},
},
},
{
"type": "function",
"function": {
"name": "align_layers_tool",
"description": "对齐多个图层",
"parameters": {
"type": "object",
"properties": {
"layer_names": {
"type": "array",
"items": {"type": "string"},
"description": "要对齐的图层名",
},
"alignment": {
"type": "string",
"enum": [
"left",
"center_h",
"right",
"top",
"center_v",
"bottom",
],
"description": "对齐方式",
},
},
"required": ["layer_names", "alignment"],
},
},
},
{
"type": "function",
"function": {
"name": "distribute_layers",
"description": "等距分布多个图层",
"parameters": {
"type": "object",
"properties": {
"layer_names": {
"type": "array",
"items": {"type": "string"},
"description": "要分布的图层名",
},
"direction": {
"type": "string",
"enum": ["horizontal", "vertical"],
"description": "分布方向",
},
},
"required": ["layer_names", "direction"],
},
},
},
{
"type": "function",
"function": {
"name": "add_stroke",
"description": "给图层添加描边效果",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "图层名称"},
"size": {"type": "number", "description": "描边宽度(像素)"},
"color": {
"type": "string",
"description": "描边颜色 hex如 #FF0000",
},
"position": {
"type": "string",
"enum": ["outside", "inside", "center"],
"description": "描边位置(默认 outside",
},
},
"required": ["name", "size", "color"],
},
},
},
{
"type": "function",
"function": {
"name": "create_clipping_mask",
"description": "为图层创建剪贴蒙版(裁切到下方图层形状)",
"parameters": {
"type": "object",
"properties": {"name": {"type": "string", "description": "图层名称"}},
"required": ["name"],
},
},
},
{
"type": "function",
"function": {
"name": "release_clipping_mask",
"description": "释放图层的剪贴蒙版",
"parameters": {
"type": "object",
"properties": {"name": {"type": "string", "description": "图层名称"}},
"required": ["name"],
},
},
},
{
"type": "function",
"function": {
"name": "undo",
"description": "撤销操作Ctrl+Z可指定步数",
"parameters": {
"type": "object",
"properties": {
"steps": {"type": "number", "description": "撤销步数(默认 1"}
},
"required": [],
},
},
},
{
"type": "function",
"function": {
"name": "get_layer_bounds",
"description": "获取图层的位置和尺寸信息left/top/width/height/center",
"parameters": {
"type": "object",
"properties": {"name": {"type": "string", "description": "图层名称"}},
"required": ["name"],
},
},
},
{
"type": "function",
"function": {
"name": "create_document",
"description": "新建 Photoshop 文档",
"parameters": {
"type": "object",
"properties": {
"width": {"type": "number", "description": "宽度(像素)"},
"height": {"type": "number", "description": "高度(像素)"},
"resolution": {
"type": "number",
"description": "分辨率 DPI默认 150",
},
"name": {"type": "string", "description": "文档名称"},
},
"required": ["width", "height"],
},
},
},
{
"type": "function",
"function": {
"name": "save_document",
"description": "保存当前文档Ctrl+S",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "resize_image",
"description": "调整图像大小(像素/分辨率)",
"parameters": {
"type": "object",
"properties": {
"width": {"type": "number", "description": "新宽度(像素)"},
"height": {"type": "number", "description": "新高度(像素)"},
"resolution": {
"type": "number",
"description": "新分辨率 DPI可选",
},
},
"required": ["width", "height"],
},
},
},
{
"type": "function",
"function": {
"name": "gaussian_blur",
"description": "对当前图层应用高斯模糊",
"parameters": {
"type": "object",
"properties": {
"radius": {"type": "number", "description": "模糊半径(像素)"}
},
"required": ["radius"],
},
},
},
{
"type": "function",
"function": {
"name": "auto_levels",
"description": "自动色阶(快速修正色调范围)",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "auto_contrast",
"description": "自动对比度",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "invert_colors",
"description": "反相(颜色取反)",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "convert_to_rgb",
"description": "转换为 RGB 色彩模式",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "convert_to_cmyk",
"description": "转换为 CMYK 色彩模式(印刷用)",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "add_drop_shadow",
"description": "给图层添加投影效果",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "图层名称"},
"distance": {"type": "number", "description": "投影距离(像素)"},
"size": {"type": "number", "description": "投影大小/模糊(像素)"},
"opacity": {
"type": "number",
"description": "投影不透明度 0-100默认 75",
},
"angle": {"type": "number", "description": "光照角度(默认 120"},
},
"required": ["name", "distance", "size"],
},
},
},
{
"type": "function",
"function": {
"name": "clear_layer_effects",
"description": "清除图层的所有图层样式(投影/描边/发光等)",
"parameters": {
"type": "object",
"properties": {"name": {"type": "string", "description": "图层名称"}},
"required": ["name"],
},
},
},
{
"type": "function",
"function": {
"name": "bring_to_front",
"description": "将图层移到最顶层",
"parameters": {
"type": "object",
"properties": {"name": {"type": "string", "description": "图层名称"}},
"required": ["name"],
},
},
},
{
"type": "function",
"function": {
"name": "send_to_back",
"description": "将图层移到最底层",
"parameters": {
"type": "object",
"properties": {"name": {"type": "string", "description": "图层名称"}},
"required": ["name"],
},
},
},
{
"type": "function",
"function": {
"name": "crop_document",
"description": "裁切画布到指定区域(像素坐标)",
"parameters": {
"type": "object",
"properties": {
"left": {"type": "number"},
"top": {"type": "number"},
"right": {"type": "number"},
"bottom": {"type": "number"},
},
"required": ["left", "top", "right", "bottom"],
},
},
},
{
"type": "function",
"function": {
"name": "trim_document",
"description": "自动裁切(去除透明或纯色边缘)",
"parameters": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": ["transparent", "topleft"],
"description": "裁切依据(默认 topleft 即左上角颜色)",
}
},
"required": [],
},
},
},
{
"type": "function",
"function": {
"name": "add_guide",
"description": "添加参考线",
"parameters": {
"type": "object",
"properties": {
"position": {"type": "number", "description": "位置(像素)"},
"direction": {
"type": "string",
"enum": ["horizontal", "vertical"],
"description": "方向",
},
},
"required": ["position", "direction"],
},
},
},
{
"type": "function",
"function": {
"name": "clear_guides",
"description": "清除所有参考线",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "fill_selection",
"description": "用颜色填充当前选区",
"parameters": {
"type": "object",
"properties": {
"color": {"type": "string", "description": "填充颜色 hex"},
"opacity": {
"type": "number",
"description": "填充不透明度 0-100默认 100",
},
},
"required": ["color"],
},
},
},
{
"type": "function",
"function": {
"name": "inverse_selection",
"description": "反选(选中未选区域)",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "feather_selection",
"description": "羽化选区边缘",
"parameters": {
"type": "object",
"properties": {
"radius": {"type": "number", "description": "羽化半径(像素)"}
},
"required": ["radius"],
},
},
},
{
"type": "function",
"function": {
"name": "adjust_levels",
"description": "调整色阶(输入黑点/灰度系数/白点)",
"parameters": {
"type": "object",
"properties": {
"black": {
"type": "number",
"description": "输入黑点 0-253默认 0",
},
"gamma": {
"type": "number",
"description": "灰度系数 0.1-9.99(默认 1.0<1变暗 >1变亮",
},
"white": {
"type": "number",
"description": "输入白点 2-255默认 255",
},
},
"required": ["black", "gamma", "white"],
},
},
},
{
"type": "function",
"function": {
"name": "copy_merged_to_new_layer",
"description": "复制合并所有可见内容到新图层Ctrl+Shift+C + 粘贴)",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "lock_layer",
"description": "锁定或解锁图层",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "图层名称"},
"locked": {
"type": "boolean",
"description": "true=锁定false=解锁",
},
},
"required": ["name", "locked"],
},
},
},
{
"type": "function",
"function": {
"name": "set_foreground_color",
"description": "设置前景色",
"parameters": {
"type": "object",
"properties": {
"color": {"type": "string", "description": "颜色 hex 值"}
},
"required": ["color"],
},
},
},
{
"type": "function",
"function": {
"name": "save_document_as",
"description": "文件另存为(支持 PSD/PNG/JPG",
"parameters": {
"type": "object",
"properties": {
"path": {"type": "string", "description": "保存路径"},
"format": {
"type": "string",
"enum": ["psd", "png", "jpg"],
"description": "文件格式",
},
},
"required": ["path"],
},
},
},
{
"type": "function",
"function": {
"name": "add_layer_mask",
"description": "为图层添加蒙版(全白=全显示 / 全黑=全隐藏 / 基于当前选区)",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "图层名称"},
"hide_all": {
"type": "boolean",
"description": "true=全黑蒙版(隐藏)false=全白蒙版(显示,默认)",
},
},
"required": ["name"],
},
},
},
{
"type": "function",
"function": {
"name": "delete_layer_mask",
"description": "删除图层蒙版",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "图层名称"},
"apply": {
"type": "boolean",
"description": "true=应用蒙版后删除false=直接丢弃(默认)",
},
},
"required": ["name"],
},
},
},
{
"type": "function",
"function": {
"name": "convert_to_smart_object",
"description": "将图层转为智能对象",
"parameters": {
"type": "object",
"properties": {"name": {"type": "string", "description": "图层名称"}},
"required": ["name"],
},
},
},
{
"type": "function",
"function": {
"name": "adjust_hsl",
"description": "调整色相/饱和度/明度H=-180~180, S=-100~100, L=-100~100",
"parameters": {
"type": "object",
"properties": {
"hue": {"type": "number", "description": "色相偏移 -180到180"},
"saturation": {"type": "number", "description": "饱和度 -100到100"},
"lightness": {"type": "number", "description": "明度 -100到100"},
},
"required": ["hue", "saturation", "lightness"],
},
},
},
{
"type": "function",
"function": {
"name": "create_text_layer",
"description": "创建文字图层",
"parameters": {
"type": "object",
"properties": {
"text": {"type": "string", "description": "文字内容"},
"x": {"type": "number", "description": "X 坐标(像素)"},
"y": {"type": "number", "description": "Y 坐标(像素)"},
"font_size": {"type": "number", "description": "字号(像素)"},
"color": {"type": "string", "description": "颜色 hex默认黑色"},
"font_name": {"type": "string", "description": "字体名称(可选)"},
},
"required": ["text", "x", "y", "font_size"],
},
},
},
{
"type": "function",
"function": {
"name": "get_active_layer_info",
"description": "获取当前选中图层的详细信息(名称/类型/尺寸/位置/透明度/混合模式等)",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "list_all_layer_names",
"description": "列出文档中所有图层名称(扁平列表,含类型和可见性)",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "duplicate_layer_to_document",
"description": "复制图层到另一个已打开的文档",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string", "description": "图层名称"},
"target_doc": {"type": "string", "description": "目标文档名称"},
},
"required": ["name", "target_doc"],
},
},
},
{
"type": "function",
"function": {
"name": "switch_document",
"description": "切换到另一个已打开的文档",
"parameters": {
"type": "object",
"properties": {
"doc_name": {"type": "string", "description": "文档名称"}
},
"required": ["doc_name"],
},
},
},
{
"type": "function",
"function": {
"name": "list_documents",
"description": "列出所有已打开的文档",
"parameters": {"type": "object", "properties": {}, "required": []},
},
},
{
"type": "function",
"function": {
"name": "get_pixel_color",
"description": "获取画布上指定坐标的像素颜色(取色器)",
"parameters": {
"type": "object",
"properties": {
"x": {"type": "number", "description": "X 坐标"},
"y": {"type": "number", "description": "Y 坐标"},
},
"required": ["x", "y"],
},
},
},
{
"type": "function",
"function": {
"name": "close_document",
"description": "关闭当前文档",
"parameters": {
"type": "object",
"properties": {
"save": {"type": "boolean", "description": "是否保存(默认不保存)"}
},
"required": [],
},
},
},
]
# 工具名称映射(中文显示用)
TOOL_DISPLAY_NAMES = {
"get_document_info": "查看文档信息",
"get_layer_structure": "查看图层结构",
"create_layer": "新建图层",
"rename_layer": "重命名图层",
"delete_layer": "删除图层",
"duplicate_layer": "复制图层",
"align_layers": "对齐图层",
"merge_layers": "合并图层",
"create_layer_group": "创建图层组",
"move_layer_to_group": "移入图层组",
"identify_pieces": "识别裁片部位",
"generate_garment_preview": "生成花样预览",
"generate_design_images": "豆包出图",
"extract_and_apply_all_pieces": "提取并套图",
"verify_pattern_result": "验证套图效果",
# PS 通用操作
"move_layer": "移动图层",
"resize_layer": "缩放图层",
"rotate_layer": "旋转图层",
"flip_layer": "翻转图层",
"set_layer_opacity": "设置透明度",
"set_layer_blend_mode": "设置混合模式",
"set_layer_visible": "显示/隐藏图层",
"set_text_content": "修改文字",
"set_text_color": "修改文字颜色",
"set_text_size": "修改字号",
"group_layers": "编组图层",
"merge_visible": "合并可见",
"flatten_image": "拼合图像",
"resize_canvas": "调整画布",
"adjust_brightness_contrast": "亮度/对比度",
"desaturate": "去色",
"rasterize_layer": "栅格化",
"align_layers_tool": "对齐图层",
"distribute_layers": "分布图层",
"add_stroke": "添加描边",
"create_clipping_mask": "创建剪贴蒙版",
"release_clipping_mask": "释放剪贴蒙版",
"undo": "撤销",
"get_layer_bounds": "获取图层位置",
"create_document": "新建文档",
"save_document": "保存文档",
"resize_image": "调整图像大小",
"gaussian_blur": "高斯模糊",
"auto_levels": "自动色阶",
"auto_contrast": "自动对比度",
"invert_colors": "反相",
"convert_to_rgb": "转RGB",
"convert_to_cmyk": "转CMYK",
"add_drop_shadow": "添加投影",
"clear_layer_effects": "清除图层样式",
"bring_to_front": "置顶图层",
"send_to_back": "置底图层",
"crop_document": "裁切画布",
"trim_document": "自动裁切",
"add_guide": "添加参考线",
"clear_guides": "清除参考线",
"fill_selection": "填充选区",
"inverse_selection": "反选",
"feather_selection": "羽化选区",
"adjust_levels": "色阶",
"copy_merged_to_new_layer": "复制合并",
"lock_layer": "锁定图层",
"set_foreground_color": "设置前景色",
"save_document_as": "另存为",
"add_layer_mask": "添加蒙版",
"delete_layer_mask": "删除蒙版",
"convert_to_smart_object": "转智能对象",
"adjust_hsl": "色相/饱和度",
"create_text_layer": "创建文字",
"get_active_layer_info": "查看当前图层",
"list_all_layer_names": "列出所有图层",
"duplicate_layer_to_document": "复制到文档",
"switch_document": "切换文档",
"list_documents": "列出文档",
"get_pixel_color": "取色",
"close_document": "关闭文档",
}