Yoink
Yoink is a command-line tool and FastAPI backend designed to bundle, sanitize, and visualize codebases for Large Language Model (LLM) contexts. It converts raw project directories into structured Markdown documents, optimizing token consumption and preventing compliance and security leaks.
Features
- Token Shredder: Safely strips comments, docstrings, and excess whitespace to reduce prompt size.
- Secret Shield: Programmatically redacts credentials, private keys, emails, and IP addresses.
- Compliance Stripper & Masking: Redacts proprietary terms and internal domains using deterministic, token-efficient phonetic codenames (e.g.
Delta7) to keep code syntax compilable. Features an interactive terminal UI (TUI) to configure and live-test rules in a sandbox. - Dependency Trees: Automatically generates AST-based ASCII dependency trees and Mermaid flowcharts.
Installation
Install from PyPI:
pip install yoinky
Or install locally in editable mode:
git clone https://github.com/Asifdotexe/yoink.git
cd yoink
pip install -e .
Quick Start
1. Pack a Codebase
Pack the current directory:
yoink
2. Configure Censor Lists (CLI / TUI)
Manage word and domain censorship with deterministic pseudonym generation (e.g., Delta7) and configuration persistence via .yoinkconfig.json:
- Initialize rules (like
poetry init):yoink censor init
- Inspect active codename mappings (e.g.,
Theseus -> Delta7):yoink censor show
- Launch interactive dashboard & sandbox:
yoink censor tui
Documentation
For detailed instructions and references, please refer to the dedicated guides:
- CLI Usage Guide: Complete reference of CLI commands, flags (
--raw,--max-size,--no-visualize,--censor,--censor-tui, etc.), and usage examples. - REST API Guide: Detailed guide to API endpoints, schema structures, and Render blueprint web service deployment.
- Token Reduction Learnings: Technical reference on how BPE tokenizers handle whitespace, license header stripping, and performance tuning.
Running Tests
Verify your local installation:
pytest
License
This project is licensed under the GNU AGPLv3 License.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file yoinky-1.3.1.tar.gz.
File metadata
- Download URL: yoinky-1.3.1.tar.gz
- Upload date:
- Size: 736.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
47a6635033daea587bd7b92004a679c3c3e619dbff42b3868f39b101fd148f33
|
|
| MD5 |
8c8759df799cf9c0534fb9a8cd7a8177
|
|
| BLAKE2b-256 |
90a790e35fee6b963961e781577a61fedc7d8a93706ebedfab5820adab42d408
|
Provenance
The following attestation bundles were made for yoinky-1.3.1.tar.gz:
Publisher:
release.yml on Asifdotexe/yoink
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
yoinky-1.3.1.tar.gz -
Subject digest:
47a6635033daea587bd7b92004a679c3c3e619dbff42b3868f39b101fd148f33 - Sigstore transparency entry: 1979555778
- Sigstore integration time:
-
Permalink:
Asifdotexe/yoink@568077b2d5593c6f63a91318a6ce73ea6dc79ba5 -
Branch / Tag:
refs/tags/v1.3.1 - Owner: https://github.com/Asifdotexe
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@568077b2d5593c6f63a91318a6ce73ea6dc79ba5 -
Trigger Event:
push
-
Statement type:
File details
Details for the file yoinky-1.3.1-py3-none-any.whl.
File metadata
- Download URL: yoinky-1.3.1-py3-none-any.whl
- Upload date:
- Size: 40.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4ad8fd1f271ff1b8b93e58b56724ca1d2024fdd3a35d7acbeb16e14633ad43a1
|
|
| MD5 |
ea6b8e6fd29cabcba2279bfd78f15b37
|
|
| BLAKE2b-256 |
3c3b24d24dcc5b59e2968618a6081fd568d8dd447531e0044948095d0737aa0a
|
Provenance
The following attestation bundles were made for yoinky-1.3.1-py3-none-any.whl:
Publisher:
release.yml on Asifdotexe/yoink
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
yoinky-1.3.1-py3-none-any.whl -
Subject digest:
4ad8fd1f271ff1b8b93e58b56724ca1d2024fdd3a35d7acbeb16e14633ad43a1 - Sigstore transparency entry: 1979555900
- Sigstore integration time:
-
Permalink:
Asifdotexe/yoink@568077b2d5593c6f63a91318a6ce73ea6dc79ba5 -
Branch / Tag:
refs/tags/v1.3.1 - Owner: https://github.com/Asifdotexe
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@568077b2d5593c6f63a91318a6ce73ea6dc79ba5 -
Trigger Event:
push
-
Statement type: