Skip to main content

Positioning Design: The Hosted OpenClaw Alternative for Teams and Products

Date: 2026-04-25 Status: Draft — pending user approval Owner: VG Scope: Positioning reset for Distri, cascading into the GitHub README, the docs site (distri.dev/docs), and a separate web spec for distri.dev landing.


TL;DR

Distri repositions as "The hosted OpenClaw alternative for teams and products."

  • Wave-riding anchor: OpenClaw is the viral (247k-star, Mar 2026) open-source personal AI agent. We slot Distri into the same category but for a different audience and deployment model.
  • Wedge: OpenClaw is personal, local, one-laptop. Distri is team, hosted, embeddable — same markdown-first, open-core ethos, different surface.
  • Three modes (primary IA): Channels → Embed → Local/OSS.
  • Rollout: README first, docs second, website spec third (implemented in a separate session).

Context

What OpenClaw is (and why it matters now)

OpenClaw is an open-source autonomous AI agent (MIT) that uses messaging platforms as its primary UI — WhatsApp, Telegram, Slack, Discord, Signal, iMessage, Matrix, ~20 more. Agents and skills are stored as plain Markdown + YAML in a workspace folder (~/.openclaw, SOUL.md). It has a skills marketplace ("ClawHub") and an enterprise wrapper from NVIDIA (NemoClaw).

Key facts driving the positioning:

  • ~247k GitHub stars by March 2026. Genuinely viral.
  • Local-first and self-hosted — lives on the user's laptop.
  • Chat-app UX is the hero feature.
  • Foundation-governed (Peter Steinberger moved to OpenAI; nonprofit foundation established Feb 2026).
  • Security surface is broad (email, calendars, shell) — enterprise buyers are wary.

What Distri already has (verified in code)

  • Channelsdistri-cloud/distri-gateway/ ships webhook adapters for Telegram, WhatsApp, Discord, Slack. distri-types/channels.rs models Bot, Channel, BotConnection, AuthenticatedChannelUser, PlatformAuthScope (workspace-scoped vs open), TriggerMode, channel verification / OAuth gating.
  • Embeddistri-cloud/distri/distrijs — React SDK with <Chat />, SSE streaming, tool renderers, voice, developer mode, IndexedDB-backed browser tools.
  • Hosted cloudapp.distri.dev, full dashboard (screenshots in distri.dev/static/img/page_*.png).
  • Open core / local — MIT root + Elastic License 2.0 on server/; brew install, curl | sh, SQLite, no external deps.
  • Agents-as-markdown + skills + sub-agents + MCP + A2A — feature parity with OpenClaw on the core agent-runtime axes, with deeper support for team-scoped deployment.

All three modes are shipping today. Positioning can be declarative, not aspirational.


The Positioning

The headline (locked)

The hosted OpenClaw alternative for teams and products.

Consistent across README hero, docs intro, web H1, and meta description.

The sub (one canonical long form, abbreviated per surface)

Workspace-scoped agents on Slack, WhatsApp, Discord, and Telegram — or embedded directly in your product. Gated by your own OAuth connections. Open core, run it locally if you want.

The wedge (one sentence)

OpenClaw runs on your laptop for you. Distri runs in the cloud for your team — and inside your users' products.

Audience wedge

DimensionOpenClawDistri
Who it's forIndividuals, hobbyists, prosumersTeams, companies, product builders
Where it runsThe user's laptop (self-hosted)Hosted (default) or self-hosted
Primary UXPersonal chat appsWorkspace-scoped channels + in-product embed
Auth modelThe user's own accountsOAuth connections gated per workspace
ExtensibilitySkills marketplace (ClawHub)Skills + tools + MCP + React SDK
FoundationOpenClaw Foundation (nonprofit)Distri (VC-backed, open-core commercial)

The three modes (primary IA)

  1. Channels — Workspace-scoped bots on Slack / WhatsApp / Discord / Telegram. Slack and Discord inherit platform workspace auth; Telegram/WhatsApp are gated by distri-managed OAuth connections. Trigger modes (all, on_mention), per-channel verification, /switch workspace selection on system bots.
  2. Embed@distri/react → drop <Chat /> into your product. SSE streaming, tool renderers, voice, developer mode. Browser-side tools (Read/Write/Edit/Glob/Grep) backed by IndexedDB.
  3. Local / Open Corebrew install distri, distri serve, SQLite, markdown agent definitions. MIT root, Elastic License 2.0 on server — no vendor lock-in.

