Repository navigation
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Priority: P2
Parent roadmap: #1
Depends on: stable contextual action registry and job execution (see #4).
Vision
Allow power users to invoke their own explicitly configured actions on selected files, without turning Tuck into an unrestricted or opaque automation daemon.
Scope
- A small settings editor for named custom actions: title, optional SF Symbol, compatible selection types, sort/order, command/script or macOS Shortcut reference, and confirmation requirement.
- Placeholder/argument interface that passes selected paths safely via argv or a structured manifest; never interpolate untrusted filenames into a shell command string.
- Support invoking installed macOS Shortcuts by stable identification where platform APIs/CLI support it; verify run/cancel/error behavior.
- Support user-chosen executable scripts with explicit consent, working directory, environment policy, bounded runtime and output/log redaction.
- Expose standard Tuck operations through suitable macOS Services/Quick Actions where technically supported; allow keyboard shortcuts without stealing native Finder shortcuts or registering fragile global key monitors.
- Disable/remove/reorder actions; show exactly what will run and which files it receives.
- Security: no default network/shell scripts, no bundled unsafe recipes, no privilege escalation, no secrets in environment/debug logs. Don't silently run scripts on untrusted downloads.
Acceptance criteria
- Selecting appropriate Finder files exposes only compatible custom actions.
- Filenames with quotes, spaces, Unicode, newlines and leading dashes cannot inject extra arguments or shell syntax.
- Action execution is asynchronous with progress when possible; cancellation terminates only job-owned children.
- User can inspect and revoke custom action permissions.
- Config persists and migrates safely; no unrestricted script executed because of a malformed preference.
- Shortcut execution and keyboard use have actionable errors when permissions/integration are missing.
Tests
Command argument-injection fixtures, invalid/removed scripts, denied permissions, huge selection, launch failures, timeouts, cancellation, environment sanitation, conflicting shortcuts and Finder extension restarts. Preserve authenticated helper IPC.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request
Activity
raiseCatError commentedon Oct 16, 2026
Implementation merged in PR #25: consented user-configured executable and macOS Shortcut actions, contextual Finder menu, argument-array file paths, bounded tool execution, cancellation and revocation. CustomActionTests passed in hosted Mac CI. Still open for physical Shortcuts permissions, Services/Quick Actions and optional keyboard shortcuts; no generic global hotkey registration was added.