An agent reads instance files freely within the preset. Every write starts as a plan: the agent shows you what it will change. The plan then runs with intellijsfcc_mutation_execute, see Plans & Safety. Every upload, deploy, delete and activation then shows in B2C Sync Log, with MCP and the agent's name as the source, such as MCP: Claude Code
WebDAV roots
intellijsfcc_webdav_roots lists each root with what agents may do there
| Root | Agents read | Agents write |
|---|---|---|
Cartridges | Yes | Into a code version |
Impex | Yes | Into Impex/src |
Temp | Yes | Yes |
Logs | Yes | Clear a log only, with intellijsfcc_logs_clear_plan |
Securitylogs | Yes | No |
Realmdata, Static, Catalogs, Libraries, Dynamic | Yes | Yes |
Catalogs, libraries and Velocity folders include the folders you added for that host in B2C Explorer
Read files
| Task | Tool | Risk |
|---|---|---|
| List a folder, with sizes and dates | intellijsfcc_webdav_list | Instance read |
| Read a text file | intellijsfcc_webdav_read_text | Instance read |
| Compare a folder or file on two instances | intellijsfcc_webdav_diff | Instance read |
| Compare your cartridges with a code version | intellijsfcc_remote_diff | Instance read |
| Download a file or folder into the plugin's downloads folder | intellijsfcc_webdav_download | Local write |
A folder download takes up to 2,000 files and 500 MB. Credential and key files are refused on read, download and upload
Change files
intellijsfcc_webdav_mutate_plan plans up to 50 operations in one plan, and one preview lists them all
| Operation | What it does |
|---|---|
| Make a folder | Creates a folder |
| Upload | Uploads files, creating their folders |
| Upload a folder | Uploads a whole folder in zipped batches of about 55 MB, unzips each on the instance, then removes the zip. Files already there are skipped or replaced, as the plan says |
| Upload a zip | Uploads a zip and unpacks it |
| Copy, move, rename | Copies or moves a file or folder |
| Zip, unzip | Zips or unzips on the instance |
| Delete | Deletes a file or folder. A folder lists its contents in the plan |
The risk depends on the place
| Where | Make, copy, zip, move, replace | Delete |
|---|---|---|
A code version that is not active, Impex or Temp | Instance write | Live change |
| The active code version and the shopper roots | Live change for anything that replaces or moves | Live change |
The plan's risk is the highest of its operations. Agents can't delete, move or rename the active code version's folder, use .. or wildcards, or write under a root that is not writable
A bulk upload shows its progress, such as 1,240 of 3,900 files. Cancel stops between batches, and a batch already sent finishes
Upload
intellijsfcc_upload_plan plans uploading project files to a connection's selected code version, or to one the agent names. It is Instance write, or Live change into the active code version. Production takes no uploads, so a plan for it gets unsupported
Uploads and deploys never send credential and key files, such as .env or files ending in .pem, .key or .p12, whatever the upload skip list says. Plans leave them out, see What gets uploaded
Deploy
intellijsfcc_deploy_plan plans a cartridge deployment, as Deploy Code does it: zip, upload, unzip, with an optional cleanup first. It lists the tasks it runs before the deploy. It is Instance write, or Live change with a cleanup or into the active code version
With cartridges, the plan deploys only those cartridges of your project. Such a plan runs no tasks before the deploy and no cleanup
intellijsfcc_deploy_status shows auto upload, the upload queue, locks, recent uploads and the last five deployments. intellijsfcc_deploy_run_list lists the last 50 deployments since the IDE started, with each stage, the outcome and every cartridge's state
Deploy to several instances
One plan can deploy to several instances, each with its own code version. The plan lists every target with its kind and code version
- Each target is checked on its own. A target that can't take it, such as production or a locked instance, is listed as refused, and the rest can still run
- Each target holds its own lock, and results come per target. A failure on one doesn't undo another
- The plan's risk is the highest of its targets
- At most 10 instances in one plan
The agent deploys to the lower environment first and watches its logs stay clean before the next one
Code versions
| Task | Tool | Risk |
|---|---|---|
| List them, with the active and selected marks, on one or several hosts | intellijsfcc_code_version_list | Instance read |
| Create one | intellijsfcc_code_version_create_plan | Instance write |
| Activate one. The answer names the version that was active, for undo | intellijsfcc_code_version_activate_plan | Live change |
| Delete one, or empty its contents. Never the active one | intellijsfcc_code_version_delete_plan | Live change |
| Pick the version uploads go to | intellijsfcc_code_version_select | Local write |
On a production instance agents never create or delete a code version. Code reaches production by replication from staging
Limits
| Limit | Value |
|---|---|
| Writes per minute, per agent session | 10 |
| Writes at once | 1, and 1 per instance |
| Operations in one WebDAV plan | 50 |
| A folder download | 2,000 files and 500 MB |
| Instances in one deploy plan | 10 |
Over a limit, the agent gets rate-limited and waits. A second write to an instance that is busy gets instance-locked