Menggunakan Rawed+ dengan ejen AI

Rawed+ disertakan dengan pelayan MCP, rawed-mcp, supaya ejen AI seperti Claude Code, Claude Desktop dan Codex boleh menyunting, memilih dan mengeksport foto anda. Di sini anda akan temui cara menyediakannya, apa yang boleh diminta, cara privasi berfungsi, dan setiap alatan.

Keperluan

  • Rawed+, semasa percubaan 14 hari atau dengan lesen. Rawed dari Mac App Store tiada akses ejen, tetapi ia membuka kunci Rawed+ pada Mac yang sama.
  • macOS 26 atau lebih baharu
  • Apl ejen AI yang boleh menjalankan pelayan MCP setempat, seperti Claude Code, Claude Desktop, Codex CLI atau Cursor

Hidupkan akses ejen

Buka Rawed+, pilih Rawed+ › Seting, klik Ejen AI dan hidupkan Benarkan ejen AI menggunakan Rawed. Bantuan › Menggunakan Rawed dengan Ejen AI… membuka anak tetingkap yang sama. Ia juga menunjukkan arahan di bawah bersama laluan salinan apl anda, serta ejen yang sedang disambungkan.

Sambungkan ejen anda

Arahan di bawah menganggap Rawed+ berada dalam folder Aplikasi. Jika ia berada di tempat lain, salin arahan daripada Seting › Ejen AI.

Claude Code

Jalankan arahan ini dalam Terminal. --scope user menjadikan Rawed tersedia dalam semua projek anda. Kemudian mulakan sesi Claude Code yang baharu.

claude mcp add --scope user rawed -- "/Applications/Rawed+.app/Contents/MacOS/rawed-mcp"

Claude Desktop

Dalam Claude Desktop, pilih Settings › Developer › Edit Config. Ini memaparkan claude_desktop_config.json, yang terletak dalam ~/Library/Application Support/Claude. Tambah entri rawed di bawah; jika fail itu sudah mempunyai mcpServers, letakkannya di dalamnya. Simpan fail, kemudian keluar dan buka semula Claude Desktop.

{
  "mcpServers": {
    "rawed": {
      "command": "/Applications/Rawed+.app/Contents/MacOS/rawed-mcp"
    }
  }
}

Codex CLI

Jalankan arahan ini dalam Terminal:

codex mcp add rawed -- "/Applications/Rawed+.app/Contents/MacOS/rawed-mcp"

Atau tambah baris ini ke ~/.codex/config.toml:

[mcp_servers.rawed]
command = "/Applications/Rawed+.app/Contents/MacOS/rawed-mcp"

Cursor dan klien MCP lain

Tambah Rawed sebagai pelayan MCP setempat (stdio). Cursor (~/.cursor/mcp.json) dan kebanyakan klien lain menerima JSON ini:

{
  "mcpServers": {
    "rawed": {
      "command": "/Applications/Rawed+.app/Contents/MacOS/rawed-mcp"
    }
  }
}

Klien yang hanya meminta arahan menerima laluan ini:

/Applications/Rawed+.app/Contents/MacOS/rawed-mcp

Rawed+ tidak perlu dibuka terlebih dahulu. Apabila ejen menggunakan alatan buat kali pertama, rawed-mcp membukanya di latar belakang. Jika akses ejen dimatikan, alatan akan membalas dengan mesej yang memberitahu tempat untuk menghidupkannya.

Cara alatan berfungsi

  • Setiap alatan yang bertindak pada foto menerima laluan failnya. Tiada apa-apa yang bergantung pada apa yang dipaparkan atau dipilih dalam Rawed, jadi ejen boleh bekerja pada mana-mana foto yang dapat dinamakannya, dalam mana-mana folder, tanpa membukanya dahulu.
  • Setiap suntingan ialah satu langkah dalam sejarah foto itu sendiri, disimpan di sebelah foto dalam fail .rawed.json yang kecil, sama seperti suntingan anda sendiri. Fail asal tidak pernah diubah. Anda boleh membuat asal langkah itu dalam Rawed, atau ejen boleh melakukannya dengan undo.
  • Alatan membaca seperti get_analysis, render_preview dan assess_photos tidak mengubah apa-apa. Penarafan dan pembenderaan tidak pernah memadam foto, dan kad memori tidak pernah ditulis.
  • Satu-satunya perubahan yang tidak boleh dibuat asal ialah memadam praset yang anda cipta, dengan manage_preset.

