据 AlphaMoat 统计,截至 2026-09,macOS 累计下载 4,490 次、获 4 个星标,在全部 5,078 个 AI 技能中排名第 2,149 位,在「运维安全」分类(264 个)中排名第 115 位。
| 平台 | 累计安装 | 累计下载 | 星标 | 评论 |
|---|---|---|---|---|
| ClawHub ↗ | 134 | 4,480 | 4 | - |
| SkillHub ↗ | 185 | 4,490 | 3 | — |
各平台的计数口径不同,统计时间不一致。
主文涵盖 BSD 与 GNU 命令差异、Apple Silicon 和 Intel 的 Homebrew 路径、Keychain、launchd 及隐私权限等主题,适合处理 macOS 环境下的运维问题。
资料发布于 2026-10-27
以下是根据技能文档生成的示例,不代表实际运行结果。
2026-09 起统计方法调整:同名技能按作者分别统计,并覆盖全部技能。图中虚线为调整前的月份,与之后的数据不直接比较,也不计算跨越调整的增长。
| 月份 | 累计下载 | 环比 | 星标 |
|---|---|---|---|
| 2026-09 | 4,490 | — | 4 |
| 2026-08 | 4,268 | +6.6% | 4 |
| 2026-07 | 4,003 | +13.0% | 3 |
| 2026-06 | 3,544 | +5.9% | 3 |
| 2026-05 | 3,348 | — | 3 |
| 2026-03 | 2,523 | — | 2 |
以下是作者发布的原始文件,按纯文本显示,本站未做修改或审核;其中的链接不可点击,命令请核实后再运行。抓取于 2026-10-23。
--- name: macOS description: macOS system administration, command-line differences from Linux, and automation best practices. metadata: category: system skills: ["macos", "osx", "apple", "darwin", "terminal"] --- ## BSD vs GNU Commands
- `sed -i` requires extension argument: `sed -i '' 's/a/b/' file` — empty string for no backup, Linux doesn't need it
- `find` doesn't support `-printf` — use `-exec stat` or `xargs` with `stat -f` instead
- `date` uses different format flags: `date -j -f '%Y-%m-%d' '2024-01-15' '+%s'` — `-j` prevents setting time
- `grep -P` (Perl regex) doesn't exist — use `grep -E` (extended) or install `ggrep` via Homebrew
- `xargs` defaults to `/usr/bin/echo` not the command — always specify the command explicitly
- `readlink -f` doesn't exist — use `realpath` or `python3 -c "import os; print(os.path.realpath('path'))"`
## Homebrew Paths
- Apple Silicon: `/opt/homebrew/bin`, `/opt/homebrew/lib`
- Intel: `/usr/local/bin`, `/usr/local/lib`
- Check architecture: `uname -m` returns `arm64` or `x86_64`
- Homebrew doesn't add to PATH automatically — check `~/.zprofile` for eval line
- Running x86 binaries: `arch -x86_64 /bin/bash` then install/run Intel-only tools
## Keychain (Secrets)
- Store: `security add-generic-password -a "$USER" -s "service_name" -w "secret_value" -U`
- Retrieve: `security find-generic-password -a "$USER" -s "service_name" -w`
- `-U` flag updates if exists — without it, duplicate entries error
- Keychain prompts for access on first use — authorize permanently for automation
- Delete: `security delete-generic-password -a "$USER" -s "service_name"`
## launchd (Services)
- User agents: `~/Library/LaunchAgents/` — runs as user when logged in
- System daemons: `/Library/LaunchDaemons/` — runs at boot as root
- Load: `launchctl load -w ~/Library/LaunchAgents/com.example.plist`
- Unload before editing: `launchctl unload` — edits to loaded plists are ignored
- Check errors: `launchctl list | grep service_name` then `launchctl error <exit_code>`
- Logs: `log show --predicate 'subsystem == "com.example"' --last 1h`
## Privacy Permissions (TCC)
- Automation scripts fail silently without Full Disk Access or Automation permissions
- Grant in System Settings → Privacy & Security → corresponding category
- Terminal and iTerm need separate permissions — granting to one doesn't grant to other
- `tccutil reset` clears permissions: `tccutil reset AppleEvents` for Automation
- Check granted permissions: `sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db "SELECT * FROM access"`
## defaults (Preferences)
- Read: `defaults read com.apple.finder AppleShowAllFiles`
- Write: `defaults write com.apple.finder AppleShowAllFiles -bool true`
- Delete: `defaults delete com.apple.finder AppleShowAllFiles`
- Restart app after changing: `killall Finder`
- Find app bundle ID: `osascript -e 'id of app "App Name"'`
- Export all: `defaults export com.apple.finder -` outputs XML
## File Operations
- `ditto` preserves resource forks and metadata — use instead of `cp` for app bundles
- Create DMG: `hdiutil create -volname "Name" -srcfolder ./folder -format UDZO output.dmg`
- Mount DMG: `hdiutil attach image.dmg` — returns mount point path
- Unmount: `hdiutil detach /Volumes/Name`
- Extended attributes: `xattr -l file` to list, `xattr -c file` to clear all
- Quarantine removal: `xattr -d com.apple.quarantine app.app`
## Clipboard
- Copy to clipboard: `echo "text" | pbcopy`
- Paste from clipboard: `pbpaste`
- Copy file contents: `pbcopy < file.txt`
- Preserve RTF: `pbpaste -Prefer rtf`
- Clipboard works in SSH sessions to local machine — useful for remote file copying
## Screenshots and Screen
- Screenshot region to file: `screencapture -i output.png`
- Screenshot window: `screencapture -w output.png`
- Screenshot to clipboard: `screencapture -c`
- Headless (no UI): `screencapture -x` — suppresses sound and cursor
- Screen recording requires Screen Recording permission in Privacy settings
## Process Management
- Prevent sleep: `caffeinate -i command` — keeps system awake while command runs
- Prevent sleep with timeout: `caffeinate -t 3600` — 1 hour
- Check why not sleeping: `pmset -g assertions`
- Power settings: `pmset -g` to view, `sudo pmset -a sleep 0` to disable sleep
- Current app in focus: `osascript -e 'tell application "System Events" to get name of first process whose frontmost is true'`
## Network
- List interfaces: `networksetup -listallhardwareports`
- Get IP: `ipconfig getifaddr en0` (Wi-Fi usually en0 on laptops)
- DNS servers: `scutil --dns | grep nameserver`
- Flush DNS: `sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder`
- Proxy settings: `networksetup -getwebproxy "Wi-Fi"`
## System Integrity Protection
- Check status: `csrutil status`
- Disable (Recovery Mode only): `csrutil disable` — not recommended for production
- Protected paths: `/System`, `/usr` (except `/usr/local`), `/sbin`, `/bin`
- Can't modify these even as root — design your automations around this
## Logs
- Stream live: `log stream --predicate 'process == "processname"'`
- Search recent: `log show --last 1h --predicate 'eventMessage contains "error"'`
- Subsystem filter: `log show --predicate 'subsystem == "com.apple.example"'`
- Save to file: `log collect --output ./logs.logarchive` — opens in Console.app
## Automation Tips
- Open URL: `open "https://example.com"` — uses default browser
- Open app: `open -a "Safari"` — by name, not path
- Open file with specific app: `open -a "TextEdit" file.txt`
- Run AppleScript: `osascript -e 'tell application "Finder" to get name of home'`
- Spotlight search: `mdfind "kMDItemDisplayName == 'filename.txt'"` — faster than find for indexed files
在使用技能包之前做安全扫描,并按结论决定放行或拦截的技能。
管理OpenClaw的OpenRouter免费AI模型,自动按质量排名模型,配置速率限制备用方案,并更新opencla...
备份与恢复 OpenClaw 配置、凭据与工作区的技能。
配置并使用 1Password CLI 处理密钥。
一款被描述为可检测提示注入与危险命令的 OpenClaw 安全插件。
远程控制 tmux 会话,向交互式命令行发送按键并抓取输出。
以应用安全工程师视角做代码与架构的安全审计。
管理腾讯云对象存储与数据万象的技能。
把用户纠正与自我复盘沉淀成分层记忆、并按使用情况升降级的技能。
在保留公式、格式与工作簿结构的前提下创建、检查并修改 Excel 文件的技能。
处理 Word 与 DOCX 文档的作业规范,重点是改完之后样式、编号与版式不跑偏。
把数据库、表格与导出的原始数据变成可决策结论的数据分析技能。
改 PPT 之前先看清结构的一套规范,目标是改完还能干净渲染。
数据月份:2026-09 · 下载/星标/安装数聚合自公开技能注册库(ClawHub、SkillHub),按月更新。口径说明见数据方法。