Autonomys Agents: A framework for building autonomous AI agents
Autonomys Agents is an experimental framework for building AI agents. Currently, the framework supports agents that can interact with social networks and maintain permanent memory through the Autonomys Network. We are still in the early stages of development and are actively seeking feedback and contributions. We will be rapidly adding many more workflows and features.
Demo
Features
Autonomys Agents (Auto Agents) are truly autonomous on-chain AI agents capable of dynamic functionality, verifiable interaction, and permanent, censorship-resistant memory through the Autonomys Network.
- 🤖 Autonomous social media engagement
- 🧠 Permanent agent memory storage
- 🔄 Built-in workflow system
- 🐦 X/Twitter integration (with more platforms planned)
- 🎭 Customizable agent personalities
- 🛠️ Extensible tool system
Prerequisites
- NodeJS version 20.18.1 or newer
- Yarn version 1.22.19 or newer
- API key for one or multiple LLMs (supported model providers: Anthropic, OpenAI, Llama, DeepSeek (NEW)
Build an Auto Agent
Getting started
- Set up a development environment
git clone https://github.com/autonomys/autonomys-agents
cd autonomys-agents
yarn install
- Create agent character
Characters are agent personalities with key behavioral traits, areas of knowledge, and engagement guidelines.
yarn create-character <your-character-name>
- Setup character config
- All character configs are stored in
characters/<your-character-name>/config
. - Update
.env
with applicable environment variables. - Update
config.yaml
with applicable configuration. - Update
<your-character-name>.yaml
with applicable personality configuration.
- Run your character
- For dev purposes in watch mode:
yarn dev <your-character-name>
- For production build and run:
yarn start <your-character-name>
Character system
The framework uses a YAML-based character system that allows you to create and run different AI personalities.
Creating characters
- Character related files are stored in
characters/{your-character-name}/
- Create new characters by running the
create-character.ts
script:
# Create a new character
yarn create-character your_character
- Configure character
Each character file is a YAML configuration with the following structure:
name: 'Agent Name'
description: |
Core personality description
Can span multiple lines
personality:
- Key behavioral trait 1
- Key behavioral trait 2
expertise:
- Area of knowledge 1
- Area of knowledge 2
communication_rules:
rules:
- Operating guideline 1
- Operating guideline 2
words_to_avoid:
- word1
- word2
twitter_profile:
username: 'twitter_handle'
trend_focus:
- Topic to monitor 1
- Topic to monitor 2
content_focus:
- Content guideline 1
- Content guideline 2
reply_style:
- Engagement approach 1
- Engagement approach 2
engagement_criteria:
- Engagement rule 1
- Engagement rule 2
Example characters
- Joy Builder (
joy_builder.ts
):
name: 'Joy Builder'
username: 'buildjoy'
description: |
Joy Builder is an AI agent who is relentlessly optimistic about technology's potential to solve human problems.
The Joy represents their positive outlook, while Builder reflects their focus on practical solutions and progress.
expertise:
- Software development and system architecture
- Open source and collaborative technologies
- Developer tools and productivity
# ... other configuration
- Tech Analyst (
tech_analyst.yaml
):
name: 'Tech Analyst'
username: 'techanalyst'
description: |
A thoughtful technology analyst focused on emerging trends.
Provides balanced perspectives on technological developments.
expertise:
- AI and blockchain technology
- Web3 and the future of the internet
- Technical analysis and research
# ... other configuration
Workflows
X/Twitter
The X/Twitter workflow enables agents to:
- Monitor X (formerly Twitter) for relevant discussions
- Analyze trends and conversations
- Engage meaningfully with other users
- Generate original content
- Maintain a consistent personality
- Store interactions in permanent memory
The Auto Agents Framework will soon support additional workflows/integrations.
Autonomys Network integration
The Auto Agents Framework integrates with the Autonomys Network for:
- Permanent memory storage
- Persistent agent memory across sessions
- Verifiable interaction history
- Cross-agent memory sharing
- Decentralized agent identity
Configure your .env file:
AUTO_DRIVE_UPLOAD=true
AUTONOMYS_WALLET_KEY=your_wallet_key
AUTONOMYS_ENCRYPTION_PASSWORD=your_password