Privasi

Akses ejen dimatikan sehingga anda menghidupkannya. Selepas itu, Rawed+ hanya menerima sambungan daripada program pada Mac yang sama, melalui soket setempat yang hanya boleh dibuka oleh akaun pengguna anda, dengan kunci yang bertukar setiap kali akses dihidupkan. Ia tidak boleh dicapai dari rangkaian, dan Rawed sendiri tidak menghantar apa-apa ke mana-mana.

Ejen ialah perkara yang berbeza. Apa yang dibacanya melalui alatan, seperti maklumat foto (termasuk lokasi GPS jika foto itu ada), ukuran dan imej pratonton yang dimintanya (sehingga 2,048 piksel pada sisi panjang), menjadi sebahagian daripada perbualannya dan dihantar kepada penyedia AI ejen itu, sama seperti apa sahaja yang anda taip di situ. Cara penyedia mengendalikannya bergantung pada terma dan dasar privasinya sendiri. Ejen yang juga boleh membaca fail sendiri, seperti Claude Code, mungkin membaca foto anda secara terus; itu seting ejen, bukan seting Rawed.

Rujukan alatan

Kesemua 42 alatan, dengan penerangan dan argumen yang diterima oleh ejen. Ejen membaca teks ini dalam bahasa Inggeris.

get_state Get app state

Baca sahaja

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.

Tiada argumen.

list_photos List photos

Baca sahaja

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.

Argumen
folder wajibstringAbsolute folder path

get_photo_info Photo info

Baca sahaja

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.

Argumen
path wajibstringAbsolute 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

Baca sahaja

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.

Argumen
path wajibstringAbsolute 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

Baca sahaja

Image statistics of a photo: luminance percentiles, clipping, dynamic range (EV), top vs bottom brightness, noise risk.

Argumen
path wajibstringAbsolute 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

Baca sahaja

Render a photo with its current edits and return it as a JPEG image so you can see the result.

Argumen
max_sizeintegerLong edge in pixels (default 1024, max 2048)
originalbooleanRender the unedited original instead (default false)
path wajibstringAbsolute 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

Baca sahaja

Presets with name, whether built in, and the setting groups each one changes.

Tiada argumen.

open_folder Show folder

Baca sahaja

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.

Argumen
path wajibstringAbsolute folder path

recent_folders Recent folders

Baca sahaja

List File › Open Recent folders, or clear the list.

Argumen
clearbooleanClear the Open Recent menu

select_photos Select photos

Baca sahaja

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.

Argumen
allbooleanSelect every visible photo
nonebooleanClear the selection
pathsarray (string)Photos to select (replaces the selection)
stepintegerMove by this many photos in library order (-1 previous, 1 next)

open_photo Show photo

Baca sahaja

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.

Argumen
path wajibstringAbsolute path of the photo

show_in_finder Show in Finder

Baca sahaja

Reveal files or folders in Finder (Photo › Show in Finder). This brings Finder to the front.

Argumen
paths wajibarray (string)Files or folders to reveal

update_recipe Update edit recipe

Mengubah foto atau fail

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.

Argumen
changes wajibobjectPartial EditRecipe to merge
labelstringHistory label shown in the app (optional)
path wajibstringAbsolute 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

Mengubah foto atau fail

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.

Argumen
modestring
Salah satu daripada: standard, landscape
standard, or landscape (also for sunsets: protects the sky, lifts the foreground)
path wajibstringAbsolute 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

Mengubah foto atau fail

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.

Argumen
path wajibstringAbsolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference.
strengthnumber0...100 (default 60)

apply_preset Apply preset

Mengubah foto atau fail

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.

Argumen
name wajibstringPreset name (see list_presets)
path wajibstringAbsolute 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

Mengubah foto atau fail

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.

