Agent skill

Shell Tooling

by owent in owent/libatbus

A skill your agent uses when: running terminal commands, writing or debugging shell/PowerShell scripts, choosing or installing CLI tools, or diagnosing command failures, quoting/escaping errors, or…

MITAuto-check passedDevelopment

Install Shell Tooling

skills CLI
$ npx skills add owent/libatbus --skill shell-tooling -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install owent/libatbus shell-tooling --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/owent/libatbus.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/shell-tooling .claude/skills/shell-tooling && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
shell-tooling
GitHub stars
234
Token cost
~1.4k tokens
SKILL.md length
660 words
Files
2 (incl. references)
Skills in repo
6
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when: running terminal commands, writing or debugging shell/PowerShell scripts, choosing or installing CLI tools, or diagnosing command failures, quoting/escaping errors, or…

  • : running terminal commands
  • SKILL.md covers Shell selection, Tool selection, Agent practices and PowerShell authoring rules
  • Calls rg, pwsh and git
  • Debugging shell/PowerShell scripts

What it does

Shell Tooling is an agent skill from owent/libatbus. Use when: running terminal commands, writing or debugging shell/PowerShell scripts, choosing or installing CLI tools, or diagnosing command failures, quoting/escaping errors, or garbled output. Do not use for project build, test, or CI configuration covered by other skills.

Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/modern-cli-tools.md`).

It sits in Development, covering Shell scripting. It works with PowerShell, Linux and macOS. The repository describes itself as: 用于搭建高性能、全异步、树形结构的BUS消息系统的跨平台框架库. The licence is MIT.

When your agent uses it

  • : running terminal commands
  • Debugging shell/PowerShell scripts
  • Installing CLI tools
  • Diagnosing command failures

Example prompts

  • “/shell-tooling”

What it can do on your machine

Read from SKILL.md and the folder at commit d46c04d. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • rg
    • pwsh
    • git
    • jq

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Shell Tooling loads about 1.4k tokens when it runs, and up to ~3.7k if it reads all its reference files. Until then it costs about 72 tokens; SKILL.md has 660 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~72
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from owent/libatbus at commit d46c04d, republished under its MIT licence (© owent). 660 words, ~1,392 tokens.

Download SKILL.mdSave it as .claude/skills/shell-tooling/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
shell-tooling
description
Use when: running terminal commands, writing or debugging shell/PowerShell scripts, choosing or installing CLI tools, or diagnosing command failures, quoting/escaping errors, or garbled output. Do not use for project build, test, or CI configuration covered by other skills.

Shell and Tooling

Terminal rules for this repository's supported platforms (Windows, Linux, macOS). Prefer modern high-performance CLI tools over traditional Unix tools whenever they are installed.

Shell selection

  • On Windows use PowerShell 7+ (pwsh.exe). Never use the legacy Windows PowerShell 5.1 (powershell.exe): it lacks &&/||, passes native arguments differently, and defaults to legacy encodings.
  • Launch independent PowerShell processes as pwsh.exe -NoLogo -NoProfile so user profiles cannot inject extra commands or configuration; add -NonInteractive for unattended runs.
  • Do not nest cmd.exe, Git Bash, WSL, or other shells unless the task explicitly requires it. When a command fails, check the command name, path, quoting, and exit code first; do not switch shells to make an error disappear.
  • On Linux/macOS use the harness's default POSIX shell.

Tool selection

  • Probe before use (Get-Command <name> on Windows, command -v <name> on POSIX). Prefer an installed modern tool; otherwise fall back to a PowerShell cmdlet or the traditional tool. Do not install tools unless asked.
  • Highest-value tools: rg (grep), fd (find), sd (sed), bat (cat), jq/yq (JSON/YAML), eza (ls/tree).
  • PowerShell-native fallbacks: Select-String (grep), Get-ChildItem -Recurse -Filter (find), Get-Content (cat), ConvertFrom-Json/ConvertTo-Json (JSON).
  • Full inventory, per-platform install commands, and static-binary channels: references/modern-cli-tools.md. Read it before installing tools.

Agent practices

  • Output is parsed, not viewed: modern tools detect pipes and disable color/pagers automatically; when a PTY is allocated, force clean output (NO_COLOR=1, --color=never, --paging=never, git --no-pager).
  • Prefer structured output (rg --json, doggo --json, jq -r ...) over parsing human-oriented layouts.
  • Never wait for interaction: use non-interactive flags (fzf --filter, package-manager -y/--accept-* switches); on POSIX redirect stdin from /dev/null for commands that may read input.
  • Cap output before it floods context: rg --max-count 50, fd --max-results 100, Select-Object -First 200, head -n 200.
  • Exit-code semantics differ per tool family; do not assume one rule. Grep family (rg/grep/ugrep): 0 = match found, 1 = no match (not an error), >= 2 = real error. fd and sd: 0 on success whether or not anything matched, so the simple "nonzero = failed" rule is safe for them (invalid regex or missing path exits 1) — but not with fd --quiet, where 1 means no match or error alike. In PowerShell check $LASTEXITCODE after native commands; $ErrorActionPreference and try/catch do not apply to them.
Show full SKILL.md (297 more words)Show less

PowerShell authoring rules

Quoting and text:

  • Single quotes for literals; double quotes only when expansion is needed. Write ${name} when adjacent characters make the boundary ambiguous. Inside double quotes escape with backtick (`", `$), never backslash.
  • Multiline text uses here-strings (@' ... '@ / @" ... "@); the opening delimiter must end its line and the closing delimiter must start at column 0. Never use Bash heredocs (<<EOF).
  • Pipe statement blocks by wrapping them: & { foreach (...) { ... } } | ...; never append | directly after }.
  • Avoid trailing-backtick line continuation; break lines after |, operators, commas, or opening braces instead.

