From 2a8b41411d0a135038a6ec22d184f5b1b26bc884 Mon Sep 17 00:00:00 2001 From: icakinser <129708616+icakinser@users.noreply.github.com> Date: Thu, 14 May 2026 01:16:02 -0400 Subject: [PATCH] Convert README to HTML format Replace README content with HTML structure and styling. --- README.md | 802 ++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 592 insertions(+), 210 deletions(-) diff --git a/README.md b/README.md index 0b0900778a..d0db98ecfb 100644 --- a/README.md +++ b/README.md @@ -1,210 +1,592 @@ -# Claw Code - -
- ultraworkers/claw-code - · - Usage - · - Rust workspace - · - Parity - · - Roadmap - · - UltraWorkers Discord -
- -
-
-
-
-
-
+ A hardened, feature-enriched fork of ultraworkers/claw-code
+ with real diffing, atomic file operations, local LLM support, and
+ a rigorous code-editing workflow board.
+
What changed between the upstream repo and this local fork.
+ +edit_file with naive string replacefs::write calls/undo registered but unimplemented (no-op)similar-powered structured patches & git-style unified diffsedit_file rejects non-unique matches unless replace_all=truerename + fsync + permission preservation--force overrideTypedError envelopes across API + runtime + CLICompleted milestones and delivered user stories.
+ +Replaced degenerate hunks with real diffing via similar::TextDiff. Every edit now produces accurate oldStart/oldLines/newStart/newLines hunks and a populated gitDiff field.
Ambiguous matches (2+ occurrences with replace_all=false) now return a typed EditError::Ambiguous instead of silently mutating the first hit.
Crash-safe file edits via NamedTempFile, explicit sync_all, atomic persist, and Unix permission preservation. No more truncated files on power loss.
New text_encoding.rs detects FileShape (line ending, BOM, trailing newline), normalises to LF for the model, and restores the original shape on write.
FileTracker records SHA-256 + mtime on every read_file. Subsequent edits are denied if the file was never read or was modified externally since the read.
Atomic multi-hunk edits. Applies N sequential EditOps in-memory first; if any op fails, the file is never touched. One combined structuredPatch is returned on success.
Per-session EditHistory stack (cap 50). /undo restores original bytes with SHA-256 validation. /undo --force skips the check. Stack cleared across sessions.
Optional expected_sha256 on EditFileInput / WriteFileInput. Mismatch yields EditError::Conflict with expected vs actual hashes, preventing stale overwrites.
Embedded llama.cpp backend with tool calling, streaming, and thinking-budget control for reasoning models. Includes nightly CI workflow and container support.
+TypedError with 9 kinds, structured fields (kind, operation, target, detail, hint, retryable), JSON + text rendering, and downcasting from ApiError / SessionControlError.
Kimi is_error exclusion, reasoning-model tuning stripping, GPT-5 max_completion_tokens, Qwen/DashScope routing, and request-body size pre-flight checks.
Criterion benchmark suite for request-building hot paths. flatten_tool_result_content optimised with pre-allocated capacity — ~17 ns single-text, ~11.7 µs large-content.
+ Beyond the original 9-lane parity checkpoint, this fork proves that a small, + focused set of incremental milestones can transform a stub-heavy codebase into a + production-resilient editing harness — with real diffs, atomic safety, encoding fidelity, + and undo — all validated by 900+ tests and a deterministic mock parity harness. +
+ + View Upstream Repo + + +