Hysen Labs
Open-source project
Raudius/files_scripts avatar
Raudius

files_scripts

Custom file actions app for Nextcloud

36 stars16 forksPHPAGPL-3.0
DEEP OPEN-SOURCE ANALYSIS

Files Scripts adds Lua automation to the Nextcloud Files app

A Nextcloud app that lets admins and users run custom Lua file actions from the Files interface.

What the app does

Files Scripts, also called the File Actions app, is a scripting tool for Nextcloud. The readme describes it as a tool administrators can use to automate workflows and to give users of the Nextcloud instance additional custom file actions, with those actions accessible straight from the Files app. Scripting is done in Lua, which the readme calls simple and well documented online. The pitch is to make hard tasks easy directly from the Files app, and the readme invites users to open a GitHub issue if a function is missing from the scripting API. Integration with Nextcloud Flow allows workflows to be fully automated. The app requires Nextcloud 23 or newer and PHP 7.4 or newer. It ships with a Lua interpreter that runs on PHP, but the readme warns that this interpreter is still under development and its use is not recommended, and suggests installing the Lua PHP extension instead for a faster and more reliable result. The project reports 36 stars and 16 forks on GitHub. The combination of a familiar language and a location inside the Files interface means a non specialist admin can add routine operations without leaving the platform, while power users can extend the API surface through contributions.

Setup and dependencies

Setting up the Lua runtime is documented with concrete commands. For a basic install the readme lists apt commands to install lua5.3, liblua5.3-0, and liblua5.3-dev. For PHP 7 there is a details block showing how to install php-pear and php7-dev, copy the Lua headers into the include path, symlink the library directories, and run pecl install lua-2.0.7. For PHP 8 the readme notes the Lua plugin is not yet officially supported, so it must be built from source by cloning the badoo php-lua repository, running phpize and configure with the lua 5.3 version, and making the extension, then copying the resulting lua.so into the PHP extension directory found via php -i. In every case the user must append extension=lua.so to php.ini. Optional functions need extra system packages: qpdf version 9.1.1 or newer for the PDF functions, and ffmpeg for the FFmpeg and FFprobe functions. The documentation is split into admin documentation for creating new actions and taking precautions, and a scripting API documentation that describes every API function with usage snippets. Contributions are welcomed in several forms: translations through the Nextcloud community on Transifex, scripting API extensions, general documentation help, and donations through Liberapay. The readme keeps the tone practical and points to GitHub issues for missing features.

Use and licensing

Once installed, the value of Files Scripts is that automation lives where the user already is, inside the Nextcloud Files interface, rather than in a separate cron or script host. Administrators can expose routine jobs as menu actions, and the Nextcloud Flow integration lets those actions fire as part of larger automated workflows. The Lua API is the part users extend, and the readme is explicit that missing functions should be reported or patched through GitHub so the surface improves over time. The optional system packages show the intended scope: PDF manipulation through qpdf and media inspection through ffmpeg extend what a script can do beyond simple file moves. Because the app is aimed at Nextcloud 23 and PHP 7.4, administrators on older or newer stacks should check compatibility before deploying. The readme's warnings about the bundled PHP Lua interpreter being immature are worth heeding, since the native extension path is presented as the reliable option. The project is published under the AGPL-3.0 license, which means modified versions offered over a network must also be shared under the same terms. For organizations already running Nextcloud, the app is a light way to add custom file operations without building a standalone service. The repository's issue tracker is the stated channel for both support and feature requests.

Editorial conclusion

The repository is published under the AGPL-3.0 license and its most recent commit was on 2026-08-26.

DEEP OPEN-SOURCE ANALYSIS

Official sources

Community notes

Community notes