Products
Digital products built on the .do platform - from Agents to Sites
The .do platform enables you to build 8 core digital product types that power autonomous businesses. Each product type is defined as code and deployed instantly.
Agent
Autonomous AI workers that perform jobs within your business or for customers.
---
$type: Product.Agent
name: Bookkeeping Agent
description: Autonomous bookkeeper that processes transactions, categorizes expenses, reconciles accounts
capabilities:
- transaction_processing
- expense_categorization
- account_reconciliation
- tax_preparation
pricing:
model: per_transaction
tiers:
- volume: 1000
price: 0.02
- volume: 10000
price: 0.01
---
Processes financial transactions autonomously with 95%+ accuracy. Escalates complex cases to human accountants.API
Programmatic interfaces that expose business functionality to other systems.
await $.Product.create.API({
name: 'Bookkeeping API',
endpoints: {
'POST /transactions': $.Transaction.process,
'GET /reports': $.Report.generate,
'POST /reconcile': $.Account.reconcile
},
pricing: {
model: 'per_request',
tiers: [
{ requests: 10000, price: 0.001 },
{ requests: 100000, price: 0.0005 }
]
}
})App
Interactive applications with UI for end users - web, mobile, or desktop.
await $.Product.create.App({
name: 'Finance Dashboard',
type: 'web',
features: ['Real-time reporting', 'Transaction search', 'Agent oversight'],
pricing: {
model: 'per_seat',
price: 29
}
})Directory
Curated listings of agents, services, or resources - searchable and filterable.
await $.Product.create.Directory({
name: 'Agent Marketplace',
listings: $.Agent.query.All(),
categories: ['Finance', 'Sales', 'Support', 'Operations'],
monetization: 'commission' // Take % of agent bookings
})Docs
Documentation and knowledge bases that help users understand and use your products.
---
$type: Product.Docs
name: Bookkeeping Agent Documentation
sections:
- getting_started
- transaction_processing
- reporting
- api_reference
---
Complete documentation for autonomous bookkeeping operations.MCP
Context servers that give AI agents access to your business data and functions.
await $.Product.create.MCP({
name: 'Financial Data MCP',
tools: [
{ name: 'get_transactions', handler: $.Transaction.query },
{ name: 'create_invoice', handler: $.Invoice.create },
{ name: 'reconcile_account', handler: $.Account.reconcile }
],
pricing: {
model: 'per_session',
price: 0.10
}
})SDK
Software development kits that let developers build on your platform.
await $.Product.create.SDK({
name: 'Bookkeeping SDK',
languages: ['typescript', 'python', 'go'],
features: [
'Transaction processing',
'Report generation',
'Agent orchestration'
],
pricing: {
model: 'freemium',
free: { requests: 1000 },
paid: { requests: 'unlimited', price: 99 }
}
})Site
Static or dynamic websites for marketing, documentation, or applications.
await $.Product.create.Site({
name: 'Bookkeeping.do',
type: 'marketing',
pages: ['home', 'features', 'pricing', 'docs', 'blog'],
deployment: 'cloudflare-workers',
pricing: {
model: 'included' // Marketing site free with service
}
})Product Portfolio as Code
Define your entire product portfolio in MDXLD:
---
$type: Business.Products
portfolio:
- type: Agent
name: Bookkeeping Agent
pricing: per_transaction
- type: API
name: Bookkeeping API
pricing: per_request
- type: App
name: Finance Dashboard
pricing: per_seat
- type: SDK
name: Bookkeeping SDK
pricing: freemium
- type: Docs
name: Documentation Site
pricing: included
- type: Site
name: Marketing Website
pricing: included
---
# Autonomous Bookkeeping Products
Complete product suite: autonomous agents, programmatic API, user dashboard, developer SDK, comprehensive docs, and marketing site.Product Orchestration
Products work together as a unified platform:
// Agent processes transaction
on.Transaction.created(async (transaction) => {
await $.Agent.Bookkeeper.process(transaction)
})
// API exposes functionality
app.post('/api/transactions', async (c) => {
return await $.Agent.Bookkeeper.process(await c.req.json())
})
// App displays results
export function Dashboard() {
const transactions = await $.Transaction.query.Recent()
return <TransactionList items={transactions} />
}
// SDK enables developers
import { bookkeeping } from 'sdk.do'
await bookkeeping.process(transaction)Next: Learn about Services - both Software-as-a-Service and Services-as-Software.