"autonomous-starter" is an example project for the ElizaOS ecosystem, designed to demonstrate and facilitate the development of autonomous agents. It showcases core capabilities essential for autonomy, including robust shell command execution via plugin-shell and a foundational autonomous loop service provided by plugin-auto. This starter kit serves as a launchpad for building sophisticated agents capable of independent operation, decision-making, and interaction with their environment.
- The agent can execute shell commands through
plugin-shell, enabling direct interaction with the underlying operating system in a controlled manner. - The agent can operate autonomously using
plugin-auto, which facilitates a loop for goal-oriented behavior, reflection, and decision-making. - These plugins interact: the autonomous loop might decide to execute specific shell commands to gather information, perform actions, or manage system resources as part of achieving its goals.
- All significant outcomes, including shell command results and errors, are saved as message memories, providing a traceable log of operations (as seen in
plugin-shell/action.ts).
A shell action KILL_AUTONOMOUS allows you to stop the autonomous loop at any time:
- Command: "kill autonomous loop", "stop autonomous mode", "halt autonomous"
- Action:
KILL_AUTONOMOUS - Purpose: Immediately stops the autonomous service for debugging
Example usage:
User: "kill the autonomous loop"
Agent: "Autonomous loop has been killed. The agent will no longer run autonomously until restarted."
Control how frequently the autonomous loop runs:
- Default interval: 1000ms (1 second)
- Environment variable:
AUTONOMOUS_LOOP_INTERVAL(in milliseconds) - Runtime setting:
AUTONOMOUS_LOOP_INTERVAL(in milliseconds)
Example:
# Set 5-second intervals for slower, more deliberate operation
export AUTONOMOUS_LOOP_INTERVAL=5000
npm startplugin-shell(packages/auto/src/plugin-shell):- Provides actions like
RUN_SHELL_COMMANDto execute arbitrary shell commands. - Manages the current working directory (CWD) for the session.
- Includes
CLEAR_SHELL_HISTORYfor managing command history within a session. - Extracts commands from natural language and logs execution details (output, error, exit code) to the message feed.
- Provides actions like
plugin-auto(packages/auto/src/plugin-auto):- Facilitates the agent's autonomous operation.
- Includes actions like
REFLECT(plugin-auto/reflect.ts), allowing the agent to process its current state, thoughts, and formulate responses or subsequent actions. - Designed to be extensible with more sophisticated goal management and planning capabilities.