workspaces: One workspace for every system you run.

A ConvOps workspace keeps one team, product or customer behind its own walls: its own work, workflows and memory. Support, finance, product, a customer. One question still searches every workspace you belong to.

isolated by default · searched together · written to exactly one

Support
tickets · refundsown workflows · own brain
Finance
invoices · closeown workflows · own brain
Product
releases · specsown workflows · own brain
Content
runs on its ownown workflows · own brain
ask all
example map
in short

How do you keep AI agent work for different teams or customers apart?

One ConvOps workspace per system: its own tasks, workflows, executors, policies and memory, isolated by row-level security in Postgres, yet searchable together by its members.

ConvOps is the operations layer for AI agents: an MCP server that holds your team's process as workflows, with approval gates, a shared memory and an audit trail. It runs no AI models.

key facts · october 2026

  • Workspace isolation is enforced by Postgres row-level security with FORCE, so a missing filter in one query cannot leak another workspace.
  • Recall searches every workspace you are a member of in one query; every write lands in exactly one workspace.
  • A new team, product or customer gets its own workspace instead of its own tool.

best for

  • Agencies and consultancies running agent work for several clients.
  • Companies separating support, finance and product processes.

not for

  • Fine-grained permissions inside one workspace. Roles are owner, admin and member.

updated

the problem

One shared space for every system.

Support, finance, product and your customers all in one list, one rulebook and one search. Nobody can tell what is theirs.

“Can the customer see our internal work?”

Their tasks sit in the same list as your notes. One wrong filter and they read what they should not.

“Why is support buried in finance noise?”

Every team shares one board, one set of rules and one search. Nobody finds their own work.

“Do we need a new tool for every system?”

A second process means a second tool, a second login and a second place things get lost.

what a workspace is

Everything one system needs. Behind one wall.

Each workspace owns its work, its workflows, its rules, where it runs and what it remembers. Nothing leaks between them by default.

requestno workspace context
Northwindone workspace · example
Task graphGoals, plans, tasks and bugs
WorkflowsTemplates and their routing
PoliciesThe rules its AI reads
ExecutorsWhere its work runs
SettingsTuned for this system
BrainIts memories and routes
owned here · searched with you · never pooled
try it

Ask every workspace at once.

Choose the workspaces you belong to and ask. Only those are searched, each answer says where it came from, and a save lands in one.

1 you belong to
2 ask one question
3 save a decision to
ConvOps · ask all3 of 5 workspaces searched

askWhat did we decide about refunds?

Support1 answer
Finance1 answer
Productno access
Contentnothing
Northwindno access
SupportmemoryRefunds over 200 need a lead to approve.
FinancememoryRefunds post to the month of the original sale.

searched, nothing relevant: Content

not searched: Product, Northwind · their answers never leave them

example data · search spans memberships, ownership stays put

watch it work

A new customer gets its own workspace.

Northwind signs on Monday. By the afternoon they have a workspace, your proven workflows and their own people, walled off from yours.

01you, in Claude

A new customer signs.

Northwind is coming on board. One line in your AI client creates their workspace. It starts empty, with its own walls.

Claudeconnected to ConvOps
Create a workspace for our new customer, Northwind.
workspace created · northwind · you are owner
Done. Northwind is empty and walled off from your other workspaces.
SupportFinanceProductNorthwind
02you, in the app

Your best workflows come along.

Install the templates your team already trusts. Northwind gets its own copy, routed to its own work, editable without touching yours.

ConvOps · workflowsnorthwind

from the catalog, into northwind

  • Taskuniversalinstall
  • Planuniversalinstall
  • Decision Memouniversalinstall
  • Meeting Follow-Upsalesinstall

northwind owns its copies · edit them without touching yours

03an admin invites

Their lead joins with a role.

Invite by email as owner, admin or member. The invite waits for them to accept, and expires after seven days.

ConvOps · membersnorthwind
  • YYouowner
  • SSam, account leadadmin
  • lead@northwind.examplememberpending
owneradminmemberthree roles · invites expire after 7 days
04the workflow

The work runs inside the walls.

Northwind's tasks, approvals and memory stay in Northwind. Your support team never sees them. Their lead never sees yours.

