Platform
From first scan to merged pull request, in one place
A free scan, a Blueprint, a client portal where your team decides and follows delivery, automation that opens pull requests in your repository, and an audit trail for every step.
The journey
Five stages, each visible to your team
The scan needs no account. Everything after it happens in the client portal and in your own repository.
Scan
Upload a Best Practices Analyzer CSV, a repository zip, or answer eight questions. The scan runs in your browser; only findings, file paths and line numbers are kept, never your code.
Blueprint
A plan from the findings: what blocks Cloud Service, which changes are automatic, the delivery phases and the decisions you need to make. Reviewed by an engineer, downloadable as a PDF.
Decide
Findings that need a product call, such as custom authentication or AEM Communities, become decisions your team approves or rejects in the portal, with comments.
Deliver
We connect your repository, open one pull request per change pattern, and track each one until you merge it. Eleven delivery phases show where the project stands.
Prove
Every action, model call and approval goes into a hash-chained audit trail. Your team can export it, verify the chain, or stream it to Splunk.
Client portal
One place for decisions, delivery and proof
Your team, your AEM partner and our engineers work from the same project, with every action written to the audit trail.
Workspaces and teams
One workspace per company. Invite colleagues and your current AEM partner. Sign in with an email link, or with your company's single sign-on.
Scans and Blueprints
Add scans at any time. Blueprints combine code and BPA findings and show the planned effort, approved once our team signs it off.
Decisions
Product decisions with approve, reject and comment, recorded with who decided and when.
Delivery plan and pull requests
Phase status and every pull request with its live status from your Git host.
Audit trail
Tamper-evident log with a live "chain intact" check, exportable as CSV or JSON.
Integrations
Jira, Confluence, Cloud Manager, Slack or Teams, single sign-on and Splunk, each switched on per project by your team.
Automation
Automation, with a person at the gate
Code does what code can do. The private model does the rest, and every change still reaches you as a pull request someone approved.
- Deterministic changes. 5 codemods (Commons Lang 2 → 3, Log4j 1 → SLF4J, OSGi configs → .cfg.json, CQ XSS → Sling XSS, CQ Workflow → Granite Workflow) are applied by code, with a review checklist in each pull request.
- AI rewrites, privately. They run only on AI models on servers we operate, and must pass deterministic checks before a person sees them, for example that no imports are invented and no public method changes in one file only. Patterns the checks show are not yet reliable are done as assisted work by an engineer.
- Test plans and BPA triage. Drafted by the same private AI and reviewed by our QA engineers.
- Deprecation Watch. Connected repositories are re-scanned on every push and nightly, with an alert when new Adobe removals affect your code.
Integrations
Connects to the tools you already use
Each integration is switched on per project by your team, with credentials you create and can revoke. Credentials are encrypted before they are stored.
| Connects to | You provide | What it does |
|---|---|---|
| GitHub (being set up) | Install our GitHub App on the repository, once it is available | Server-side scan, one pull request per change pattern, status sync from webhooks, re-scan on push |
| GitLab (cloud or self-managed) | A project access token | Scan, merge requests, status and push webhooks |
| Azure DevOps Repos | A personal access token | Scan, pull requests, service-hook status sync |
| Bitbucket Cloud | A repository access token | Scan, pull requests, signed webhooks |
| Jira Cloud | Site, account email and API token | An epic with one issue per finding type; issue status read back into the portal |
| Confluence | The same Atlassian account | The Blueprint published as a page in your space, updated when it changes |
| Adobe Cloud Manager | Adobe I/O service credentials | Pipelines, last build and failed code-quality metrics, read-only |
| Slack and Microsoft Teams | An incoming webhook | Blueprint approved, decisions needed, phase changed, pull requests opened |
| Single sign-on | Your Okta, Microsoft Entra ID, Google Workspace, ADFS or other SAML 2.0 / OIDC provider | Sign-in through your identity provider, optionally required for your domain |
| SCIM 2.0 | A token from the portal, in your identity provider | Users added and removed automatically |
| Splunk | An HTTP Event Collector address and token | Audit events streamed as they happen, retried if delivery fails |
| Your own systems | An https endpoint | Signed webhooks for project events |
How we handle code, credentials and access is on the security page.
See what your migration involves
Start with the scan: blockers, fixes and an effort range in a few minutes, without creating an account. When you are ready, sign in to the portal and add it to a project.