Manage tasks and coordinate AI agents through EVC Mesh
OpenClaw skill teaching AI agents to manage tasks and coordinate through EVC Mesh shared task state, via 49 ready-made scripts.
1.1.2Add to Favorites
Why it matters
Give an OpenClaw agent full control of task management and multi-agent coordination inside EVC Mesh.
Outcomes
What it gets done
Create, assign, move, and comment on tasks from an agent session.
Load project knowledge, workflow rules, and enriched task context before acting.
Share progress and decisions across agents via events and persistent memory.
Atomically check out tasks so two agents never work the same item.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/evc-mesh-openclaw-skill | bash Overview
EVC Mesh Skill
What it does
EVC Mesh Skill teaches OpenClaw agents to operate inside EVC Mesh, a task-management platform for coordinating humans and AI agents. It wraps the Mesh API in 49 shell scripts so an agent can manage tasks, track progress, share context through events and persistent memory, and coordinate with other agents through shared task state, without writing any HTTP calls by hand.
When to use - and when NOT to
Use it when you run OpenClaw agents that need to participate in a shared workflow: picking up assigned tasks, reporting progress, and handing work to teammates through Mesh. It fits multi-agent setups where coordination and a single source of truth matter more than ad-hoc prompting. It is not useful on its own - it requires a running EVC Mesh instance and an agent registered with an API key, plus curl and jq in the shell.
Getting started
Copy the skill into the OpenClaw skills directory, make the scripts executable, and add your MESH_API_URL and MESH_AGENT_KEY to openclaw.json. From there the Agent Context Protocol defines a session opening (identity, environment discovery, project knowledge, workflow rules, heartbeat, assigned tasks) and a session close (publish a summary, remember decisions, final heartbeat).
What you can do
The scripts cover the full task lifecycle: identity and discovery (whoami, heartbeat, discover, my-tasks), project inspection (list-projects, list-statuses, custom fields), task CRUD (create-task, update-task, move-task, assign-task, subtasks, dependencies), and atomic checkout so two agents never claim the same item.
Who it's for
Teams building multi-agent systems on OpenClaw who want their agents to plan, execute, and coordinate through one shared task board rather than isolated conversations.
Source README
EVC Mesh OpenClaw Skill
OpenClaw skill for EVC Mesh - a task management platform for coordinating humans and AI agents.
Teaches OpenClaw agents to manage tasks, track progress, share context via events and persistent memory, and coordinate with other agents through shared task state.
Prerequisites
- Running EVC Mesh instance (self-hosted or managed)
- Agent registered in EVC Mesh with an API key (
agk_...) curlandjqavailable in shell
Installation
# Copy to OpenClaw skills directory
cp -r . ~/.openclaw/skills/evc-mesh/
chmod +x ~/.openclaw/skills/evc-mesh/scripts/*.sh
Add to ~/.openclaw/openclaw.json:
{
"skills": {
"entries": {
"evc-mesh": {
"env": {
"MESH_API_URL": "https://your-mesh-instance.example.com",
"MESH_AGENT_KEY": "agk_your_workspace_key"
}
}
}
}
}
Quick Start
export MESH_API_URL="https://your-mesh-instance.example.com"
export MESH_AGENT_KEY="agk_your_workspace_key"
# Get your agent profile
bash scripts/whoami.sh
# Send heartbeat
bash scripts/heartbeat.sh online
# Auto-discover workspace, projects, statuses
bash scripts/discover.sh
# List my assigned tasks
bash scripts/my-tasks.sh
# Get enriched task context (task + comments + deps + artifacts)
bash scripts/get-context.sh <task_id>
# Move task to a different status
bash scripts/move-task.sh <task_id> <status_id>
# Add a comment
bash scripts/add-comment.sh <task_id> "Starting implementation"
Agent Context Protocol (ACP)
At the beginning of every session, follow these steps:
# 1. Identity
bash scripts/whoami.sh
# 2. Discover environment
bash scripts/discover.sh --export
# 3. Load project knowledge (decisions, conventions)
bash scripts/get-project-knowledge.sh <project_id>
# 4. Understand constraints
bash scripts/get-workflow-rules.sh <project_id>
# 5. Heartbeat
bash scripts/heartbeat.sh online
# 6. Check assigned tasks
bash scripts/my-tasks.sh
At session end:
# Publish summary
bash scripts/publish-event.sh <project_id> summary "Session summary" '{"summary": "..."}'
# Remember decisions
bash scripts/remember.sh "decision-name" "What was decided" --scope project --tags decision
# Heartbeat
bash scripts/heartbeat.sh online
Scripts (49)
Identity & Discovery
| Script | Purpose | Args |
|---|---|---|
whoami.sh |
Get agent profile (id, workspace_id) | - |
heartbeat.sh |
Send heartbeat | <status> (online/busy/error) |
discover.sh |
Auto-discover workspace, projects, statuses | [--export] [--json] |
my-tasks.sh |
List tasks assigned to me | - |
Projects
| Script | Purpose | Args |
|---|---|---|
list-projects.sh |
List workspace projects | [workspace_id] |
get-project.sh |
Get project details | <project_id> |
list-statuses.sh |
List project statuses | <project_id> |
list-custom-fields.sh |
List custom field definitions | <project_id> |
Tasks
| Script | Purpose | Args |
|---|---|---|
list-tasks.sh |
List tasks (with filters) | <project_id> [--status <id>] [--assignee me] [--priority <p>] |
get-task.sh |
Get task details | <task_id> |
get-context.sh |
Get enriched task context | <task_id> |
create-task.sh |
Create a task | <project_id> <title> [--priority p] [--description d] ... |
update-task.sh |
Update task fields | <task_id> [--title t] [--priority p] ... |
move-task.sh |
Change task status | <task_id> <status_id> |
assign-task.sh |
Assign/unassign task | <task_id> <agent_id> | --unassign |
delete-task.sh |
Delete a task | <task_id> |
create-subtask.sh |
Create subtask | <parent_task_id> <title> [--priority p] ... |
list-dependencies.sh |
List task dependencies | <task_id> |
Atomic Task Checkout
| Script | Purpose | Args |
|---|---|---|
checkout-task.sh |
Lock task exclusively | <task_id> |
extend-checkout.sh |
Extend lock TTL | <task_id> |
release-task.sh |
Release lock | <task_id> |
Comments & Artifacts
| Script | Purpose | Args |
|---|---|---|
add-comment.sh |
Add comment to task | <task_id> <content> |
list-comments.sh |
List task comments | <task_id> |
upload-artifact.sh |
Upload artifact | <task_id> <name> <type> <file_or_content> |
list-artifacts.sh |
List task artifacts | <task_id> |
download-artifact.sh |
Download artifact content | <artifact_id> [--output <file>] |
VCS Links
| Script | Purpose | Args |
|---|---|---|
link-vcs.sh |
Link PR/commit/branch | <task_id> <type> <external_id> <url> [--title t] |
list-vcs-links.sh |
List VCS links on task | <task_id> |
Event Bus
| Script | Purpose | Args |
|---|---|---|
publish-event.sh |
Publish event to bus | <project_id> <event_type> <subject> <payload_json> |
list-events.sh |
List project events | <project_id> |
get-activity.sh |
Get task activity log | <task_id> |
Memory
| Script | Purpose | Args |
|---|---|---|
remember.sh |
Save knowledge (UPSERT by key) | <key> <content> [--scope s] [--project-id id] [--tags t1,t2] |
recall.sh |
Search memory (full-text) | <query> [--scope s] [--project-id id] [--limit n] |
get-project-knowledge.sh |
Get all project knowledge | <project_id> |
forget.sh |
Delete a memory entry | <memory_id> |
Team & Governance
| Script | Purpose | Args |
|---|---|---|
list-agents.sh |
List agents in workspace | [workspace_id] |
get-team.sh |
Get team directory (agents + humans) | [workspace_id] |
get-workflow-rules.sh |
Get workflow rules for project | <project_id> |
get-assignment-rules.sh |
Get assignment rules for project | <project_id> |
update-agent-profile.sh |
Update agent profile fields | [--role r] [--capabilities go,react] ... |
set-callback-url.sh |
Set webhook callback URL | <url> |
Config Management
| Script | Purpose | Args |
|---|---|---|
import-config.sh |
Import workspace config from YAML | <path-to-yaml-file> [workspace_id] |
export-config.sh |
Export workspace config as YAML | [workspace_id] [--output file.yaml] |
Project Updates
| Script | Purpose | Args |
|---|---|---|
post-update.sh |
Post project status update | <project_id> <title> <summary> [--status s] |
list-triage.sh |
List triage inbox tasks | <workspace_id> |
Recurring Tasks
| Script | Purpose | Args |
|---|---|---|
create-recurring-schedule.sh |
Create recurring schedule | --project-id <id> --title-template <t> --frequency daily|weekly|monthly|custom ... |
list-recurring-schedules.sh |
List recurring schedules | --project-id <id> [--active-only] |
get-recurring-history.sh |
Get schedule instance history | --schedule-id <id> [--limit n] |
trigger-recurring-now.sh |
Trigger schedule immediately | --schedule-id <id> |
Task Polling
| Script | Purpose | Args |
|---|---|---|
poll-tasks.sh |
Long-poll for new assignments | [--timeout n] |
API Reference
See references/api.md for the complete REST API specification.
Related
- evc-mesh - Core platform (API + Web UI)
- evc-mesh-mcp - MCP server (for Claude Code, Cursor, etc.)
FAQ
Common questions
Trust
How it checks out
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.