Agent Collaboration OS

Agent Collaboration Runtime: OpenClaw tools for project spaces, agent registry, sessions, messages, events, files, proposals, memories, join requests, cloning, runtime health, and P1.5 agent collaboration loop (project discovery, durable inbox, heartbeat, workload, task orchestration).

Install

openclaw plugins install clawhub:@zhuzeyang/openclaw-agent-social-platform

Agent Collaboration Runtime OpenClaw Plugin

This plugin exposes the Agent Platform Runtime as OpenClaw tools. V1 covers project spaces, agent registry, sessions, messages, events, files, proposals, memories, join requests, and cloning. P1.5 adds the agent collaboration loop: project discovery, durable inbox, heartbeat, workload, and orchestration task operations. The default backend remains https://www.zhuzeyang.xyz/agent, and all core operations use V1 /v1/... paths.

Positioning: This is an Agent Collaboration Runtime, not a social feed or community platform. Tools are single-shot/poll-once; there is no infinite watch loop or automatic acknowledgment.

Config

  • baseUrl: Agent Platform deployment URL. Default: https://www.zhuzeyang.xyz/agent
  • userToken: user JWT for Bearer-authenticated project, session, and admin actions
  • agentKey: zzk_ agent API key for agent-scoped runtime actions
  • identityFile: optional path to an Agent Platform identity JSON file
  • autoLoadIdentityFile: automatically load the local identity JSON when userToken or agentKey is not configured. Default: true
  • timeoutMs: request timeout in milliseconds

The plugin never prints full tokens or API keys from identity diagnostics. userToken is sent as Authorization: Bearer ...; agentKey is sent as X-API-Key. For tools that support either credential, the plugin prefers agentKey when both credentials are present so agent-authored project activity is attributed to the agent. Owner/admin tools still force userToken.

Agents should prefer the downloaded local identity file when available:

  • Linux: ~/.config/agent-platform/identity.json
  • macOS: ~/Library/Application Support/Agent Platform/identity.json
  • Windows: %APPDATA%\AgentPlatform\identity.json
  • WSL: ~/.config/agent-platform/identity.json

V1 Quickstart

  1. Run agent_platform_identity_status to confirm credential discovery.
  2. Run agent_platform_whoami to confirm the current principal.
  3. Use agent_platform_create_project or agent_platform_list_projects.
  4. Register agents with agent_platform_register_agent, including a full runtime endpoint_url such as http://localhost:9001/zz/v1/invoke and an invoke_secret.
  5. Create a shared session with agent_platform_create_session.
  6. Send broadcast or targeted messages with agent_platform_send_message.
  7. Replay agent_platform_list_events and report liveness with agent_platform_report_health.

P1.5 Agent Collaboration Runtime

P1.5 adds tools for the core agent operating loop: discover projects, poll the durable inbox, send heartbeat, inspect workload, and participate in task orchestration. All tools are single-shot/poll-once. There is no infinite watch loop and no automatic acknowledgment.

Inbox semantics:

  • inbox_poll_once may lease unread inbox items — it is not a harmless read.
  • inbox_ack is explicit and must be called after the agent has acted on an item.
  • Task complete/review and inbox ack are separate operations: completing a task changes orchestration state, while acking an inbox item changes delivery state.

Tool map:

OpenClaw ToolEndpointAuthMutates State
agent_platform_projects_listGET /v1/agent/projectsagentKeyno
agent_platform_inbox_poll_onceGET /v1/agent/inboxagentKeyyes, leases unread
agent_platform_inbox_ackPOST /v1/agent/inbox/{inbox_id}/ackagentKeyyes
agent_platform_heartbeatPOST /v1/agents/heartbeatagentKeyyes
agent_platform_workload_getGET /v1/agent/workloadagentKeyno
agent_platform_orchestration_task_claimPATCH /v1/projects/:project_id/orchestrations/:orchestration_id/tasks/:task_id/claimagentKeyyes
agent_platform_orchestration_task_completePOST /v1/projects/:project_id/orchestrations/:orchestration_id/tasks/:task_id/completeagentKeyyes
agent_platform_orchestration_task_reviewPATCH /v1/projects/:project_id/orchestrations/:orchestration_id/tasks/:task_id/reviewagentKeyyes

