SmartCLICAUTION
Three Agent Skills over one pluggable PTY + pyte core: drive TUIs, design terminal effects, and render cell-accurate UIs. pip install smartcli-toolkit
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
Python · MIT · ★4
Read this in: English · 简体中文 · 繁體中文 · 日本語 · 한국어
A local Python toolkit for driving, perceiving, and rendering the terminal — three agent skills over one pluggable PTY + `pyte` core.
[](https://pypi.org/project/smartcli-toolkit/) [](https://pypi.org/project/smartcli-toolkit/) [](https://github.com/dwgx/SmartCLI/actions/workflows/ci.yml) [](https://codecov.io/gh/dwgx/SmartCLI) [](LICENSE) [](https://pypi.org/project/smartcli-toolkit/) [](#features) [](#install)
**Let an AI drive, per
fb6b12ee6a78OBSERVED · 2026-10-11Connect
Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.
claude mcp add smartcli-toolkit -- uvx smartcli-toolkit==0.3.5
Trust audit
CAUTIONgrade D · trust 69/100 Install with care. The audit found things worth knowing before you trust its output.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | WARN |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- declared (2 observation(s))
- Shell
- declared (7 observation(s))
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (25)
importlib.import_module(mod_name)
mod = importlib.import_module(mod_name)
importlib.import_module(mod_name)
importlib.import_module(mod)
mod = importlib.import_module(mod_name)
drive-dialog.webm
drive-htop-macos.webm
drive-htop.webm
drive-lazygit-macos.webm
drive-lazygit-windows.webm
.coveragerc
.readthedocs.yaml
cases = [("é", 1), ("界", 2), ("♀️", 1), ("👩💻", 4),"\U0001F600", "♀️", "\U0001F469\U0001F4BB", # emoji incl. joiners
if "" in text:
("ZWJ emoji sequence", "x\U0001F469\U0001F4BBy\r\nabcdefg\r\n".encode(), 40, 8),self.check_label("👨👩👧 \x1b[7mOK\x1b[0m tail", "OK")mkdocs-material
pyte, mcp
`[SmartCLI](https://github.com/dwgx/SmartCLI) - Drive interactive terminal programs (vim, htop, lazygit) from any MCP client: start a session, send keys, wait on screen state, read the rendered cell g
docs/site/assets/fx-rain.mp4
docs/site/assets/fx-rain.webm
docs/site/assets/fx-solarsystem.gif
showcase/fx-solarsystem.gif
Gates applied: no_behavioural_pass.
fb6b12ee6a78full audit observations/trust-audit/mcp-server/dwgx__smartcli.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-11 | fb6b12ee6a78 | CAUTION | D | 69 | first audit |
Questions
What is the SmartCLI MCP server?
Three Agent Skills over one pluggable PTY + pyte core: drive TUIs, design terminal effects, and render cell-accurate UIs. pip install smartcli-toolkit
Is SmartCLI safe to connect to an agent?
With care. The audit graded it D (69/100) and found 25 things worth knowing before you trust this server, listed below with the exact line each was found on.
What credentials does SmartCLI need?
It reads SMARTCLI_TUI_TOKEN from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.
How does SmartCLI run?
It speaks stdio, so it runs as a local process your client starts. It is published on PyPI as smartcli-toolkit.
How current is this page?
The grade is for one exact copy of the source (fb6b12ee6a78), read on 2026-10-11. The repository is watched and re-audited when it changes.