Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
vm0-ai avatar

Manus

  • 34 installs
  • 76 repo stars
  • Updated August 4, 2026
  • vm0-ai/vm0-skills

Helps with ai & agent building tasks during AI-assisted development.

About

manus is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted coding.

  • manus
  • AI & Agent Building
  • AI-coding skill

Manus by the numbers

  • 34 all-time installs (skills.sh)
  • Ranked #8,855 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/vm0-ai/vm0-skills --skill manus

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs34
repo stars76
Last updatedAugust 4, 2026
Repositoryvm0-ai/vm0-skills

What it does

Helps with ai & agent building tasks during AI-assisted development.

Files

SKILL.mdMarkdownGitHub ↗

Troubleshooting

If requests fail, run zero doctor check-connector --env-name MANUS_TOKEN or zero doctor check-connector --url https://api.manus.ai/v2/task.detail?task_id= --method GET

Tasks

Create a Task

Write to /tmp/manus_task.json:

{
  "message": {
    "content": [
      {
        "type": "text",
        "text": "<your task prompt>"
      }
    ]
  }
}

Then run:

curl -s -X POST "https://api.manus.ai/v2/task.create" --header "x-manus-api-key: $MANUS_TOKEN" --header "Content-Type: application/json" -d @/tmp/manus_task.json

Response includes task_id and task_url to track the task.

Create a Task with Options

Write to /tmp/manus_task.json:

{
  "message": {
    "content": [
      {
        "type": "text",
        "text": "<your task prompt>"
      }
    ]
  },
  "title": "<custom task title>",
  "locale": "en",
  "agent_profile": "manus-1.6",
  "share_visibility": "private",
  "interactive_mode": false
}

Then run:

curl -s -X POST "https://api.manus.ai/v2/task.create" --header "x-manus-api-key: $MANUS_TOKEN" --header "Content-Type: application/json" -d @/tmp/manus_task.json

`agent_profile` options:

  • manus-1.6 — default, balanced performance
  • manus-1.6-lite — faster, lower cost
  • manus-1.6-max — highest quality, more thorough

Create a Task with File Attachments

First upload the file (see Files section), then include the file_id in the task:

Write to /tmp/manus_task.json:

{
  "message": {
    "content": [
      {
        "type": "text",
        "text": "<your task prompt>"
      },
      {
        "type": "file",
        "file_id": "<your-file-id>"
      }
    ]
  }
}

Then run:

curl -s -X POST "https://api.manus.ai/v2/task.create" --header "x-manus-api-key: $MANUS_TOKEN" --header "Content-Type: application/json" -d @/tmp/manus_task.json

Create a Task in a Project

Write to /tmp/manus_task.json:

{
  "project_id": "<your-project-id>",
  "message": {
    "content": [
      {
        "type": "text",
        "text": "<your task prompt>"
      }
    ]
  }
}

Then run:

curl -s -X POST "https://api.manus.ai/v2/task.create" --header "x-manus-api-key: $MANUS_TOKEN" --header "Content-Type: application/json" -d @/tmp/manus_task.json

Create a Task with Connectors

Pass connector UUIDs from your Manus integrations page to give the agent access to external tools (Gmail, Notion, Google Calendar, etc.):

Write to /tmp/manus_task.json:

{
  "message": {
    "content": [
      {
        "type": "text",
        "text": "<your task prompt>"
      }
    ],
    "connectors": ["<connector-uuid-1>", "<connector-uuid-2>"]
  }
}

Then run:

curl -s -X POST "https://api.manus.ai/v2/task.create" --header "x-manus-api-key: $MANUS_TOKEN" --header "Content-Type: application/json" -d @/tmp/manus_task.json

Get Task Detail

Replace <task-id> with the task_id from the create response:

curl -s "https://api.manus.ai/v2/task.detail?task_id=<task-id>" --header "x-manus-api-key: $MANUS_TOKEN"

Response includes status, credit_usage, and task_url. Poll this endpoint to track task completion.

Task status values: pending, running, completed, failed, cancelled

Projects

Create a Project