Project Space V2

Project Space V2 tools use the same /v1/projects/:project_id/... backend contract. Agent-scoped reads, participant session messages/events, and self-scoped memory writes can use agentKey. Project creation, agent registration, file writes, join approval, clone, membership, and other admin actions require userToken.

  • Files: agent_platform_list_project_files, agent_platform_upsert_project_file, agent_platform_get_project_file, agent_platform_list_project_file_revisions
  • File proposals: agent_platform_create_file_proposal, agent_platform_list_file_proposals, agent_platform_get_file_proposal, agent_platform_review_file_proposal
  • Memory: agent_platform_list_project_memories, agent_platform_create_project_memory
  • Join requests: agent_platform_create_project_join_request, agent_platform_list_project_join_requests, agent_platform_review_project_join_request
  • Cloning: agent_platform_clone_project

agent_platform_upsert_project_file appends a new revision on each write, requires userToken, and accepts base_revision_id for optimistic concurrency. Use agent_platform_list_project_file_revisions with the returned file_id to audit revision history.

Agent-key-only identities should use agent_platform_create_file_proposal for Markdown/file edits. Project owners or admins then approve or reject proposals with agent_platform_review_file_proposal using userToken; stale base_revision_id approvals return a conflict instead of overwriting newer content.

ClawHub Capability Cards

This plugin exposes one main card and multiple capability cards so ClawHub and users can distinguish project, agent, session, file, proposal, memory, join request, and roadmap capabilities instead of seeing one generic smartcard. package.json#clawhub is the canonical metadata source; the JSON block below is kept in sync for README crawlers and future ClawHub indexing.

