On this page

Build an agent-company platform

Products like Polsia, Cofounder / Co-Founder AI, Nebula, and Heuresis-style encoded workspaces package the same core idea: agents need persistent workspaces, connected apps, browser or desktop access, generated files, live progress, approvals, and deployment targets.

MIOSA is the infrastructure layer for building that category inside your own product. You bring the product opinion, prompts, model routing, UI, and customer workflow. MIOSA provides the execution substrate: sandboxes, computers, files, exec, previews, artifacts, snapshots, connectors, events, and deployments.


Reference products and repos

These are useful external patterns to study when deciding what to build on top of MIOSA:

ReferenceWhat to studyMIOSA primitive
PolsiaAlways-on company operator that plans, codes, markets, and keeps workingOrchestrator + persistent sandboxes + jobs + deployments
Cofounder and its founder guideDepartment-style company agents, milestones, approvals, and business roadmapsAgent roster + approvals + managed connectors + artifacts
Nebula and virtual devicesShared device with files, code, browser, live server, jobs, and persistenceSandboxes + computers + primary device policy + snapshots
HeuresisBusiness/workspace encoding and agent-operable repos/workspace folder contract + skills + runbooks
BusinessOSMIOSA-owned reference project for an agent-operable business workspaceStarter workspace, runtime docs, deployable app surfaces
Lovable / Replit-style app buildersPrompt-to-preview-to-deploy product loopSandbox prompt + preview + artifacts + deploy

Do not copy their UI literally. Copy the system lesson: a product in this category needs a persistent execution workspace, a visible work stream, a permission model, and a way to ship results.

What these products have in common

Polsia-style company operator

Agents plan, code, market, research, and keep working while the user is away. Use persistent sandboxes, jobs, artifacts, deployments, and connectors.

Cofounder / Co-Founder AI-style company OS

Departments, milestones, approvals, business memory, and specialized agents. Use an orchestrator, agent roster, scoped tools, event stream, and approvals.

Nebula-style virtual device

Shared workspace where agents use files, browser, code, live server, jobs, and app connections. Use sandbox workers, computers, primary device policy, snapshots, and local devices.

Heuresis-style encoded company

Markdown workspace with agents, skills, decision rules, and runtime-agnostic boot files. Use sandbox workspaces, repo templates, files, CLI/MCP runtime bridges, and artifacts.

Agentfounder-style founder assistant

Strategic execution, product work, research, KPI tracking, and recurring status updates. Use scheduled jobs, files, browser/computer actions, managed connectors, and artifacts.

The common requirement is not “chat.” It is durable action in a controlled workspace.


What requires a device

Not every agent needs a sandbox or computer. Use the smallest runtime that can complete the task safely.

TaskRecommended runtimeWhy
Research summary, sales copy, planning, brainstormingModel-only or hosted OSA runNo filesystem, browser login, package install, or long-running state is required
Generate DOCX/PDF/image artifactsSandboxThe agent needs libraries, files, previews, and downloadable outputs
Build a Next.js app, run tests, start a live previewPersistent sandboxCode and dependencies must live in /workspace across sessions
QA a signup flow in a real browserComputerThe agent needs Chromium, clicks, forms, screenshots, and browser state
Log into customer dashboardsComputer with approvals and scoped connectorsBrowser/session state and risky actions need auditability
Run 100 background research agentsSandbox pool or job queueThe system needs isolation, concurrency limits, and resumable state
Control a user-owned machine or private network resourceLocal device / BYOCData or network access cannot leave the customer’s environment

The product should choose the runtime automatically, but users should see which device is doing the work.

Reference architecture

The orchestrator is your product layer. It decides which agent runs, what model or harness powers it, which device it can use, which credentials are available, when to ask for approval, and how progress appears to the user.

MIOSA is the runtime layer. It executes the work and records the outputs.


Backend module shape

Keep these modules separate in your product backend. Combining them too early is what makes agent products hard to debug.

type AgentRuntime =
  | "osa"
  | "codex"
  | "claude-code"
  | "pi"
  | "hermes"
  | "gemini-cli"
  | "opencode"
  | "custom";

type AgentDevice =
  | { type: "sandbox"; id: string; cwd: "/workspace" | string }
  | { type: "computer"; id: string }
  | { type: "local"; id: string };

type AgentRunRequest = {
  workspaceId: string;
  agentId: string;
  runtime: AgentRuntime;
  device: AgentDevice;
  prompt: string;
  connectors: string[];
  approvalPolicy: "auto" | "confirm-risky" | "manual";
};
ModuleInterfaceImplementation hidden behind it
Orchestratordispatch(runRequest)Selects runtime, device, queue, retry policy, approvals
Runtime adapterstart(prompt), send(task), stop()OSA, Codex, Claude Code, Pi, Hermes, or custom harness
Device adapterexec, writeFile, readFile, preview, snapshotMIOSA sandbox, computer, local device
Connector brokergetToken(connector, subject, scopes)Provider auth, refresh, egress restrictions, audit
Event streamsubscribe(runId)Tool calls, stdout, file writes, screenshots, artifacts, approvals
Artifact storeputArtifact, versionArtifactPDFs, DOCX, images, zips, screenshots, generated apps
Deployment bridgepublish(version)MIOSA Deploy, Docker Deploy, domains, rollback

