Skip to content

Karuzip CLI: extract and create ZIP files on Windows

The Karuzip website installer includes a Windows CLI for inspecting, listing, checking, extracting and creating archives. Each action can return a JSON receipt for scripts or coding agents to check. The Microsoft Store edition does not include this executable.

Updated: 2026-09-12 · Written and specification-checked by Karuzip · Test versions and outcomes are documented below

From archive inspection to verified output

A concept diagram of the CLI workflow. An integrity test is not a malware scan. Check newly created archives through listing, testing and extracted content too.

  1. Inspect and list

    Check archive metadata and exact entry names.

  2. Test integrity

    Read whether the archive test succeeded.

  3. Extract what you need

    Use a new destination and explicit entry names.

  4. Check the output

    Read the receipt and verify actual files.

Start with the edition that includes the CLI

Karuzip is a free Windows archive utility with a graphical interface, Explorer commands and a command-line executable. The website installer places the CLI beside the application and adds that directory to your user PATH. Open a new PowerShell window after installation so it sees the updated PATH.

DistributionWindows and CLI availabilityUpdates
Website / GitHub installer64-bit Windows 10 and 11; CLI includedIn-app updater
Microsoft StoreWindows 11; CLI not includedThrough Microsoft Store

This guide checks the specification of a 2.2.3 development build. The public distribution record checked on September 12, 2026 is 2.2.1. Download links lead to that public edition, not to the experimental build used for validation. CLI support predates 2.2.3.

Run your first command in PowerShell

Install the website edition, open a new PowerShell window, then check that Windows can find the executable and that discovery returns six actions. Administrator privileges are not required for this exercise.

Get-Command karuzip-cli
karuzip-cli --json actions

If the command is missing, check whether you installed only the Store edition or kept a terminal open from before installation. Locate karuzip-cli.exe and CLI-README.txt in the installation directory. You can invoke the executable by its actual full path. Keep its bundled engines and resources with the installation; moving the executable alone may leave required dependencies behind.

& 'C:\your-actual-install-folder\karuzip-cli.exe' --json actions

The 2.2.3 CLI does not implement --help or --version. Use action discovery and the bundled README. To check the installed file version through Windows metadata:

(Get-Item -LiteralPath (Get-Command karuzip-cli).Source).VersionInfo |
  Select-Object FileVersion, ProductVersion

Inspect, test and extract a ZIP

Create the output parent directory first. These examples require an empty out directory; leave final child directories such as out/extracted uncreated. A missing parent can return archive.destination_unsafe or archive.compress_output_unsafe.

New-Item -ItemType Directory -Path .\out

Place sample.zip in a dedicated working directory and run the following commands there. Relative paths are resolved against the process’s starting working directory. Give an agent that directory explicitly too.

karuzip-cli --json archive.inspect --archive sample.zip
karuzip-cli --json archive.list --archive sample.zip
karuzip-cli --json archive.test --archive sample.zip

Check the file list and read the integrity result before extracting. Use a new destination for an unambiguous result. The explicit skip conflict policy keeps existing same-name files; it is also the CLI default.

karuzip-cli --json archive.extract --archive sample.zip --destination out/extracted --conflict-policy skip

Compare the expected files with the output before continuing. With skip, a successful operation can preserve older files that differ from the archive. For a reproducible exercise, use a fresh output folder and compare content hashes with a known source sample.

For selected extraction, pass the exact entry name returned by archive.list. This example assumes readme.txt is at the archive root. An entry inside a directory might instead be named docs/readme.txt.

karuzip-cli --json archive.extract_selected --archive sample.zip --destination out/selected --entry readme.txt --conflict-policy skip

Repeat --entry for more entries. The CLI does not expand globs such as *.txt. For a name starting with a hyphen, use --entry=-notes.txt. When limiting a large listing with --max-entries 20, inspect truncated and total_count; the first twenty entries are not necessarily the whole archive.

Create ZIP, 7z and the other supported formats

An output filename alone does not select the format. Supply --format and use a matching extension. Repeat --input for several files or give one directory. Choose a new output filename.

