惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Privacy International News Feed
The Register - Security
The Register - Security
Microsoft Azure Blog
Microsoft Azure Blog
P
Proofpoint News Feed
M
MIT News - Artificial intelligence
Recorded Future
Recorded Future
H
Hackread – Cybersecurity News, Data Breaches, AI and More
F
Fortinet All Blogs
G
Google Developers Blog
Engineering at Meta
Engineering at Meta
B
Blog
aimingoo的专栏
aimingoo的专栏
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
N
Netflix TechBlog - Medium
Martin Fowler
Martin Fowler
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
MyScale Blog
MyScale Blog
L
LangChain Blog
T
The Blog of Author Tim Ferriss
U
Unit 42
Blog — PlanetScale
Blog — PlanetScale
C
Check Point Blog
Vercel News
Vercel News
Microsoft Security Blog
Microsoft Security Blog
D
DataBreaches.Net
Recent Announcements
Recent Announcements
云风的 BLOG
云风的 BLOG
Stack Overflow Blog
Stack Overflow Blog
博客园 - 聂微东
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 司徒正美
月光博客
月光博客
Jina AI
Jina AI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
WordPress大学
WordPress大学
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - Franky
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Hugging Face - Blog
Hugging Face - Blog
Last Week in AI
Last Week in AI
The Last Watchdog
The Last Watchdog
P
Privacy & Cybersecurity Law Blog
有赞技术团队
有赞技术团队
G
GRAHAM CLULEY
腾讯CDC
Cyberwarzone
Cyberwarzone
爱范儿
爱范儿
I
Intezer
SecWiki News
SecWiki News

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant Common SOC 2 Failures (Real World) Stop Vibe-Checking Your AI App: A Practical Guide to Evals How to Use SonarQube and SonarScanner Locally to Level Up Your Code Quality Your Next To-Do App Is Dead — I Replaced Mine with an OpenClaw AI Sign a Nostr event in 60 lines of Python using coincurve — no nostr-sdk, no nbxplorer, no rust toolchain ITGC Audit Explained Like You’re in Big 4 Patch Tuesday abril 2026: Microsoft parcha 163 vulnerabilidades y un zero-day en SharePoint Stop scraping everything: a better way to track competitor price changes Listing on MCPize + the Official MCP Registry while routing payments OUTSIDE the marketplace — how I kept 100% of my x402 revenue Building an AI-Powered Risk Intelligence System Using Serverless Architecture Why We Ripped Function Overloading Out of Our AI Toolchain Testing AI-Generated Code: How to Actually Know If It Works SaaS Churn Is Killing Your Business. Here Is What to Do About It (Without a Support Team) The Speed of AI Is No Longer Linear - And Self-Improving Models Are Why How to Implement RBAC for MCP Tools: A Practical Guide for Engineering Teams From Standard Quote to Persuasive Proposal: AI Automation for Arborists I built a CLI that scaffolds complete multi-tenant SaaS apps Axios CVE-2025–62718: The Silent SSRF Bug That Could Be Hiding in Your Node.js App Right Now The dashboard that ended our friendship Data Pipelines Explained Simply (and How to Build Them with Python) The Hidden Cost of AI Systems Nobody Talks About. undefined vs undeclared, and how typeof behaves Switching from file-based jobs to NATS/Kafka in Rust without changing code io_uring Adventures: Rust Servers That Love Syscalls Why Agentic AI is Killing the Traditional Database The POUR principles of web accessibility for developers and designers Quantum Neural Network 3D — A Deep Dive into Interactive WebGL Visualization How To Install Caveman In Codex On macOS And Windows Automation Pipeline Reliability: Why Your Workflow Breaks When Nobody Is Watching I Built an 'Open World' AI Coding Agent — It Works From ANY Folder From Freelancing to Product: A Tech Service Company's SaaS Transformation China's AI Giants: Adding Tencent Hunyuan & ByteDance Doubao to AI University (74 Providers) On the Vibe Coders and Their Lies clerk: Auto-Summarize Your Claude Code Sessions AI Weekly — 2026/04/10–04/17 | The Model Lockdown Is Here, but the Toolchain Is the Real Battleground AI 週報 — 2026/04/10–2026/04/17 模型封鎖潮來了,但工具鏈才是真戰場 Maybe this is how Open-Source apps are born... 🚀 Fine-Tune LLMs with LoRA and QLoRA: 2026 Guide tRPC v11 + Next.js App Router: End-to-End Type Safety Without the Boilerplate ShadCN UI in 2026: Why I Stopped Installing Component Libraries and Started Owning My Components SaaS Billing in React Server Components: Stripe + Supabase Without a Single `useEffect` Join our DEV Weekend Challenge — $1,000 in Prizes Across TEN winners! Submissions Due April 20 at 6:59 AM UTC. Implementing FSRS Spaced Repetition in Flutter + Supabase — Adding Memory Science to an AI Learning App "I Texted My Localhost From the Train — Claude Code Fixed the Bug Before I Got Home" I Built a Sales Prep AI and It Went Deeper Than Expected Design to Code #2: One JSON, Eleven Outputs Solving the 100M-Row Problem: A Summary Table Pattern for High-Volume Push Notification Logs Flutter Web With Wasm: What Actually Changes For Developers I Built 50 Royalty-Free Soundtracks for My Side Project in a Weekend Using AI Music Generation The Vibe Coding Security Checklist: 7 Things to Check Before You Ship Stop Letting Googlebot Guess Fix Your React App's SEO Right Desconstruindo o Streaming do LinkedIn: Como Criar um Engine de Extração de Vídeo de Alta Performance com HLS e FFmpeg (EDA Part-1) EDA (Exploratory Data Analysis) Explained With Real Life — Why Looking at Your Data Is the Most Important Step in Machine Learning Brand Relationship Management at Scale: Our 4-Touch Outreach System for 200+ Brands Why String.fromEnvironment() Might Return an Empty String in Dart JGuardrails 1.0.0 — Hardening Java LLM Apps Against Jailbreaks, Toxicity, and Prompt Injection Plan and Schedule a Full Week of Threads Content From One Claude Conversation Coding Cat Oran Ep3, Five Tables Changed Everything Updated: BFF Pattern I'm done watching freelancers get buried by 200 proposals. So I'm building the alternative. This is my first post BFS Algorithm in Java Step by Step Tutorial with Examples Tracking LLM Pricing Monthly: An Open Dataset for 22 AI Models How We Measure Content ROI on a Comparison Site: Revenue Attribution Without Perfect Data Introducing Nova AI Ops: The AI-Native Operating System for SRE Teams I built a free desktop video downloader for Windows — Grabbit How Talkie OCR Helps Vision-Impaired & Dyslexic Users Read the World Around Them VRCFaceTracking安装和iPhone面捕配置教程,有bug Even CrowdStrike Can't See Your Agents The Automation Gold Rush: What n8n Workflows and Claude Are Opening Up for Developers Right Now
Workspaces: Building a Headless Company OS for API-first Processes and AI Agent Workflows
Volker Schuk · 2026-05-04 · via DEV Community

