{"repo":"A9T9/RPA","free":true,"listed":false,"github":"https://github.com/A9T9/RPA","clone":"git clone https://github.com/A9T9/RPA.git","description":"Ui.Vision Open-Source RPA Software  with Computer Vision, OCR, Anthropic Computer Use/LLM. Selenium IDE  import/export.","language":"JavaScript","stars":1971,"topics":["anthropic","anthropic-claude","browser-automation","browser-extension","computer-use","data-driven-tests","imacros","selenium-ide","web-automation","web-scraping"],"license":null,"category":"rpa_tool","readme_excerpt":"# Ui.Vision [RPA](https://ui.vision/rpa)\n\n- Modern Robotic Process Automation, Selenium IDE compatible\n- Ui.Vision is open-source and **free** for personal and commercial use.\n\nQuestions? Suggestions? - Meet us in the Ui.Vision [RPA user forum](https://forum.ui.vision).\n\nEvery user benefits from the questions and answers provided in the forum, that is why we would ask you to post the question [in the RPA forum](https://forum.ui.vision) first if a public forum is appropriate for your question. The forum is monitored by active users, tech support and the developers, so we would like to concentrate the discussion \"over there\" in one place.\n\n\n# How to install Ui.Vision:\n\nUi.Vision RPA for Chrome, Edge and Firefox is modern cross-platform RPA software for macOS, Linux and Windows. It includes a Selenium IDE and Web Macro Recorder. You find the latest version always in the Chrome and Firefox stores. You can use it _completely free for private and commercial purposes_:\n\n- [UI.Vision in the Google Chrome Webstore](https://chrome.google.com/webstore/detail/uivision-rpa/gcbalfbdmfieckjlnblleoemohcganoc)\n\n- [UI.Vision in the Firefox Webstore](https://addons.mozilla.org/en-US/firefox/addon/rpa/)\n\n- [UI.Vision in the Microsoft Edge Webstore](https://microsoftedge.microsoft.com/addons/detail/uivision-rpa/goapmjinbaeomoemgdcnnhoedopjnddd)\n\n\n- [Ui.Vision Homepage](https://ui.vision/)\n\n- List of supported [Selenium IDE commands](https://ui.vision/rpa/docs/selenium-ide/)\n\n\n# The new `uiv.*` JavaScript API and the AI system prompt\n\nBesides the classic command table, macros can be written as modern JavaScript\nusing the `uiv.*` API - DOM and visual finders (`uiv.$`, `uiv.findImage`,\n`uiv.ocr.findText`, `uiv.ai.find`), the input tiers (`uiv.page.*`,\n`uiv.browser.*`, `uiv.desktop.*`), screenshots, tabs, CSV and downloads. Every\ncall auto-waits and throws a real JS exception on failure, so `try/catch` works.\n\n- [The Ui.Vision AI system prompt](https://ui.vision/ai/ai-system-prompt) - the\n  complete `uiv.*` API reference plus the automation recipes the AI assistant\n  works from. This is the same text the AI in the side panel uses, and it is the\n  best hand-written reference for the JS API. You can override it in\n  Settings > AI > System Prompt.\n\n- [llms-full.txt](https://ui.vision/llms-full.txt) - the same material as one\n  plain-text file, for feeding into an AI assistant.\n\n- [MCP bridge](https://ui.vision/ai/mcp-bridge) - lets Claude Code and other MCP\n  clients create, edit and run Ui.Vision macros in your browser. Source and\n  setup: [mcp/README.md](mcp/README.md).\n\n- [uiv-commands.md](uiv-commands.md) (in this repo) - maps every classic\n  command-table command to its `uiv.*` equivalent, or to the\n  `uiv.run('command', 'target', 'value')` legacy bridge where no native method\n  exists yet.\n\nThe published prompt page is generated from the source of truth in\n`src/services/ai/macro_agent/service.ts` via `npm run gen:ai-prompt-page`, so\nrun that at release time to keep it in sync.\n\n\n# Building the Chrome, Edge and Firefox Extension\n\nBuilding the extension is _not_ required if you \"only\" want to use it.\n\nYou can [install UI.Vision directly from the Chrome, Edge or Firefox stores](https://ui.vision/rpa), which is the easiest and the recommended way of using the Ui.Vision RPA software. Older versions can be found in the [RPA software](https://ui.vision/rpa/archive) archive.\n\nThe information below is only required and intended for developers:\n\nThe project uses Node V20.11.1 and NPM V10.2.4\n\nIf you have any questions, please contact us at TEAM AT UI.VISION - Thanks!\n\n# To build the extension bundle\n\n```bash\nnpm i -f\n```\n\n```bash\nnpm run build\n```\n\n```bash\nnpm run build-ff\n```\n\n`npm run build` creates the Chrome/Edge build in `dist`, `npm run build-ff` creates the Firefox build in `dist_ff`.\n\n# To develop\n\n```bash\nnpm i -f\n```\n\n```bash\nnpm start\n```\n\nUse `npm run start-ff` for the Firefox variant. Both run webpack in watch mode, so the bundles in `dist` (Chrome/Edge) and `dist_ff` (Firefox) are rebuilt on every change.\n\nOnce done, the ready-to-use extension code appears in the `/dist` directory (Chrome, Edge) or `/dist_ff` directory (Firefox). Load it via `chrome://extensions` → \"Load unpacked\" (Chrome/Edge) or `about:debugging` → \"Load Temporary Add-on\" (Firefox).\n\n# Repository layout\n\n- `src/` - the extension source (React UI, side panel, macro player, commands)\n- `extension/` - static extension assets and `manifest.json` (Manifest V3)\n- `mcp/` - the Ui.Vision MCP bridge, which lets Claude Code and other MCP clients create, edit and run macros. See [mcp/README.md](mcp/README.md)\n- `dist/`, `dist_ff/` - build output for Chrome/Edge and Firefox\n","default_branch":"master","files":497,"tree":[".babelrc",".editorconfig",".eslintignore",".eslintrc.js",".gitattributes",".gitignore",".prettierrc","GNU-AGPL-3.0.txt","LICENSE.txt","Not_included.txt","README.md","build/browser_extension_webpack_plugin.js","command-line/node.js/uitest.js","command-line/powershell/auto-deploy-firefox-plus-ui.vision-addon.ps1","command-line/powershell/run JSON directly.ps1","command-line/powershell/run one macro forever.ps1","command-line/powershell/run two macros.ps1","command-line/python/run-and-check-result.py","command-line/vbs/run test in loop.vbs","command-line/windows batch file/start-RPA-in-chrome-xfile.bat","command-line/windows batch file/start-RPA-in-chrome.bat","command-line/windows batch file/start-RPA-in-edge.bat","command-line/windows batch file/start-RPA-in-firefox.bat","extension/_locales/de/messages.json","extension/_locales/en/messages.json","extension/_locales/zh_CN/messages.json","extension/csv_editor.html","extension/desktop_screenshot_editor.html","extension/firefox_pac.js","extension/img/code.svg","extension/img/computer.svg","extension/img/folder.svg","extension/img/folder_expanded.svg","extension/img/hard-drive.svg","extension/img/not_found.png","extension/img/reload.svg","extension/inverted_logo_38.png","extension/lib/imagesearch/kantusearch.js","extension/lib/imagesearch/kantusearch.wasm","extension/lib/imagesearch/worker-main.js","extension/lib/imagesearch/worker.js","extension/lib/tesseract/core/tesseract-core-simd-lstm.wasm.js","extension/lib/tesseract/lang/eng.traineddata.gz","extension/lib/tesseract/worker.min.js","extension/logo.png","extension/logo128.png","extension/logo38.png","extension/manifest.json","extension/options.html","extension/popup.html","extension/preinstall/csv/readcsvtestdata.csv","extension/preinstall/vision/canvas_3dots_verify_dpi_96.png","extension/preinstall/vision/canvas_hydepark_dpi_96.png","extension/preinstall/vision/canvas_hydepark_extract_dpi_96_relative.png","extension/preinstall/vision/canvas_hydepark_verify_dpi_96.png","extension/preinstall/vision/canvas_wyoming_dpi_96.png","extension/preinstall/vision/canvas_wyoming_verify_dpi_96.png","extension/preinstall/vision/democv_checkoverlay.png","extension/preinstall/vision/democv_ocrdone.png","extension/preinstall/vision/democv_share.png","extension/preinstall/vision/democv_startocr.png","extension/preinstall/vision/desktop_area_bottomright_dpi_96.png","extension/preinstall/vision/desktop_area_topleft3_dpi_96.png","extension/preinstall/vision/desktop_check_v_tab_dpi_96.png","extension/preinstall/vision/desktop_clearbutton_dpi_96.png","extension/preinstall/vision/desktop_logstab_grey_dpi_96.png","extension/preinstall/vision/desktop_logstab_white_dpi_96.png","extension/preinstall/vision/desktop_scrtab_dpi_96.png","extension/preinstall/vision/desktop_searcharea_dpi_96_relative.png","extension/preinstall/vision/desktop_vartab_dpi_96.png","extension/preinstall/vision/desktop_vitab_dpi_96.png","extension/preinstall/vision/draw_canvas_dpi_96.png","extension/preinstall/vision/draw_checkresult1_dpi_96.png","extension/preinstall/vision/draw_pencil_dpi_96.png","extension/preinstall/vision/draw_plus_dpi_96.png","extension/preinstall/vision/draw_redbutton_dpi_96.png","extension/preinstall/vision/draw_startingpoint_dpi_96.png","extension/preinstall/vision/draw_text1_dpi_96.png","extension/preinstall/vision/draw_toolbar_top_dpi_96.png","extension/preinstall/vision/getquotenumber_dpi_96_relative.png","extension/preinstall/vision/pdftest_salesquote.png","extension/preinstall/vision/range_laser_dpi_96.png","extension/preinstall/vision/range_robot_dpi_96.png","extension/preinstall/vision/range_tiger_dpi_96.png","extension/preinstall/vision/sidebar_clearlog_dpi_96.png","extension/preinstall/vision/sidebar_clearlog_mac_dpi_96.png","extension/preinstall/vision/sidebar_datatab_dpi_96.png","extension/preinstall/vision/sidebar_datatab_mac_dpi_96.png","extension/preinstall/vision/sidebar_logstab_dpi_96.png","extension/preinstall/vision/sidebar_logstab_mac_dpi_96.png","extension/preinstall/vision/slider_handle_dpi_96.png","extension/preinstall/vision/slider_red_dpi_96.png","extension/preinstall/vision/slider_warmth_dpi_96.png","extension/preinstall/vision/uitest_download_dpi_96.png","extension/preinstall/vision/uitest_hamburger_dpi_96.png","extension/preinstall/vision/uitest_logo_mobile_dpi_96.png","extension/preinstall/vision/uitest_logo_wide_dpi_96.png","extension/preinstall/vision/uitest_share_dpi_96.png","extension/preinstall/vision/youtube_play_button.png","extension/preinstall/vision/youtube_video_content_verify.png","extension/sidepanel.html","extension/vision_editor.html","mcp/README.md","mcp/package-lock.json","mcp/package.json","mcp/uivision-mcp-bridge.js","package-lock.json","package.json","postcss.config.js","scripts/check_embedded_scripts.js","scripts/generate_ai_prompt_page.js","src/actions/action_types.js","src/actions/index.d.ts","src/actions/index.js","src/actions/simple_actions.ts","src/antd-override.scss","src/app.js","src/app.scss","src/assets/images/delete.svg","src/assets/images/pause.svg","src/assets/images/refresh.svg","src/assets/images/start.svg","src/assets/svg/browser.svg","src/assets/svg/code.svg","src/assets/svg/computer.svg","src/assets/svg/folder.svg","src/assets/svg/folder_expanded.svg","src/assets/svg/hard-drive.svg","src/assets/svg/reload.svg","src/common/ai_vision.ts","src/common/base64.ts","src/common/bookmark.js","src/common/box.js","src/common/capture_screenshot.ts","src/common/clipboard.ts","src/common/command.ts","src/common/consecutive.ts","src/common/constant.ts","src/common/convert_utils.d.ts","src/common/convert_utils.js","src/common/counter/counter.ts","src/common/counter/persistent_counter.ts","src/common/counter/types.ts","src/common/csv.js","src/common/cv_utils.ts","src/common/debugger.js","src/common/dom_utils.ts","src/common/download_man.js","src/common/empty_module.js","src/common/encrypt.d.ts","src/common/encrypt.js","src/common/eval.d.ts","src/common/eval.js","src/common/filesystem.d.ts","src/common/filesystem.js","src/common/glob.d.ts","src/common/glob.js","src/common/inspector.js","src/common/intercept_log.ts","src/common/interpreter.js","src/common/ipc/cs_postmessage.d.ts","src/common/ipc/cs_postmessage.js","src/common/ipc/ipc_bg_cs.d.ts","src/common/ipc/ipc_bg_cs.js","src/common/ipc/ipc_cache.ts","src/common/ipc/ipc_cs.d.ts","src/common/ipc/ipc_cs.js","src/common/ipc/ipc_iframe.ts","src/common/ipc/ipc_promise.d.ts","src/common/ipc/ipc_promise.js","src/common/ipc/open_page.ts","src/common/lib/file_saver.d.ts","src/common/lib/file_saver.js","src/common/lib/keysim.js","src/common/lib/path/index.d.ts","src/common/lib/path/index.js","src/common/lib/react-click-outside/index.d.ts","src/common/log.ts","src/common/macro_log.ts","src/common/messages.ts","src/common/player.d.ts","src/common/player.js","src/common/recorded_command_to_js.js","src/common/registry.ts","src/common/resize_window.d.ts","src/common/resize_window.js","src/common/send_keys.js","src/common/storage/ext_storage.js","src/common/storage/index.d.ts","src/common/storage/index.js","src/common/tab_utils.ts","src/common/ts_utils.ts","src/common/types.ts","src/common/uiv_link.ts","src/common/utf8.ts","src/common/utils.d.ts","src/common/utils.js","src/common/variables.d.ts","src/common/variables.js","src/common/vendor/js-interpreter/README.md","src/common/vendor/js-interpreter/acorn.js","src/common/vendor/js-interpreter/index.js","src/common/vendor/js-interpreter/interpreter.js","src/common/web_extension.d.ts","src/common/web_extension.js","src/components/context_menu.tsx","src/components/edit_in_place.tsx","src/components/header.js","src/components/header.scss","src/components/lazy_image.tsx","src/components/prompt.tsx","src/components/save_test_case.d.ts","src/components/save_test_case.js","src/components/search_box.js","src/components/select_input.scss","src/components/select_input.tsx","src/components/tree.tsx","src/components/tree_file.scss","src/components/tree_file.tsx","src/config/index.ts","src/config/preinstall_js_scripts.js","src/config/preinstall_macros.js","src/containers/common/resource_not_loaded.tsx","src/containers/dashboard/bottom/csv_list.tsx","src/containers/dashboard/bottom/index.js","src/containers/dashboard/bottom/screenshot_list.tsx","src/containers/dashboard/bottom/vision_list.tsx","src/containers/dashboard/command_item.tsx","src/containers/dashboard/dashboard.scss","src/containers/dashboard/editor.js","src/containers/dashboard/index.js","src/containers/sidebar/index.js","src/containers/sidebar/sidebar.scss","src/containers/sidebar/test_cases.js","src/containers/sidepanel/components/ai_chat/ai-chat.scss","src/containers/sidepanel/components/ai_chat/ai_conversation.ts","src/containers/sidepanel/components/ai_chat/index.tsx","src/containers/sidepanel/components/controlbar/controlbar.scss","src/containers/sidepanel/components/controlbar/index.js","src/containers/sidepanel/components/files/index.js","src/containers/sidepanel/components/logs/bottom_bar.js","src/containers/sidepanel/components/logs/index.js","src/containers/sidepanel/components/logs/log_list.js","src/containers/sidepanel/components/logs/logs.scss","src/containers/sidepanel/components/macro/command_item.tsx","src/containers/sidepanel/components/macro/dev_toolbar.js","src/containers/sidepanel/components/macro/edit_form.js","src/containers/sidepanel/components/macro/index.js","src/containers/sidepanel/components/macro/macro.scss","src/containers/sidepanel/components/macro/macro_header.js","src/containers/sidepanel/components/macro/macro_table.js","src/containers/sidepanel/components/macro/run_panel.js","src/containers/sidepanel/components/macro/script_view.js","src/containers/sidepanel/components/macro/script_view.scss","src/containers/sidepanel/components/macro/source_view.js","src/containers/sidepanel/components/macro/variables_table.js","src/containers/sidepanel/components/macro_setup_dialog.js","src/containers/sidepanel/index.js","src/containers/sidepanel/sidepanel.scss","src/csv_editor.js","src/csv_editor.scss","src/desktop_screenshot_editor/index.scss","src/desktop_screenshot_editor/index.tsx","src/desktop_screenshot_editor/service.ts","src/desktop_screenshot_editor/types.ts","src/ext/automation_tab_mark.js","src/ext/bg.js","src/ext/common/desktop_vision.ts","src/ext/common/global_state.ts","src/ext/common/sidepanel.ts","src/ext/common/tab.ts","src/ext/content_script/command_runner.js","src/ext/content_script/drag_mock/DataTransfer.js","src/ext/content_script/drag_mock/DragDropAction.js","src/ext/content_script/drag_mock/eventFactory.js","src/ext/content_script/drag_mock/index.js","src/ext/content_script/eval.ts","src/ext/content_script/index.js","src/ext/content_script/select_area.d.ts","src/ext/content_script/select_area.js","src/ext/inject.js","src/ext/popup/run_command.ts","src/ext/popup/timeout_counter.ts","src/index.js","src/init_player.tsx","src/models/db.d.ts","src/models/db.js","src/models/test_case_model.js","src/modules/counters.ts","src/modules/helper.ts","src/modules/interpret_commands.ts","src/modules/js_includes.js","src/modules/js_transpile.js","src/modules/ocr.ts","src/modules/players.tsx","src/modules/run_command.ts","src/modules/script_dev_hooks.js","src/modules/script_runner.js","src/recomputed/index.ts","src/reducers/index.js","src/reducers/state.ts","src/redux/index.d.ts","src/redux/index.js","src/redux/post_logic_middleware.js","src/redux/promise_middleware.js","src/search_vision.ts","src/services/ai/anthropic/anthropic.service.ts","src/services/ai/anthropic/index.ts","src/services/ai/computer_use/computer_use.ts","src/services/ai/computer_use/model.ts","src/services/ai/computer_use/sampling.ts","src/services/ai/computer_use/service.ts","src/services/ai/macro_agent/service.ts","src/services/ai/macro_agent/tools.ts","src/services/ai/openai_compatible/sampling.ts","src/services/ai/uivision_free_tier.ts","src/services/ai/vision_prompt/service.ts","src/services/api/http_api.ts","src/services/backup/backup.ts","src/services/backup/common.ts","src/services/backup/restore.ts","src/services/cdp_input/index.ts","src/services/contextMenu/index.ts","src/services/desktop/base64.ts","src/services/desktop/constants.ts","src/services/desktop/index.ts","src/services/desktop/kantu-cv-host.ts","src/services/desktop/kantu-cv.ts","src/services/dpr/index.ts","src/services/dpr/types.ts","src/services/filesystem/constants.ts","src/services/filesystem/index.ts","src/services/filesystem/kantu-file-access-host.ts","src/services/filesystem/kantu-file-access.ts","src/services/kv_data/common.ts","src/services/kv_data/macro_extra_data.ts","src/services/kv_data/migration_data.ts","src/services/kv_data/misc_data.ts","src/services/license/index.ts","src/services/license/service.ts","src/services/license/types.ts","src/services/log/index.ts","src/services/mcp_bridge/index.ts","src/services/migration/common.ts","src/services/migration/index.ts","src/services/migration/jobs/2019_04_01_macro_suite_storage.ts","src/services/migration/types.ts","src/services/native_host/index.ts","src/services/ocr/command_counter.ts","src/services/ocr/highlighter.ts","src/services/ocr/index.ts","src/services/ocr/languages.ts","src/services/ocr/tesseract_c.ts","src/services/ocr/types.ts","src/services/player/call_stack/call_stack.ts","src/services/player/call_stack/stack.ts","src/services/player/call_stack/types.ts","src/services/player/macro.ts","src/services/player/monitor/countdown.ts","src/services/player/monitor/macro_monitor.ts","src/services/player/monitor/monitor.ts","src/services/player/monitor/timer.ts","src/services/player/monitor/types.ts","src/services/player/player.ts","src/services/proxy/base.ts","src/services/proxy/http_auth.ts","src/services/proxy/index.ts","src/services/proxy/listener_api_proxy.ts","src/services/proxy/pac_api_proxy.ts","src/services/proxy/settings_api_proxy.ts","src/services/proxy/types.ts","src/services/screen_capture/index.ts","src/services/storage/common/filesystem_delegate/delegate.ts","src/services/storage/error.ts","src/services/storage/flat/indexeddb_storage.ts","src/services/storage/flat/storage.ts","src/services/storage/index.ts","src/services/storage/std/browser_filesystem_storage.ts","src/services/storage/std/native_filesystem_storage.ts","src/services/storage/std/standard_storage.ts","src/services/timeout/cs_timeout.ts","src/services/viewport_rect/index.ts","src/services/viewport_rect/types.ts","src/services/vision/adaptor.ts","src/services/vision/teamdocs.d.ts","src/services/xmodules/common.ts","src/services/xmodules/x_screen_capture.ts","src/services/xmodules/x_user_io.ts","src/services/xmodules/xdesktop.ts","src/services/xmodules/xfile.ts","src/services/xmodules/xlocal.ts","src/services/xy/constants.ts","src/services/xy/index.ts","src/services/xy/kantu-xy-host.ts","src/settings/index.tsx","src/settings/settings.scss","src/settings/settings_app.tsx","src/settings/tabs/ai.tsx","src/settings/tabs/api.tsx","src/settings/tabs/backup.tsx"],"storefront":"/r/A9T9","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/A9T9/RPA/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}