{"_id":"@sanity-labs/nuum","_rev":"28-e82feb0deb963989e100a849142b10fe","name":"@sanity-labs/nuum","dist-tags":{"latest":"0.5.6"},"versions":{"0.2.0":{"name":"@sanity-labs/nuum","version":"0.2.0","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"author":{"name":"Miriad Systems"},"license":"MIT","_id":"@sanity-labs/nuum@0.2.0","maintainers":[{"name":"simen.svale","email":"simen@sanity.io"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"}],"homepage":"https://github.com/sanity-labs/nuum#readme","bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"bin":{"nuum":"dist/index.js"},"dist":{"shasum":"8608ce698760c84f6d8ae7870f720e7ea5717142","tarball":"https://registry.npmjs.org/@sanity-labs/nuum/-/nuum-0.2.0.tgz","fileCount":6,"integrity":"sha512-Z2qUkjFItuyP1LM0W7GL2jHo/q3B7+P1Zzj91w9X65YNNdNIHgahyJ1EPZ7eZvLHnwMymYApdri3mfUw1ejiUg==","signatures":[{"sig":"MEUCIGSXWgrfmm8m4Nc3KMMMBOnleR+3s40MbbkpAc91gM1HAiEA0PRrpvZWUs99fXXHzEliM+34z87LYZ+mEw+jahLQubI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1657402},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"51e71e34ad69bab51a6a941ed10b8e041e2db269","scripts":{"dev":"bun run ./src/cli/index.ts","test":"bun test","build":"bun build ./src/cli/index.ts --outdir ./dist --target bun --define \"BUILD_VERSION='$(node -p \"require('./package.json').version\")'\" --define \"BUILD_GIT_HASH='$(git rev-parse --short HEAD 2>/dev/null || echo unknown)'\" && node -e \"const fs=require('fs');const f='./dist/index.js';fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('#!/usr/bin/env node','#!/usr/bin/env bun'))\"","release":"bun run build && bun run typecheck && npm publish --access public","typecheck":"tsc --noEmit","prepublishOnly":"bun run build && bun run typecheck"},"_npmUser":{"name":"simen.svale","email":"simen@sanity.io"},"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"_npmVersion":"11.6.2","description":"AI coding agent with continuous memory - infinite context across sessions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"ai":"^4.1.0","zod":"^3.24.0","diff":"^8.0.3","ulid":"^2.3.0","@types/diff":"^7.0.2","drizzle-orm":"^0.38.0","@ai-sdk/anthropic":"^1.1.0","@anthropic-ai/sdk":"^0.39.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"acknowledgments":{"letta":"Memory architecture patterns - three-tier memory, agent-editable memory, sleeptime workers","opencode":"Tool system, shell execution, permission system infrastructure"},"devDependencies":{"tsx":"^4.21.0","@types/bun":"^1.1.0","typescript":"^5.7.0","drizzle-kit":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/nuum_0.2.0_1769695844002_0.20207733679417794","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@sanity-labs/nuum","version":"0.2.1","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"author":{"name":"Miriad Systems"},"license":"MIT","_id":"@sanity-labs/nuum@0.2.1","maintainers":[{"name":"simen.svale","email":"simen@sanity.io"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"}],"homepage":"https://github.com/sanity-labs/nuum#readme","bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"bin":{"nuum":"dist/index.js"},"dist":{"shasum":"a1334ac03903c282b60d96e739d6ad26eea4f98d","tarball":"https://registry.npmjs.org/@sanity-labs/nuum/-/nuum-0.2.1.tgz","fileCount":6,"integrity":"sha512-gTNBhrgxQ4+yeCIWhVbV9Mf2jhwb+xuy8TZVmPuYEWC/xQ3cL5DIRCpA4qp6lb40rwpcO+8ocPZ3DTGt6/48ug==","signatures":[{"sig":"MEYCIQDDyy6b7YuWR7+5VkaL8o6cNDV6UK5rIYJ22WBjKaVdRgIhAIgUU1MaICcrwaRDroO0kj+ey+mlQ5uA0yfn5+/UqvPj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1658201},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"73e0b24f6561f95c1e626ac75ce96b2c8bdbc229","scripts":{"dev":"bun run ./src/cli/index.ts","test":"bun test","build":"bun build ./src/cli/index.ts --outdir ./dist --target bun --define \"BUILD_VERSION='$(node -p \"require('./package.json').version\")'\" --define \"BUILD_GIT_HASH='$(git rev-parse --short HEAD 2>/dev/null || echo unknown)'\" && node -e \"const fs=require('fs');const f='./dist/index.js';fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('#!/usr/bin/env node','#!/usr/bin/env bun'))\"","release":"bun run build && bun run typecheck && npm publish --access public","typecheck":"tsc --noEmit","prepublishOnly":"bun run build && bun run typecheck"},"_npmUser":{"name":"simen.svale","email":"simen@sanity.io"},"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"_npmVersion":"11.6.2","description":"AI coding agent with continuous memory - infinite context across sessions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"ai":"^4.1.0","zod":"^3.24.0","diff":"^8.0.3","ulid":"^2.3.0","@types/diff":"^7.0.2","drizzle-orm":"^0.38.0","@ai-sdk/anthropic":"^1.1.0","@anthropic-ai/sdk":"^0.39.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"acknowledgments":{"letta":"Memory architecture patterns - three-tier memory, agent-editable memory, sleeptime workers","opencode":"Tool system, shell execution, permission system infrastructure"},"devDependencies":{"tsx":"^4.21.0","@types/bun":"^1.1.0","typescript":"^5.7.0","drizzle-kit":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/nuum_0.2.1_1769763701683_0.9750520408199552","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@sanity-labs/nuum","version":"0.2.2","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"author":{"name":"Miriad Systems"},"license":"MIT","_id":"@sanity-labs/nuum@0.2.2","maintainers":[{"name":"simen.svale","email":"simen@sanity.io"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"}],"homepage":"https://github.com/sanity-labs/nuum#readme","bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"bin":{"nuum":"dist/index.js"},"dist":{"shasum":"68eac5b4a9982442d9a2678ded2545e71595de3e","tarball":"https://registry.npmjs.org/@sanity-labs/nuum/-/nuum-0.2.2.tgz","fileCount":6,"integrity":"sha512-2wxUj6hhgg2jOQm2ajAQPqmGryxqxb68cdTUPU3ITDM5Xx5o7ojWVqKrQazawar0tEQ4PCEkEvD2rCwzzCFrow==","signatures":[{"sig":"MEUCIQDdJZpa5gc62MOCVIkpIEpVeaUd4KxQwrlNoPPPiiL/GQIgAqqeMwEdGzkDQqA26aCRgKFXeYuQ41KOBI1yvYg/gLg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1659920},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"0764a521b0f8895e9b12301d2f9a8318d708e406","scripts":{"dev":"bun run ./src/cli/index.ts","test":"bun test","build":"bun build ./src/cli/index.ts --outdir ./dist --target bun --define \"BUILD_VERSION='$(node -p \"require('./package.json').version\")'\" --define \"BUILD_GIT_HASH='$(git rev-parse --short HEAD 2>/dev/null || echo unknown)'\" && node -e \"const fs=require('fs');const f='./dist/index.js';fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('#!/usr/bin/env node','#!/usr/bin/env bun'))\"","release":"bun run build && bun run typecheck && npm publish --access public","typecheck":"tsc --noEmit","prepublishOnly":"bun run build && bun run typecheck"},"_npmUser":{"name":"simen.svale","email":"simen@sanity.io"},"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"_npmVersion":"11.6.2","description":"AI coding agent with continuous memory - infinite context across sessions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"ai":"^4.1.0","zod":"^3.24.0","diff":"^8.0.3","ulid":"^2.3.0","@types/diff":"^7.0.2","drizzle-orm":"^0.38.0","@ai-sdk/anthropic":"^1.1.0","@anthropic-ai/sdk":"^0.39.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"acknowledgments":{"letta":"Memory architecture patterns - three-tier memory, agent-editable memory, sleeptime workers","opencode":"Tool system, shell execution, permission system infrastructure"},"devDependencies":{"tsx":"^4.21.0","@types/bun":"^1.1.0","typescript":"^5.7.0","drizzle-kit":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/nuum_0.2.2_1769765096573_0.5338214760231423","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@sanity-labs/nuum","version":"0.3.0","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"author":{"name":"Miriad Systems"},"license":"MIT","_id":"@sanity-labs/nuum@0.3.0","maintainers":[{"name":"simen.svale","email":"simen@sanity.io"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"}],"homepage":"https://github.com/sanity-labs/nuum#readme","bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"bin":{"nuum":"dist/index.js"},"dist":{"shasum":"0fbfadf2cf9af59e263f49c8f853b66425a3fa40","tarball":"https://registry.npmjs.org/@sanity-labs/nuum/-/nuum-0.3.0.tgz","fileCount":7,"integrity":"sha512-VC7S/sf1gw5SXpdeeRBdeJQHdAu7sGpLM+8baynOFaAokqxChrYehQ7jUOxYkJEKbYWaxQdB+Omg8V51gTO+8g==","signatures":[{"sig":"MEUCIH3X6gVeSrD2pgMdsFWnUIU6PI5G4pitC1ynf8KzdNeFAiEAlk3MrXJzZB84Zr+rhvbqF3EvwkbMiXQvDlvEHWcGacQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1687869},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"18005cc388a4efe4dbd20c6e704291815d665cec","scripts":{"dev":"bun run ./src/cli/index.ts","test":"bun test","build":"bun build ./src/cli/index.ts --outdir ./dist --target bun --define \"BUILD_VERSION='$(node -p \"require('./package.json').version\")'\" --define \"BUILD_GIT_HASH='$(git rev-parse --short HEAD 2>/dev/null || echo unknown)'\" && node -e \"const fs=require('fs');const f='./dist/index.js';fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('#!/usr/bin/env node','#!/usr/bin/env bun'))\"","release":"bun run build && bun run typecheck && npm publish --access public","typecheck":"tsc --noEmit","prepublishOnly":"bun run build && bun run typecheck"},"_npmUser":{"name":"simen.svale","email":"simen@sanity.io"},"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"_npmVersion":"11.6.2","description":"AI coding agent with continuous memory - infinite context across sessions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"ai":"^4.1.0","zod":"^3.24.0","diff":"^8.0.3","ulid":"^2.3.0","@types/diff":"^7.0.2","drizzle-orm":"^0.38.0","@ai-sdk/anthropic":"^1.1.0","@anthropic-ai/sdk":"^0.39.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"acknowledgments":{"letta":"Memory architecture patterns - three-tier memory, agent-editable memory, sleeptime workers","opencode":"Tool system, shell execution, permission system infrastructure"},"devDependencies":{"tsx":"^4.21.0","@types/bun":"^1.1.0","typescript":"^5.7.0","drizzle-kit":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/nuum_0.3.0_1769768588559_0.05696696423691994","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@sanity-labs/nuum","version":"0.4.0","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"author":{"name":"Miriad Systems"},"license":"MIT","_id":"@sanity-labs/nuum@0.4.0","maintainers":[{"name":"simen.svale","email":"simen@sanity.io"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"}],"homepage":"https://github.com/sanity-labs/nuum#readme","bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"bin":{"nuum":"dist/index.js"},"dist":{"shasum":"0fc2ffa45c82f57abe3433d2f809138b0f435c84","tarball":"https://registry.npmjs.org/@sanity-labs/nuum/-/nuum-0.4.0.tgz","fileCount":7,"integrity":"sha512-I+wfEGkAMXyiGSmN27EuC5Bzqp4kBJF+/rNNyt3uIH6KYrpBBck4ej5OvHk+6pjExmNd4HMNKExMhqsOvb0T2A==","signatures":[{"sig":"MEUCIHnSlbpxwB7CZzkpeeev2ooOSqrIryG4YzC/9fXgGMndAiEAh59Ag2GWTvShW8uImXnt3OUCNNpNQ6eu2AIjgpAryL8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1710027},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"ae44f42e0446a80d12095c4626519e9e1a1c4c60","scripts":{"dev":"bun run ./src/cli/index.ts","test":"bun test","build":"bun build ./src/cli/index.ts --outdir ./dist --target bun --define \"BUILD_VERSION='$(node -p \"require('./package.json').version\")'\" --define \"BUILD_GIT_HASH='$(git rev-parse --short HEAD 2>/dev/null || echo unknown)'\" && node -e \"const fs=require('fs');const f='./dist/index.js';fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('#!/usr/bin/env node','#!/usr/bin/env bun'))\"","format":"prettier --write 'src/**/*.ts'","release":"bun run build && bun run typecheck && npm publish --access public","typecheck":"tsc --noEmit","prepublishOnly":"bun run build && bun run typecheck"},"_npmUser":{"name":"simen.svale","email":"simen@sanity.io"},"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"_npmVersion":"11.6.2","description":"AI coding agent with continuous memory - infinite context across sessions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"ai":"^4.1.0","zod":"^3.24.0","diff":"^8.0.3","ulid":"^2.3.0","picocolors":"^1.1.1","@types/diff":"^7.0.2","drizzle-orm":"^0.38.0","@ai-sdk/anthropic":"^1.1.0","@anthropic-ai/sdk":"^0.39.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"acknowledgments":{"letta":"Memory architecture patterns - three-tier memory, agent-editable memory, sleeptime workers","opencode":"Tool system, shell execution, permission system infrastructure"},"devDependencies":{"tsx":"^4.21.0","prettier":"^3.8.1","@types/bun":"^1.1.0","typescript":"^5.7.0","drizzle-kit":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/nuum_0.4.0_1770121238870_0.7326216279745972","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@sanity-labs/nuum","version":"0.4.1","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"author":{"name":"Miriad Systems"},"license":"MIT","_id":"@sanity-labs/nuum@0.4.1","maintainers":[{"name":"simen.svale","email":"simen@sanity.io"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"}],"homepage":"https://github.com/sanity-labs/nuum#readme","bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"bin":{"nuum":"dist/index.js"},"dist":{"shasum":"6dad7e49c8c0e54b52e2b10c7be541069529715c","tarball":"https://registry.npmjs.org/@sanity-labs/nuum/-/nuum-0.4.1.tgz","fileCount":7,"integrity":"sha512-gzr6/pmOGvVPiYJwJ8qtlE0Ojqz4oY4Sw+jIEwZAS7lnoMaB6Ixl6MLH1n/i3DRWJBnmbYDDMGyAfGJOj8Mr+A==","signatures":[{"sig":"MEUCIDJcVkHSKCWuC9Fi9tg+7aKhvy8dhekjd6TSA2YeNQ76AiEAyrj1ql8x94peGkDdanzFcoKoopGb+aJ5eAldpbzOnDs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1717204},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"a3e3745587cdc20039991ba5b4c2ba1ec0e45f0c","scripts":{"dev":"bun run ./src/cli/index.ts","test":"bun test","build":"bun build ./src/cli/index.ts --outdir ./dist --target bun --define \"BUILD_VERSION='$(node -p \"require('./package.json').version\")'\" --define \"BUILD_GIT_HASH='$(git rev-parse --short HEAD 2>/dev/null || echo unknown)'\" && node -e \"const fs=require('fs');const f='./dist/index.js';fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('#!/usr/bin/env node','#!/usr/bin/env bun'))\"","format":"prettier --write 'src/**/*.ts'","release":"bun run build && bun run typecheck && npm publish --access public","typecheck":"tsc --noEmit","prepublishOnly":"bun run build && bun run typecheck"},"_npmUser":{"name":"simen.svale","email":"simen@sanity.io"},"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"_npmVersion":"11.6.2","description":"AI coding agent with continuous memory - infinite context across sessions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"ai":"^4.1.0","zod":"^3.24.0","diff":"^8.0.3","ulid":"^2.3.0","picocolors":"^1.1.1","@types/diff":"^7.0.2","drizzle-orm":"^0.38.0","@ai-sdk/anthropic":"^1.1.0","@anthropic-ai/sdk":"^0.39.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"acknowledgments":{"letta":"Memory architecture patterns - three-tier memory, agent-editable memory, sleeptime workers","opencode":"Tool system, shell execution, permission system infrastructure"},"devDependencies":{"tsx":"^4.21.0","prettier":"^3.8.1","@types/bun":"^1.1.0","typescript":"^5.7.0","drizzle-kit":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/nuum_0.4.1_1770307222216_0.1843615474998952","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@sanity-labs/nuum","version":"0.5.0","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"author":{"name":"Miriad Systems"},"license":"MIT","_id":"@sanity-labs/nuum@0.5.0","maintainers":[{"name":"simen.svale","email":"simen@sanity.io"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"}],"homepage":"https://github.com/sanity-labs/nuum#readme","bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"bin":{"nuum":"dist/index.js"},"dist":{"shasum":"1dc48540bcda20a5b5339e8991b28f918c50e95c","tarball":"https://registry.npmjs.org/@sanity-labs/nuum/-/nuum-0.5.0.tgz","fileCount":7,"integrity":"sha512-UlilMOB7llN85XC9BAnLMdAgXmR7KK+Nxz9U+lybm73pUtp0GfCzQNzTQk7FDt0LfJGde6UExqVY+OBAf/dOpA==","signatures":[{"sig":"MEUCICO9K0u3KvwYfBN25RsaeY4n+132q9gIEjj30kwyhCw3AiEA4931se9ml+zucpxhUXhlmoNxhvZRMqhE6Y2mRVPrk7M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1717195},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"767263f0ce73b71d890f303b9cc20feac8f5e699","scripts":{"dev":"bun run ./src/cli/index.ts","test":"bun test","build":"bun build ./src/cli/index.ts --outdir ./dist --target bun --define \"BUILD_VERSION='$(node -p \"require('./package.json').version\")'\" --define \"BUILD_GIT_HASH='$(git rev-parse --short HEAD 2>/dev/null || echo unknown)'\" && node -e \"const fs=require('fs');const f='./dist/index.js';fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('#!/usr/bin/env node','#!/usr/bin/env bun'))\"","format":"prettier --write 'src/**/*.ts'","release":"bun run build && bun run typecheck && npm publish --access public","typecheck":"tsc --noEmit","prepublishOnly":"bun run build && bun run typecheck"},"_npmUser":{"name":"simen.svale","email":"simen@sanity.io"},"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"_npmVersion":"11.6.2","description":"AI coding agent with continuous memory - infinite context across sessions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"ai":"^4.1.0","zod":"^3.24.0","diff":"^8.0.3","ulid":"^2.3.0","picocolors":"^1.1.1","@types/diff":"^7.0.2","drizzle-orm":"^0.38.0","@ai-sdk/anthropic":"^1.1.0","@anthropic-ai/sdk":"^0.39.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"acknowledgments":{"letta":"Memory architecture patterns - three-tier memory, agent-editable memory, sleeptime workers","opencode":"Tool system, shell execution, permission system infrastructure"},"devDependencies":{"tsx":"^4.21.0","prettier":"^3.8.1","@types/bun":"^1.1.0","typescript":"^5.7.0","drizzle-kit":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/nuum_0.5.0_1770323165149_0.1669934993161586","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@sanity-labs/nuum","version":"0.5.1","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"author":{"name":"Miriad Systems"},"license":"MIT","_id":"@sanity-labs/nuum@0.5.1","maintainers":[{"name":"simen.svale","email":"simen@sanity.io"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"}],"homepage":"https://github.com/sanity-labs/nuum#readme","bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"bin":{"nuum":"dist/index.js"},"dist":{"shasum":"c25c4dbd8aaa2b85e1eb233edc31037b621db613","tarball":"https://registry.npmjs.org/@sanity-labs/nuum/-/nuum-0.5.1.tgz","fileCount":7,"integrity":"sha512-06AtDp//CJbDLMRwajud3c2PMK9bzxr3QBv5TVFiTWLQHlI6a36RYsHvieKXtcO9OhB82luNgdUuX0Ae3nNozw==","signatures":[{"sig":"MEUCIFoFqz9Gv6Y3Gm90pQ+WmGx6gfFOES6UhRH0S68YlW6nAiEAhhNKWJebmVTrqPRu9E4iOtS68wMMyJO6bY79TXv5N8k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1717323},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"f2b8571fa62a5699fcfc64a94e50c1b5771f0768","scripts":{"dev":"bun run ./src/cli/index.ts","test":"bun test","build":"bun build ./src/cli/index.ts --outdir ./dist --target bun --define \"BUILD_VERSION='$(node -p \"require('./package.json').version\")'\" --define \"BUILD_GIT_HASH='$(git rev-parse --short HEAD 2>/dev/null || echo unknown)'\" && node -e \"const fs=require('fs');const f='./dist/index.js';fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('#!/usr/bin/env node','#!/usr/bin/env bun'))\"","format":"prettier --write 'src/**/*.ts'","release":"bun run build && bun run typecheck && npm publish --access public","typecheck":"tsc --noEmit","prepublishOnly":"bun run build && bun run typecheck"},"_npmUser":{"name":"simen.svale","email":"simen@sanity.io"},"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"_npmVersion":"11.6.2","description":"AI coding agent with continuous memory - infinite context across sessions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"ai":"^4.1.0","zod":"^3.24.0","diff":"^8.0.3","ulid":"^2.3.0","picocolors":"^1.1.1","@types/diff":"^7.0.2","drizzle-orm":"^0.38.0","@ai-sdk/anthropic":"^1.1.0","@anthropic-ai/sdk":"^0.39.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"acknowledgments":{"letta":"Memory architecture patterns - three-tier memory, agent-editable memory, sleeptime workers","opencode":"Tool system, shell execution, permission system infrastructure"},"devDependencies":{"tsx":"^4.21.0","prettier":"^3.8.1","@types/bun":"^1.1.0","typescript":"^5.7.0","drizzle-kit":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/nuum_0.5.1_1770326699494_0.8087600252309035","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"@sanity-labs/nuum","version":"0.5.2","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"author":{"name":"Miriad Systems"},"license":"MIT","_id":"@sanity-labs/nuum@0.5.2","maintainers":[{"name":"simen.svale","email":"simen@sanity.io"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"}],"homepage":"https://github.com/sanity-labs/nuum#readme","bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"bin":{"nuum":"dist/index.js"},"dist":{"shasum":"e12ae85359ca15141edac95a3e2c4a18aa37fbeb","tarball":"https://registry.npmjs.org/@sanity-labs/nuum/-/nuum-0.5.2.tgz","fileCount":7,"integrity":"sha512-SeSDoSxbk66qsnFfiIF5mWubMKJB2O8Jh2xfN2ihnYxpsfjx79g0NKmOsfMHUhTz38k41PoNYCmAvRlYfM6PIg==","signatures":[{"sig":"MEUCIGbWNYk/PXutotblgXIsJtHKQt5OcpD63qpCAPwjZzvMAiEA0PKKwuvKhM9DA3M35/9rvrADnrBQpZ2G7NgL7fvT3ME=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1717948},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"91ca6b6d03db0e987ad871729b29adb623e5e5be","scripts":{"dev":"bun run ./src/cli/index.ts","test":"bun test","build":"bun build ./src/cli/index.ts --outdir ./dist --target bun --define \"BUILD_VERSION='$(node -p \"require('./package.json').version\")'\" --define \"BUILD_GIT_HASH='$(git rev-parse --short HEAD 2>/dev/null || echo unknown)'\" && node -e \"const fs=require('fs');const f='./dist/index.js';fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('#!/usr/bin/env node','#!/usr/bin/env bun'))\"","format":"prettier --write 'src/**/*.ts'","release":"bun run build && bun run typecheck && npm publish --access public","typecheck":"tsc --noEmit","prepublishOnly":"bun run build && bun run typecheck"},"_npmUser":{"name":"simen.svale","email":"simen@sanity.io"},"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"_npmVersion":"11.6.2","description":"AI coding agent with continuous memory - infinite context across sessions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"ai":"^4.1.0","zod":"^3.24.0","diff":"^8.0.3","ulid":"^2.3.0","picocolors":"^1.1.1","@types/diff":"^7.0.2","drizzle-orm":"^0.38.0","@ai-sdk/anthropic":"^1.1.0","@anthropic-ai/sdk":"^0.39.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"acknowledgments":{"letta":"Memory architecture patterns - three-tier memory, agent-editable memory, sleeptime workers","opencode":"Tool system, shell execution, permission system infrastructure"},"devDependencies":{"tsx":"^4.21.0","prettier":"^3.8.1","@types/bun":"^1.1.0","typescript":"^5.7.0","drizzle-kit":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/nuum_0.5.2_1770327373810_0.3649578385588128","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"name":"@sanity-labs/nuum","version":"0.5.3","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"author":{"name":"Miriad Systems"},"license":"MIT","_id":"@sanity-labs/nuum@0.5.3","maintainers":[{"name":"simen.svale","email":"simen@sanity.io"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"}],"homepage":"https://github.com/sanity-labs/nuum#readme","bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"bin":{"nuum":"dist/index.js"},"dist":{"shasum":"f46bdb58c8c026f357359e5970c34801bb9b757b","tarball":"https://registry.npmjs.org/@sanity-labs/nuum/-/nuum-0.5.3.tgz","fileCount":7,"integrity":"sha512-myh3PsLOW5NOIaRYCyunbZcroehXEZaZJjIV3iByMkT6nFtDbtOFpBeRDK5tiGHLZayFKFZQRr1NPoDD6n7ZjA==","signatures":[{"sig":"MEUCIQCFRLBrKbmPRu2V/Y3FtfheruwpRxxMFxAhCveIyRH7OwIgLv7FkgLYve9Zr+6PzyjLxIPHKNMjRwGXd3IKlCU/h28=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1720526},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"a2a5ddc0b956465d756268dcf1caeb797906d426","scripts":{"dev":"bun run ./src/cli/index.ts","test":"bun test","build":"bun build ./src/cli/index.ts --outdir ./dist --target bun --define \"BUILD_VERSION='$(node -p \"require('./package.json').version\")'\" --define \"BUILD_GIT_HASH='$(git rev-parse --short HEAD 2>/dev/null || echo unknown)'\" && node -e \"const fs=require('fs');const f='./dist/index.js';fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('#!/usr/bin/env node','#!/usr/bin/env bun'))\"","format":"prettier --write 'src/**/*.ts'","release":"bun run build && bun run typecheck && npm publish --access public","typecheck":"tsc --noEmit","prepublishOnly":"bun run build && bun run typecheck"},"_npmUser":{"name":"simen.svale","email":"simen@sanity.io"},"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"_npmVersion":"11.6.2","description":"AI coding agent with continuous memory - infinite context across sessions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"ai":"^4.1.0","zod":"^3.24.0","diff":"^8.0.3","ulid":"^2.3.0","picocolors":"^1.1.1","@types/diff":"^7.0.2","drizzle-orm":"^0.38.0","@ai-sdk/anthropic":"^1.1.0","@anthropic-ai/sdk":"^0.39.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"acknowledgments":{"letta":"Memory architecture patterns - three-tier memory, agent-editable memory, sleeptime workers","opencode":"Tool system, shell execution, permission system infrastructure"},"devDependencies":{"tsx":"^4.21.0","prettier":"^3.8.1","@types/bun":"^1.1.0","typescript":"^5.7.0","drizzle-kit":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/nuum_0.5.3_1770487602173_0.006840677635358228","host":"s3://npm-registry-packages-npm-production"}},"0.5.4":{"name":"@sanity-labs/nuum","version":"0.5.4","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"author":{"name":"Miriad Systems"},"license":"MIT","_id":"@sanity-labs/nuum@0.5.4","maintainers":[{"name":"simen.svale","email":"simen@sanity.io"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"}],"homepage":"https://github.com/sanity-labs/nuum#readme","bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"bin":{"nuum":"dist/index.js"},"dist":{"shasum":"a16192f8f2b6813e048de63e4e40fa701f984b6b","tarball":"https://registry.npmjs.org/@sanity-labs/nuum/-/nuum-0.5.4.tgz","fileCount":7,"integrity":"sha512-ZEqk9Q+PUBXoVMladadVskYEnGvIqjnCA7fk2Dlc5dun0eEdzC7snKsFl3wUP2Umn8D8meNkFV5KFr/sos0dCA==","signatures":[{"sig":"MEUCIC3Rvfsf8nhbdhtsFBk6Vv9Gr8SNl4I6faba5vnzTH/ZAiEAky2man77amHVYV0AILErszn4iKnA1J9W4WKklg37Eds=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1721968},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"e1f89a6b6e49c26a3c713b76e2a5799793e860c3","scripts":{"dev":"bun run ./src/cli/index.ts","test":"bun test","build":"bun build ./src/cli/index.ts --outdir ./dist --target bun --define \"BUILD_VERSION='$(node -p \"require('./package.json').version\")'\" --define \"BUILD_GIT_HASH='$(git rev-parse --short HEAD 2>/dev/null || echo unknown)'\" && node -e \"const fs=require('fs');const f='./dist/index.js';fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('#!/usr/bin/env node','#!/usr/bin/env bun'))\"","format":"prettier --write 'src/**/*.ts'","release":"bun run build && bun run typecheck && npm publish --access public","typecheck":"tsc --noEmit","prepublishOnly":"bun run build && bun run typecheck"},"_npmUser":{"name":"simen.svale","email":"simen@sanity.io"},"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"_npmVersion":"11.6.2","description":"AI coding agent with continuous memory - infinite context across sessions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"ai":"^4.1.0","zod":"^3.24.0","diff":"^8.0.3","ulid":"^2.3.0","picocolors":"^1.1.1","@types/diff":"^7.0.2","drizzle-orm":"^0.38.0","@ai-sdk/anthropic":"^1.1.0","@anthropic-ai/sdk":"^0.39.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"acknowledgments":{"letta":"Memory architecture patterns - three-tier memory, agent-editable memory, sleeptime workers","opencode":"Tool system, shell execution, permission system infrastructure"},"devDependencies":{"tsx":"^4.21.0","prettier":"^3.8.1","@types/bun":"^1.1.0","typescript":"^5.7.0","drizzle-kit":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/nuum_0.5.4_1770580667067_0.9372723571654356","host":"s3://npm-registry-packages-npm-production"}},"0.5.5":{"name":"@sanity-labs/nuum","version":"0.5.5","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"author":{"name":"Miriad Systems"},"license":"MIT","_id":"@sanity-labs/nuum@0.5.5","maintainers":[{"name":"simen.svale","email":"simen@sanity.io"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"}],"homepage":"https://github.com/sanity-labs/nuum#readme","bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"bin":{"nuum":"dist/index.js"},"dist":{"shasum":"ba9e163bc5ead32cf91459d6de20fe687c0e32b5","tarball":"https://registry.npmjs.org/@sanity-labs/nuum/-/nuum-0.5.5.tgz","fileCount":7,"integrity":"sha512-7iZ5SVNWGjpCIcbUBu+oKGaHPzKgDLJUGNQGlN6/qmzEx5e11RM4nlcZB5Qootv9tWFVOiBfw2MJYzosHwMMjA==","signatures":[{"sig":"MEUCIQC0MFbavZkNkNl35wvjuHYlsJPtI7QBW71RRb3nYd7A4QIgKMH40D3sQWLVAN3vwxTGZH8Sy2e5G/k9ctAvQh5LXwY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1722176},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"9c9c47140b4cdfe56015017bb60db863781dc2ee","scripts":{"dev":"bun run ./src/cli/index.ts","test":"bun test","build":"bun build ./src/cli/index.ts --outdir ./dist --target bun --define \"BUILD_VERSION='$(node -p \"require('./package.json').version\")'\" --define \"BUILD_GIT_HASH='$(git rev-parse --short HEAD 2>/dev/null || echo unknown)'\" && node -e \"const fs=require('fs');const f='./dist/index.js';fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('#!/usr/bin/env node','#!/usr/bin/env bun'))\"","format":"prettier --write 'src/**/*.ts'","release":"bun run build && bun run typecheck && npm publish --access public","typecheck":"tsc --noEmit","prepublishOnly":"bun run build && bun run typecheck"},"_npmUser":{"name":"simen.svale","email":"simen@sanity.io"},"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"_npmVersion":"11.6.2","description":"AI coding agent with continuous memory - infinite context across sessions","directories":{},"_nodeVersion":"24.12.0","dependencies":{"ai":"^4.1.0","zod":"^3.24.0","diff":"^8.0.3","ulid":"^2.3.0","picocolors":"^1.1.1","@types/diff":"^7.0.2","drizzle-orm":"^0.38.0","@ai-sdk/anthropic":"^1.1.0","@anthropic-ai/sdk":"^0.39.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"acknowledgments":{"letta":"Memory architecture patterns - three-tier memory, agent-editable memory, sleeptime workers","opencode":"Tool system, shell execution, permission system infrastructure"},"devDependencies":{"tsx":"^4.21.0","prettier":"^3.8.1","@types/bun":"^1.1.0","typescript":"^5.7.0","drizzle-kit":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/nuum_0.5.5_1770653663816_0.8704680189897063","host":"s3://npm-registry-packages-npm-production"}},"0.5.6":{"name":"@sanity-labs/nuum","version":"0.5.6","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"author":{"name":"Miriad Systems"},"license":"MIT","_id":"@sanity-labs/nuum@0.5.6","maintainers":[{"name":"simen.svale","email":"simen@sanity.io"},{"name":"joshbrand","email":"josh@homph.co"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"}],"homepage":"https://github.com/sanity-labs/nuum#readme","bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"bin":{"nuum":"dist/index.js"},"dist":{"shasum":"b12d95c24a507ff183b0486e578478cc7483e0dc","tarball":"https://registry.npmjs.org/@sanity-labs/nuum/-/nuum-0.5.6.tgz","fileCount":7,"integrity":"sha512-VvliY3qPcC+5wxzjOSFTB8ppt5OoUZXVPF+ctfvDZNLd+rjmKlb4/IUZMubrxeEsrehNWpZYxSy76pVGxuiYag==","signatures":[{"sig":"MEYCIQCtiT7WOuN+XyAVjvWdtTOVfmt6jjUu6TDSH+zZlm6dvgIhAKbe86yNaGrCrx4Hfg2EuceNx8apLqHh15dKBgU7J46p","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1731445},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"3cf96a67b29df058b534f30154d802e9244944ef","scripts":{"dev":"bun run ./src/cli/index.ts","test":"bun test","build":"bun build ./src/cli/index.ts --outdir ./dist --target bun --define \"BUILD_VERSION='$(node -p \"require('./package.json').version\")'\" --define \"BUILD_GIT_HASH='$(git rev-parse --short HEAD 2>/dev/null || echo unknown)'\" && node -e \"const fs=require('fs');const f='./dist/index.js';fs.writeFileSync(f,fs.readFileSync(f,'utf8').replace('#!/usr/bin/env node','#!/usr/bin/env bun'))\"","format":"prettier --write 'src/**/*.ts'","release":"bun run build && bun run typecheck && npm publish --access public","typecheck":"tsc --noEmit","prepublishOnly":"bun run build && bun run typecheck"},"_npmUser":{"name":"simen.svale","email":"simen@sanity.io"},"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"_npmVersion":"10.8.2","description":"AI coding agent with continuous memory - infinite context across sessions","directories":{},"_nodeVersion":"20.20.0","dependencies":{"ai":"^4.1.0","zod":"^3.24.0","diff":"^8.0.3","ulid":"^2.3.0","picocolors":"^1.1.1","@types/diff":"^7.0.2","drizzle-orm":"^0.38.0","@ai-sdk/anthropic":"^1.1.0","@anthropic-ai/sdk":"^0.39.0","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"acknowledgments":{"letta":"Memory architecture patterns - three-tier memory, agent-editable memory, sleeptime workers","opencode":"Tool system, shell execution, permission system infrastructure"},"devDependencies":{"tsx":"^4.21.0","prettier":"^3.8.1","@types/bun":"^1.1.0","typescript":"^5.7.0","drizzle-kit":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/nuum_0.5.6_1771111696717_0.7294216189438274","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2026-01-29T14:10:43.888Z","modified":"2026-09-03T12:55:30.245Z","0.2.0":"2026-01-29T14:10:44.171Z","0.2.1":"2026-01-30T09:01:41.878Z","0.2.2":"2026-01-30T09:24:56.728Z","0.3.0":"2026-01-30T10:23:08.755Z","0.4.0":"2026-02-03T12:20:39.126Z","0.4.1":"2026-02-05T16:00:22.452Z","0.5.0":"2026-02-05T20:26:05.324Z","0.5.1":"2026-02-05T21:24:59.868Z","0.5.2":"2026-02-05T21:36:14.022Z","0.5.3":"2026-02-07T18:06:42.374Z","0.5.4":"2026-02-08T19:57:47.240Z","0.5.5":"2026-02-09T16:14:24.047Z","0.5.6":"2026-02-14T23:28:16.933Z"},"bugs":{"url":"https://github.com/sanity-labs/nuum/issues"},"author":{"name":"Miriad Systems"},"license":"MIT","homepage":"https://github.com/sanity-labs/nuum#readme","keywords":["ai","agent","coding","memory","anthropic","claude","mcp"],"repository":{"url":"git+https://github.com/sanity-labs/nuum.git","type":"git"},"description":"AI coding agent with continuous memory - infinite context across sessions","maintainers":[{"email":"simen@sanity.io","name":"simen.svale"},{"email":"matthew.dent@sanity.io","name":"mttdnt-sanity"},{"email":"stipsan@gmail.com","name":"stipsan"},{"email":"josh@homph.co","name":"joshbrand"},{"email":"herman@sanity.io","name":"hermanw"},{"email":"cole.peters@sanity.io","name":"colepeters-sanity"},{"email":"studio@mariuslundgard.com","name":"mariuslundgard"},{"email":"lauren.ashpole@sanity.io","name":"laurenashpolesanity"},{"email":"robin.pyon@gmail.com","name":"robinpyon"},{"email":"sam.hemingway@sanity.io","name":"samhem"},{"email":"sergei@sanity.io","name":"sergeisarviro"},{"email":"espen@hovlandsdal.com","name":"rexxars"},{"email":"snorre.e.brekke@gmail.com","name":"snorreeb"},{"email":"nicholas@sanity.io","name":"nicholasklem"},{"email":"tbeseda@gmail.com","name":"tbeseda"},{"email":"knut.melvaer@gmail.com","name":"kmelve"},{"email":"hello@rosti.no","name":"rostimelk"},{"email":"jack.wilson@sanity.io","name":"jw-sanity"},{"email":"james.woods@sanity.io","name":"jwoods-sanity"}],"readme":"# Nuum\n\nAn AI coding agent with **\"infinite memory\"** — continuous context across sessions.\n\n*Nuum* — from \"continuum\" — maintains persistent memory across conversations, learning your codebase, preferences, and decisions over time.\n\n📖 **[How We Solved the Agent Memory Problem](https://www.sanity.io/blog/how-we-solved-the-agent-memory-problem)** — the full technical deep-dive on why agents forget and how Nuum fixes it.\n\n## Quick Start\n\n```bash\nexport ANTHROPIC_API_KEY=your-key-here\n\n# Install and run interactively\nbunx @sanity-labs/nuum --repl\n\n# Or with npx\nnpx @sanity-labs/nuum --repl\n```\n\nThat's it. Start chatting. Your agent remembers everything.\n\n### REPL Commands\n\n```\n/help     Show available commands\n/inspect  Show memory statistics\n/dump     Show full system prompt\n/quit     Exit\n```\n\n### Other Modes\n\n```bash\nnuum -p \"What files are in src/\"     # Single prompt\nnuum --inspect                        # View memory stats\nnuum --db ./project.db --repl         # Custom database\n```\n\n---\n\n## ⚠️ Experimental Software\n\nNuum currently runs in **full autonomy mode** — no permission prompts, no confirmations. It was created for [Miriad](https://miriad.systems) as an embedded agent engine, typically running in containerized environments where the host platform manages security.\n\n**Why we built this:** We were frustrated with how traditional coding agents seem to suffer some kind of contextual collapse after prolonged use — getting mixed up, repeating mistakes, losing track of decisions. Nuum explores how to keep agents effective indefinitely through selective, recursive memory compression and active knowledge management.\n\n---\n\n## MCP Servers\n\nNuum supports [Model Context Protocol](https://modelcontextprotocol.io/) servers for extended capabilities. Configure via environment variable:\n\n```bash\nexport NUUM_MCP_SERVERS='{\n  \"filesystem\": {\n    \"command\": \"npx\",\n    \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/path/to/allowed/dir\"]\n  },\n  \"github\": {\n    \"command\": \"npx\", \n    \"args\": [\"-y\", \"@modelcontextprotocol/server-github\"],\n    \"env\": { \"GITHUB_TOKEN\": \"your-token\" }\n  }\n}'\n```\n\nOr pass via protocol when embedding:\n\n```json\n{\"type\":\"user\",\"message\":{...},\"mcp_servers\":{\"name\":{\"command\":\"...\",\"args\":[...]}}}\n```\n\nMCP tools appear alongside built-in tools. The agent discovers and uses them automatically.\n\n---\n\n## Embedding in Applications\n\nNuum is designed to be **embedded**. While it runs standalone, its primary use case is integration into host applications, IDEs, and orchestration platforms.\n\n```bash\nnuum --stdio              # NDJSON protocol over stdin/stdout\nnuum --stdio --db ./my.db # With custom database\n```\n\n**Key properties:**\n- **Stateless process, stateful memory** — Process can restart anytime; all state lives in SQLite\n- **Simple wire protocol** — JSON messages over stdin/stdout, easy to integrate from any language\n- **Mid-turn injection** — Send corrections while the agent is working\n- **Persistent identity** — One database = one agent with continuous memory\n\nSee **[docs/protocol.md](docs/protocol.md)** for the full wire protocol specification.\n\n---\n\n## Memory Architecture\n\nNuum has a three-tier memory system that mirrors human cognition.\n\n**Key insight:** Agents perform best when context is **30-50% full** — informed but not overwhelmed. Nuum's memory system maintains this sweet spot automatically.\n\n```\n┌─────────────────────────────────────────────────────────────────────────────┐\n│                              WORKING MEMORY                                  │\n│                         (Temporal Message Store)                             │\n│                                                                              │\n│  Recent messages live here in full detail. As context grows, older          │\n│  content is recursively distilled — compressed while retaining what         │\n│  matters for effective action.                                              │\n│                                                                              │\n│  ┌─────────────────────────────────────────────────────────────────────┐    │\n│  │ msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg ... │    │\n│  │  │   │   │   │   │   │   │   │   │   │   │   │   │   │   │   │      │    │\n│  │  └───┴───┴───┴───┘   └───┴───┴───┘   └───┴───┴───┘   │   │   │      │    │\n│  │         │                   │               │         │   │   │      │    │\n│  │    [distill-1]         [distill-2]    [distill-3]    │   │   │      │    │\n│  │         │                   │               │         │   │   │      │    │\n│  │         └───────────────────┴───────────────┘         │   │   │      │    │\n│  │                             │                         │   │   │      │    │\n│  │                      [distill-4]                      │   │   │      │    │\n│  │                             │                         │   │   │      │    │\n│  │                             └─────────────────────────┘   │   │      │    │\n│  │                                         │                 │   │      │    │\n│  │                                   [distill-5]        [recent msgs]   │    │\n│  │                                                                      │    │\n│  │  Older ◄──────────────────────────────────────────────────► Newer   │    │\n│  └─────────────────────────────────────────────────────────────────────┘    │\n│                                                                              │\n│  The agent sees: [distill-5] + [recent messages]                            │\n│  55x compression ratio achieved (1.3M tokens → 25k effective)               │\n└─────────────────────────────────────────────────────────────────────────────┘\n\n┌─────────────────────────────────────────────────────────────────────────────┐\n│                              PRESENT STATE                                   │\n│                                                                              │\n│  ┌─────────────┐  ┌─────────────┐  ┌─────────────────────────────────┐      │\n│  │   Mission   │  │   Status    │  │            Tasks                │      │\n│  │             │  │             │  │  ☑ Setup repository             │      │\n│  │  \"Build     │  │ \"reviewing  │  │  ☑ Implement auth               │      │\n│  │   auth      │  │  PR #42\"    │  │  ☐ Write tests                  │      │\n│  │   system\"   │  │             │  │  ☐ Deploy to staging            │      │\n│  └─────────────┘  └─────────────┘  └─────────────────────────────────┘      │\n│                                                                              │\n│  Agent-managed working state. Updated as work progresses.                   │\n└─────────────────────────────────────────────────────────────────────────────┘\n\n┌─────────────────────────────────────────────────────────────────────────────┐\n│                            LONG-TERM MEMORY                                  │\n│                          (Knowledge Base Tree)                               │\n│                                                                              │\n│  /identity ─────────────── \"Who I am, my nature and relationships\"          │\n│  /behavior ─────────────── \"How I should operate, user preferences\"         │\n│  /nuum                                                                │\n│    ├── /cast-integration ─ \"CAST/Miriad integration notes\"                  │\n│    ├── /memory                                                               │\n│    │     └── /background-reports-system                                      │\n│    ├── /anthropic-prompt-caching                                             │\n│    └── /distillation-improvements-jan2026                                    │\n│  /mcp                                                                        │\n│    ├── /mcp-implementation                                                   │\n│    └── /mcp-config-resolution                                                │\n│                                                                              │\n│  Hierarchical knowledge that persists forever. Background workers           │\n│  extract important information from conversations and organize it here.     │\n└─────────────────────────────────────────────────────────────────────────────┘\n```\n\n### Recursive Distillation\n\n**No pause for compaction.** Unlike most coding agents that stop mid-conversation to \"compact memory,\" Nuum's distillation runs concurrently while you work. You never wait for memory management — it happens invisibly in the background.\n\nThe distillation system is **not summarization** — it's operational intelligence extraction:\n\n**RETAIN** (actionable intelligence):\n- File paths and what they contain\n- Decisions made and WHY (rationale matters)\n- User preferences and corrections\n- Specific values: URLs, configs, commands\n- Errors and how they were resolved\n\n**EXCISE** (noise):\n- Back-and-forth debugging that led nowhere\n- Missteps and corrections (keep only final approach)\n- Verbose tool outputs\n- Narrative filler (\"Let me check...\")\n- Casual chatter and acknowledgments\n\nDistillations are recursive — older distillations get distilled again, creating a fractal compression where ancient history becomes highly compressed while recent work stays detailed.\n\n### Long-Term Memory Curation\n\nA background worker (the **LTM Curator**) runs continuously in the background:\n\n1. **CAPTURES** important information into knowledge entries\n2. **STRENGTHENS** entries by researching and adding context  \n3. **CURATES** the knowledge tree structure\n\nThe curator has access to web search, file reading, and the full knowledge base. It works autonomously — you never see it running, but the agent's knowledge grows over time. Reports are filed silently and surfaced to the main agent on the next interaction.\n\n### Reflection\n\nWhen the agent needs to recall something specific — a file path, a decision, a value from weeks ago — it uses the **reflect** tool:\n\n```\n┌─────────────────────────────────────────────────────────────────────────────┐\n│                              REFLECTION                                      │\n│                                                                              │\n│   Main Agent                         Reflection Sub-Agent                    │\n│       │                                      │                               │\n│       │  \"What was the auth bug fix?\"        │                               │\n│       │ ────────────────────────────────────►│                               │\n│       │                                      │                               │\n│       │                          ┌───────────┴───────────┐                   │\n│       │                          │  Search FTS index     │                   │\n│       │                          │  Search LTM entries   │                   │\n│       │                          │  Read relevant docs   │                   │\n│       │                          │  Synthesize answer    │                   │\n│       │                          └───────────┬───────────┘                   │\n│       │                                      │                               │\n│       │  \"The auth bug was in session.ts,    │                               │\n│       │   line 42. Fixed by adding null      │                               │\n│       │   check. Committed in abc123.\"       │                               │\n│       │ ◄────────────────────────────────────│                               │\n│       │                                      │                               │\n└─────────────────────────────────────────────────────────────────────────────┘\n```\n\nReflection searches the full conversation history (via FTS5 full-text search) and the knowledge base, then synthesizes an answer. It's like the agent asking its own memory system a question.\n\n---\n\n## Configuration\n\n```bash\n# Required\nANTHROPIC_API_KEY=your-key-here\n\n# Optional — Web Search\nBRAVE_SEARCH_API_KEY=your-key    # Brave Search API (recommended)\n                                  # Get a free key at https://brave.com/search/api/\n                                  # Without this, falls back to DuckDuckGo HTML scraping\n                                  # (unreliable from cloud/container IPs)\n\n# Optional — Model Selection (defaults shown)\nAGENT_MODEL_REASONING=claude-opus-4-6\nAGENT_MODEL_WORKHORSE=claude-sonnet-4-5-20250929\nAGENT_MODEL_FAST=claude-haiku-4-5-20251001\nAGENT_DB=./agent.db\n```\n\n---\n\n## Development\n\n```bash\nbun install          # Install dependencies\nbun run dev          # Run in development\nbun run typecheck    # Type check\nbun test             # Run tests\nbun run build        # Build for distribution\n```\n\n---\n\n## Acknowledgments\n\n### Letta (formerly MemGPT)\n\nMemory architecture influenced by [Letta](https://github.com/letta-ai/letta):\n- Core memory always in context\n- Agent-editable memory\n- Background memory workers\n\n### OpenCode\n\nInfrastructure adapted from [OpenCode](https://github.com/anthropics/opencode):\n- Tool definition patterns\n- Permission system\n- Process management\n\n---\n\n## License\n\nMIT\n\n---\n\n<p align=\"center\">\n  Nuum is part of <a href=\"https://miriad.systems\">Miriad</a>, experimental software from <a href=\"https://sanity.io\">Sanity.io</a>\n</p>\n","readmeFilename":"README.md"}