NULNUL 2.0.0
NULNUL 2.0.0
Start small. Let the project prove what the harness needs next.
NULNUL is an open-source, project-local agent harness for Codex and Claude Code. It inspects the repository and existing setup first, reuses what already works, adds only proven gaps, continues the user's actual task, and keeps changes behind executable checks.
Try it
For Codex:
codex plugin marketplace add SeoNaRu/nulnul-harness --ref main
codex plugin add nulnul-harness@nulnul-harnessFor Claude Code:
claude plugin marketplace add SeoNaRu/nulnul-harness
claude plugin install nulnul-harness@nulnul-harnessThen ask for the work normally:
Set up the smallest useful harness for this project, reuse what already works,
and then complete the task I asked for.
If anything feels intrusive, overly cautious, or unnecessarily complex, report the normal task and the uncomfortable behavior in GitHub Issues. Please do not include private project data or raw transcripts.
What 2.0 adds
This release adds bounded cross-project selection on top of opt-in Personal Evolution. NULNUL uses privacy-safe activation and contraindication summaries to narrow which verified personal adaptations deserve a full compatibility check in the current project; past success never forces application.
Three independent families passed the existing Personal Gate lifecycle: checkpoint verification freshness, local migration atomicity, and nonpass learning linkage. On the sealed local episode, meta-selector-v1 preserved all three flat-lookup decisions while reducing full compatibility checks from 9 to 4. Fresh no-relevant and unresolved-conflict controls failed closed, and the promoted selector passed one live cycle plus an executable rollback control.
The registry remains a user-selected local privacy boundary. Raw project data, project identity, cross-user learning, cloud memory, background learning, arbitrary conflict resolution, permission expansion, and open-ended recursion are excluded.
The exact public 2.0.0 archive matched the validated local bytes. Fresh Claude Code adoption preserved two existing profiles, made zero protected writes, and passed five checks. Fresh exact-final Meta adoption loaded the three-family registry without user-named adaptations and reduced Project M full compatibility checks from 3 to 1 with the same correct apply and downstream result. No-match, conflict, privacy, permission, exposure, and rollback controls passed; Generalization remains narrower_scope.