Token导航 LogoToken导航

Agent Skill · 开发

install-script-generator(安装脚本生成器)

install-script-generator 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

install-script-generator 是开发类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为接触敏感数据;许可证信息还不明确,第三方扫描有未通过项,按安装量在开发类的 21,746 个 Skill 里排第 12,578。

总安装 1,223周安装 49GitHub Stars 68下载 396核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:install-script-generator(安装脚本生成器)
来源仓库:https://github.com/luongnv89/skills
仓库路径:skills/install-script-generator
安装命令:
npx skills add https://github.com/luongnv89/skills --skill install-script-generator
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/luongnv89/skills --skill install-script-generator

这个 Skill 是做什么的

开发类 Skill 面向写代码、改代码和排查问题,一般会读写仓库文件,部分还会执行构建或测试命令。

用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息。适合在 Codex、Claude、Cursor、Gemini CLI 中围绕仓库状态、代码变更或协作事项进行整理。通过 npx skills add 命令从指定仓库安装,需结合原始 README 核验具体用法。

安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。install-script-generator 属于开发类 Skill,可作为该场景下的辅助能力补充。

来源仓库内路径:skills/install-script-generator

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/luongnv89/skills --skill install-script-genera…;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要接触敏感数据,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

install-script-generator 怎么安装?

在终端执行 npx skills add https://github.com/luongnv89/skills --skill install-script-generator。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

install-script-generator 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

install-script-generator 需要什么权限?

权限级别是接触敏感数据。该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

install-script-generator 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

install-script-generator 用的人多吗?

公开数据是累计安装 1,223 次,近一周安装 49 次,下载 396 次,GitHub 68 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

install-script-generator 安全吗?

第三方扫描有未通过项,风险较高。除非你确认过源码,否则不建议直接安装到常用环境。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。

先想清楚的地方

  • 需要接触敏感数据,装到常用环境前要先评估影响面。
  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理开发类任务、又不想每次都手写提示词的人。

不太适合

  • 环境里有大量密钥、凭证,不方便给第三方 Skill 读取的人。
  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

开发类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
skill-vetter

技能审查员 · OpenClaw

8,779,018986操作浏览器MIT-0通过
ontology

本体论 · OpenClaw

6,636,960576只读MIT-0通过
entra-app-registration

内部应用程序注册 · Codex、Claude

6,631,872764接触敏感数据未明确通过
entra-app-registration

内部应用程序注册 · Codex、Claude

3,757,680201接触敏感数据未明确通过
nano-banana-pro

纳米香蕉专业版 · OpenClaw

3,526,898364接触敏感数据MIT-0有提醒
install-script-generator

安装脚本生成器 · 本页

1,22368接触敏感数据未明确未通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

Install Script Generator

Generate robust, cross-platform installation scripts that users can run with a single bash command via GitHub raw URLs.

Repo Sync Before Edits (mandatory)

Before creating/updating/deleting files in an existing repository, sync the current branch with remote:

branch="$(git rev-parse --abbrev-ref HEAD)"
git fetch origin
git pull --rebase origin "$branch"

If the working tree is not clean, stash first, sync, then restore:

git stash push -u -m "pre-sync"
branch="$(git rev-parse --abbrev-ref HEAD)"
git fetch origin && git pull --rebase origin "$branch"
git stash pop

If origin is missing, pull is unavailable, or rebase/stash conflicts occur, stop and ask the user before continuing.

Primary Goal

Generate a self-contained install.sh script that:

  1. Detects the user's OS, architecture, and package manager automatically
  2. Installs all dependencies and the target software
  3. Verifies the installation
  4. Can be executed via a one-liner using GitHub raw user content:
curl -sSL https://raw.githubusercontent.com/<owner>/<repo>/<branch>/install.sh | bash

or with wget:

wget -qO- https://raw.githubusercontent.com/<owner>/<repo>/<branch>/install.sh | bash

Workflow

Phase 1: Environment Exploration

Before generating the script, understand the project context:

  1. Identify the target — What software/module/tool is being installed?
  2. Check the repository — Look for existing build files, Makefile, package.json, setup.py, Cargo.toml, go.mod, etc.
  3. Identify dependencies — What does the software need to build/run?
  4. Determine the GitHub repo — The <owner>/<repo> for the raw URL (check git remote or ask user)

Run the environment explorer for local testing:

python3 scripts/env_explorer.py

The script detects:

  • Operating system (Windows/Linux/macOS) and version
  • CPU architecture (x86_64, ARM64, etc.)
  • Package managers available (apt, yum, brew, choco, winget)
  • Shell environment (bash, zsh, powershell, cmd)
  • Existing dependencies and versions
  • User permissions (admin/sudo availability)

Phase 2: Installation Planning

Based on the environment analysis and target software:

  1. Identify dependencies — List all required packages/libraries
  2. Check existing installations — Avoid reinstalling what exists
  3. Order operations — Resolve dependency graph
  4. Add verification steps — Each step must be verifiable
  5. Plan rollback — Define cleanup on failure

Use the plan generator for structured planning:

python3 scripts/plan_generator.py --target "<software_name>" --env-file env_info.json

Phase 3: Script Generation (Primary Output)

Generate a self-contained install.sh script at the project root. The script MUST follow this structure:

#!/usr/bin/env bash
set -euo pipefail

# ============================================================================
# <Software Name> Installer
# Usage: curl -sSL https://raw.githubusercontent.com/<owner>/<repo>/<branch>/install.sh | bash
# ============================================================================

# --- Configuration ---
TOOL_NAME="<software_name>"
REPO_OWNER="<owner>"
REPO_NAME="<repo>"
DEFAULT_BRANCH="<branch>"
INSTALL_PREFIX="${INSTALL_PREFIX:-/usr/local}"

# --- Color Output ---
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m' # No Color

info()  { printf "${BLUE}[INFO]${NC}  %s\n" "$*"; }
ok()    { printf "${GREEN}[ OK ]${NC}  %s\n" "$*"; }
warn()  { printf "${YELLOW}[WARN]${NC}  %s\n" "$*"; }
err()   { printf "${RED}[ERR ]${NC}  %s\n" "$*" >&2; }
die()   { err "$@"; exit 1; }

# --- OS / Arch Detection ---
detect_os() {
    local os
    os="$(uname -s | tr '[:upper:]' '[:lower:]')"
    case "$os" in
        linux*)  echo "linux" ;;
        darwin*) echo "macos" ;;
        mingw*|msys*|cygwin*) echo "windows" ;;
        *)       die "Unsupported operating system: $os" ;;
    esac
}

detect_arch() {
    local arch
    arch="$(uname -m)"
    case "$arch" in
        x86_64|amd64)  echo "x86_64" ;;
        aarch64|arm64) echo "arm64" ;;
        armv7l)        echo "armv7" ;;
        *)             die "Unsupported architecture: $arch" ;;
    esac
}

detect_package_manager() {
    if command -v apt-get &>/dev/null; then echo "apt"
    elif command -v dnf &>/dev/null; then echo "dnf"
    elif command -v yum &>/dev/null; then echo "yum"
    elif command -v pacman &>/dev/null; then echo "pacman"
    elif command -v brew &>/dev/null; then echo "brew"
    elif command -v zypper &>/dev/null; then echo "zypper"
    else echo "unknown"
    fi
}

need_sudo() {
    if [ "$(id -u)" -ne 0 ]; then
        if command -v sudo &>/dev/null; then
            echo "sudo"
        else
            die "This script requires root privileges. Please run as root or install sudo."
        fi
    else
        echo ""
    fi
}

# --- Dependency Installation ---
install_deps() {
    local pm="$1"
    local sudo_cmd="$2"
    shift 2
    local deps=("$@")

    [ ${#deps[@]} -eq 0 ] && return 0

    info "Installing dependencies: ${deps[*]}"
    case "$pm" in
        apt)    $sudo_cmd apt-get update -qq && $sudo_cmd apt-get install -y -qq "${deps[@]}" ;;
        dnf)    $sudo_cmd dnf install -y -q "${deps[@]}" ;;
        yum)    $sudo_cmd yum install -y -q "${deps[@]}" ;;
        pacman) $sudo_cmd pacman -Sy --noconfirm "${deps[@]}" ;;
        brew)   brew install "${deps[@]}" ;;
        zypper) $sudo_cmd zypper install -y "${deps[@]}" ;;
        *)      die "Cannot install dependencies: unsupported package manager '$pm'" ;;
    esac
    ok "Dependencies installed"
}

# --- Main Installation Logic ---
install_<tool>() {
    # ... tool-specific installation steps ...
    # This section is customized per target software
    :
}

