跳到正文
cccskills
免费在 GitHub 公开

tool-install

Plans and executes tool installations or upgrades with explicit approval, impact checks, rollback, and verification. Use only when the user asks to install or update software.

中文简介正在准备中。当前显示原文说明。

iurysza/herdr-pane-layouts星标 4(GitHub 4 + cccskills 0)

实测评分 未实测

查看安装方法

包含的文件(1)

  • SKILL.md8.5 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Tool Install Planner

Purpose

Turn an "install this" or "update this" request into a fully researched, user-approved execution plan. The agent must never mutate the system without explicit sign-off.

    +-----------------+     +------------------+     +------------------+
    |  You paste link |---->|  I research tool |---->|  I inspect your  |
    |  or say "install|     |  + env impact    |     |  current system  |
    |  X"             |     |                  |     |                  |
    +-----------------+     +------------------+     +------------------+
                                                          |
                              +---------------------------+
                              v
                       +------------------+
                       |  I generate plan |
                       |  + briefing      |
                       |  + decisions     |
                       |  + rollback      |
                       +------------------+
                              |
                              v
                       +------------------+
                       |  You approve     |
                       |  (or revise)     |
                       +------------------+
                              |
                              v
                       +------------------+
                       |  I execute       |
                       |  + verify        |
                       +------------------+

Workflow

1. Ingest the Link

Fetch the provided URL with fetch_content or web_search to understand:

  • What the tool does (1-2 sentences)
  • Who uses it: end users directly, developers, automation/orchestration, or AI agents
  • Official installation methods (Homebrew, npm, pip, cargo, manual, etc.)
  • System requirements and dependencies
  • Default install paths and state mutations
  • Any post-install setup (config files, env vars, services, login items)

If the user asked to update an already-installed tool, also research:

  • What's new in the latest version (changelog, release notes)
  • Breaking changes or migration steps
  • Whether the current install method supports in-place upgrades
  • Config file format changes or deprecations

If the link is sparse, run 2-3 targeted web_search queries to fill gaps:

  • "<tool-name> installation guide macOS"
  • "<tool-name> Homebrew formula"
  • "<tool-name> dependencies requirements"

2. Environment Impact Analysis

Inspect the current environment to determine blast radius. Run diagnostics as needed

For each impact category, report what will change:

CategoryQuestions to Answer
BinariesNew executables? Where? Symlinks?
DotfilesNew configs in ~/.config, ~/.<tool>rc, shell rc files?
Shell envPATH, alias, export, eval $(...) additions?
ServicesBackground daemon? LaunchAgent? Auto-start?
macOS prefsAccessibility permissions? Full Disk Access? Notifications?
Disk spaceApproximate download + install size
NetworkFirewall rules? Network extensions?
Existing toolsConflicts with already-installed tools? Replaces anything?
UninstallClean removal possible? Orphans left behind?

3. Decision Points

Surface choices the user can make. Examples:

  • Install method: Homebrew vs. manual vs. npm vs. pip
  • Scope: Global (-g, /usr/local) vs. user-local (~/.local)
  • Version: Latest vs. pinned version
  • Config: Default config or import/customize now
  • Service: Enable auto-start now or manually later
  • Shell integration: Add to .zshrc now or skip
  • Existing conflicts: Replace old version? Keep both?

For each decision, present:

  • The options
  • Your recommendation with rationale
  • The default (if user wants to skip the choice)

4. Generate the Installation/Update Plan

Write a markdown plan with this structure:

# Install Plan: <tool-name>

## Briefing

### What It Is

1-2 sentences on what this tool does and its main purpose.

### How You'll Use It

- **Agent tool** — I (the AI) will call this on your behalf as part of
  automated workflows. You don't interact with it directly.
- **User-exposed tool** — You will run this manually in your terminal or via
  a GUI. It's a tool for your direct use.
- **Both** — You can use it directly, and I may also invoke it in automated
  flows.

Typical daily usage: "Youll run `foo` in terminal to..." or "I'll call `foo`
when you ask me to..."

### ASCII Overview

[Your Request] [Terminal] [System] | | | v v v +--------+ +-------------+ +----------------+ | "do X" |--------->| tool-name X |----->| changes files | +--------+ +-------------+ | starts service | | writes config | +----------------+


## Current State
Already installed? Version? Install method found?

## Environment Impact
- Binaries: ...
- Config: ...
- Shell: ...
- Services: ...
- Disk: ~X MB
- Risks: ...

## Decisions
1. **Install via** [Homebrew / npm / pip / manual]
   - Recommended: Homebrew
   - Rationale: ...
