{"id":15132158,"url":"https://github.com/cablesalty/companion2","last_synced_at":"2026-04-13T20:32:04.875Z","repository":{"id":257273582,"uuid":"849072267","full_name":"cablesalty/companion2","owner":"cablesalty","description":"An unofficial mobile companion web app for Counter-Strike 2 (CS2).","archived":false,"fork":false,"pushed_at":"2024-09-17T15:53:54.000Z","size":17012,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-20T08:23:39.591Z","etag":null,"topics":["app","application","companion","companion-app","counter-strike","counter-strike-2","flask","flask-application","mobile","mobile-app","opencv","pyautogui","python","python-flask","python3","server","web-app","web-application"],"latest_commit_sha":null,"homepage":"","language":"SCSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cablesalty.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2024-08-28T23:33:52.000Z","updated_at":"2025-03-11T21:12:16.000Z","dependencies_parsed_at":"2024-09-17T17:50:02.713Z","dependency_job_id":null,"html_url":"https://github.com/cablesalty/companion2","commit_stats":null,"previous_names":["cablesalty/companion2","patrikszabohu/companion2"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/cablesalty/companion2","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cablesalty%2Fcompanion2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cablesalty%2Fcompanion2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cablesalty%2Fcompanion2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cablesalty%2Fcompanion2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cablesalty","download_url":"https://codeload.github.com/cablesalty/companion2/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cablesalty%2Fcompanion2/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31770718,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-13T20:17:16.280Z","status":"ssl_error","status_checked_at":"2026-04-13T20:17:08.216Z","response_time":93,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["app","application","companion","companion-app","counter-strike","counter-strike-2","flask","flask-application","mobile","mobile-app","opencv","pyautogui","python","python-flask","python3","server","web-app","web-application"],"created_at":"2024-09-26T04:04:22.836Z","updated_at":"2026-04-13T20:32:04.847Z","avatar_url":"https://github.com/cablesalty.png","language":"SCSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003ecompanion2\u003c/h1\u003e\r\n\r\n\u003c!-- \u003cimg src=\"readme_img1.png\" width=\"100%\" align=\"center\"\u003e\u003c/img\u003e --\u003e\r\n\r\n\u003ch3 align=\"center\"\u003eAn unofficial mobile companion web app for Counter-Strike 2 (CS:2).\u003c/h3\u003e\r\n\r\n\u003e [!WARNING]\r\n\u003e Important update -- read below:  \r\n\u003e After leaving this project for two years, I'm teaming up with a friend of mine who has knowledge\r\n\u003e in injecting code into CS and the game's web API to further develop this application.  \r\n\u003e In the future, this code will not use Apache Cordova and image scanning to achieve its purpose.\r\n\r\n# What does it do?\r\ncompanion2 allows you to see what is happening in CS:2, remotely start or stop matchmaking or remotely accept a match without being at your computer.\r\n\r\n\u003c!-- \u003cimg src=\"readme_img2.png\" width=\"100%\" align=\"center\"\u003e\u003c/img\u003e --\u003e\r\n\r\nThe remote match accept feature is probably the most useful. Imagine going to get some water, and you can accept the match while you are filling your bottle outside.\r\n\r\n# Installation\r\n## 1: Install Python\r\nIf you don't have Python installed already, install it from [the official Python website](https://www.python.org/). The application was tested with [Python 3.12.5](https://www.python.org/downloads/release/python-3125/).\r\n\r\n## 2: Clone the repository\r\nAssuming you have `git`, you can use\r\n```\r\ngit clone https://github.com/cablesalty/companion2\r\n```\r\n\r\nAlternatively, you can [download the project as a .zip file](https://github.com/cablesalty/companion2/archive/refs/heads/main.zip) and extract it.\r\n\r\n## 3: Install dependencies\r\nYou need to install some packages first. Use this command:\r\n```\r\npip install -r requirements.txt\r\n```\r\n\r\n## 4: Launch the server\r\nYou can launch the server using this command:\r\n```\r\npython main.py\r\n```\r\nThis will create a console window hosting the server and information on how to connect your phone. You can minimize the window, but closing it will stop the server.\r\n\r\n## 5. Connect your phone\r\nWhen you launch the server, it will display something like this:\r\n```\r\n---------------------------------------------\r\nYou can access companion2 from your phone by entering this\r\ninto your preferred browser:\r\n\r\nhttp://192.168.0.100:5000\r\n---------------------------------------------\r\n```\r\nEnter the URL into your preferred browser on your phone.\r\n\r\n### That's all! Enjoy!\r\n\r\n# Troubleshooting\r\nHere are some common issues and fixes.\r\n\r\n## I entered the URL and it is unreachable.\r\nMake sure your phone and PC is on the same network, otherwise it will not work. Also, make sure no other app is using port 5000.\r\n\r\n## The server crashes.\r\nMake sure all the dependencies have been installed successfully and no other application is using port 5000.\r\n\r\n***Disclaimer: This project is not affiliated with Valve or Counter-Strike.***","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcablesalty%2Fcompanion2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcablesalty%2Fcompanion2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcablesalty%2Fcompanion2/lists"}