Token导航 LogoToken导航

Agent Skill · 开发

giil(giil 命令行)

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

giil 是开发类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为操作浏览器;许可证为 MIT,第三方扫描有未通过项,按安装量在开发类的 21,746 个 Skill 里排第 13,029。

总安装 1,042周安装 43GitHub Stars 63下载 341核验 2026-05-01

安装说明

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

安装方式

通过对话安装

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

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

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/dicklesworthstone/agent_flywheel_clawdbot_skills_and_integrations --skill giil

这个 Skill 是做什么的

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

giil 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在开发协作中整理相关事项。适用于围绕仓库状态、代码变更或协作事项进行信息整理和分析的场景。通过 npx skills add 命令从指定 GitHub 仓库安装使用。

安装前需确认权限范围、维护状态,注意是否触发联网或文件操作。giil 属于开发类 Skill,可作为该场景下的辅助能力补充。

来源仓库内路径:skills/giil

上手步骤

4 步
  1. 1

    确认自己的宿主工具

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

  2. 2

    拿到安装命令

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

  3. 3

    安装后重启宿主

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

  4. 4

    按最小权限试用

    它需要操作浏览器,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

giil 怎么安装?

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

giil 支持哪些 AI 工具?

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

giil 需要什么权限?

权限级别是操作浏览器。该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

giil 是免费的吗?

来源标注的许可证是 MIT。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

giil 用的人多吗?

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

giil 安全吗?

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

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

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 3 个目录同时收录,说明这个 Skill 流传比较广。
  • 许可证明确为 MIT,商用和分发边界好判断。

先想清楚的地方

  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

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

不太适合

  • 需要厂商级技术支持和 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有提醒
giil

giil 命令行 · 本页

1,04263操作浏览器MIT未通过

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

SKILL.md 原文

GIIL — Get Image [from] Internet Link

A zero-setup CLI that downloads full-resolution images from cloud photo shares. The missing link between your iPhone screenshots and remote AI coding sessions.

Why This Exists

The primary use case: Remote AI-Assisted Debugging

You're SSH'd into a remote server running Claude Code, Codex, or another AI assistant. You need to debug a UI issue on your iPhone, but how do you get that screenshot to your remote terminal?

Without giil:

Download image locally → SCP to server → Tell AI the path
Email yourself → Download on server → Hope it works
Set up complex file sync between devices

With giil:

giil "https://share.icloud.com/photos/0a1Abc_xYz..." --json
# {"path": "/tmp/icloud_20240115_143022.jpg", "width": 1170, ...}

One command. AI sees it instantly. No file transfers, no context switching.

The Workflow

iPhone Screenshot → iCloud Sync → Photos.app Share Link → Paste to SSH → giil Downloads → AI Analyzes

Why Cloud Shares Are Hard

ProblemWhy It's HardHow giil Solves It
JavaScript-heavy SPAsStandard curl/wget can't execute JSHeadless Chromium via Playwright
Dynamic image loadingImages load asynchronously from CDNNetwork interception captures CDN responses
No direct download linksURLs are session-specific and expireClicks Download button or intercepts live requests
Copy/paste loses qualityManual screenshots compress imagesCaptures original resolution from source
HEIC format on AppleMany tools can't process HEIC/HEIFPlatform-aware conversion (sips/heif-convert)

Quick Start

# Install
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/giil/main/install.sh?v=3.0.0" | bash

# Download single image
giil "https://share.icloud.com/photos/02cD9okNHvVd-uuDnPCH3ZEEA"

# JSON output (best for AI workflows)
giil "https://share.icloud.com/photos/..." --json

# Download entire album
giil "https://share.icloud.com/photos/..." --all --output ~/album

Note: First run downloads Playwright Chromium (~200MB, cached in ~/.cache/giil/).

Supported Platforms

