Releases: 8-Sync-Dev/su-code
Release list
v0.46.2 — timer no longer OOM-kills the machine
Fix: 8sync harness up --timer now runs in a memory-bounded cgroup (MemoryHigh=2G / MemoryMax=4G / MemorySwapMax=512M / OOMPolicy=stop / Nice=15). Previously a per-tick codegraph re-index could hit ~5.3G RSS and OOM-kill the box. Re-run 8sync harness up --timer <dur> in your project to regenerate the bounded unit.
v0.46.1 — sweep redeploys project /auto command
Patch: 8sync harness global --sweep now redeploys each project's .omp/commands/auto.md + engine to su-code/ (was leaving a stale agents/ copy — and project commands outrank the global one in omp). Run 8sync up then 8sync harness global --sweep to fix already-migrated repos.
v0.46.0 — agent-memory folder → su-code/ + auto-migration
8sync v0.46.0 — agent-memory folder is now su-code/ (distinctive project marker) + auto-migration
Why
agents/ + AGENTS.md are generic (every repo has them), so a su-code-managed project wasn't distinguishable for tracking/sweeping. The memory folder is now su-code/ — an unambiguous marker. The AGENTS.md anchor file stays (open-standard entry point); only the folder moves and its links are rewritten.
What changed
- Detection keys on
su-code/—is_omp_project(sweep) + project-root detection recognisesu-code/(agents/kept only as a legacy migration trigger). The sweep is8sync harness global --sweep [DIR](default~/Projects) — notharness all up. - Auto-migration (
memory::migrate_legacy_layout) runs inhere/init/up/ bareharness/--sweep: renamesagents/→su-code/and rewritesagents/→su-code/references in the anchor + live memory markdown.- Guarded: only fires on a real 8sync memory dir (
STATE.md/KNOWLEDGE.md/PROJECT.md/PLAYBOOKS.md/skills.toml/skills/) — a source package literally namedagents/is never touched..agents/andsubagents/are protected from the text rewrite. Idempotent.
- Guarded: only fires on a real 8sync memory dir (
- All 8sync-authored code, assets, skills, docs, and the recall hook (with an
agents/fallback for un-migrated repos) updated tosu-code/. Historical CHANGELOG entries left as-written.
Migrate your projects
8sync up # get 0.46.0
8sync harness global --sweep # migrate every project under ~/Projects
# or per-project: cd <repo> && 8sync harness upVerified E2E: a legacy project migrated (folder + refs), the guard skipped a non-memory agents/ source dir, this repo dogfood-migrated, build clean, 18 tests pass.
Install
curl -fsSL https://raw.githubusercontent.com/8-Sync-Dev/su-code/main/install.sh | sh
# or: 8sync upv0.45.0 — MCP server.json conformance + spec as machine default + /auto gitleaks gate
8sync v0.45.0 — MCP server.json standard conformance + spec as a machine default + /auto gitleaks gate
MCP marketplace install now follows the official open spec
The dashboard's MCP install projects a registry server.json (schema 2025-12-11, modelcontextprotocol/registry) into a correct mcp.json entry:
registryType→ runtime:npm→npx -y·pypi→uvx·oci→docker run -i --rm(+-e NAMEforwarding) ·nuget→dnx(was: everything defaulted tonpx).versionpinning (id@ver, orimg:verfor docker — incl. scoped npm@scope/pkg@ver).runtimeArguments+packageArgumentsrendered;transport.type(streamable-http/sse) → remote{type,url,headers}.- BUGFIX:
environmentVariables→ a{NAME: value}map, not the array of descriptors it used to write (an unusablemcp.jsonenv for any server needing secrets).env/headersnow thread end-to-end.
Verified live via the UI: docker apithreshold, pypi armor-mcp@0.6.1 + env map — 0 console errors. 13 unit tests (mutation-proven).
The standard is a machine-local default that forces AI adherence
assets/specs/mcp-server.md ships in the binary and deploys to ~/.omp/specs/mcp-server.md via 8sync harness global/init/up. A short rule in the always-on APPEND_SYSTEM.md points every omp session at it — env/headers are maps, runtime from registryType, pin version, never invent fields.
/auto engine — gitleaks gate before every autonomous commit
engine_advance {commit:true} now runs a secret gate (gitleaks protect --staged, matching the pre-commit hook) before committing — an unattended /auto run can't leak a secret when the hook is absent; no-op when gitleaks isn't installed. /auto was reviewed + functional-tested (verify-gate, doom-loop, refuse-unverified, commit path).
Also in this release: omp models.yml providers: {} fix, harness help local-GGUF flow, and a deep-researched Agent Terminal App plan.
Install
curl -fsSL https://raw.githubusercontent.com/8-Sync-Dev/su-code/main/install.sh | sh
# or: 8sync upv0.44.0 — harness global (machine-wide omp rules) + engine doom-loop guard
Added
8sync harness global — omp rules machine-wide, one key (Anthropic token-optimized)
- Applies the omp rule layer MACHINE-WIDE:
~/.omp/skills+00-force-load.md,APPEND_SYSTEM.md(every system prompt), MCP servers (codebase-memory · headroom · serena · zai-vision), recall hook, capabilities, workflow ext + engine. CWD-independent. - Anthropic token-optimizer defaults: compaction 50% (only when unset), headroom compress >50-line outputs, byte-stable APPEND_SYSTEM deploys → prompt-cache hits.
--sweep [DIR](default~/Projects): stamps the per-project layer into every omp project (repo withagents/or AGENTS.md/CLAUDE.md); non-omp repos skipped + reported.
Engine stop signals (loop-engineering)
engine_advancenow REFUSES tasks with verify commands but no passingengine_verify(real code-enforced gate).- No-progress detector: byte-identical failure streaks (FNV-1a) — warn at 2, BLOCK at 3, below maxRetries. Backward-compatible state.
/auto: different-fix-per-retry rule + hard token ceiling for unattended runs.
Overwrite policy (explicit)
- Default = NEVER overwrite user-owned files (agents/*.md, agents/skills/, AGENTS.md outside sentinels, hooks, set config keys) — only add what's missing. Overwrite ONLY via
--force. Documented inharness help+ AGENTS.md §8, proven by live re-run test.
Install
curl -fsSL https://raw.githubusercontent.com/8-Sync-Dev/su-code/main/install.sh | shv0.43.0 — bench-driven optimization + codegraph canvas capture + local GGUF + English docs
Highlights
Bench now drives optimization — not just measures it. 8sync harness bench (CLI + /api/bench + the dashboard Bench page) exposes the upfront breakdown — force-load prefix / CORE skill bodies / memory spine — and warns with a concrete fix when the memory spine (agents/*.md) eats more than half of the per-session budget. The Bench dashboard page auto-loads with breakdown meters and the advisory card.
Codegraph as ONE image (?shot=1) + automatic grounding for non-vision models. 8sync shot 'http://127.0.0.1:8731/codegraph?shot=1' captures ONLY the React-Flow package call graph, full-viewport (~2k vision tokens); everything else on that page stays exact text via /api/codegraph/*. Non-vision models (GLM-5.2) read positions from that image automatically via 8sync locate — verified end-to-end: box lands exactly on the requested graph node (CPU, 44 s).
8sync harness add-local-model — load a local GGUF through mistral.rs (pure-Rust inference), served as a systemd user service and registered as an omp provider local/<name>. E2E-validated on an RTX 5080 (auto-selected prebuilt CUDA binary).
8sync locate — visual grounding with NVIDIA LocateAnything-3B via mudler/locate-anything.cpp (ggml, no Python): image + prompt → labeled boxes + click-center coordinates. --setup builds CPU or CUDA. Model license: research / non-commercial.
English-first docs. README and the GitHub Pages site are now 100% English, with a dashboard demo gallery (State / Bench / Codegraph / Models / Marketplace).
Full details: CHANGELOG.md.
Install
curl -fsSL https://raw.githubusercontent.com/8-Sync-Dev/su-code/main/install.sh | sh
# or upgrade in place:
8sync upv0.42.0 — modality routing + real 8sync shot + codegraph deep-link
Added — modality routing: read STRUCTURE as an image, PRECISE things as text
8sync shotis now real (was a no-op stub) — renders any URL / local HTML to PNG via system or omp's bundled Chromium; token estimateceil(w/28)*ceil(h/28)(28×28 patch, Opus 4.7+ pay-per-pixel).- Modality routing directive forced across
APPEND_SYSTEM.md+image-routingskill +capabilities.md+--advisor: STRUCTURE (graph/dashboard/diagram/PDF/UI) → image; code/exact-config/line-data → text. - Grounded: the 10×/90% cut is DeepSeek-OCR's dedicated encoder (arXiv 2510.18234), not a PNG to Opus/GLM. Measured here: STATE.md as image = 0.87× (loses); 12k-edge codegraph as image ≈ 25× (wins).
- Dashboard deep-link:
?page=<id>selects the initial page →8sync shot .../?page=codegraphcaptures the real graph.
Update: 8sync up && 8sync harness
v0.41.0 — dashboard Marketplace (discover + install skills/MCP)
8sync v0.41.0 — dashboard Marketplace + import/install everywhere
Browser-verified end-to-end against a real project (0 console errors).
Marketplace (new "Discover" page in 8sync harness web)
Browse, search, sort (Top by stars/uses · New by recency), and one-click install skills & MCP servers from public registries into the current project.
- MCP — 4 sources merged & deduped (135+): official registry (
registry.modelcontextprotocol.io), Smithery, Glama (all JSON APIs), and mcp.so scraped with the pure-Rustscrapercrate (HTML DOM, fetched viacurl— no reqwest, Rust-first). Install writes a real~/.omp/agent/mcp.jsonstdio (npx/uvx) or remote (http/sse) entry. - Skills: GitHub repo search ranked by stars → installs via the existing collection-aware
8sync skill add. - 1h-TTL cache under
.cache/8sync/marketplace/.
Import buttons across the dashboard (were plumbing-only)
- Skills: Import (github URL ·
gh:owner/repo·path:/abs/dirfolder ·builtin:name) + Update all. - MCP: Install-from-link (
npx -y pkg,uvx pkg, or an https remote URL) + per-server Remove. - Rules: Import from a folder or GitHub repo (
.md/.mdc, recursive; prefers arules/subdir).
Under the hood
New routes /api/marketplace, /api/mcp/{add,remove}, /api/rules/import (crates/cli/src/verbs/harness/marketplace.rs). New dep scraper 0.20 (pure-Rust); HTTP still shells to curl.
Install
curl -fsSL https://raw.githubusercontent.com/8-Sync-Dev/su-code/main/install.sh | sh
# or: 8sync upv0.40.0 — dashboard docs + advisor default-on + profile self-heal
8sync v0.40.0
Changed — advisor default-on
omp's per-turn rule/tool-use reviewer (--advisor) is now passed by default by 8sync ai and 8sync . / resume sessions — the live reviewer that checks each turn against the always-on rules (code-intel first, correct MCP tool names, open SKILL.md). Skipped for trivial-class prompts; opt out with 8sync ai --no-advisor or advisor = false in ~/.config/8sync/models.toml.
Fixed — 8sync doctor self-heals stale profile state
A profile deleted from the repo (e.g. caelestia) used to linger in ~/.config/8sync/profile.toml's applied list forever and show as a false positive. doctor now prunes entries that no longer resolve, warning once then staying clean.
Docs — README + GitHub Pages refreshed
- Install flow leads with the one-liner →
8sync harness(one-command bootstrap) →8sync harness web. - New Dashboard section with live screenshots: the browser control surface for models / skills / memory / rules / engines and the Codegraph graph page (package call graph + Leiden clusters + symbol search + trace).
- Full harness subcommand table (web / gateway / bench / audit / eval / toolstats); added the machine verbs (
bt/clean/theme/bg); fixed stale numbers (binary ≈ 5.0 MB, 35 bundled skills). - Landing page: https://8-sync-dev.github.io/su-code
Install
curl -fsSL https://raw.githubusercontent.com/8-Sync-Dev/su-code/main/install.sh | sh
# or upgrade in place:
8sync upv0.39.0 — Codegraph dashboard + harness gateway + zai-vision catalog + 18 research skills
8sync v0.39.0 — Codegraph dashboard · harness gateway · zai-vision tool catalog · 18 research skills
Added
- Dashboard
Codegraphpage — visualize the codebase-memory-mcp knowledge graph in8sync harness web: package call graph (elk layout), Leiden cluster cards (de-facto modules + cohesion), BM25 symbol search, caller/callee trace subgraph. 3 new/api/codegraph/*routes. 8sync harness gateway [apply|key|verify|status]— deploy/verify the omp model-gateway (~/.omp/agent/models.yml, 9router config), fixes the recurring400 thinking.enabled.budget_tokenson claude-sonnet-5.~/.omp/capabilities.mdnow embeds the EXACT tool catalog for every registered MCP server (codebase-memory-mcp 14 · headroom 3 · serena 23 · zai-vision 8) + omp built-in tools + Mnemopi memory tools — agents no longer guess tool names. Wired intoAPPEND_SYSTEM.mdRULE #0 + the recall hook.- 18 research skills ported to omp-native (from
companion-inc/feynman, whose versions were inert slash-command stubs): deep-research, literature-review, autoresearch, ml-training-recipe, paper-code-audit, paper-writing, research-review, source-comparison, watch, replication, jobs, session-log, eli5, session-search, preview, docker, modal-compute, runpod-compute — self-containedbuiltin:SKILL.md using omp's real tools (task/web_search/read/ask).
Fixed
- Dashboard UI/UX audit (browser-verified): Engines-page tile title wrapping, redundant version tags, Skills-page filter + tier dropdown.
skill update: registering one skill from a git collection repo no longer silently reinstalls (and un-droppably re-adds) every other sub-skill in that repo on eachharnessrun.- kitty
ctrl+shift+minuszoom — was silently stolen by the 3-pane vsplit map; moved vsplit toctrl+shift+backslash, restoring kitty's default font zoom. - kitty window decorations —
hide_window_decorationsnow gated to tiling WMs (is_tiling_wm()); stacking desktops (KDE/GNOME) keep normal window chrome.
Install
curl -fsSL https://raw.githubusercontent.com/8-Sync-Dev/su-code/main/install.sh | sh