← Back to Skills Marketplace
safatinaztepe

Stdio Skill

by SafaTinaztepe · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
1617
Downloads
1
Stars
12
Active Installs
1
Versions
Install in OpenClaw
/install stdio-skill
Description
Stdin/stdout file inbox/outbox bridge for passing files to/from Clawdbot using an MCP stdio server. Use when you want a simple filesystem-backed dropbox: accept files into an inbox, move to tmp for processing, and emit deliverables to an outbox (or a specified path).
Usage Guidance
This skill largely does what it says — a tiny MCP stdio server that reads/writes files under repo/stdio. Before installing or running it: - Expect to need Node.js (the script is a Node program) and probably the 'mcporter' helper referenced in SKILL.md; the skill metadata didn't declare these. - The stdio_paths tool returns absolute paths including the repository root; that leaks filesystem layout. If you don't want that disclosed, remove or modify that tool. - The implementation does not prevent symlink escapes: a symlink placed inside a box could cause reads/writes to operate on files outside stdio/. If you plan to run this in an environment with untrusted users dropping files, run it in a sandbox / with a dedicated, minimal-permission account, or ensure boxes are on a filesystem that disallows/filters symlinks. - Run the script in an isolated repository or container and review/modify server.js if you need stricter guarantees (e.g., never returning ROOT, lstat checks to forbid symlinks, or using openat-like APIs where available). - If you need a production-grade dropbox, prefer a thoroughly audited implementation; this one is simple and convenient but has the above operational caveats.
Capability Analysis
Type: OpenClaw Skill Name: stdio-skill Version: 1.0.0 The skill provides a filesystem-backed inbox/outbox mechanism, which inherently involves file system access. However, the `scripts/server.js` implementation includes robust path traversal prevention (`safeName`, `resolveInBox`) and strictly confines all file operations (read, write, move, delete) to the `stdio/{inbox,outbox,tmp}` directories within the skill's workspace. The `SKILL.md` explicitly states these safety measures, and there are no signs of prompt injection, data exfiltration, or malicious execution. The `stdio_paths` tool provides limited information disclosure of the skill's internal directory structure, but this is contained and does not bypass the strong security controls.
Capability Assessment
Purpose & Capability
The code implements a filesystem-backed inbox/tmp/outbox as described. However the SKILL.md and metadata do not declare that this is a Node.js program or that a CLI helper (mcporter) is expected. The package expects to be run with Node (shebang) and SKILL.md shows commands using 'mcporter', so the manifest's 'required binaries: none' is incorrect.
Instruction Scope
The runtime instructions and tool methods stay within the stated domain (list/read/write/move/delete within stdio/{inbox,tmp,outbox}). BUT the 'stdio_paths' tool returns the resolved ROOT (repo root) and the absolute box paths, which leaks repository filesystem layout. Also the implementation follows symlinks: if a file in a box is a symlink that points outside the box, read/write/rename operations will follow it, meaning the claim 'operations are restricted to the three directories above' is not strictly enforced against symlink-based escapes.
Install Mechanism
There is no install spec (instruction-only), which is low-risk. However the skill includes an executable Node script and SKILL.md implies use of 'mcporter' — both are runtime requirements that are not declared. Consumers must have Node.js (and likely mcporter) available to run the server.
Credentials
The skill does not request environment variables, secrets, or config paths. The requested permissions are limited to creating/using stdio/{inbox,tmp,outbox} under the repository root.
Persistence & Privilege
always:false and no claims to modify other skills or global agent settings. The server creates and uses only repo-local directories and does not request persistent privileged presence beyond that.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install stdio-skill
  3. After installation, invoke the skill by name or use /stdio-skill
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release providing a simple filesystem-backed inbox/outbox bridge for passing files via stdin/stdout with an MCP stdio server. - Supports workspace-relative inbox, outbox, and tmp directories for file management. - Basic tools included: list, read (base64), move, and write (base64) files. - Safe-by-default: operations restricted to defined directories, no file format interpretation. - Tailored for straightforward, local file dropbox workflows—prefer moves/paths for large files.
Metadata
Slug stdio-skill
Version 1.0.0
License
All-time Installs 12
Active Installs 12
Total Versions 1
Frequently Asked Questions

What is Stdio Skill?

Stdin/stdout file inbox/outbox bridge for passing files to/from Clawdbot using an MCP stdio server. Use when you want a simple filesystem-backed dropbox: accept files into an inbox, move to tmp for processing, and emit deliverables to an outbox (or a specified path). It is an AI Agent Skill for Claude Code / OpenClaw, with 1617 downloads so far.

How do I install Stdio Skill?

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

Is Stdio Skill free?

Yes, Stdio Skill is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Stdio Skill support?

Stdio Skill is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Stdio Skill?

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

💬 Comments