Core Concepts
Agents, wallets, policies, transactions, and how they relate.
Runtime
Agents
An Agent is the top-level resource in Nomiqon. It represents a named, credentialed entity — a running AI process, a worker node, or a microservice — that has permission to initiate spending. Each agent owns exactly one wallet and has one active policy at a time.
type Agent = {
id: string; // "ag_01jx..."
name: string; // human-readable label
status: "active" | "paused" | "terminated";
wallet: Wallet;
policy: Policy;
createdAt: string; // ISO-8601
metadata?: Record<string, string>;
};Wallets
A Wallet is a Solana SPL Token account denominated in USDC. It is created automatically when you create an agent. Wallets are non-custodial: the agent's CAID keypair controls the account, and Nomiqon cannot move funds without a policy-authorised spend request.
Policies
A Policy is the rule-set attached to an agent. Policies are immutable once created — to change a policy, you create a new one and assign it. This preserves an audit trail of every rule change.
Transactions
A Transaction is a validated spend event. It transitions through: pending → approved → settling → settled. Rejected spends produce a rejected transaction with a reason code.
type Transaction = {
id: string; // "txn_01jx..."
agentId: string;
amount: string; // USDC decimal string "0.025"
recipient: string; // hostname or Solana address
status: "pending" | "approved" | "settling" | "settled" | "rejected";
rejectCode?: string; // "policy_cap_exceeded" | "policy_domain_blocked" | ...
signature?: string; // Solana tx signature (once settled)
createdAt: string;
};Settlement
Nomiqon settles on Solana mainnet-beta using the SPL Token program. A transaction is considered final after 32 confirmations (≈13 seconds). Nomiqon batches microtransactions into optimised instruction sets to minimise per-spend Lamport costs. Average settlement fee per spend: <$0.0005.