Argumen
modestring
Salah satu daripada: as_shot, auto, custom
White balance mode
path wajibstringAbsolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference.
pickobject
x, y
Eyedropper point {"x": 0...1, "y": 0...1}, normalized in the uncropped, unrotated photo, top-left origin
temperaturenumberKelvin, 2000...12000 (custom)
tintnumber-150...150 (custom)

apply_tone_curve_preset Tone curve preset

Mengubah foto atau fail

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.

Argumen
channelstring
Salah satu daripada: rgb, red, green, blue
Channel (default rgb)
path wajibstringAbsolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference.
preset wajibstring
Salah satu daripada: linear, medium_contrast, strong_contrast
Curve preset

transform Rotate, flip, crop ratio

Mengubah foto atau fail

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.

Argumen
aspect_ratiostring"original", "free", or W:H such as "1:1", "4:3", "3:2", "16:9", "5:4"
flipstring
Salah satu daripada: horizontal, vertical
Flip
path wajibstringAbsolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference.
resetbooleanReset Geometry
rotatestring
Salah satu daripada: left, right
Rotate 90° counterclockwise (left) or clockwise (right)

auto_straighten Auto straighten

Mengubah foto atau fail

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.

Argumen
path wajibstringAbsolute 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

Mengubah foto atau fail

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.

Argumen
action wajibstring
Salah satu daripada: add, add_component, update_component, remove_component, set, delete, select
What to do
adjustmentsobjectLocal adjustments to merge, e.g. {"exposure": -0.5, "highlights": -40}
amountnumberMask amount 0...100
component_idstringComponent id (update_component, remove_component)
enabledbooleanMask on/off
invertedbooleanInvert the component
mask_idstringMask id of this photo (all actions except add)
namestringMask name
operationstring
Salah satu daripada: add, subtract, intersect
How a component combines with the previous ones (default add)
path wajibstringAbsolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference.
shapeobjectShape 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

Mengubah foto atau fail

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.

Argumen
index wajibintegerHistory index
path wajibstringAbsolute 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

Mengubah foto atau fail

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.

Argumen
path wajibstringAbsolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference.

undo Undo

Mengubah foto atau fail

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.

Argumen
path wajibstringAbsolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference.

redo Redo

Mengubah foto atau fail

Redo the last undone edit step of the photo at path.

Argumen
path wajibstringAbsolute 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

Mengubah foto atau fail

Set rating (0-5), flag and/or color label of photos as one step the user can undo in the app (Edit › Undo).

Argumen
color_labelstring
Salah satu daripada: none, red, yellow, green, blue, purple
Color label
flagstring
Salah satu daripada: none, pick, reject
Flag
paths wajibarray (string)Absolute paths of the photos to act on (any folder).
ratinginteger0...5

copy_settings Copy settings

Baca sahaja

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.

Argumen
categoriesarray
Senarai: 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 wajibstringAbsolute 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

Mengubah foto atau fail

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.

Argumen
categoriesarray
Senarai: 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 wajibarray (string)Absolute paths of the photos to paste into
source wajibstringAbsolute path of the photo whose settings are copied

manage_preset Manage presets

Boleh memadam praset secara kekal

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.

Argumen
action wajibstring
Salah satu daripada: create, rename, delete, import, export
What to do
categoriesarray
Senarai: 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)
namestringPreset name (new name for create; existing preset otherwise)
new_namestringNew name (rename)
pathstringPhoto whose settings the new preset stores (create, required), file to import, or file/folder to export to

export Export

Boleh memadam praset secara kekal

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.

