Cloudflare
Hosts our websites and applications, manages DNS, stores files and protects private tools with Access.
Workers, Pages, R2 and Access give us a shared deployment platform that we can operate through code and APIs.
Reusable components for a company operating system. Start with a product to see what it does and how to use it. Below those, explore the implementation foundations and third-party tools we build with.
When a recurring spreadsheet job needs a tool of its own. Your workspace agent builds the logic and interface; your company owns the code, deployment and data.
Self-hosted · public release in preparation
Explore WorkbooksConversation-first data collection for interviews, intake and feedback. A separate Spark product, not a third-party integration.
Spark product
Visit unformal.ai New tabA structured starting point for your company's knowledge, workflows, decisions and permissions. Give people and agents shared context before connecting the tools.
Workspace foundations · setup by agreement
Explore the workspace starterWe start from files, databases, APIs, scripts and compute. Direct access to these building blocks gives agents room to assemble and improve workflows. The libraries and patterns below help us build on that foundation.
A Rust engine for Open Knowledge Format knowledge graphs: lint the graph, query typed relations, export it for a website, render it. Runs the Belgian accounting graph and a client's public knowledge graph.
Rust · MIT
The delivery patterns we reuse across clients: the agent workspace backbone, an agent workspace UI, a public marketing site with an agent layer, an agent-friendly wiki, multi-app feedback, bank integration via Ponto.
Patterns · proven
Command-line tools for the recurring admin of a Belgian business: tasks, CRM, banking, e-invoicing over Peppol. Agents call them the same way people do, with the same guardrails.
Tooling · in use
Every page served as markdown on request, an MCP server, a public API, discovery files. The pattern behind the page you are reading.
Public information · read-only
Explore the agent layerEvery added layer brings interfaces, rules and handoffs for agents to navigate. We keep a tool when it makes the work simpler than working with the underlying building blocks directly. This directory explains the role each tool earns; it is not a stack every client needs.
22 of 22 tools
Hosts our websites and applications, manages DNS, stores files and protects private tools with Access.
Workers, Pages, R2 and Access give us a shared deployment platform that we can operate through code and APIs.
Stores the credentials our team and workspace automations need.
Service accounts and the CLI let approved workflows retrieve secrets when needed, without copying credentials into repositories.
Holds our source code, workspace knowledge, issues and change history.
Git keeps changes reviewable and portable. Pull requests and Actions connect implementation, checks and delivery.
Provides PostgreSQL, authentication and storage for our applications and CRM.
A shared data layer with SQL and APIs lets our own tools work with the same records.
Runs our existing servers and provides object storage for operational documents and backups.
It gives us direct control over server workloads that need a persistent host, alongside our Cloudflare applications.
Manages credentials for client environments.
Separate projects and machine identities let us grant access to the credentials a workload needs and hand ownership to the client.
Connects workstations and existing servers over a private network.
We use it where private network access is needed to operate a service without exposing its administrative ports publicly.
Works with our repositories to implement changes, run checks and maintain workspace tools.
It operates against the same files, instructions and version history that people use.
Helps build, debug and review applications from the workspace.
Repository context and tool access let us carry a task from a requested change through implementation and verification.
Runs persistent agent workflows on our servers.
It gives recurring work a runtime with workspace instructions, tools and scheduled execution.
Provides our email, calendar, shared documents and Drive.
We connect to the tools the team already works in, so useful context can feed into the workspace.
Captures meeting notes and transcripts for follow-up work.
Meeting context can become decisions, tasks and project updates in the workspace.
Handles booking links for conversations with Spark.
A direct scheduling link makes it easier to arrange a meeting without a long email exchange.
Provides the foundation for our self-hosted finance workspace, including documents, transactions and invoicing.
We can adapt the application and connect its records to our own operational workflows.
Holds accounting and operational records in our self-hosted ERP.
Its API and configurable records let us connect business processes while retaining control of the instance.
Sends and receives electronic invoices over the Peppol network.
Its API connects e-invoicing to our document and accounting workflows.
Sends transactional application emails, including sign-in messages.
API and SMTP access let our applications send email through a dedicated delivery service.
Connects feedback on a live website to proposed code changes.
Comments can become pull requests that a developer reviews before a change ships.
Provides web search and research results to our agent workflows.
An API lets research become a repeatable step in a larger task.
Fetches and crawls website content for research and integrations.
It turns web pages into structured content that our workflows can process.
Supports semantic web search and discovery of relevant sources.
Meaning-based retrieval helps us find related material beyond an exact keyword match.
Supplies model benchmarks, pricing and speed data for model comparisons.
Its API gives us evidence to compare models for the task rather than choosing by name alone.
Bring one process that is slow, fragile or hard to change. We will look at what a useful first version could do.
Scope, cost and operating responsibilities are agreed before a build starts.