PlatformURL PatternsMethodBrowser Required
iCloudshare.icloud.com/photos/*, icloud.com/photos/#*4-tier capture strategyYes
Dropboxdropbox.com/s/*, dropbox.com/scl/fi/*Direct curl (raw=1)No
Google Photosphotos.app.goo.gl/*, photos.google.com/share/*URL extraction + =s0 modifierYes
Google Drivedrive.google.com/file/d/*, drive.google.com/open?id=*Multi-tier with auth detectionYes

Dropbox Fast Path: Direct curl download with no browser overhead—typically 1-2 seconds.

Google Photos Full-Res: Automatically appends =s0 to CDN URLs for maximum resolution.

Four-Tier Capture Strategy

giil implements a fallback strategy to maximize reliability:

1. Download Button (Highest Quality)

  • Locates visible Download button using 9 selector patterns
  • Clicks and waits for browser download event
  • Obtains original file (no re-encoding losses)
  • Works with HEIC/HEIF originals

2. Network Interception (Full Resolution)

  • Monitors all HTTP responses for CDN patterns (cvws.icloud-content.com, etc.)
  • Filters by content-type (image formats only)
  • Captures largest image buffer (>10KB threshold to skip thumbnails)
  • Works even if UI elements are obscured

3. Element Screenshot

  • Queries for image elements using 10 selector patterns
  • Verifies element is visible and ≥100×100 pixels
  • Takes PNG screenshot of the element

4. Viewport Screenshot (Last Resort)

  • Captures visible viewport (1920×1080)
  • Always succeeds if page loads
  • Useful for debugging page state

Command Reference

Basic Usage

giil <url> [options]

Options

FlagDefaultDescription
--output DIR.Output directory
--preserveoffKeep original bytes (skip MozJPEG compression)
--convert FMT—Convert to: jpeg, png, webp
--quality N85JPEG quality 1-100
--base64offOutput base64 to stdout (no file saved)
--jsonoffOutput JSON metadata
--alloffDownload all photos from album
--timeout N60Page load timeout in seconds
--debugoffSave debug artifacts on failure
--verboseoffShow detailed progress
--traceoffEnable Playwright tracing for deep debugging
--print-urloffOutput resolved CDN URL (don't download)
--debug-dir DIR.Directory for debug artifacts
--updateoffForce reinstall dependencies

Output Modes

Default: File Path

giil "https://share.icloud.com/photos/XXX"
# stdout: /current/dir/icloud_20240115_143245.jpg

Scripting:

IMAGE_PATH=$(giil "..." --output ~/Downloads 2>/dev/null)

JSON Mode

giil "https://share.icloud.com/photos/XXX" --json

Success:

{
  "ok": true,
  "schema_version": "1",
  "platform": "icloud",
  "path": "/absolute/path/to/icloud_20240115_143245.jpg",
  "datetime": "2024-01-15T14:32:45.000Z",
  "sourceUrl": "https://cvws.icloud-content.com/...",
  "method": "network",
  "size": 245678,
  "width": 4032,
  "height": 3024
}

Error:

{
  "ok": false,
  "schema_version": "1",
  "platform": "icloud",
  "error": {
    "code": "AUTH_REQUIRED",
    "message": "Login required - link is not publicly shared",
    "remediation": "The file is not publicly shared. The owner must enable public access."
  }
}
FieldDescription
methodCapture strategy: download, network, element-screenshot, viewport-screenshot, direct
error.codeError code (see Exit Codes)
error.remediationSuggested fix

Base64 Mode

# Decode to file
giil "..." --base64 | base64 -d > image.jpg

# Create data URI
echo "data:image/jpeg;base64,$(giil '...' --base64)" > uri.txt

# Pipe to API
giil "..." --base64 | curl -X POST -d @- https://api.example.com/upload

URL-Only Mode

giil "https://share.icloud.com/photos/XXX" --print-url
# stdout: https://cvws.icloud-content.com/B/...

Useful for external downloaders, caching, or debugging.

Album Mode

Download entire shared albums with --all:

giil "https://share.icloud.com/photos/XXX" --all --output ~/album

How It Works

  1. Load album page
  2. Detect thumbnail grid (11 selector strategies)
  3. For each thumbnail: click → capture → close → next
  4. Output one path/JSON per photo

Album Features

  • Resilient: Continues to next photo if one fails
  • Indexed filenames: _001, _002, etc. for ordering
  • Rate limiting: 1 second delay between photos (polite downloading)
  • Exponential backoff: Automatic retry on rate limit signals

Album Output

# Default
/path/to/album/icloud_20240115_143245_001.jpg
/path/to/album/icloud_20240115_143246_002.jpg

# With --json
{"path": "...001.jpg", "method": "download", "width": 4032, ...}
{"path": "...002.jpg", "method": "network", "width": 3024, ...}

Image Processing Pipeline

EXIF Datetime Extraction

Priority order for filename generation:

  1. DateTimeOriginal (when photo was taken)
  2. CreateDate
  3. DateTimeDigitized
  4. ModifyDate
  5. Current time (fallback)

HEIC/HEIF Conversion

PlatformToolNotes
macOSsipsBuilt-in, always available
Linuxheif-convertRequires libheif-examples package
# Install HEIC support on Linux
sudo apt-get install libheif-examples  # Debian/Ubuntu
sudo dnf install libheif-tools         # Fedora

MozJPEG Compression (Default)

By default, giil compresses with MozJPEG for optimal size/quality:

  • 40-50% smaller than standard JPEG at equivalent quality
  • Quality 85 (configurable via --quality)
  • Use --preserve to keep original bytes

Filename Format

icloud_YYYYMMDD_HHMMSS[_NNN][_counter].jpg
        │              │      │
        │              │      └── Collision counter (if file exists)
        │              └── Album index (--all mode only)
        └── Date/time from EXIF or capture time

Download Verification

giil validates downloads through three stages:

1. Content-Type Validation

Validates HTTP Content-Type matches expected image types.

2. Magic Bytes Detection

Verifies binary signature regardless of server claims:

FormatMagic Bytes
JPEGFF D8 FF
PNG89 50 4E 47
GIF47 49 46 38
WebPRIFF container with WEBP
HEIC/HEIFISO base media file (ftyp box)

3. HTML Error Page Detection

Rejects HTML content that indicates an error page instead of an image.

Exit Codes

CodeNameDescription
0SuccessImage captured and saved/output
1Capture FailureAll capture strategies failed
2Usage ErrorInvalid arguments or missing URL
3Dependency ErrorNode.js, Playwright, or Chromium issue
10Network ErrorTimeout, DNS failure, unreachable host
11Auth RequiredLogin redirect, password required, not publicly shared
12Not FoundExpired link, deleted file, 404
13Unsupported TypeVideo, Google Doc, or non-image content
20Internal ErrorBug in giil (please report!)

Scripting:

giil "https://share.icloud.com/photos/XXX" 2>/dev/null
case $? in
    0) echo "Success!" ;;
    10) echo "Network issue - retry later" ;;
    11) echo "Link not public - ask owner to share" ;;
    12) echo "Link expired" ;;
    *) echo "Failed with code $?" ;;
esac

Environment Variables

Runtime Variables

VariableDescriptionDefault
XDG_CACHE_HOMEBase cache directory~/.cache
GIIL_HOMEgiil runtime directory$XDG_CACHE_HOME/giil
PLAYWRIGHT_BROWSERS_PATHCustom Chromium cache$GIIL_HOME/ms-playwright
GIIL_NO_GUMDisable gum stylingunset
GIIL_CHECK_UPDATESEnable update checkingunset

Installer Variables

VariableDescriptionDefault
DESTCustom install directory~/.local/bin
GIIL_SYSTEMInstall to /usr/local/binunset
GIIL_VERIFYVerify SHA256 checksumunset
GIIL_VERSIONInstall specific versionlatest

File Locations

PathPurpose
~/.local/bin/giilMain script
~/.cache/giil/Runtime directory
~/.cache/giil/node_modules/Playwright, Sharp, exifr
~/.cache/giil/extractor.mjsGenerated Node.js script
~/.cache/giil/ms-playwright/Chromium browser cache

Debug Artifacts (on failure with --debug)

FileContents
giil_debug_<timestamp>.pngFull-page screenshot
giil_debug_<timestamp>.htmlPage DOM content

Performance

PhaseFirst RunSubsequent
Chromium download30-60sSkipped (cached)
Browser launch2-3s2-3s
Page load3-10s3-10s
Image capture1-5s1-5s
Total40-80s5-15s

Dropbox: 1-2 seconds (direct curl, no browser).

Troubleshooting

"Auth required" error

The link isn't publicly shared. Owner must enable public access in their cloud settings.

Timeout errors

Increase timeout: giil "..." --timeout 120

Wrong/small image captured

Run with --debug to see page state. Report issue with debug artifacts.

HEIC conversion fails on Linux

sudo apt-get install libheif-examples  # Debian/Ubuntu
sudo dnf install libheif-tools         # Fedora

Chromium fails to launch

giil "..." --update
# Or manually:
cd ~/.cache/giil && npx playwright install --with-deps chromium

Debugging

# Verbose output
giil "..." --verbose

# Debug artifacts on failure
giil "..." --debug

# Playwright trace (generates trace.zip)
giil "..." --trace
npx playwright show-trace ~/.cache/giil/trace.zip

Installation

# One-liner (recommended)
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/giil/main/install.sh?v=3.0.0" | bash

# Verified installation
GIIL_VERIFY=1 curl -fsSL .../install.sh | bash

# System-wide
GIIL_SYSTEM=1 curl -fsSL .../install.sh | bash

# Manual
curl -fsSL https://raw.githubusercontent.com/Dicklesworthstone/giil/main/giil -o ~/.local/bin/giil
chmod +x ~/.local/bin/giil

Uninstallation

rm ~/.local/bin/giil
rm -rf ~/.cache/giil
rm -rf ~/.cache/ms-playwright  # If no other Playwright tools

Security & Privacy

  • Local execution: All processing happens on your machine
  • No telemetry: No data sent anywhere except to cloud services
  • No authentication stored: Uses public share mechanism
  • No cookies saved: Browser context is ephemeral
  • Temp file cleanup: Downloaded files cleaned up after processing

Integration with Flywheel

ToolIntegration
Claude CodeDownload screenshots for visual debugging via SSH
NTMShare images between multi-agent sessions
Agent MailAttach downloaded images to agent messages
CASSSearch sessions that used giil for image context

平台分布

Claude Code

31.1%
按下载量换算106

Gemini CLI

21.93%
按下载量换算75

OpenCode

17.56%
按下载量换算60

Antigravity

13.41%
按下载量换算46

Codex

7.58%
按下载量换算26

windsurf

3.67%
按下载量换算13

安全审计

Gen Agent Trust Hub

未通过

Socket

通过

Snyk

未通过

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

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

继续浏览同类 Skills