通过 AI 代理使用 Rawed+
Rawed+ 自带 MCP 服务器 rawed-mcp,Claude Code、Claude Desktop、Codex 等 AI 代理可以借此编辑、挑选和导出你的照片。本页介绍如何设置、可以提哪些请求、隐私如何保障,以及全部工具。
使用条件
- Rawed+,处于 14 天试用期内或已有许可证。Mac App Store 版 Rawed 不支持代理访问,但可以解锁同一台 Mac 上的 Rawed+。
- macOS 26 或更高版本
- 能运行本地 MCP 服务器的 AI 代理 App,例如 Claude Code、Claude Desktop、Codex CLI 或 Cursor
开启代理访问
打开 Rawed+,选择“Rawed+ › 设置”,点击“AI 代理”,然后打开允许 AI 代理使用 Rawed。也可以通过“帮助 › 通过 AI 代理使用 Rawed…”打开同一面板。面板中还会显示下方的命令(已填入你的 App 所在路径),以及当前连接的代理。
连接你的代理
以下命令假定 Rawed+ 位于“应用程序”文件夹。如果放在其他位置,请改从“设置 › AI 代理”中拷贝。
Claude Code
在“终端”中运行以下命令。--scope user 让 Rawed 在你的所有项目中可用。然后新开一个 Claude Code 会话。
claude mcp add --scope user rawed -- "/Applications/Rawed+.app/Contents/MacOS/rawed-mcp"
Claude Desktop
在 Claude Desktop 中选择 Settings › Developer › Edit Config,会显示位于 ~/Library/Application Support/Claude 的 claude_desktop_config.json。添加下面的 rawed 条目;如果文件中已有 mcpServers,就放到它里面。保存文件后,退出并重新打开 Claude Desktop。
{
"mcpServers": {
"rawed": {
"command": "/Applications/Rawed+.app/Contents/MacOS/rawed-mcp"
}
}
}
Codex CLI
在“终端”中运行以下命令:
codex mcp add rawed -- "/Applications/Rawed+.app/Contents/MacOS/rawed-mcp"
或者把以下几行添加到 ~/.codex/config.toml:
[mcp_servers.rawed]
command = "/Applications/Rawed+.app/Contents/MacOS/rawed-mcp"
Cursor 及其他 MCP 客户端
将 Rawed 添加为本地(stdio)MCP 服务器。Cursor(~/.cursor/mcp.json)和大多数其他客户端都使用这段 JSON:
{
"mcpServers": {
"rawed": {
"command": "/Applications/Rawed+.app/Contents/MacOS/rawed-mcp"
}
}
}
只要求填写命令的客户端,填入这个路径:
/Applications/Rawed+.app/Contents/MacOS/rawed-mcp
Rawed+ 无需事先打开。代理首次调用工具时,rawed-mcp 会在后台打开它。如果代理访问已关闭,工具会回复一条消息,告诉你在哪里开启。
工具如何工作
- 所有作用于照片的工具都以文件路径指定照片,与 Rawed 当前显示或选中的内容无关。因此,代理只要知道路径,就能处理任何文件夹中的任何照片,无需先打开。
- 每次编辑都是该照片自身历史记录中的一步,和你手动编辑一样,保存在照片旁边的小型 .rawed.json 文件中。原始文件永远不会被修改。你可以在 Rawed 中撤销这一步,代理也可以用
undo撤销。 get_analysis、render_preview、assess_photos等读取类工具不会更改任何内容。评分和加旗标不会删除照片,也绝不会写入存储卡。- 唯一无法撤销的更改,是用
manage_preset删除你自己创建的预设。
隐私
代理访问默认关闭,需要你自行开启。开启后,Rawed+ 只接受同一台 Mac 上程序的连接,通过只有你的用户账户能打开的本地套接字,并使用每次开启访问时都会更换的密钥。网络上无法访问它,Rawed 本身也不会向任何地方发送数据。
代理则是另一回事。它通过工具读取的内容,例如照片信息(照片带有 GPS 位置时也包括在内)、测量数据,以及它请求的预览图(长边最多 2,048 像素),都会成为对话的一部分,和你在对话中输入的其他内容一样发送给代理的 AI 提供商。提供商如何处理这些内容,取决于其自身的条款和隐私政策。像 Claude Code 这样能自行读取文件的代理,可能会直接读取你的照片;这取决于代理的设置,而非 Rawed。
工具参考
全部 42 个工具,以及代理收到的说明和参数。代理读取的是英文原文。
get_statelist_photosget_photo_infoget_recipeget_analysisrender_previewlist_presetsopen_folderrecent_foldersselect_photosopen_photoshow_in_finderupdate_recipeauto_adjustrecover_dynamic_rangeapply_presetset_white_balanceapply_tone_curve_presettransformauto_straightenedit_maskjump_to_historyreset_all_editsundoredoset_ratingcopy_settingspaste_settingsmanage_presetexportsave_jpegquick_convertmerge_hdrlist_devicesshow_devicecopy_from_deviceeject_deviceset_viewset_preferencesedit_point_colortargeted_adjustassess_photos
get_state Get app state
只读
What the app shows (for orientation only; no tool acts on it): mode (library/edit), open folder, selection, photo shown in the editor with its history, presets, settings clipboard, library sort/filter, editor view (tool, zoom, compare, overlays, selected mask), shown device, recent folders, running batch and preferences.
无参数。
list_photos List photos
只读
Supported photos in a folder (by file name, regardless of the library's filter and sort), with file name, path, file type, rating, flag, color label, capture date, camera and whether edited. Does not change what the app shows.
folder 必填 | string | Absolute folder path |
|---|
get_photo_info Photo info
只读
Metadata of a photo (camera, lens, exposure, capture date, dimensions, color profile, location, IPTC keywords; read-only), its rating/flag/label, RAW engine capabilities (decoder versions, supported controls, as-shot white balance, baseline exposure, whether a neural denoise model is installed), its edit history (labels and position, for jump_to_history / undo / redo), save status and whether it is shown in the editor.
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
|---|
get_recipe Get edit recipe
只读
A photo's complete current EditRecipe as JSON (light, toneMapping, toneCurve, color, hsl, pointColors, colorGrading, presence, detail, optics, geometry, effects, masks, raw, whiteBalance). Values use Rawed units: exposure in EV, most sliders -100...100.
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
|---|
get_analysis Analyse photo
只读
Image statistics of a photo: luminance percentiles, clipping, dynamic range (EV), top vs bottom brightness, noise risk.
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
|---|
render_preview Render preview
只读
Render a photo with its current edits and return it as a JPEG image so you can see the result.
max_size | integer | Long edge in pixels (default 1024, max 2048) |
|---|---|---|
original | boolean | Render the unedited original instead (default false) |
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
list_presets List presets
只读
Presets with name, whether built in, and the setting groups each one changes.
无参数。
open_folder Show folder
只读
Show a folder of photos in the library (File › Open Folder / Open Recent). View only: other tools take explicit paths and don't need it.
path 必填 | string | Absolute folder path |
|---|
recent_folders Recent folders
只读
List File › Open Recent folders, or clear the list.
clear | boolean | Clear the Open Recent menu |
|---|
select_photos Select photos
只读
Change the library selection the user sees, like clicking in the grid: select paths, all or none, or step to the previous/next photo (Photo › Previous/Next Photo; in edit mode this shows it). View only: no tool acts on the selection.
all | boolean | Select every visible photo |
|---|---|---|
none | boolean | Clear the selection |
paths | array (string) | Photos to select (replaces the selection) |
step | integer | Move by this many photos in library order (-1 previous, 1 next) |
open_photo Show photo
只读
Show a photo to the user in the editor (also photos on a memory card or drive). View only: editing tools take the photo's path and work the same whether or not it is shown.
path 必填 | string | Absolute path of the photo |
|---|
show_in_finder Show in Finder
只读
Reveal files or folders in Finder (Photo › Show in Finder). This brings Finder to the front.
paths 必填 | array (string) | Files or folders to reveal |
|---|
update_recipe Update edit recipe
会更改照片或文件
Deep-merge a partial EditRecipe into a photo, e.g. {"light": {"exposure": 0.3, "highlights": -40}}. Covers every inspector slider and toggle (light, tone curve points, HSL, color grading, effects, detail incl. noiseReduction.neural, optics, geometry angle/perspective/crop, RAW engine). Arrays (curve points, masks) replace the whole array; prefer edit_mask for masks and set_white_balance for white balance modes. Acts on the photo at path: one step in that photo's own edit history (undo with undo {path}), saved next to the photo like an edit in the app. If the photo is the one shown in the editor, the user sees the change live; otherwise it is edited without changing what the app shows.
changes 必填 | object | Partial EditRecipe to merge |
|---|---|---|
label | string | History label shown in the app (optional) |
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
auto_adjust Auto adjust
会更改照片或文件
Run statistical Auto (Photo › Auto Adjust / Auto Landscape) on a photo, from that photo's own statistics. Acts on the photo at path: one step in that photo's own edit history (undo with undo {path}), saved next to the photo like an edit in the app. If the photo is the one shown in the editor, the user sees the change live; otherwise it is edited without changing what the app shows.
mode | string以下之一: standard, landscape | standard, or landscape (also for sunsets: protects the sky, lifts the foreground) |
|---|---|---|
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
recover_dynamic_range Recover dynamic range
会更改照片或文件
Protect highlights and lift shadows from the photo's statistics. Repeating it on the same photo right after with another strength re-derives from the same base, like the inspector slider. Acts on the photo at path: one step in that photo's own edit history (undo with undo {path}), saved next to the photo like an edit in the app. If the photo is the one shown in the editor, the user sees the change live; otherwise it is edited without changing what the app shows.
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
|---|---|---|
strength | number | 0...100 (default 60) |
apply_preset Apply preset
会更改照片或文件
Apply a preset by name. Acts on the photo at path: one step in that photo's own edit history (undo with undo {path}), saved next to the photo like an edit in the app. If the photo is the one shown in the editor, the user sees the change live; otherwise it is edited without changing what the app shows.
name 必填 | string | Preset name (see list_presets) |
|---|---|---|
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
set_white_balance White balance
会更改照片或文件
White balance: As Shot, Auto (estimated from the photo), Custom temperature/tint, or the eyedropper at a point that should be neutral. Acts on the photo at path: one step in that photo's own edit history (undo with undo {path}), saved next to the photo like an edit in the app. If the photo is the one shown in the editor, the user sees the change live; otherwise it is edited without changing what the app shows.
mode | string以下之一: as_shot, auto, custom | White balance mode |
|---|---|---|
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
pick | objectx, y | Eyedropper point {"x": 0...1, "y": 0...1}, normalized in the uncropped, unrotated photo, top-left origin |
temperature | number | Kelvin, 2000...12000 (custom) |
tint | number | -150...150 (custom) |
apply_tone_curve_preset Tone curve preset
会更改照片或文件
Set a point-curve channel to Linear, Medium Contrast or Strong Contrast. Acts on the photo at path: one step in that photo's own edit history (undo with undo {path}), saved next to the photo like an edit in the app. If the photo is the one shown in the editor, the user sees the change live; otherwise it is edited without changing what the app shows.
channel | string以下之一: rgb, red, green, blue | Channel (default rgb) |
|---|---|---|
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
preset 必填 | string以下之一: linear, medium_contrast, strong_contrast | Curve preset |
transform Rotate, flip, crop ratio
会更改照片或文件
Geometry, one action per call: rotate 90° (resets the crop), flip, set the crop aspect ratio (centered crop) or reset all geometry. Straighten angle, perspective and the crop rectangle itself are update_recipe geometry values. Acts on the photo at path: one step in that photo's own edit history (undo with undo {path}), saved next to the photo like an edit in the app. If the photo is the one shown in the editor, the user sees the change live; otherwise it is edited without changing what the app shows.
aspect_ratio | string | "original", "free", or W:H such as "1:1", "4:3", "3:2", "16:9", "5:4" |
|---|---|---|
flip | string以下之一: horizontal, vertical | Flip |
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
reset | boolean | Reset Geometry |
rotate | string以下之一: left, right | Rotate 90° counterclockwise (left) or clockwise (right) |
auto_straighten Auto straighten
会更改照片或文件
Level the horizon with horizon detection (Photo › Auto Straighten). Acts on the photo at path: one step in that photo's own edit history (undo with undo {path}), saved next to the photo like an edit in the app. If the photo is the one shown in the editor, the user sees the change live; otherwise it is edited without changing what the app shows.
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
|---|
edit_mask Edit masks
会更改照片或文件
Local adjustment masks of the photo at path; one step in its history per call. Actions: add (new mask from one shape; optional name and adjustments), add_component (to mask_id, combined by operation), update_component (component_id: operation, inverted, or new shape parameters), remove_component, set (mask_id: name, enabled, amount 0...100, adjustments), delete, select (show it in the inspector; only for the photo shown in the editor). Shapes: linear_gradient {start, end} (full effect at start, fading to end); radial_gradient {center, radius_x, radius_y, feather}; brush {strokes: [{points: [[x,y],…], size (fraction of long edge, default 0.08), feather (60), flow (50), density (100), erase}]}; luminance_range {lower, upper (0...1), feather}; color_range {hue (degrees), hue_range, min_saturation (0...1), feather}; sky; subject. Points are {"x","y"} normalized 0...1 in the uncropped, unrotated photo, top-left origin. adjustments: exposure (EV), contrast, highlights, shadows, whites, blacks, temperature, tint, saturation, sharpness, clarity, dehaze (-100...100). Mask and component ids belong to that photo; see get_recipe {path}.masks.
action 必填 | string以下之一: add, add_component, update_component, remove_component, set, delete, select | What to do |
|---|---|---|
adjustments | object | Local adjustments to merge, e.g. {"exposure": -0.5, "highlights": -40} |
amount | number | Mask amount 0...100 |
component_id | string | Component id (update_component, remove_component) |
enabled | boolean | Mask on/off |
inverted | boolean | Invert the component |
mask_id | string | Mask id of this photo (all actions except add) |
name | string | Mask name |
operation | string以下之一: add, subtract, intersect | How a component combines with the previous ones (default add) |
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
shape | object | Shape for add / add_component / update_component: {"kind": linear_gradient|radial_gradient|brush|luminance_range|color_range|sky|subject, …parameters} |
jump_to_history Go to history step
会更改照片或文件
Return a photo to a step of its own edit history, as clicking it in the History panel. No step is discarded: jump back to the previous history_position to return; undo / redo {path} step from the jumped-to step. Index 0 is the photo as it was when first edited or shown in this app session; see get_photo_info {path}.history.
index 必填 | integer | History index |
|---|---|---|
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
reset_all_edits Reset all edits
会更改照片或文件
Return every setting, the crop and all masks of a photo to its defaults as one step (Photo › Reset All Edits). Acts on the photo at path: one step in that photo's own edit history (undo with undo {path}), saved next to the photo like an edit in the app. If the photo is the one shown in the editor, the user sees the change live; otherwise it is edited without changing what the app shows.
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
|---|
undo Undo
会更改照片或文件
Undo the last edit step of the photo at path (made by you or the user), and only of that photo; other photos are never affected. Ratings, flags and labels are not part of a photo's edit history.
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
|---|
redo Redo
会更改照片或文件
Redo the last undone edit step of the photo at path.
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
|---|
set_rating Rate photos
会更改照片或文件
Set rating (0-5), flag and/or color label of photos as one step the user can undo in the app (Edit › Undo).
color_label | string以下之一: none, red, yellow, green, blue, purple | Color label |
|---|---|---|
flag | string以下之一: none, pick, reject | Flag |
paths 必填 | array (string) | Absolute paths of the photos to act on (any folder). |
rating | integer | 0...5 |
copy_settings Copy settings
只读
Copy a photo's settings to Rawed's settings clipboard for the user's Edit › Paste Settings. No tool reads this clipboard: paste_settings takes its source photo explicitly.
categories | array以下内容的列表: raw, whiteBalance, light, toneMapping, toneCurve, color, hsl, colorGrading, presence, detail, optics, geometry, effects, masks | Setting groups to copy (default: all except geometry, masks and raw) |
|---|---|---|
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
paste_settings Paste settings
会更改照片或文件
Copy settings from the photo at source to each photo in paths (Edit › Paste Settings / Paste Selected Settings): one step in each target photo's own history.
categories | array以下内容的列表: raw, whiteBalance, light, toneMapping, toneCurve, color, hsl, colorGrading, presence, detail, optics, geometry, effects, masks | Setting groups to paste (default: all except geometry, masks and raw) |
|---|---|---|
paths 必填 | array (string) | Absolute paths of the photos to paste into |
source 必填 | string | Absolute path of the photo whose settings are copied |
manage_preset Manage presets
可能永久删除预设
Create a preset from the settings of the photo at path, rename, delete (user presets only; cannot be undone), import a .rspreset file, or export a preset to a file.
action 必填 | string以下之一: create, rename, delete, import, export | What to do |
|---|---|---|
categories | array以下内容的列表: raw, whiteBalance, light, toneMapping, toneCurve, color, hsl, colorGrading, presence, detail, optics, geometry, effects, masks | Groups the new preset stores (create; default: the edited groups except geometry, masks and raw) |
name | string | Preset name (new name for create; existing preset otherwise) |
new_name | string | New name (rename) |
path | string | Photo whose settings the new preset stores (create, required), file to import, or file/folder to export to |
export Export
可能永久删除预设
Export photos with their current edits, and wait until done (File › Export…). Starts from Rawed defaults, not the Export sheet's last settings: Full-Size JPEG (JPEG 90%, original size, sRGB, all metadata, "{name}", next to the original); quick_convert is the same with the sheet's last settings. Sources on memory cards or in folders that can't be written require a directory argument; no files are written until a usable destination is provided. A directory on a memory card is rejected. Does not change the Export sheet's remembered settings. on_conflict decides what happens when a file with the output name already exists; a name that is one of the exported photos, or that two photos would share, is numbered instead. Returns the written paths and the number of skipped photos.
color_space | string以下之一: sRGB, displayP3 | Color space (default sRGB) |
|---|---|---|
copyright | string | Copyright notice written to the file (TIFF, IPTC) unless metadata is none; empty keeps the original's |
creator | string | Creator written to the file (TIFF Artist, IPTC By-line) unless metadata is none or copyright_only; empty keeps the original's |
directory | string | Destination folder; required if any source folder can't be written or is on a memory card. Omit only to save next to writable originals. |
file_name | string | File name template: {name} = original name, {index} = number in the export (3 digits), {seq:N} = number with N digits, {date} = capture date (yyyy-MM-dd) (default {name}) |
format | string以下之一: jpeg, heif, png, tiff | File format (default jpeg) |
height | integer | fit_within height |
include_metadata | boolean | Older switch, same as metadata: false = none |
long_edge | integer | Pixels for long_edge |
look | string以下之一: edits, original | With the photo's edits (default; photos without edits keep the camera look), or as shot |
megapixels | number | Total pixel count in millions for megapixels, keeping the aspect ratio (never upscales) |
metadata | string以下之一: all, all_except_location, all_except_camera_and_location, copyright_only, none | Metadata kept from the original: everything, without GPS, also without camera and lens (make, model, serial numbers), only the copyright, or nothing. TIFF Software = Rawed is always written |
on_conflict | string以下之一: replace, keep_both, skip | When the file already exists: replace it, keep both (writes <name>-2.<ext> …), or skip the photo (default keep_both). Only files Rawed wrote are replaced; any other file (an original such as a camera JPEG) is kept and the export gets <name>-2.<ext> |
output_sharpening | string以下之一: none, screen, matte, glossy | Sharpening after resizing, for a screen or for printing on matte or glossy paper |
paths 必填 | array (string) | Absolute paths of the photos to act on (any folder). |
percentage | number | Percent of the size for percentage |
preset | string以下之一: full_jpeg, web, share, small, lossless | Start from a preset: Full-Size JPEG (JPEG 90%), Web (JPEG 2048 px 80%), Share (HEIF 50%), Small (JPEG 1280 px), Lossless PNG; the other options override it |
quality | number | 0...1 for JPEG/HEIF (default 0.9) |
remove_location | boolean | Older switch, same as metadata: true = all_except_location |
resolution_ppi | integer | Pixels per inch written to the file (no resampling); 0 keeps the original's |
sharpening_amount | string以下之一: low, standard, high | Output sharpening amount (default standard) |
short_edge | integer | Pixels for short_edge |
size | string以下之一: original, long_edge, short_edge, fit_within, percentage, megapixels | Size mode (default original; long_edge if only long_edge is given) |
subfolder | string | Capture-date subfolder in a date format, e.g. "yyyy-MM-dd" or "yyyy/MM" (/ nests folders); "" or "none" for none |
watermark | objectcolor, font, image, margin, opacity, position, size, text, type | Watermark drawn into the exported files only (not into the photo, the editor or Save as JPEG), after resizing. type is required; the other options left out keep the current watermark's (quick_convert: the Export sheet's last one) or the defaults. {"type": "none"} removes it |
width | integer | fit_within width |
save_jpeg Save as JPEG
可能永久删除预设
Save photos with their current edits as full-size JPEGs next to the originals (File › Save as JPEG) and wait until done: <name>.jpg, sRGB, quality 90, metadata kept (location removed only when the Export sheet's Remove Location or no-metadata choice says so). A JPEG original, or a photo whose <name>.jpg is a file Rawed didn't write (such as the camera JPEG of a RAW + JPEG pair), gets <name> edited.jpg instead. Originals and their edit files are never changed. on_conflict decides what happens when that JPEG already exists. Photos on memory cards or in folders that can't be written fail (use export with a directory). Returns the written, skipped and failed paths.
on_conflict | string以下之一: replace, keep_both, skip | When the JPEG already exists: replace it, keep both (writes <name> 2.jpg …), or skip the photo (default keep_both) |
|---|---|---|
paths 必填 | array (string) | Absolute paths of the photos to act on (any folder). |
quick_convert Quick Convert
会更改照片或文件
Alias of export that starts from the Export sheet's last settings (File › Export…) instead of Rawed defaults, also takes folders, and never asks: an existing file is kept and the new one numbered (<name>-2.<ext>). Without saved settings it starts at Full-Size JPEG (JPEG 90%, original size; earlier versions started at Web). A preset and the other options override them. Sources on memory cards or in folders that can't be written require a directory argument; no files are written until a usable destination is provided. A directory on a memory card is rejected. Returns the written paths.
color_space | string以下之一: sRGB, displayP3 | Color space |
|---|---|---|
copyright | string | Copyright notice written to the file (TIFF, IPTC) unless metadata is none; empty keeps the original's |
creator | string | Creator written to the file (TIFF Artist, IPTC By-line) unless metadata is none or copyright_only; empty keeps the original's |
crop | string以下之一: none, 1:1, 4:3, 3:2, 16:9 | Centered crop (follows each photo's orientation) |
directory | string | Destination folder; required if any source folder can't be written or is on a memory card. Omit only to save next to writable originals. |
file_name | string | File name template: {name} = original name, {index} = number in the export (3 digits), {seq:N} = number with N digits, {date} = capture date (yyyy-MM-dd) (overrides suffix) |
format | string以下之一: jpeg, heif, png, tiff | File format |
height | integer | fit_within height |
include_metadata | boolean | Older switch, same as metadata: false = none |
long_edge | integer | Pixels for long_edge |
look | string以下之一: edits, original | With the photo's edits, or as shot |
megapixels | number | Total pixel count in millions for megapixels, keeping the aspect ratio (never upscales) |
metadata | string以下之一: all, all_except_location, all_except_camera_and_location, copyright_only, none | Metadata kept from the original: everything, without GPS, also without camera and lens (make, model, serial numbers), only the copyright, or nothing. TIFF Software = Rawed is always written |
output_sharpening | string以下之一: none, screen, matte, glossy | Sharpening after resizing, for a screen or for printing on matte or glossy paper |
paths 必填 | array (string) | Photos or folders to convert |
preset | string以下之一: full_jpeg, web, share, small, lossless | Full-Size JPEG (JPEG 90%), Web (JPEG 2048 px 80%), Share (HEIF 50%), Small (JPEG 1280 px), Lossless PNG |
quality | number | 0.3...1 for JPEG/HEIF |
remove_location | boolean | Older switch, same as metadata: true = all_except_location |
resolution_ppi | integer | Pixels per inch written to the file (no resampling); 0 keeps the original's |
sharpening_amount | string以下之一: low, standard, high | Output sharpening amount (default standard) |
short_edge | integer | Pixels for short_edge |
size | string以下之一: original, 50%, 25%, long_edge, short_edge, fit_within, megapixels | Size |
subfolder | string | Capture-date subfolder in a date format, e.g. "yyyy-MM-dd" or "yyyy/MM" (/ nests folders); "" or "none" for none |
suffix | string | Appended to the original name, e.g. "-web" (sets file_name to {name}-web) |
watermark | objectcolor, font, image, margin, opacity, position, size, text, type | Watermark drawn into the exported files only (not into the photo, the editor or Save as JPEG), after resizing. type is required; the other options left out keep the current watermark's (quick_convert: the Export sheet's last one) or the defaults. {"type": "none"} removes it |
width | integer | fit_within width |
merge_hdr Merge to HDR
会更改照片或文件
Merge bracketed photos (at least two, in the given order) into a linear HDR TIFF next to the first one when its folder is writable, and show it in the editor (Photo › Merge to HDR). Pass directory when the first photo is on a memory card or its folder can't be written. Waits until done and returns the merged file's path.
align | boolean | Align the frames (default true) |
|---|---|---|
deghosting | number | 0...1 moving-object suppression (default 0.5) |
directory | string | Destination folder; required if the first photo's folder can't be written or is on a memory card. |
paths 必填 | array (string) | Bracketed photos |
list_devices List devices
只读
Connected memory cards and external drives.
无参数。
show_device Show device
只读
Show a memory card or drive in the library (sidebar › Devices) and wait for the photo scan, or close it. Returns the photos grouped as in the gallery (RAW + JPEG pairs are one item).
close | boolean | Close the device and return to the folder |
|---|---|---|
filter | string以下之一: all, raw, jpeg | Show all photos, or only RAW / JPEG |
path | string | Volume path from list_devices (default: the device already shown) |
copy_from_device Copy to folder
会更改照片或文件
Copy photos from a memory card or drive to a folder on the Mac (File › Copy to Folder) and wait until done. Shows the device in the library while it is scanned. Nothing on the card is changed.
by_date | boolean | Put photos in folders by capture date (default true) |
|---|---|---|
destination 必填 | string | Destination folder |
device 必填 | string | Volume path from list_devices |
paths | array (string) | Photos to copy (any file of a RAW + JPEG pair copies both; default: every photo on the device) |
skip_existing | boolean | Skip photos that were already copied (default true) |
eject_device Eject device
会更改照片或文件
Eject a memory card or drive (File › Eject).
path 必填 | string | Volume path from list_devices |
|---|
set_view Control the view
只读
Operate the GUI without changing photos: mode, editor tool, zoom, before/after, clipping overlays (highlights, shadows, zebra, heatmap, threshold), EDR preview, sharpening mask, mask overlay and selected mask, inspector and filmstrip visibility, inspector tab, library sort and filter, thumbnail size.
clear_filter | boolean | Clear the library filter |
|---|---|---|
clipping | boolean | Show both highlight and shadow clipping |
compare | string以下之一: off, split, side_by_side | Before/after |
extended_dynamic_range | boolean | EDR preview on HDR displays |
filmstrip | boolean | Show the filmstrip |
filter_file_type | string以下之一: all, raw, jpeg, heif, png, tiff | Library file type filter |
filter_flag | string以下之一: any, pick, reject, unflagged | Library flag filter |
filter_rating | integer | Show photos with at least this many stars (0 = any) |
heatmap | boolean | Exposure heatmap |
highlight_clipping | boolean | Show highlight clipping |
inspector | boolean | Show the inspector |
inspector_tab | string以下之一: adjust, presets, history | Inspector tab |
mask_overlay | boolean | Show the selected mask as an overlay |
mode | string以下之一: library, edit | App mode (edit opens the focused photo) |
selected_mask | string | Mask id to select in the inspector |
shadow_clipping | boolean | Show shadow clipping |
sharpening_mask | boolean | Show the sharpening mask |
show_original | boolean | Show the original instead of the edit (like holding Space) |
sort | string以下之一: capture_time, file_name, rating | Library sort order |
threshold | string以下之一: 95, 98, 100 | Highlight warning threshold in percent |
thumbnail_size | integer | Library thumbnail size in points, 110...320 |
tool | string以下之一: none, crop, mask, white_balance, color_target | Editor tool (color_target: the Point Color eyedropper / targeted adjustment) |
zebra | boolean | Zebra stripes above the threshold |
zoom | string | "fit", "fill", a percentage 5...800 (e.g. "100"), "in" or "out" |
set_preferences Preferences
只读
Rawed Settings › Editing defaults for newly opened photos.
extended_dynamic_range | boolean | Use the EDR preview on HDR displays by default |
|---|---|---|
highlight_warning_threshold | string以下之一: 95, 98, 100 | Default highlight warning threshold in percent |
edit_point_color Point Color
会更改照片或文件
Point Color (Color panel): change one color picked in the photo — its hue, saturation and luminance — without masks; every pixel close to that color changes, with a smooth falloff. Actions: add (sample the color at `sample`, or give `color`), update (point_id: any of the values below), delete (point_id), move (point_id, offset -1 earlier / 1 later; points apply in order). Values: hue_shift, saturation, luminance (-100...100; luminance 100 = +1 EV on that color), range (0...100, default 50: how far from the color the change reaches), hue_range, saturation_range, luminance_range (0...100, default 50: refine the range per dimension), enabled. `color` is {"lightness", "chroma", "hue"} in OKLCh of the linear working space, or {"hex": "#RRGGBB"} (sRGB). Point ids and targets are in get_recipe.pointColors. One step in that photo's own edit history (undo with undo {path}), saved next to the photo like an edit in the app; if the photo is shown in the editor the user sees it live.
action 必填 | string以下之一: add, update, delete, move | What to do |
|---|---|---|
color | object | Target color for add: {"lightness", "chroma", "hue"} (OKLCh) or {"hex": "#RRGGBB"} |
enabled | boolean | Point color on/off |
hue_range | number | 0...100 (default 50) |
hue_shift | number | -100...100 (±30° hue rotation) |
luminance | number | -100...100 (±1 EV) |
luminance_range | number | 0...100 (default 50) |
offset | integer | move: -1 earlier, 1 later |
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
point_id | string | Point color id (update, delete, move) |
range | number | 0...100 (default 50) |
sample | objectx, y | Point {"x": 0...1, "y": 0...1}, normalized in the uncropped, unrotated photo, top-left origin (as for masks and the white balance picker) |
saturation | number | -100...100 |
saturation_range | number | 0...100 (default 50) |
targeted_adjust Targeted adjustment
会更改照片或文件
Change the color at a point of the photo, like dragging up or down on it with the targeted adjustment tool: target color_mixer changes the Color Mixer (HSL) bands of that color, weighted as the mixer blends them; target point_color changes the point color that covers that color, adding one sampled there if there is none. `amount` is in slider units (-100...100), added to the current values. Gray colors can't be changed in the Color Mixer. One step in that photo's own edit history (undo with undo {path}), saved next to the photo like an edit in the app; if the photo is shown in the editor the user sees it live.
amount 必填 | number | -100...100 slider units (positive = like dragging up) |
|---|---|---|
path 必填 | string | Absolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference. |
point 必填 | objectx, y | Point {"x": 0...1, "y": 0...1}, normalized in the uncropped, unrotated photo, top-left origin (as for masks and the white balance picker) |
property 必填 | string以下之一: hue, saturation, luminance | Which property changes |
target 必填 | string以下之一: color_mixer, point_color | What changes |
assess_photos Assess photos for culling
只读
Measure photos for culling; read-only (nothing is edited, rated or saved). Each photo is measured on a 1024 px sRGB image: RAW files on the camera's embedded preview (as shot, before edits; get_analysis measures the RAW data itself), other files downsampled. Per photo: sharpness — variance of the Laplacian (after a light 3×3 pre-blur) over the frame (global) and in its sharpest 5 % (local, so a sharp subject on a soft background counts as sharp), score 0–100 (log scale, local 5 → 0, 500 → 100), likely_blurry when local < 15 (conservative: mildly soft frames of detailed scenes pass; in a duplicate group compare relative_to_group_best, softer_than_group below 0.5); exposure as shot — highlight_clip_percent (any channel ≥ 250/255), shadow_clip_percent (all ≤ 5/255), ev_offset (mean EV of the frame vs. 18 % gray), likely_overexposed (ev_offset > 1 or > 5 % clipped), likely_underexposed (ev_offset < −2.5 or > 20 % crushed); low-key and high-key scenes can be flagged on purpose; faces (Apple Vision) — count, box (0…1, top-left origin), capture_quality 0…1 (compare the same person across frames), eye openness (height/width of the landmark eye contour; open ≈ 0.25–0.45) and eyes_closed when both are below 0.18 — a heuristic: null for faces under 48 px wide or without landmarks, unreliable for profiles, sunglasses, squinting or looking down. Near-duplicates across the given photos: Vision feature print distance (revision 2, on a 224 px copy) ≤ duplicate_threshold (default 0.6; re-encoded copies ≈ 0.1, different scenes ≈ 1.2), complete linkage (every pair in a group is within the threshold), with suggested_keep per group (no closed eyes, then sharpest, then best face quality, then least clipping) and each photo's nearest match. Thresholds are repeated in the reply. Unreadable files are listed under failures.
duplicate_threshold | number | Feature print distance up to which photos are near-duplicates (default 0.6) |
|---|---|---|
include | array以下内容的列表: sharpness, exposure, faces, duplicates | Measurements to make (default all). duplicates compares the photos with each other. |
paths 必填 | array (string) | Absolute paths of the photos to measure and compare (any folders; up to 500) |
