{"id":17383773,"url":"https://github.com/pigeonposse/pigeonsh","last_synced_at":"2026-03-02T13:03:01.009Z","repository":{"id":65801792,"uuid":"585616776","full_name":"pigeonposse/pigeonsh","owner":"pigeonposse","description":"⚡️🗃 Centralize your server scripts in a single folder and run them using a command.","archived":false,"fork":false,"pushed_at":"2025-02-09T20:00:16.000Z","size":117852,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-12T01:57:28.929Z","etag":null,"topics":["cli","javascript","sh","shell-scripts"],"latest_commit_sha":null,"homepage":"https://pigeonposse.com","language":"JavaScript","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/pigeonposse.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,"zenodo":null},"funding":{"github":"pigeonposse","open_collective":"pigeonposse","ko_fi":"pigeonposse","custom":["pigeonposse.com/contribute"]}},"created_at":"2023-01-05T16:18:34.000Z","updated_at":"2025-02-09T20:00:20.000Z","dependencies_parsed_at":"2025-04-15T10:17:16.409Z","dependency_job_id":null,"html_url":"https://github.com/pigeonposse/pigeonsh","commit_stats":{"total_commits":41,"total_committers":5,"mean_commits":8.2,"dds":0.5853658536585367,"last_synced_commit":"01c1688e34c7e3b3a21b232a9614e070bdc6faf7"},"previous_names":["pigeon-posse/pigeonsh"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pigeonposse/pigeonsh","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pigeonposse%2Fpigeonsh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pigeonposse%2Fpigeonsh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pigeonposse%2Fpigeonsh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pigeonposse%2Fpigeonsh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pigeonposse","download_url":"https://codeload.github.com/pigeonposse/pigeonsh/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pigeonposse%2Fpigeonsh/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30003475,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-02T12:19:43.414Z","status":"ssl_error","status_checked_at":"2026-03-02T12:19:02.215Z","response_time":60,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: 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":["cli","javascript","sh","shell-scripts"],"created_at":"2024-10-16T07:43:45.093Z","updated_at":"2026-03-02T13:03:00.988Z","avatar_url":"https://github.com/pigeonposse.png","language":"JavaScript","funding_links":["https://github.com/sponsors/pigeonposse","https://opencollective.com/pigeonposse","https://ko-fi.com/pigeonposse","pigeonposse.com/contribute"],"categories":[],"sub_categories":[],"readme":"\u003c!--\n\n██████╗ ██╗ ██████╗ ███████╗ ██████╗ ███╗   ██╗                \n██╔══██╗██║██╔════╝ ██╔════╝██╔═══██╗████╗  ██║                \n██████╔╝██║██║  ███╗█████╗  ██║   ██║██╔██╗ ██║                \n██╔═══╝ ██║██║   ██║██╔══╝  ██║   ██║██║╚██╗██║                \n██║     ██║╚██████╔╝███████╗╚██████╔╝██║ ╚████║                \n╚═╝     ╚═╝ ╚═════╝ ╚══════╝ ╚═════╝ ╚═╝  ╚═══╝                \n                                                               \n██████╗  ██████╗ ███████╗███████╗███████╗                      \n██╔══██╗██╔═══██╗██╔════╝██╔════╝██╔════╝                      \n██████╔╝██║   ██║███████╗███████╗█████╗                        \n██╔═══╝ ██║   ██║╚════██║╚════██║██╔══╝                        \n██║     ╚██████╔╝███████║███████║███████╗                      \n╚═╝      ╚═════╝ ╚══════╝╚══════╝╚══════╝                      \n                                                               \n                                                               \n                                                               \n█████╗█████╗█████╗█████╗█████╗█████╗█████╗█████╗               \n╚════╝╚════╝╚════╝╚════╝╚════╝╚════╝╚════╝╚════╝               \n                                                               \n                                                               \n                                                               \n██████╗ ██╗ ██████╗ ███████╗ ██████╗ ███╗   ██╗███████╗██╗  ██╗\n██╔══██╗██║██╔════╝ ██╔════╝██╔═══██╗████╗  ██║██╔════╝██║  ██║\n██████╔╝██║██║  ███╗█████╗  ██║   ██║██╔██╗ ██║███████╗███████║\n██╔═══╝ ██║██║   ██║██╔══╝  ██║   ██║██║╚██╗██║╚════██║██╔══██║\n██║     ██║╚██████╔╝███████╗╚██████╔╝██║ ╚████║███████║██║  ██║\n╚═╝     ╚═╝ ╚═════╝ ╚══════╝ ╚═════╝ ╚═╝  ╚═══╝╚══════╝╚═╝  ╚═╝                                                    \n\nCREATED BY ANGELO\nFOR PIGEONPOSSE.COM\n\n--\u003e\n\n![HEADER PIGEONSH](docs/header.png)\n\n[![Web](https://img.shields.io/badge/Web-grey?style=flat-square)](https://pigeonposse.com/) \n[![About us](https://img.shields.io/badge/About%20us-grey?style=flat-square)](https://pigeonposse.com/?popup=about) \n[![Github](https://img.shields.io/badge/Github-grey?style=flat-square)](https://github.com/pigeon-posse)\n[![Donate](https://img.shields.io/badge/Donate-pink?style=flat-square)](https://pigeonposse.com/?popup=donate) \n\n[![Size](https://img.shields.io/bundlephobia/min/@pigeon-posse/pigeonsh?label=Size\u0026style=flat-square)](https://npmjs.com/package/@pigeon-posse/pigeonsh)\n[![License](https://img.shields.io/github/license/pigeon-posse/pigeonsh?color=blue\u0026label=License\u0026style=flat-square)](https://npmjs.com/package/@pigeon-posse/pigeonsh)\n[![Version](https://img.shields.io/npm/v/@pigeon-posse/pigeonsh?color=a1b858\u0026label\u0026style=flat-square)](https://npmjs.com/package/@pigeon-posse/pigeonsh)\n\n# PIGEONSH by _PIGEONPOSSE™_\n\n\u003e :warning: **_Beta_ version**. It can be installed and used but things may change in the future.\n\n## 🗒 Description\n\nCentralize your server scripts in a single folder and run them using the ```psh``` or ```pigeonsh``` command.\nCan be used with ```.sh```, ```.zsh```, ```.js```, and ```.py``` files.\n\n\u003cdetails\u003e\n\u003csummary\u003eIndex\u003c/summary\u003e\n\n1. [Description](#-description) \n2. [Installation](#-installation) \n3. [Usage](#%EF%B8%8F-usage)\n\t- [Write scripts](#write-scripts)\n\t- [Execute scripts](#execute-scripts)\n\t\t- [list](#-psh-list)\n\t\t- [[script-name] or exec [script-name]](#-psh-script-name-or-psh-exec-script-name)\n\t\t- [info [script-name]](#-psh-info-script-name)\n4. [Development](#-development)\n5. [Donate](#-donate)\n6. [License](#-license)\n7. [About us](#-about-us)\n\n\u003c/details\u003e\n\n## 🔑 Installation\n\n### ⚡️ Using NPM\n\n```bash\nnpm install -g @pigeon-posse/pigeonsh\n```\n\n### ☢️ With a executable\n\n\u003cdetails\u003e\n\u003csummary\u003eView details\u003c/summary\u003e\n\n\u003e :warning: __Not recommended__. If you install it this way, the executable will be heavier.\n\nSupported on __Linux__, __MacOs__ and __Windows__.\n\n#### Fast mode\n\n##### ```macos```:\n\n```bash\ngit clone https://github.com/pigeon-posse/pigeonsh.git pigeonsh \u0026\u0026 cp pigeonsh/dist/pigeonsh-macos /usr/local/bin/psh \u0026\u0026 psh hello\n```\n\n##### ```linux```:\n\n```bash\ngit clone https://github.com/pigeon-posse/pigeonsh.git pigeonsh \u0026\u0026 cp pigeonsh/dist/pigeonsh-linux /usr/local/bin/psh \u0026\u0026 psh hello\n```\n\n##### ```Windows``` (no tested):\n\n```cmd\ngit clone https://github.com/pigeon-posse/pigeonsh.git pigeonsh \u0026\u0026 copy pigeonsh/dist/pigeonsh-win.exe C: \\Program Files (x86)\\Git \\us\\ local bin\\psh \u0026\u0026 psh hello\n```\n\n##### ✅ Success installation\nIf the installation has been executed correctly you should see at the end of your line a:\n\n```Hello Pigeon 🐦🌈```\n\n\n#### Manual mode\n\n1. Clone the repository and go to the dist folder.\n2. Copy the executable corresponding to your operating system in your ```bin``` folder. \n\n\u003c/details\u003e\n\n## ⚙️ Usage\n\n### Write scripts\n\nYou can write your scripts in your ```~/.scriptsrc``` folder. The structure for the script to work must be:\n\n```bash\n- ~/.scriptsrc\n\t- 📂 [script-name] \n\t\t- 📄 main.[sh, zsh, js, py]\n\t\t- 📜 info.[yml, yaml, json] # not required\n```\n\n\u003cdetails\u003e\n\u003csummary\u003eView details.\u003c/summary\u003e\n\n\u003cbr\u003e\n\u003cli\u003e \n📂 \u003ccode\u003e[script-name]\u003c/code\u003e:\u003cbr\u003e The name of the folder will be the name that you execute from the \u003ccode\u003epsh\u003c/code\u003e command. \nFolder name must not contain spaces.\n\u003c/li\u003e\n\u003cbr\u003e\n\n\u003cli\u003e \n📄 \u003ccode\u003emain.[sh, js, py]\u003c/code\u003e:\u003cbr\u003e The main file is the file that will be executed, here you will write your code. It could be \u003ccode\u003e.sh\u003c/code\u003e, \u003ccode\u003e.js\u003c/code\u003e, \u003ccode\u003e.py\u003c/code\u003e. \u003cb\u003emain.sh\u003c/b\u003e example:\u003cbr\u003e\u003cbr\u003e\n\n```bash\n#!/bin/sh\n\necho \"Hello Pigeon 🐦🌈\"\n```\n\n\u003c/li\u003e\n\u003cbr\u003e\n\n\u003cli\u003e \n📜 \u003ccode\u003einfo.[yml, yaml, json]\u003c/code\u003e:\u003cbr\u003e Not required. In this file you will add the information of your scripts. \u003cb\u003einfo.yml\u003c/b\u003e example:\u003cbr\u003e\u003cbr\u003e\n\n```yaml\ndescription: Print hello message.\nversion: 1.0.0\n```\n\n\u003c/li\u003e\n\u003cbr\u003e\n\n\u003c/details\u003e\n\n### Execute scripts\n\n#### 🚀 ```psh list```\nRunning this command lists all the scripts saved in your ```~/.scriptsrc``` folder.\n\n\u003cdetails\u003e\n\u003csummary\u003eExample\u003c/summary\u003e\n\nRun:\n\n```bash\npsh list\n```\n\nReturns \u003cb\u003elist of scripts like:\u003c/b\u003e\n\n```bash\nhello\naliasrc\nhosts \n```\n\n\u003c/details\u003e\n\n#### 🚀 ```psh [script-name]``` or ```psh exec [script-name]```\n\nRunning this command will run the scripts with the same name if they exist. \n\n\u003cdetails\u003e\n\u003csummary\u003eExample\u003c/summary\u003e\n\nRun:\n\n```bash \npsh hello\n```\nor\n```bash\npsh exec hello\n```\n\nReturns \u003cb\u003e\u003ccode\u003ehello\u003c/code\u003e script:\u003c/b\u003e\n\n```bash\nHello Pigeon 🐦🌈\n```\n\n\u003c/details\u003e\n\n#### 🚀 ```psh info [script-name]```\n\nRunning this command will display info of script.\n\n\u003cdetails\u003e\n\u003csummary\u003eExample\u003c/summary\u003e\n\nRun:\n\n```bash\npsh info hello\n```\n\nReturns \u003cb\u003e\u003ccode\u003ehello\u003c/code\u003e script info:\u003c/b\u003e\n\n```bash\n{\n\t\"description\": \"Print hello message\",\n\t\"version\": \"1.0.0\"\n}\n```\n\n\u003c/details\u003e\n\n## 👨‍💻 Development\n\nYou can contribute via **_Github_**.\n\n[![Issues](https://img.shields.io/badge/Issues-grey?style=flat-square)](https://github.com/pigeon-posse/pigeonsh/issues)\n[![Pull requests](https://img.shields.io/badge/Pulls-grey?style=flat-square)](https://github.com/pigeon-posse/pigeonsh/pulls)\n\n\n## ☕ Donate\n\nHelp us to develop more interesting things.\n\n[![Donate](https://img.shields.io/badge/Donate-grey?style=flat-square)](https://pigeonposse.com/?popup=donate) \n\n\n## 📜 License\n\nThis software is licensed with GPLv3 (GNU GENERAL PUBLIC LICENSE Version 3).\n\n[![Read more](https://img.shields.io/badge/Read-more-grey?style=flat-square)](https://github.com/pigeon-posse/pigeonsh/blob/main/LICENSE)\n\n## 🐦 About us\n\n_PigeonPosse_ is a ✨ **code development collective** ✨ focused on creating practical and interesting tools that help developers and users enjoy a more agile and comfortable experience. Our projects cover various programming sectors and we do not have a thematic limitation in terms of projects.\n\n[![More](https://img.shields.io/badge/Read-more-grey?style=flat-square)](https://github.com/PigeonPosse/PigeonPosse)\n\n### Collaborators\n\n|                                                                                    | Name        | Role         | GitHub                                         |\n| ---------------------------------------------------------------------------------- | ----------- | ------------ | ---------------------------------------------- |\n| \u003cimg src=\"https://github.com/AngelEspejo.png?size=72\" style=\"border-radius:100%\"/\u003e | AngelEspejo | Author       | [@AngelEspejo](https://github.com/AngelEspejo) |\n| \u003cimg src=\"https://github.com/irfaelo.png?size=72\" style=\"border-radius:100%\"/\u003e \t | Irfaelo      | Windows compatibility       | [@irfaelo](https://github.com/irfaelo) |\n| \u003cimg src=\"https://github.com/PigeonPosse.png?size=72\" style=\"border-radius:100%\"/\u003e | PigeonPosse | Collective\t  | [@PigeonPosse](https://github.com/PigeonPosse) |\n\n\n\u003cbr\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpigeonposse%2Fpigeonsh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpigeonposse%2Fpigeonsh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpigeonposse%2Fpigeonsh/lists"}