Working draft · Agent architecture

Your AI agent needs two maps.

A chart of accounts explains where financial activity belongs. A chain of command explains who may decide.

Research status: Working systems hypothesis. Controller, ERP-product, and audit review remain open.

A general AI system can recognize that an invoice appears to relate to software.

It does not automatically understand whether that software supports internal operations or customer delivery, which entity incurred the expense, when the treatment changed, which evidence controls the classification, or who may approve an exception.

Those answers come from organizational context.

A finance agent needs two maps: how the organization classifies activity and how the organization assigns decision rights.

Map one: Financial context

The financial-context map includes the chart of accounts, entity structure, departments, cost centers, products, customers, projects, reporting treatment, materiality thresholds, policy dates, historical decisions, and permitted exceptions.

The chart of accounts is part of this map, but not all of it. The system may need to understand why a classification applies and when it stopped applying.

Map two: Decision authority

The authority map answers who owns the policy, who supplies operational context, who may recommend a treatment, who approves it, who may override the default, who executes the action, and who resolves disagreement.

Technical permission and business authority are not the same thing. A person or agent may be able to update a record without being authorized to make the underlying accounting decision.

Context has a timeline

Consider a synthetic vendor whose service was historically treated as internal software expense. Beginning in a later period, part of the service directly supports a customer-facing product.

A system relying only on historical frequency may repeat the old treatment. A context-aware system needs the effective date, policy owner, usage evidence, approved treatment, and exception rules.

Context fieldExample value
Prior treatmentSoftware expense
Current treatmentCost of revenue when linked to customer delivery
Effective dateDefined policy date
Policy ownerController
Operational ownerEngineering operations
Required evidenceApproved policy and usage report
ExceptionMixed use or missing evidence

Retrieval is not governance

Connecting an agent to contracts, policies, prior transactions, and internal messages can improve context. It can also introduce conflicts.

  • What if the contract and operational tracker disagree?
  • What if an old message contradicts current policy?
  • What if the most frequently retrieved example is obsolete?
  • What if the correct source is applied to the wrong period?
  • What if confidential information enters an unauthorized context?

Retrieval supplies information. Governance determines which information is authoritative.

The decision packet

FieldPurpose
Proposed treatmentStates the recommendation
Applicable periodPrevents obsolete policy use
Authoritative sourceIdentifies controlling evidence
Supporting contextExplains relevant operational facts
Conflicting evidenceMakes disagreement visible
Applied rulesShows deterministic checks
UncertaintyIdentifies what remains unresolved
Required approverRoutes authority correctly
Permitted actionLimits what the system may do
Audit identifierConnects the decision to its history

The agent’s job is not to sound confident. It is to assemble the strongest available decision packet and recognize when that packet is incomplete.

What leaders should ask

  1. Can the agent identify the correct period?
  2. Does it know which source controls each field?
  3. Can it recognize superseded policies?
  4. Can it surface contradictory evidence?
  5. Does it distinguish recommendation from approval?
  6. Can it route the decision to the correct authority?
  7. Can it explain which rule permitted execution?
  8. Can the organization reproduce the decision later?

The strongest finance agent may be the system that knows which questions it is not authorized to answer.