NeamCode v0.3.5 — Memory System Upgrade
Installation
npm (recommended)
npm install -g neamcode@0.3.5
macOS / Linux (one-line install)
curl -fsSL https://raw.githubusercontent.com/neam-lang/NeamCode/main/install.sh | sh
Windows (PowerShell)
irm https://raw.githubusercontent.com/neam-lang/NeamCode/main/install.ps1 | iex
From release tarball
curl -LO https://github.com/neam-lang/NeamCode/releases/download/v0.3.5/neamcode-0.3.5.tgz
npm install -g neamcode-0.3.5.tgz
From source
git clone https://github.com/neam-lang/NeamCode.git
cd NeamCode
npm ci && npm run build
npm link
Highlights
- Auto Memory System — Persistent MEMORY.md with 200-line cap, topic file overflow, and project-hash isolation
- 6-Tier NEAMCODE.md Hierarchy — managed → global → ancestor → project → local → config context loading
- @path Import Syntax — Expand referenced files inline with cycle detection, max depth 5, 50KB limit
- Rules Engine —
.neamcode/rules/*.md with YAML frontmatter paths: for path-scoped rule loading
- Compaction Resilience — System prompt fully rebuilt after context window compaction
- JSON → Markdown Migration — Legacy auto.json memories auto-converted to MEMORY.md format
Build & Release Scripts
Reusable scripts for CI and local development:
| Script |
Purpose |
scripts/build.sh |
TypeScript + native build with preflight checks |
scripts/package.sh |
Create platform archive (macOS/Linux/Windows) |
scripts/package.ps1 |
Windows PowerShell packaging |
scripts/checksums.sh |
Combine per-platform SHA256 checksums |
scripts/release-local.sh |
Full local release pipeline with --upload |
# Local release
./scripts/release-local.sh --skip-test --npm-tarball --upload
New Components
| Module |
Description |
src/memory/auto-reader.ts |
Loads MEMORY.md at startup with line-cap truncation |
src/memory/auto-writer.ts |
Analyzes conversations and persists learnings at shutdown |
src/memory/markdown-store.ts |
CRUD for Markdown memory with topic file overflow |
src/memory/migrator.ts |
Converts legacy JSON memory to Markdown format |
src/memory/project-hash.ts |
Deterministic project hash for memory isolation |
src/context/import-resolver.ts |
Resolves @path imports with cycle/depth protection |
src/context/rules-loader.ts |
Loads .neamcode/rules/ with path-scoping support |
src/core/context-builder.ts |
Assembles system prompt from all context sources |
CI Status
All 9 CI jobs passing across:
- TypeScript: Node 18, 20, 22 (Ubuntu)
- Native: macOS 14 (ARM64), Ubuntu 22.04, Windows 2022 × Node 20, 22
Test Coverage
- 2741 tests passing, 16 skipped (provider tests without API keys)
- 228 test files across unit, integration, and E2E suites
Platform Packages
| Platform |
Architecture |
Package |
| macOS |
Apple Silicon (arm64) |
neamcode-v0.3.5-macos-arm64.tar.gz |
| macOS |
Intel (x86_64) |
neamcode-v0.3.5-macos-x64.tar.gz |
| Linux |
x86_64 |
neamcode-v0.3.5-linux-x64.tar.gz |
| Linux |
arm64 |
neamcode-v0.3.5-linux-arm64.tar.gz |
| Windows |
x86_64 |
neamcode-v0.3.5-windows-x64.zip |
| npm |
Any |
neamcode-0.3.5.tgz |
Verify Download
sha256sum -c checksums.sha256
Breaking Changes
ContextFileLoader constructor now takes an options object instead of positional arguments
- Memory command interface changed to
MemoryCommandDeps with optional autoMemoryReader and markdownStore
Full Changelog
v0.3.4...v0.3.5