{"id":26730306,"url":"https://github.com/agentlabs-dev/openator","last_synced_at":"2025-05-16T13:07:09.101Z","repository":{"id":277203097,"uuid":"931467507","full_name":"agentlabs-dev/openator","owner":"agentlabs-dev","description":"Open source version of OpenAI Operator - Ask your browser to perform highlevel tasks","archived":false,"fork":false,"pushed_at":"2025-02-26T17:06:04.000Z","size":40424,"stargazers_count":229,"open_issues_count":4,"forks_count":14,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-05-14T09:48:51.697Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/agentlabs-dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-02-12T10:26:24.000Z","updated_at":"2025-05-14T00:25:09.000Z","dependencies_parsed_at":null,"dependency_job_id":"516898ff-7bbc-44df-8462-e853d6a6ed86","html_url":"https://github.com/agentlabs-dev/openator","commit_stats":null,"previous_names":["agentlabs-dev/openator"],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agentlabs-dev%2Fopenator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agentlabs-dev%2Fopenator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agentlabs-dev%2Fopenator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agentlabs-dev%2Fopenator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/agentlabs-dev","download_url":"https://codeload.github.com/agentlabs-dev/openator/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254535829,"owners_count":22087399,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-27T23:19:16.283Z","updated_at":"2025-05-16T13:07:08.851Z","avatar_url":"https://github.com/agentlabs-dev.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/agentlabs-dev/openator\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/agentlabs-dev/openator/refs/heads/main/.readme/cover.png\" alt=\"Openator\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003cem\u003e.\u003c/em\u003e\n\u003c/p\u003e\n\n\u003cp align=center\u003e\nOpenator is a state-of-the-art browser agent tool that is capable of planning and executing actions formulated in natural language.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\nThis project is under active development and any help or support is welcome.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\u003ca href=\"\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/License-Apache 2.0-blue.svg\" alt=\"License version\"\u003e\n\u003c/a\u003e\n\u003ca href=\"\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Status-Under Active Development-green.svg\" alt=\"Docker Image CI\"\u003e\n\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n.\n\u003c/p\u003e\n\n\u003ch3 align=\"center\"\u003e\n🌟 Give us some love by starring this repository! 🌟  \n\u003c/h3\u003e\n\n\u003cp align=\"center\"\u003e\n.\n\u003c/p\u003e\n\n## Quick Start\n\nInstall the package using npm or yarn.\n\n```bash\nnpm i openator\n```\n\nSpin up your first agent with a task.\n\n```typescript\nimport { initOpenator, ChatOpenAI } from 'openator';\n\nconst main = async () =\u003e {\n  const llm = new ChatOpenAI({\n    apiKey: process.env.OPENAI_API_KEY!,\n  });\n\n  const openator = initOpenator({\n    llm,\n    headless: false,\n  });\n\n  await openator.start(\n    'https://amazon.com',\n    'Find a black wirelesskeyboard and return the price.',\n  );\n};\n\nmain();\n```\n\n## Add Secrets and Variables\n\nOptionally, you can add variables and secrets to your agent. These variables will be interpolated during runtime by the agent.\n\nThis is especially helpful if you want to pass more context to the agent, such as a username and a password.\n\n```typescript\nimport { initOpenator, Variable, ChatOpenAI } from 'openator';\n\nconst llm = new ChatOpenAI({\n  apiKey: process.env.OPENAI_API_KEY!,\n});\n\nconst openator = initOpenator({\n  headless: false,\n  llm,\n  variables: [\n    new Variable({\n      name: 'username',\n      value: 'my username',\n      isSecret: false,\n    }),\n    new Variable({\n      name: 'password',\n      value: process.env.PASSWORD,\n      isSecret: true,\n    }),\n  ],\n});\n\nawait openator.start(\n  'https://my-website.com',\n  'Authenticate with the username {{username}} and password {{password}} and then find the latest news on the website.',\n);\n```\n\n## Available LLM Providers\n\nOptionally you can configure the LLM to use different models or configurations.\n\nWe support the following models:\n\n| Platform           | Supported models                                          | Advised model |\n| ------------------ | --------------------------------------------------------- | ------------- |\n| OpenAI             | gpt-4o, gpt-4o-mini, gpt-4-turbo                          | gpt-4o        |\n| Ollama             | qwen2.5, llama3.2                                         | -             |\n| GoogleGenerativeAI | gemini-2.0-flash, gemini-2.0-flash-lite, gemini-1.5-flash | -             |\n\n\u003e Note that we benchmarked the performance of Openator on OpenAI gpt-4o and we recommend using it. While you can try other models, we haven't battled-tested them yet.\n\n### OpenAIChat\n\nHere's the configuration type for the ChatOpenAI provider.\n\n```typescript\nimport { ChatOpenAI } from 'openator';\n\nconst llm = new ChatOpenAI({\n  apiKey: process.env.OPENAI_API_KEY!,\n  model: 'gpt-4o',\n  temperature: 0, // optional\n  maxRetries: 3, // optional\n  maxConcurrency: 1, // optional\n});\n```\n\n### OllamaChat\n\n```typescript\nimport { ChatOllama } from 'openator';\n\nconst llm = new ChatOllama({\n  model: 'qwen2.5',\n  temperature: 0, // optional\n  maxRetries: 3, // optional\n  maxConcurrency: 1, // optional\n  baseUrl: 'http://localhost:11434', // optional\n});\n```\n\n### GoogleGenerativeAI\n\n```typescript\nimport { ChatGoogleGenAI } from 'openator';\n\nconst llm = new ChatGoogleGenAI({\n  model: 'gemini-2.0-flash',\n  apiKey: process.env.GOOGLE_GENERATIVE_AI_API_KEY!,\n  temperature: 0, // optional\n  maxRetries: 3, // optional\n  maxConcurrency: 1, // optional\n});\n```\n\n## Demo\n\nHere is what you can build with Openator, you can find more examples and source code in our main repository. The frontend is not included but can be found in our open-source repository.\n\nExample task:\n\n```typescript\nawait openator.start(\n  'https://amazon.com',\n  'Purchase a black wireless keyboard',\n);\n```\n\n\u003ca href=\"#\"\u003e\u003cimg src=\"https://github.com/agentlabs-dev/openator/blob/main/.readme/gui-demo.gif?raw=true\" alt=\"agentlabs.dev\"\u003e\u003c/a\u003e\n\n## How it works\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/agentlabs-dev/openator/refs/heads/main/.readme/how-it-works.png\" alt=\"agentlabs.dev\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n.\n\u003c/p\u003e\n\n\u003ch3 align=\"center\"\u003e\n🌟 Give us some love by starring this repository! 🌟  \n\u003c/h3\u003e\n\n\u003cp align=\"center\"\u003e\n.\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagentlabs-dev%2Fopenator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fagentlabs-dev%2Fopenator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagentlabs-dev%2Fopenator/lists"}