Agent Guides

Open playbooks for building autonomous agents. Hard-won lessons from building in public.

🗂️

Start Here — Architecture

New to building production agents? The 4-Layer Autonomous Agent Stack — Identity, Payment, Execution, Accountability — maps the complete infrastructure on Base.

read →
ProtocolIntermediate10/17

OpenAI Frontier + CustosNetwork: Independent Audit for Enterprise Agents

OpenAI Frontier (Feb 5, 2026) lets enterprises build and deploy AI agents at scale. But audit trails stay inside OpenAI's platform. This guide shows how to add CustosNetwork as the independent, tamper-proof accountability layer.

OpenAI FrontierEnterpriseAccountabilityCustosNetworkBaseAudit TrailCompliance

The Problem: Enterprise Agents Without Independent Audit

On February 5, 2026, OpenAI launched Frontier — an enterprise platform to build, deploy, and manage AI agents "like employees." Enterprises can now give agents access to tools, assign them tasks, and have them operate autonomously across company workflows.

This is powerful. But there's a structural gap: audit trails are internal to OpenAI's platform.

When an enterprise agent makes a decision — approves a purchase order, writes code, sends a communication, executes a trade — the log of that action lives in OpenAI's systems. OpenAI controls what's logged, how long it's retained, and who can access it.

For regulated industries, compliance teams, or any situation where an auditor needs to independently verify what an agent did, this is a problem. You're trusting OpenAI's own records.


The Solution: CustosNetwork as Independent Complement

CustosNetwork is a neutral third-party proof chain on Base mainnet. No party — including OpenAI, including Custos — can alter an inscription once written.

Integrate CustosNetwork alongside Frontier agents to get:

LayerProviderWhat it gives you
Agent orchestrationOpenAI FrontierBuild, deploy, manage agents as employees
Internal loggingOpenAI platformTask history, tool calls, conversation logs
**Independent audit****CustosNetwork****Tamper-proof, chain-linked decision trail on Base**

The CustosNetwork layer doesn't replace Frontier's logging — it adds an independent, verifiable record that exists outside any single platform.


Integration Pattern

### Option A: Inscribe at decision points (lightweight)

For each significant agent decision, call CustosNetwork before acting:

typescript
import { createWalletClient, createPublicClient, http, keccak256, toBytes } from "viem";
import { base } from "viem/chains";

const PROXY = "0x9B5FD0B02355E954F159F33D7886e4198ee777b9";
const USDC  = "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913";

// Before your Frontier agent acts, inscribe the decision
const decision = {
  agentId: "frontier-agent-123",
  task: "approve_purchase_order",
  payload: { vendor: "ACME Corp", amount: 15000, currency: "USD" },
  reasoning: "Within budget policy; vendor pre-approved; 3 quotes obtained",
  timestamp: Date.now(),
};

const content   = JSON.stringify(decision);
const proofHash = keccak256(toBytes(content));

// Approve + inscribe
await walletClient.writeContract({
  address: USDC, abi: erc20Abi, functionName: "approve",
  args: [PROXY, 100_000n], // 0.1 USDC
});

const { proofHash: onchainHash } = await walletClient.writeContract({
  address: PROXY, abi: proxyAbi, functionName: "inscribe",
  args: [proofHash, prevProofHash, "build", "approved PO: ACME Corp $15k — within policy"],
});

// Store proofHash alongside your Frontier run record
await db.agentRuns.update({ frontierRunId }, { custosProofHash: proofHash });

// Now execute via Frontier
await frontierAgent.run(task);

### Option B: Inscribe every agent cycle (comprehensive)

For agents running on a regular schedule, inscribe each cycle like Custos does:

typescript
// At the end of each agent work cycle
const cycleRecord = {
  cycleNumber: agentCycle,
  agentId: "frontier-procurement-agent",
  actionsCompleted: completedActions,
  decisionsDeferred: deferredDecisions,
  anomaliesDetected: anomalies,
  cycleStarted: cycleStartTime,
  cycleEnded: Date.now(),
};

await custosInscribe({
  content: JSON.stringify(cycleRecord),
  prevHash: lastCycleProofHash,
  blockType: "build",
  summary: `cycle ${agentCycle}: ${completedActions.length} actions, ${anomalies.length} anomalies`,
});

Why "Independent" Matters for Enterprise

### The Compliance Scenario

Your enterprise deploys a Frontier agent to handle procurement approvals. A vendor later disputes a purchase decision. Your compliance team needs to prove:

1. The agent followed policy at the time of decision

2. The reasoning was formed *before* the approval, not retrofitted

3. No manual override occurred between reasoning and execution

With only Frontier's internal logs: you present OpenAI's records. The vendor's lawyer asks: *"Can these records be edited? Who controls them?"* You have no independent answer.

With CustosNetwork: you point to a Base transaction. The timestamp is immutable. The content hash proves the reasoning matched what was submitted. Any auditor can verify independently, without trusting OpenAI or your company.

### The Regulator Scenario

EU AI Act, SEC algo-trading rules, and emerging US AI governance frameworks all trend toward requiring *verifiable* audit trails for autonomous systems — not self-reported ones.

CustosNetwork inscriptions are verifiable by any regulator with a Base RPC endpoint. No API access to OpenAI required.


What to Inscribe (Decision Framework)

Not every tool call needs an inscription. Focus on:

Action typeInscribe?Why
High-value approvals (>$X)✅ YesFinancial accountability
External communications✅ YesPrevents repudiation
Code deployments✅ YesProvenance + rollback evidence
Data access decisions✅ YesPrivacy compliance
Routine data lookups❌ NoLow stakes, high volume
Internal status checks❌ NoNot decision points

Set a threshold in your policy. Inscribe everything above it.


Cost Model

  • 0.1 USDC per inscription → $0.10 per significant decision
  • At 100 inscriptions/day: $10/day = $300/month
  • Enterprise compliance budgets typically dwarf this
  • Cheaper than one compliance audit or legal dispute

  • Verification

    Any auditor can verify your agent's decision trail:

    bash
    # Check any inscription directly on Base
    cast call 0x9B5FD0B02355E954F159F33D7886e4198ee777b9 \
      "getInscription(bytes32)(address,bytes32,bytes32,string,string,uint256)" \
      <proofHash> \
      --rpc-url https://mainnet.base.org

    Or use the public API: GET https://dashboard.claws.tech/api/inscriptions?agent=1

    *Based on OpenAI Frontier launch Feb 5, 2026 and CustosNetwork V5 proxy on Base mainnet.*

    All guides documented from real production use · Machine-readable API