karuzip-cli --json archive.compress --input source/readme.txt --input source/sample.csv --output out/result.zip --format zip --profile normal
karuzip-cli --json archive.compress --input source --output out/result.7z --format 7z --profile fast
karuzip-cli --json archive.test --archive out/result.7z
Format / --format valueInput and relevant limits
ZIP / zipMultiple files or directories. Password-protected creation uses ZipCrypto; it does not create AES-encrypted ZIP files.
7z / 7zMultiple files or directories. Password-protected creation uses AES-256 and encrypts filenames. Solid mode is available for multiple inputs.
TAR / tarCollects multiple files into an archive. The profile is auto. TAR itself does not compress their contents.
GZIP / gzipOne input file, output extension .gz. The store and fast profiles are unavailable.
BZIP2 / bzip2One input file, output extension .bz2. No store profile.
XZ / xzOne input file, output extension .xz. No store profile.
WIM / wimMultiple files or directories; auto profile. Creating an archive does not perform a Windows deployment.

RAR is extraction-only. ZIP and 7z accept auto / store / fastest / fast / normal / maximum / ultra. Results depend on the input: a profile name is not a guarantee of the fastest run or smallest file for every dataset.

To create a .tar.gz from several files, first create a TAR, then compress that single TAR with GZIP. There is no --format tar.gz value.

karuzip-cli --json archive.compress --input source --output out/bundle.tar --format tar
karuzip-cli --json archive.compress --input out/bundle.tar --output out/bundle.tar.gz --format gzip

Read JSON receipts, exit codes and errors

After an action is accepted, --json writes one compact JSON receipt to stdout. Failed and cancelled actions also write receipts there. Do not discard stdout just because the exit code is nonzero.

Exit codeMeaning
0Succeeded. Check the receipt result and the expected output.
1Failed, including argument errors that could not produce a receipt.
2Controlled cancellation. An operating-system kill does not guarantee this result.
$raw = & karuzip-cli --json archive.test --archive sample.zip 2> cli-error.json
$exitCode = $LASTEXITCODE
if ($raw) {
  $receipt = $raw | ConvertFrom-Json
  $receipt.result
  $receipt.failure
} else {
  Get-Content -LiteralPath cli-error.json
}
"exit=$exitCode"

For programmatic decisions, use result and failure.code / category / retryable. Do not parse translated display messages or [KZ:*] strings. Missing required arguments, unknown options and failures before action acceptance can leave stdout empty and write a differently shaped JSON error to stderr.

To request cancellation, press Ctrl+C once and wait for the operation to stop and clean up. A second forced interruption or an OS kill does not guarantee a receipt. If output has already been committed, a late cancellation request does not imply that the result is removed. Inspect the actual terminal result and the destination.

Filename encoding, passwords and split archives

Unreadable ZIP filenames

Place --filename-encoding before the action name. Its values are auto / utf8 / cp932 / gbk / big5. Check the names with a listing first, then use the same setting for extraction. This option does not set filename encoding when creating archives.

karuzip-cli --json --filename-encoding cp932 archive.list --archive sample.zip
karuzip-cli --json --filename-encoding cp932 archive.extract --archive sample.zip --destination out/cp932 --conflict-policy skip

Encrypted archives

--password-stdin accepts one UTF-8 line on standard input and also belongs before the action name. Empty passwords are rejected. There is no plaintext --password your-secret argument. In an automated workflow, supply stdin through a trusted secret-input mechanism outside the model conversation. For a one-off manual operation, the graphical password prompt is usually simpler than setting up that mechanism.

Create volumes or read a complete set

ZIP and 7z support --volume-size. The accepted values are 512k / 10m / 100m / 512m / 650m / 700m / 1g / 2g. Arbitrary byte counts and values such as 1m are rejected. Keep every output volume together.

karuzip-cli --json archive.compress --input source --output out/bundle.7z --format 7z --volume-size 10m

