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.
Working with an agent rather than a chat
Manus takes a goal and works through it in steps — searching, reading, writing files, running code — and the commands in the table start, steer and stop that process. The most useful habit is to state the deliverable ("a spreadsheet with these columns", "a report of at most two pages") and the constraints up front, then let the agent run; interrupting to redirect works, but a clear brief needs fewer redirections. Check the intermediate outputs the agent shows, since it acts on its own interpretation of the task.
Files, context and limits
Uploaded files become part of the task context and the agent can produce files back, which is the difference from a chat assistant. Long tasks consume credits proportionally, and sessions can be resumed with the task history intact. The commands and prompt patterns here reflect the current Manus interface and are checked against its documentation on the date shown.