Commit Graph

7 Commits

Author SHA1 Message Date
bigjakk 819caea65a Security hardening and codebase cleanup
Security fixes:
- Replace Caesar cipher with electron.safeStorage for account credentials
- Validate shell.openExternal URLs (allow only http/https protocols)
- Remove rejectUnauthorized:false from all HTTPS calls
- Add redirect domain validation to auto-updater
- Fix XSS in matchmaker popup (innerHTML → textContent/createTextNode)
- Add IPC config key whitelist to prevent arbitrary store access
- Credentials never sent to renderer; decrypted on-demand via IPC

Optimizations and cleanup:
- Simplify onBeforeRequest from double-registration to single handler
- Lazy-init matchmaker popup DOM (defer until first use)
- Invalidate game config cache immediately on write, not on flush
- Remove unused STANDARD_ASSET_RE and KeybindDef exports
- Deduplicate Keybind type (import from config.ts)
- Replace custom hasOwn wrapper with Object.hasOwn

Bug fix:
- Stop Krunker's global keydown handler from eating keystrokes in
  alt manager input fields (stopPropagation)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 08:54:52 -08:00
bigjakk 96e0cbfc07 Always show Accounts button, fix Linux CI electronDist
Show Accounts menu button even with no saved accounts so users can
add accounts from the in-game menu. Remove hardcoded electronDist
from electron-builder.yml — let electron-builder auto-detect on
Linux CI, Windows CI overrides via -c.electronDist flag.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v0.5.0
2026-03-01 07:46:07 -08:00
bigjakk ceb8f73a2a Fix Linux CI build — don't block stock Electron download
On non-Windows (CI), skip writing path.txt so electron-nightly still
downloads the native Linux binary into dist/. The patched Windows
binary goes to dist-win/ and is used via -c.electronDist override.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 07:30:31 -08:00
bigjakk 1568c74cac v0.5.0 — Rename save folders, bump version
Rename data folders from KCCClient to "Krunker Civilian Client" for
swapper, userscripts, and documents output. Bump version to 0.5.0.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 07:18:53 -08:00
bigjakk 21684c5fbd Update build scripts for new repo
Point electron download script to Krunker-Civilian-Client repo.
Remove mirror-releases workflow (repo is public, no KPC copy needed).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 07:12:32 -08:00
bigjakk 955d715373 Update app icon and Discord Rich Presence
Replace old KPC placeholder icon with new crosshair design. Generate
multi-size .ico (16-256px) and .png from 1024x1024 source. Update
Discord RPC to new application ID (1477679025248800982).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
electron-patched
2026-03-01 07:08:51 -08:00
bigjakk 87ddf1499d Initial commit — Krunker Civilian Client
Cross-platform Krunker.io game client forked from Krunker Police Client
with all KPD/moderator features stripped: no KPD auth, OBS recording,
evidence uploads, yt-dlp, bytenode, or code obfuscation.

Retained: unlimited FPS (custom Electron 42), ad blocking, resource
swapper, matchmaker, userscripts, chat translator, Discord RPC, alt
account manager, configurable keybinds, and advanced Chromium flags.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 06:38:15 -08:00