Manus Commands & Prompt Reference
27 commands & parameters · 4 categories · Source: Manus API Reference (open.manus.ai)
Manus is an agent rather than a chat model, and its API shape reflects that: you create a task, the agent plans and executes it asynchronously, and you poll or stream messages until it delivers a result. The typed surface is correspondingly different from a chat completions endpoint - task-level settings like agent_profile, locale, and interactive_mode sit alongside a message object whose fields decide which skills, connectors, and prior tasks the agent may reach for.
Three message fields do most of the steering. enable_skills loads a skill set for the task, force_skills guarantees the agent actually invokes them, and task_references (up to 20 bare 22-character task IDs) lets the agent browse earlier work. Attachments arrive as ContentPart items, and which field you use matters: file_id for something pre-uploaded, file_url for a URL Manus downloads (20 MB cap), or file_data for inline base64 (also 20 MB after decoding).
All Commands
Task Parameters (8)
| Command / Syntax | What it does | Notes |
|---|---|---|
| project_id | Project ID to associate this task with | The project's instruction will be automatically applied. Use project.list to get available project IDs. |
| locale | Locale for the task output language (e.g., "en", "zh-CN", "ja") | Defaults to the user's account locale setting. |
| interactive_mode | When enabled, the agent may pause and ask follow-up questions if the input is insufficient | When disabled (default), the agent proceeds with best-effort execution without asking. |
| hide_in_task_list | When true, the task will not appear in the Manus webapp task list | The task is still accessible via the task_url in the response. Useful for automated/background tasks. |
| share_visibility | Controls who can view the task | "private" (default) — only the task creator can view. "team" — all team members can view. "public" — anyone with the share_url can view without authentication. |
| agent_profile | Agent profile to use for the task | "manus-1.6" (default) — standard capability. "manus-1.6-lite" — lightweight, faster responses. "manus-1.6-max" — maximum capability. Free personal accounts are downgraded to... |
| title | Custom title for the task | If not provided, a title will be auto-generated based on the input message. |
| structured_output_schema | JSON Schema for structured output extraction | When provided, the agent runs normally, then a post-processing step extracts a result conforming to your schema. The schema must follow the Structured Output subset of JSON Schema: all... |
Message Object Fields (5)
| Command / Syntax | What it does | Notes |
|---|---|---|
| message.content | String (plain text) or array of ContentPart objects | User text is limited to approximately 5,000 estimated tokens per request; the exact character count varies by language and content. For an array, the limit applies to the combined text... |
| message.connectors | List of connector IDs to enable for this task | Resolution order when omitted: 1) if the task belongs to a project, the project's default connectors are used; 2) otherwise, the user's default enabled connectors are used. Use... |
| message.enable_skills | Skill IDs to enable for this task | If empty or omitted, loads the skills the user has enabled in their account settings. Use skill.list to retrieve available skill IDs. |
| message.force_skills | Skill IDs the agent must invoke during this task | Forced skills are automatically available even if not listed in enable_skills. |
| message.task_references | Task IDs of existing tasks to reference from this message | The agent can then browse the conversation and files of those tasks on demand. Each entry must be a bare 22-character alphanumeric task ID — a full task URL, or a shortcut value such as... |
Content Part Types & Fields (9)
| Command / Syntax | What it does | Notes |
|---|---|---|
| "type": "text" | Must be "text" | Field of a ContentPart item inside message.content. |
| text | The text content of the message | Across a ContentPart array, all text parts must contain no more than approximately 5,000 estimated tokens in total. |
| "type": "file" | Must be "file" | Field of a ContentPart item inside message.content. |
| file_id | ID of a previously uploaded file | Upload via file.upload first to get the file ID. |
| file_url | Publicly accessible URL to the file | The agent will download it directly. |
| file_data | Base64 encoded file content | Format: data:<mime_type>;base64,<encoded_content> (e.g., data:application/pdf;base64,JVBERi0...). |
| filename | Display name of the file including extension (e.g., "report.pdf") | Required when using file_data; recommended for file_url. |
| mime_type | MIME type of the file (e.g., "application/pdf", "image/png") | Optional; auto-detected from filename if omitted. |
| "type": "voice" | Must be "voice" | Field of a ContentPart item inside message.content. |
Endpoints, Profiles & Follow-up Fields (5)
| Command / Syntax | What it does | Notes |
|---|---|---|
| POST /v2/task.create | Create a new task; runs asynchronously | Poll task.listMessages for progress. OAuth scope: create_task or manage_all_tasks. |
| POST /v2/task.sendMessage | Send a follow-up message to an existing task | Use this instead of task.create when talking to an agent that already exists. |
| manus-1.6 | Default agent profile: standard capability | Set as the agent_profile value on task.create or per turn on task.sendMessage. |
| task_id | The unique identifier of the task to send the message to | Supports the shortcut agent-default-main_task for the IM agent's main task. |
| clear_connectors | Removes all connectors from this task for this and subsequent turns | Combine with message.connectors to form three states: a non-empty message.connectors overrides the task's connectors with the new list; clear_connectors: true clears all connectors;... |
Frequently Asked Questions
How do I continue an existing Manus task instead of starting a new one?
Use task.sendMessage with the task_id rather than task.create. It accepts the same message content formats.
What is the difference between enable_skills and force_skills?
enable_skills makes a skill available for the task; force_skills guarantees the agent invokes it. Forced skills are automatically available without also being enabled.
How do I attach a large file?
Upload it first via file.upload and pass file_id. file_url and file_data are capped at 20 MB, so large files must go through the upload path.
Every entry on this page is a literal, typeable token taken from the official documentation linked above. Command sets in AI tools change quickly - the in-product command menu is always authoritative for your installed version.