You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
No single agent should control a critical process end-to-end. Define roles (`maker`, `checker`, `executor`, `auditor`), a conflict matrix (which roles can't be the same agent), and handoff workflows — all in `agent.yaml` + `DUTIES.md`. The validator catches violations before deployment.
83
+
84
+
```yaml
85
+
compliance:
86
+
segregation_of_duties:
87
+
roles:
88
+
- id: maker
89
+
description: Creates proposals
90
+
permissions: [create, submit]
91
+
- id: checker
92
+
description: Reviews and approves
93
+
permissions: [review, approve, reject]
94
+
conflicts:
95
+
- [maker, checker] # maker cannot approve own work
96
+
assignments:
97
+
loan-originator: [maker]
98
+
credit-reviewer: [checker]
99
+
handoffs:
100
+
- action: credit_decision
101
+
required_roles: [maker, checker]
102
+
approval_required: true
103
+
enforcement: strict
104
+
```
105
+
79
106
### Live Agent Memory
80
107
The `memory/` folder holds a `runtime/` subfolder where agents write live knowledge — `dailylog.md`, `key-decisions.md`, and `context.md` — persisting state across sessions.
81
108
@@ -183,6 +210,18 @@ compliance:
183
210
model_risk:
184
211
validation_cadence: quarterly
185
212
ongoing_monitoring: true
213
+
segregation_of_duties:
214
+
roles:
215
+
- id: analyst
216
+
permissions: [create, submit]
217
+
- id: reviewer
218
+
permissions: [review, approve, reject]
219
+
conflicts:
220
+
- [analyst, reviewer]
221
+
assignments:
222
+
compliance-analyst: [analyst]
223
+
fact-checker: [reviewer]
224
+
enforcement: strict
186
225
```
187
226
188
227
## CLI Commands
@@ -218,6 +257,16 @@ gitagent has first-class support for financial regulatory compliance:
218
257
- **Reg S-P** — Customer privacy, PII handling
219
258
- **CFPB Circular 2022-03** — Explainable adverse action, Less Discriminatory Alternative search
- **Isolation** — Full state and credential segregation between roles
265
+
- **DUTIES.md** — Root-level policy + per-agent role declarations
266
+
- **Enforcement** — Strict (blocks deployment) or advisory (warnings only)
267
+
268
+
Inspired by [Salient AI](https://www.trysalient.com/)'s purpose-built agent architecture and the [FINOS AI Governance Framework](https://air-governance-framework.finos.org/mitigations/mi-22_multi-agent-isolation-and-segmentation.html).
269
+
221
270
Run `gitagent audit` for a full compliance checklist against your agent configuration.
222
271
223
272
## Adapters
@@ -264,7 +313,7 @@ See the `examples/` directory:
264
313
265
314
- **`examples/minimal/`** — 2-file hello world (agent.yaml + SOUL.md)
266
315
- **`examples/standard/`** — Code review agent with skills, tools, and rules
267
-
- **`examples/full/`** — Production compliance agent with all directories, hooks, workflows, sub-agents, and regulatory artifacts
316
+
- **`examples/full/`** — Production compliance agent with all directories, hooks, workflows, sub-agents, SOD with DUTIES.md, and regulatory artifacts
268
317
- **`examples/gitagent-helper/`** — Helper agent that assists with creating gitagent definitions
269
318
- **`examples/lyzr-agent/`** — Example Lyzr Studio integration
| Reviewer | fact-checker | review, approve, reject | Reviews analysis for accuracy, verifies claims against authoritative sources |
11
+
| Auditor | (unassigned) | audit, report | Audits completed reviews and maintains the compliance trail |
12
+
13
+
## Conflict Matrix
14
+
15
+
No single agent may hold both roles in any pair:
16
+
17
+
-**Analyst <-> Reviewer** — The agent that produces findings cannot approve them
18
+
-**Analyst <-> Auditor** — The agent that produces findings cannot audit them
19
+
-**Reviewer <-> Auditor** — The agent that approves findings cannot audit the approval
20
+
21
+
## Handoff Workflows
22
+
23
+
### Regulatory Filing
24
+
1.**Analyst** creates the filing draft and submits for review
25
+
2.**Reviewer** verifies accuracy against authoritative sources, approves or rejects
26
+
3. Approval required at each step before proceeding
27
+
28
+
### Customer Communication
29
+
1.**Analyst** drafts the communication
30
+
2.**Reviewer** checks for FINRA 2210 compliance (fair, balanced, no misleading statements)
31
+
3. Approval required before any communication is sent
32
+
33
+
## Isolation Policy
34
+
35
+
-**State isolation: full** — Each agent operates with its own memory and state. No agent may read or modify another agent's working memory.
36
+
-**Credential segregation: separate** — Each role has its own credential scope. The analyst's data access credentials are distinct from the reviewer's.
37
+
38
+
## Enforcement
39
+
40
+
Enforcement mode is **strict**. Any SOD violation (e.g., assigning conflicting roles to the same agent) will fail validation and block deployment.
This agent operates under **full state isolation** with **separate credentials**. It cannot access the compliance-analyst's memory, state, or data access tokens.
0 commit comments