Files and folders
Copy, move and organize local files with Core actions, folder signals and project-specific access.
AlphaFiles & Folders is a separate action and signal category for local media and working folders. Core performs operations and watches approved folders even when the Editor is closed. File actions can start from any signal; they do not require a folder watcher.
This feature has its own folder permissions. Context storage remains the separate source of Database and AI context files. Approving a file location does not add its contents to AI requests.
Approve a folder
- Open and save the project that will use the files.
- Open the Core tray menu and choose Core Settings → Files & Folders.
- Choose Add folder access…. Enter a stable Location ID, such as
recordings, a display name and the local folder. - Select the operations this project may perform. Enable Allow access to subfolders for nested files or observation below the selected root.
- Leave Remember for this project on this PC off for access until Core restarts, or turn it on to reuse the decision for this same project file.
- Choose Apply access. Core pauses and joins running automations before changing permissions, then restores the earlier execution state.
Use the Location ID in actions and signals. Select an approved ID from the editable list or enter an unresolved ID while preparing a project for another PC. Entering an ID does not approve access.
This illustration uses demonstration data. Edit / rebind folder… changes the local mapping without moving files. Revoke folder access removes permission for that ID.
Permissions
| Permission | Allows |
|---|---|
| List and inspect | Check existence, inspect metadata and list entries. |
| Watch for changes | Receive folder signals; also requires List and inspect. |
| Read files | Read content or use a file as a copy source. |
| Create files and folders | Create new destination files or folders. |
| Modify / overwrite | Change an existing file, append text or replace a destination. |
| Rename / move source | Rename an entry or remove a successfully transferred source. |
| Send to Recycle Bin | Request Windows recycling where supported. |
| Permanently delete | Delete an approved entry without the Recycle Bin. |
Source and destination permissions are independent. Copying requires Read files at the source and Create files and folders at the destination. Moving also requires Rename / move source. Replacement additionally requires Modify / overwrite. Watching grants no content-reading or mutation permission.
Absolute action paths, parent traversal, alternate streams and linked filesystem entries are rejected. Unknown location IDs never fall back to another folder. Destructive actions cannot target the bound root itself; choose a child file or folder.
These permissions control built-in file operations. They do not isolate trusted scripts or plugins from their Windows capabilities.
Actions
| Action | Purpose |
|---|---|
| Path Exists | Check whether a file or folder exists. |
| Get Path Info | Obtain type, size, timestamps and attributes. |
| List Files / List Directories | List matching entries with recursion, masks and result limits. |
| Wait for File Ready | Wait for a file to appear, remain stable and become readable. |
| Create Directory | Create a folder, optionally including missing parents. |
| Copy File / Copy Directory | Copy between separately approved locations. |
| Move File / Move Directory | Transfer files, then remove successfully transferred sources. |
| Rename File or Folder | Give an entry a new name inside its current parent. |
| Move to Recycle Bin | Recycle without falling back to permanent deletion. |
| Delete Permanently | Delete an entry; recursive folder deletion must be explicit. |
| Read Text File | Read a bounded text file with a selected encoding. |
| Write Text File / Append Text File | Write or append bounded text. |
Paths are relative to their location: for example, teams/{vars.team}.png with logos. Paths and text support ordinary field substitution; location IDs are literal.
Choose … beside a path to open the same tree/search popup used by Data Actions. Select an approved location on the left, search or expand its folders, then choose a file or folder and select Select. Signals accept folders; file actions select the type appropriate to the operation. New-destination popups also have an editable relative path for a filename or folder that does not exist yet. Cancel leaves the authored values unchanged. Browsing requires List and inspect permission, even when the action itself only needs a write permission.
Manual input and templates remain available. The popup never grants access or replaces the action's runtime permission checks.
The popup illustration uses a temporary demonstration folder. Only relative names are shown.
For conflicts choose Fail, Skip, UniqueName or Replace. Enable directory merging separately. Merging resolves individual file conflicts and preserves unrelated destination entries; it never replaces a destination tree wholesale. Append Text File has explicit append behavior rather than a conflict selector.
The Copy File authoring view has Preview only enabled. It shows configuration, not a completed copy or recording.
Folder signals
Signals are File Created, File Changed, File Ready, File Renamed, File Deleted, Directory Created, Directory Renamed, Directory Deleted, Watch Availability Changed and Watch Rescan Completed.
Choose the location, relative folder, include/exclude masks, recursion, maximum depth, maximum entries, check interval and stability period. Separate masks with semicolons, such as *.mkv;*.mp4. Existing files are skipped at observation start unless Process existing files is enabled.
Fields include the location ID, relative path, name, extension, type, last observed size/write time and, when known, old path. Availability signals expose availability and a safe status code instead. Deletion metadata may be incomplete.
File Created does not mean recording has finished. File Ready checks stable size/write time and accessibility; it is a heuristic. Prefer the recorder's explicit completion event when available, followed by Wait for File Ready if needed.
Observation combines bounded scans with known native rename notifications. Changes entirely between checks can be missed. Rescanning restores current state, not a complete history. Pausing or restarting rebuilds the baseline according to Process existing files. SH's own changes are observable too; use distinct input/output locations and filters to prevent loops.
Preview and results
Enable Preview only to validate paths and permissions without changing files. The plan can become outdated if another application changes a file afterward. Ordinary Test performs real effects; it is not Preview.
The default output, runtime.files.last, includes operationId, status, relative path and destinationPath, bounded items, count, bytes, truncated and optional text or errorCode. Choose another literal runtime.* Result path to retain several outputs. Inspect outcomes in Runs.
Statuses are completed, skipped, preview, partial, cancelled and failed. Directory operations are not transactions. Cancellation or failure can leave completed destination files; inspect item outcomes before retrying. A move removes a source only after publishing and verifying its destination. Filtered moves can leave unmatched files and report partial completion.
Recycling is Windows-only and unavailable for UNC or removable locations; it never silently switches to permanent deletion. Read/write text has a configurable limit up to 16 MiB. File copies are not subject to that text limit.
Transfer a project
The project retains logical IDs and relative paths, not bindings or grants. Copying/importing a project or Save As at another path requires new local approval. On another PC, map recordings, archive and other IDs to that machine's folders; actions keep their relative paths.
Rebinding does not physically move a folder. Use Move File or Move Directory for selected entries inside approved locations. There is no bound-root relocation command or once-per-run permission duration.