Skip to content

Configuration

This page is a quick reference for configuration meanings and storage locations. It covers Android Studio Run Configuration, IDE-wide settings, one-time CLI/MCP parameters, project-level directories, and user-level directories. It does not explain where to click each button. See Advanced options for infrequently used actions under More Options.

Users normally need to change configuration only through the Jugg UI or CLI parameters. Manually editing cache files is not recommended.

Run Configuration options

OptionMeaning
Always restart app after deploymentForces an app restart after deployment. When disabled, HOT RELOAD is allowed if the requirements are met.
Confirm fallback when no file changesRequests confirmation before falling back to Gradle when no file changes are detected.
Auto fallback to Gradle when deploy errorAutomatically attempts a Gradle fallback after a deployment error.
Embedded to APKRuntime option that embeds specific artifacts into the APK.
Android Test / enableAndroidTestInitializes the current baseline for an androidTest target.

UI labels may vary slightly between Android Studio versions, but the current Run Configuration display defines their meaning.

Global behavior switches

SettingDefaultDescription
Compile on saveOffAutomatically triggers compilation after a save.
Deploy on saveOffAutomatically deploys after a save.
Check checksum when file changesOnVerifies checksums when files change to reduce unnecessary incremental work.
Compatible deployment modeOnEnables a compatibility deployment strategy for HarmonyOS, HyperOS, low-API devices, and similar environments.
Direct overlay deployOnEnables the fast overlay deployment path that does not require the app process to be running.
Use project Kotlin compilerOnPrefers the project's Kotlin compiler.
Backup classpathOff by defaultSaves a classpath backup. Not available on Windows.
Ignore wont compile modulesOffIgnores modules that will not participate in compilation.
Const-ref tasksOnEnables constant-reference scanning, analysis, and impact queries.

These settings are persisted in the IDE properties with keys that use the jugg.* prefix. Directly editing internal IDE properties is risky; use the Jugg UI instead.

CLI / MCP parameters

CLI and MCP call parameters affect only the current call. They do not permanently change IDE configuration.

ParameterEntry pointDescription
projectDirMCP / CLIAbsolute path to the target project.
--project-dirCLIOverrides automatic project matching.
alwaysRestartApp / --always-restart-appdeployControls whether the current deployment forces an app restart.
waitAppReadyAfterSuccessMCPWhether to wait for the app to become ready after successful compilation or deployment. The CLI does not currently expose this parameter.
refreshChanges / --refresh-changesstatusWhether to refresh git-tracked changed files before querying status.
--if-compilingCLIWaits or interrupts when a compilation is already running.

Project-level directories

All paths are relative to the project root by default.

PathPurpose
build/jugg/log/Main Jugg logs.
build/jugg/build/staging/Staging output for the current incremental compilation.
build/jugg/database/project_infos.db/IDE / Gradle project information snapshots.
build/jugg/database/compile_context.db/Classpath, module information, and full build information.
build/jugg/database/deploy_history.db/Deployment history and recovery information.
build/jugg/classpath/Classpath, APK, library backup, and embedded APK caches.
build/jugg/config/custom_compilers/Custom compiler configuration directory.
build/jugg/mcp_fetch/Artifact cache for MCP tools.
.gradle/jugg/readProjectInfo.gradle.ktsScript injected by Jugg for Gradle to read the project model.
.gradle/jugg/jugg-runtime.jarGradle-side runtime JAR.

User-level directories

PathPurpose
~/.jugg/const_ref/Cross-project constant-reference cache.
~/.jugg/library_test_build_records/Library androidTest build history.
~/.cache/jugg/portCLI MCP port cache.
~/.cache/jugg/CLI cache root, which can be overridden with JUGG_CACHE_DIR.

Remote configuration

Jugg remote configuration includes the server URL, expiration time, remote compilation diff directory, and SSH troubleshooting information. Remote compilation output and diffs are stored by default in:

text
build/jugg/tmp/diff/

If remote compilation results and local state are inconsistent, first check the full log described in Log files and the artifacts in tmp/diff.