← Back to Skills Marketplace
krishbhimani

Manus Skill - Operate Manus through Openclaw

by KrishBhimani · GitHub ↗ · v1.0.2 · MIT-0
cross-platform ✓ Security Clean
149
Downloads
0
Stars
0
Active Installs
3
Versions
Install in OpenClaw
/install manus-skill
Description
Interact with the Manus AI agent platform via its REST API. Use this skill whenever the user mentions Manus, manus.ai, Manus API, Manus tasks, Manus projects...
README (SKILL.md)

Manus API Skill

Manage tasks, projects, files, and sessions on the Manus AI agent platform.

Setup

export MANUS_API_KEY="your-api-key"

Get your key from: Manus dashboard → Settings → Integration → Build with Manus API.

The session manager writes .manus_sessions.json to the project root to track active and archived sessions. Add it to .gitignore — it contains prompts, task IDs, and task URLs that may be sensitive.

echo ".manus_sessions.json" >> .gitignore

Authentication

Every request uses the API_KEY header (not Bearer token):

curl -H "API_KEY: $MANUS_API_KEY" https://api.manus.ai/v1/tasks

Base URL: https://api.manus.ai — all endpoints under /v1/.


Session Management (CRITICAL — Read First)

Every POST /v1/tasks without a taskId creates a brand-new task and consumes credits. There is no undo. Session tracking prevents accidental duplication.

For the full registry format, search algorithm, archival rules, and edge cases, read references/session-management.md.

How It Works

All sessions are tracked in .manus_sessions.json in the project root:

{
  "active": {
    "security-audit": { "task_id": "...", "description": "...", "tags": [...], ... }
  },
  "archived": {
    "q2-report": { "task_id": "...", "description": "...", "archived_reason": "completed", ... }
  }
}

Active = running or pending tasks. Archived = completed or failed (still searchable, can be resumed).

The 4 Rules

  1. Before creating any task, search the registry for a matching session. If found, continue it with taskId. If not, create new.
  2. After every task creation, save task_id + metadata to the registry immediately.
  3. When multiple sessions match, present the top matches and ask the user to pick. Never guess.
  4. When a task completes or fails, move it from active to archived automatically.

Session Resolution Flow

When the user wants to work with a session:

1. Search active sessions (name, description, tags, prompts)
      |
   1 match  -> Use it
   0 matches -> Search archived
   >1 match  -> Present list, ask user
      |
2. Search archived
      |
   1 match  -> Ask: "Archived (completed). Resume or start fresh?"
   0 matches -> Create new session
   >1 match  -> Present list, ask user

Registry Entry Fields

Each session stores: task_id, task_title, task_url, description (agent-generated summary), tags (keywords for search), project_id, project_name, agent_profile, task_mode, created_at, last_used, last_status, turn_count, first_prompt, last_prompt.

Archived entries additionally store archived_at and archived_reason.

Using the Session Manager Script

The script at scripts/manus_session.py handles all session tracking, API calls, polling, archival, and search. Use it instead of calling the API directly.

As a library (when an agent imports it):

from scripts.manus_session import ManusSession

s = ManusSession()  # reads .env automatically

# New session
s.send("Review auth module for vulnerabilities",
       session_name="security-audit",
       tags=["security", "auth", "code-review"])

# Continue (auto-passes taskId)
s.send("Now check the token refresh logic",
       session_name="security-audit")

# Search sessions
matches = s.search("auth")

# Poll until done (auto-archives on completion)
result = s.poll_until_done("security-audit")

# List sessions
s.list_sessions()                        # active only
s.list_sessions(include_archived=True)   # both

# Resume archived session
s.unarchive("q2-report")
s.send("Add December data", session_name="q2-report")

# Import orphaned task from Manus webapp
s.import_task("TeBim6FDQf9peS52xHtAyh", session_name="imported-task")

As a CLI (when an agent runs it from the shell):

# Send prompt (new or continue)
python scripts/manus_session.py send "Review this PR" -s pr-review --tags security,backend
python scripts/manus_session.py send "Focus on auth" -s pr-review  # continues

# Search
python scripts/manus_session.py search "auth"