Workspaces: Building a Headless Company OS for API-first Processes and AI Agent Workflows

Many business systems were historically built around user interfaces.

  • CRM? UI.
  • ERP? UI.
  • Document management? UI.
  • Commerce? UI.
  • Reporting? UI.

That works as long as humans manually execute every process step.

But modern companies increasingly need something else: systems that can be automated, integrated, and controlled by other systems.

This is one of the reasons we are building Workspaces.

Workspaces is our approach to a headless Company OS with an ERP core, web administration, and API-based operation for business processes. The platform brings together CRM, commerce, PIM, documents, workflows, tasks, compliance, reporting, chat, newsletters, AI-adjacent features, and task streams in one shared multi-tenant system.

But this article is not meant to sound like everything is already perfect.

It is not.

We are not perfect either. But we are working on it.

And that is actually an important part of the story.

Workspaces is not just a product name for us. It is a direction. A journey. A long-term attempt to make operational business software more programmable, more open, and more useful for automation.

The goal is not simply to build another ERP with a nice web interface.

The goal is to build a platform where humans, systems, integrations, and eventually AI agents can work with business processes through stable contracts.


Why We Started Thinking About This

If you have ever integrated business software, you probably know the problem.

Many systems have an API, but the API often feels like an afterthought.

The UI is the real product.