Support
Northwind tasks · approvals · memory

support reaches for northwind · nothing returned

your support team seesSupport
northwind's lead seesNorthwind
05you

You still see the whole picture.

Ask one question and the search spans every workspace you belong to. Each answer says where it came from.

Claudeconnected to ConvOps
What did we promise Northwind?
recall · 3 workspaces searched · each answer badged
Northwind: four-hour first response on priority tickets. Support: their priority queue is live. Finance: invoiced quarterly.
NorthwindSupportFinanceone search · three owners
Claudeconnected to ConvOps
Create a workspace for our new customer, Northwind.
workspace created · northwind · you are owner
Done. Northwind is empty and walled off from your other workspaces.
SupportFinanceProductNorthwind
the ideas

Separate by default. Searched together.

One per system

A team, a customer or an automated system. Each owns its tasks, workflows, policies, executors, settings and brain.

self-serve to create

Walled by default

Isolation is enforced in the database. A request with no workspace reads nothing. Nothing leaks unless you belong.

row-level security

Three plain roles

Owner, admin, member. Invites wait to be accepted and expire after seven days. No maze of permissions.

per workspace

Searched together

One question searches every workspace you belong to. Each answer is badged. Every write lands in exactly one.

one search, never one pool

the difference

One shared mess, or one per system.

one shared space · everyone sees everything
Support
Finance
Product
Northwind
Refund ruleTicket triageEscalationsMonth-end closePricing floorInvoicesRelease 2.4Spec reviewBug triageNorthwind SLATheir onboardingTheir approvals
  • A customer's work sits next to your internal notes.
  • One set of workflows bent to fit every team.
  • Search returns everyone's noise.
  • A new system means a new tool.

Search spans memberships

Recall takes no workspace. It fans out across every verified membership in one query, and each result carries the workspace it came from.

payload
{
  "context_query": "refund approvals",
  "returns": [
    { "workspace": "support",
      "memory": "Over 200 needs a lead" },
    { "workspace": "finance",
      "memory": "Post to month of sale" }
  ]
}
No workspace parameter. Example results.

Writes name exactly one

Every write resolves to one workspace. For someone in several, the workspace is required and a write without it is refused.

payload
{
  "memory_store": {
    "workspace": "finance",
    "category": "decisions",
    "content": "Refunds post to the
      month of the original sale"
  }
}
Ownership is never pooled.

Isolation lives in the database

Postgres row-level security with FORCE: even the table owner cannot step around it. App scoping and tenant middleware sit on top, not instead.

payload
USING (
  org_id = current_setting(
    'app.current_tenant_id', TRUE)
  OR org_id IS NULL
)
The policy, as applied. Global catalog rows are the only shared surface.

Three roles, a real invite lifecycle

Owner, admin, member, checked at the route and service layer, and the last owner cannot be removed. Invites move pending to accepted, revoked, declined or expired.

payload
{
  "workspaces_members_manage": {
    "action": "create",
    "workspace": "northwind",
    "email": "lead@northwind.example",
    "role": "member"
  }
}
pending → accepted · revoked · declined · expired (7 days)
questions

Workspace questions, answered.

How many workspaces should I run?

One per automated system is the pattern that holds up: development, content, a client, an outbound motion. The boundary follows the system, not the org chart, because workflows, executors, policies, and memory all live at the workspace level.

Is memory shared between workspaces?

Search is unified; ownership is not. One recall fans out across every workspace you belong to, but each memory stays owned by its workspace and isolated at the database layer, and writes always resolve to exactly one workspace.

Who can see what?

Members see the workspaces they belong to, under three plain roles: owner, admin, member. Invites follow a real lifecycle with expiry, revocation, and decline, and isolation is enforced by row-level security the table owner cannot bypass.

Can different workspaces execute on different infrastructure?

Yes. Execution configuration is per workspace: one system can run on ConvOps cloud while another dispatches to your own OpenCode server or a custom runner, without any task definition changing.

What does creating one involve?

It is self-serve: name it and it exists, with its own settings catalog ready to tune. A new automated system starts with a workspace, not a procurement cycle.