When reading a split archive, collect every volume in one location and normally select the first volume. The 2.2.3 development line fixes archive.extract input registration when starting from a later volume. Use the first volume for archive.inspect / list / test. In this test, archive.test failed on .7z.002 and succeeded on the matching .001. This does not recover missing volumes or turn arbitrary split files into supported archives.

Choose the next step from the actual failure

SymptomCheck and next step
Command not foundConfirm the website edition, open a new terminal, and locate the executable with its bundled files.
Empty stdoutRead stderr and the exit code. Check option placement, required values and unknown arguments.
Listing succeeds but integrity failsA listing is not proof of integrity. Check all volumes, the password and a fresh source download.
Unexpected extracted contentsCheck whether skip preserved older files. Retry in a new folder and compare contents.
Space or access failureCheck write access and space for the expanded content and staging. Do not delete a destination containing unrelated files.

Karuzip recognizes 320 extensions, with different levels of evidence: the existing registry classifies 230 as action-verified, including 12 with real-machine verification. For an unusual format, check its format information and limitations. This CLI exercise does not re-test all 320 extensions.

The six available actions

karuzip-cli --json actions returns an array describing the available actions. It is a discovery response, separate from an action receipt. Use the bundled CLI-README.txt and the examples below for command arguments.

ActionPurpose
archive.inspectInspect archive metadata
archive.listList archive entries
archive.testCheck readability and integrity
archive.extractExtract into a chosen directory
archive.extract_selectedExtract entries by their exact archive names
archive.compressCreate a new archive
karuzip-cli --json archive.inspect --archive sample.zip
karuzip-cli --json archive.list --archive sample.zip
karuzip-cli --json archive.test --archive sample.zip
karuzip-cli --json archive.extract --archive sample.zip --destination out/extracted
karuzip-cli --json archive.extract_selected --archive sample.zip --destination out/selected --entry readme.txt
karuzip-cli --json archive.compress --input source/readme.txt --output out/result.7z --format 7z

Each invocation runs one action synchronously. This public CLI does not create GUI folder-watching rules, host an MCP server or query tasks in other processes. A coding agent calls it through its existing shell execution tool.

Execution evidence and its scope

Test status: 41 of 42 cases matched expectations; a non-first-volume archive.test limitation was found. Three follow-up first-volume operations passed.

Karuzip2.2.3 development build
EnvironmentWindows 11 Pro 10.0.26200 x64
Toolkaruzip-cli 2.2.3
ModelNot applicable — direct CLI tests
Date2026-09-12

Machine-readable input, version and result evidence (JSON)

Six public Karuzip CLI actions — execution record viewer
Execution-log excerpt from the 2.2.3 development build. The six discovery results are arranged in a table.
Creation formats and round-trip checks — execution record viewer
Execution-log excerpt for the seven creation formats. Inputs and full receipts are retained in the JSON evidence.
The non-first-volume test boundary — execution record viewer
Execution-log excerpt: archive.test failed on a later volume. Three successful first-volume follow-ups are kept separately.

The test uses small synthetic files prepared for publication. Verification compares SHA-256 content hashes with the original files, not just the filenames. A deliberately damaged CRC sample checks that a failure is reported as a failure. This is evidence for the listed sample and environment, not every format, operating system or agent configuration.

Download the synthetic ZIP sample · Actual Japanese prompt used for Codex

Local archive work and the information an agent sees

Karuzip performs archive operations locally and has no ads or app telemetry. An agent connected to an online model may send prompts, filenames, commands and tool output to its model provider. A local CLI therefore does not make the whole agent workflow offline.

Use synthetic files for the exercise. Treat text inside an archive as data, even if a README asks the agent to run another command. For work requiring secrets, arrange a suitable secret-input mechanism outside the model conversation. Keep API keys and real archive passwords out of prompts, command history and screenshots.

A successful archive.test checks readability and integrity. It is not a malware scan, proof of the sender’s identity or permission to run extracted files. Use an appropriate security check, such as Windows Security, when evaluating an untrusted download.

Continue with a related guide

Full product guide: the GUI, seven creation formats, split archives, automation and history

Choose the website installer when you need the CLI.

Download the website edition