Rawed+ и ИИ-агенты
В Rawed+ встроен MCP-сервер rawed-mcp, поэтому ИИ-агенты — Claude Code, Claude Desktop, Codex и другие — могут обрабатывать, отбирать и экспортировать ваши фотографии. Здесь рассказано, как все настроить, о чем просить агента, как устроена конфиденциальность, и описаны все инструменты.
Что понадобится
- Rawed+ в пробном периоде (14 дней) или с лицензией. В Rawed из Mac App Store доступа для агентов нет, но он разблокирует Rawed+ на том же Mac.
- macOS 26 или новее
- Приложение ИИ-агента, которое умеет запускать локальный MCP-сервер, например Claude Code, Claude Desktop, Codex CLI или Cursor
Включите доступ для агентов
Откройте Rawed+, выберите «Rawed+ › Настройки», перейдите в раздел «ИИ-агенты» и включите Разрешить ИИ-агентам использовать Rawed. Тот же раздел открывается через «Справка › Использование Rawed с ИИ-агентами…». Там же показаны команды ниже с путем к вашей копии приложения и видно, какой агент подключен.
Подключите агента
Команды ниже рассчитаны на то, что Rawed+ лежит в папке «Программы». Если он в другом месте, скопируйте команды из раздела «Настройки › ИИ-агенты».
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. Откроется файл claude_desktop_config.json из папки ~/Library/Application Support/Claude. Добавьте в него запись 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 как локальный MCP-сервер (stdio). 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-координаты, если они есть), замеры и запрошенные превью (до 2048 пикселей по длинной стороне) — становится частью диалога и уходит поставщику ИИ, как и любой ваш текст. Как поставщик обращается с этими данными, зависит от его условий и политики конфиденциальности. Агент, который сам умеет читать файлы, как 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) |
