# Goal: Automates posting on X (Twitter) using stored authentication cookies. import asyncio import os from dotenv import load_dotenv from langchain_google_genai import ChatGoogleGenerativeAI from pydantic import SecretStr from browser_use import Agent from browser_use.browser.browser import Browser, BrowserConfig from browser_use.browser.context import BrowserContext, BrowserContextConfig load_dotenv() api_key = os.getenv('GEMINI_API_KEY') if not api_key: raise ValueError('GEMINI_API_KEY is not set') llm = ChatGoogleGenerativeAI(model='gemini-2.0-flash-exp', api_key=SecretStr(api_key)) browser = Browser( config=BrowserConfig( # chrome_instance_path='/Applications/Google Chrome.app/Contents/MacOS/Google Chrome', ) ) file_path = os.path.join(os.path.dirname(__file__), 'twitter_cookies.txt') context = BrowserContext(browser=browser, config=BrowserContextConfig(cookies_file=file_path)) async def main(): agent = Agent( browser_context=context, task=('go to https://x.com. write a new post with the text "browser-use ftw", and submit it'), llm=llm, max_actions_per_step=4, ) await agent.run(max_steps=25) input('Press Enter to close the browser...') if __name__ == "__main__": asyncio.run(main())