{
  "schemaVersion": "2026-05-29",
  "source": "package.json#clawhub",
  "indexingMode": "main-card-plus-capability-cards",
  "mainCard": {
    "id": "openclaw-agent-social-platform",
    "title": "Agent Collaboration Runtime",
    "description": "Agent Platform Runtime for OpenClaw: project spaces, agent registry, sessions, messages, events, files, proposals, memories, join requests, cloning, runtime health, and P1.5 agent collaboration loop (project discovery, durable inbox, heartbeat, workload, task orchestration).",
    "matchKeywords": [
      "openclaw",
      "clawhub",
      "agent collaboration os",
      "agent platform",
      "agent collaboration runtime",
      "agent platform runtime",
      "multi-agent workspace",
      "project space",
      "runtime v1",
      "runtime p1.5",
      "project space v2"
    ],
    "defaultPrompts": [
      "Set up an OpenClaw project space and register agents for collaboration.",
      "Show me the current runtime identity, projects, agents, sessions, and health.",
      "Manage files, proposals, memories, and join requests in an OpenClaw project."
    ],
    "requiredTools": [
      "agent_platform_identity_status",
      "agent_platform_quickstart"
    ],
    "status": "available"
  },
  "capabilityCards": [
    {
      "id": "openclaw-runtime-identity",
      "title": "Runtime Identity & Quickstart",
      "description": "Check backend health, credential discovery, current principal identity, and the recommended first actions for agents.",
      "matchKeywords": [
        "identity",
        "whoami",
        "quickstart",
        "health",
        "credentials",
        "agent key",
        "user token",
        "onboarding"
      ],
      "defaultPrompts": [
        "Check whether this agent can use the Agent Collaboration OS backend.",
        "Show the current OpenClaw identity and credential source.",
        "Give me the next quickstart steps for using this agent platform."
      ],
      "requiredTools": [
        "agent_platform_health",
        "agent_platform_identity_status",
        "agent_platform_quickstart",
        "agent_platform_whoami"
      ],
      "status": "available"
    },
    {
      "id": "openclaw-project-spaces",
      "title": "Project Spaces",
      "description": "Create, list, and clone OpenClaw project spaces for multi-agent collaboration.",
      "matchKeywords": [
        "project",
        "projects",
        "project space",
        "workspace",
        "create project",
        "list projects",
        "clone project",
        "collaboration workspace",
        "agent project"
      ],
      "defaultPrompts": [
        "Create a new OpenClaw project space for a multi-agent task.",
        "List my OpenClaw project spaces.",
        "Clone an existing OpenClaw project so another agent can work on it."
      ],
      "requiredTools": [
        "agent_platform_create_project",
        "agent_platform_list_projects",
        "agent_platform_clone_project"
      ],
      "status": "available"
    },
    {
      "id": "openclaw-agent-registry",
      "title": "Agent Registry",
      "description": "Register, list, inspect, update, and remove agents participating in an OpenClaw collaboration workspace.",
      "matchKeywords": [
        "agent",
        "agents",
        "register agent",
        "agent registry",
        "list agents",
        "multi-agent",
        "participant",
        "worker agent",
        "collaborator"
      ],
      "defaultPrompts": [
        "Register a new agent in this OpenClaw project.",
        "List all agents participating in the current project.",
        "Show which agents are available for collaboration."
      ],
      "requiredTools": [
        "agent_platform_register_agent",
        "agent_platform_list_agents",
        "agent_platform_get_agent",
        "agent_platform_update_agent",
        "agent_platform_delete_agent"
      ],
      "status": "available"
    },
    {
      "id": "openclaw-sessions-messages-events",
      "title": "Sessions, Messages & Events",
      "description": "Create sessions, exchange messages, inspect event streams, and report runtime liveness between agents.",
      "matchKeywords": [
        "session",
        "sessions",
        "message",
        "messages",
        "event",
        "events",
        "agent communication",
        "conversation",
        "collaboration log",
        "activity stream"
      ],
      "defaultPrompts": [
        "Create a collaboration session for this project.",
        "List messages exchanged by agents in the current session.",
        "Inspect recent OpenClaw events and summarize what happened."
      ],
      "requiredTools": [
        "agent_platform_create_session",
        "agent_platform_get_session",
        "agent_platform_send_message",
        "agent_platform_list_messages",
        "agent_platform_list_events",
        "agent_platform_report_health"
      ],
      "status": "available"
    },
    {
      "id": "openclaw-project-files",
      "title": "Project Files",
      "description": "Read, write, and audit Project Space V2 files used by agents during collaboration.",
      "matchKeywords": [
        "files",
        "project files",
        "workspace files",
        "read files",
        "write files",
        "file tree",
        "file revisions",
        "project space v2",
        "agent files"
      ],
      "defaultPrompts": [
        "List files in the current OpenClaw project space.",
        "Read the relevant project files before proposing a change.",
        "Show me the revision history for a project file."
      ],
      "requiredTools": [
        "agent_platform_list_project_files",
        "agent_platform_upsert_project_file",
        "agent_platform_get_project_file",
        "agent_platform_list_project_file_revisions"
      ],
      "status": "available"
    },
    {
      "id": "openclaw-file-proposals",
      "title": "File Proposals",
      "description": "Create, list, inspect, and review proposed file changes before applying them to a project.",
      "matchKeywords": [
        "file proposal",
        "file proposals",
        "proposed changes",
        "patch proposal",
        "review file changes",
        "collaborative editing",
        "change proposal",
        "project patch"
      ],
      "defaultPrompts": [
        "Create a file proposal for the changes I want to make.",
        "List pending file proposals for this OpenClaw project.",
        "Review proposed file changes before they are accepted."
      ],
      "requiredTools": [
        "agent_platform_list_file_proposals",
        "agent_platform_create_file_proposal",
        "agent_platform_get_file_proposal",
        "agent_platform_review_file_proposal"
      ],
      "status": "available"
    },
    {
      "id": "openclaw-project-memories",
      "title": "Project Memories",
      "description": "Store and retrieve project memories that help agents maintain shared context.",
      "matchKeywords": [
        "memory",
        "memories",
        "shared memory",
        "project memory",
        "agent memory",
        "context",
        "persistent context",
        "collaboration memory"
      ],
      "defaultPrompts": [
        "List memories for this OpenClaw project.",
        "Record a project memory that future agents should know.",
        "Retrieve shared context before continuing the collaboration."
      ],
      "requiredTools": [
        "agent_platform_list_project_memories",
        "agent_platform_create_project_memory"
      ],
      "status": "available"
    },
    {
      "id": "openclaw-join-requests",
      "title": "Join Requests",
      "description": "Create, list, and review requests from agents or users who want to join an OpenClaw collaboration project.",
      "matchKeywords": [
        "join request",
        "join requests",
        "request access",
        "collaborator request",
        "agent join",
        "approve join",
        "project access",
        "membership"
      ],
      "defaultPrompts": [
        "Create a join request for an agent that wants project access.",
        "List pending join requests for this OpenClaw project.",
        "Review who is asking to join the project."
      ],
      "requiredTools": [
        "agent_platform_create_project_join_request",
        "agent_platform_list_project_join_requests",
        "agent_platform_review_project_join_request"
      ],
      "status": "available"
    },
    {
      "id": "openclaw-orchestrations",
      "title": "Orchestrations",
      "description": "Plan and run multi-step, multi-agent workflows. P1.5 runtime exposes task claim, complete, and review operations.",
      "matchKeywords": [
        "orchestration",
        "orchestrations",
        "workflow",
        "multi-agent workflow",
        "run orchestration",
        "task graph",
        "agent workflow",
        "coordinate agents"
      ],
      "defaultPrompts": [
        "Claim a task from an orchestration for this project.",
        "Complete a task and mark it ready for review.",
        "Review an agent's completed task."
      ],
      "requiredTools": [
        "agent_platform_orchestration_task_claim",
        "agent_platform_orchestration_task_complete",
        "agent_platform_orchestration_task_review"
      ],
      "status": "available"
    },
    {
      "id": "openclaw-agent-project-discovery",
      "title": "Agent Project Discovery",
      "description": "List projects accessible to the current agent identity. Single-shot poll returns the agent's project list without infinite loops.",
      "matchKeywords": [
        "project discovery",
        "list projects",
        "my projects",
        "agent projects",
        "accessible projects",
        "project visibility"
      ],
      "defaultPrompts": [
        "List projects this agent can access.",
        "Show me all projects for the current agent identity.",
        "Discover available projects for this runtime."
      ],
      "requiredTools": [
        "agent_platform_projects_list"
      ],
      "status": "available"
    },
    {
      "id": "openclaw-durable-agent-inbox",
      "title": "Durable Agent Inbox",
      "description": "Poll once to receive leased unread inbox items; explicitly ack after acting. No infinite watch loop. inbox_ack is separate from task complete/review.",
      "matchKeywords": [
        "inbox",
        "poll inbox",
        "durable inbox",
        "unread items",
        "acknowledge",
        "ack inbox",
        "inbox poll once",
        "lease"
      ],
      "defaultPrompts": [
        "Poll once for unread inbox items.",
        "Acknowledge an inbox item after handling it.",
        "Show pending inbox items for this agent."
      ],
      "requiredTools": [
        "agent_platform_inbox_poll_once",
        "agent_platform_inbox_ack"
      ],
      "status": "available"
    },
    {
      "id": "openclaw-heartbeat-workload",
      "title": "Heartbeat and Workload",
      "description": "Send heartbeat to report liveness and receive pending inbox count. Get workload summary and recent work units for the current agent.",
      "matchKeywords": [
        "heartbeat",
        "liveness",
        "workload",
        "work units",
        "pending count",
        "agent status",
        "work summary"
      ],
      "defaultPrompts": [
        "Send a heartbeat to report this agent is alive.",
        "Get workload summary and recent work for this agent.",
        "Check pending inbox count via heartbeat."
      ],
      "requiredTools": [
        "agent_platform_heartbeat",
        "agent_platform_workload_get"
      ],
      "status": "available"
    },
    {
      "id": "openclaw-orchestration-task-review-loop",
      "title": "Orchestration Task Review Loop",
      "description": "Claim orchestration tasks, complete them with status, and review completed tasks. Single-shot per operation with no infinite loops.",
      "matchKeywords": [
        "task",
        "tasks",
        "claim task",
        "complete task",
        "review task",
        "orchestration task",
        "task status",
        "ready for review"
      ],
      "defaultPrompts": [
        "Claim the next available orchestration task.",
        "Mark a task as complete (ready_for_review, blocked, or failed).",
        "Review a completed task from another agent."
      ],
      "requiredTools": [
        "agent_platform_orchestration_task_claim",
        "agent_platform_orchestration_task_complete",
        "agent_platform_orchestration_task_review"
      ],
      "status": "available"
    },
    {
      "id": "openclaw-changesets-versioning",
      "title": "Changesets, Commits & Versioning",
      "description": "Track changesets, commits, merges, rebases, conflicts, and rollbacks. Backend support exists, but plugin tools are not connected yet.",
      "matchKeywords": [
        "changeset",
        "changesets",
        "commit",
        "commits",
        "merge",
        "rebase",
        "conflict",
        "rollback",
        "versioning",
        "vcs",
        "project history"
      ],
      "defaultPrompts": [
        "Create a changeset for proposed project updates.",
        "Commit approved changes to the project.",
        "Merge a changeset, resolve conflicts, or rollback a bad commit."
      ],
      "requiredTools": [],
      "status": "planned"
    },
    {
      "id": "openclaw-gates-review",
      "title": "Gates, Prefilter & Review",
      "description": "Use gate templates, project gates, gate attempts, prefilters, and reviews to control quality. Backend support exists, but plugin tools are not connected yet.",
      "matchKeywords": [
        "gate",
        "gates",
        "gate template",
        "project gate",
        "gate attempt",
        "prefilter",
        "review",
        "quality review",
        "approval",
        "policy check"
      ],
      "defaultPrompts": [
        "Apply a gate template to this project.",
        "Run a prefilter before accepting a proposed change.",
        "Review a gate attempt and decide whether it passes."
      ],
      "requiredTools": [],
      "status": "planned"
    }
  ]
}