These three are the top-level IA in README, docs, and website.


Wave-riding tactics

We name OpenClaw explicitly and repeatedly — not as a competitor, as a category anchor. Supabase built its early positioning on "the open-source Firebase alternative." Same move.

Where we name OpenClaw:

  • H1The hosted OpenClaw alternative for teams and products.
  • Meta description (SEO) — same sentence, verbatim. Captures "OpenClaw alternative" search queries.
  • README first paragraph — one sentence comparing the two.
  • Docs intro — one sentence comparing the two.
  • Web page — a compact comparison card (OpenClaw vs Distri) below the fold.
  • Launch tweet / social"OpenClaw, for the rest of your company." as variant copy.

Where we do not name OpenClaw:

  • CLI output, error messages, product UI.
  • Product names — Distri is Distri. No "Claw" riff in naming.
  • Legal copy.

Trademark posture

"OpenClaw" is used comparatively and nominatively — the standard US-law fair use for identifying another product in marketing. This is the exact move that "the open-source Firebase alternative" (Supabase) made. No use of OpenClaw logos, no product name collisions, no implied affiliation.


Milestone 1 — Repository README

File: ../distri-cloud/distri/README.md

Current problem: Leads with "open-source AI agent framework built in Rust" and "Define agents in markdown, connect your product functions as tools". Technically accurate but buries the story:

  • Doesn't name the category (OpenClaw).
  • Doesn't name the three delivery modes.
  • Channels are entirely absent — a major capability.
  • Reads as a framework, not a product.

Target structure

  1. Hero — new headline + sub + three-mode pitch.
  2. Three modes — one block each: Channels, Embed, Local. Each shows the minimum "hello world" code path.
  3. Quickstartbrew install → push an agent → choose a delivery mode.
  4. Agent definition format — keep, shorten.
  5. Built-in agents — keep table.
  6. Skills — keep, trimmed.
  7. React SDK — keep but reframe as "Embed mode".
  8. Architecture — move below the fold, keep for engineers.
  9. Licensing / links — keep.

Images to refresh

Existing images in distri.dev/static/img/ are cloud dashboard screenshots. For the new README:

  • Hero image — needs a new composite showing: a Slack/WhatsApp conversation with a bot on the left, a React <Chat /> embed in the middle, a terminal on the right. (TODO: image production — flagged as a follow-up; first pass of README can use page_home.png and a separate channels screenshot if one exists in distri-cloud/.)
  • Channels section — screenshot of the "Bots" dashboard page.
  • Embed section — existing embedded.png or page_agent_embed.png.
  • Local section — terminal screenshot.

Milestone 2 — Docs restructure

Root: /Users/vivek/projects/distri/distri.dev/docs/

Current IA:

intro.mdx
getting-started.mdx
samples.mdx
theming.mdx
concepts/
guides/
cloud/
self-hosted/
reference/
tutorials/
managing-agents.mdx
lifecycle-events.mdx

Problem: Organized by engineering surface (concepts, guides, cloud, self-hosted), not by the buyer's mode of use. A reader who wants to "build a Slack bot" has no landing path.

Target IA

intro.mdx                    # New positioning intro, three-mode pitch
getting-started.mdx # Hosted-first quickstart
modes/
channels/ # NEW — first-class section
index.mdx # Overview, which platforms, when to use
slack.mdx
discord.mdx
telegram.mdx
whatsapp.mdx
oauth-gating.mdx
trigger-modes.mdx
embed/ # Renamed/promoted from guides/client
index.mdx
react-sdk.mdx
streaming.mdx
browser-tools.mdx
voice.mdx
local/ # Renamed from self-hosted
index.mdx
install.mdx
server.mdx
sqlite.mdx
concepts/ # Keep — agent definition, tools, skills, threads
agents/ # Merged managing-agents + built-in agents
skills/ # Promoted to top-level
tools/
builtin.mdx
dynamic-http.mdx
external.mdx
mcp.mdx
samples/ # Keep
reference/ # Keep — CLI, API, config

