← Back to Skills Marketplace
zhangpl666ya

printer-control

by zhangpl666ya · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
257
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install printer-control
Description
Control local and network printers on Windows to list printers, print files or text, check status, and set default printer with name matching support.
Usage Guidance
This skill appears to do what it claims (Windows printer control) but be cautious before installing or running it: - Only run these scripts on a trusted machine and with trusted inputs. The scripts interpolate printer names and file paths into PowerShell command strings without rigorous escaping; supplying untrusted or specially crafted names could lead to command injection or unexpected PowerShell behavior. - Printing operations read and send file contents and create temporary files; do not feed sensitive files to this skill unless you trust it and the environment. - Some troubleshooting steps (Restart-Service -Name Spooler) require administrative privileges — be careful granting elevated rights. - There are minor bugs/oddities (e.g., the PowerShell snippet in print_file.py attempts to change printer default via Set-Printer -Shared instead of setting Default) — review behavior before using in production. Recommendations before proceeding: 1) Inspect/run the scripts locally in a safe environment (VM) and test with non-sensitive files. 2) If you plan to integrate this into an automated agent, sanitize/validate printer and file-name inputs and avoid running with elevated privileges unless necessary. 3) Consider hardening the code by properly escaping/interpolating values when constructing PowerShell commands (or using subprocess with argument arrays and avoiding -Command with embedded strings), and by adding input validation and logging for auditability.
Capability Analysis
Type: OpenClaw Skill Name: printer-control Version: 1.0.0 The skill provides legitimate printer management functionality for Windows using pywin32 and PowerShell fallbacks. However, it is classified as suspicious due to potential command injection vulnerabilities in scripts like print_file.py, print_text.py, and set_default.py, where PowerShell commands are constructed using f-strings with insufficient sanitization of arguments such as --printer and --file. While the SKILL.md includes safety warnings, the underlying code logic allows for arbitrary command execution if an attacker can influence the input parameters passed to the scripts.
Capability Assessment
Purpose & Capability
Name, description, SKILL.md, and the included Python scripts consistently implement Windows printer management (list printers, print text/files, check status, set default). The required capabilities and code are proportionate to the stated purpose.
Instruction Scope
Scripts use subprocess.run to call PowerShell and Start-Process, create temporary files, and launch Notepad or other local applications. Several PowerShell script strings interpolate user-supplied printer names and file paths directly (e.g., print_file.py, set_default.py, printer_status.py). This introduces command-injection and shell-escaping risks if the printer/file name inputs are untrusted. The SKILL.md instructs users to run privileged operations in troubleshooting (Restart-Service), which may require admin rights; that’s a scope-relevant but higher-privilege action.
Install Mechanism
Instruction-only skill with optional dependency on pywin32 (pip). No external downloads or installers in the manifest; fallback uses built-in PowerShell. This is a low-risk install profile.
Credentials
The skill requests no environment variables, no credentials, and no config paths. All required accesses are local and consistent with printer management.
Persistence & Privilege
always is false and the skill does not request persistent or elevated platform privileges. It does not modify other skills or global agent configuration.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install printer-control
  3. After installation, invoke the skill by name or use /printer-control
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of the printer-control skill. - List available printers, print files or raw text, check status, and set default printer on Windows systems. - Supports both local and network printers. - Works with pywin32 or falls back to PowerShell if needed. - Partial printer name matching makes printer selection easier. - Requires explicit user authorization before performing any print operation.
Metadata
Slug printer-control
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is printer-control?

Control local and network printers on Windows to list printers, print files or text, check status, and set default printer with name matching support. It is an AI Agent Skill for Claude Code / OpenClaw, with 257 downloads so far.

How do I install printer-control?

Run "/install printer-control" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is printer-control free?

Yes, printer-control is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does printer-control support?

printer-control is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created printer-control?

It is built and maintained by zhangpl666ya (@zhangpl666ya); the current version is v1.0.0.

💬 Comments