Large-File Version Control,
Built for Game Developers.

KK keeps your source code in Git and your large binary assets - textures, models, audio, video - safely stored, SHA-256 verified, and always in sync with your team.

Source-available | No telemetry | No cloud required | BSL 1.1 License
Coming Soon View on GitHub
# Initialize KK in your project
$ kk init

# Track large binary files
$ kk track "*.psd" "*.fbx" "*.wav" "*.mp4"

# Stage and commit your assets
$ kk add .
$ kk commit -m "feat(assets): add character rig v2"

# Push to Google Drive or your NAS
$ kk push
SHA-256 Verified Zero Telemetry Multi-Remote Git Compatible

Git Was Not Built for Large Files.

Textures, 3D models, audio banks, and video files break standard Git repositories. Commits slow to a crawl. Clones balloon in size. History becomes unmanageable.

Git LFS helps - but it requires a separate server, introduces locking complexity, and still doesn't give you the flexibility to push to your own storage.

KK solves this without extra servers, without a SaaS bill, and without sacrificing your Git workflow.

Everything Git Handles, Plus Everything It Doesn't.

Git-Native Workflow

KK wraps Git. Your branches, merges, commits, tags, and history stay exactly where they belong - in a standard Git repository. KK adds large-file management on top, not in the way.

SHA-256 Asset Verification

Every large file is stored as a content-addressed object identified by its SHA-256 hash and byte size. Uploads and downloads are verified automatically. Corruption is detected before it silently reaches your team.

Bring Your Own Storage

Push to Google Drive, a NAS, a local folder, MEGA, or any rclone-supported destination. No vendor lock-in. No monthly SaaS fee. No server to maintain. Your assets live where you decide.

Multi-Remote Support

Configure multiple remotes - a fast local NAS for the studio and Google Drive as an offsite backup. KK can push to all of them and pull from the best available source automatically.

Pointer-Based History

Git commits a tiny pointer file for each large asset - not the raw bytes. Your repository stays lean. Large objects are pulled on demand, only when needed.

Deduplication

Objects are stored once per unique SHA-256 hash. The same texture used across ten commits is stored exactly once on your remote. Storage costs stay low.

Integrity Checking

Run kk fsck to verify that every object referenced by your Git history is present and intact - locally and on your remote. Catch missing or corrupted assets before a deadline.

Zero Telemetry

KK never phones home. No analytics, no crash reports, no usage tracking. The Licensor has zero visibility into your projects, your files, or your workflows.

Simple by Design.

Step 1 - Initialize

Run kk init in your project root. KK creates a local .kk/ directory containing a bare Git repository and an object cache.

Step 2 - Track Your Asset Types

Tell KK which file patterns are large assets: kk track "*.psd" "*.fbx" "*.wav". KK writes glob patterns to .kk/tracks.json and updates .gitattributes automatically.

Step 3 - Stage and Commit

kk add . stages your changes. kk commit creates a Git commit with pointer files for tracked assets and full file content for everything else.

Step 4 - Connect a Remote

kk setup gdrive walks you through Google Drive authorization in your browser using OAuth 2.0 with PKCE. Or configure a local path or rclone remote manually.

Step 5 - Push and Pull

kk push uploads new objects to your remote(s) and syncs the manifest. kk pull downloads missing objects to your local cache on demand.

Step 6 - Verify Anytime

kk fsck verifies every object referenced by your history is present and intact - locally and on the remote.

Works With the Storage You Already Have.

Backend Status Notes
Google Drive Native OAuth 2.0 + PKCE, drive.file scope only
Local / NAS Native Direct filesystem path - no internet required
rclone (any) Via rclone MEGA, S3, Backblaze B2, Dropbox, OneDrive, SFTP, and 70+ more
SSH Planned Coming in a future release

Free for Personal and Indie Use. Commercial Use Requires a License.

Free - Non-Production Use

  • Personal projects
  • Learning and education
  • Academic research
  • Development and testing
  • Noncommercial indie development
  • Full source code available
  • Not for commercial production use
Coming Soon

Commercial License - Studios & Teams

  • All Free tier features
  • Commercial Production Use permitted
  • Production pipelines and studio workflows
  • Client work and revenue-generating projects
  • Custom terms available
  • Priority contact
Contact for Licensing ->

Future: Apache 2.0

Each version of KK automatically becomes available under the Apache License 2.0 - four years after its first public release. No action required.

Your Data Is Yours. Always.

KK runs entirely on your machine.

No data is sent to KK servers - because there are no KK servers. Your files, your credentials, your repository history, and your project metadata never leave your local machine or your chosen storage backend.

Google Drive OAuth tokens are stored locally with 0600 file permissions. KK requests only the drive.file scope - it can only see files it creates.

Read the full Privacy Policy ->

Frequently Asked Questions

Q: Does KK replace Git?

No. KK wraps Git. Your Git history, branches, tags, and commits are all standard Git and can be used with any Git host (GitHub, GitLab, Bitbucket, Gitea, etc.).

Q: Do I need a KK server or account?

No. KK is a local CLI tool. There are no KK servers, no KK accounts, and no subscription required for non-commercial use.

Q: How is KK different from Git LFS?

Git LFS requires a dedicated LFS server (or a SaaS LFS host). KK stores objects in any location you configure - a local folder, Google Drive, NAS, MEGA, or any rclone backend. KK also embeds its own Git repository so it doesn't depend on your host's LFS support.

Q: Is KK open source?

KK is source-available under the Business Source License 1.1 (BSL 1.1). Non-production use is free. Each version converts to Apache 2.0 four years after its release. Commercial Production Use requires a separate license.

Q: What data does KK send to the developer?

None. KK has zero telemetry. It collects no analytics, crash reports, usage statistics, or diagnostics of any kind.

Q: What happens to my Google Drive credentials?

OAuth tokens are stored only on your local machine (%APPDATA%\KK\gdrive\ on Windows, ~/.config/KK/gdrive/ on macOS/Linux) with restrictive file permissions. They are never transmitted to the KK developer or any third party.

Q: Can I use my own Google OAuth credentials?

Yes. Set KK_GOOGLE_CLIENT_ID and KK_GOOGLE_CLIENT_SECRET environment variables before running kk setup gdrive.

Start Managing Your Assets Properly.

Free for personal and indie use. Commercial licenses available.

Coming Soon View on GitHub Commercial Licensing ->