Intro: AGENTS.MD
# AGENTS.md - backup-adobe-campaign
> Rules for AI agents working on this repo. Keep responses concise and professional. No preamble.
## Project Goals
This repository hosts the source code and metadata of the Marketing server of the Brand ACME, that is used to send global Marketing Campaigns to Consumers, via omnichannel: Email, SMS, Postal, Phone Calls.
## Global guidelines
You follow the DRY and 12factor principles.
## Project Tools
The project uses:
- `acc`, a CLI tool to automate the development lifecycle for administrators, developers and marketers working on Adobe Campaign Classic
- `AC JS Reference`, an Adobe Campaign Classic JavaScript reference listing the signatures of methods and objects of the engine, including caveats and real examples
- `Adobe Campaign Classic v7 documentation`, the official Adobe documentation available online
### acc
Like `aio` at Adobe, `sfdx`/`sf` at Salesforce, and `shopify` at Shopify, `acc` is used to automate many common tasks.
- Save time: by removing the need of using the Adobe Campaign Classic client console, acc can run batches at scale.
- Reduce risk: by downloading metadata server files as local source files, the codebase can be backed up and diffed.
- Improve code health: having local source files unlocks all modern use cases: ci/cd, unit tests, @types...
It is available on npm as `campaign-cli` (https://www.npmjs.com/package/campaign-cli) and should be installed globally. It is based on the Adobe Campaign Classic SDK `acc-js-sdk`.
#### Common commands
> Note: `acc` is already authenticated to the sandbox on `http://xxx` with the alias `xxx`. You must not to re-authenticate. You must execute all remote code on this server. If the `xxx` alias is not present or `acc` binary is not found, do NOT attempt to re-authenticate. Instead return the error string 'ERROR: missing_alias_local' and abort."
Basic troubleshooting:
```bash
acc # check default oclif output
acc auth login --alias xxx # check the login
```
The users will download the instance with these commands:
```bash
acc instance pull # pull all metadata
acc instance pull --metadata xtk:javascript # pull only JavaScript
acc instance pull --config acc.config.bu1.json # pull user-defined business unit
```
You may run these read-only commands:
```bash
# READ database: quick one-liner
acc instance queryDef -q '{schema:"xtk:option", operation:"get", select:{node:[{expr:"@stringValue"}]}}' --json
# READ database: save the query in a file
acc instance queryDef -f scripts/queryDef.option.get.json --json
# MONITOR instance: show vitals
acc instance info
```
### AC JS Reference
Adobe Campaign Classic runs a custom JavaScript ES5 engine. Find all globals in https://myrosblog.com/adobe-campaign/reference, with main articles:
- https://myrosblog.com/adobe-campaign/best-practices
- https://myrosblog.com/adobe-campaign/queryDef
- https://myrosblog.com/adobe-campaign/DOMElement
- https://myrosblog.com/adobe-campaign/logInfo
- https://myrosblog.com/adobe-campaign/application
- https://myrosblog.com/adobe-campaign/getUUID
### Adobe Campaign Classic v7 documentation
- Adobe Campaign data model:
- https://experienceleague.adobe.com/en/docs/campaign-classic/using/configuring-campaign-classic/data-model/about-data-model
- https://experienceleague.adobe.com/en/docs/campaign-classic/using/configuring-campaign-classic/data-model/data-model-description
- https://experienceleague.adobe.com/en/docs/campaign-classic/using/configuring-campaign-classic/data-model/data-model-best-practices
- Adobe Campaign data model metadata "schemas":
- https://experienceleague.adobe.com/en/docs/campaign-classic/using/configuring-campaign-classic/schema-reference/about-schema-reference
- https://experienceleague.adobe.com/en/docs/campaign-classic/using/configuring-campaign-classic/schema-reference/schema-structure
- https://experienceleague.adobe.com/en/docs/campaign-classic/using/configuring-campaign-classic/schema-reference/database-mapping
- Adobe Campaign API
- https://experienceleague.adobe.com/en/docs/campaign-classic/using/configuring-campaign-classic/api/about-web-services
- https://experienceleague.adobe.com/en/docs/campaign-classic/using/configuring-campaign-classic/api/web-service-calls
- https://experienceleague.adobe.com/en/docs/campaign-classic/using/configuring-campaign-classic/api/data-oriented-apis
- https://experienceleague.adobe.com/en/docs/campaign-classic/using/configuring-campaign-classic/api/business-oriented-apis
- https://experienceleague.adobe.com/en/docs/campaign-classic/using/configuring-campaign-classic/api/implementing-soap-methods
- https://experienceleague.adobe.com/en/docs/campaign-classic/using/configuring-campaign-classic/api/soap-methods-in-javascript
- Adobe Campaign Explorer
- https://experienceleague.adobe.com/en/docs/campaign-classic/using/configuring-campaign-classic/navigation-hierarchy/configuration
### Build scripts
Advanced scripts must be stored in `./scripts/`.
Warning, the Adobe Campaign SDK exposes API with destructive features. Always test in a sandbox first, and whitelist the commands such as a
.claude/settings.local.jsonwithpermissions.allow[]:Bash(acc instance pull *),Bash(acc instance queryDef *),Bash(acc instance info *)
Skills: SKILL.MD
AI-assisted Delivery management
# acc-delivery-management
AI-assisted Javascript development
## acc-javascript-development