{"id":17403739,"url":"https://github.com/link89/auto-cmd","last_synced_at":"2025-04-15T19:27:33.710Z","repository":{"id":81055129,"uuid":"338385097","full_name":"link89/auto-cmd","owner":"link89","description":"Cross platforms and cross languages desktop automation solution.","archived":false,"fork":false,"pushed_at":"2022-06-10T18:03:37.000Z","size":257,"stargazers_count":6,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-15T19:27:25.804Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/link89.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}},"created_at":"2021-02-12T17:22:15.000Z","updated_at":"2024-04-22T09:54:55.000Z","dependencies_parsed_at":"2023-09-13T02:49:22.038Z","dependency_job_id":null,"html_url":"https://github.com/link89/auto-cmd","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/link89%2Fauto-cmd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/link89%2Fauto-cmd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/link89%2Fauto-cmd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/link89%2Fauto-cmd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/link89","download_url":"https://codeload.github.com/link89/auto-cmd/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249137536,"owners_count":21218721,"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":"2024-10-16T19:07:47.804Z","updated_at":"2025-04-15T19:27:33.702Z","avatar_url":"https://github.com/link89.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# auto-cmd\nCross platforms and cross languages desktop automation solution.\n\n## Introduction\n\n### Goals\n* Run desktop operation without writing code.\n* Language and platform agnostic.\n* Compose multiple operation in single line.\n* Remote execution via HTTP protocol.\n* Easy to add customize commands/features.\n\n### Tech Solutions\n* Provide command line and HTTP interface with `python-fire`.\n* Provide HTTP service with `FastAPI`.\n* Chain multiple commands in a single call.\n\n### Features\n* Locate UI element via system interface, OCR and image matching.\n* Image process.\n\n\n## Get started\n\n### Prepare\n#### Python\nPlease ensure you have Python \u003e=3.6 installed.\n\nFor Windows user, you may need to install `Microsoft C++ Build Tool`.\n\n#### Tesseract\nYou should ensure Tesseract is installed in your system. Both version 4 and 5 are supported.\nFor Windows user this would be a little tedious, you have to add its path to environment variable.\nRun the following command to test if tesseract is installed correctly.\n```shell\ntesseract -v\n```\n\n### Installation\n\n```shell\npip install -U pip  # upgrade pip to avoid unexpected issue\npip install https://github.com/link89/auto-cmd/archive/refs/heads/main.zip\n```\nRun the following command to test if everything is OK.\nIt may take several seconds to finish, don't touch your mouse and keyboard before it finish.\n\n```shell\nauto-cmd open_browser https://github.com/link89/auto-cmd - sleep 5 - take_screenshot - grayscale - bi_level 0 128 - tesseract - find star - move_to - click\n```\nTo test the remote execution via HTTP, you should start the HTTP server first\n```shell\nauto-cmd-http\n```\nBy default, this command will start an HTTP server listen on `localhost:5000`.\nIf you want to allow remote access or change the port, please use the following command.\n\n```shell\nauto-cmd-http --host 0.0.0.0 --port 5001\n```\nNow in your browser you can access the Swagger document via http://localhost:5000/docs\nClick Try it out and copy arguments of the previous command to the request body, like below.\n```json\n{\n  \"args\": \"open_browser https://github.com/link89/auto-cmd - sleep 5 - take_screenshot - grayscale - bi_level 0 128 - tesseract - find star - move_to - click\"\n}\n```\nThen click Execute, you will find the command start to execute on the remote machine.\n\n## Commands\nTBD\n\n## Integrate with `selenium-federation`\nTBD\n\n## Developers Guide\nTBD","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flink89%2Fauto-cmd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flink89%2Fauto-cmd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flink89%2Fauto-cmd/lists"}