ERP, CRM and ATS you own
ERPNext for stock, quotes, orders and the finance hand-off. Frappe CRM instead of per-seat CRM. Self-hosted Huly for recruitment. Azure SQL and Dataverse where the business already runs on Microsoft.
2nth.ai builds the infrastructure AI agents run on — ERP, CRM, data and MCP connectors on AWS, Microsoft Azure, Cloudflare, Google Cloud and open source, on systems you own.
I take a business from legacy code, spreadsheets and SaaS sprawl to a clean stack — on AWS, Microsoft Azure, Cloudflare or Google Cloud, with ERPNext and other open source where it fits — then put AI agents to work on it over MCP, with each person's own permissions and a human approving anything that leaves the building.
Most businesses run on a SaaS subscription per job, a shared spreadsheet and an inbox. Drop an agent into that and it has nothing to read, no permissions model and nowhere to write. The pilot demos well, then stalls.
The fix is infrastructure first: one system of record, clean data, and a governed connector your AI goes through — so an agent can check stock, draft the quote and log the follow-up in the same system your team already uses.
infrastructure, then agents
Open source where it counts, so you own the code, the data and the hosting. Each layer is useful on its own; together they give your AI something solid to stand on.
ERPNext for stock, quotes, orders and the finance hand-off. Frappe CRM instead of per-seat CRM. Self-hosted Huly for recruitment. Azure SQL and Dataverse where the business already runs on Microsoft.
Shopify orders into ERPNext, hand-offs to Xero, Sage and Paystack, WhatsApp and transactional email. Connector bugs get fixed and reported upstream.
Payments portals, B2B quote portals, booking systems and multi-tenant SaaS — behind Entra ID, Cloudflare Access or magic-link sign-in.
MCP servers give agents your ERP, CRM and content with each user's own permissions; A2A lets agents work together. The framework and model fit the job — and when a simple workflow beats an agent, you get the workflow. Agents draft; people approve.
The agent stack, mapped →Fragile Excel packs rebuilt as versioned, tested pipelines — reconciled to the original totals before anyone switches over.
Local-first devices that keep running without the cloud — machine controllers, CNC telemetry, on-site check-in servers and shop-floor displays.
Built host-agnostic, then deployed into the cloud account you already own.
S3 · CloudFront · Lambda · API Gateway · RDS · Bedrock · Cape Town region (af-south-1)
Entra ID · Azure SQL · App Service · Functions · Key Vault · Power BI · Power Automate · Copilot Studio · Purview
Workers · Pages · Durable Objects · Queues · D1 · R2 · KV · Tunnel · Access
Compute Engine · Cloud Run · africa-south1 hosting · Workspace
ERPNext / Frappe · PostgreSQL · Supabase · dbt · DuckDB · Evidence · Hono · SvelteKit
Old platforms are where AI projects go to die: no API, no tests, one vendor who understands it. I rebuild them as a forward-deployed engineer working with AI coding agents such as Claude Code — writing production code inside your business, and still accountable at month six.
Every requirement is traceable to a test, an issue, the evidence and a business sign-off, so speed doesn't cost you control.
You can stop after any step and keep what was delivered.
A fixed-price teardown of what you actually run — systems, data, integrations and what they cost. The report is yours whether or not we build.
A working slice on your own data in weeks, priced so it's credited against the build.
Fixed-scope phases. Code, configuration and data live in your accounts from day one.
A managed service or a one-day-a-week retainer — or a clean hand-over to your team with runbooks.
Fractional CTO one or two days a week, and AI readiness and training on Microsoft 365 Copilot, Claude, ChatGPT and Gemini — governance, AI policy and guided trials before anything touches production.
Human + AI delivery: AI-assisted engineering cuts build hours, and the saving shows up in your quote.
Clients are listed by industry. Names, references and code access are shared on request.
What I build when there's no client brief: products you can sign up for, demos you can click through, and a few experiments. All on the same stack I use for client builds.
Moving mid-market manufacturers and distributors off SysPro, Sage and Dynamics onto open-source ERPNext. The migration playbooks, a steel-mill simulator, a furniture briefing and a hosting decision tree are all published.
doc.erpafrica.org → ProductSell videos, audio and PDFs from the WooCommerce or Shopify shop you already have. Each paid order emails a time-limited, watermarked streaming link. ViewGate never takes a payment or a cut.
viewgate.2nth.ai → Demo · typed decisionsMost of what agents do is deciding, not writing. Ask a System One model a typed question and get calibrated probabilities back in one call. A cascade calculator shows what goes to code, a frontier model or a person.
jev-demo.2nth.workers.dev → Demo · BIOne set of numbers across every ERP you run: open-source BI on Apache Superset and PostgreSQL, with no per-user licences.
bidemo.2nth.app → Product · AI practiceA gym for human skills. Practise difficult conversations, negotiation and leadership with an AI sparring partner that debriefs you afterwards.
2nth.me → Lab · Microsoft AIMicrosoft AI, done in the right order: plain-language briefings, live demos and open tooling for Microsoft 365 Copilot, Copilot Studio and agents.
msai.2nth.ai → Experiment · legacy rebuilds1980s DOS programs such as XyWrite II, re-implemented from the behaviour up to run in a browser tab, with no emulator. The legacy-rebuild method, applied to software people loved before the web.
dos.2nth.ai → Experiment · gameBuild ridiculous machines to do simple things. A modern tribute to The Incredible Machine (1993), with puzzles and a free-build mode.
tim.2nth.app →What I learn on client builds goes into know.2nth.ai — explainers, briefings and agent skills across 14 domains, written for two readers: the person learning and the agent operating.
Every node is plain SKILL.md, so your agents can load the same playbooks I use. Skills to the power of n.
Explore the Tree →# Read the tree the way an agent does curl https://know.2nth.ai/llms.txt # …or load the public skills into your agent git clone https://github.com/2nth-ai/skills # a skill is just SKILL.md: --- name: agent-skills description: Author and load Agent Skills that agents read as docs and load as context. --- # Agent Skills A skill is structured, agent-loadable knowledge…
Every MCP connector signs in as the person using it, so an agent sees only what they're allowed to see. Connectors create drafts; quotes, emails and payments are approved by a person. Model keys stay on the server, never in the browser.
Where LLM inference actually runs in South Africa: AWS, Azure and Google checked against vendor documentation, with a dated log of where the Knowledge Tree got it wrong and what changed. Every node is held to that standard.
Where LLM inference runs in SA →POPIA-aware hosting in South Africa — AWS Cape Town, Azure South Africa North, Google Cloud africa-south1 or Frappe Cloud Johannesburg. No per-seat SaaS billed in dollars. Swap the model — Claude, GPT, Gemini or an open model on your own hardware — without rebuilding the business underneath. AI for African businesses can't be a US template with the logo swapped.
Tell me what you run today and where it hurts. I'll reply with whether an audit, a proof of concept or a straight build makes sense — and what it would cost.
Delivery partner or domain expert? Pick Partner below.