OpenManus: Persona and rules
OpenManus has no saved persona, no rules file, no system prompt box,
and no profile you can switch. The words that shape every job are Python
files in app/prompt/. This page says why not to edit them,
and where your own words go instead.
Checked against main at commit 3309bf4, from 16 August
2026. The same prompt text was still on main on 14 November 2026.
What OpenManus calls it
There is no name for a persona setting, because there is no setting
to open. app/prompt/manus.py holds the built-in system
prompt, which says the agent is OpenManus and names the starting folder.
A second block tells the model to call the terminate tool
when the job should stop. You type each job at
Enter your prompt:, and that line is not saved after the
job ends.
Set a persona for one job
- Do not open
app/prompt/manus.py, and leave both built-in blocks as they are.
What you should see app/prompt/manus.py still
containing the terminate sentence and the starting-folder
line.
- Start
python main.pythe way page 2 ends, and atEnter your prompt:put the tone in the first sentence. Keep the rest of the job as small as the jobs in the playbook.
What you should see Enter your prompt: before you type,
then a reply in that tone, and only the file you named in
workspace.
Set rules for one job
- In that same prompt, add the limits for this job, and name the
folder, the file, and what not to touch. Page 3 uses
preferences.txtwhen you want the same words on a later job. OpenManus does not load that file by itself, so the prompt has to tell it to read the file first.
What you should see the prompt on screen names the folder, the file, and what not to touch, before you press Enter.
- Send the job and watch the whole run, and leave the browser part off.
What you should see workspace gains the one new file,
and a new file appears in logs.
What not to edit
Do not edit the files in app/prompt/, because
git pull replaces them. manus.py has to keep
the terminate sentence, or a job may not know how to
finish, and it has to keep the line that names the starting folder. The
other files there, including visualization.py,
mcp.py, and toolcall.py, belong to other
agents or run modes, so leave them alone too. OpenManus has no custom
override file that replaces them.
Phone chats and the multi-agent run
This guide could not confirm a phone persona, because OpenManus has
no phone app. python run_flow.py builds its planning prompt
in app/flow/planning.py and runs steps with the built-in
prompts in app/prompt/manus.py and
app/prompt/visualization.py
(app/prompt/planning.py is unused), so none of those is a
profile you can switch.
Undo
- Nothing you type at
Enter your prompt:is kept once the job ends, and the nextpython main.pystarts blank.
What you should see Enter your prompt: again, with none
of the previous job's words filled in.
- If you made
preferences.txtinworkspace, copy it to a backup folder outsideOpenManusfirst, then delete the copy inworkspace(and if you ever editedapp/prompt/by mistake, copy your changes out and rungit checkout -- app/prompt/).
What you should see preferences.txt saved in your
backup folder and gone from workspace, so the next job does
not use the old tone unless the new prompt asks for it.
Rules are not a lock
Words in your prompt or in preferences.txt are only a
request to the model, not a lock. Because OpenManus has no approval gate
and no built-in wall around workspace, watching at the
keyboard and keeping the browser part off are what protect your
files.
Words in the prompt.
- You gain: a tone and a few limits travel with that one job, without changing OpenManus itself.
- You risk: a model can ignore them, and a web page can try to override them. The prompt does not limit which files a tool can reach, and nothing asks before a tool runs.
- Makes sense when: you are at the keyboard, the
browser part is off, and the job stays inside
workspace.
Sources
Opened on 14 November 2026. The prompt links below point at commit
3309bf4, from 16 August 2026.
- Built-in
system prompt names OpenManus, the starting folder, and the
terminatetool. - Prompt
folder and planning
flow hold the built-in prompts for
run_flow.py(manus.py,visualization.py, and inline planning text) and other modes (mcp.py,toolcall.py). - Start
file is the file that prints
Enter your prompt:before a job. - Memory between jobs keeps no messages once the job ends.
- git pull replaces
tracked files in the folder, including everything under
app/prompt/.
Next
Continue to Persona and rules for any agent for the advice that applies to every agent.