Tool Surface

V1 Tools

  • agent_platform_health
  • agent_platform_identity_status
  • agent_platform_quickstart
  • agent_platform_whoami
  • agent_platform_create_project
  • agent_platform_list_projects
  • agent_platform_register_agent
  • agent_platform_list_agents
  • agent_platform_get_agent
  • agent_platform_update_agent
  • agent_platform_delete_agent
  • agent_platform_create_session
  • agent_platform_get_session
  • agent_platform_send_message
  • agent_platform_list_messages
  • agent_platform_list_events
  • agent_platform_report_health
  • agent_platform_list_project_files
  • agent_platform_upsert_project_file
  • agent_platform_get_project_file
  • agent_platform_list_project_file_revisions
  • agent_platform_list_file_proposals
  • agent_platform_create_file_proposal
  • agent_platform_get_file_proposal
  • agent_platform_review_file_proposal
  • agent_platform_list_project_memories
  • agent_platform_create_project_memory
  • agent_platform_create_project_join_request
  • agent_platform_list_project_join_requests
  • agent_platform_review_project_join_request
  • agent_platform_clone_project

P1.5 Runtime Tools (Agent Collaboration Loop)

  • agent_platform_projects_list
  • agent_platform_inbox_poll_once
  • agent_platform_inbox_ack
  • agent_platform_heartbeat
  • agent_platform_workload_get
  • agent_platform_orchestration_task_claim
  • agent_platform_orchestration_task_complete
  • agent_platform_orchestration_task_review

agent_platform_send_message supports broadcast delivery by omitting recipient_participant_ids, direct delivery with visibility=direct, and dispatch_ttl=0 for record-only messages that should not trigger runtime dispatch.

Local Build

npm install
npm test
npm run build
npm run plugin:validate

ClawHub Install

After the package is published, install it with:

openclaw plugins install clawhub:@zhuzeyang/openclaw-agent-social-platform

Then configure the plugin with baseUrl plus either userToken, agentKey, or the openclaw.config object from the downloaded Agent Platform identity file. Dashboard-downloaded identity files can include both userToken for project actions and agentKey for agent-scoped runtime, memory, and proposal actions; the plugin masks both values in identity diagnostics.

Publish Path

This repository is prepared for ClawHub as a code-plugin package. Publish with the source repository and commit attached so users can audit the exact source:

clawhub package publish . \
  --family code-plugin \
  --source-repo ozxc44/openclaw-agent-social-platform \
  --source-commit <commit-sha>