2. **Shell integration** [Yes / No]
   - Recommended: Yes
   - Adds to `.zshrc`: ...
3. ...

## Steps
1. Step one
2. Step two
3. Verify with: `<command>`
4. Rollback if needed: `<command>`

## Rollback Plan
How to fully undo this installation or revert to the previous version.

If plannotator is available, gate the plan:

plannotator annotate /tmp/tool-install-<tool-name>.md --gate

Otherwise, present the plan inline and ask for explicit approval.

5. Approval Gate

Do not proceed with installation until the user explicitly approves.

Approval format to request:

Reply with "approve" or "go" to execute, or tell me which decisions to change.

If the user wants changes, revise the plan and re-present.

6. Execute (Only After Approval)

Run the approved steps one at a time. Verify each step before proceeding:

# After install or update, verify
<tool-name> --version
which <tool-name>

If a step fails, stop immediately. Do not continue. Report the error and ask whether to rollback, retry, or abort.

Rules

  1. Never install without explicit user approval.
  2. Always research first. Never guess what a tool does or how to install it.
  3. Always inspect the current environment. Don't assume a clean slate.
  4. Always provide a rollback plan. The user should know how to undo.
  5. Prefer Homebrew for macOS CLI tools unless there's a good reason not to.
  6. Prefer user-local installs when global isn't required.
  7. Flag destructive changes. Overwriting configs, replacing system tools, or enabling background services deserve extra warning.
  8. If the link is a GitHub repo, check README.md, install.sh, releases page, and Makefile for official install instructions.
  9. If the link is a website, look for "Download", "Install", or "Get Started" sections.
  10. If the install involves curl | bash, flag it as high-risk and recommend an alternative if one exists.

Examples

Install

User: install this https://github.com/jesseduffield/lazygit

Agent actions:

  1. Fetch the GitHub repo README → understand it's a terminal UI for git
  2. Check releases → available via Homebrew (brew install lazygit)
  3. Check environment → which lazygit returns nothing, not installed
  4. Check shell config → no lazygit aliases or env vars present
  5. Decision points: install via Homebrew or what. pros and cons, add alias to .zshrc (optional, default no)
  6. Present plan, wait for approval
  7. On approval: brew install lazygit, verify with lazygit --version

Update

User: update lazygit

Agent actions:

  1. Check current version → lazygit --version → v0.40.0
  2. Research latest → v0.44.0, changelog shows new features, no breaking changes
  3. Check install method → brew list lazygit → installed via Homebrew
  4. Decision points: update now (recommended), or pin at current version
  5. Present plan showing version delta and any migration steps
  6. On approval: brew upgrade lazygit, verify with lazygit --version

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Transcribes local audio into Markdown with Gemini 3.5 Transcribe, including speaker labels and provider timestamps. Use for interviews, meetings, lectures, podcasts, voice notes, and similar recordings.

中文简介正在准备中。当前显示原文说明。

iurysza/herdr-pane-layouts42026年10月21日 更新

better-ui

免费

Design engineering principles for making interfaces feel polished. Use when building UI components, reviewing frontend code, implementing animations, hover states, shadows, borders, micro-interactions, enter/exit animations, choosing or reviewing icons, or any visual detail work. Triggers on UI polish, design details, "make it feel better", "feels off", stagger animations, theme switch transitions, border radius, optical alignment, image outlines, box shadows, icons, icon stroke weight, icon states, motion restraint.

中文简介正在准备中。当前显示原文说明。

iurysza/herdr-pane-layouts42026年10月21日 更新

Explores and validates a feature, component, workflow, or behavior change before implementation. Use when work needs clarified intent, compared approaches, and an approved direction.

中文简介正在准备中。当前显示原文说明。

iurysza/herdr-pane-layouts42026年10月21日 更新

bro

免费

Restates the previous response in plain, concise language. Use only when the user invokes bro or explicitly asks for a simpler explanation.

中文简介正在准备中。当前显示原文说明。

iurysza/herdr-pane-layouts42026年10月21日 更新

Generates or edits raster images through OpenAI's Image API. Use for text-to-image work, reference-based edits, masks, transparent assets, and product or editorial visuals.

中文简介正在准备中。当前显示原文说明。

iurysza/herdr-pane-layouts42026年10月21日 更新

Applies language-neutral engineering standards when writing or reviewing code, especially around boundaries, failures, domain models, dependencies, tests, and type safety.

中文简介正在准备中。当前显示原文说明。

iurysza/herdr-pane-layouts42026年10月21日 更新

查看 iurysza 的全部技能

报告此技能的问题