Something went wrong. Try again.
Stateful AI assistants running off Claude/Gemini CLI subscription
Something went wrong. Try again.
2.7 kB
Markdown
at main
Customizing Your Agents #
Morse is designed to be a flexible foundation. You can easily customize the identity, behavior, and environment of your agents.
1. Changing Agent Names #
By default, the agents are named Dot and Dash. To rename them:
- System Prompts: Edit
dot/prompt/dot-system.md(ordash/prompt/dash-system.md) and replace "Dot" with your chosen name. - Persona Block: Edit
dot/blocks/persona.yaml(ordash/blocks/persona.yaml) and update thetextandnamefields. - Config Files: Update the
config.yamlandmcp-config.jsonfiles in the agent's directory to reflect the new name for logging and orchestration. - CLI: You can rename the
dot_cli.pyordash_cli.pyfiles and update the[project.scripts]section inpyproject.tomlto change the command you type (e.g., fromuv run dottouv run mybot).
2. Changing the Admin Name #
The infrastructure refers to the primary user as Admin. If you want to use your own name:
- Global Replace: Use a search-and-replace tool to change "Admin" to your name across the entire repository (especially in
prompt/andskills/). - Interest Block: Rename
blocks/interests-admin.yamltointerests-yourname.yamland update thenamefield inside the file.
3. Modifying Memory Blocks #
Blocks are the "working memory" of the agent.
- Add a Block: Create a new
.yamlfile in theblocks/directory. - Tiering:
tier: hot: Automatically loaded into every prompt. Use for core identity or critical status.tier: warm: Only loaded when the agent explicitly callsread_block. Use for specialized knowledge or large reference sets.
- Sorting: Use
sort_orderto control where the block appears in the prompt (lower numbers appear earlier).
4. Adjusting the "Perch-Time" Scheduler #
The scheduler in scheduler.yaml defines how the agent acts when you aren't talking to it.
- Frequencies: Use
cronorinterval(minutes/hours) to set how often the agent "wakes up". - Prompts: You can give each scheduled job a unique
prompt. For example, anightly-reflectionjob might have a prompt focused on summarizing the day's events.
5. Adding Custom MCP Tools #
The Morse agents are powered by the Model Context Protocol. You can extend their capabilities by adding new tools to dot_mcp_server.py or dash_mcp_server.py.
- Define a new
Toolin thelist_tools()function. - Add a handler function (e.g.,
handle_my_tool). - Register the handler in the
call_tool()dispatcher. - If the tool requires new environment variables, add them to your
.envand.env.example.