I never used Devin.
Complete all steps in order. No, no, no. Skip Step 4.
A Guide imperative and sequential — tells you exactly what to do in that order, No deviations. At the end, your repository will be cloned, configured and with Devin running a Spec Real.
Scope of this guide
This guide assumes that you have access to Devin (Cognition), Flosum installed on your org and permission to create sandboxes. If you don't, complete the prerequisites below before you begin.
I never used Devin.
Complete all steps in order. No, no, no. Skip Step 4.
I know Devin.
You can jump right into the Step 5 after Step 2.
Tech Lead
In Step 2, declare a domain per team. In Step 4, create a Shared Blueprint with the quad.
Before you start
Mark each item before moving forward. Jumping a prerequisite here will lock you in the middle of the guide.
All set.
You confirmed the seven prerequisites. Advance to Step 1 →
Step 1 · ~5 min
1. Do the fork
Official template
Github. with/issei/sf-repo
Click Fork in the upper right corner.
2. Clone your fork
git clone https://github.com/<seu-org>/sf-repo.git cd sf-repo
3. Check out the structure
sf-repo/ ├── knowledge-base/ ← você vai editar isso no Passo 2 ├── specs/ ← você vai criar aqui no Passo 5 ├── playbooks/ ← não mexa ainda └── scripts/ ← vai rodar no Passo 7
Step 2 · ~10 min
This is the stage most important and more ignored. Devin without context is a dev without onboarding — will guess conventions, step on methadata from other teams and generate rework. Three files, ten minutes, huge difference.
Open knowledge-base/metadata-ownership.yaml and replace
for its real context:
domains: - name: CommercePricing # nome do seu domínio team: pricing-squad # nome do seu time objects: [Order, Product2] # objetos que seu time é dono classes_prefix: CP_ # prefixo de naming das suas classes - name: CustomerService team: cs-squad objects: [Case, Contact] classes_prefix: CS_
Open knowledge-base/org-inventory.md and list your orgs
real:
## Orgs disponíveis
| Alias | Tipo | Uso |
|-------------|----------|-----------------------------|
| dev-<nome> | Sandbox | Desenvolvimento individual |
| qa | Sandbox | Validação pré-merge |
| preprod | Sandbox | Homologação |
| prod | Produção | Deploy final via Flosum |
Open knowledge-base/flosum-pipeline-map.md and confirm
pipeline:
## Pipeline de promoção dev → qa → preprod → prod Responsável pelo deploy: Flosum (nunca o Devin diretamente)
Step 3 · ~5 min
Web login by alias
# Execute para cada org que vai usar sf org login web --alias dev-<seu-nome> sf org login web --alias qa sf org login web --alias preprod
Why Web Login and Not JWT
In sandboxes Salesforce each dev log in individually. Individual JWT by dev is unviable operationally, and centralizing a systemic user of IC/CD would eliminate the traceability of changes by author — critical information for Audit and Smart Merge. The Web Login preserves identity without compromising the pipeline.
Verification
sf org list
Confirm the aliases appear on the list before moving forward.
Step 4 · ~10 min
In Devin's panel, create a Blueprint pointing to the root of the cloned repository. Ensure that the environment has:
sf)
sf-repo
Official documentation
docs.devin.ai/onboard-devin/environment/blueprints
The file already exists in the template. Edit only these two lines:
# Contexto do agente Repositório: sf-repo — domínio: <seu-domínio> Org principal de validação: <alias-da-sua-sandbox>
Verification — test prompt
Leia knowledge-base/org-inventory.md e me diga
quais orgs estão disponíveis.
If Devin replies with the orgs you registered in Step 2, the environment is set Right.
Tech Lead
Create a shared Blueprint and distribute already filled Agents.md to the square. Every dev does only Step 3 web login individually.
Step 5 · ~10 min
Use a demand real of your backlog — not an invented example. A Spec does not need to be perfect; needs to be honest About what you know Now. Devin will lock where Spec is vacant, and that's useful -- that's the signal to refine before he asks. Code.
Spec Full Template
# SPEC: [<TICKET>] <título da demanda> ## 1. Contexto <Por que essa demanda existe? Qual dor de negócio resolve?> ## 2. Requisitos funcionais - <comportamento observável 1> - <comportamento observável 2> ## 3. Regras técnicas - Padrão: conforme /playbooks/02_apex.md - Cobertura mínima: 85% - Prefixo de naming: <prefixo do seu domínio>_ ## 4. Limites (out-of-scope) - NÃO modificar Profiles ou Permission Sets - NÃO tocar em metadata fora de <seu-domínio> ## 5. Critérios de aceite - [ ] <critério testável e mensurável 1> - [ ] check-metadata-ownership.py aprovado ## 6. Guardrails - Auth: sf org login web apenas - Deploy: --check-only em sandbox; promoção via Flosum - Sem destructiveChanges. Sem JWT.
Saving
Save as specs/<TICKET>.md inside the repository.
Tip
If you lock in Context, start with the Acceptance Criteria. The question "how should I know Who's ready?" Answers why alone.
You want to understand why Spec has six sections? → Spec anatomy in the guide complete
Step 6 · ~10 min
Exact prompt to copy
Leia specs/<TICKET>.md e playbooks/02_apex.md. Implemente apenas em force-app/main/default/. Rode scripts/validation/check-metadata-ownership.py antes de finalizar. Pare e me informe se qualquer guardrail falhar.
What to follow (not checklist Conclusion)
If something fails — a decision flow
Symptoms
check-metadata-ownership.py failure
Action
Review metadata-ownership.yaml
(Step 2a) and re-execution.
Symptoms
Tests below the minimum defined in Spec.
Action
Refine the Spec section 3 (Rules — do not ask for more code.
Symptoms
Devin tries to fix the same error 2× or more.
Action
Stop. Refine Spec. Re-execut with the start prompt of this step.
Step 7 · ~5 min
Block 1 — Local validation
python scripts/validation/check-metadata-ownership.py python scripts/validation/check-destructive-changes.py sf project deploy start --check-only --target-org qa bash scripts/salesforce/run-tests.sh
Block 2 — Promotion via Flosum (PR approved and merge on main)
npx @flosum/cli branch sync --branch devin/<ticket>-<slug> npx @flosum/cli package deploy \ --manifest manifest/package-deploy.xml
Critical warning
Devin doesn't run this stage. Flosum is the only official deployer
for shared environments. Never ask Devin to rotate the
flosum cli in QA, PreProd or Prod.
You finished the Quick Start
Individual Dev
Repeat cycle Spec → Devin → Flosum with your next real demand. Every iteration gets faster.
Tech Lead
Fork repository for each team. Adapt
metadata-ownership.yaml by domain. Distribute the Blueprint configured.
All
Read the section of Governance in the complete guide to understand ownership in scale with multiple teams.
Go back to the full guide to understand why each piece.
In short
A guided way out of zero to the configured repository, with the first written specification and Devin running in your Salesforce context in less than an hour — already within a governed treadmill.
Practical starting point for Agent DevOps.
Frequently Asked Questions
Less than 60 minutes from scratch to the first ruled deploy: set up the repository, write the first specification and have Devin running in your Salesforce context.
Access to org Salesforce, Git repository and Devin and Flosum credentials. Quick start covers the initial configuration and the first example spec.
The flow is already governed: the deploy passes through Flosum's treadmill with approvals and validation. The quick start establishes this trail since the first delivery, avoiding the manual "deploy without trace".