The frontend should never special-case every runtime. It should render the same event contract regardless of whether the backend used OSA, Codex, Claude Code, Pi, Hermes, or a customer-owned harness.

Product mapping

Build your own Polsia-style operator

Use this when the product promise is: “Describe the business. Agents keep building, researching, selling, and improving it.”

Recommended shape:

LayerMIOSA choice
Default devicePersistent sandbox
Browser workComputer when a real browser or dashboard login is needed
Long-running workScheduled jobs that resume the persistent sandbox
DeliverablesArtifacts, previews, deployment URLs, reports
Production appsMIOSA Deploy or Docker Deploy
CredentialsManaged connectors and scoped runtime tokens
UITask stream, plan, files, artifacts, preview, approvals

Example flow:

User: Build a landing page and start outbound research.
Orchestrator:
  1. Resume the company workspace sandbox.
  2. Agent writes Next.js files in /workspace.
  3. Agent starts preview on port 3000.
  4. Computer agent opens the preview and captures screenshots.
  5. Research agent writes lead notes and campaign copy.
  6. User approves publish.
  7. Deploy agent publishes the app and stores the URL.

Build your own Cofounder / Co-Founder AI-style company OS

Use this when the product promise is: “Run company departments with specialized agents and human approval.”

Recommended agent roster:

Department agentDevice and tools
EngineeringSandbox files, exec, previews, deploy
DesignRefero managed connector, browser screenshots, artifacts
MarketingWeb research, files, connected email/CRM tools
SalesBrowser/computer, CRM connector, approval before outbound
FinanceConnected accounting or spreadsheet tools, strict approval
SupportBrowser/computer, helpdesk connector, memory, approvals
OperationsJobs, schedules, reports, audit log

Human approval belongs at the orchestrator layer:

  • publish production app
  • send external messages
  • buy domains or spend credits
  • create high-cost child devices
  • delete data, snapshots, deployments, or customer files
  • use admin-level credentials

Build your own Nebula-style virtual device

Use this when the product promise is: “Agents and humans share a persistent workspace with files, code, browser, jobs, and connected apps.”

Recommended model:

Nebula-style conceptMIOSA implementation
Virtual devicePersistent sandbox or computer
Local devicePaired customer-owned device
Files between sessionsSandbox /workspace, snapshots, computer storage
Code executionSandbox exec and streaming output
BrowserComputer browser automation and screenshots
Live serverSandbox preview URL
JobsScheduled orchestrator tasks that resume the device
Shared across membersWorkspace-scoped device policy and audit log
MiniappsGenerated apps published from sandbox to MIOSA Deploy or Docker Deploy

The key design decision is the primary device policy. Each workspace should know which sandbox, computer, or local device agents reach for by default.

Build Heuresis-style encoded workspaces

Use this when the product promise is: “Turn a company’s operating knowledge into a folder that any agent runtime can execute.”

Recommended folder contract:

/workspace
  SYSTEM.md
  company.yaml
  agents/
    founder.md
    engineering.md
    marketing.md
    sales.md
    support.md
  skills/
    write-proposal/
      SKILL.md
      references/
    qualify-lead/
      SKILL.md
    build-landing-page/
      SKILL.md
  runbooks/
  artifacts/
  receipts/
LayerPurpose
SYSTEM.mdBoot file read by the selected agent runtime
company.yamlBusiness facts, offers, ICP, pricing, brand, constraints
agents/One file per role: scope, authority, standards, escalation path
skills/Reusable capabilities that produce named assets
runbooks/Repeatable operating procedures
artifacts/Generated files users can inspect and download
receipts/Decisions, outputs, approvals, and audit trail

MIOSA is where this workspace can actually run. The encoded company lives in a persistent sandbox. The selected runtime, such as OSA, Codex, Claude Code, Gemini CLI, OpenCode, Cursor, Aider, Windsurf, OpenClaw, Qwen Code, Kimi Code, or a custom harness, reads the workspace and executes inside /workspace.

This gives customers a portable company operating system while MIOSA still owns the secure execution, persistence, events, quotas, connectors, and deployment path.


Implementation path

1. Choose the runtime shape

Do not hard-code one agent runtime into the platform. Make runtime a setting on the agent or workspace.

Runtime optionBest use
OSAMIOSA-native agents and platform operations
CodexRepo work, codebase edits, terminal-driven engineering
Claude CodeAgentic coding with tool use and MCP
Gemini CLIAlternate coding and research loop
OpenCode, Cursor, Aider, WindsurfUser-selected coding harnesses
OpenClawMulti-agent orchestration brain paired with coding tools
Qwen Code, Kimi CodeModel/vendor-specific code agents
CustomYour own harness, prompt format, queue, or model router

The runtime should receive the same workspace contract: scoped MIOSA token, assigned device, allowed connectors, and /workspace files.

2. Dispatch prompts into the device

