{"_id":"juliacode","_rev":"37-b26197ffdb408384fa87c946b934e83d","name":"juliacode","dist-tags":{"latest":"0.11.2"},"versions":{"0.1.0":{"name":"juliacode","version":"0.1.0","license":"GPL-3.0-only","_id":"juliacode@0.1.0","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"b08671fabbcf23bb0b33c4612e857cc3f8a1f251","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.1.0.tgz","fileCount":62,"integrity":"sha512-p4p04nBYtUlj4IcXv0Fa3AYIicFKJ0T68ubanHUmftqYsgGR37PHwN6nGCDFLlDYB9gYBd2ZO7Em/LhI/erg7Q==","signatures":[{"sig":"MEUCIFTESqNCEYyq4OT40ZoUEbk21SeQPbThiUAxnqxZkL/KAiEA6gSLZ2ebxyeAOQS6WvmJuFjg21jNmQfatvHPY2TaHFk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":231463},"type":"module","engines":{"node":">=18"},"gitHead":"0488b958ea2028526896972fb15e831de628e0b9","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"11.12.0","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"25.8.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.1.0_1774275996148_0.6595787805139035","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"juliacode","version":"0.1.1","license":"GPL-3.0-only","_id":"juliacode@0.1.1","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"bfdd1869eb23a6242b5c106460932b6c3d32aba0","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.1.1.tgz","fileCount":63,"integrity":"sha512-yDZeRyCWzzisGSxTpyV1VX7erzzWxOAKKf4bnIZ8yI3Diz211BVr90VZM9Q9NEodNLOvpWTC79MAGxArWXvxxQ==","signatures":[{"sig":"MEYCIQC+GhVektmX5zAmqSEBEz/PMdsdA0zxoXEcDfQv42jhhAIhAIHFDZn7hvk3iP9C3TJ46xT0Xesvq9gHDb0c9VkttEzl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":236255},"type":"module","engines":{"node":">=18"},"gitHead":"0488b958ea2028526896972fb15e831de628e0b9","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"11.12.0","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"25.8.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.1.1_1774277788307_0.37888761172689267","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"juliacode","version":"0.1.2","license":"GPL-3.0-only","_id":"juliacode@0.1.2","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"07d3591b6dabdc4821e3eecea570d223b8560db7","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.1.2.tgz","fileCount":63,"integrity":"sha512-VYzB2B5JXPBsnWKerdo0SO4Tzkmzy6EDCh7ilahACCXIC/j2uyWIaUSkx5LjWq92n8Px959giV5yZtgEE+lqRw==","signatures":[{"sig":"MEYCIQCTwUMAPWmU2WPCmH+yG3+NhtNB/A2e3ES2MfWs3Ms/TAIhALbITxsYPj/SmeIGtUVzgTHjy18JV5Wmo0vJLiKYHx5Q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":235990},"type":"module","engines":{"node":">=18"},"gitHead":"d30010ee7352288f9dd84575e424a2b8c12f4e09","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"11.12.0","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"25.8.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.1.2_1774278468348_0.4857937240164485","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"juliacode","version":"0.1.5","license":"GPL-3.0-only","_id":"juliacode@0.1.5","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"a02c28ec2ef3fbbc63310714c63cf44ddeb29847","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.1.5.tgz","fileCount":63,"integrity":"sha512-EaOiL4Xi0obX/8NFrseHyHLlv6b0kEZKXGbaZL01w7PyRj3sdUM5tCa1Rh+OKJWpp5hju/s4xXWeRxGmYE90tg==","signatures":[{"sig":"MEQCICMYMh3aLMSDqA/fy2PaQHPd6BwimM9vRAXTVen5vD6HAiB6wSiQWqMA1NFcV4/4sjD6qBWnwjqg5UgSIr3BZ4J4RA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":235990},"type":"module","engines":{"node":">=18"},"gitHead":"01d91be5d43373157713ecdac8d73cd9e5d5e5a2","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.4","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.1.5_1774290214340_0.37339910660086395","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"juliacode","version":"0.1.6","license":"GPL-3.0-only","_id":"juliacode@0.1.6","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"350a0459873da0552cd21c8f5b2574d4d56d48bb","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.1.6.tgz","fileCount":71,"integrity":"sha512-kcyFjlrWcorltqOQo97qXpuda+yex2dBJZEsrAnEWJS1sH5uF3coJGRIPSnSesawpred/S2to4Ajnl0sMYF3nw==","signatures":[{"sig":"MEQCIB4D1CSGsg1Fj6VsX048p8x2LfRPFbVjVrN3SZMpeuEDAiB2k7ZBhRQaU3V0/MEGIWggRiRoSMwh+h/gjYjweUY+Rw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":264556},"type":"module","engines":{"node":">=18"},"gitHead":"09f0f5b02182754b57fb478969e407426d26de76","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.4","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.1.6_1774305912076_0.5312550868335939","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"juliacode","version":"0.1.7","license":"GPL-3.0-only","_id":"juliacode@0.1.7","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"126b51f9413edd9662126e15613e0125df781d16","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.1.7.tgz","fileCount":71,"integrity":"sha512-kFdBRlbC9NYCO9Eomfxmlz19kBe5ra/lIFJg6b72MthnHUcR+asw+XPTFqVyNL1zGMZM70R2oIurAgVLQw8lGg==","signatures":[{"sig":"MEQCIFbDCpJ02DBn0H4CeuPx77z0Off/nUANVn0G3V+V3yQ7AiArOuTuuy3G6rPtax3McTZbtyc0ZbCCiatSSBkchG6yTw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":266645},"type":"module","engines":{"node":">=18"},"gitHead":"282e144a62a226e2780c8f4e79d1ca34f8f107a0","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.4","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.1.7_1774357407972_0.46453159984844605","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"juliacode","version":"0.1.8","license":"GPL-3.0-only","_id":"juliacode@0.1.8","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"f2f5c244ecca8e476e8279ae8e0694d4a5c5c8fa","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.1.8.tgz","fileCount":71,"integrity":"sha512-lFxtD18tQhajQ57NZ5CYPw6hj+uFfYYvAzFtL81ayf9N0zUwDb57WPg1I2Zk5t5HIkURgocBw1Z7f5nB47xJWg==","signatures":[{"sig":"MEYCIQC7Fb1Za+o5pFmeqQYP7Q/wW4EQ3quRZKjze8KWYbZ+TgIhAOVLFNSY9ufc+KQJO8YvyFneelpiCflU4ufjxWgrVhq+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":266795},"type":"module","engines":{"node":">=18"},"gitHead":"b33aba8c0f0e5be562295de3381240224902c2ad","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.4","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.1.8_1774358199448_0.43220649863296723","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"juliacode","version":"0.1.9","license":"GPL-3.0-only","_id":"juliacode@0.1.9","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"c1d14782550962bbfa50deae8469fc695826baff","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.1.9.tgz","fileCount":71,"integrity":"sha512-3XPKqz5fVikCbYI4S5KZGlgwcJUUpiqwjZT2Yg4f0SzGc82EtfmB4cblEyflVIuZpddDGvM+M5f6h/AwE0CosA==","signatures":[{"sig":"MEUCIQCFhn5P1FGwNySqS0T3bieO9WvVJE2+rppbzrYwQgzrogIgCzY43AE+uAv3xw+FRRqrc3nSWOAkAuJnnf8VC63oyHA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":267215},"type":"module","engines":{"node":">=18"},"gitHead":"62470d2b8d34481f010e5b5d766ec418dda10dfc","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.4","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.1.9_1774358510547_0.7303546773339513","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"juliacode","version":"0.1.10","license":"GPL-3.0-only","_id":"juliacode@0.1.10","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"65042af90d36a7cb4cc156aa2d1cc3b5ba48d0af","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.1.10.tgz","fileCount":71,"integrity":"sha512-lD7SO7OQMvwJ26n8nhxJKjPlK5n119dmTWczqQv090Okm4eBM5s+/XI1uFlg/DmRv667OdjYTvHWDpuurGu5BA==","signatures":[{"sig":"MEQCIFPoUiYrXGH/xN2LJNozrRgAr6PS5boEONffiCqo1y9gAiAJ4tDiRO7Q7yl4ORokqX2PKNi1ZgGugk/eXP7QUtEHfw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":267216},"type":"module","engines":{"node":">=18"},"gitHead":"82e4508f04f7e0ec1b1476d20bd869f0521b82db","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.4","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.1.10_1774359189357_0.5680079439044243","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"juliacode","version":"0.1.11","license":"GPL-3.0-only","_id":"juliacode@0.1.11","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"2d5c02bf034057712b1a05331576c56703a4c422","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.1.11.tgz","fileCount":79,"integrity":"sha512-uRoilv5HQY8iZaIH2OkvgDD2ZPb5e3qwLHn9Jcg61luq2ruUaYgktfS8k7Rh0b5eR7ILjx+c47gIaztkN3Xvgg==","signatures":[{"sig":"MEQCIDGBED0Tu0b6b9etFToLFzOO/2Y2yUOdfnEQtjVOqrxxAiBx4Xk1mnZr3JdFQedAiS3jPW/Sagivs7bsbSKgqPGT3Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":276709},"type":"module","engines":{"node":">=18"},"gitHead":"03820a46036a7bcf3b6756c5cf38f4645f2f947b","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.4","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.1.11_1774359851071_0.08396856405004716","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"juliacode","version":"0.1.12","license":"GPL-3.0-only","_id":"juliacode@0.1.12","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"01890809ae2a2da719df1af747dacee0205e8e1c","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.1.12.tgz","fileCount":79,"integrity":"sha512-pdDaaeEPIdNCCajE7IyQrnsaCCC7p/b5b7qVt62Nq6jmQhPyZNg0D0EdX3KvQU3rwyWWle6ugnK7XlJgHjLQfw==","signatures":[{"sig":"MEUCIBNnNPASZ06uCFvMm6d5/lOuK6+LNQWxlTO2TKXbdW/tAiEAmwNOgVHOHywsGvU7dEJ0oQC6ujcSXkd0MJttdACVPFA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":277040},"type":"module","engines":{"node":">=18"},"gitHead":"32be80e0b45ef1ab91736affd30e6f94bec11b1e","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.4","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.1.12_1774363500662_0.16062460958546487","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"juliacode","version":"0.2.0","license":"GPL-3.0-only","_id":"juliacode@0.2.0","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"5f46471f8b2466f0bbb1e1c780d28e50e328174b","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.2.0.tgz","fileCount":80,"integrity":"sha512-uiOvOUvWfNhTBgjA3JFdMZf/BWqkGJGSBil04Q9IOM4lGxoz4FTPIWxU/Zqzz+7U2AucLMlJ5kDOHnb3QClwqg==","signatures":[{"sig":"MEYCIQD72/7h9e1/wDafmfhLpD/CrAHkad30vMxP31o+xIHUYgIhAPJ0hheCpNyIhGZQtkQG3XnJaZYzSX3+b1E3kE9d4Yab","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":285808},"type":"module","engines":{"node":">=18"},"gitHead":"45c0f263f73b26a6cceb4d1ac038eeb68462d98f","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.4","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.2.0_1774475232607_0.6164195375812718","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"juliacode","version":"0.2.1","license":"GPL-3.0-only","_id":"juliacode@0.2.1","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"922fb01a7f1948225e305617e4ccf9295079c90d","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.2.1.tgz","fileCount":80,"integrity":"sha512-AiU32NFewiKtxcC4mw4iGNiamQ/ZHfXEv5M+ao191ANV5fLcIVxrDOBnA8EzrnblADxoCUFw4mUiiHxvj6kwvA==","signatures":[{"sig":"MEUCIEBlA1tD1ciuk3GUGDSD8UzORpyq7wMcdkl2YP07UNWkAiEAt8mc6ZzguR9sA/n5S890JFwkmYsfy+E1EKRaZuQZA0s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":286700},"type":"module","engines":{"node":">=18"},"gitHead":"e52a650752d6b8c062fbc4a3638a34a8c590f920","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.4","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.2.1_1774477285462_0.7991130823514723","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"juliacode","version":"0.3.0","license":"GPL-3.0-only","_id":"juliacode@0.3.0","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"2e9da653782b825a50ad5e089aba9ea2827d5d62","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.3.0.tgz","fileCount":80,"integrity":"sha512-tV0E9sWHJ52pkbe23KAzZpEP2U3pgLWi48iIuRRRhYjMLT6gNdl9ObOmXRu0a4LHMk/J9X3zFxIsgQnAzgb1gA==","signatures":[{"sig":"MEQCIC0Ngjh91L5QQGTBL7QY0tHYN7RBTykcwoZkSPqpGtajAiAbTRAdjCsYodLGHtgsEbS8icDbnJSgR/JxPD/uangUbQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":289177},"type":"module","engines":{"node":">=18"},"gitHead":"566f018936af811de819900a9e2382f7d8bbb020","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.4","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.3.0_1774531873209_0.1314723025643747","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"juliacode","version":"0.3.1","license":"GPL-3.0-only","_id":"juliacode@0.3.1","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"fa0b0ed7763457389750c99b91b738f8649e3d80","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.3.1.tgz","fileCount":80,"integrity":"sha512-9PrtdWF1QeouiNDf7AEuEerv1smV0Gd0FGN/O9xBe7CGDmYsNOG8/nivYXGFrRsR5u4+gAVo+97r7Wm4yApbGA==","signatures":[{"sig":"MEUCIDcK1uziK2SuHmcO3LNxcBmNrjHzYUQwOxd1nzmiYGkZAiEA9KEa1JHF/NvYITFnaQ/R4djLzAIs19JKqfm8rkrRH1w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":289639},"type":"module","engines":{"node":">=18"},"gitHead":"8e1f12ee5797737d318efb073c1e1a1fdfc8a498","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.4","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.3.1_1774633418147_0.2530511206074515","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"juliacode","version":"0.3.2","license":"GPL-3.0-only","_id":"juliacode@0.3.2","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"d90e0b2bc0b8a59dae90082f29c6b1e1bdc07950","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.3.2.tgz","fileCount":80,"integrity":"sha512-e20sh78IQD/NEuEkwH5mF7ET3dBM2awl84zIAbVH+axL4U2/Z/yH89gjI88kRynNITDcmioRJILF4HJ3WtKtYA==","signatures":[{"sig":"MEUCIHpPBaLS2h82JtIdz9VxVIZXR0PyyXQTu4Ocus1s4hW6AiEA87b8x6ccf8Bg5aeDQh0C5Uc1s+9He3P68qqVkJpNe04=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":303358},"type":"module","engines":{"node":">=18"},"gitHead":"e03f49f0072936163f63f7eab8e255ab40648497","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.4","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.3.2_1774901353641_0.7753499694475512","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"juliacode","version":"0.3.3","license":"GPL-3.0-only","_id":"juliacode@0.3.3","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"b19d0778c32e571ceb084c178f195ee02160d67f","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.3.3.tgz","fileCount":80,"integrity":"sha512-/38VhPlKRAeBHXtCAG5LAWxq/R95k3DYQ7JOp2fox6zNOk4pcgTDpcINhIcqyLjTimlGAQpOnoviJwKBifEmrg==","signatures":[{"sig":"MEUCIQCMH45+UqbpBXzivciRSUUISHcrH0EF0C9HSPX6obPuPgIgWOgzRGnVeQNI6RVr8XTVeSFdlvZGd9B+hRhH6RRJnAY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":304863},"type":"module","engines":{"node":">=18"},"gitHead":"ec24546b0c1b7e9e58517ec1082e0ad1429fb45f","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.7","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.3.3_1775309609113_0.86646982514644","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"juliacode","version":"0.3.4","license":"GPL-3.0-only","_id":"juliacode@0.3.4","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"cce6edeebd10bbad63795ea02bd1d16c957fd76f","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.3.4.tgz","fileCount":80,"integrity":"sha512-ub2PnH7JES2vu9RwXYrvao9F7zKY0Iw7HGn+uaoO7LkJYMW4mpjgKi+UljeUlcAKSD+mVaUWDFYr///pTbBDHg==","signatures":[{"sig":"MEUCIF2STEAjbwb/vm4M1KiWL04At0/wW/j1RLGgTlAWn5JxAiEApr0B8NR7L+wCwgaYbyMeRqgljG2yjIe5rZrvqTGBihs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":281527},"type":"module","engines":{"node":">=18"},"gitHead":"5c08e0329b4cc98f75f145d2adb20cc8e67b55e1","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.7","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.3.4_1775571018170_0.9319496102570695","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"juliacode","version":"0.3.5","license":"GPL-3.0-only","_id":"juliacode@0.3.5","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"9337993eb0c72ad80eadddd504ed6b156e8dfd31","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.3.5.tgz","fileCount":80,"integrity":"sha512-5KMpeEJxjLsPxIzoeAQPrmdYLG2pBzcleeMgtlQ+8joKJ09UC0/+pdBGE493i7YCnCcMChVsLc1nPWrsDK4zfQ==","signatures":[{"sig":"MEUCIGpkdqKKMeUO9LM1m2KhpUZGcSK8CiVGMZHUDM9LOkxCAiEAxfJuRauSbpvSgu1XgZFmiudH6Mr9Q20f+MW5i25+eTg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":283597},"type":"module","engines":{"node":">=18"},"gitHead":"8a77e9922c0611aeb78583c827e0e9fa8f5b2ce0","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.7","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.3.5_1775662708874_0.38605945676146014","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"juliacode","version":"0.3.6","license":"GPL-3.0-only","_id":"juliacode@0.3.6","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"763007b8756de1f952b381852eb49ef3683dda11","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.3.6.tgz","fileCount":80,"integrity":"sha512-iLcgD6xJSHajuVJ2Yd31yXXVgp/Nvr18hUzzoWTiWvAzbgG8b5iIzbq0+pmumHG9nmnQP24HnR3GUAZQNaAXyw==","signatures":[{"sig":"MEYCIQDMzkd0Wsg4QFXzCykHL6IE+FwVnW+Z062Bbg0Z6m5y+QIhAPc3e4OCfyrjL2R8Z7/POepyma69iytdQTJDFGbUz3U5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":283597},"type":"module","engines":{"node":">=18"},"gitHead":"d755c5860f723326690505c57e2f91c8bfca354d","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.7","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.3.6_1775746842790_0.5009970063571079","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"name":"juliacode","version":"0.3.7","license":"GPL-3.0-only","_id":"juliacode@0.3.7","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"4ff6fed83e7506d404d3b4e3fb08c1613533246d","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.3.7.tgz","fileCount":82,"integrity":"sha512-r4lbRHx7Iju/0awSRIGARfiC3lauKDarWVHZlO1ZwjlOL7pEMQUvKv7adNrr8ynt0T6JHIC9aqjgkqX67IGqDw==","signatures":[{"sig":"MEQCIGMjWEPyATXItO9OM1gDBmIZBwzu/c2ALZ6guuJ9Cu3cAiBo8X97ek5qmQr46GwCBMRoG7ixoLA2oqAIB/Z0Yqft7A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":292442},"type":"module","engines":{"node":">=18"},"gitHead":"3b5ad778162d2ab322a2a7e3bcc7ef71d55eca38","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.7","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.3.7_1775916774472_0.7855718970209875","host":"s3://npm-registry-packages-npm-production"}},"0.3.8":{"name":"juliacode","version":"0.3.8","license":"GPL-3.0-only","_id":"juliacode@0.3.8","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"a78ea6ebec69662606258afb49680908d8f3eb76","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.3.8.tgz","fileCount":82,"integrity":"sha512-5LnTR+l6h6JANiIw3xno93LZrNjz6YD5+edexcNhsJShsctnD1qt1Y6aE0RmSMThW6iBJRXxDsllQdTUllq0KA==","signatures":[{"sig":"MEUCIFdmmZcEAUS0SQcWrHPUyVY0ulv7EqCaaJFePVNXC16lAiEAugcVJMzS2C2ZIyARm37w84EaMISMdK1S0WTxs70kEwA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":293069},"type":"module","engines":{"node":">=18"},"gitHead":"ca42afefa194f62daa04ac513955b84bdc59e13d","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.7","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.3.8_1776087832791_0.6295333499465283","host":"s3://npm-registry-packages-npm-production"}},"0.3.9":{"name":"juliacode","version":"0.3.9","license":"GPL-3.0-only","_id":"juliacode@0.3.9","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"42fe4baeec2911e80aa256fbddf3b78307bcc958","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.3.9.tgz","fileCount":83,"integrity":"sha512-9hQblQphLq44nOW3CJBSzdvCkrBjGhVbBrT5LtbEmcG2iel5T5oODS0uI9yXefk+hv49jHDXWB+G2OsK7WdqjA==","signatures":[{"sig":"MEQCICIUCSMLu4yqcb9W15oFRiEJq8eNSGBd7FpsgkTxG5K4AiBOpr8vA4fRXPPkX/aVfa0vkikHK9ce2XisSj8odA0gFQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295447},"type":"module","engines":{"node":">=18"},"gitHead":"324cd1a22b179fecc0c19d8b01c2ad39251ecde2","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.7","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.3.9_1776203452267_0.8409026201118559","host":"s3://npm-registry-packages-npm-production"}},"0.3.10":{"name":"juliacode","version":"0.3.10","license":"GPL-3.0-only","_id":"juliacode@0.3.10","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"131517e271404ac84e43eb34e04becf3ba7b710d","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.3.10.tgz","fileCount":84,"integrity":"sha512-qdHglAeq4G0DvR/M9/4Zl7q11i42DTOZVtYnpztb0wHZaq4Sy/nVae4gfXwA+pLPGttt1mjsagiqrXr0Umzc6g==","signatures":[{"sig":"MEUCIQDXmFCPjS/zzaXfsm0qHHHO9yx8SxDHTBi9y80tIsST0wIgf+w9QpDBtvtF8ne9Ogmvul8Md3IT6545fNsW1mbD4VI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":296530},"type":"module","engines":{"node":">=18"},"gitHead":"25d82ece7f36a02c864e5d65263ab24ba2837ca3","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.7","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.3.10_1776262371977_0.8267007608375421","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"juliacode","version":"0.4.0","license":"GPL-3.0-only","_id":"juliacode@0.4.0","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"467e8d2a2d19c2de044ec9406aaedc02fcfdb120","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.4.0.tgz","fileCount":90,"integrity":"sha512-AuvsOD9RgWfkPVqTB8pd+v9mS6F9chPbROnJBui6+8tY04Ol1uzRmwNNVhV7NzyBOpAiIKXZp1B17pSJBZofWQ==","signatures":[{"sig":"MEQCIGnosrSB3c1YanoW7Fp2mr/y/YhT3oO8Uw6RGawov8KNAiBKcB1Xb8d1PZhEMDhHdoeiRJA5xomjxVRU+SmIa8LoAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":324231},"type":"module","engines":{"node":">=18"},"gitHead":"90cb4dc1a23a0ceca253ad19453400cd86ab35ec","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.7","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.4.0_1776717959579_0.6567792787905884","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"juliacode","version":"0.5.0","license":"GPL-3.0-only","_id":"juliacode@0.5.0","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"84d47d498df88ab28c737174f0c0c2969a4106c6","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.5.0.tgz","fileCount":116,"integrity":"sha512-1we4biQ40cfMt3O+fDR4US77V+dfB1tIOY9hwMa8u8p4D++xDHuxqB25J7IBYDI7yyNrDS72otyud68+IEcOMw==","signatures":[{"sig":"MEUCIQDXQ6ViwWcdQnLj8fo5JQ73wvK7ar1lyDdDXOU7H66lNgIgGsouXuesP3pT5osQA0l2KquPsIURms+mrRnZsfkVs3A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":350480},"type":"module","engines":{"node":">=18"},"gitHead":"6dbd76d8110b2430bf75f43ea861066daaec2b8f","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.7","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.5.0_1777058898323_0.6049829588696951","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"juliacode","version":"0.5.1","license":"GPL-3.0-only","_id":"juliacode@0.5.1","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"7143e07ce935f759ae1550221c4151ea511711ac","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.5.1.tgz","fileCount":116,"integrity":"sha512-obEaftRlfDKMsoyljgds/yiVQScJPeLI1uWZrR1Dlsbe99efmn/FQzk3VNQo1PygERFA5xylaDqfILFdSNQcnw==","signatures":[{"sig":"MEYCIQDCnW70mCsva9jrI0GxayWZFE58WR9KtfZ0IUi9cLWdvAIhAJvXeyacsMEYUKbN9q533jWbKYgJQ9GdF/iGxQpaYYW3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":351887},"type":"module","engines":{"node":">=18"},"gitHead":"dbc37c824fa56a4738f21ff142eefeb2b7f19207","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.7","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.5.1_1777389516577_0.05151266006842725","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"juliacode","version":"0.5.2","license":"GPL-3.0-only","_id":"juliacode@0.5.2","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"9493ea4cee7f8918e6b738c49c8183ba734a0298","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.5.2.tgz","fileCount":116,"integrity":"sha512-q4lFxhekHWGStImyGpUQSejn6Ok9PHKztd8MhvsR/EohCOtJ0nJnDGQtExs5sguy0JJO9GWLzAG7pznje8luTQ==","signatures":[{"sig":"MEQCIGAD1IyI6eYfVXHlQoV8KRq7RCw85fp8NKqZaNyc8o/rAiA/NnafxJp55XkUYNMO0bKjQCTZ9eLqL/vdiJU26jn5zQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":360237},"type":"module","engines":{"node":">=18"},"gitHead":"dc74ee4c7b961ad856a89177cb8832762ab9e573","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"palamardev","email":"apalamardev@gmail.com"},"_npmVersion":"10.9.7","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","better-sqlite3":"11.10.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.5.2_1777732809615_0.7602582333490209","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"juliacode","version":"0.6.2","license":"GPL-3.0-only","_id":"juliacode@0.6.2","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"homepage":"https://github.com/aleksanderpalamar/julia-code#readme","bugs":{"url":"https://github.com/aleksanderpalamar/julia-code/issues"},"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"ab0eaea0c36212f02f83d9f0f7cfaa234daa1acd","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.6.2.tgz","fileCount":157,"integrity":"sha512-tqoTnJUxT7yvCQ4EGNAfjNWE7WvtJzHjVeowsEsU9gmw4L1HkBk6Domeq9pO606RDcPmTi0BBEEtVgSiD+AB/w==","signatures":[{"sig":"MEUCIQDhKnkc4IAoQ4ZkeNYJxawDFajM7vbvOEX9vznzmVbIQAIgFMU9tbJOPISRtzb/OPhAJdqlGjmA6fUbFqksiERiIFc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/juliacode@0.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":372182},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"963602e70bbacdb5f98dc11cc4f3f0e4c9731e0b","scripts":{"dev":"tsx watch juju.ts","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3181ee5-5c6d-4cc1-bfcc-6a0c2e6f24f7"}},"repository":{"url":"git+https://github.com/aleksanderpalamar/julia-code.git","type":"git"},"_npmVersion":"11.11.0","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"24.14.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","cli-highlight":"2.1.11","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.6.2_1778516304807_0.630205238469373","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"juliacode","version":"0.7.0","license":"GPL-3.0-only","_id":"juliacode@0.7.0","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"homepage":"https://github.com/aleksanderpalamar/julia-code#readme","bugs":{"url":"https://github.com/aleksanderpalamar/julia-code/issues"},"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"fe0571ecc8c4b2473b841d36e17085604f375561","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.7.0.tgz","fileCount":154,"integrity":"sha512-XzCadlQ/KrLyd4auzqQQXnBZfoLdhjrJE98Y/tvbl/jcLBYK46OESVhqMqHsLUvGPv5YxgxQu68iKCNSBUplhg==","signatures":[{"sig":"MEUCIQD+OblYDTUZWpGPNftyuZpTPyQjXo1Cw3Aq6rXAeVnQSAIgPg1zK1QrOaNeUhml4RYXc+fRS3nBUqyb1PShVasuqQg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/juliacode@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":371170},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"3b8784e02bee80b5f93061eb1dae755cdd4b4f59","scripts":{"dev":"tsx watch juju.ts","knip":"knip","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3181ee5-5c6d-4cc1-bfcc-6a0c2e6f24f7"}},"repository":{"url":"git+https://github.com/aleksanderpalamar/julia-code.git","type":"git"},"_npmVersion":"11.11.0","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"24.14.1","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","knip":"5.39.4","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.7.0_1778771757790_0.44984880242077185","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"juliacode","version":"0.8.0","license":"GPL-3.0-only","_id":"juliacode@0.8.0","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"homepage":"https://github.com/aleksanderpalamar/julia-code#readme","bugs":{"url":"https://github.com/aleksanderpalamar/julia-code/issues"},"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"09fb9ec23f0e94ea78867b4a4d909b9791332801","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.8.0.tgz","fileCount":174,"integrity":"sha512-OzSGOreMd1ZE7Ppn4ED0kDa3nThg+Q8o6m4hDwKmhgjvmZF24c1nUg6nQBGjvO/b0eQN3I3pa3M4TiOB/C8S9w==","signatures":[{"sig":"MEYCIQCruABHKSBvPLN3d+inDK3PNTwW59RlZyjCscTwxxa+7gIhAO2wg0tYys7VQhXq0zfzt7beHj2Lxsr1grf4M8v1a26x","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/juliacode@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":436942},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"95e7f144124fe98c9ba7323bc6e25bbd7bd885ad","scripts":{"dev":"tsx watch juju.ts","knip":"knip","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3181ee5-5c6d-4cc1-bfcc-6a0c2e6f24f7"}},"repository":{"url":"git+https://github.com/aleksanderpalamar/julia-code.git","type":"git"},"_npmVersion":"11.12.1","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"24.15.0","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","knip":"5.39.4","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.8.0_1778866418368_0.6516434014885388","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"juliacode","version":"0.8.1","license":"GPL-3.0-only","_id":"juliacode@0.8.1","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"homepage":"https://github.com/aleksanderpalamar/julia-code#readme","bugs":{"url":"https://github.com/aleksanderpalamar/julia-code/issues"},"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"2429d479244becac75ca6c803b7998a63508a114","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.8.1.tgz","fileCount":174,"integrity":"sha512-4KLaSg9Em+KTRW72js91u/OnhqJDZHDvwsAzExgTuBk0YFd2YnK+2S6yX8cRckWI7gJYFaQFZTZyGjoCZ/8rpw==","signatures":[{"sig":"MEUCIC1oUEZs7ekl2wXLZhXBawA+nrSnkBFN+wP+XrEhUf8aAiEAvyoh/3KJV/CH/smCpdP7nTm8tLiMr3Tr8IzGG3CmyRI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/juliacode@0.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":437699},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2183d4531f3a877a75068697b768ac72bc984229","scripts":{"dev":"tsx watch juju.ts","knip":"knip","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3181ee5-5c6d-4cc1-bfcc-6a0c2e6f24f7"}},"repository":{"url":"git+https://github.com/aleksanderpalamar/julia-code.git","type":"git"},"_npmVersion":"11.12.1","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"24.15.0","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","knip":"5.39.4","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.8.1_1778940228832_0.948693306797461","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"juliacode","version":"0.9.0","license":"GPL-3.0-only","_id":"juliacode@0.9.0","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"homepage":"https://github.com/aleksanderpalamar/julia-code#readme","bugs":{"url":"https://github.com/aleksanderpalamar/julia-code/issues"},"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"15676b3b063aaca7a71a1c77376c6085ab21cb28","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.9.0.tgz","fileCount":177,"integrity":"sha512-G0zRbK0Z/J69ZA2miyLaE8TPAz+3EqsD2nGsMZUibHlbw8bbl/+zkLcELnovgrno0LWnAlYxDfGA341rC16m1w==","signatures":[{"sig":"MEUCICzNVnq1ImU1EyQv+dpMiBadCy4Zm9P/21seqaPIq3MyAiEAwVwBXOIeQRq8Ao3Q0C0DuvxRI0bUkYoUY9kGk1gblPM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/juliacode@0.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":458553},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"217fe695c246793b744eaff81dcef93e3abb9e5a","scripts":{"dev":"tsx watch juju.ts","knip":"knip","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3181ee5-5c6d-4cc1-bfcc-6a0c2e6f24f7"}},"repository":{"url":"git+https://github.com/aleksanderpalamar/julia-code.git","type":"git"},"_npmVersion":"11.12.1","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"24.15.0","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","knip":"5.39.4","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.9.0_1779115282803_0.9475870835786635","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"juliacode","version":"0.10.0","license":"GPL-3.0-only","_id":"juliacode@0.10.0","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"homepage":"https://github.com/aleksanderpalamar/julia-code#readme","bugs":{"url":"https://github.com/aleksanderpalamar/julia-code/issues"},"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"252a077803f6a9033203ff6e8771741fda15d12b","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.10.0.tgz","fileCount":180,"integrity":"sha512-CiSjGimRKaMBgappy+MJr5JkWLDWypeCjzKG4PDVXWj9lkJLPvdAJSm/dgdS35KEAIxnyyyxM/DqdB3TTY055Q==","signatures":[{"sig":"MEUCIEa6T4q7G70VqKS/cZ6yjlrFetKZ3Yo1vBz6E5XZ0pAjAiEArVEJs2r9bcBQL/LZZenMBD0IzV0TjrCxR301mUA4gLo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/juliacode@0.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":469406},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"db200c3c2b3c880e1a539e14c50cef79f0b4509f","scripts":{"dev":"tsx watch juju.ts","knip":"knip","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3181ee5-5c6d-4cc1-bfcc-6a0c2e6f24f7"}},"repository":{"url":"git+https://github.com/aleksanderpalamar/julia-code.git","type":"git"},"_npmVersion":"11.12.1","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"24.15.0","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","knip":"5.39.4","vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.10.0_1779892944427_0.047497671912054784","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"juliacode","version":"0.11.0","license":"GPL-3.0-only","_id":"juliacode@0.11.0","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"homepage":"https://github.com/aleksanderpalamar/julia-code#readme","bugs":{"url":"https://github.com/aleksanderpalamar/julia-code/issues"},"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"1622ebb5f949dccaae04b9d2a9e60ef91ba75943","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.11.0.tgz","fileCount":181,"integrity":"sha512-KVZuFQKByQcRcs0ozPDGFvisyqiIlJUOUAEfMNE+XjV2UnUw+KgwAyj2CaJjUwmmP5v5xx0dPHFaormO9G1yDg==","signatures":[{"sig":"MEUCIE1BJ2XBaGUIheqVW5CZMUqpoNmT1vRrafmuWDYVItJhAiEA2QNMhLt2JkyODWHc+284ftqCqYnf4tgm0dlq8oJsI18=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/juliacode@0.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":488042},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"cac8c789c61bfa59d67ef8e41ea650db9ff70f21","scripts":{"dev":"tsx watch juju.ts","knip":"knip","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3181ee5-5c6d-4cc1-bfcc-6a0c2e6f24f7"}},"repository":{"url":"git+https://github.com/aleksanderpalamar/julia-code.git","type":"git"},"_npmVersion":"11.16.0","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","knip":"5.39.4","vitest":"^3.2.7","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.11.0_1785789502498_0.9343399988453942","host":"s3://npm-registry-packages-npm-production"}},"0.11.1":{"name":"juliacode","version":"0.11.1","license":"GPL-3.0-only","_id":"juliacode@0.11.1","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"homepage":"https://github.com/aleksanderpalamar/julia-code#readme","bugs":{"url":"https://github.com/aleksanderpalamar/julia-code/issues"},"bin":{"juju":"dist/juju.js"},"dist":{"shasum":"2836617dc7478ebf34b518d9f67d440d2051ede7","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.11.1.tgz","fileCount":193,"integrity":"sha512-U+ESX7FsMh/9wl461S7lmTIlTK6gaAeri1/JkxHF3iZfBiHhvKFk3c9la7JkWJGoBdxZ8mTx92KNZMi4GtKJwQ==","signatures":[{"sig":"MEYCIQCsl4bKy+D4L6ykUDqo+MCoL2Nlk+8Muo/KsFNoXLbpfwIhAJyPD4NB+AfAqeN/GIjftL4QyZ/wilw07aZZkDdVbQpU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/juliacode@0.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":511806},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"65990f883a782414fb35e113fa6db753d082606a","scripts":{"dev":"tsx watch juju.ts","knip":"knip","test":"vitest","build":"tsc && node scripts/fix-shebang.mjs","start":"tsx juju.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3181ee5-5c6d-4cc1-bfcc-6a0c2e6f24f7"}},"repository":{"url":"git+https://github.com/aleksanderpalamar/julia-code.git","type":"git"},"_npmVersion":"11.17.0","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ink":"5.2.1","zod":"3.25.76","react":"18.3.1","dotenv":"16.6.1","marked":"15.0.12","minimatch":"10.2.4","ink-spinner":"5.0.0","ink-text-input":"6.0.0","marked-terminal":"7.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","knip":"5.39.4","vitest":"^3.2.7","typescript":"5.9.3","@types/node":"22.19.15","@types/react":"18.3.28","@types/minimatch":"5.1.2"},"_npmOperationalInternal":{"tmp":"tmp/juliacode_0.11.1_1786463581406_0.6277760286558027","host":"s3://npm-registry-packages-npm-production"}},"0.11.2":{"name":"juliacode","version":"0.11.2","description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","license":"GPL-3.0-only","repository":{"type":"git","url":"git+https://github.com/aleksanderpalamar/julia-code.git"},"homepage":"https://github.com/aleksanderpalamar/julia-code#readme","bugs":{"url":"https://github.com/aleksanderpalamar/julia-code/issues"},"type":"module","bin":{"juju":"dist/juju.js"},"engines":{"node":">=24.0.0"},"scripts":{"start":"tsx juju.ts","dev":"tsx juju.ts","build":"tsc && node scripts/fix-shebang.mjs","prepublishOnly":"npm run build","test":"vitest","knip":"knip"},"dependencies":{"dotenv":"16.6.1","ink":"5.2.1","ink-spinner":"5.0.0","ink-text-input":"6.0.0","marked":"15.0.12","marked-terminal":"7.3.0","minimatch":"10.2.4","react":"18.3.1","zod":"3.25.76"},"devDependencies":{"@types/minimatch":"5.1.2","@types/node":"22.19.15","@types/react":"18.3.28","knip":"5.39.4","tsx":"4.21.0","typescript":"5.9.3","vitest":"^3.2.7"},"gitHead":"4d46de73e491feab458eb2e208b41e525cd9df89","_id":"juliacode@0.11.2","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-kpwOsH4igRX5+S3x7F9rN9faByDa6oxsZuVwXZDHKzd0Nt8yLaG4qD8LsP8U7TzVZZWA6bim7LSJjQZoxMhSdw==","shasum":"d28488e576080c7029481f0f144d16115c26dd4c","tarball":"https://registry.npmjs.org/juliacode/-/juliacode-0.11.2.tgz","fileCount":196,"unpackedSize":519761,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/juliacode@0.11.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCID4e6kQJ25najcHDgTHEaYnf2upTtZV/3t1w+ow1I7BfAiEArhkYPtmyT8yRqoQEhiS+1Wc0gZgB5GdBqg4FsmjS4y0="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3181ee5-5c6d-4cc1-bfcc-6a0c2e6f24f7"}},"directories":{},"maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/juliacode_0.11.2_1786996490375_0.8349607843642268"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-23T14:26:36.147Z","modified":"2026-08-17T19:54:51.161Z","0.1.0":"2026-03-23T14:26:36.312Z","0.1.1":"2026-03-23T14:56:28.455Z","0.1.2":"2026-03-23T15:07:48.496Z","0.1.5":"2026-03-23T18:23:34.469Z","0.1.6":"2026-03-23T22:45:12.237Z","0.1.7":"2026-03-24T13:03:28.151Z","0.1.8":"2026-03-24T13:16:39.645Z","0.1.9":"2026-03-24T13:21:50.694Z","0.1.10":"2026-03-24T13:33:09.525Z","0.1.11":"2026-03-24T13:44:11.287Z","0.1.12":"2026-03-24T14:45:00.806Z","0.2.0":"2026-03-25T21:47:12.765Z","0.2.1":"2026-03-25T22:21:25.620Z","0.3.0":"2026-03-26T13:31:13.352Z","0.3.1":"2026-03-27T17:43:38.288Z","0.3.2":"2026-03-30T20:09:13.787Z","0.3.3":"2026-04-04T13:33:29.264Z","0.3.4":"2026-04-07T14:10:18.339Z","0.3.5":"2026-04-08T15:38:29.026Z","0.3.6":"2026-04-09T15:00:42.926Z","0.3.7":"2026-04-11T14:12:54.658Z","0.3.8":"2026-04-13T13:43:52.969Z","0.3.9":"2026-04-14T21:50:52.413Z","0.3.10":"2026-04-15T14:12:52.187Z","0.4.0":"2026-04-20T20:45:59.713Z","0.5.0":"2026-04-24T19:28:18.499Z","0.5.1":"2026-04-28T15:18:36.723Z","0.5.2":"2026-05-02T14:40:09.797Z","0.6.2":"2026-05-11T16:18:25.048Z","0.7.0":"2026-05-14T15:15:57.954Z","0.8.0":"2026-05-15T17:33:38.534Z","0.8.1":"2026-05-16T14:03:49.056Z","0.9.0":"2026-05-18T14:41:22.984Z","0.10.0":"2026-05-27T14:42:24.571Z","0.11.0":"2026-08-03T20:38:22.731Z","0.11.1":"2026-08-11T15:53:01.535Z","0.11.2":"2026-08-17T19:54:50.512Z"},"bugs":{"url":"https://github.com/aleksanderpalamar/julia-code/issues"},"license":"GPL-3.0-only","homepage":"https://github.com/aleksanderpalamar/julia-code#readme","repository":{"type":"git","url":"git+https://github.com/aleksanderpalamar/julia-code.git"},"description":"Julia Code (juju) - AI coding assistant TUI powered by local models via Ollama","maintainers":[{"name":"palamardev","email":"apalamardev@gmail.com"}],"readme":"🌐 [English](README.md)\n\n# Julia Code\n\nAssistente de programacao IA que roda no terminal, alimentada por modelos locais via [Ollama](https://ollama.com). Possui sessoes persistentes, memoria de longo prazo, execucao de ferramentas autonoma e orquestracao paralela de subagentes.\n\n```\n┌──────────────────────────────────────────────────┐\n│  julia> crie um servidor REST com 3 endpoints    │\n│                                                  │\n│  🔀 Tarefa complexa — spawnando 3 subagentes...  │\n│    → Subagente: endpoint GET /users              │\n│    → Subagente: endpoint POST /users             │\n│    → Subagente: endpoint DELETE /users/:id        │\n│  ✅ 3 completados, nenhuma falha                 │\n└──────────────────────────────────────────────────┘\n```\n\n## Requisitos\n\n- **Node.js** >= 18\n- **Ollama** rodando localmente (`http://localhost:11434`)\n\n## Instalacao\n\n```bash\nnpm i -g juliacode\n```\n\n## Uso\n\n### TUI (modo interativo)\n\n```bash\njuju                             # iniciar chat\njuju --session <id>              # retomar sessao existente\n```\n\n### Gateway HTTP\n\n```bash\njuju --gateway                                  # padrao: 127.0.0.1:18800\njuju --gateway --host 0.0.0.0 --port 3000      # host/porta customizados\n```\n\n**Endpoints:**\n\n| Metodo | Rota                     | Descricao                |\n| ------ | ------------------------ | ------------------------ |\n| `GET`  | `/health`                | Health check             |\n| `GET`  | `/sessions`              | Listar sessoes           |\n| `POST` | `/sessions`              | Criar sessao             |\n| `GET`  | `/sessions/:id`          | Detalhes da sessao       |\n| `GET`  | `/sessions/:id/messages` | Mensagens da sessao      |\n| `POST` | `/chat`                  | Chat (resposta completa) |\n| `POST` | `/chat/stream`           | Chat (SSE streaming)     |\n\nOs eventos de chat podem incluir `clear_streaming` quando uma resposta provisória\ndo modelo precisa ser descartada e `warning` quando a Julia não consegue recuperar\numa ação prometida. Os dois eventos são aditivos; `thinking`, `chunk`, eventos de\nferramenta, `done` e `error` mantêm seus payloads atuais.\n\n## Ferramentas\n\nA Julia tem acesso a 10 ferramentas que executa autonomamente:\n\n| Ferramenta | Descricao                                |\n| ---------- | ---------------------------------------- |\n| `exec`     | Executar comandos shell (git, npm, etc.) |\n| `read`     | Ler arquivos com numeros de linha        |\n| `write`    | Criar/sobrescrever arquivos              |\n| `edit`     | Substituir trechos de texto em arquivos  |\n| `glob`     | Buscar arquivos por padrao glob          |\n| `grep`     | Buscar conteudo com regex                |\n| `fetch`    | Acessar URLs, APIs e paginas web         |\n| `memory`   | Memorias persistentes entre sessoes      |\n| `sessions` | Gerenciar sessoes salvas                 |\n| `subagent` | Orquestrar subagentes paralelos          |\n\n## Subagentes (ACP)\n\nQuando habilitado, a Julia detecta automaticamente tarefas complexas e paralelizaveis, spawnando subagentes independentes com sessoes proprias. Cada subagente pode usar um modelo diferente.\n\n```\nOrchestration Run (run_id)\n├── SubagentRun 1 — web scraper   [gpt-oss:120b-cloud]   completed 2.3s\n├── SubagentRun 2 — csv processor [qwen3:8b]              completed 1.8s\n└── SubagentRun 3 — api server    [qwen3.5:397b-cloud]    completed 3.1s\n```\n\nTodas as runs sao persistidas no SQLite com status lifecycle (`queued` → `running` → `completed`/`failed`), timestamps e duracao.\n\n## Model Context Protocol (MCP)\n\nPara conectar um novo servidor de mcp basta editar `~/.juliacode/settings.json` e adicionar a sessão `mcpServers`:\n\n```json\n{\n  \"mcpServers\": {\n    \"filesystem\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"-y\",\n        \"@modelcontextprotocol/server-filesystem\",\n        \"/home/usuario\"\n      ],\n      \"env\": {}\n    }\n  }\n}\n```\n\nCada entrada em mcpServers é um servidor MCP com:\n\n| Campo     | Obrigatorio | Descricao                                    |\n| --------- | ----------- | -------------------------------------------- |\n| `command` | sim         | Comando para iniciar o servidor              |\n| `args`    | nao         | Array de argumentos (default: `[]`)          |\n| `env`     | nao         | Variaveis de ambiente extras para o processo |\n\nExemplo com múltiplos servidores:\n\n```json\n{\n  \"models\": { \"default\": \"qwen3:8b\" },\n  \"mcpServers\": {\n    \"filesystem\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/home/usuario\"]\n    },\n    \"github\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@modelcontextprotocol/server-github\"],\n      \"env\": { \"GITHUB_TOKEN\": \"ghp_seutoken\" }\n    },\n    \"sqlite\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@modelcontextprotocol/server-sqlite\", \"/caminho/banco.db\"]\n    }\n  }\n}\n```\n\nAo iniciar o Julia Code, ela conecta a cada servidor e registra as tools automaticamente. O agente verá tools com nomes como `mcp__filesystem__read_file`,\n`mcp__github__create_issue`, etc. E pode usá-las normalmente durante a conversa, se quiser remover um servidor, basta apagar a entrada e reiniciar.\n\n## Configuração\n\n### Settings file (`~/.juliacode/settings.json`)\n\n```json\n{\n  \"models\": {\n    \"provider\": \"ollama\",\n    \"baseUrl\": \"http://localhost:11434\",\n    \"default\": \"qwen3:8b\"\n  },\n  \"agent\": {\n    \"maxToolIterations\": 10\n  },\n  \"session\": {\n    \"compactionThreshold\": 6000,\n    \"compactionKeepRecent\": 6\n  },\n  \"storage\": {\n    \"dbPath\": \"./data/julia.db\"\n  },\n  \"acp\": {\n    \"enabled\": false,\n    \"autoOrchestrate\": false,\n    \"maxConcurrent\": 3,\n    \"subagentMaxIterations\": 15,\n    \"defaultModel\": null\n  },\n  \"memory\": {\n    \"semantic\": {\n      \"enabled\": false,\n      \"provider\": \"ollama\",\n      \"embeddingModel\": \"nomic-embed-text\",\n      \"rankingWeights\": { \"similarity\": 0.6, \"importance\": 0.3, \"recency\": 0.1 },\n      \"recencyHalflifeDays\": 30,\n      \"maxMemories\": 5,\n      \"availabilityCheckTtlMs\": 30000,\n      \"autoBackfillOnStart\": false\n    }\n  },\n  \"security\": {\n    \"allowRules\": [],\n    \"rateLimits\": {\n      \"enabled\": true,\n      \"perTool\": {\n        \"exec\": { \"perMinute\": 20, \"perSession\": 200 }\n      }\n    }\n  }\n}\n```\n\n### Limites de uso das ferramentas\n\nToda chamada de ferramenta passa por um orçamento por sessão antes de executar. O objetivo é conter um loop desgovernado — não racionar uso normal —, então os padrões são propositalmente folgados:\n\n| Ferramenta | Por minuto | Por sessão |\n|---|---|---|\n| `exec` | 20 | 200 |\n| `fetch` | 30 | 300 |\n| `subagent` | 5 | 40 |\n| demais | 60 | 600 |\n\nSobrescreva qualquer um deles em `security.rateLimits.perTool`, ou coloque `security.rateLimits.enabled` como `false` para desligar a verificação.\n\nQuando uma ferramenta estoura o orçamento, a chamada é recusada e o motivo volta para o modelo como observação de ferramenta — ele pode esperar, mudar de abordagem ou responder com o que já coletou. O orçamento é independente da aprovação: aprovar uma ferramenta, mesmo com \"aprovar tudo\", dispensa o prompt, não a cota. A blocklist de comandos é verificada primeiro, então um comando bloqueado continua bloqueado independentemente do orçamento restante.\n\nRecusas por cota aparecem no `/stats`, na seção `Security gate`.\n\n### Observabilidade\n\nCada passo de um turno vira uma linha JSON em `~/.juliacode/logs/events.jsonl`. Eventos do mesmo turno compartilham um `turnId`, então dois turnos da mesma sessão continuam separáveis:\n\n| Evento | Registra |\n|---|---|\n| `llm_call` | modelo, passe (`main` / `synthesis` / `correction`), duração, tokens de entrada/saída, quantidade de tool calls |\n| `tool_call` | nome da ferramenta, sucesso, duração |\n| `gate_decision` | nome da ferramenta, desfecho e qual regra decidiu |\n| `compaction` | tipo (`auto` / `emergency`), mensagens compactadas, tokens antes/depois |\n| `memory_retrieval` | candidatos, retornados, melhor score, disponibilidade do provider |\n| `retry` | tipo (`stream`, `empty`, `deterministic`, `tool-correction`, `intent-nudge`) |\n| `diagnostics` | resultado e duração da checagem do projeto |\n| `planner_decision`, `subagent_spawn`, `subagent_done` | ciclo de vida da orquestração |\n| `loop_end` | número de iterações e por que o turno terminou |\n\nUse `/stats` para ver isso agregado. Defina `JULIA_DEBUG=1` para espelhar cada evento no stderr, ou `JULIA_LOG_DIR` para gravar em outro lugar. O log é fire-and-forget e nunca afeta o fluxo de controle.\n\n### Skills customizadas (`~/.juliacode/skills/`)\n\nColoque suas próprias skills em `~/.juliacode/skills/` para estender a Julia. Elas são carregadas em toda sessão, globalmente — não precisa duplicar por projeto.\n\nO layout segue o mesmo padrão do Claude Code: um diretório por skill, com um arquivo `SKILL.md` dentro.\n\n```\n~/.juliacode/skills/\n├── review-pr/\n│   └── SKILL.md\n└── deploy-checklist/\n    └── SKILL.md\n```\n\nCada `SKILL.md` é um documento Markdown com frontmatter YAML opcional:\n\n```markdown\n---\nname: review-pr\ndescription: Revisar um pull request contra as convenções do time\nwhen_to_use: Quando o usuário pedir \"revisar PR\" ou colar um diff\nargument_hint: <numero-do-pr-ou-url>\nuser_invocable: true\nexpects_tools: true\n---\n\nO corpo do prompt da skill vai aqui. Use $ARGUMENTS para injetar o argumento informado pelo usuário.\n```\n\nComportamento:\n- O nome da skill vem do `name` do frontmatter; se ausente, é o nome do diretório.\n- Skills com `user_invocable: true` aparecem como slash commands (ex.: `/review-pr`).\n- `expects_tools` usa `true` por padrão; skills somente de diálogo podem defini-lo como `false` para desativar a recuperação de intenção sem ação em seus turnos.\n- Todas as skills customizadas entram no system prompt numa seção `User-Defined Skills (LOWER TRUST)` — elas não conseguem sobrescrever instruções do sistema.\n- Em caso de colisão de `name` com uma default embutida, a default ganha.\n- Cada `SKILL.md` é limitado a 50 KB e passa por scan de padrões de prompt injection antes de ser carregado; arquivos rejeitados são logados e ignorados.\n- Subdiretórios sem `SKILL.md` são ignorados e logados.\n\n### Hooks (`~/.juliacode/settings.json`)\n\nConfigure comandos shell que disparam em pontos específicos do agent loop. O schema espelha o sistema de hooks do Claude Code 1:1.\n\n> ⚠️ Hooks rodam comandos shell arbitrários com as permissões do seu usuário a cada evento que casar. Audite qualquer hook antes de adicionar. A Julia não faz sandbox.\n\n```json\n{\n  \"hooks\": {\n    \"PreToolUse\": [\n      {\n        \"matcher\": \"exec\",\n        \"hooks\": [\n          { \"type\": \"command\", \"command\": \"audit-shell.sh\", \"timeout\": 5000 }\n        ]\n      }\n    ],\n    \"UserPromptSubmit\": [\n      { \"hooks\": [{ \"command\": \"echo 'Lembrete: revisar segurança'\" }] }\n    ]\n  }\n}\n```\n\nEventos suportados: `PreToolUse`, `PostToolUse`, `UserPromptSubmit`, `Stop`, `SubagentStop`, `SessionStart`, `Notification`, `PreCompact`.\n\nCada hook recebe um payload JSON via stdin (`session_id`, `cwd`, `hook_event_name`, além de campos específicos por evento como `tool_name`, `tool_input`, `prompt`, `source`, etc.). Controle a Julia via:\n\n- **Exit code 0** — sucesso. Se o stdout for JSON `{ \"decision\": \"block\" | \"approve\", \"reason\": \"...\", \"hookSpecificOutput\": { \"additionalContext\": \"...\" } }`, a Julia respeita. Para `UserPromptSubmit`, `SessionStart` e `PreCompact`, stdout cru também é aceito e injetado como contexto adicional.\n- **Exit code 2** — erro bloqueante. `stderr` vira a razão do block e é exposta ao agent.\n- **Outros não-zero** — erro não bloqueante. Logado no canal MCP; o agent continua.\n\nO campo `matcher` é uma regex testada contra o nome da tool em `PreToolUse` / `PostToolUse`. Omita (ou use `*`) para casar com tudo. Em eventos que não são de tool, o campo não tem efeito.\n\nAnti-loop: quando um hook de `Stop` ou `SubagentStop` retorna `decision: \"block\"`, a Julia re-entra no loop uma vez e dispara o hook de novo com `stop_hook_active: true`. O hook deve respeitar essa flag na segunda chamada.\n\nO ambiente da Julia expõe `JULIA_HOOK=1` e `JULIA_HOOK_EVENT=<evento>` para todo processo de hook — útil para detectar recursão ou ramificar lógica. Timeout padrão por comando é 60s, customizável via campo `timeout` (em ms). `~/.juliacode/settings.json` é read-only para as tools da Julia, então o bloco `hooks` deve ser editado à mão — mesmo workflow usado para `mcpServers`.\n\n### Memória semântica (opcional)\n\nCom `memory.semantic.enabled: false` (default), a Julia injeta as 30 memórias mais recentes no system prompt — mesmo comportamento de antes.\n\nCom `memory.semantic.enabled: true`, a Julia usa embeddings (via Ollama `nomic-embed-text`) para ranquear memórias por relevância à entrada atual. Fluxo:\n\n1. Baixe o modelo de embedding: `ollama pull nomic-embed-text`.\n2. Flipe `memory.semantic.enabled` para `true` em `~/.juliacode/settings.json`.\n3. Rode `juju memory backfill` para popular embeddings das memórias já existentes.\n4. Se quiser que boots subsequentes retomem o backfill automaticamente, habilite `memory.semantic.autoBackfillOnStart: true`.\n\nSe o provider de embedding ficar indisponível a qualquer momento (Ollama offline, modelo faltando, erro de rede), a Julia degrada transparentemente para a injeção legada de memórias recentes — a aplicação nunca quebra por falta de embedding.\n\n### Inteligência de repositório (local)\n\nA Julia pode construir um índice semântico local do seu projeto para que código relevante seja injetado automaticamente no contexto da LLM — equivalente offline da feature \"repo-aware\" do Cursor, alimentado pelo mesmo `nomic-embed-text` do Ollama usado nas memórias. Nada sai da máquina. Duas peças:\n\n**Retrieval semântico automático.** A cada turn, o prompt do usuário é embedado e ranqueado contra os chunks indexados por similaridade cosseno; os top 5 (token-budgeted, com chunks do mesmo arquivo mesclados) são injetados como bloco de sistema junto das memórias. Filtrado por gating heurístico que pula saudações, meta-perguntas e prompts curtos sem tokens \"code-like\".\n\n**Menções `@filename`.** Referencie qualquer arquivo digitando `@<caminho>` na mensagem — o conteúdo é expandido inline antes do prompt ser enviado. Use Tab no dropdown fuzzy que aparece ao digitar `@`. Se o caminho não existir, fuzzy-match contra o índice salva typos (ex.: `@app.tsx` → `src/tui/app.tsx`). Menções dentro de blocos de código (fenced ou inline) são ignoradas, paths absolutos e `../` são rejeitados, arquivos >50 KB são truncados, e binários recusados.\n\n**Fluxo de indexação:**\n\n1. Baixe o modelo de embedding: `ollama pull nomic-embed-text`.\n2. No primeiro start, o auto-indexer constrói o índice em background a partir de `git ls-files` (respeita `.gitignore`, ignora binários e arquivos >1 MB, com cap de 5 000 arquivos).\n3. Use `/index` para re-indexar incremental, `/index force` para rebuild completo, `/index status` para inspecionar metadados, `/index abort` para cancelar uma execução em andamento.\n\n**Armazenamento.** Chunks (80 linhas com 20 de overlap) vivem na tabela `code_chunks` com hashes de conteúdo/arquivo para re-index incremental rápido — arquivos não modificados pulam o chunking, e chunks cujo conteúdo não mudou preservam seus embeddings existentes.\n\n**Degradação.** Se o Ollama estiver fora na hora de indexar, chunks são inseridos sem embeddings e o próximo `/index` retoma daí. Se estiver fora no momento da query, o bloco de retrieval é omitido silenciosamente — menções `@filename` continuam funcionando porque são puro I/O de arquivo. Quando o índice fica defasado em relação ao `HEAD` atual, uma dica única é emitida sugerindo um `/index` refresh.\n\n## Arquitetura\n\n```\njuju.ts                          # Entry point (CLI)\nsrc/\n├── agent/\n│   ├── loop.ts                  # Agent loop (LLM ↔ tools)\n│   ├── subagent.ts              # Subagent manager + orchestracao\n│   ├── queue.ts                 # Fila de execucao\n│   └── context.ts               # Build de contexto + compactacao\n├── config/\n│   ├── index.ts                 # Carregamento de config\n│   └── workspace.ts             # Diretorio de workspace\n├── gateway/\n│   └── server.ts                # HTTP REST API\n├── providers/\n│   ├── registry.ts              # Registro de providers\n│   └── ollama.ts                # Provider Ollama\n├── session/\n│   ├── db.ts                    # Schema SQLite (7 tabelas)\n│   └── manager.ts               # CRUD sessoes, mensagens, memorias, runs\n├── skills/\n│   ├── loader.ts                # Loader de skills\n│   └── defaults/                # Skills built-in (base, coder, memory, subagent)\n├── tools/\n│   ├── registry.ts              # Registro de ferramentas\n│   ├── exec.ts, read.ts, ...    # Implementacoes\n│   └── subagent.ts              # Tool de subagentes\n└── tui/\n    └── app.tsx                  # Interface terminal (React + Ink)\n```\n\n### Banco de dados\n\nSQLite com WAL mode. 9 tabelas:\n\n- **sessions** — conversas com titulo, modelo, tokens\n- **messages** — mensagens user/assistant/tool com tool_calls\n- **compactions** — resumos de contexto antigo\n- **memories** — memorias persistentes com categorias\n- **orchestration_runs** — batches de subagentes com status/duracao\n- **subagent_runs** — tasks individuais com lifecycle completo\n- **code_chunks** — chunks de código indexados com embeddings + hashes de conteúdo\n- **code_index_meta** — store key/value singleton com metadados do índice (HEAD sha, última execução, modelo)\n\n## Stack\n\n| Camada    | Tecnologia              |\n| --------- | ----------------------- |\n| Runtime   | Node.js (ESM)           |\n| Linguagem | TypeScript              |\n| UI        | React 18 + Ink          |\n| Banco     | SQLite (better-sqlite3) |\n| LLM       | Ollama                  |\n| Testes    | Vitest                  |\n","readmeFilename":"README.pt-BR.md"}