snir v0.1.0 发布 🎉
基于 Chrome DevTools Protocol 的网页截图与信息收集工具。
快速安装
# Linux/macOS 一键安装(自动检测平台)
LATEST=v0.1.0
OS=$(uname -s | sed 's/Linux/Linux/;s/Darwin/Darwin/;s/FreeBSD/FreeBSD/;s/OpenBSD/OpenBSD/;s/NetBSD/NetBSD/')
ARCH=$(uname -m | sed 's/x86_64/x86_64/;s/aarch64/arm64/;s/arm64/arm64/;s/armv.*/armv7/')
curl -L -o snir.tar.gz "https://github.com/cyberspacesec/snir-skills/releases/download/${LATEST}/snir-skills_${OS}_${ARCH}.tar.gz"
tar xzf snir.tar.gz snir && chmod +x snir && sudo mv snir /usr/local/bin/支持的平台
| 操作系统 | 架构 | 下载文件名 |
|---|---|---|
| Linux | x86_64 | snir-skills_Linux_x86_64.tar.gz |
| Linux | arm64 | snir-skills_Linux_arm64.tar.gz |
| Linux | i386 | snir-skills_Linux_i386.tar.gz |
| Linux | armv5/v6/v7 | snir-skills_Linux_armvX.tar.gz |
| Linux | mips/mipsle | snir-skills_Linux_mips.tar.gz |
| Linux | mips64/mips64le | snir-skills_Linux_mips64.tar.gz |
| Linux | ppc64le | snir-skills_Linux_ppc64le.tar.gz |
| Linux | riscv64 | snir-skills_Linux_riscv64.tar.gz |
| Linux | s390x | snir-skills_Linux_s390x.tar.gz |
| macOS | x86_64 | snir-skills_Darwin_x86_64.tar.gz |
| macOS | arm64 (Apple Silicon) | snir-skills_Darwin_arm64.tar.gz |
| Windows | x86_64 | snir-skills_Windows_x86_64.zip |
| Windows | arm64 | snir-skills_Windows_arm64.zip |
| Windows | i386 | snir-skills_Windows_i386.zip |
| FreeBSD | x86_64 | snir-skills_FreeBSD_x86_64.tar.gz |
| FreeBSD | arm64 | snir-skills_FreeBSD_arm64.tar.gz |
| FreeBSD | i386 | snir-skills_FreeBSD_i386.tar.gz |
| OpenBSD | x86_64 | snir-skills_OpenBSD_x86_64.tar.gz |
| OpenBSD | arm64 | snir-skills_OpenBSD_arm64.tar.gz |
| NetBSD | x86_64 | snir-skills_NetBSD_x86_64.tar.gz |
| NetBSD | arm64 | snir-skills_NetBSD_arm64.tar.gz |
⚠️ 注意:Linux arm/mips/ppc64le/riscv64/s390x 构建为纯 Go 二进制(CGO_ENABLED=0),
截图功能需要本机安装 Chrome/Chromium;如无 Chrome 仍可使用--wss连接远程 Chrome。
Linux 包管理器安装
# Debian/Ubuntu (.deb)
sudo dpkg -i snir_*.deb
# RHEL/CentOS/Fedora (.rpm)
sudo rpm -i snir_*.rpm
# Arch Linux
sudo pacman -U snir-*.pkg.tar.zstDocker
docker pull ghcr.io/cyberspacesec/snir:latest前置依赖
截图功能需要 Chrome/Chromium 浏览器。可通过 --wss 连接远程 Chrome 以避免本机安装。
Changelog
- 6fcb399 Improve .gitignore and sync submodules
- 5e487f9 Initial commit
- fc9ef0e feat(api): integrate DriverPool into API server for Chrome process reuse
- e94d3f0 feat(api,scan,cmd): integrate DriverPool into API server and CLI commands
- d66aabc feat(cmd): add provider CLI subcommand
- f163f5e feat(cmd): expose missing capabilities via CLI flags
- 03d0670 feat(provider): add CDP Provider service for sharing Chrome across tools
- ea5698b feat(runner): add DriverPool for ChromeDP connection reuse
- 983d71d feat(runner): add PoolDriver adapter implementing Driver interface
- e926ac9 feat(runner): add proxy pool and rotation mechanism
- cc8f787 feat(runner): add smart retry logic to PoolDriver
- dcc8787 feat(runner): enhance DriverPool with health check, auto-recovery, graceful shutdown, idle timeout
- cd14d92 feat(runner,sdk): add Cookie persistent storage (CookieJar)
- 407da0a feat(runner,sdk): add Singleton Pool for in-process multi-module sharing
- 087fbd9 feat(runner,sdk): add pool lifecycle event system
- 5b3e5b5 feat(runner,sdk): support remote Chrome connection via WebSocket URL
- 857aafd feat(runner,sdk,api): comprehensive cookie management system
- d19aa24 feat(runner,sdk,api): comprehensive cookie utilities and subdomain matching
- 8177fec feat(runner,sdk,provider): add Chrome auto-discovery and AutoConnect
- 8a0a786 feat(sdk): add Go SDK client package for programmatic screenshot access
- fbae821 feat(sdk): add ScreenshotBytes, Context support, BatchScreenshot, Stats
- 08d8919 feat(sdk): expand SDK with full parameter coverage, convenience methods, and streaming API
- 76b8bbe feat: migrate to snir-skills repo, enhance CI/CD with multi-platform builds
- a3eda0b feat: 初始化
- 91ed337 feat: 增加命令行使用兼容性和错误处理改进 - 实现简洁命令格式支持、改进错误处理和增加扫描重试机制 (fixes #6)
- 68b1442 feat: 添加Docker支持
- 065f348 fix(api): map all ScreenshotRequest fields in createRunnerOptions
- 07dd59b fix(ci): install Chromium for tests, remove -race flag
- 40116b1 fix(release): remove Chrome-dependent tests from preflight
- 7aa31b3 fix(test): use baidu.com for all batch screenshot tests
- 95a0545 fix(test): use baidu.com instead of example.com for browser tests
- 089b4d6 fix: resolve CI failures — gofmt, goreleaser deprecations
- ca7c921 refactor(cmd): replace hardcoded help text with Cobra auto-generation
- 9acaa4c refactor(runner): fix 3 screenshot code defects
- 5ad5ea0 扩展 GoReleaser 配置,支持更多平台和架构
- 08a4245 改进项目结构与用户体验:1. 添加彩色输出支持 2. 重命名可执行文件为snir 3. 修正版本号为v0.0.1 4. 添加Makefile构建支持 5. 创建React网站框架
- 62b11af 添加API服务与黑名单功能,改进并发控制,优化URL处理和截图功能
- 87e5ad9 添加GoReleaser支持,用于自动发布多平台可执行文件