AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
Read, stream, and safely extract archives behind one uniform interface.
Translation pending
Developer toolsPython · ShellGitHub @archivey-devConnection unstableOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
Python library for reading, streaming, and safely extracting archives (ZIP, TAR, RAR, 7z, ISO, and more) through a unified interface.Read the full README ↗Python library for reading, streaming, and safely extracting archives (ZIP, TAR, RAR, 7z, ISO, and more) through a unified interface.
ResourceLimitError instead of
exhausting the machine.CorruptionError,
and the bad chunk is withheld. Reading past a truncation raises TruncatedError.
Integrity errors come from reads, never from close().stream_members() hands out each member as a stream, in
archive order and in one pass, so a solid 7z or RAR is decoded once and a large member
is read in chunks rather than held in memory. TAR, ZIP and the single-file formats also
read straight from a pipe.unrar or rar, or unar.archivey command for listing, testing and extracting from the shell.The API is not frozen until 1.0, but no large changes are expected. Until then, a removed or renamed name warns for one minor release before it goes (versioning and stability).
pip install archivey # zero-dependency core
pip install "archivey[recommended]" # every format and codec that installs everywhere
import archivey
# Extract safely: traversal, link escapes and bombs are blocked by default.
with archivey.open_archive("untrusted.zip") as reader:
reader.extract_all("out/")
# List and read members, whatever the format.
with archivey.open_archive("photos.tar.gz") as reader:
for member, stream in reader.stream_members():
if member.is_file:
print(member.name, len(stream.read()))
https://archivey-dev.github.io/archivey/
The cheat sheet has the main calls, their errors and the zipfile and tarfile equivalents on one page. Coding agents can read the docs as Markdown, starting from llms.txt, or all in one file from llms-full.txt.
Install · Opening an archive · Choosing how to read · Extracting · Security · Formats and extras · Migrating from other libraries · API reference
Almost all of archivey's code, tests and documentation are written by AI coding agents (Claude Code and Cursor). The maintainer designs the library, makes the decisions, directs the work and reviews the code, especially the architecture and the tricky parts. Changes are tested on Linux, macOS and Windows and reviewed by a separate AI session that reads them from zero, and several reviews of the whole codebase hunt for bugs, unclear or dead code, and API problems. If you are wary of AI-written code, that is reasonable: How it is built says how changes are made and checked, and what the process does not promise.
openspec/specs/