Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/xuzhougeng/wispterm/tbtoolsnpx skills add xuzhougeng/wispterm --skill tbtoolsgit clone --depth 1 https://github.com/xuzhougeng/wisptermWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/xuzhougeng/wispterm/tbtools)<a href="https://agentmods.dev/skills/xuzhougeng/wispterm/tbtools"><img src="https://agentmods.dev/badge/skills/xuzhougeng/wispterm/tbtools.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00077 | $0.02592 |
| Opus 5 | $0.00039 | $0.01296 |
| Sonnet 5 | $0.00015 | $0.00518 |
| Haiku 4.5 | $0.00008 | $0.00259 |
Grade A, and why
tbtools scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
### macOS / Linux (bash + curl) How it starts
The opening of the file, as written. The whole thing — 238 lines — stays where its author put it; the contents beside it link to each section on GitHub.
TBtools
Overview
TBtools-II is a Java-based bioinformatics toolkit that runs on Windows and macOS. Prefer TBtools' own bundled Java/RPC/CLI tools. Do not introduce Python, R, Conda, or other dependencies unless the user explicitly asks.
Honor TBTOOLS_HOME or TBTOOLS_JAR if set; fall back to the platform default.
Setup
Windows (PowerShell)
$TbtoolsHome = if ($env:TBTOOLS_HOME) { $env:TBTOOLS_HOME } else { "C:\Program Files\TBtools" }
$TbtoolsJar = if ($env:TBTOOLS_JAR) { $env:TBTOOLS_JAR } else { Join-Path $TbtoolsHome "TBtools_JRE1.6.jar" }
$env:Path = "$(Join-Path $TbtoolsHome 'bin');$env:Path"
Test-Path $TbtoolsJar
java -version
macOS / Linux (bash)
TBTOOLS_HOME="${TBTOOLS_HOME:-/Applications/TBtools-II}"
TBTOOLS_JAR="${TBTOOLS_JAR:-$(find "$TBTOOLS_HOME" -name 'TBtools*.jar' -maxdepth 4 2>/dev/null | head -1)}"
export PATH="$TBTOOLS_HOME/bin:$PATH"
[ -f "$TBTOOLS_JAR" ] && echo "jar: $TBTOOLS_JAR" || echo "TBtools jar not found — set TBTOOLS_JAR"
java -version
Use bin/ (bin\ on Windows) tools directly when the task is a standard external tool workflow:
blastn -query query.fa -db db_prefix -out results.tsv -outfmt 6
muscle -in input.fa -out aligned.fa
iqtree -s aligned.fa -m MFP -bb 1000 -nt AUTO
diamond blastp -d proteins.dmnd -q query.fa -o matches.tsv
RPC Server
Windows (PowerShell)
.\scripts\start_rpc_server.ps1 -Background
Direct form:
java -cp $TbtoolsJar biocjava.rpc.RpcServer
macOS / Linux (bash)
java -cp "$TBTOOLS_JAR" biocjava.rpc.RpcServer &
Default URLs:
| Purpose | URL |
|---|---|
| Health check | http://127.0.0.1:8765/health |
| JSON-RPC | http://127.0.0.1:8765/rpc |
rpcPort is configurable in TBtools config. rpcBindAddress is normalized to loopback only (127.0.0.1 or ::1); do not expose the RPC server on 0.0.0.0.
RPC Helper
Windows (PowerShell)
function Invoke-TBtoolsRpc {
param(
[Parameter(Mandatory=$true)][string]$Method,
[hashtable]$Params = @{},
[string]$Uri = "http://127.0.0.1:8765/rpc",
[int]$TimeoutSec = 600
)
$body = @{
jsonrpc = "2.0"
method = $Method
params = $Params
id = [guid]::NewGuid().ToString()
} | ConvertTo-Json -Depth 50
$response = Invoke-RestMethod -Method Post -Uri $Uri -ContentType "application/json" -Body $body -TimeoutSec $TimeoutSec
if ($null -ne $response.error) {
$reason = if ($response.error.data -and $response.error.data.reason) { " ($($response.error.data.reason))" } else { "" }
throw "TBtools RPC error $($response.error.code): $($response.error.message)$reason"
}
return $response.result
}
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 238 lines · 77 tokens per session scan A d96a2be6afe2
tbtools is a skill published in the GitHub repository xuzhougeng/wispterm (401 stars, last pushed today), licensed MIT. It adds 77 tokens to every session and 2,592 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
liney-cli
Use the Liney CLI (liney) to inspect or control a running Liney terminal workspace and the agent sessions it hosts. Liney runs several coding agents in parallel, each in its own pane/tab/worktree, so reach for this whenever the user wants to act on a pane other than the current one — check on, coordinate, read from…
terminal-setup-install
Idempotent macOS terminal installer for Ghostty, Oh My Zsh, Powerlevel10k, Glow, MesloLGS Nerd Font, plus optional markdown preview and clickable-path extras.
linear-tickets
Use Orca's Linear CLI through orca linear ... commands to read linked ticket context with orca linear issue --current --full --json, post completion updates, move work forward through Linear workflow states, attach PR/MR links with orca linear attach --current --url --title "PR/MR link" --json, and triage Linear tasks…
orca-cli
Use the public orca CLI to operate Orca-managed worktrees, folder contexts, terminals, repos, automations, artifacts, skill sharing, worktree comments, and the browser embedded inside the Orca app. Use when the user says "$orca-cli", "use orca cli", "Orca worktree", "child worktree", "cardStatus", "spawn codex/claude…
orca-emulator
Control a mobile (iOS) emulator / simulator stream from inside Orca using the orca CLI. Use for taps, gestures, typing, hardware buttons, camera injection, permissions, accessibility tree, and more — all while seeing the live view in Orca's emulator pane. Prefer this over raw npx serve-sim or direct simctl when…
orca-linear
Use Orca's Linear CLI through orca linear ... commands to read linked ticket context with orca linear issue --current --full --json, post completion updates, move work forward through Linear workflow states, attach PR/MR links with orca linear attach --current --url --title "PR/MR link" --json, and triage Linear tasks…