Write to /tmp/manus_project.json:

{
  "name": "<project name>",
  "instruction": "<default instruction applied to all tasks in this project>"
}

Then run:

curl -s -X POST "https://api.manus.ai/v2/project.create" --header "x-manus-api-key: $MANUS_TOKEN" --header "Content-Type: application/json" -d @/tmp/manus_project.json

Response includes project.id — use this as project_id when creating tasks.

List Projects

curl -s "https://api.manus.ai/v2/project.list" --header "x-manus-api-key: $MANUS_TOKEN"

Files

Files are uploaded in two steps: first request a presigned upload URL, then PUT the file content to that URL. Files expire 48 hours after upload.

Step 1 — Request Upload URL

Write to /tmp/manus_file_upload.json:

{
  "filename": "<your-filename.pdf>"
}

Then run:

curl -s -X POST "https://api.manus.ai/v2/file.upload" --header "x-manus-api-key: $MANUS_TOKEN" --header "Content-Type: application/json" -d @/tmp/manus_file_upload.json

The response contains file.id and upload_url (valid for 3 minutes).

Step 2 — Upload File Content

Replace <presigned-upload-url> with the upload_url from Step 1:

curl -s -X PUT "<presigned-upload-url>" --header "Content-Type: application/octet-stream" --data-binary @/path/to/your/file.pdf

Get File Detail

Check the file status before attaching it to a task. Only files with status: uploaded can be used:

curl -s "https://api.manus.ai/v2/file.detail?file_id=<file-id>" --header "x-manus-api-key: $MANUS_TOKEN"

Webhooks

Webhooks deliver async task status updates to your HTTPS endpoint. Manus sends a POST request with the task result when the task completes or changes state.

Create a Webhook

The endpoint URL must be publicly accessible and return a 2xx response:

Write to /tmp/manus_webhook.json:

{
  "url": "https://your-endpoint.example.com/webhook"
}

Then run:

curl -s -X POST "https://api.manus.ai/v2/webhook.create" --header "x-manus-api-key: $MANUS_TOKEN" --header "Content-Type: application/json" -d @/tmp/manus_webhook.json

Response includes webhook.id — save this to delete the webhook later.

Delete a Webhook

Write to /tmp/manus_webhook_delete.json:

{
  "webhook_id": "<your-webhook-id>"
}

Then run:

curl -s -X POST "https://api.manus.ai/v2/webhook.delete" --header "x-manus-api-key: $MANUS_TOKEN" --header "Content-Type: application/json" -d @/tmp/manus_webhook_delete.json

API Parameters Reference

task.create Body

ParameterTypeRequiredDescription
messageobjectYesTask prompt and configuration
message.contentarrayYesArray of content parts (text, file, voice)
message.connectorsstring[]NoConnector UUIDs to enable
message.enable_skillsstring[]NoSkill IDs available to the agent
message.force_skillsstring[]NoSkill IDs the agent must invoke
project_idstringNoAssociates task with a project
titlestringNoCustom task title
localestringNoOutput language (e.g. en, zh-CN)
agent_profileenumNomanus-1.6, manus-1.6-lite, manus-1.6-max
interactive_modebooleanNoAllow agent to ask follow-up questions
share_visibilityenumNoprivate, team, or public
hide_in_task_listbooleanNoHide from webapp task list

Guidelines

1. Polling: Tasks are asynchronous. Poll task.detail until status is completed or failed. For production use, prefer webhooks. 2. File expiry: Uploaded files expire after 48 hours — upload just before task creation. 3. Presigned URL expiry: The upload_url from file.upload expires in 3 minutes — PUT the file immediately after receiving it. 4. Rate limits: 10 requests per second per API key. 5. Credits: Tasks consume credits based on complexity. Use manus-1.6-lite to reduce cost for simple tasks. 6. Projects: Use projects to apply shared instructions to groups of related tasks.

API Reference

  • API Reference: https://open.manus.im/docs/api-reference
  • Manus Dashboard: https://manus.im
  • Integration Settings: https://manus.im/settings/integration

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.