OpenManus Usage Guide
Setup
1# Clone (already done)
2cd ~/Documents/projects/uv/OpenManus
3
4# Run from OpenManus directory (recommended)
5cd ~/Documents/projects/uv/OpenManus && uv run main.py --prompt "your task here"
Running from Anywhere
Option 1: Full path (easiest)
1cd ~/Documents/projects/uv/OpenManus && uv run main.py --prompt "your task here"
Option 2: From this folder (HBstack blog)
1uv run ~/Documents/projects/uv/OpenManus/main.py --prompt "your task here"
Option 3: Interactive mode
1cd ~/Documents/projects/uv/OpenManus && uv run main.py
2# Then type your prompt when asked
Option 4: Planning flow (for complex multi-step tasks)
1cd ~/Documents/projects/uv/OpenManus && uv run run_flow.py
Current Config
| Setting | Value |
|---|
| Provider | OpenRouter |
| Model | anthropic/claude-haiku-4.5 |
| Input cost | $1.00 per million tokens |
| Output cost | $5.00 per million tokens |
| Max steps | 20 (per session) |
Writing Good Prompts
✅ DO: Be specific with a deliverable
| Good Prompt | Why |
|---|
Analyze my Hugo site at /home/ag-sayyed/Documents/projects/hbstack/ghafoors-blog and give a summary of the theme, config, and content structure | Clear goal + output format |
Find all broken internal links in my Hugo site at /path/to/site | Specific task, measurable result |
Add a new "contact" page with a form to my Hugo site at /path/to/site | Concrete deliverable |
Update the homepage hero section to say "Welcome to my blog" in /path/to/site | Small, focused change |
List all custom shortcodes in /path/to/site and explain what each does | Specific scope |
Suggest 3 performance improvements for my Hugo site based on /path/to/site/config.toml | Analytical, bounded task |
❌ AVOID: Vague prompts with no deliverable
| Bad Prompt | Problem |
|---|
Explore my Hugo site | No goal — wanders aimlessly, wastes tokens |
Look at my site | Same — no clear end condition |
Check my config | Too vague, doesn’t know what to check for |
Help me with my site | Way too broad |
💡 Tips to Save Money
- Be specific about which files — instead of “analyze my site”, say “check config.toml and the homepage content”
- Set a clear output — “give me a bullet list”, “write the changes to file X”, “summarize in 3 sentences”
- One task at a time — each prompt is a fresh session, so break big jobs into focused steps
- Use full paths — always include the absolute path to your project so OpenManus finds it regardless of where you run from
Cost Reference (Haiku 4.5)
| Activity | Approx Cost |
|---|
| Listing a directory + reading 2 files | ~$0.02 |
| Reading a whole Hugo config + summary | ~$0.05 |
| Creating a new page with content | ~$0.10 |
| Full site analysis (10+ files) | ~$0.30 |
| Complex multi-step task (20 steps) | ~$1.00–2.00 |
Quick Alias (Optional)
Add to ~/.bashrc:
1alias om='cd ~/Documents/projects/uv/OpenManus && uv run main.py --prompt'
Then use from anywhere:
1om "List the content structure of /home/ag-sayyed/Documents/projects/hbstack/ghafoors-blog"
Choosing modules
- Vist the site openrouter to see available models and their costs
- Update
config.py with your chosen model and provider - Adjust max tokens if needed (default is 4000)
Example of wrong prompt and cost
- I asked to “Explore my hugo site giving full directory address”. And after 10 minutes I got this
1
2026-05-16 00:12:03.553 | INFO | app.agent.base:run:140 - Executing step 20/20
32026-05-16 00:12:08.416 | INFO | app.llm:update_token_count:243 - Token usage: Input=93098, Completion=66, Cumulative Input=961946, Cumulative Completion=61127, Total=93164, Cumulative Total=1023073
42026-05-16 00:12:08.416 | INFO | app.agent.toolcall:think:81 - ✨ Manus's thoughts: Perfect! Now let me create one final completion message and wrap up:
52026-05-16 00:12:08.417 | INFO | app.agent.toolcall:think:82 - 🛠️ Manus selected 1 tools to use
62026-05-16 00:12:08.417 | INFO | app.agent.toolcall:think:86 - 🧰 Tools being prepared: ['terminate']
72026-05-16 00:12:08.417 | INFO | app.agent.toolcall:think:89 - 🔧 Tool arguments: {"status": "success"}
82026-05-16 00:12:08.417 | INFO | app.agent.toolcall:execute_tool:180 - 🔧 Activating tool: 'terminate'...
92026-05-16 00:12:08.417 | INFO | app.agent.toolcall:_handle_special_tool:217 - 🏁 Special tool 'terminate' has completed the task!
102026-05-16 00:12:08.417 | INFO | app.agent.toolcall:act:150 - 🎯 Tool 'terminate' completed its mission! Result: Observed output of cmd `terminate` executed:
11The interaction has been completed with status: success
122026-05-16 00:12:08.417 | INFO | app.tool.mcp:disconnect:194 - Disconnected from all MCP servers
- it cost me 1.29 dollars for 20 steps and 93098 input tokens. This is a very expensive prompt because it was too vague and the model had to read a lot of files without a clear goal.