Argumen
color_spacestring
Salah satu daripada: sRGB, displayP3
Color space (default sRGB)
copyrightstringCopyright notice written to the file (TIFF, IPTC) unless metadata is none; empty keeps the original's
creatorstringCreator written to the file (TIFF Artist, IPTC By-line) unless metadata is none or copyright_only; empty keeps the original's
directorystringDestination 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_namestringFile 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})
formatstring
Salah satu daripada: jpeg, heif, png, tiff
File format (default jpeg)
heightintegerfit_within height
include_metadatabooleanOlder switch, same as metadata: false = none
long_edgeintegerPixels for long_edge
lookstring
Salah satu daripada: edits, original
With the photo's edits (default; photos without edits keep the camera look), or as shot
megapixelsnumberTotal pixel count in millions for megapixels, keeping the aspect ratio (never upscales)
metadatastring
Salah satu daripada: 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_conflictstring
Salah satu daripada: 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_sharpeningstring
Salah satu daripada: none, screen, matte, glossy
Sharpening after resizing, for a screen or for printing on matte or glossy paper
paths wajibarray (string)Absolute paths of the photos to act on (any folder).
percentagenumberPercent of the size for percentage
presetstring
Salah satu daripada: 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
qualitynumber0...1 for JPEG/HEIF (default 0.9)
remove_locationbooleanOlder switch, same as metadata: true = all_except_location
resolution_ppiintegerPixels per inch written to the file (no resampling); 0 keeps the original's
sharpening_amountstring
Salah satu daripada: low, standard, high
Output sharpening amount (default standard)
short_edgeintegerPixels for short_edge
sizestring
Salah satu daripada: original, long_edge, short_edge, fit_within, percentage, megapixels
Size mode (default original; long_edge if only long_edge is given)
subfolderstringCapture-date subfolder in a date format, e.g. "yyyy-MM-dd" or "yyyy/MM" (/ nests folders); "" or "none" for none
watermarkobject
color, 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
widthintegerfit_within width

save_jpeg Save as JPEG

Boleh memadam praset secara kekal

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.

Argumen
on_conflictstring
Salah satu daripada: 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 wajibarray (string)Absolute paths of the photos to act on (any folder).

quick_convert Quick Convert

Mengubah foto atau fail

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.

Argumen
color_spacestring
Salah satu daripada: sRGB, displayP3
Color space
copyrightstringCopyright notice written to the file (TIFF, IPTC) unless metadata is none; empty keeps the original's
creatorstringCreator written to the file (TIFF Artist, IPTC By-line) unless metadata is none or copyright_only; empty keeps the original's
cropstring
Salah satu daripada: none, 1:1, 4:3, 3:2, 16:9
Centered crop (follows each photo's orientation)
directorystringDestination 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_namestringFile 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)
formatstring
Salah satu daripada: jpeg, heif, png, tiff
File format
heightintegerfit_within height
include_metadatabooleanOlder switch, same as metadata: false = none
long_edgeintegerPixels for long_edge
lookstring
Salah satu daripada: edits, original
With the photo's edits, or as shot
megapixelsnumberTotal pixel count in millions for megapixels, keeping the aspect ratio (never upscales)
metadatastring
Salah satu daripada: 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_sharpeningstring
Salah satu daripada: none, screen, matte, glossy
Sharpening after resizing, for a screen or for printing on matte or glossy paper
paths wajibarray (string)Photos or folders to convert
presetstring
Salah satu daripada: 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
qualitynumber0.3...1 for JPEG/HEIF
remove_locationbooleanOlder switch, same as metadata: true = all_except_location
resolution_ppiintegerPixels per inch written to the file (no resampling); 0 keeps the original's
sharpening_amountstring
Salah satu daripada: low, standard, high
Output sharpening amount (default standard)
short_edgeintegerPixels for short_edge
sizestring
Salah satu daripada: original, 50%, 25%, long_edge, short_edge, fit_within, megapixels
Size
subfolderstringCapture-date subfolder in a date format, e.g. "yyyy-MM-dd" or "yyyy/MM" (/ nests folders); "" or "none" for none
suffixstringAppended to the original name, e.g. "-web" (sets file_name to {name}-web)
watermarkobject
color, 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
widthintegerfit_within width

merge_hdr Merge to HDR

Mengubah foto atau fail

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.

Argumen
alignbooleanAlign the frames (default true)
deghostingnumber0...1 moving-object suppression (default 0.5)
directorystringDestination folder; required if the first photo's folder can't be written or is on a memory card.
paths wajibarray (string)Bracketed photos

list_devices List devices

Baca sahaja

Connected memory cards and external drives.

Tiada argumen.

show_device Show device

Baca sahaja

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).

Argumen
closebooleanClose the device and return to the folder
filterstring
Salah satu daripada: all, raw, jpeg
Show all photos, or only RAW / JPEG
pathstringVolume path from list_devices (default: the device already shown)

copy_from_device Copy to folder

