feat: add instagram client
Risks
Low, is a new client, does't have any impact on old code.
What does this PR do?
Implements a new Instagram client for ElizaOS that:
- Handles Instagram authentication and session management
- Provides media posting capabilities with proper image processing
- Manages comments, likes, and mentions
- Maintains conversation history through memory system
- Integrates with ElizaOS core content generation
What kind of change is this?
Features (non-breaking change which adds functionality)
- New Instagram client implementation
- Media handling capabilities
- Interaction management system
- Content generation templates
Why are we doing this? Any context or related work?
Add instagram functionalities to Eliza
Documentation changes needed?
My changes require a change to the project documentation:
- New Instagram client configuration guide
- Media handling requirements
- Content generation templates documentation
- Rate limiting and session management details
Testing
- check https://www.instagram.com/0xspit/
Where should a reviewer start?
- Review src/lib/auth.ts for authentication flow
- Check src/services/post.ts for media handling
- Examine src/services/interaction.ts for interaction management
- Review environment configuration in src/environment.ts
Detailed testing steps
- Environment Setup
- Authentication Testing
- Media Posting
- Interaction Testing
- Content Generation
Deploy Notes
INSTAGRAM_USERNAME=your_username
INSTAGRAM_PASSWORD=your_password
INSTAGRAM_APP_ID=your_app_id
INSTAGRAM_APP_SECRET=your_app_secret
INSTAGRAM_BUSINESS_ACCOUNT_ID=your_business_id
INSTAGRAM_POST_INTERVAL_MIN=90
INSTAGRAM_POST_INTERVAL_MAX=180
INSTAGRAM_ENABLE_ACTION_PROCESSING=true
INSTAGRAM_ACTION_INTERVAL=5
INSTAGRAM_MAX_ACTIONS=1
Discord username
0xspit
nice. sick addition, thanks!
Love this ! Thanks @Lukapetro
as mentioned on discord, we need to define how to handle the generation of images or uploading by those who use the agent
Edit: we fixed using generateImage
This is so cool! I worked on an instagramPlugin in the last couple days. Created the post image functionality and was going to expand it to more types of content and posts. I guess this client does it all already! Love it! TikTok next? Hope to have this merged soon!
This is so cool! I worked on an instagramPlugin in the last couple days. Created the post image functionality and was going to expand it to more types of content and posts. I guess this client does it all already! Love it! TikTok next? Hope to have this merged soon!
thanks, still waiting for someone to review it
@Lukapetro have a look at my plugin draft PR, see if it would enhance the client in any way? I think it may be redundant. https://github.com/elizaOS/eliza/pull/2284 Thanks