# List sessions
python scripts/manus_session.py sessions
python scripts/manus_session.py sessions --archived

# Check status
python scripts/manus_session.py status -s pr-review

# Poll until done
python scripts/manus_session.py poll -s pr-review

# Resume archived
python scripts/manus_session.py unarchive -s old-session

# Import orphaned task
python scripts/manus_session.py import-task TASK_ID --name my-task

# Upload file
python scripts/manus_session.py upload report.pdf

# Projects
python scripts/manus_session.py create-project "Code Reviews" --instruction "Check for security issues"
python scripts/manus_session.py projects

# Cleanup old archived sessions (>7 days)
python scripts/manus_session.py cleanup

Quick Reference — Endpoints

Resource Method Path Purpose
Projects POST /v1/projects Create project with default instruction
Projects GET /v1/projects List all projects
Tasks POST /v1/tasks Create new task OR continue existing
Tasks GET /v1/tasks List tasks (filter, paginate, search)
Tasks GET /v1/tasks/{task_id} Get single task detail + output
Tasks PUT /v1/tasks/{task_id} Update task (title, sharing, visibility)
Tasks DELETE /v1/tasks/{task_id} Permanently delete task
Files POST /v1/files Get presigned upload URL
Files GET /v1/files List uploaded files
Files GET /v1/files/{file_id} Get file details
Files DELETE /v1/files/{file_id} Delete a file
Webhooks POST /v1/webhooks Register webhook URL
Webhooks DELETE /v1/webhooks/{webhook_id} Remove webhook

For full request/response schemas, read references/api-reference.md.


Core Workflows

1. Create a New Session

python scripts/manus_session.py send \
  "Analyze Q2 revenue trends and create a summary report" \
  -s q2-analysis --mode agent --tags revenue,q2,analysis

2. Continue an Existing Session

python scripts/manus_session.py send \
  "Now break it down by region" -s q2-analysis

3. Upload File and Attach

python scripts/manus_session.py upload report.pdf
# Returns file_id

python scripts/manus_session.py send \
  "Summarize this document" -s doc-review --file-id FILE_ID

Files expire after 48 hours.

4. Organize with Projects

python scripts/manus_session.py create-project "Research" \
  --instruction "Always cite sources and include confidence levels"

python scripts/manus_session.py send \
  "Research AI agent frameworks" -s agent-research --project proj_abc123

Agent Profiles & Task Modes

Profile Use Case Cost
manus-1.6 General — balanced quality/speed Standard
manus-1.6-lite Simple/fast tasks Lower
manus-1.6-max Complex analysis Higher
Mode Behavior
chat Conversational only
adaptive Agent decides when to use tools
agent Full agent — browses web, writes code, creates files

Connectors

Enable external service access by passing connector UUIDs:

  • Gmail: 9444d960-ab7e-450f-9cb9-b9467fb0adda
  • Notion / Google Calendar: configured per account

Cost Awareness

  • ~150 credits per typical task. Use manus-1.6-lite + chat for simple queries.
  • Always reuse sessions via taskId. Duplicate tasks = wasted credits.
  • Check credit_usage in task responses to monitor spend.

Reference Files