The product must be able to send a prompt into the assigned runtime and keep the agent working there. This is the core workflow.

prompt
  -> route to agent runtime
  -> run inside assigned sandbox/computer/local device
  -> stream events back to product UI
  -> persist files, artifacts, screenshots, previews, and deployment records

Use a sandbox prompt when the agent should code, generate artifacts, or run commands inside /workspace:

miosa sandbox prompt <sandbox-id> 
  --provider claude 
  --cwd /workspace 
  --json 
  -- "Build the landing page, run tests, start the preview, and leave the files in /workspace"

Use a computer agent prompt when the task needs a desktop or browser:

miosa agent start <computer-id> 
  "Open the preview, test signup, capture screenshots, and report visual issues"

Send follow-up work into the same running computer-agent session:

miosa agent task <computer-id> <session-id> 
  "Re-check the mobile nav after the sandbox agent patches it"

In a product backend, model this as one dispatch contract:

type DevicePromptDispatch = {
  deviceType: "sandbox" | "computer" | "local";
  deviceId: string;
  runtime: "osa" | "codex" | "claude-code" | "gemini-cli" | "opencode" | "custom";
  prompt: string;
  cwd?: string;
  connectors?: string[];
  approvalPolicy?: "auto" | "confirm-risky" | "manual";
};

The UI should not care whether the prompt ran through OSA, Codex, Claude Code, Hermes, OpenCode, or a custom harness. It should display the same run stream: tool calls, command output, file writes, screenshots, artifacts, approvals, and final URLs.

3. Create or resume the workspace runtime

Use a persistent sandbox for code and files. Use a computer only when the task requires a real browser, desktop, or screenshot loop.

miosa sandbox create 
  --template nextjs 
  --name customer-workspace 
  --timeout 1h 
  --wait 
  --json

Then run work inside the sandbox:

miosa sandbox exec <sandbox-id> -- sh -lc "cd /workspace && npm install"
miosa sandbox exec <sandbox-id> -- sh -lc "cd /workspace && npm run build"

4. Make the agent write inside the device

The agent should edit files in /workspace, not build everything locally and upload a finished repo at the end.

bad:
  local agent builds repo on laptop
  upload after the fact
  remote sandbox only previews the result

good:
  agent writes files into sandbox
  sandbox installs dependencies
  sandbox runs tests/builds
  sandbox serves preview
  user sees events and artifacts as work happens

5. Stream progress into the product UI

Show users the work surface:

  • plan created
  • device created or resumed
  • file written
  • command started
  • stdout/stderr chunk
  • preview ready
  • screenshot captured
  • artifact generated
  • approval required
  • deployment ready

This is the difference between “the agent disappeared” and “the agent is working in a real machine.”

6. Attach connectors and secrets safely

Use managed connectors, scoped tokens, and runtime variables. Do not paste provider keys into chat.

Tenant key
  -> stays server-side
  -> mints scoped runtime token
  -> sandbox receives only the scoped token
  -> managed provider token is brokered only to the allowed provider endpoint

This is how a platform can provide a managed design-research connector while still preventing arbitrary token exfiltration.

7. Save checkpoints and publish

Use snapshots and versioned deployments:

checkpoint after dependencies install
checkpoint after first working preview
checkpoint before risky refactor
publish after tests and browser QA
rollback through deployment versions

For many small customer apps in one workspace, publish to Docker Deploy. For normal production apps, publish through MIOSA Deploy.


What your frontend should show

SurfacePurpose
Chat or task streamUser request, agent status, tool calls, command output
Device panelSandbox preview, computer desktop, logs, screenshots
Files panelWorkspace files, diffs, generated code, editable artifacts
Artifacts panelPDFs, DOCX, images, ZIPs, screenshots, downloads
Approvals panelRisky actions waiting for human confirmation
Jobs panelScheduled and background work
Deployment panelPublic URL, versions, rollback, domains
Usage panelCredits, runtime minutes, sandbox/computer cost

This is how to make MIOSA feel like an agent workspace, not just an API.


Architecture rules

  1. Do not merge sandboxes and computers into one vague concept. Sandboxes are for headless code, files, previews, and artifacts. Computers are for GUI and browser automation.
  2. Make persistence the default for agent work. Idle compute can stop, but the workspace state should survive through snapshots or persistent storage.
  3. Use scoped runtime credentials. Tenant admin keys stay server-side.
  4. Treat the orchestrator as your product. MIOSA executes; your product decides roles, prompts, permissions, retries, approvals, and UI.
  5. Expose run events. Users need to see code, commands, files, previews, artifacts, screenshots, and deploys as they happen.
  6. Dispatch prompts into assigned devices. A user prompt should become a sandbox/computer/local-device run, not a detached local-only script.
  7. Separate development from hosting. Agents build in sandboxes and computers. Finished apps run on deployments or Docker Deploy.
  8. Keep runtimes replaceable. A workspace should be executable by OSA, Codex, Claude Code, OpenCode, Aider, OpenClaw, or a custom runtime without rewriting the customer’s company knowledge.

See also

Was this helpful?