Governed Back-Office Operating System for SaaS
IntendedOps is a complete, open-source back-office platform where AI agents run your SaaS operations under governed trust tiers. Every action is audited. No action executes without governance approval. Deploy in 5 minutes.
Most SaaS companies cobble together back-office tools from spreadsheets, Slack channels, and custom scripts. When AI agents enter the picture, the problem compounds — agents can take actions faster than humans can review them, and without governance, a single bad decision cascades across your entire operation.
IntendedOps solves this by treating governance as infrastructure, not overhead:
- Agents propose actions. They never execute directly.
- Governance evaluates every action through policy engines and trust tiers.
- Humans approve when needed. High-impact actions require explicit authorization.
- Every action is audited. Full trace from intent to outcome.
- No action executes without governance approval. Period.
Agent (Propose) → Intent → Governance (Evaluate) → Execution → Audit
# 1. Clone and install
git clone https://github.com/intended-so/intendedops.git
cd intendedops
pnpm install
# 2. Create your config
cat > intendedops.config.ts << 'EOF'
import { defineConfig } from '@intendedops/config';
export default defineConfig({
name: 'My SaaS',
database: { provider: 'sqlite' },
auth: { provider: 'builtin' },
ai: {
default: 'anthropic',
providers: {
anthropic: { apiKey: process.env.ANTHROPIC_API_KEY },
},
},
});
EOF
# 3. Build and start
pnpm build
pnpm startYour back-office is running. Open the console, create a user, and watch the governance layer evaluate and audit the action.
// intendedops.config.ts
import { defineConfig } from '@intendedops/config';
export default defineConfig({
name: 'My SaaS',
database: {
provider: 'postgres',
url: process.env.DATABASE_URL,
},
auth: { provider: 'clerk' },
payments: { provider: 'stripe' },
email: { provider: 'resend', from: 'noreply@mysaas.com' },
ai: {
default: 'anthropic',
providers: {
anthropic: { apiKey: process.env.ANTHROPIC_API_KEY },
openai: { apiKey: process.env.OPENAI_API_KEY },
},
},
governance: { provider: 'native' },
integrations: {
stripe: { enabled: true },
slack: { enabled: true },
zendesk: { enabled: true },
},
});| Domain | Features |
|---|---|
| Users & Access | User management, roles, permissions, SSO |
| Accounts | Customer accounts, metadata, external IDs |
| Billing | Invoices, payments, revenue tracking |
| Subscriptions | Plans, upgrades, cancellations, trials |
| Support | Tickets, SLAs, escalations, CSAT |
| Sales & CRM | Deals, leads, pipeline, forecasting |
| Contracts | Agreements, renewals, templates |
| Vendors | Third-party vendors, risk management |
| Integrations | External service connections |
| Security | Events, API keys, policies |
| Compliance | Frameworks, controls, DSARs |
Every agent action is evaluated against trust tiers before execution:
| Tier | Capabilities | Approval Required |
|---|---|---|
| T0 — Observe | Read-only, reports | None |
| T1 — Draft | Create drafts, stage changes | None |
| T2 — Execute (Low Risk) | Reversible operations | None |
| T3 — Execute (High Impact) | Significant business operations | Single approver |
| T4 — Break Glass | Emergency override | Dual approver + audit |
Natural language commands that create governed intents:
You: "Upgrade Acme Corp to enterprise and apply 20% partner discount"
Copilot: I'll create these intents:
1. subscription.upgrade (Acme Corp → Enterprise)
2. billing.apply_discount (20% partner discount)
[Approve] [Modify] [Cancel]
Switch AI providers at runtime:
ai: {
default: 'anthropic',
providers: {
anthropic: { apiKey: process.env.ANTHROPIC_API_KEY },
openai: { apiKey: process.env.OPENAI_API_KEY },
ollama: { baseUrl: 'http://localhost:11434' },
},
}intendedops/
├── packages/
│ ├── config/ # Configuration system (plug-and-play)
│ ├── contracts/ # Type definitions and interfaces
│ ├── core/ # Intent, Policy, and Trust engines
│ ├── database/ # Database repositories
│ ├── agents/ # Agent framework
│ ├── adapters/ # External system adapters
│ ├── sdk/ # Client SDK
│ ├── billing/ # Billing state machines
│ └── governance-contracts/ # Shared governance contracts
│
├── domains/
│ ├── billing/ # Billing domain agent (complete)
│ ├── support/ # Support domain agent (complete)
│ ├── identity/ # Identity management (community contribution welcome)
│ ├── sales/ # Sales and CRM (community contribution welcome)
│ ├── contracts/ # Contract management (community contribution welcome)
│ ├── compliance/ # Compliance automation (community contribution welcome)
│ └── vendors/ # Vendor management (community contribution welcome)
│
├── adapters/
│ ├── stripe/ # Stripe payment adapter
│ └── zendesk/ # Zendesk support adapter
│
├── governance-providers/
│ ├── native/ # Built-in governance (standalone)
│ ├── intended/ # Intended platform governance connector
│ └── saas/ # External authority API governance
│
├── services/
│ ├── api/ # REST API server
│ ├── auth/ # Authentication service
│ ├── ledger/ # Audit ledger service
│ └── worker/ # Background job worker
│
├── apps/
│ ├── console/ # Operator dashboard (Next.js)
│ └── web/ # Customer-facing web app
│
└── docs/
├── SPECIFICATION.md
├── AGENT_ACTION_CONTRACT.md
└── api-guide.md
| Package | Description |
|---|---|
@intendedops/config |
Configuration system with Zod validation |
@intendedops/contracts |
TypeScript interfaces for all domains |
@intendedops/core |
Intent, Policy, and Trust engines |
@intendedops/database |
Repository pattern with adapters |
@intendedops/agents |
Agent builder and runtime |
@intendedops/adapters |
Adapter framework |
@intendedops/sdk |
Client SDK |
@intendedops/billing |
Billing state machines |
@intendedops/governance-contracts |
Shared governance contracts |
| Package | Description |
|---|---|
@intendedops/governance-native |
Built-in standalone governance |
@intendedops/governance-intended |
Intended platform governance connector |
@intendedops/governance-saas |
External authority API governance |
| Category | Packages |
|---|---|
| Database | db-sqlite, db-postgres |
| Auth | auth-jwt, auth-oauth |
| AI/LLM | ai-anthropic, ai-openai |
| Payments | payment-stripe, payment-paypal |
| Storage | storage-local, storage-s3 |
email-smtp, email-resend |
|
| Queue | queue-memory, queue-redis |
| Cache | cache-memory, cache-redis |
| Notifications | notification-firebase, notification-twilio |
| Guarantee | Description |
|---|---|
| No Direct Model-to-Action | LLM output never executes directly. Model proposes, governance evaluates, adapter executes. |
| Fail-Closed by Default | Uncertainty, error, or policy gap results in block + escalation. |
| Governance Cannot Be Bypassed | Cannot disable, skip, or degrade governance controls. |
| All Actions Emit Outcomes | Every execution produces auditable outcomes. |
| Human Approval for High-Impact | T3+ actions require explicit human authorization. |
Uses IntendedOps' built-in policy engine, trust evaluator, and approval system. No external dependencies.
governance: { provider: 'native' }Connect to Intended for enterprise-grade intent verification, Open Intent Layer classification, and cryptographic authority tokens. One-line upgrade from standalone governance.
governance: {
provider: 'intended',
apiKey: process.env.INTENDED_API_KEY,
}Connect to any external governance authority that implements the IntendedOps governance contract.
governance: { provider: 'saas', apiUrl: '...', apiKey: '...' }IntendedOps is open source under the Apache 2.0 license.
The following domain agents have intent types defined but need full agent implementations. These are great first contributions:
- Identity Management (
domains/identity/) — User provisioning, credential rotation, MFA enforcement, access reviews - Sales & CRM (
domains/sales/) — Lead management, pipeline updates, proposal generation, opportunity tracking - Contract Management (
domains/contracts/) — Agreement creation, e-signature, amendments, expiration notifications - Compliance (
domains/compliance/) — Control checks, evidence recording, DSAR processing, risk assessments - Vendor Management (
domains/vendors/) — Vendor onboarding, risk assessment, document collection, offboarding
See the fully implemented domains/billing/ and domains/support/ agents as reference implementations.
# Install dependencies
pnpm install
# Build all packages
pnpm build
# Start API server
pnpm --filter @intendedops/api dev
# Start console
pnpm --filter @intendedops/console dev
# Run tests
pnpm test- Specification — Canonical system specification
- Agent Action Contract — How agents propose and execute actions
- API Guide — REST API reference
IntendedOps' built-in governance is designed for startups and small teams. When you need enterprise-grade intent verification — Open Intent Layer classification, cryptographic authority tokens, compliance framework mappings, and independently verifiable audit evidence — upgrade to Intended in one line:
// Before: standalone governance
governance: { provider: 'native' }
// After: Intended platform governance
governance: {
provider: 'intended',
apiKey: process.env.INTENDED_API_KEY,
}No code changes. No migration. Same governance contract, enterprise-grade verification.
Built by Intended, Inc. — Intent Verification Infrastructure for Autonomous Agents
Governed by design. Open by default.