The API is something added later.

The documentation is incomplete.

The data model is hard to understand.

Permissions are unclear.

Workflows are hidden inside UI actions.

Automation requires too much custom glue code.

For simple integrations, this might still work.

For serious automation, it becomes painful.

And when AI agents enter the picture, the problem becomes even more obvious.

An AI agent does not need a beautiful dashboard. It needs reliable answers to very practical questions:

  • Which actions are available?
  • Which data may I access?
  • Which parameters are required?
  • Which workflow can I start?
  • How do I check the current status?
  • What happens if something fails?
  • In which tenant and permission context am I operating?

A system that was designed only from a UI perspective usually cannot answer these questions cleanly.

That is the gap we are trying to close with Workspaces.


The Basic Idea Behind Workspaces

Workspaces is designed as a headless-capable business platform.

The web administration interface is still important. People need good tools. Teams need dashboards, forms, lists, reports, tasks, and workflows.

But the UI should not be the only way to operate the system.

Core functions should also be accessible through APIs. Processes should be controllable by external systems. Clients should be able to discover what is available. Authentication and permissions should be part of the platform contract.

In simplified form, the idea looks like this:

External systems
AI agents
Integrations
Automations
Internal web administration
        │
        ▼
     /api/v1
        │
        ▼
Workspaces Company OS
CRM · ERP · Commerce · PIM · Documents · Workflows · Tasks · Reporting · Compliance

Enter fullscreen mode Exit fullscreen mode

The important part is this:

API access is not supposed to be a side feature. It is supposed to be part of the foundation.

This is something we are actively working toward.

Some parts are already there. Some parts are still evolving. Some things will certainly change as we learn from real use cases.

But the direction is clear: business software should become more programmable.


API-first Is More Than “We Have an API”

A lot of software products say they are API-first.

But in practice, “API-first” can mean very different things.

For us, it means that the API should not merely expose database objects. It should represent useful business capabilities.

Not only:

POST /contacts
PATCH /orders/123
GET /documents/456

Enter fullscreen mode Exit fullscreen mode

But also:

Start a customer onboarding workflow.
Create a task in the correct business context.
Attach a document to an entity.
Check the status of an automation.
Expose available capabilities to a client.
Respect tenant and permission boundaries.

Enter fullscreen mode Exit fullscreen mode

This distinction matters.

Business software is not only about data. It is about processes.

And processes need more than CRUD.


Discovery-first Instead of Hardcoded Assumptions

One principle we care about is discovery.

Instead of forcing clients to hardcode every path, every feature, and every entry point, we want Workspaces to expose available capabilities at runtime.

A simplified example could look like this:

GET /api/v1/capabilities

Enter fullscreen mode Exit fullscreen mode

The response could describe which capabilities are available in the current context:

{
  "tenant": "example-company",
  "capabilities": [
    {
      "name": "crm",
      "entrypoint": "/api/v1/crm",
      "actions": ["read_contacts", "create_contact", "update_contact"]
    },
    {
      "name": "documents",
      "entrypoint": "/api/v1/documents",
      "actions": ["upload", "classify", "link_to_entity"]
    },
    {
      "name": "workflows",
      "entrypoint": "/api/v1/workflows",
      "actions": ["start", "inspect", "cancel"]
    }
  ]
}

Enter fullscreen mode Exit fullscreen mode

This is useful for traditional clients.

It is even more useful for dynamic clients and AI agent workflows.

Instead of assuming:

I hope this endpoint exists.

Enter fullscreen mode Exit fullscreen mode

A client can ask:

What can I do here?
Which capabilities are available?
Which actions are allowed?
Where do I start?

Enter fullscreen mode Exit fullscreen mode

That is the kind of interaction model we want.

We are not fully done with this vision. But we believe this is the right direction.


Why OpenAPI-like Contracts Matter

For developers, an API is only truly useful when it is documented, consistent, and machine-readable.

That is why Workspaces moves toward OpenAPI-like contracts, structured metadata, and field-level descriptions.

This matters for:

  • SDK generation
  • API clients
  • validation
  • tests
  • external integrations
  • AI agent tooling
  • documentation
  • field-level access control
  • privacy-aware data handling