Content changes

  • intro.mdx — replace hero paragraph with the new headline + wedge; add OpenClaw comparison block; reshape "Three Steps to Ship" into "Three Modes" (channels / embed / local).
  • getting-started.mdx — change from generic "push an agent" to "pick your mode" branching.
  • Migrate guides/client/*modes/embed/*.
  • Migrate self-hosted/*modes/local/*.
  • Net new: modes/channels/* (currently no docs for a shipping feature).

Milestone 3 — Website positioning spec

Scope note: This milestone produces a spec document only. The spec is written in this session (after README and docs are done). Website code/content changes happen in a separate session with its own writing-plans pass, using this spec as the single source of truth.

Output file (this session): docs/superpowers/specs/2026-04-25-website-positioning-spec.md — written after Milestones 1 and 2 land.

Website spec will cover

  • Hero — H1, sub, primary CTA ("Start free — no server needed"), secondary CTA ("Read the docs").
  • Wave-rider strip — One-line comparison block immediately below the hero: "OpenClaw lives on your laptop. Distri lives at work." with a tiny comparison table (3–4 rows).
  • Three-mode cards — Channels, Embed, Local. Each with a 30-word pitch, one code snippet or screenshot, and a CTA into the matching docs mode.
  • Proof section — Who's building with Distri (logos / testimonials if available), or a production-grade strip ("Rust runtime · SSE streaming · SQLite · A2A · MCP").
  • Quickstart accordion — The three modes' minimum hello-world paths inlined.
  • Why Distri vs OpenClaw — a dedicated section with the wedge table.
  • Open core trust strip — license breakdown, GitHub link, "run it locally" CTA.
  • Footer — docs, cloud, GitHub, socials, pricing.

What the website spec will NOT cover (out of scope for this project)

  • Full site IA (pricing page, blog, changelog) — keep current.
  • Design-system revamp — reuse current components.
  • New illustrations / marketing renders — flag as follow-up.

Non-goals

  • Renaming Distri or any product (e.g. to "Claw"-something). We ride the wave via copy, not naming.
  • Sunsetting the Rust/framework angle. It stays — as proof below the fold, not the pitch above it.
  • Deprecating self-hosted / local mode. It stays a first-class mode (the "open core" column of the three-mode IA).
  • Rebuilding the distri.dev site in this project. Spec only; implementation is a separate session.

Risks and open questions

  1. OpenClaw wave longevity. If OpenClaw cools or the foundation stumbles, the H1 ages badly. Mitigation: audience-side wedge ("for teams and products") still reads right even if "OpenClaw" gets swapped out for the next category leader; the sub and three-mode IA stand alone.
  2. Trademark posture. Comparative/nominative use is standard, but OpenClaw foundation policy is unknown. Mitigation: no logos, no implied affiliation; only plain-text nominative reference in marketing copy. If a cease-and-desist lands, fall back to "the hosted open-core agent platform for teams and products."
  3. Channel infra maturity. Code ships for Telegram/WhatsApp/Discord/Slack, but operational maturity (rate limits, delivery guarantees, error paths, provider-side onboarding) varies per platform. Mitigation: docs should be candid per-platform and not overclaim; any platform not yet GA should carry a beta tag.
  4. Image assets. The hero composite image (chat app + React embed + terminal) doesn't exist yet. Mitigation: Milestone 1 ships with a best-available subset; flag image production as a follow-up task.
  5. "Alternative" framing risks looking derivative. Some buyers will read "alternative" as "lesser knockoff." Mitigation: the sub and wedge explicitly reframe it as a different-audience play, not a cheaper substitute.

Success criteria

  • A reader hitting the README, the docs intro, or the website homepage can answer in 10 seconds:
    1. Who is this for? (teams building products)
    2. What is this like? (OpenClaw)
    3. How is it different? (hosted, workspace-scoped, embeddable)
    4. Where do I start? (three modes)
  • "OpenClaw alternative" search query lands on distri.dev within 30 days of web launch.
  • Consistent language across README, docs, and web — no contradictions.

Rollout plan (for the implementation phase)

The writing-plans skill will turn this into a detailed task plan. High-level sequence, all in this session:

  1. Milestone 1: README — single-file edit at ../distri-cloud/distri/README.md. Quick feedback loop.
  2. Milestone 2: Docs — IA move + content updates under distri.dev/docs/. Multi-file.
  3. Milestone 3: Website spec — produce 2026-04-25-website-positioning-spec.md. Spec only. Actual website implementation is a separate session that consumes the spec.

Each milestone ends with a commit and a user review gate before moving to the next.