{"id":18518207,"url":"https://github.com/marcuwynu23/auto","last_synced_at":"2026-03-01T04:35:51.022Z","repository":{"id":45789888,"uuid":"495707116","full_name":"marcuwynu23/Auto","owner":"marcuwynu23","description":"AUTO is a powerful command-line tool designed to streamline your workflow by automating the execution of commands in separate instances of the terminal. With AUTO, you can easily define scripts containing sequences of commands, and the tool will run each command in its own terminal instance.","archived":false,"fork":false,"pushed_at":"2025-12-15T04:57:37.000Z","size":4952,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-17T21:23:42.265Z","etag":null,"topics":["autofile","automation","batch-scripting","cmd","commandline","commands","console","multi","multi-instance","shell","shell-scripting","terminal","tool","windows"],"latest_commit_sha":null,"homepage":"","language":"C++","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/marcuwynu23.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"custom":["paypal.me/wynumarcu23"]}},"created_at":"2022-05-24T07:03:18.000Z","updated_at":"2025-12-15T04:57:37.000Z","dependencies_parsed_at":"2023-02-14T09:25:21.922Z","dependency_job_id":"67ee9f5a-417d-4668-ab81-180ab828dc69","html_url":"https://github.com/marcuwynu23/Auto","commit_stats":{"total_commits":35,"total_committers":2,"mean_commits":17.5,"dds":"0.37142857142857144","last_synced_commit":"a3e733f6db6339c2133e0f469ac575f769af61c2"},"previous_names":["marcuwynu23/auto"],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/marcuwynu23/Auto","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcuwynu23%2FAuto","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcuwynu23%2FAuto/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcuwynu23%2FAuto/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcuwynu23%2FAuto/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marcuwynu23","download_url":"https://codeload.github.com/marcuwynu23/Auto/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcuwynu23%2FAuto/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29960253,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-01T01:47:18.291Z","status":"online","status_checked_at":"2026-03-01T02:00:07.437Z","response_time":124,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["autofile","automation","batch-scripting","cmd","commandline","commands","console","multi","multi-instance","shell","shell-scripting","terminal","tool","windows"],"created_at":"2024-11-06T17:12:28.529Z","updated_at":"2026-03-01T04:35:51.017Z","avatar_url":"https://github.com/marcuwynu23.png","language":"C++","funding_links":["paypal.me/wynumarcu23"],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# 🚀 Auto\n\n**Automate YoUr Terminal Operation**\n\nA powerful command-line tool designed to streamline your workflow by automating the execution of commands in separate terminal instances.\n\n[![GitHub stars](https://img.shields.io/github/stars/marcuwynu23/Auto.svg?style=for-the-badge\u0026logo=github\u0026logoColor=white)](https://github.com/marcuwynu23/Auto/stargazers)\n[![GitHub forks](https://img.shields.io/github/forks/marcuwynu23/Auto.svg?style=for-the-badge\u0026logo=github\u0026logoColor=white)](https://github.com/marcuwynu23/Auto/network)\n[![GitHub issues](https://img.shields.io/github/issues/marcuwynu23/Auto.svg?style=for-the-badge\u0026logo=github\u0026logoColor=white)](https://github.com/marcuwynu23/Auto/issues)\n[![GitHub license](https://img.shields.io/github/license/marcuwynu23/Auto.svg?style=for-the-badge\u0026logo=github\u0026logoColor=white)](https://github.com/marcuwynu23/Auto/blob/main/LICENSE)\n\n[Features](#-features) • [Installation](#-installation) • [Usage](#-usage) • [Building](#-building) • [Contributing](#-contributing)\n\n\u003c/div\u003e\n\n---\n\n## 📋 Table of Contents\n\n- [Features](#-features)\n- [Installation](#-installation)\n- [Usage](#-usage)\n- [Command Syntax](#-command-syntax)\n- [Building](#-building)\n- [Important Notes](#-important-notes)\n- [Contributing](#-contributing)\n\n---\n\n## ✨ Features\n\n- 🎯 **Block-based Configuration** - Organize commands into named blocks for easy management\n- 🖥️ **Separate Terminal Instances** - Each command runs in its own terminal window\n- ⚡ **Multiple Execution Modes** - Normal, minimized, and background execution\n- 🔄 **Background Processes** - Run commands in the background without blocking\n- 📝 **Comment Support** - Add comments to document your automation scripts\n- 🎨 **Simple Syntax** - Easy-to-read and write configuration format\n\n---\n\n## 📦 Installation\n\n### Option 1: Download Pre-built Binary\n\n1. Go to the [Releases](https://github.com/marcuwynu23/Auto/releases) page\n2. Download the latest `auto.exe` or `AutoInstaller.*.exe`\n3. For installer: Run the installer and follow the setup wizard\n4. For standalone: Add `auto.exe` to your system PATH\n\n### Option 2: Build from Source\n\nSee the [Building](#-building) section below.\n\n---\n\n## 🚀 Usage\n\n### Step 1: Create a `.autofile`\n\nCreate a file named `.autofile` in your project directory and define your command blocks:\n\n```cmd\n# This is a comment\n# Define the dev block\ndev {\n  # Run taskkill single-use command (background)\n  $ taskkill /im node.exe\n\n  # Run MongoDB server in minimized window\n  - mongod.exe --dbpath C:\\data\\db\n\n  # Run the web server normally\n  + node server.js\n\n  # Run the file server\n  + python fileserver.py\n\n  # Execute multiple commands in the same line\n  + set PORT=4000 \u0026\u0026 npm start --prefix client\n\n  # Run attendance frontend server\n  + npm start --prefix attendance\n\n  # Run HRIS backend server\n  + npm run --prefix server dev\n}\n```\n\n### Step 2: Run Auto\n\nExecute the following command in your terminal:\n\n```sh\nauto dev\n```\n\nOr if using a custom file:\n\n```sh\nauto -f .autofile dev\n```\n\n---\n\n## 📖 Command Syntax\n\nAuto supports three execution modes:\n\n| Symbol | Mode       | Description                                 |\n| ------ | ---------- | ------------------------------------------- |\n| `+`    | Normal     | Runs command in a normal terminal window    |\n| `-`    | Minimized  | Runs command in a minimized terminal window |\n| `$`    | Background | Runs command in the background (no window)  |\n\n### Example Configuration\n\n```cmd\nproduction {\n  # Start services in background\n  $ nginx.exe\n  $ redis-server.exe\n\n  # Start main application normally\n  + node app.js\n\n  # Start monitoring in minimized window\n  - pm2 monit\n}\n```\n\n### Special Blocks\n\nBlocks starting with `.` (dot) are special blocks that can be executed automatically:\n\n```cmd\n.init {\n  # This block runs automatically\n  + echo \"Initializing environment...\"\n  + npm install\n}\n```\n\n---\n\n## 🔨 Building\n\n### Prerequisites\n\n- **C++ Compiler**: MinGW-w64, LLVM/Clang, or MSVC\n- **Windows Resource Compiler**: `windres` (included with MinGW)\n- **Make**: For using the Makefile (optional)\n\n### Build Methods\n\n#### Method 1: Using Make (MinGW - Default)\n\n```sh\nmake\n```\n\nThe compiled binary will be in the `bin/` directory.\n\n#### Method 2: Using Make (LLVM/Clang)\n\n```sh\nmake -f llvm.makefile\n```\n\n#### Method 3: Using CMake (Preferred)\n\n```sh\ncmake -B build -G \"MinGW Makefiles\"\ncmake --build build\n```\n\n#### Method 4: Rust Version (Alternative)\n\n```sh\nmake -f makefile.rust\n```\n\nThe compiled binary will be in `bin/rust/auto`.\n\n---\n\n## ⚠️ Important Notes\n\n### ⚡ Running Processes\n\n- **Do not rerun** the `auto` command while processes inside the `.autofile` are already running\n- Doing so may cause errors, especially if a specific command only supports **one running instance** at a time\n- Always stop existing processes before running `auto` again\n\n### 💡 Best Practices\n\n- Use descriptive block names (e.g., `dev`, `production`, `test`)\n- Add comments to document your automation scripts\n- Group related commands in the same block\n- Use background mode (`$`) for services that don't need user interaction\n- Use minimized mode (`-`) for monitoring tools\n\n---\n\n## 🤝 Contributing\n\nWe welcome contributions to Auto! Here's how you can help:\n\n### Getting Started\n\n1. **Fork** the repository to your GitHub account\n2. **Clone** your fork locally:\n   ```sh\n   git clone https://github.com/your-username/Auto.git\n   cd Auto\n   ```\n3. **Create a new branch** for your changes:\n   ```sh\n   git checkout -b feature/your-feature-name\n   ```\n4. **Make your changes** and test them thoroughly\n5. **Commit** your changes:\n   ```sh\n   git commit -m \"Add: your feature description\"\n   ```\n6. **Push** to your fork:\n   ```sh\n   git push origin feature/your-feature-name\n   ```\n7. **Open a Pull Request** on the main repository\n\n### Contribution Guidelines\n\n- Follow the existing code style\n- Add comments for complex logic\n- Test your changes before submitting\n- Update documentation if needed\n- Write clear commit messages\n\nOur team will review your changes and merge them if they meet our standards. Thank you for helping make Auto better! 🎉\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n**Made with ❤️ by [Mark Wayne Menorca](https://github.com/marcuwynu23)**\n\n[⭐ Star this repo](https://github.com/marcuwynu23/Auto) • [🐛 Report Bug](https://github.com/marcuwynu23/Auto/issues) • [💡 Request Feature](https://github.com/marcuwynu23/Auto/issues)\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcuwynu23%2Fauto","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarcuwynu23%2Fauto","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcuwynu23%2Fauto/lists"}