In business software, a JSON response alone is not enough.

A client should be able to understand which fields are readable, writable, required, sensitive, or restricted.

A simplified example:

{
  "resource": "contact",
  "fields": {
    "id": {
      "type": "string",
      "readOnly": true
    },
    "email": {
      "type": "string",
      "privacy": "personal_data",
      "required": true
    },
    "customerNumber": {
      "type": "string",
      "readOnly": true
    },
    "internalNote": {
      "type": "string",
      "visibility": "restricted"
    }
  }
}

Enter fullscreen mode Exit fullscreen mode

For normal software clients, this is helpful.

For AI agents, it becomes essential.

An agent should not simply read, interpret, or modify everything it sees. It needs boundaries. It needs contracts. It needs to know what is allowed.

This is one of the reasons we think API design, metadata, and privacy-aware field contracts are becoming more important, not less.


Headless Authentication and API Key Operation

If business processes should be automated, a classic browser login is not enough.

External systems, services, and agents need ways to authenticate without a human clicking through a web interface.

That is why Workspaces supports and continues to evolve around headless login flows and API key operation.

But authentication alone is not enough.

Every API call exists in a business context:

Who is calling?
For which tenant?
With which permissions?
For which capability?
For which purpose?

Enter fullscreen mode Exit fullscreen mode

This is especially important in a multi-tenant system.

An AI agent that analyzes documents, creates tasks, or updates CRM data must not operate outside its allowed context.

Permissions, tenant context, and authentication should not be bolted on later. They should be part of the platform contract from the beginning.

This is a difficult area, and we are still learning.

But it is also one of the most important areas.

Because automation without clear boundaries is not progress. It is risk.


Workflows Instead of Isolated API Calls

Many APIs are built around isolated operations.

Create this.
Update that.
Delete something else.

That is necessary, but it is not enough for real business processes.

A typical process often looks more like this:

  1. A new lead comes in.
  2. The company and contact data are checked.
  3. A CRM record is created or updated.
  4. A document is attached.
  5. A compliance rule is evaluated.
  6. A task is created.
  7. A person or team gets assigned.
  8. A reporting event is written.
  9. The process continues depending on the result.

If this logic lives only in external scripts, middleware, or cron jobs, the process becomes fragmented.

The data is in one place.
The workflow is somewhere else.
The business rules are hidden in custom code.
The status is hard to inspect.

That is exactly what we want to improve.

Workspaces is designed to support workflows and task streams so that integrations and agents can work with processes, not just records.

A simplified workflow start could look like this:

POST /api/v1/workflows/start

Enter fullscreen mode Exit fullscreen mode

{
  "workflow": "new_customer_onboarding",
  "input": {
    "companyName": "Example GmbH",
    "email": "info@example.com",
    "source": "website"
  }
}

Enter fullscreen mode Exit fullscreen mode

The response could return the current process state:

{
  "workflowRunId": "wf_123456",
  "status": "running",
  "next": {
    "type": "task",
    "assignedTo": "sales",
    "label": "Review customer data"
  }
}

Enter fullscreen mode Exit fullscreen mode

This turns the API into more than a data pipe.

It becomes a process interface.


Why This Matters for AI Agents

AI agents are often described as chatbots.

But for business software, the more interesting question is not whether an agent can chat.

The interesting question is:

Can an agent safely perform useful work inside real business processes?

To do that, the agent needs access to tools, data, workflows, and status information.

But that access must be controlled, traceable, and understandable.

Workspaces is being built with this direction in mind.

An agent should be able to:

  • discover available capabilities
  • authenticate headlessly
  • operate in a tenant context
  • understand allowed actions
  • call APIs with documented parameters
  • start workflows
  • create tasks
  • check process state
  • write results back into the business context

This does not mean that every process should be fully autonomous.

It also does not mean that an AI agent should replace human decision-making everywhere.

In many cases, the best model is a hybrid one:

Agent prepares.
System validates.
Human approves.
Workflow continues.

Enter fullscreen mode Exit fullscreen mode

That is a much more realistic and useful approach than pretending that everything should be automated immediately.


A Possible Agent Scenario

Imagine a company receives an inquiry through a web form:

