This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Build the PHAR package (requires Phing and external buildfiles repo at ../buildfiles):
phing remotecliBuild everything (PHAR + native binaries + docs). Unlike other Akeeba projects, phing all here does not publish to live users:
phing allRun the tool locally during development (the entry point is remotecli/remote.php, not a bin/ script):
php remotecli/remote.php <command> [options]- Brace style: Allman (opening brace on its own line for classes, methods, and control structures)
- Copyright header: Every PHP file starts with the
@package AkeebaRemoteCLIdocblock - No unit tests: Testing is done via integration testing against live Akeeba Backup installations (PhpStorm run configs in
.run/) - Adding a command: create a class extending
AbstractCommandinremotecli/Application/Command/, implementprepare()andexecute(), then register it in the$dispatcherarray inremote.php— an unregistered command silently never runs - API communication lives in the separate
akeeba/json-backup-apirepo (Composer@devdependency); fix API-layer bugs there, not here
- Never edit
remotecli/arccli_version.phpdirectly — it is regenerated at build time frombuild/templates/arccli_version.php(tokens##VERSION##,##DATE##)
- development branch: active development (default for PRs)
- main branch: releases only