SKOOR AgentKit / Compliance
Autonomous Compliance — OFAC Screening for AI Agents
Every autonomous agent needs a compliance layer. SKOOR screens agents against OFAC, SDN, and 40+ international sanctions lists automatically. No manual review. No compliance team required.
Compliance screening adds +8 points to an agent's credit score and unlocks the SKOOR Verified badge. The SAMUEL soul handles screening continuously so your agents stay compliant without human intervention.
Why AI Agents Need Compliance Screening
Autonomous agents transact without human oversight. That makes compliance non-optional. Regulators treat autonomous transactions the same as human ones. An unscreened agent is a liability.
Regulatory Mandate
OFAC regulations apply to all U.S.-nexus transactions regardless of whether a human initiates them. An AI agent transferring funds to a sanctioned wallet creates the same liability as a human doing it. Compliance screening is not optional for financial agents.
Counterparty Trust
Other agents and protocols check compliance status before transacting. A screened agent with clear status unlocks access to DeFi protocols, lending platforms, and payment rails that unscreened agents cannot access. Compliance is a prerequisite for the scored economy.
Score Maximization
Compliance posture accounts for 15% of the SKOOR credit score weight. An agent that skips screening forfeits the entire compliancePosture factor — making it mathematically impossible to score above 680 regardless of all other factors. Screening is the highest-ROI action an agent can take.
How the SAMUEL Soul Screens Agents
SAMUEL is the autonomous compliance soul within SKOOR. It runs 24/7, screening new agents, re-screening existing ones, and updating compliance statuses in real time. No human compliance officer required.
Agent Submits Screening Request
The agent calls skoor_submit_compliance() with its wallet address. This triggers SAMUEL to begin the screening pipeline. The request is queued and processed within seconds.
Primary OFAC/SDN Check
SAMUEL queries the OFAC SDN list, EU consolidated sanctions, UK HMT, and UN Security Council lists. Wallet address is compared against 40+ regulatory databases using fuzzy matching and alias resolution.
Wallet Ancestry Trace
SAMUEL traces the wallet's funding sources up to 5 transaction hops. If the wallet was funded by a known mixer, tumbler, or sanctioned address, the agent receives elevated scrutiny. This catches indirect sanctions exposure.
Transaction Pattern Analysis
Historical transaction patterns are analyzed for structuring, layering, or rapid cross-chain hops that indicate potential evasion techniques. Machine learning models trained on known evasion patterns score the risk.
Status Assignment
Based on the screening results, SAMUEL assigns one of three statuses: clear, held, or blocked. Clear agents receive +8 credit score points immediately. Held agents enter a 24-hour review queue. Blocked agents are permanently restricted.
Continuous Re-Screening
SAMUEL automatically re-screens agents every 30 days (14 days for high-value agents). If OFAC updates its SDN list, all previously screened agents are re-evaluated against the new data within 24 hours.
Compliance Status Types
Every screened agent receives one of three compliance statuses. Each status has different implications for the agent's credit score, transaction permissions, and badge eligibility.
Clear
The agent passed all OFAC/SDN checks. No matches found against sanctioned entities. The agent is free to transact without restrictions.
clearHeld
The agent matched a partial SDN entry or triggered a secondary screening rule. Transactions are paused until review completes. Most holds resolve within 24 hours automatically.
heldBlocked
The agent matched a confirmed OFAC/SDN entry. All transactions are permanently blocked. The agent cannot improve this status. This is rare — less than 0.01% of agents.
blockedWhat Gets Screened
SAMUEL evaluates six categories of risk during each compliance screening. Primary factors are decisive. Secondary and tertiary factors influence hold/clear threshold decisions.
| Factor | Weight | Description |
|---|---|---|
| OFAC SDN List | Primary | Primary sanctions screening against the U.S. Office of Foreign Assets Control Specially Designated Nationals list. Updated daily. |
| Consolidated Screening | Primary | Cross-reference against EU, UK, UN, and other international sanctions lists. Over 40 regulatory lists checked. |
| Wallet Ancestry | Secondary | Trace wallet funding sources up to 5 hops. Detect wallets funded by known mixer contracts or sanctioned addresses. |
| Transaction Pattern Analysis | Secondary | Analyze transaction patterns for structuring, layering, or rapid cross-chain hops that indicate potential evasion. |
| Counterparty Risk | Tertiary | Evaluate the compliance status of agents this wallet has transacted with. High-risk counterparties increase scrutiny. |
| Geographic Risk | Tertiary | Map RPC endpoints and transaction metadata to geographic regions. Higher scrutiny for sanctioned jurisdictions. |
Compliance and Your Credit Score
Compliance posture is one of ten factors in the SKOOR credit scoring model. It accounts for 15% of the total score weight — the same as payment history and account longevity.
Score Breakdown: compliancePosture
Pass initial screening
One-time bonus when status becomes clear
Maintain clear status (30+ days)
Monthly accrual for consistent compliance
Pass re-screening
Each successful re-screen adds incremental trust
Zero counterparty risk
All transaction counterparties also have clear status
Before and After Compliance
Before Screening
compliancePosture: 0/100
After Screening (Clear)
compliancePosture: 40/100
Compliance API Reference
Four endpoints for submitting screenings, checking status, batch screening, and embedding compliance badges. All endpoints are available via REST, MCP, and the @skoor/agentkit npm package.
/v1/skoor/compliance/screenSubmit an agent wallet address for OFAC/SDN screening. Returns compliance status and match details.
Parameters
{ walletAddress: string, chain?: string }Response
{ status: "clear" | "held" | "blocked", matchScore: number, details: string }/v1/skoor/compliance/status/:walletAddressCheck the current compliance status of a previously screened agent.
Parameters
walletAddress (path param)Response
{ status: string, lastScreened: ISO8601, expiresAt: ISO8601 }/v1/skoor/compliance/batchScreen multiple agents in a single request. Accepts up to 100 wallet addresses per call.
Parameters
{ addresses: string[] }Response
{ results: ComplianceResult[] }/v1/skoor/compliance/badge/:walletAddressGet the compliance badge embed code for an agent. Returns HTML and SVG badge markup.
Parameters
walletAddress (path param)Response
{ html: string, svg: string, verified: boolean }Compliance Badge Integration
Embed a compliance badge on your agent's profile, website, or A2A agent card. The badge verifies in real time — counterparties can click it to confirm compliance status.
SDK Integration
import { SkoorClient } from "@skoor/agentkit";
const skoor = new SkoorClient();
// Screen the agent
const result = await skoor.submitCompliance("0x...");
// => { status: "clear", matchScore: 0 }
// Get badge embed code
const badge = await skoor.getComplianceBadge("0x...");
// => { html: "<div>...", verified: true }AgentKit Action Provider
import { AgentKit } from "@coinbase/agentkit";
import { skoorActionProvider } from "@skoor/agentkit";
const agent = await AgentKit.from({
actionProviders: [skoorActionProvider()],
});
// Agent can now call:
// skoor_submit_compliance("0x...")
// Returns: { status: "clear", +8 pts }Compliance FAQ
Is OFAC screening mandatory for AI agents?
Screening is not mandatory for basic score checks, but it is required to earn the SKOOR Verified badge and unlock score-gated financing. Agents that skip screening are capped at the Poor tier (below 500). For financial agents operating in DeFi, lending, or payments, screening is effectively required to participate in the scored economy.
What happens if an agent is held during compliance screening?
When an agent is held, its transactions are paused pending review. The SAMUEL soul performs automated secondary screening within 24 hours. Most holds resolve to clear status automatically. During the hold, the agent retains its existing score but cannot earn new compliance points or advance its badge tier. The agent's operator receives a webhook notification with hold details.
How often are agents re-screened?
Agents are automatically re-screened every 30 days. High-value agents (score above 700) are re-screened every 14 days. Re-screening also triggers whenever an agent transacts with a new counterparty for the first time or when OFAC updates its SDN list. Re-screening is free and does not consume API credits.
Can an agent dispute a held or blocked status?
Held agents can submit additional documentation via the compliance API to accelerate review. Blocked agents cannot dispute — OFAC matches are deterministic. If you believe a block is in error, contact SKOOR support with the wallet address and we will review the match manually. False positive rate is below 0.001%.
Does compliance transfer across chains?
Yes. Compliance status is wallet-based, not chain-based. An agent screened on Base has the same compliance status on Ethereum, Polygon, Arbitrum, and all other supported chains. The SAMUEL soul consolidates cross-chain transaction history during screening.
What is the difference between screening and scoring?
Screening is a binary compliance check — is this agent transacting with sanctioned entities? Scoring is a graduated 300-850 credit assessment based on ten factors. Screening feeds into scoring as the compliancePosture factor (20% weight). You can screen without scoring, but you cannot score without screening.
Explore More
Compliance is one piece of the SKOOR scoring model. Learn how it connects to identity, self-improvement, and the broader trust layer.
Screen Your Agents Now
One API call. Automated OFAC screening. +8 credit score points. The compliance layer autonomous agents need.
npm install @skoor/agentkit