"We are interested in product X and would like to receive an offer."

Enter fullscreen mode Exit fullscreen mode

An AI-assisted workflow in Workspaces could look like this:

  1. Receive the inquiry.
  2. Check whether the company already exists.
  3. Create or update the CRM contact.
  4. Fetch product information from the PIM.
  5. Link relevant documents or price lists.
  6. Check compliance or internal rules.
  7. Create a task for the sales team.
  8. Write the current status into the task stream.
  9. Prepare a draft response.
  10. Let a human review and send it.

The agent does not need to rebuild the CRM, ERP, PIM, document management, and task system.

It uses Workspaces as the operational control center.

AI agent
  │
  ├─ queries available capabilities
  ├─ authenticates headlessly
  ├─ reads permitted CRM and PIM data
  ├─ starts workflows
  ├─ creates tasks
  ├─ checks status
  └─ writes results into the process context

Enter fullscreen mode Exit fullscreen mode

This is the kind of architecture we believe will become increasingly important.

Not because AI magically solves every business problem.

But because AI becomes much more useful when it can operate through stable, well-defined, permission-aware interfaces.


The Hard Part: Business Software Is Messy

One thing we have learned again and again: business software is messy.

Every company has different processes.
Every team has exceptions.
Every workflow has edge cases.
Every integration reveals another detail.
Every automation needs guardrails.

That is why we do not want to present Workspaces as if everything is finished and flawless.

It is not.

We are building it step by step.

We are improving the APIs.
We are refining the capability model.
We are working on better metadata.
We are improving workflow handling.
We are learning where automation helps and where humans must stay in control.

And yes, sometimes we discover that something we built needs to be changed.

That is part of the journey.

The important thing is the direction:

We want to make operational business software programmable, discoverable, automatable, and ready for a future where humans, systems, and AI agents work together.


Why a Shared Data and Process Framework Matters

Many companies use a separate tool for every area:

  • CRM for contacts
  • shop system for commerce
  • PIM for product data
  • DMS for documents
  • task tool for assignments
  • newsletter tool for communication
  • reporting system for analytics
  • compliance tool for rules

That can work.

But it creates integration cost.

Every automation has to connect multiple systems.
Every agent needs several APIs.
Every process must synchronize context across tools.
Every exception creates another piece of glue code.

Workspaces follows a different approach.

Operational domains should exist in one shared multi-tenant system, or at least in a shared process and API framework.

That does not mean every company has to treat everything as one monolith.

But it does mean that processes can be modeled more consistently across domain boundaries.

For developers, this is helpful because less logic disappears into middleware, cron jobs, and one-off scripts.


What Developers Might Find Interesting

For developers, Workspaces becomes especially interesting when business software is not only used, but integrated, extended, automated, and programmed.

Some of the technical ideas behind it are:

  • API-first architecture
  • headless operation
  • discovery endpoints
  • capability-based access
  • OpenAPI-like contracts
  • machine-readable metadata
  • privacy-aware field contracts
  • multi-tenancy
  • permission and authentication context
  • workflow start and status inspection
  • task stream integration
  • operational domains in one shared system

This is a different perspective on business software.

Not:

Here is an ERP with a user interface.

Enter fullscreen mode Exit fullscreen mode

But:

Here is an operational backend that humans, systems, and agents can use through stable contracts.

Enter fullscreen mode Exit fullscreen mode

That is what we are working toward with Workspaces.


Conclusion

Workspaces is our attempt to build an API-first, headless-capable business platform for operational processes.

It combines an ERP core, CRM, commerce, PIM, documents, workflows, tasks, compliance, reporting, communication, and additional functions in one shared multi-tenant system.

But more importantly, Workspaces is part of a broader journey:

We want to make business processes programmable.

We want APIs that are not just technical endpoints, but reliable business contracts.

We want discovery, metadata, authentication, permissions, workflows, and task streams to work together.

We want AI agents and external systems to interact with business software safely and meaningfully.

And we know this is not easy.

We are not perfect either. But we are working on it.

For us, Workspaces is not a finished claim that all problems are solved.

It is the direction we are building toward.

A headless Company OS for businesses that want their processes to become more integrated, more automated, and more programmable.