File When to Read
references/session-management.md Full session registry design, JSON schema, search/scoring algorithm, archival rules, edge cases
references/api-reference.md Exact field schemas for all endpoints, query params, webhook payloads, attachment formats, OpenAI SDK compat
scripts/manus_session.py Session-aware Python client — use as library or CLI for all Manus interactions
Usage Guidance
This skill appears to do what it says (talk to Manus). Before installing or using it: 1) Treat .manus_sessions.json as sensitive — keep it out of source control (SKILL.md already suggests adding it to .gitignore) or change the session_file location to a secure path. 2) Provide a Manus API key with the minimum permissions possible and monitor its usage (every POST /v1/tasks can consume credits). 3) The Python script requires the 'requests' package but the skill bundle does not install dependencies automatically — ensure your environment provides it. 4) Review scripts/manus_session.py yourself (it's included) to confirm there is no behavior you find unacceptable (it appears straightforward and non-obfuscated). 5) If you use this in a shared repo or CI, consider isolating the session registry and rotating keys if leaked. If you want additional assurance, run the script in a sandboxed environment and inspect network traffic to confirm calls go only to api.manus.ai and legitimate S3 upload URLs.
Capability Analysis
Type: OpenClaw Skill Name: manus-skill Version: 1.0.2 The manus-skill bundle provides a legitimate interface for interacting with the Manus AI platform API. It includes a well-documented Python script (scripts/manus_session.py) that handles task creation, session persistence via a local JSON registry, and file uploads to api.manus.ai. The code follows best practices such as atomic file writes and standard API authentication, with no evidence of malicious intent, data exfiltration, or prompt injection vulnerabilities.
Capability Assessment
Purpose & Capability
Name/description, SKILL.md, API reference, and the included Python script all implement Manus API interactions (create/list/poll tasks, upload files, manage sessions). Requiring MANUS_API_KEY is proportional and expected for this purpose; no unrelated credentials or system-level access are requested.
Instruction Scope
Instructions and the script perform network calls only to the documented Manus endpoints and handle session tracking. They also instruct the agent to write a local registry file (.manus_sessions.json) that will contain prompts, task IDs, and URLs — this is within scope for session management but is sensitive data and the docs explicitly recommend adding it to .gitignore.
Install Mechanism
This is an instruction-only skill with no install spec. The only runtime dependency observed is the Python 'requests' library (the script exits if it's missing), but no install mechanism is provided; this is low-risk but the missing dependency declaration is a usability note rather than a security red flag.
Credentials
Only MANUS_API_KEY is required (declared as primary). That is proportionate to a REST-API integration. The script reads that env var and no other secrets or unexpected environment/config paths are referenced.
Persistence & Privilege
always:false (normal). The skill writes a local session registry (.manus_sessions.json) to the project root; this persistent file stores prompts and metadata which could be sensitive. The skill does not request elevation or modify other skills or global agent settings.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install manus-skill
  3. After installation, invoke the skill by name or use /manus-skill
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.2
manus-skill 1.0.2 - Updated metadata format in SKILL.md to use the `metadata.openclaw` structure for environment variable requirements, replacing the previous `compatibility` section. - No code or logic changes; documentation/descriptor file only.
v1.0.1
**Manus Skill v1.0.1 — Adds environment, dependency, and file tracking metadata** - Added `compatibility` section specifying required environment variable, dependencies, network access, and files written. - `.manus_sessions.json` is now explicitly documented as being written by the skill; guidance given to add it to `.gitignore`. - Minor setup instructions improved for clarity. - No functionality changes; documentation and metadata only.
v1.0.0
- Major update: Overhauled session/task management, enriched documentation, and modernized API usage. - Skill renamed from "manus" to "manus-api" with a new focus on robust session tracking and task de-duplication. - Session management is now handled by a new Python script (`scripts/manus_session.py`), including search, archival, and task continuation logic, using a local JSON registry. - Documentation now includes clear API authentication steps, detailed session rules, and updated CLI/library usage instructions. - Two new reference docs (`references/api-reference.md`, `references/session-management.md`) added; legacy files and outdated shell scripts removed. - Introduced best practices and safeguards to prevent accidental duplicate task creation and wasted credits.
Metadata
Slug manus-skill
Version 1.0.2
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 3
Frequently Asked Questions

What is Manus Skill - Operate Manus through Openclaw?

Interact with the Manus AI agent platform via its REST API. Use this skill whenever the user mentions Manus, manus.ai, Manus API, Manus tasks, Manus projects... It is an AI Agent Skill for Claude Code / OpenClaw, with 149 downloads so far.

How do I install Manus Skill - Operate Manus through Openclaw?

Run "/install manus-skill" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Manus Skill - Operate Manus through Openclaw free?

Yes, Manus Skill - Operate Manus through Openclaw is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Manus Skill - Operate Manus through Openclaw support?

Manus Skill - Operate Manus through Openclaw is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Manus Skill - Operate Manus through Openclaw?

It is built and maintained by KrishBhimani (@krishbhimani); the current version is v1.0.2.

💬 Comments