# --- Verification ---
verify_installation() {
    info "Verifying installation..."
    if command -v "$TOOL_NAME" &>/dev/null; then
        ok "$TOOL_NAME $(${TOOL_NAME} --version 2>/dev/null || echo '') installed successfully"
    else
        die "$TOOL_NAME installation could not be verified"
    fi
}

# --- Entry Point ---
main() {
    info "Installing $TOOL_NAME"
    info "============================================"

    local os arch pm sudo_cmd
    os="$(detect_os)"
    arch="$(detect_arch)"
    pm="$(detect_package_manager)"
    sudo_cmd="$(need_sudo)"

    info "OS: $os | Arch: $arch | Package Manager: $pm"

    # Install dependencies (customize per target)
    # install_deps "$pm" "$sudo_cmd" dep1 dep2 dep3

    # Install the tool
    install_<tool>

    # Verify
    verify_installation

    info "============================================"
    ok "Installation complete!"
    info "Run '$TOOL_NAME --help' to get started."
}

main "$@"
Script Requirements

The generated install.sh MUST:

  • Start with #!/usr/bin/env bash and set -euo pipefail
  • Be fully self-contained (no external script dependencies)
  • Auto-detect OS (Linux, macOS, Windows/MSYS), architecture, and package manager
  • Handle sudo gracefully (detect if needed, fail with clear message if unavailable)
  • Use colored output for readability
  • Verify the installation at the end
  • Exit with non-zero code on any failure
  • Include the one-liner command in the header comment
  • Support INSTALL_PREFIX environment variable override where applicable
Optional: Windows Support

If Windows support is needed, also generate install.ps1:

# Usage: irm https://raw.githubusercontent.com/<owner>/<repo>/<branch>/install.ps1 | iex

Phase 4: Documentation Generation

After generating the install script, update the project's README (or generate a section) with the one-liner:

Example output for README:

## Installation

### Quick Install (one command)

curl -sSL https://raw.githubusercontent.com/<owner>/<repo>/main/install.sh | bash


Or with wget:

wget -qO- https://raw.githubusercontent.com/<owner>/<repo>/main/install.sh | bash


### Advanced Options

Install to a custom prefix

INSTALL_PREFIX=~/.local curl -sSL https://raw.githubusercontent.com/<owner>/<repo>/main/install.sh | bash

Download and inspect before running

curl -sSL https://raw.githubusercontent.com/<owner>/<repo>/main/install.sh -o install.sh less install.sh # review the script bash install.sh

Also generate the full usage documentation:

python3 scripts/doc_generator.py --target "<software_name>" --plan installation_plan.yaml

Output Files

The skill generates these files:

FileDescription
install.shPrimary output — standalone install script for `curl \bash`
install.ps1*(Optional)* Windows PowerShell installer
env_info.jsonSystem environment analysis (local testing)
installation_plan.yamlDetailed installation steps
USAGE_GUIDE.mdUser documentation

Determining the GitHub Raw URL

To construct the one-liner URL, the skill needs:

  1. Repository owner and name — Check git remote -v for origin URL, or ask the user
  2. Branch — Default to main, check with git branch --show-current
  3. File path — install.sh at the repo root

The raw URL format is:

https://raw.githubusercontent.com/<owner>/<repo>/<branch>/install.sh

If the repo uses a non-standard structure (e.g., the script is in a subdirectory), adjust the path:

https://raw.githubusercontent.com/<owner>/<repo>/<branch>/path/to/install.sh

Platform-Specific Notes

Windows

  • Prefer winget over choco when available
  • Use PowerShell for script execution (install.ps1)
  • Handle UAC elevation requirements
  • One-liner: irm https://raw.githubusercontent.com/<owner>/<repo>/main/install.ps1 | iex

Linux

  • Detect distro family (Debian/RedHat/Arch)
  • Use appropriate package manager
  • Handle sudo requirements gracefully
  • Support both curl and wget for the one-liner

macOS

  • Use Homebrew as primary package manager
  • Handle Apple Silicon vs Intel differences
  • Respect Gatekeeper and notarization

Example Usage

Example 1: "Create an install script for this project"

  1. Detect the project type (e.g., Python package, Go binary, Node module)
  2. Check git remote -v to get <owner>/<repo>
  3. Generate install.sh with proper dependency installation and build steps
  4. Output the one-liner command for the README