Commands:

  • Use full cmdlet names in scripts (Get-ChildItem, Where-Object, ForEach-Object). Avoid Unix aliases and same-named programs whose meaning differs from Unix: cat, find, where (a Where-Object alias; the real program is where.exe), sc (a Set-Content alias; the real program is sc.exe).
  • curl/wget alias Invoke-WebRequest only in Windows PowerShell 5.1; PowerShell 7 removes these aliases so curl resolves to curl.exe. Call curl.exe explicitly or use Invoke-RestMethod.
  • &&/|| chain operators exist in PowerShell 7 (not in 5.1); in scripts prefer explicit $LASTEXITCODE checks.

Native argument passing:

  • PowerShell re-quotes native arguments ($PSNativeCommandArgumentPassing, default Windows on Windows since 7.3). For quote-sensitive arguments such as JSON payloads, build an argument array and splat it: & tool.exe @args. Diagnose binding with Trace-Command -Name NativeCommandParameterBinder -Expression { ... }.
  • --% (stop-parsing) passes the rest of the line verbatim but disables $variable expansion; use it only as a last resort.
  • Modern tools print UTF-8 while the Windows console codepage may differ; set [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 before capturing native output to avoid mojibake. PowerShell 7 redirection (>, Out-File) writes UTF-8 without BOM by default.

Paths, comparisons, output:

  • Use -LiteralPath when a path contains [, ], *, or ?; build paths with Join-Path, not string concatenation.
  • Comparison operators are case-insensitive by default; use the -c variants (-ceq, -clike) when case matters.
  • Emit objects instead of Write-Host when output is consumed downstream; never use Read-Host in automation.

© owent, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in .agents/skills/shell-tooling of owent/libatbus.

  • SKILL.md
  • references/modern-cli-tools.md

Open the folder on GitHubat commit d46c04d

Compare with similar skills

Shell Tooling next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Shell Tooling compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Shell Tooling this skillowent/libatbus234—~1.4kAutomated safety check: PassMIT
Oh My PoshJanDeDobbeleer/oh-my-posh24k—~319Automated safety check: PassMIT
Tapd Iteration InitTencentBlueKing/bk-bcs840—~1.3kAutomated safety check: PassCustom licence
Os Scriptingaiskillstore/marketplace4303 repos~2.2kAutomated safety check: NotesNone
Remote Hostslibnativeapi/nativeapi157—~1.3kAutomated safety check: PassMIT
Local Asrysyecust/lecture-to-notes269—~1.6kAutomated safety check: PassCustom licence

Similar skills

  • Oh My Posh

    JanDeDobbeleer/oh-my-posh

    Install, configure, or troubleshoot Oh My Posh/ohmyposh: shell init, themes, segments, Nerd Font icons, and prompt setup on PowerShell, zsh, bash, or fish.

    24k GitHub stars~319 tokensUpdated today
    DevelopmentAuto-check passed
  • Tapd Iteration Init

    TencentBlueKing/bk-bcs

    迭代执行流水线启动器。分三个阶段执行:信息检查(验证 git 环境、获取迭代信息、 解析迭代分支)→ 恢复检测(已有状态文件时判定恢复策略)→ 新流程初始化(创建分支、 迭代目录和 iteration-state.json)。

    840 GitHub stars~1.3k tokensUpdated 13 days ago
    DevelopmentAuto-check passed
  • Os Scripting

    aiskillstore/marketplace

    Operating system and shell scripting troubleshooting workflow for Linux, macOS, and Windows.

    430 GitHub starsUsed in 3 repos~2.2k tokens
    DevelopmentAuto-check: notes
  • Remote Hosts

    libnativeapi/nativeapi

    Build, run, and GUI-test on another machine over SSH — the user's Windows laptop today, Linux or other macOS machines tomorrow — with one symmetric CLI for every OS: push scripts, run them either in…

    157 GitHub stars~1.3k tokensUpdated today
    MobileAuto-check passed
  • Local Asr

    ysyecust/lecture-to-notes

    把本地长视频/音频转写成文字稿 + 可选字幕,纯本地(不上传云端),用 sherpa-onnx X-ASR Zipformer transducer 模型(int8 量化、中英双语、自动标点)。已在 macOS Apple Silicon(int8 + AMX,~100× 实时)、Linux ARM64(CPU,~32× 实时)与 Windows(PowerShell…

    269 GitHub stars~1.6k tokensUpdated 4 days ago
    AI & LLM EngineeringAuto-check passed
  • Zipic

    okooo5km/Skills4U

    Local image compression and Zipic-app expert for macOS and native Windows.

    183 GitHub stars~2.2k tokensUpdated today
    Media & CreativeAuto-check passed

More from owent/libatbus

  • Testing

    owent/libatbus

    A skill your agent uses when: designing, writing, reviewing, or running libatbus unit tests, filtering private-framework cases, testing topology/channel behavior, or diagnosing Windows test…

    234 GitHub stars~1k tokensUpdated 26 days ago
    Auto-check passed
  • A skill your agent uses when: working on libatbus protocol transport, ECDH handshakes, cipher/compression negotiation, message framing, access token auth, connectioncontext, or crypto-related tests.

    234 GitHub stars~4.3k tokensUpdated 26 days ago
    Auto-check passed
  • AI Agent Maintenance

    owent/libatbus

    A skill your agent uses when: initializing, auditing, or optimizing repository AI guidance, including AGENTS.md/CLAUDE.md bridges, Agent Skills, trigger descriptions, progressive disclosure, source…

    234 GitHub stars~1.4k tokensUpdated 26 days ago
    Auto-check passed
  • Change Workflow

    owent/libatbus

    A skill your agent uses when: diagnosing or fixing a defect, test/build/runtime failure, or planning and implementing a nontrivial feature, behavior change, cross-module refactor, public API/ABI…

    234 GitHub stars~1.2k tokensUpdated 26 days ago
    Auto-check passed
  • A skill your agent uses when: writing or reviewing C++, public headers, template function visibility, exported API ABI, ATFWUTILSYMBOLVISIBLE, or ATFWUTILFORCEINLINE.

    234 GitHub stars~386 tokensUpdated 26 days ago
    Auto-check passed

Categories

Questions about Shell Tooling

What does Shell Tooling do?

A skill your agent uses when: running terminal commands, writing or debugging shell/PowerShell scripts, choosing or installing CLI tools, or diagnosing command failures, quoting/escaping errors, or…. Shell Tooling is an agent skill from owent/libatbus. Use when: running terminal commands, writing or debugging shell/PowerShell scripts, choosing or installing CLI tools, or diagnosing command failures, quoting/escaping errors, or garbled output.

When should I use Shell Tooling?

Shell Tooling fits situations like: : running terminal commands; debugging shell/PowerShell scripts; installing CLI tools; diagnosing command failures.

How do I install Shell Tooling in Claude Code?

Run `npx skills add owent/libatbus --skill shell-tooling -a claude-code`. Or copy the skill folder (.agents/skills/shell-tooling in owent/libatbus) into .claude/skills/shell-tooling in your project. Claude Code loads it when a task matches its description.

How do I install Shell Tooling in Codex?

Run `npx skills add owent/libatbus --skill shell-tooling -a codex`. Or copy the skill folder (.agents/skills/shell-tooling in owent/libatbus) into .agents/skills/shell-tooling in your project. Codex loads it when a task matches its description.

Can I use Shell Tooling in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add owent/libatbus --skill shell-tooling -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/shell-tooling, .gemini/skills/shell-tooling, .github/skills/shell-tooling and .opencode/skills/shell-tooling in your project.

What does Shell Tooling need to run?

Going by SKILL.md and its folder, Shell Tooling needs the command-line tools its instructions call (rg, pwsh, git and jq).

Does Shell Tooling access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Shell Tooling safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Shell Tooling use?

Shell Tooling is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Shell Tooling use?

About 1.4k tokens (SKILL.md is roughly 5.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.3k tokens, read only when the agent opens those files.

What are the alternatives to Shell Tooling?

Skills that share tags, products or a category with Shell Tooling: Oh My Posh (JanDeDobbeleer/oh-my-posh, 24k stars), Tapd Iteration Init (TencentBlueKing/bk-bcs, 840 stars), Os Scripting (aiskillstore/marketplace, 430 stars) and Remote Hosts (libnativeapi/nativeapi, 157 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Shell Tooling?

owent (a GitHub user) maintains it in owent/libatbus, which has 234 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on September 11, 2026.

Source: owent/libatbus on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.