{"_id":"@age.nt/engine","_rev":"9-9a9dbb342d714529052d59bf6005003b","name":"@age.nt/engine","dist-tags":{"latest":"0.7.0"},"versions":{"0.1.0":{"name":"@age.nt/engine","version":"0.1.0","keywords":["nt","ai","agents","engine","llm","anthropic","dsl","parser","runtime"],"author":{"name":"Kartik Mehta","email":"kartikmehta202@gmail.com"},"license":"MIT","_id":"@age.nt/engine@0.1.0","maintainers":[{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"}],"homepage":"https://github.com/kartikmehta8/nt#readme","bugs":{"url":"https://github.com/kartikmehta8/nt/issues"},"dist":{"shasum":"986c91af1d151dd5eec5c82496bbc654e5910ece","tarball":"https://registry.npmjs.org/@age.nt/engine/-/engine-0.1.0.tgz","fileCount":23,"integrity":"sha512-nI5Xzsu7wnipXuAP0p7SP+RZ/Ea9lWijtzovG9mHX0lx1avmq8WOEii5ZDPwo75WfwnGP3ib3UlEHN3VPfa9Yg==","signatures":[{"sig":"MEYCIQCjc1ApL00LjWltR4EaJmwCF7Qnt2jdg6FujZheNHaLJAIhANY6sLk57/Ss5pAq/7oJtjhcWvgXYi40ZybsQdoHDFPJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@age.nt%2fengine@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":105304},"type":"module","_from":"file:age.nt-engine-0.1.0.tgz","engines":{"node":">=22.18.0"},"exports":{".":"./src/index.ts"},"imports":{"#*":"./src/*.ts"},"_npmUser":{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"},"_resolved":"/tmp/ae567f1df4be60462e0bd4b86705185e/age.nt-engine-0.1.0.tgz","_integrity":"sha512-nI5Xzsu7wnipXuAP0p7SP+RZ/Ea9lWijtzovG9mHX0lx1avmq8WOEii5ZDPwo75WfwnGP3ib3UlEHN3VPfa9Yg==","repository":{"url":"git+https://github.com/kartikmehta8/nt.git","type":"git","directory":"packages/engine"},"_npmVersion":"10.9.3","description":"The NT language and runtime engine: parser, schema, providers, sandboxes, and the agentic session loop.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/engine_0.1.0_1784972007981_0.6997433406083156","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@age.nt/engine","version":"0.1.1","keywords":["nt","ai","agents","engine","llm","anthropic","dsl","parser","runtime"],"author":{"name":"Kartik Mehta","email":"kartikmehta202@gmail.com"},"license":"MIT","_id":"@age.nt/engine@0.1.1","maintainers":[{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"}],"homepage":"https://github.com/kartikmehta8/nt#readme","bugs":{"url":"https://github.com/kartikmehta8/nt/issues"},"dist":{"shasum":"4755f9d7348c1a64bfb570c20fea6f9878154eb8","tarball":"https://registry.npmjs.org/@age.nt/engine/-/engine-0.1.1.tgz","fileCount":23,"integrity":"sha512-b8WQDLZ+SOARnpfD9gBGq7yFWlvWM9daMsFneAne9v+R14X9YB3+AcKCjB2+gVAE6TiO+PWGyBypd297ZGOdog==","signatures":[{"sig":"MEUCIH4QuwqrTlfGuL9G8jdOHH1ifuP9PWLkZqROmqzDWaDkAiEAry/7oQPiILTTA6PKRa7HVkPmehZ5AIAub4m3ph7N+8E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@age.nt%2fengine@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":107264},"type":"module","_from":"file:age.nt-engine-0.1.1.tgz","engines":{"node":">=22.18.0"},"exports":{".":"./src/index.ts"},"imports":{"#*":"./src/*.ts"},"_npmUser":{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"},"_resolved":"/tmp/2340cb5dcdf6e9eeabca051cd44cf1af/age.nt-engine-0.1.1.tgz","_integrity":"sha512-b8WQDLZ+SOARnpfD9gBGq7yFWlvWM9daMsFneAne9v+R14X9YB3+AcKCjB2+gVAE6TiO+PWGyBypd297ZGOdog==","repository":{"url":"git+https://github.com/kartikmehta8/nt.git","type":"git","directory":"packages/engine"},"_npmVersion":"10.9.3","description":"The NT language and runtime engine: parser, schema, providers, sandboxes, and the agentic session loop.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/engine_0.1.1_1784973049270_0.3484669121589903","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@age.nt/engine","version":"0.2.0","keywords":["nt","ai","agents","engine","llm","anthropic","dsl","parser","runtime"],"author":{"name":"Kartik Mehta","email":"kartikmehta202@gmail.com"},"license":"MIT","_id":"@age.nt/engine@0.2.0","maintainers":[{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"}],"homepage":"https://github.com/kartikmehta8/nt#readme","bugs":{"url":"https://github.com/kartikmehta8/nt/issues"},"dist":{"shasum":"8f8c8aea6fdab268fffeead9e90ca5047b7968c2","tarball":"https://registry.npmjs.org/@age.nt/engine/-/engine-0.2.0.tgz","fileCount":28,"integrity":"sha512-yzh9zs4tMTNDUEYZnj/Q8+Ds2JbJES+x+ADD59lmnd6qy5eByWZb5l8PbspPe/eKGdfq++BJiJR95W2iI2Rm7w==","signatures":[{"sig":"MEUCIQD720MBnTgk0j90vFPocHFjPE1zWB9oFsc0RStJC4volAIgAfQfQeuOX+T+NSJQFvuNzGwUbnEksn5kSd7CjndzIZI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@age.nt%2fengine@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":125791},"type":"module","_from":"file:age.nt-engine-0.2.0.tgz","engines":{"node":">=22.18.0"},"exports":{".":"./src/index.ts"},"imports":{"#*":"./src/*.ts"},"_npmUser":{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"},"_resolved":"/tmp/e5ef49ea54257b4528e54d8523adf1ed/age.nt-engine-0.2.0.tgz","_integrity":"sha512-yzh9zs4tMTNDUEYZnj/Q8+Ds2JbJES+x+ADD59lmnd6qy5eByWZb5l8PbspPe/eKGdfq++BJiJR95W2iI2Rm7w==","repository":{"url":"git+https://github.com/kartikmehta8/nt.git","type":"git","directory":"packages/engine"},"_npmVersion":"10.9.3","description":"The NT language and runtime engine: parser, schema, providers, sandboxes, and the agentic session loop.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/engine_0.2.0_1784991693605_0.7265249324957983","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@age.nt/engine","version":"0.3.0","keywords":["nt","ai","agents","engine","llm","anthropic","dsl","parser","runtime"],"author":{"name":"Kartik Mehta","email":"kartikmehta202@gmail.com"},"license":"MIT","_id":"@age.nt/engine@0.3.0","maintainers":[{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"}],"homepage":"https://github.com/kartikmehta8/nt#readme","bugs":{"url":"https://github.com/kartikmehta8/nt/issues"},"dist":{"shasum":"4200c1d7bf919007c0150f04c343be817e5f1194","tarball":"https://registry.npmjs.org/@age.nt/engine/-/engine-0.3.0.tgz","fileCount":32,"integrity":"sha512-e+Z5yNM0g07e6K3GJVqK4HfHcKoa5n0u5RHQp1t6AXD/nKuC88utuVrNbQOfMLPTRdEoFPr1/YYb64ZUYWj+VA==","signatures":[{"sig":"MEUCIFXg+BrAApBbfUE8YkmZu8gfAOFg4YcI2C3iXADovXCpAiEAwwdLyiAmJq+C1pmhdkwuPf6FuoWtvHabRCz1e6Lr/9o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@age.nt%2fengine@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":139364},"type":"module","_from":"file:age.nt-engine-0.3.0.tgz","engines":{"node":">=22.18.0"},"exports":{".":"./src/index.ts"},"imports":{"#*":"./src/*.ts"},"_npmUser":{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"},"_resolved":"/tmp/1583cf82a6ae606c1ed20654d9d02879/age.nt-engine-0.3.0.tgz","_integrity":"sha512-e+Z5yNM0g07e6K3GJVqK4HfHcKoa5n0u5RHQp1t6AXD/nKuC88utuVrNbQOfMLPTRdEoFPr1/YYb64ZUYWj+VA==","repository":{"url":"git+https://github.com/kartikmehta8/nt.git","type":"git","directory":"packages/engine"},"_npmVersion":"10.9.3","description":"The NT language and runtime engine: parser, schema, providers, sandboxes, and the agentic session loop.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/engine_0.3.0_1785052026206_0.7414474686004799","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@age.nt/engine","version":"0.4.0","keywords":["nt","ai","agents","engine","llm","anthropic","dsl","parser","runtime"],"author":{"name":"Kartik Mehta","email":"kartikmehta202@gmail.com"},"license":"MIT","_id":"@age.nt/engine@0.4.0","maintainers":[{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"}],"homepage":"https://github.com/kartikmehta8/nt#readme","bugs":{"url":"https://github.com/kartikmehta8/nt/issues"},"dist":{"shasum":"536164206ba2ed4183594aac79ff162a0123b052","tarball":"https://registry.npmjs.org/@age.nt/engine/-/engine-0.4.0.tgz","fileCount":32,"integrity":"sha512-ArOT0WHxR4UabOdvuB0hE7pN91GnCCRmt+kv5YIrWO6YCQLrW04U98atnB4g5gpYSLOgoLwNySTixoQYWWLOTQ==","signatures":[{"sig":"MEQCIH7nB/6pJHySKVKWCjLc1NaZv5gPedu5Dfl58GrKhgTNAiBu/eugl0kDOLkaTewtLDdMHm3+P7eTgwbeTsIMWDMnNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@age.nt%2fengine@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":145136},"type":"module","_from":"file:age.nt-engine-0.4.0.tgz","engines":{"node":">=22.18.0"},"exports":{".":"./src/index.ts"},"imports":{"#*":"./src/*.ts"},"_npmUser":{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"},"_resolved":"/tmp/39b055c1ae0e30d7c75895947067f67b/age.nt-engine-0.4.0.tgz","_integrity":"sha512-ArOT0WHxR4UabOdvuB0hE7pN91GnCCRmt+kv5YIrWO6YCQLrW04U98atnB4g5gpYSLOgoLwNySTixoQYWWLOTQ==","repository":{"url":"git+https://github.com/kartikmehta8/nt.git","type":"git","directory":"packages/engine"},"_npmVersion":"10.9.3","description":"The NT language and runtime engine: parser, schema, providers, sandboxes, and the agentic session loop.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/engine_0.4.0_1785524931019_0.6587659372767349","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@age.nt/engine","version":"0.5.0","keywords":["nt","ai","agents","engine","llm","anthropic","dsl","parser","runtime"],"author":{"name":"Kartik Mehta","email":"kartikmehta202@gmail.com"},"license":"MIT","_id":"@age.nt/engine@0.5.0","maintainers":[{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"}],"homepage":"https://github.com/kartikmehta8/nt#readme","bugs":{"url":"https://github.com/kartikmehta8/nt/issues"},"dist":{"shasum":"1ccca95fab4af147239ecf08c717ab05129bb907","tarball":"https://registry.npmjs.org/@age.nt/engine/-/engine-0.5.0.tgz","fileCount":32,"integrity":"sha512-M+Ut6+uAdo1TQjQQcNQKIACx8XQDLwjReSpUERbYuu2PXkqUgGNntqopYnLypGmHha79j5YcbEpA/Ih/1LlE0Q==","signatures":[{"sig":"MEUCIQCosAfRPDArlVPVsmZ2vFgbFNGex1cuuxdfX/YWhoUJeQIgamNjnjCBUoQwimvwBviJQEVkBDTN4Iz6U0fEwbZtcVI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@age.nt%2fengine@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":146779},"type":"module","_from":"file:age.nt-engine-0.5.0.tgz","engines":{"node":">=22.18.0"},"exports":{".":"./src/index.ts"},"imports":{"#*":"./src/*.ts"},"_npmUser":{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"},"_resolved":"/tmp/ccdd5b986995f3dd03abdfb84a16259a/age.nt-engine-0.5.0.tgz","_integrity":"sha512-M+Ut6+uAdo1TQjQQcNQKIACx8XQDLwjReSpUERbYuu2PXkqUgGNntqopYnLypGmHha79j5YcbEpA/Ih/1LlE0Q==","repository":{"url":"git+https://github.com/kartikmehta8/nt.git","type":"git","directory":"packages/engine"},"_npmVersion":"10.9.3","description":"The NT language and runtime engine: parser, schema, providers, sandboxes, and the agentic session loop.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/engine_0.5.0_1785568547331_0.1321744121085917","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@age.nt/engine","version":"0.6.0","keywords":["nt","ai","agents","engine","llm","anthropic","dsl","parser","runtime"],"author":{"name":"Kartik Mehta","email":"kartikmehta202@gmail.com"},"license":"MIT","_id":"@age.nt/engine@0.6.0","maintainers":[{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"}],"homepage":"https://github.com/kartikmehta8/nt#readme","bugs":{"url":"https://github.com/kartikmehta8/nt/issues"},"dist":{"shasum":"6ab1b768f795e649d8ab54d4dc1dda00d5b929ea","tarball":"https://registry.npmjs.org/@age.nt/engine/-/engine-0.6.0.tgz","fileCount":32,"integrity":"sha512-6eIOSlOZRq5QjpR9owHLXhSvdWX4mUg+QOBia256eZQENmxaEunVzRkYQlxgoeAwJHwlxf3TWlQ3PF/tAuNITQ==","signatures":[{"sig":"MEQCIBVLj6+VnbLgMJSGVJg3j7M1lL+rSNNKHfwHYUrhucOLAiBRCody1grqI2NmRGcdgKvY96EUJjhXLgCGFz4qIM8/GQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@age.nt%2fengine@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":150267},"type":"module","_from":"file:age.nt-engine-0.6.0.tgz","engines":{"node":">=22.18.0"},"exports":{".":"./src/index.ts"},"imports":{"#*":"./src/*.ts"},"_npmUser":{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"},"_resolved":"/tmp/49b97902e3ef5480ddda05e35d28a3f4/age.nt-engine-0.6.0.tgz","_integrity":"sha512-6eIOSlOZRq5QjpR9owHLXhSvdWX4mUg+QOBia256eZQENmxaEunVzRkYQlxgoeAwJHwlxf3TWlQ3PF/tAuNITQ==","repository":{"url":"git+https://github.com/kartikmehta8/nt.git","type":"git","directory":"packages/engine"},"_npmVersion":"10.9.3","description":"The NT language and runtime engine: parser, schema, providers, sandboxes, and the agentic session loop.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/engine_0.6.0_1785572383012_0.15450803172387184","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@age.nt/engine","version":"0.6.1","keywords":["nt","ai","agents","engine","llm","anthropic","dsl","parser","runtime"],"author":{"name":"Kartik Mehta","email":"kartikmehta202@gmail.com"},"license":"MIT","_id":"@age.nt/engine@0.6.1","maintainers":[{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"}],"homepage":"https://github.com/kartikmehta8/nt#readme","bugs":{"url":"https://github.com/kartikmehta8/nt/issues"},"dist":{"shasum":"c36f3d948d3e624ffb5a478b396e3115a564b683","tarball":"https://registry.npmjs.org/@age.nt/engine/-/engine-0.6.1.tgz","fileCount":90,"integrity":"sha512-ulePA3FWXfh7yWNfr+925FCgHUGA0fov9XLzLyQ/08NEDssQUaWn9GaIXCuBMcU7OOjYD0pEmcCBlUcN7fJykg==","signatures":[{"sig":"MEUCIQCdRW3586tAmoIQluMKbPkjRfkuZJ6XIBYD4GE7PwacggIgPPZB48Hf35im5vZHDM4oNpYg6Axpm6vXWYrWA06BzIg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@age.nt%2fengine@0.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":293812},"type":"module","_from":"file:age.nt-engine-0.6.1.tgz","engines":{"node":">=22.18.0"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js","development":"./src/index.ts"}},"imports":{"#*":{"types":"./dist/*.d.ts","default":"./dist/*.js","development":"./src/*.ts"}},"scripts":{"test":"node --conditions=development --test \"test/*.test.ts\"","build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\""},"_npmUser":{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"},"_resolved":"/tmp/f210a4cb1c763de43547163160cc6260/age.nt-engine-0.6.1.tgz","_integrity":"sha512-ulePA3FWXfh7yWNfr+925FCgHUGA0fov9XLzLyQ/08NEDssQUaWn9GaIXCuBMcU7OOjYD0pEmcCBlUcN7fJykg==","repository":{"url":"git+https://github.com/kartikmehta8/nt.git","type":"git","directory":"packages/engine"},"_npmVersion":"10.9.3","description":"The NT language and runtime engine: parser, schema, providers, sandboxes, and the agentic session loop.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/engine_0.6.1_1786273855544_0.5705044661267136","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@age.nt/engine","version":"0.7.0","description":"The NT language and runtime engine: parser, schema, providers, sandboxes, and the agentic session loop.","type":"module","license":"MIT","author":{"name":"Kartik Mehta","email":"kartikmehta202@gmail.com"},"exports":{".":{"development":"./src/index.ts","types":"./dist/index.d.ts","default":"./dist/index.js"}},"imports":{"#*":{"development":"./src/*.ts","types":"./dist/*.d.ts","default":"./dist/*.js"}},"keywords":["nt","ai","agents","engine","llm","anthropic","dsl","parser","runtime"],"homepage":"https://github.com/kartikmehta8/nt#readme","bugs":{"url":"https://github.com/kartikmehta8/nt/issues"},"repository":{"type":"git","url":"git+https://github.com/kartikmehta8/nt.git","directory":"packages/engine"},"publishConfig":{"access":"public","provenance":true},"engines":{"node":">=22.18.0"},"dependencies":{"@modelcontextprotocol/client":"2.0.0","ajv":"8.20.0","undici":"7.29.0"},"devDependencies":{"@modelcontextprotocol/server":"2.0.0"},"scripts":{"build":"pnpm run clean && tsc -p tsconfig.build.json","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","test":"node --conditions=development --test \"test/*.test.ts\""},"_id":"@age.nt/engine@0.7.0","_integrity":"sha512-easZr8gzBdUttu4q0hBNy47SdpssJ45/rM7xIfoo1mW77s0yAUg3tLiD5UDvqN0S5IobcHjfEAtXKhwsGhsHYw==","_resolved":"/tmp/ee6a78632c06b59d6428e375816a7f3d/age.nt-engine-0.7.0.tgz","_from":"file:age.nt-engine-0.7.0.tgz","_nodeVersion":"22.18.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-easZr8gzBdUttu4q0hBNy47SdpssJ45/rM7xIfoo1mW77s0yAUg3tLiD5UDvqN0S5IobcHjfEAtXKhwsGhsHYw==","shasum":"f4bf2408912553f2c3225bf884bdff9283645102","tarball":"https://registry.npmjs.org/@age.nt/engine/-/engine-0.7.0.tgz","fileCount":213,"unpackedSize":634536,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@age.nt%2fengine@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDWqIq3oiVlNBJfAMsi+KKFGd6FJ0HKUoER7AvdcmXR3wIgCzM7oPdAca4re/FlUaGtCHKI95ALmNPuup38+NXSgEI="}]},"_npmUser":{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"},"directories":{},"maintainers":[{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/engine_0.7.0_1786348530778_0.6060880783510112"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-25T09:33:27.812Z","modified":"2026-08-10T07:55:31.172Z","0.1.0":"2026-07-25T09:33:28.138Z","0.1.1":"2026-07-25T09:50:49.429Z","0.2.0":"2026-07-25T15:01:33.746Z","0.3.0":"2026-07-26T07:47:06.344Z","0.4.0":"2026-07-31T19:08:51.225Z","0.5.0":"2026-08-01T07:15:47.485Z","0.6.0":"2026-08-01T08:19:43.161Z","0.6.1":"2026-08-09T11:10:55.685Z","0.7.0":"2026-08-10T07:55:30.902Z"},"bugs":{"url":"https://github.com/kartikmehta8/nt/issues"},"author":{"name":"Kartik Mehta","email":"kartikmehta202@gmail.com"},"license":"MIT","homepage":"https://github.com/kartikmehta8/nt#readme","keywords":["nt","ai","agents","engine","llm","anthropic","dsl","parser","runtime"],"repository":{"type":"git","url":"git+https://github.com/kartikmehta8/nt.git","directory":"packages/engine"},"description":"The NT language and runtime engine: parser, schema, providers, sandboxes, and the agentic session loop.","maintainers":[{"name":"kartikmehta8","email":"kartikmehta202@gmail.com"}],"readme":"# @age.nt/engine\n\nThe **NT language and runtime engine** — the library that powers the\n[`nt` CLI](https://www.npmjs.com/package/@age.nt/nt). It parses `.nt` files,\nbuilds and validates a typed project, talks to language-model providers over\n`fetch`, runs sandboxes, and drives the agentic tool-use loop (including\ndelegation to subagents).\n\nMost people use the [`nt` CLI](https://www.npmjs.com/package/@age.nt/nt). Reach\nfor this package directly when you want to **embed NT in your own app**.\n\n- **Docs:** https://agent-lang.xyz\n- **Source:** https://github.com/kartikmehta8/nt\n\n## Install\n\n```bash\nnpm install @age.nt/engine\n```\n\nRequires **Node ≥ 22.18**. Published packages contain compiled JavaScript. The\nengine uses the official MCP TypeScript client, Ajv, and Undici at runtime, and\nreaches model providers over `fetch`.\n\n## Usage\n\n### Run an agent\n\n```ts\nimport { Engine } from \"@age.nt/engine\";\n\nconst engine = Engine.load(\"age.nt\");\ntry {\n  const result = await engine.runAgent(\"age\", { clues: \"retired last year\" });\n  console.log(result.output); // { age: 66, reason: \"…\" }\n} finally {\n  await engine.close(); // closes MCP subprocesses and HTTP sessions\n}\n```\n\n### Run a workflow\n\n```ts\nconst engine = Engine.load(\"age.nt\");\nconst result = await engine.runWorkflow(\"estimate_age\", {\n  clues: \"bought the first iPhone at 22\",\n});\n```\n\n### Watch progress\n\nPass `onStep` to observe every model call, tool dispatch, subagent delegation,\nand workflow step as it happens — this is what powers the `nt` CLI's\n`--show-tool-calls` thinking line:\n\n```ts\nimport { Engine, type StepEvent } from \"@age.nt/engine\";\n\nconst engine = Engine.load(\"age.nt\", {\n  onStep: (event: StepEvent) => {\n    console.error(`[${event.kind}] ${event.agent} → ${event.detail} (depth ${event.depth})`);\n  },\n});\nawait engine.runAgent(\"age\", { clues: \"graduated college in 2010\" });\n```\n\n### Gate risky tools (human in the loop)\n\nA tool declared with `confirm: true` in `.nt` only runs after your `confirm`\ncallback approves it — this is what powers the `nt` CLI's interactive Yes/No\nselector and its `--yes` flag. **Wire no callback and gated tools are always\nrefused**, never silently run:\n\n```ts\nimport { Engine, type ConfirmRequest } from \"@age.nt/engine\";\n\nconst engine = Engine.load(\"age.nt\", {\n  confirm: async (request: ConfirmRequest) => {\n    return myReviewQueue.approve(request.agent, request.tool, request.input);\n  },\n});\n```\n\n### Scaffold a starter project\n\n```ts\nimport { scaffoldProject } from \"@age.nt/engine\";\n\nconst result = scaffoldProject(\"./my-agent\", { template: \"full\" });\nconsole.log(result.created); // includes mcp/local.nt and its zero-dependency echo server\nconsole.log(result.skipped); // files that already existed and were left alone\nconsole.log(result.entry); // absolute path to the entry age.nt\n```\n\nThe full starter wires `local_demo.echo` into its entry agent. Nothing is\noverwritten unless you pass `{ force: true }`. A caller still needs to persist\ntrust for the generated MCP declaration before connecting, just like the CLI.\n\n### Load and inspect a project (offline, no model calls)\n\n```ts\nimport { loadProject } from \"@age.nt/engine\";\n\nconst { project, warnings } = loadProject(\"age.nt\");\nconsole.log([...project.agents.keys()]); // [\"age\"]\nconsole.log([...project.tools.keys()]); // [\"current_year\", …]\nconsole.log([...project.mcpServers.keys()]);\nwarnings.forEach((w) => console.warn(w));\n```\n\n### Inspect and manage MCP servers\n\nLive MCP methods require the same explicit trust used by the CLI. They never\nimplicitly trust a declaration:\n\n```ts\nconst engine = Engine.load(\"age.nt\");\ntry {\n  const trust = engine.mcpTrustInfo(\"github\");\n  engine.trustMcp(\"github\", trust.fingerprint);\n\n  const servers = await engine.listMcp(\"github\", true);\n  const tool = await engine.inspectMcp(\"github\", \"search_repositories\");\n  const diagnostics = await engine.doctorMcp(\"github\");\n  console.log({ servers, tool, diagnostics });\n} finally {\n  await engine.close();\n}\n```\n\n`trustMcp` and `untrustMcp` manage exact fingerprints. `authorizeMcp` and\n`logoutMcp` are available to embedders implementing an OAuth callback. Always\ncall `close()` so subprocesses, remote sessions, and in-flight calls receive a\nbounded shutdown.\n\nThe production MCP dependencies are exact-pinned: the official\n`@modelcontextprotocol/client` SDK handles negotiation, transports, and OAuth;\nAjv validates JSON Schema; and Undici enforces socket-time DNS-rebinding\nprotection. All three use permissive MIT licenses. Exact versions keep this\nprotocol- and security-sensitive surface reviewable, while Dependabot checks\nruntime updates weekly.\n\n## Public API\n\nThe package barrel is the only supported import boundary. Its main runtime\nexports are:\n\n| Export             | What it is                                                 |\n| ------------------ | ---------------------------------------------------------- |\n| `Engine`           | Load a project and run agents / workflows, or bring it up. |\n| `loadProject`      | Parse + build + validate into a typed `Project` (offline). |\n| `discoverNtFiles`  | Find every `.nt` file under a directory.                   |\n| `ChatSession`      | Stateful, multi-turn conversation with an agent.           |\n| `scaffoldProject`  | Write a starter project (`minimal` or `full`) to a folder. |\n| `TEMPLATE_NAMES`   | The starter templates `scaffoldProject` accepts.           |\n| `readAuditEntries` | Read recent tool-call entries out of an audit folder.      |\n| `auditFiles`       | List the audit log files in a folder, oldest first.        |\n| `NtError`          | Error type carrying a source `Location`.                   |\n| `McpError`         | MCP failure with a stable machine-readable error code.     |\n| MCP types          | Server, tool, inspection, doctor, auth, and policy shapes. |\n\n## Security defaults\n\n- **`local` sandboxes are opt-in** — they only run when `NT_ALLOW_LOCAL=1` is\n  set; the default `virtual` sandbox never touches the host.\n- **Provider `base_url` must be `https`** (localhost exempt) and API keys are\n  read from `env(NAME)`, never stored in files.\n- **`http` tools cannot reach private/localhost addresses** unless explicitly\n  allowed.\n- **Every tool call is audited** — appended as JSONL to `~/.nt/audit` (owner-only\n  permissions) with credentials redacted. Point `config.audit` at another folder,\n  or set `audit: off` to disable it.\n- **MCP connections require exact persisted trust**, while MCP calls separately\n  default to per-call approval. `--yes` never bypasses trust or OAuth.\n\nSee the full language and API reference at **https://agent-lang.xyz/docs**.\n","readmeFilename":"README.md"}