Example 2: "Generate a curl install command for my CLI tool"

  1. Analyze the project's build system
  2. Generate install.sh that downloads the latest release binary or builds from source
  3. Include architecture detection for pre-built binaries
  4. Output: curl -sSL https://raw.githubusercontent.com/user/tool/main/install.sh | bash

Example 3: "Make my module installable with a single command"

  1. Check for existing Makefile, setup.py, package.json, etc.
  2. Generate install.sh that wraps the build/install process
  3. Add dependency installation (compilers, libraries, runtimes)
  4. Verify the module is available after install

Step Completion Reports

After completing each major step, output a status report in this format:

◆ [Step Name] ([step N of M] — [context])
··································································
  [Check 1]:          √ pass
  [Check 2]:          √ pass (note if relevant)
  [Check 3]:          × fail — [reason]
  [Check 4]:          √ pass
  [Criteria]:         √ N/M met
  ____________________________
  Result:             PASS | FAIL | PARTIAL

Adapt the check names to match what the step actually validates. Use √ for pass, × for fail, and — to add brief context. The "Criteria" line summarizes how many acceptance criteria were met. The "Result" line gives the overall verdict.

Phase-specific checks

Phase 1 — Exploration

◆ Exploration (step 1 of 4 — [software name])
··································································
  Target identified:          √ pass ([software/tool name])
  Dependencies mapped:        √ pass ([N] dependencies found)
  OS compatibility checked:   √ pass | × fail — [unsupported OS]
  ____________________________
  Result:                     PASS | FAIL | PARTIAL

Phase 2 — Planning

◆ Planning (step 2 of 4 — [software name])
··································································
  Install order defined:      √ pass ([N] steps ordered)
  Rollback planned:           √ pass | × fail — [what's missing]
  ____________________________
  Result:                     PASS | FAIL | PARTIAL

Phase 3 — Generation

◆ Generation (step 3 of 4 — [software name])
··································································
  Script created:             √ pass (install.sh written)
  Cross-platform tested:      √ pass | × fail — [platform issues]
  ____________________________
  Result:                     PASS | FAIL | PARTIAL

Phase 4 — Documentation

◆ Documentation (step 4 of 4 — [software name])
··································································
  README updated:             √ pass | × fail — [what's missing]
  One-liner works:            √ pass ([curl/wget URL confirmed])
  ____________________________
  Result:                     PASS | FAIL | PARTIAL

Expected Output

A complete install.sh at the repo root, plus a README one-liner block. Example snippet for a Python CLI tool called mytool:

#!/usr/bin/env bash
# Usage: curl -sSL https://raw.githubusercontent.com/owner/mytool/main/install.sh | bash
set -euo pipefail
TOOL_NAME="mytool"
...
[INFO]  OS: linux | Arch: x86_64 | Package Manager: apt
[INFO]  Installing dependencies: python3 python3-pip
[ OK ]  Dependencies installed
[ OK ]  mytool 1.2.0 installed successfully
[ OK ]  Installation complete!

README section generated:

curl -sSL https://raw.githubusercontent.com/owner/mytool/main/install.sh | bash

Edge Cases

  • Unsupported OS: Script calls die "Unsupported operating system: $os" and exits non-zero; user is told which OS was detected.
  • Missing dependencies / no package manager: The detect_package_manager function returns unknown; install_deps calls die with a clear message listing the missing package manager.
  • No sudo access: need_sudo checks id -u and the presence of sudo; if neither root nor sudo is available, the script exits with "Please run as root or install sudo."
  • Windows without PowerShell: install.sh detects MSYS/Cygwin and warns; an install.ps1 is generated separately for native Windows.
  • Non-standard repo structure: If the script lives in a subdirectory, the URL path is adjusted and documented in the README.

Error Handling

  • All scripts exit with non-zero codes on failure (set -e)
  • Each step logs what it's doing before execution
  • Failed dependency installs show the exact missing package and package manager
  • Verification failure at the end gives clear remediation steps
  • Colored output makes errors easy to spot in terminal

平台分布

Codex

34.72%
按下载量换算137

Claude

29.77%
按下载量换算118

Cursor

18.8%
按下载量换算74

Gemini CLI

9.19%
按下载量换算36

安全审计

Gen Agent Trust Hub

未通过

Socket

可疑

Snyk

未通过

权限和风险

接触敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills