Is rtk-ai/rtk safe?
- Python shell/command execution
- Node.js shell/command execution
What to do: Nothing here argues against installing it. Grant the capabilities it lists only if you expect the tool to need them.
rtk-ai/rtk is an AI component analyzed by SkillTotal's deterministic static scanner. The scan found no malicious indicators. It can: shell execution — capabilities are what the code can do, not a verdict on intent. Risk score 0/100 (low).
repo
Automated static-analysis result. It can contain false positives and false negatives, and is not a claim about the intent of rtk-ai/rtk's authors. Report a false positive.
Behavioral traits
How this component maps to the CSA agentic threat model. Descriptive — it never affects the risk score.
Findings (2)
The component can run operating-system commands or spawn processes.
import { execFileSync } from "node:child_process";Why it matters: Powerful and often legitimate — confirm the commands aren't built from untrusted input.
Fix: Confirm the command and its arguments are fully controlled and not derived from untrusted input; prefer execFile with an argument array.
The component can run operating-system commands or spawn processes.
result = subprocess.run(
["rtk", "rewrite", command],
shell=False,
timeout=2,
capture_output=True,
text=True,
)subprocess.run(
["tar", "czf", tarball, "-C", str(source_dir), "."],
check=True,
)Why it matters: Powerful and often legitimate — confirm the commands aren't built from untrusted input.
Fix: Confirm the command and its arguments are fully controlled and not derived from untrusted input; avoid shell=True.
How attackers abuse these capabilities
Interactive labs on the attack class behind the rules above. They show the technique, not anything found in rtk-ai/rtk.
Check your own component
Run the same evidence-backed scan on any MCP server, agent skill, or package.
Scan your own componentHow we determine this: deterministic static analysis (regex + AST), evidence-anchored, no code execution. Methodology →