Mengubah foto atau fail

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.

Argumen
by_datebooleanPut photos in folders by capture date (default true)
destination wajibstringDestination folder
device wajibstringVolume path from list_devices
pathsarray (string)Photos to copy (any file of a RAW + JPEG pair copies both; default: every photo on the device)
skip_existingbooleanSkip photos that were already copied (default true)

eject_device Eject device

Mengubah foto atau fail

Eject a memory card or drive (File › Eject).

Argumen
path wajibstringVolume path from list_devices

set_view Control the view

Baca sahaja

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.

Argumen
clear_filterbooleanClear the library filter
clippingbooleanShow both highlight and shadow clipping
comparestring
Salah satu daripada: off, split, side_by_side
Before/after
extended_dynamic_rangebooleanEDR preview on HDR displays
filmstripbooleanShow the filmstrip
filter_file_typestring
Salah satu daripada: all, raw, jpeg, heif, png, tiff
Library file type filter
filter_flagstring
Salah satu daripada: any, pick, reject, unflagged
Library flag filter
filter_ratingintegerShow photos with at least this many stars (0 = any)
heatmapbooleanExposure heatmap
highlight_clippingbooleanShow highlight clipping
inspectorbooleanShow the inspector
inspector_tabstring
Salah satu daripada: adjust, presets, history
Inspector tab
mask_overlaybooleanShow the selected mask as an overlay
modestring
Salah satu daripada: library, edit
App mode (edit opens the focused photo)
selected_maskstringMask id to select in the inspector
shadow_clippingbooleanShow shadow clipping
sharpening_maskbooleanShow the sharpening mask
show_originalbooleanShow the original instead of the edit (like holding Space)
sortstring
Salah satu daripada: capture_time, file_name, rating
Library sort order
thresholdstring
Salah satu daripada: 95, 98, 100
Highlight warning threshold in percent
thumbnail_sizeintegerLibrary thumbnail size in points, 110...320
toolstring
Salah satu daripada: none, crop, mask, white_balance, color_target
Editor tool (color_target: the Point Color eyedropper / targeted adjustment)
zebrabooleanZebra stripes above the threshold
zoomstring"fit", "fill", a percentage 5...800 (e.g. "100"), "in" or "out"

set_preferences Preferences

Baca sahaja

Rawed Settings › Editing defaults for newly opened photos.

Argumen
extended_dynamic_rangebooleanUse the EDR preview on HDR displays by default
highlight_warning_thresholdstring
Salah satu daripada: 95, 98, 100
Default highlight warning threshold in percent

edit_point_color Point Color

Mengubah foto atau fail

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.

Argumen
action wajibstring
Salah satu daripada: add, update, delete, move
What to do
colorobjectTarget color for add: {"lightness", "chroma", "hue"} (OKLCh) or {"hex": "#RRGGBB"}
enabledbooleanPoint color on/off
hue_rangenumber0...100 (default 50)
hue_shiftnumber-100...100 (±30° hue rotation)
luminancenumber-100...100 (±1 EV)
luminance_rangenumber0...100 (default 50)
offsetintegermove: -1 earlier, 1 later
path wajibstringAbsolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference.
point_idstringPoint color id (update, delete, move)
rangenumber0...100 (default 50)
sampleobject
x, 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)
saturationnumber-100...100
saturation_rangenumber0...100 (default 50)

targeted_adjust Targeted adjustment

Mengubah foto atau fail

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.

Argumen
amount wajibnumber-100...100 slider units (positive = like dragging up)
path wajibstringAbsolute path of the photo to act on (any folder). Whether or not it is shown in the editor makes no difference.
point wajibobject
x, 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 wajibstring
Salah satu daripada: hue, saturation, luminance
Which property changes
target wajibstring
Salah satu daripada: color_mixer, point_color
What changes

assess_photos Assess photos for culling

Baca sahaja

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.

Argumen
duplicate_thresholdnumberFeature print distance up to which photos are near-duplicates (default 0.6)
includearray
Senarai: sharpness, exposure, faces, duplicates
Measurements to make (default all). duplicates compares the photos with each other.
paths wajibarray (string)Absolute paths of the photos to measure and compare (any folders; up to 500)