-
released this
2026-08-20 05:37:39 -04:00 | 204 commits to main since this releaseevilcode v1.0.1 — hardening and reliability
This is a focused patch release for the stable 1.0 line. It keeps the core evilcode workflow intact while making persistence, self-updates, and safety boundaries more dependable.
What changed
Safer updates and installation
- Release metadata and binary downloads are bounded, require the canonical HTTPS Forgejo host, and validate redirects before following them.
- Update downloads are checked before installation, including ELF validation, and are synced, permissioned, and atomically swapped into place so an interrupted update cannot leave a half-written executable.
- The installer is safer around paths, symlinks, temporary files, and reset/remove operations, with clearer Linux and architecture messages.
More durable sessions and state
- Compaction now replays the canonical session state correctly, including safe UTF-8 handling when content must be shortened.
- Session appends and clean-exit markers are serialized and written atomically, reducing the chance of corrupted or misleading resume state.
- Configuration, memory, and todo results are defensively copied so callers cannot accidentally mutate persisted state through shared slices or maps.
- Todo state loading now enforces size, score, dependency, rollback, and cycle-safety checks.
Safer provider and tool boundaries
- Provider responses, prompt input, stdin, and background-task waits have explicit limits and cancellation behavior.
- URL, date, integer, and JSON parsing is stricter at tool boundaries, including rejection of trailing JSON values.
- Confined and atomic filesystem writes use safer temporary names and preserve clear distinctions between existing and newly created files.
- Skill discovery, search requests, LSP operations, and image rendering handle invalid or oversized inputs more safely.
TUI and operational polish
- Interrupts, model/provider overrides, reasoning preferences, session titles, productivity images, and reconnect-related notices behave more predictably.
- Probe coverage and terminal goldens were refreshed alongside the fixes, so visual regressions are easier to catch.
- Completion metadata now tracks the current command surface, including session and daemon-related options.
Install or update
Fresh install:
curl -fsSL https://evileko.dev/evilcode | shExisting installations can update in place:
evilcode updateSource builds require Go 1.26 or newer. This release publishes the Linux/amd64 binary
evilcode-linux-amd64.Verification
go test ./...go test -race ./...go test -tags probe ./probe/...go vet ./...
SHA-256 for
evilcode-linux-amd64:c6f69bbda66751754af1857c6b6258f6d711b9c10fd396f9be3873aa1eea5279See the full v1.0.0…v1.0.1 comparison.
GPL-3.0. Linux only. Built with the Charm stack.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads