← Back to Skills Marketplace
dinghaibin

Unexpand Tool

by BIN · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
29
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install unexpand-tool
Description
Convert spaces to tabs in text files. Use for consistent indentation and reducing file size by replacing spaces with tabs.
README (SKILL.md)

Unexpand - Space to Tab Converter

Replace sequences of spaces with tab characters. The inverse operation of expand-tool. Ideal for converting space-indented code to tab-indented format.

Usage

unexpand-tool [options] \x3Cfile>

Options

  • -t N: Set tab width in spaces (default: 8)
  • -a: Convert all spaces, not just leading
  • --first-only: Only convert leading sequences

Examples

unexpand-tool -t 4 file.py
unexpand-tool -a -t 2 data.txt
cat spaces.txt | unexpand-tool
Usage Guidance
This appears safe from a security perspective for simple local text conversion. Before installing, verify how the command is invoked, use it only on files you intend to read, and be aware that the documented options and stdin example are not correctly implemented by the included script.
Capability Analysis
Type: OpenClaw Skill Name: unexpand-tool Version: 1.0.0 The script scripts/unexpand.py contains a significant logic error and vulnerability where it attempts to use the entire content of stdin as a filename for open() if no command-line arguments are provided. Furthermore, the implementation is highly incomplete and does not support any of the flags (e.g., -t, -a) documented in SKILL.md, which could lead to unexpected behavior or unintended file access if an agent passes untrusted input through a pipe.
Capability Assessment
Purpose & Capability
The stated purpose is coherent and low-risk, but the included script only replaces exact 8-space sequences and does not implement the documented -t, -a, or --first-only options.
Instruction Scope
The SKILL.md shows piped-input usage, but the script treats stdin as a filename when no argument is provided, which could cause unexpected file reads or failures.
Install Mechanism
There is no install spec connecting the documented unexpand-tool command to the included Python script, so users should verify what command would actually run.
Credentials
Reading a user-specified text file is proportionate for a spaces-to-tabs converter; no credentials, network access, or broad filesystem indexing are shown.
Persistence & Privilege
The artifacts show no persistence, privilege escalation, background worker, destructive action, or account mutation.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install unexpand-tool
  3. After installation, invoke the skill by name or use /unexpand-tool
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release
Metadata
Slug unexpand-tool
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Unexpand Tool?

Convert spaces to tabs in text files. Use for consistent indentation and reducing file size by replacing spaces with tabs. It is an AI Agent Skill for Claude Code / OpenClaw, with 29 downloads so far.

How do I install Unexpand Tool?

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

Is Unexpand Tool free?

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

Which platforms does Unexpand Tool support?

Unexpand Tool is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Unexpand Tool?

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

💬 Comments