{"_id":"dirlens","_rev":"50-994ebda5508b749ae0641a8fe652cb18","name":"dirlens","dist-tags":{"latest":"1.2.22"},"versions":{"1.0.0":{"name":"dirlens","version":"1.0.0","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.0","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"18d6fa14db5040d10675f22f886af5dcb005c2ef","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.0.tgz","fileCount":4,"integrity":"sha512-up+UpMOEShpNP/FwUOzF7WN7Qy8vThbi1jGHqCzP/omkFhn4szpms8YOLncG2SkdsvWqzZwS7Oyuzg0s3ZCUDQ==","signatures":[{"sig":"MEUCIQDA15BO5rJ6H5yNqQUby9/1Rpe4TqI1q70wM2/ZXPuohgIgP019ed9oYdukO+2yvipAMDVJ0upPPwmVix4CU1+/na8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6034},"gitHead":"edfa8515ac869c246145dfc69a6141e9f8a5d478","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.0_1780743126165_0.400439071808131","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"dirlens","version":"1.0.1","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.1","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"ac642bb6d114f127ce06d0d708b7efc24b37d842","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.1.tgz","fileCount":5,"integrity":"sha512-7Okb3iRYsFEQczrb9b5roN9uteZmq0KZM4Uv4/hsk0s2CvfYjxJ6W9wem3GxmMdhJE4GDxNOgDmsKL1x7GjkpA==","signatures":[{"sig":"MEUCIQCUNOc2np0hv9+5TcCGcl2Mdc9YWYNrMHlQXZY3mPwcpwIgCtGQ52IqWb0U7KQ3JefQXwNwMEyH2tyBJLAJIUoases=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13690},"gitHead":"0396f2ed8774a2f89cb1b0501371ad7b403024a7","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.1_1780743615582_0.8910562235145327","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"dirlens","version":"1.0.2","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.2","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"e8f0b00b9b783acde42b708a2ace74dbcb533f02","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.2.tgz","fileCount":5,"integrity":"sha512-D2vGOfYZMKtinDdbZO8U3+OJQKxiO+XD15QjqkdjEDzkAGIjYxBoJyKUD6xMh0Rkh4GDNVGfQf+HFvQEpBtfIQ==","signatures":[{"sig":"MEUCIGQT14ebvy0Cv2vkHlr2Xqh8vIaE1Khia5wjYAi6pC+pAiEApySG6Q5i//899NmKJHFHmk2JSOwS/j6SlDdMko1KG+w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14633},"gitHead":"a1b722098479f4dd0201a1fb08bac80feb05d35f","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.2_1780790372214_0.6329594226735822","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"dirlens","version":"1.0.3","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.3","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"8a0ddfb0c47d481746bb06b05e400a3b7408f312","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.3.tgz","fileCount":5,"integrity":"sha512-FPWFmxlLpqAYexPFAy34M26kJQ48101sOccLFyVsnd42L/nvpjrhWp2C6FHP01ORlpVLdVfw5UqWSDIvoHAznw==","signatures":[{"sig":"MEYCIQCz16Vb4reKp/8IxwtsEYKwPU7jMqtT2wQJOnFRFL5vogIhAO3336jBRv+FLEn5yh+rpte5dIJqB0OPxmVmGv7h12DE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22076},"gitHead":"ead936f42eef27d342d91da23b0e13b239af5228","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.3_1780908986004_0.5080023017436912","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"dirlens","version":"1.0.4","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.4","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"3626798f71ca5c38c4d85df418997163aa583a0c","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.4.tgz","fileCount":5,"integrity":"sha512-HyUuAaguVGopSE8jUd8XHrN0baBfx9jy1myC9bNZUKifYLKvm32LJu1lNcn/XuyoLauex0jNZ8UaRQvGHrQigA==","signatures":[{"sig":"MEUCIGw8gTDl6Odj7RLhk8JThuvu5gCHoQrHhpgPrU3Y1QVHAiEA6jd1X37A846VmqMhhQA57Mx3XEFXW3r1LXltr82ftRI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23714},"gitHead":"7f8f187411fe859f951e98065245de958c41759a","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.4_1780913429049_0.3753230736255764","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"dirlens","version":"1.0.5","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.5","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"a21601719d2be4919f900a3e3c22a13a1ef7c1a6","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.5.tgz","fileCount":5,"integrity":"sha512-jcdXKwN+tKKPzBsxkm8GASccCY1egDxtcew77HvQ5wGsl1rW8piuz2wHDKCZOhmzEV0ln5EvQUKkmg7k9ZkU7g==","signatures":[{"sig":"MEQCIFQE9pQKtHgT5Das2I30VgVp0u8x/jGg6/lBf+1iLv1HAiBNes2e5GlXgRF+4VTIe1oQ3TqCJvu/LXvOjRW9HsDbfg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23716},"gitHead":"5fc1c88d10dd6db6b154f7d0e2ea9d5eb7a50605","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.5_1780915593464_0.9978235040534558","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"dirlens","version":"1.0.6","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.6","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"6c90ced1d3a3a617496caa82497a44297a1b733a","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.6.tgz","fileCount":5,"integrity":"sha512-qYbAJd+AOFyfU/s81f/5KsWDsuWTSv0A1THq3LCOItfhpqsTwNlxp5Vr6W3mjFFgh+BXuqGj0eZVhhUDOA62pw==","signatures":[{"sig":"MEUCIQCcerjTFAQ9nm/tsouRp+VgPqtvDQEbp9XiOns564dsXQIgUiJooaHkJ/HJGFEh53zV6YRXVfXhFtTFTNpA/MbkOBc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36796},"gitHead":"659d6c6724b939771f2bdf96ad6578a458fc4d63","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.6_1781040945385_0.02081650205460983","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"dirlens","version":"1.0.7","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.7","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"9ab561204054132cdc8474221d40b5524b7083fc","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.7.tgz","fileCount":5,"integrity":"sha512-FXF7KnMeWh8LBe6wgW69FLXbw6WRJiXpdSGw8CZMdXIdoVpT/DgCSen6ZcIx6xuu9gLIO7N2sRuE6S//ncGz/w==","signatures":[{"sig":"MEQCIG1uPUAlP721jIDr0l0offcwGAhOLcDOKQqaRBNAQQc5AiA1ROX8qdyApUUkCQlGDJvK4FovXIA7nH56quHc6nLMUA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36812},"gitHead":"ca6677fd5c9dccd68998682ebe41d7bac996cfb9","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.7_1781084992108_0.0007659942392590491","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"dirlens","version":"1.0.8","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.8","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"1d9e66100fd2ba22721aba7c3e49715363c630bf","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.8.tgz","fileCount":5,"integrity":"sha512-bX77uvEkilpZHwLE8iHHTUnuLvbpiPKIJP+Oijcz/oHUDXkIJjaWcYaVLsPEUZJ1qtB5pUK632rLhKNw0mxkrg==","signatures":[{"sig":"MEQCIH3BdHiMNxyu+uAyPz/ENjtUnkpr6P7P3jYaogVHS+5qAiA9dHGM2aCk4G5gIU+E+xv8wT31ZbDT4Qjzn0odQKZlcQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37873},"gitHead":"e422bcd56229646461c62139614520dcfd249147","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.8_1781174251701_0.9338808722870156","host":"s3://npm-registry-packages-npm-production"}},"1.0.9":{"name":"dirlens","version":"1.0.9","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.9","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"e7ad2b972823133ae8285430049f9af446d86eab","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.9.tgz","fileCount":5,"integrity":"sha512-SDrVD6vPxrHiYasnczorE94DoNVAoz2RHsWbNDXT3tuBkFYYFcZTiGBS00BHKsQoUkZLvHyvkmaXeikSQdu2mg==","signatures":[{"sig":"MEUCIQDEC0mkgDC3ZiRVhfTQJv4MlyF7fPdyrVlI9rYynm8zcgIgZvOTpzvM2jIb0BHBLc/cfobFOmzebcILuSrqOXlxHPY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49625},"gitHead":"5b8144f1a37aea462dd763150593ecbcb3361586","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.9_1781308001311_0.9775078178445364","host":"s3://npm-registry-packages-npm-production"}},"1.0.10":{"name":"dirlens","version":"1.0.10","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.10","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"d3a942a5e1043cd2c62ac3795a60fa36b773eaa0","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.10.tgz","fileCount":5,"integrity":"sha512-+nH/JNol9HruxUCRl/bPaIG3UhvNiBj/14/WU1yvZxtt1l9xbVwe5+/l45oMHITQ0lTtqgA73Q2lLoOOgzRHZQ==","signatures":[{"sig":"MEUCIC3xMS7v/aP++HApziC70BTdtz0pB0jTWqGHcot/UlssAiEAgXJ3m6xtHBuKE5W+L2LvThjpQtIqh1/e5vVZBVmydq0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52042},"gitHead":"8b7718b049a2f09841a1cb788d863644cafee055","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.10_1781847865395_0.5094155386607309","host":"s3://npm-registry-packages-npm-production"}},"1.0.11":{"name":"dirlens","version":"1.0.11","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.11","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"421bb98110b07dd59ac8fe85b4abb02c311cac37","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.11.tgz","fileCount":5,"integrity":"sha512-BmZokGrcUHUIhQgAfvhMXWOsKJJXo20CVEgo9aApQ+HyrzvO366h/N8uLw6hdFOkPOPoAo5DJCiZdvsArs1Alg==","signatures":[{"sig":"MEUCIQDQevChKpolsIUX7qrCD92nD93mkGcCmaEhTzjE4Bui4gIgJkIJmMJPXHVYaj8g32cYSZIstqxLcHmnGhUmNdp0M9E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90326},"gitHead":"fb164f84a780b72fadf80b3717b461edfa8eba50","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.11_1781940592965_0.31654454012321476","host":"s3://npm-registry-packages-npm-production"}},"1.0.12":{"name":"dirlens","version":"1.0.12","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.12","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"0f011ab1c16ddbcd24d879d4098598d1e124355f","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.12.tgz","fileCount":5,"integrity":"sha512-Nl/G/3/oRyfbw5hiepNZdVlE2PxR7YTKIkUsUGRPM+HenVJ1o8ql9Njsn8R+Jw/E2sP5B99Cy66/RpPITsMbtA==","signatures":[{"sig":"MEUCIQCmbHfirsR9GZGuQFahC5nwJROe9iK+24rnMC351upwPQIgZy1G4XRcD1dfYYI686DBqEnw9Iz6p6n6Pd0kHbF5Ga8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90495},"gitHead":"a390cd470a0f5a64b857ba82aeadb7ca19d79fd2","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.12_1781958006387_0.9414311199663001","host":"s3://npm-registry-packages-npm-production"}},"1.0.13":{"name":"dirlens","version":"1.0.13","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.13","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"dirlens.py"},"dist":{"shasum":"8c6d0af3f54a8a98450ccdd9ecca44d9a23e19e0","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.13.tgz","fileCount":5,"integrity":"sha512-aJ1TAg2GrNyq75J0ZeaaTL8MUuOcrvUiBwXdoSUMoDuREeVj3M0dEK4ZcwI/abSw9AX8W+rnDih5yCXIlPtPow==","signatures":[{"sig":"MEUCIQCEpVl4V4hCUNgYHQKh7gtpx3+gBpBgiTRfpTry/6+sawIgfu39GNexvTawEl62E8NrThQPBjOlXydR7egmAqOvBZU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":99712},"gitHead":"7f624a695b4e235ed442d154a56fec8a6e76db33","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.13_1782033963859_0.8148558442859486","host":"s3://npm-registry-packages-npm-production"}},"1.0.14":{"name":"dirlens","version":"1.0.14","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.14","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"dirlens.py"},"dist":{"shasum":"350862997f7b6ce2ed7c0c363da36671a7d7f6ff","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.14.tgz","fileCount":5,"integrity":"sha512-/JyvfZ/niwb3lrvrBz/TKEbgAmWrIOKv7cJlg2/0oF2FZGQWXeJdK2FdQmbvuV8+SZfe/EWN9aM2zAOwiriasw==","signatures":[{"sig":"MEQCIAHoV0tJLeM8p2gzqkqDdnTW1uWFkrrFI86HPL3gBaYyAiBzxzJ9jYzPb4qR5/PrDhXkuyoFTdaArdRS5Rk8B8a2Mg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":99712},"gitHead":"5de79a13a5f1a493276e14b961f4fd419169daa9","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.14_1782049829537_0.28202119916598267","host":"s3://npm-registry-packages-npm-production"}},"1.0.15":{"name":"dirlens","version":"1.0.15","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.15","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"9f1cd8d21a869f646ab053f7d3ecaa3767bd293a","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.15.tgz","fileCount":5,"integrity":"sha512-Xi8SbXF9KS3Fy6x6Fe6P2+IW3K3CKRMbGMr3lXEvOtqSvJrrO6xDqn0j3mfkYoj/4wuqqJJAo2g8x2ZeHm5lfQ==","signatures":[{"sig":"MEQCIE+WIciUJ3E2Lf8d8OwkBFyNTWdSE+/9WxziuSV1uHAhAiBYr3u6yg/xTTo95unzaB10cdo65qawSr1AkE4fe1ivqQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":99715},"gitHead":"33df8a7e1ebf0584ee68cb1d86549b770b84c98f","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.15_1782077362327_0.49961044821704026","host":"s3://npm-registry-packages-npm-production"}},"1.0.16":{"name":"dirlens","version":"1.0.16","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.16","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"3cfe4c47dc4af479864664aaa9bf4446bac56576","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.16.tgz","fileCount":5,"integrity":"sha512-Miaow0qHL+DbHDG+CT/oXcQP5R24Tl7BoWNxvfBZrbZl5W/9ohoYJKqyUvUEeNclqFUS1J3XUZIoU2FzoftmsQ==","signatures":[{"sig":"MEQCIFy5cJL+Ub31+23TePxA5pgmT5mK4Mkt/chY8How+Wd9AiB1dtwuw7BLzU8/Zx9pgLa79upeH7ks/ZsiOg7yCDNL8A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":99718},"gitHead":"8886ffa5bd6cc442891420c152341f66f255948d","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.16_1782101388201_0.6048672287223678","host":"s3://npm-registry-packages-npm-production"}},"1.0.17":{"name":"dirlens","version":"1.0.17","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.17","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"a0e5ba00e62fa26dc2be87190fe7d7ded9761df2","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.17.tgz","fileCount":5,"integrity":"sha512-MewegU+pOf3KpS7hFNRHtWazM0lLZHPJt7uU+1c70nL/Svj5OJWNQcNiEepedV968P+juehQsgQB/4MBJ1v9IQ==","signatures":[{"sig":"MEQCIHdOyQSZA18KzYpyro62qncz5+wvat2g8umT0x0z7M6oAiAc7Krz9BUL9686K3mlJnfixWT3qb7qaXVtP83Qe6LPOg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100166},"gitHead":"b1ea0ef9b7196f5471dbeab5613152ed0279fe40","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.17_1782118529374_0.49954006958592956","host":"s3://npm-registry-packages-npm-production"}},"1.0.18":{"name":"dirlens","version":"1.0.18","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.18","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"dfc3dad631ede6391f02a6382bcedb3761d0b286","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.18.tgz","fileCount":5,"integrity":"sha512-eV/BTW6Qj62KqFg68RFMnMl/o9viKetFWrV9i0+lyYAzMMQMX5obw21r3i89jjIaYSIwST7grKiYGCCZIJgNxg==","signatures":[{"sig":"MEQCIE5joUjcjmjzFKvltiDAEG/Mp9tx7PYodpJTcmT9MD3hAiAMxdps1mxMnLIsc0Q/EdGB/s7gSK0fZ8GNRKb8ndeilw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100082},"gitHead":"dd3f84eeb5bd27a6afaa7afb07a405741bd8c0cf","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.18_1782188040340_0.2550260841220997","host":"s3://npm-registry-packages-npm-production"}},"1.0.19":{"name":"dirlens","version":"1.0.19","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.19","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"a612cd3403319efd8989c48c41255de3c2deabe3","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.19.tgz","fileCount":7,"integrity":"sha512-zBX4US3oO/TLghWKs7TSnxY4dskloITTXeQAK4sJNJMbyfzZ2CHhhEFd0gZdhjvkhm8zlSVzHTuyUYI3QMV8vg==","signatures":[{"sig":"MEUCIQDiqa9Uzt4BNDPoBMNvbcYtLiXxh20m5ABZX/kDbaBs6AIgJktfIbHA53+F69pAwuVTjlcv1a/38pHwW8cYyA/XgcE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":115600},"gitHead":"4bf2bbf01440b8089d05cf24c2fbf0793f966fe4","scripts":{"version":"node scripts/sync-version.js"},"_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.19_1782297402460_0.889262301762362","host":"s3://npm-registry-packages-npm-production"}},"1.0.20":{"name":"dirlens","version":"1.0.20","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"UNLICENSED","_id":"dirlens@1.0.20","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"e3f6058d254ce736f0efe2fbe96e84e1b2c99b6e","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.20.tgz","fileCount":7,"integrity":"sha512-bQDHT4LV0701cayl2we66zY0T3RGV8z/eZaiDc4Jig+EiO07WsT9dH58GjuqnxfXuXMt/PpkZpvNS+lNjlbdYA==","signatures":[{"sig":"MEUCIDH92O4um71Qiap/id1DkxJTGMwwJJdlU/Lp2BBJkPmAAiEAmgjf36Rg6zZ2hNW7T5qDSZtouE1rj5jlj5+xs7FxzaM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117485},"gitHead":"ced0c1906388478dd0b17df6f0432192c5b92da6","scripts":{"version":"node scripts/sync-version.js"},"_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.20_1782301739717_0.5157589195903101","host":"s3://npm-registry-packages-npm-production"}},"1.0.21":{"name":"dirlens","version":"1.0.21","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"Apache-2.0","_id":"dirlens@1.0.21","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"70e3fd1045194e1601d9695d96164cb4f35028b3","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.21.tgz","fileCount":9,"integrity":"sha512-rOQ+XvQXdDJ28aJ4s8HobtH7hF7LvFod6g4GEVhRDbIazQfr31EwP9vtt/pOGLrcnA03lCD76DmAuxQqgBTs5w==","signatures":[{"sig":"MEYCIQDV3m8DvlylGqkIFp4vmot5sdpl282T1TdLnc6Vt7kHAwIhAPJuTMFF1w4Ld4xt1f1YILlRJAv2n92i/RV32uznUOdC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":130760},"gitHead":"934554097e4d53018d5e65f15255d96e43a6292b","scripts":{"version":"node scripts/sync-version.js"},"_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.21_1782381674614_0.9156469536258594","host":"s3://npm-registry-packages-npm-production"}},"1.0.22":{"name":"dirlens","version":"1.0.22","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"Apache-2.0","_id":"dirlens@1.0.22","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"f0a0d528a47224d41be4bbee27adfe4d3ac4867e","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.22.tgz","fileCount":9,"integrity":"sha512-Op1JTsFWMM4J5O/TQ1VcrhNEpjRk/nemDf7E+5flYVLd0L00HSXXv9cLkMPFgY9dJsp+aPqLuG/VSjCfMiXkqA==","signatures":[{"sig":"MEYCIQDMOpP5zf+1PskFFSGdJpuSw5h72/qUMA1vBDL1kyyieQIhAMnXQVjD3LYWPrOKeuFQ4+mh1kQOij94afzKxTM1qKYE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":132497},"gitHead":"eeb9845df1bb17ec72da58b16547b059a9a6eea5","scripts":{"version":"node scripts/sync-version.js"},"_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.22_1782555491310_0.03247684566853781","host":"s3://npm-registry-packages-npm-production"}},"1.0.23":{"name":"dirlens","version":"1.0.23","keywords":["cli","tree","file-size","directory","terminal"],"author":{"name":"igarin"},"license":"Apache-2.0","_id":"dirlens@1.0.23","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens"},"dist":{"shasum":"5be3b974e680d16e32bb215384b4db5fa382d40d","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.0.23.tgz","fileCount":9,"integrity":"sha512-0tASLGW9rSKQfzTpu6WxLybmgi8qwNAeb5lERYSkgC3X7G9QV2CkTbOyrD9u89z6qO3VzWI7JA0vD4HEEuoDxw==","signatures":[{"sig":"MEUCIQD4SakFozCsRu/qRVuuiAEDxQCkk3ny+Chf69eNVmHdFQIgKAjbG6R5iga0jeTnz95Cn3HYEie17EWCelEXlPdf+mY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":133279},"gitHead":"e77ecdf73c518127d7f8f0b30134703b8a8a736b","scripts":{"version":"node scripts/sync-version.js"},"_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"Directory tree viewer with file sizes / ファイルサイズ付きディレクトリツリー表示ツール","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.0.23_1782981365591_0.6554031286959909","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"dirlens","version":"1.1.0","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.1.0","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"146428b1b0079fb43c135f1ddbb1446c6058abc5","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.1.0.tgz","fileCount":7,"integrity":"sha512-iwvqNDt3ATfurSA2jaMHLAWUF4bWk9gsRCSeXKD/PO5AS8UltGnkCo1jvynv3330eNs5aGaH2QG2+FUE/uEpYw==","signatures":[{"sig":"MEYCIQCFpG8uApxfVNabLEk0Aozgi2MxUi7saKMQvylrYIiv5QIhAIO05G3/LOvJ3s3qVWwFoQpD/ACbcJWKjqUzIuxXiMYT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54060},"gitHead":"4c89e8157db5c662cc0ffc5dc6328e010481eb14","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.1.0","dirlens-bin-win32-x64":"1.1.0","dirlens-bin-darwin-x64":"1.1.0","dirlens-bin-linux-arm64":"1.1.0","dirlens-bin-darwin-arm64":"1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.1.0_1783393737981_0.16915823409058062","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"dirlens","version":"1.1.1","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.1.1","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"59bf32427b29a168adc30d733fc1606cffb43aa0","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.1.1.tgz","fileCount":7,"integrity":"sha512-6qD9hVoOkVeLMvoDVd7LGv+3dBLwtS63jWQ20S3mTZRwyPazxM9Yt7MaeE44F2Q7eHI9x2wDOZEAWkNMpp8fpw==","signatures":[{"sig":"MEUCIQDBLR8ZXNfaF/xHucGiG5TiEl/XbDcSDFi4N6EpCxc5EQIgcBXmBQKK7k5oR+hAJyskYm2XfM4wt9jaxBVcsHG5Egc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":54060},"gitHead":"1d6389cf90545b8e57ce2a00d496f9f181571bea","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.1.1","dirlens-bin-win32-x64":"1.1.1","dirlens-bin-darwin-x64":"1.1.1","dirlens-bin-linux-arm64":"1.1.1","dirlens-bin-darwin-arm64":"1.1.1"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.1.1_1783397729404_0.4810539665482787","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"dirlens","version":"1.1.2","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.1.2","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"5bf201f54c87dfd3eac0123e7f7ec64a2ec48895","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.1.2.tgz","fileCount":7,"integrity":"sha512-gcZsUETTd25zVJl0ho+uqKbsNlXif16c2cVII6+y5JRm+MRPyGEROIjT4X3G6WsI3BcBDniVEwOWh6wdbyijbA==","signatures":[{"sig":"MEQCIAnWmex67Gqsg6FuqrZtwfLysazNex1D4p1suTcQuX2fAiB0aHOJfrG36gpn2rpsz+wt1MHkypxHET5J3Xab8w9V7g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":54060},"gitHead":"bd11a052639089a93d1ae37517b3fe68108442c7","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.1.2","dirlens-bin-win32-x64":"1.1.2","dirlens-bin-darwin-x64":"1.1.2","dirlens-bin-linux-arm64":"1.1.2","dirlens-bin-darwin-arm64":"1.1.2"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.1.2_1783724901217_0.5515630655064445","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"dirlens","version":"1.2.0","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.0","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"bb670e0b0bddca8d243a3653f20571aa5e705ace","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.0.tgz","fileCount":7,"integrity":"sha512-Y8VzIqOjSnV3aEmm+ItVSOlvIKJfHSs5wNKsMfitwsaSoST/tV614Kojs2s3sjRirwLAQpEhb8M3QVTk+ZV7VA==","signatures":[{"sig":"MEQCIHFs6GW3xYHE8CzJciXeOxIl+TjyWZSR1Z4ufpNPiOo5AiBS8gpTD0F2YPZVTEJl7Pgak5N0fmNgUszIkMcuU1zCvA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":69745},"gitHead":"f2dc7c2777b04d28cca0096d06bf6f371c6ea3ae","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.0","dirlens-bin-win32-x64":"1.2.0","dirlens-bin-darwin-x64":"1.2.0","dirlens-bin-linux-arm64":"1.2.0","dirlens-bin-darwin-arm64":"1.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.0_1784088000307_0.633654708252229","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"dirlens","version":"1.2.1","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.1","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"bd4c7abeeb2d226469fb6fb322af8064f041ce75","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.1.tgz","fileCount":7,"integrity":"sha512-hXUODzrqaKTqQQuFZvMef8G5oA8MrqHwZTTdiDM51FjmcKlH9IZW98RnPzmA/P5Kp8QE1wyBRtwbZ3INeFwGlw==","signatures":[{"sig":"MEUCIQC9XoquS79n71atEMi6hbAzZOigU49WBg6bIRyFBn4SUAIgBh/PGSEKUPigJ28u0ClCKs3JjyGsIi+Ju5ZmkO6syB4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":70291},"gitHead":"e54aadba5ed42ca39176fa4a6c8ff255cac00f60","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.1","dirlens-bin-win32-x64":"1.2.1","dirlens-bin-darwin-x64":"1.2.1","dirlens-bin-linux-arm64":"1.2.1","dirlens-bin-darwin-arm64":"1.2.1"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.1_1784119100874_0.15158777537557677","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"dirlens","version":"1.2.2","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.2","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"f2ad695c974217f2a7f9c3767776630dbb72aff8","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.2.tgz","fileCount":7,"integrity":"sha512-n5kWxRroo644+Bp16DO5kFNgtX0FFnkgNegXV23MOv87v1ZqhQttrKX9EaGy0kvK3GEYIJw+JmNy0YSFvd7MzA==","signatures":[{"sig":"MEQCIG5xidn4sa1JdaQ1gUlNwz4CLdmYrbtIQt3fV+ontViDAiBFcgsSiH377Smnuu0ekOlp2TX+g8ExrfnfAdOTmm64mA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":74950},"gitHead":"809929a6d166763c4b4aba2bff4350164c4528a9","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.2","dirlens-bin-win32-x64":"1.2.2","dirlens-bin-darwin-x64":"1.2.2","dirlens-bin-linux-arm64":"1.2.2","dirlens-bin-darwin-arm64":"1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.2_1784121675649_0.6388400864129165","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"dirlens","version":"1.2.3","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.3","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"a34df341140299de5c60585ef7ffc2dafe6ad4e7","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.3.tgz","fileCount":7,"integrity":"sha512-+MPHf3bv7ExSKBBUOTdVPf/h0ICRx85zBmIr/OCXCoylUebSGRpsqK9Qv15rtHgvA1LeRrxXKxLimYlCzwnkaQ==","signatures":[{"sig":"MEYCIQDg+oPrDylEmSSIyRy8d5EhgZXF4V6/lvUysWDpizb46AIhAOVgCvW9Nbuk4m154NsqQadsfVwB4u0VUBtSgjiyI07x","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":76922},"gitHead":"574928d3d3d67e125dd7cc4541e843b919478765","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.3","dirlens-bin-win32-x64":"1.2.3","dirlens-bin-darwin-x64":"1.2.3","dirlens-bin-linux-arm64":"1.2.3","dirlens-bin-darwin-arm64":"1.2.3"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.3_1784124289777_0.9223284807205576","host":"s3://npm-registry-packages-npm-production"}},"1.2.4":{"name":"dirlens","version":"1.2.4","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.4","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"39c608b0d541ad2d166265f18a8855a356fed969","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.4.tgz","fileCount":7,"integrity":"sha512-NuZJQpj6IGKLIQ3iCIItaSsyq3tGW7AZkGUrlnXNGjFEZZuOlvKgMy10V8Ws+HPZse3GwgK7LQ5RaHWWa+rmCA==","signatures":[{"sig":"MEUCIQDG3f/wFQ8krL5cYna4JrlsVc5LulmFtQpWjEdOmczq/gIgTGnQ4lvVvH/OM/snMmGsliFzb4PlL29xVydLFI6p0Ow=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":78343},"gitHead":"ea56b8ad640b6073682c248ecc3c844503b22ee1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.4","dirlens-bin-win32-x64":"1.2.4","dirlens-bin-darwin-x64":"1.2.4","dirlens-bin-linux-arm64":"1.2.4","dirlens-bin-darwin-arm64":"1.2.4"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.4_1784176076995_0.4239002491488395","host":"s3://npm-registry-packages-npm-production"}},"1.2.5":{"name":"dirlens","version":"1.2.5","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.5","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"01dc17ced01a8438a5ab970054c43a941b97d197","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.5.tgz","fileCount":7,"integrity":"sha512-HeR2GHjijGMY28LiMk31jwbhMkTEcxiUFfPuskPBi4ddfFypffLddX8ll5YbaYoc1IIUwrKxgJR0oIWU9CW88g==","signatures":[{"sig":"MEUCIEkKmGgCydB2K6iSypzPAndUrmV2znC0/5Xi1zk6xrsMAiEAxDgR7ZE/IAtD5oqFR5yd4+W/XtA3Skyb9WVstYo0fJc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":82114},"gitHead":"dd0dd6889fae20582dbf557f7fb8c6dc117b67c3","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.5","dirlens-bin-win32-x64":"1.2.5","dirlens-bin-darwin-x64":"1.2.5","dirlens-bin-linux-arm64":"1.2.5","dirlens-bin-darwin-arm64":"1.2.5"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.5_1784180182834_0.1945256215931983","host":"s3://npm-registry-packages-npm-production"}},"1.2.6":{"name":"dirlens","version":"1.2.6","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.6","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"de19a21a2540aa8f7a5435de1253ac4c396e4eb6","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.6.tgz","fileCount":7,"integrity":"sha512-ZtKEiAnlubNEeUOKnSjqfdx/ie2lWU14sRJ4X/GdkaTgDkthnr0DOKxYwBWJheoKw1PXgaHUd9HGg4FCeDSFfA==","signatures":[{"sig":"MEQCIEhhFoCYR4G7UFmlmCI9305kx6HfSJL9/C9PE8q0xVP3AiB3oz/ULIz7IB/lp2Aj7/94DrpSqREl+b+pVbta+IVRbw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":82657},"gitHead":"57dc81e862099c060e464d7f4eee8bf351a0004a","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.6","dirlens-bin-win32-x64":"1.2.6","dirlens-bin-darwin-x64":"1.2.6","dirlens-bin-linux-arm64":"1.2.6","dirlens-bin-darwin-arm64":"1.2.6"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.6_1784190764167_0.6999234805744647","host":"s3://npm-registry-packages-npm-production"}},"1.2.7":{"name":"dirlens","version":"1.2.7","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.7","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"f5047c85912f874486ed867e5441550cce88e2ee","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.7.tgz","fileCount":7,"integrity":"sha512-IQfEvYP9SoLmAg425ac2UcHTV2marFi/az+WVbg3/k8ov9OTf4uWImOWRnal95p5Iy+2lY0XtB/0DYhAEdbGCg==","signatures":[{"sig":"MEUCIQD1rwY82YOxWCWVdeSlOrDtj4pfcncrCPKeaT4gHGdmKwIgU0Ve//nv2fJ8Lv0/+I2o2Npc4nqn8MHNI2kyTIRIjbM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":84657},"gitHead":"c5013aef2684913a5ea2016b51adea1b03cba27c","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.7","dirlens-bin-win32-x64":"1.2.7","dirlens-bin-darwin-x64":"1.2.7","dirlens-bin-linux-arm64":"1.2.7","dirlens-bin-darwin-arm64":"1.2.7"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.7_1784196325597_0.6749983381191842","host":"s3://npm-registry-packages-npm-production"}},"1.2.8":{"name":"dirlens","version":"1.2.8","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.8","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"58be0e9dfe648bb322863c61c57cba9f92405b0b","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.8.tgz","fileCount":7,"integrity":"sha512-hiyS6dwZ+OgpRr/EWGggSTpiE70QFzkKKlb2AEgcIyV65bKlqbUoGY0zT6NXUketSDjP13HY0ANweZIbsalW5Q==","signatures":[{"sig":"MEUCIQDq3X1JJShtlDxgd4qbHyAYcyylrSUUVf5vo8iS4AA1FAIgaHdGV/cy9o18UacUT6lgEpMaQk3E2qb+dM/1qmFnVsI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":88601},"gitHead":"4ae20135c01e42a1dbccdab88132d75612205e13","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.8","dirlens-bin-win32-x64":"1.2.8","dirlens-bin-darwin-x64":"1.2.8","dirlens-bin-linux-arm64":"1.2.8","dirlens-bin-darwin-arm64":"1.2.8"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.8_1784199877957_0.2615875781751058","host":"s3://npm-registry-packages-npm-production"}},"1.2.9":{"name":"dirlens","version":"1.2.9","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.9","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"80bddaa745e9e5f411c84147eb2989214968900f","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.9.tgz","fileCount":7,"integrity":"sha512-lYQZLJN8ENLUNaOWWpzddNFEeORN+74lAH2BllcJzicuXfgJo/ylIX+rAUHZAb/oCUhn+sZ4iUDCRTpftudabw==","signatures":[{"sig":"MEYCIQD0+uSmaBAO9oOJ20N3GfxhRq2zDLGvfQ+Ee1D5e7ojYwIhAM3lWqIQnrdGBpNEfPkOlw8/KoanGH29UxuRYPbAUF62","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92259},"gitHead":"b93ed394546b64daec95bf3f23694b8a24376427","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.9","dirlens-bin-win32-x64":"1.2.9","dirlens-bin-darwin-x64":"1.2.9","dirlens-bin-linux-arm64":"1.2.9","dirlens-bin-darwin-arm64":"1.2.9"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.9_1784214049486_0.5969594800624032","host":"s3://npm-registry-packages-npm-production"}},"1.2.10":{"name":"dirlens","version":"1.2.10","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.10","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"b8afd5d7cbede5e63aa713cf72e21de4e2323617","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.10.tgz","fileCount":7,"integrity":"sha512-zjzocJQaAsqZUxToS9q4x/2HoWFkUoIJR2c93sxibHJB1xBLZKwJzZGe2jTnWq5tqx8b8nfUhddwhwGHdeeAPg==","signatures":[{"sig":"MEUCIHfzuDkjgdEN575QqqELImmc65z27JLqCNF+5bGNhDroAiEAgrakJNGywK3sr0asqP2h9r2QaN71vYmBLp/SGBgWC+Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":94125},"gitHead":"8c6da07f96ed084021ff6e7969b6e75283812bed","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.10","dirlens-bin-win32-x64":"1.2.10","dirlens-bin-darwin-x64":"1.2.10","dirlens-bin-linux-arm64":"1.2.10","dirlens-bin-darwin-arm64":"1.2.10"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.10_1784244181563_0.31705621067271794","host":"s3://npm-registry-packages-npm-production"}},"1.2.11":{"name":"dirlens","version":"1.2.11","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.11","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"b64fc2683e2100eeae5baa33ea61623b479ff91a","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.11.tgz","fileCount":7,"integrity":"sha512-ZCgPXep7c23mP48EmEsjS+hs0bhfmifNXUa0UCa9ZnjmTt6TXxmLpAuiAZCeu2M2rjaf/nXbeBGBkNmukzcFDg==","signatures":[{"sig":"MEUCIQCfC57sEF4gYoaD+UWzXgcZbLUlFLY3yhSKQ9s5rRTKBwIgED4YyJ0x+NQldxyybiK3UsoNoV7/zYSDFNkvE5zUXbs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":94827},"gitHead":"b340dcc8cdf03cf33a7863fb0c7ec6885d590579","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.11","dirlens-bin-win32-x64":"1.2.11","dirlens-bin-darwin-x64":"1.2.11","dirlens-bin-linux-arm64":"1.2.11","dirlens-bin-darwin-arm64":"1.2.11"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.11_1784257285499_0.11656422575918945","host":"s3://npm-registry-packages-npm-production"}},"1.2.12":{"name":"dirlens","version":"1.2.12","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.12","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"26c9566489331639e2146fe7be0a74458443033a","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.12.tgz","fileCount":7,"integrity":"sha512-pLrvq7Fn6IhRdZ1NnGRZi0mjMdqy3svKNOKbGbr/YX2uoq2JUUjOcZEo/oAXZmkSsg6295UZAzHwcIBJlFvJLA==","signatures":[{"sig":"MEUCIQCxmdgd5plCv03zX0ggA7XnFLMo1IosZ03rsWXHv4txKwIgK6nY5FMNxYrg25jRjSk2tn+efhyCsIT+ToCgF7slimM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":97660},"gitHead":"30bf036ba68eada7ec5bfb12eeb48c678b3c407e","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25c9c782-98e6-489f-9938-142cebebe62d"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.12","dirlens-bin-win32-x64":"1.2.12","dirlens-bin-darwin-x64":"1.2.12","dirlens-bin-linux-arm64":"1.2.12","dirlens-bin-darwin-arm64":"1.2.12"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.12_1784276662122_0.6687435732713896","host":"s3://npm-registry-packages-npm-production"}},"1.2.13":{"name":"dirlens","version":"1.2.13","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.13","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"b1563903b9d76f26d5512a73b300e82604f41d0e","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.13.tgz","fileCount":7,"integrity":"sha512-6QLNn2/V6Y/qlqDRNpjCh7dCgi0W94sw97zqF8/Yj35pD2TSnPAb5FZANpyzJlSNqpfAlkRpwGexEyvIKZFhRQ==","signatures":[{"sig":"MEQCIAE46nuJCtlaQiQmP9EGSa1o9YmvHvEz9HbhCViG98p2AiALy081639Xc0fAdHCBBJYiGXtn8+t1H8K17VRtyOlaag==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":97605},"gitHead":"5c511c8c26550332bc918e3b0f78365d9d7bd57d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9265df43-9321-4223-a441-7b4f205dfd2a"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.13","dirlens-bin-win32-x64":"1.2.13","dirlens-bin-darwin-x64":"1.2.13","dirlens-bin-linux-arm64":"1.2.13","dirlens-bin-darwin-arm64":"1.2.13"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.13_1784443560095_0.3970101999793356","host":"s3://npm-registry-packages-npm-production"}},"1.2.14":{"name":"dirlens","version":"1.2.14","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.14","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"61dc495a4a8e9dc382cb784432ec686f78e081d5","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.14.tgz","fileCount":7,"integrity":"sha512-ldsnlUyNxa1rR6shOos7sj3hdEPGS1QY2lI65pKb8gcNJdk/jl1uuaoL5VvN7har1ou9JLlO0ipzlVGj/Zj9Rw==","signatures":[{"sig":"MEQCIF9PZiHBos7YhVaEG2ZcxSBSikp41OtgrI1AvFRVCSUyAiA1UOEoYyAKuufRuGBmGfdQmEgp90uHti7Ak0ULZUw6zA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":98505},"gitHead":"d76f48c3428e68ac7755d05e753a571aa65d8909","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9265df43-9321-4223-a441-7b4f205dfd2a"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.14","dirlens-bin-win32-x64":"1.2.14","dirlens-bin-darwin-x64":"1.2.14","dirlens-bin-linux-arm64":"1.2.14","dirlens-bin-darwin-arm64":"1.2.14"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.14_1784698818060_0.051852764948056684","host":"s3://npm-registry-packages-npm-production"}},"1.2.15":{"name":"dirlens","version":"1.2.15","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.15","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"0dd3a326087a908d07cb3a33e78c96e19375a41b","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.15.tgz","fileCount":7,"integrity":"sha512-cH9ojjB7U/RLdwaLp4PCkvcITX+IMqXQ0PfYFLVh4Y3VPqgD685uAwvHTtjkz3J2wq2Z02dQ/b2Fzrai/PV8pg==","signatures":[{"sig":"MEUCIQCqezSIeu/Pc8qMLZfHse8kjGC6D/CxM7zb838Gfg6d3QIgfDw6XKg1kGptqwgvqdeQPZJZNXqLCq+hBc/CdYGSzck=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":98505},"gitHead":"497fbd6c91d61a4be1b0f2cc56ea3b59bba8f255","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9265df43-9321-4223-a441-7b4f205dfd2a"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.15","dirlens-bin-win32-x64":"1.2.15","dirlens-bin-darwin-x64":"1.2.15","dirlens-bin-linux-arm64":"1.2.15","dirlens-bin-darwin-arm64":"1.2.15"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.15_1784734430406_0.7374532865080103","host":"s3://npm-registry-packages-npm-production"}},"1.2.16":{"name":"dirlens","version":"1.2.16","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.16","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"c64ccf0cc42886058cee899652a45116469abf72","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.16.tgz","fileCount":7,"integrity":"sha512-NPa+6GrEw5a4QvVVwfBDYgCLYnhfwbkrQF15bJ+HdY2DtXLfBR3XZkry/Ukxca+urM8Wm+HD2tfxVl0J8Inq9w==","signatures":[{"sig":"MEUCIDfX4+rb+nQqqJKZgk8Fr7XM0xkOxvQwUaBtUm3ktu99AiEAt8F57EX3wJyl1UU0v3DvvCBD/pjsbPs10bCkUthJzGE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.16","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":99159},"gitHead":"6b98a40dd7e9e2c329934b45dc592dc0644b9d72","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9265df43-9321-4223-a441-7b4f205dfd2a"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.16","dirlens-bin-win32-x64":"1.2.16","dirlens-bin-darwin-x64":"1.2.16","dirlens-bin-linux-arm64":"1.2.16","dirlens-bin-darwin-arm64":"1.2.16"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.16_1784771329042_0.264670184852573","host":"s3://npm-registry-packages-npm-production"}},"1.2.17":{"name":"dirlens","version":"1.2.17","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.17","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"b5dc252a4b5aa1ca3e15d344cd01c3c74e011204","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.17.tgz","fileCount":7,"integrity":"sha512-j1TcivL4vCk8gMKYW92jXk/oqVqMXjUTvZE5JYCacj9x30MqnlQfRf48CDUOtmNTghWHhs0Es1mOAyCRoRd8ow==","signatures":[{"sig":"MEYCIQDH2lb4Kh6eFf8KY6C79uWEJ9hqtfEAPtt7hXTM5Pko7AIhAK7DnOsAuATpxNkz3041gBYCsOJeBCZdsuwdSaDlxdr9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.17","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":100597},"gitHead":"22126de6ca2a9c1c84a5361d6e02fe6c2fc248e8","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9265df43-9321-4223-a441-7b4f205dfd2a"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.17","dirlens-bin-win32-x64":"1.2.17","dirlens-bin-darwin-x64":"1.2.17","dirlens-bin-linux-arm64":"1.2.17","dirlens-bin-darwin-arm64":"1.2.17"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.17_1785153022806_0.03628430982081188","host":"s3://npm-registry-packages-npm-production"}},"1.2.18":{"name":"dirlens","version":"1.2.18","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.18","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"8e0e747414e62fded85cb0410107c6627dca5743","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.18.tgz","fileCount":7,"integrity":"sha512-Twndh001Wa6mn0UmFZ1QG30BDQFYsVwiantakgYDBm6PMClX8wKnE7QVvtgfTDswL8BZD9mNVtQ6YEHQcJ3nzA==","signatures":[{"sig":"MEUCIAxvCgpC46Jwx1HLEszggJ8YpWJ57dDMNo+EmxbNhfPXAiEAoaKaGprKi48b9rsQyfuK0hp90aAzwOphNHqfe8ZZnUA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.18","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":102370},"gitHead":"a646779433272eb2bb91476429d726970397ae96","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9265df43-9321-4223-a441-7b4f205dfd2a"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.16.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.18","dirlens-bin-win32-x64":"1.2.18","dirlens-bin-darwin-x64":"1.2.18","dirlens-bin-linux-arm64":"1.2.18","dirlens-bin-darwin-arm64":"1.2.18"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.18_1785159596817_0.06429273346169162","host":"s3://npm-registry-packages-npm-production"}},"1.2.19":{"name":"dirlens","version":"1.2.19","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.19","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"e7c24ac5957628be3abd11434cec8c2a1de30c2b","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.19.tgz","fileCount":8,"integrity":"sha512-XRDZVrJh0uORVrzVZkecgZzFQviLhPoxVxRKx4vrxkTFj2A1VCnJ/EvrKn8dRlq5OXcneixuB1OI7n4pyOz5bA==","signatures":[{"sig":"MEYCIQD0lc6j7qRd3kZb02CKQVoCeZm8WQlD2WMoo+CDgEDkqQIhAMSSAB9+/1GsdCw8nCePLeD/J1W/FbdStRapWwYn8UGJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":131009},"gitHead":"5df3cb350ada33ade3f20d63f731adf4b62757e2","_npmUser":{"name":"igarin","email":"igarin267@gmail.com"},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.13.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.19","dirlens-bin-win32-x64":"1.2.19","dirlens-bin-darwin-x64":"1.2.19","dirlens-bin-linux-arm64":"1.2.19","dirlens-bin-linux-ppc64":"1.2.19","dirlens-bin-linux-s390x":"1.2.19","dirlens-bin-win32-arm64":"1.2.19","dirlens-bin-darwin-arm64":"1.2.19","dirlens-bin-linux-x64-musl":"1.2.19","dirlens-bin-linux-arm64-musl":"1.2.19"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.19_1785798941791_0.0842191571707418","host":"s3://npm-registry-packages-npm-production"}},"1.2.20":{"name":"dirlens","version":"1.2.20","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.20","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"98569ebb4ea591606568375a7fa706bd30c3bb05","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.20.tgz","fileCount":8,"integrity":"sha512-YTYwqC9lXaY5z7i8bNuQ4K0I47POEMKwEVYmM0ZUp52mSR/WBFyOxFE/DUWZ5ihCMIej7NYenF/5Cnhw54yAIg==","signatures":[{"sig":"MEUCIQCN3qllrqRP34xTH2eSg40ERXGND2+MX9u7wABhstc4rwIgf3hAVU8ksnhjGabrd+69rH1QRSbnu/or+wPRQCSodvs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.20","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":94285},"gitHead":"2ded169ee88ba58dc75f079e8ac983b0efbf0618","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9265df43-9321-4223-a441-7b4f205dfd2a"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.17.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.20","dirlens-bin-win32-x64":"1.2.20","dirlens-bin-darwin-x64":"1.2.20","dirlens-bin-linux-arm64":"1.2.20","dirlens-bin-linux-ppc64":"1.2.20","dirlens-bin-linux-s390x":"1.2.20","dirlens-bin-win32-arm64":"1.2.20","dirlens-bin-darwin-arm64":"1.2.20","dirlens-bin-linux-x64-musl":"1.2.20","dirlens-bin-linux-arm64-musl":"1.2.20"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.20_1786792612208_0.7961576617991197","host":"s3://npm-registry-packages-npm-production"}},"1.2.21":{"name":"dirlens","version":"1.2.21","keywords":["tree","directory","cli","filesize","ai","agent"],"license":"Apache-2.0","_id":"dirlens@1.2.21","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"homepage":"https://github.com/igarinpiano/dirlens#readme","bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"bin":{"dirlens":"bin/dirlens.js"},"dist":{"shasum":"899e045eba190f68d2579aac0fe0d69b9459ded7","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.21.tgz","fileCount":8,"integrity":"sha512-FW3QY0hfeotFBDr+xVqtf2ijZMP3jApWe4/Mpo4gT2a+sHgGXOop/CzUs15qfKOcCPnol8WMjSm3MMUPPGb1lg==","signatures":[{"sig":"MEUCIQCY1oV0d9u32nWWsmlUAX5XrM/bEvraduvka6C/YLyDWAIgCaVqqlHnSrPDuPnYkZDA1fnnhFi4CQ5WYOpiOirN+I8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.21","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":94119},"gitHead":"e4ccec82bac1ad56533c2ad2aa4f5b008730a6fb","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9265df43-9321-4223-a441-7b4f205dfd2a"}},"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.17.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.21","dirlens-bin-win32-x64":"1.2.21","dirlens-bin-darwin-x64":"1.2.21","dirlens-bin-linux-arm64":"1.2.21","dirlens-bin-linux-ppc64":"1.2.21","dirlens-bin-linux-s390x":"1.2.21","dirlens-bin-win32-arm64":"1.2.21","dirlens-bin-darwin-arm64":"1.2.21","dirlens-bin-linux-x64-musl":"1.2.21","dirlens-bin-linux-arm64-musl":"1.2.21"},"_npmOperationalInternal":{"tmp":"tmp/dirlens_1.2.21_1787116683459_0.7585951414600358","host":"s3://npm-registry-packages-npm-production"}},"1.2.22":{"_id":"dirlens@1.2.22","bin":{"dirlens":"bin/dirlens.js"},"bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"dist":{"shasum":"6f1e8dc6aad56ef7c62806bc44ce67b473b728a0","tarball":"https://registry.npmjs.org/dirlens/-/dirlens-1.2.22.tgz","fileCount":8,"integrity":"sha512-24BunUxtEsy4VNcHYchYGjn2AaG+FJfndi+acTYI/huiw1iw7pbs0QO/fD3aCUyyDYTxZyuJ6Lmjm/G88jrznA==","signatures":[{"sig":"MEUCIF64vaQeoOe26I0sZrb6gnis0gQJH+fE5K0FT/JxtEQ6AiEA9ddST+/CoZODiGpk7+xywQU4xHkkf1jfaHxwpifD54A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCID4J886ADtNJsl1V+tuHss2enanehvHVSpGDpT9Z7mqqAiACln0OFaZvG/nBRX6KYHWp/9NY41BN2h3iUyWUvIHybg=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/dirlens@1.2.22","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":123321},"name":"dirlens","gitHead":"ce92e8add5211138ca718af4308f99b3ee00b23f","license":"Apache-2.0","version":"1.2.22","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9265df43-9321-4223-a441-7b4f205dfd2a"}},"homepage":"https://github.com/igarinpiano/dirlens#readme","keywords":["tree","directory","cli","filesize","ai","agent"],"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"_npmVersion":"11.17.0","description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","directories":{},"maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"optionalDependencies":{"dirlens-bin-linux-x64":"1.2.22","dirlens-bin-win32-x64":"1.2.22","dirlens-bin-darwin-x64":"1.2.22","dirlens-bin-linux-arm64":"1.2.22","dirlens-bin-linux-ppc64":"1.2.22","dirlens-bin-linux-s390x":"1.2.22","dirlens-bin-win32-arm64":"1.2.22","dirlens-bin-darwin-arm64":"1.2.22","dirlens-bin-linux-x64-musl":"1.2.22","dirlens-bin-linux-arm64-musl":"1.2.22"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dirlens_1.2.22_1787317797120_0.7790282541648379"}}},"time":{"created":"2026-06-06T10:52:06.096Z","modified":"2026-08-21T13:09:57.563Z","1.0.0":"2026-06-06T10:52:06.337Z","1.0.1":"2026-06-06T11:00:15.719Z","1.0.2":"2026-06-06T23:59:32.346Z","1.0.3":"2026-06-08T08:56:26.159Z","1.0.4":"2026-06-08T10:10:29.208Z","1.0.5":"2026-06-08T10:46:33.633Z","1.0.6":"2026-06-09T21:35:45.526Z","1.0.7":"2026-06-10T09:49:52.246Z","1.0.8":"2026-06-11T10:37:31.863Z","1.0.9":"2026-06-12T23:46:41.498Z","1.0.10":"2026-06-19T05:44:25.522Z","1.0.11":"2026-06-20T07:29:53.135Z","1.0.12":"2026-06-20T12:20:06.507Z","1.0.13":"2026-06-21T09:26:04.044Z","1.0.14":"2026-06-21T13:50:29.689Z","1.0.15":"2026-06-21T21:29:22.469Z","1.0.16":"2026-06-22T04:09:48.370Z","1.0.17":"2026-06-22T08:55:29.512Z","1.0.18":"2026-06-23T04:14:00.530Z","1.0.19":"2026-06-24T10:36:42.594Z","1.0.20":"2026-06-24T11:48:59.858Z","1.0.21":"2026-06-25T10:01:14.770Z","1.0.22":"2026-06-27T10:18:11.477Z","1.0.23":"2026-07-02T08:36:05.744Z","1.1.0":"2026-07-07T03:08:58.126Z","1.1.1":"2026-07-07T04:15:29.600Z","1.1.2":"2026-07-10T23:08:21.345Z","1.2.0":"2026-07-15T04:00:00.434Z","1.2.1":"2026-07-15T12:38:21.045Z","1.2.2":"2026-07-15T13:21:15.779Z","1.2.3":"2026-07-15T14:04:49.923Z","1.2.4":"2026-07-16T04:27:57.138Z","1.2.5":"2026-07-16T05:36:22.971Z","1.2.6":"2026-07-16T08:32:44.308Z","1.2.7":"2026-07-16T10:05:25.737Z","1.2.8":"2026-07-16T11:04:38.082Z","1.2.9":"2026-07-16T15:00:49.609Z","1.2.10":"2026-07-16T23:23:01.711Z","1.2.11":"2026-07-17T03:01:25.615Z","1.2.12":"2026-07-17T08:24:22.241Z","1.2.13":"2026-07-19T06:46:00.224Z","1.2.14":"2026-07-22T05:40:18.182Z","1.2.15":"2026-07-22T15:33:50.554Z","1.2.16":"2026-07-23T01:48:49.179Z","1.2.17":"2026-07-27T11:50:22.968Z","1.2.18":"2026-07-27T13:39:56.960Z","1.2.19":"2026-08-03T23:15:41.955Z","1.2.20":"2026-08-15T11:16:52.356Z","1.2.21":"2026-08-19T05:18:03.618Z","1.2.22":"2026-08-21T13:09:57.204Z"},"bugs":{"url":"https://github.com/igarinpiano/dirlens/issues"},"license":"Apache-2.0","homepage":"https://github.com/igarinpiano/dirlens#readme","keywords":["tree","directory","cli","filesize","ai","agent"],"repository":{"url":"git+https://github.com/igarinpiano/dirlens.git","type":"git"},"description":"ファイルサイズ・AI/エージェント解析つきディレクトリツリー表示ツール（tree 互換）","maintainers":[{"name":"igarin","email":"igarin267@gmail.com"}],"readme":"# dirlens\n\n**English** | [日本語](README_ja.md)\n\n**`dirlens` is a project map that connects filesystem structure, lightweight code intelligence, and AI context.**\n\nStarting with a familiar `tree`-style directory view, `dirlens` layers in sizes, modification times, Git information, token counts, TODOs, test hints, entry-point candidates, symbol outlines, local import relationships, and configuration files. It gives people, AI chats, and coding agents one readable map of a codebase.\n\n```text\nfilesystem tree\n      + project metadata / git\n      + lightweight code structure\n      + dependency / impact hints\n      + token / context awareness\n      └── one project map for humans, AI chats, and coding agents\n```\n\n`dirlens` can replace `tree`, but it is not merely a larger `tree`. Nor is it a substitute for deep semantic search, an LSP, a symbol graph, or a knowledge graph. It sits between a filesystem-only listing and deep code intelligence, making it clear—at a glance—what is where and what to read next.\n\nIt is a **single Rust binary with no runtime dependencies** — no Python, no Node, just download it and run it on macOS/Linux/Windows — with broad compatibility for major `tree` flags (`-a -d -f -g -l -p -u -r -s -t -c -L -D -P -I -n -J --prune`, among others). `dirlens`-specific behavior lives behind its own flags: `-G` (gitignore), `-S` (sort by size), `-e` (extension filter), `-C` (clipboard).\n\nOutput is English by default. Use `--lang ja`, set `lang = \"ja\"` in `~/.config/dirlens/config.toml`, or set `DIRLENS_LANG=ja` for Japanese output.\n\n> The legacy Python implementation (v1.0.x) is available on the [`python`](https://github.com/igarinpiano/dirlens/tree/python) branch. Golden tests verify output compatibility with the Rust implementation.\n\n---\n\n## Install\n\n### npm (recommended on every OS)\n\n```bash\nnpm install -g dirlens\n```\n\nThe package automatically selects a native binary for macOS arm64/x64; Linux arm64/x64, musl x64 (Alpine), ppc64, and s390x; and Windows x64/arm64. Windows runs a native `dirlens.exe`.\n\n### Download a binary\n\nDownload the archive for your platform from [GitHub Releases](https://github.com/igarinpiano/dirlens/releases), then put the binary on your `PATH`. Release binaries are also provided, where available, for armv7 (32-bit Linux ARM), i686 (32-bit Linux/Windows), and riscv64gc; these targets are not available from npm because Node.js does not publish official builds for them.\n\n```bash\n# Example: macOS (Apple Silicon)\ntar -xzf dirlens-*-aarch64-apple-darwin.tar.gz\nsudo install -m 755 dirlens /usr/local/bin/\n```\n\n### crates.io\n\n```bash\ncargo install dirlens\n```\n\nThis compiles the project from source.\n\n### cargo-binstall\n\n```bash\ncargo binstall dirlens\n```\n\nThis downloads a prebuilt GitHub Release binary through the crates.io metadata (`[package.metadata.binstall]`), without a local compilation — faster than `cargo install`.\n\n### Build from source\n\n```bash\ngit clone https://github.com/igarinpiano/dirlens.git\ncd dirlens/rust\ncargo build --release\n# Binary: target/release/dirlens\n```\n\n> **About the PyPI package:** `pip install dirlens` still distributes the legacy Python implementation (v1.0.x). Current development happens on the Rust implementation described in this document.\n\n---\n\n## One project map, three ways to use it\n\n`--ai`, `--agent`, and `--mcp` are not separate products — they are different entry points into the same underlying project map, shaped for whoever receives it.\n\n| Mode | Intended user | What it does |\n| --- | --- | --- |\n| Normal CLI | People | Browse a project interactively or use it as a `tree` replacement. |\n| `--ai` | People, pasting into an AI chat | Copies a dated Markdown snapshot (with `.gitignore` applied) to the clipboard — more structured context than a screenshot or a plain `tree`. |\n| `--agent` | Coding agents (Claude Code, Codex, Cursor, ...) | Produces a color-free, clipboard-free project analysis — structure, scale, likely-important spots, dependencies — meant to be read before exploring, not a substitute for the agent itself. |\n| `--mcp` | MCP-capable coding agents | Exposes the same analysis as on-demand tools (`analyze`, `outline`, `focus`, `since`, ...), so an agent can re-query just the piece it needs mid-session. |\n\nIn short: paste `--ai` into an ordinary AI chat, hand `--agent` to an agent as its first look at a project, and let MCP-aware agents query the map incrementally as they work.\n\n## Quick start\n\n```bash\n# Use it like tree: inspect the structure first\ndirlens -G -L 2\n\n# For an AI chat: copy Markdown context to your clipboard\ndirlens --ai -L 3\n\n# For a coding agent: generate a project map before exploration\ndirlens --agent\n\n# Estimate output cost before analyzing an unfamiliar large repository\ndirlens --agent --estimate\ndirlens --agent --budget 3000\n\n# Print MCP registration instructions\ndirlens --mcp-setup\n```\n\n`--agent`'s report is a map for choosing what to read next, not a complete semantic model of the code. Confirm anything that matters by reading the actual file.\n\n---\n\n## Example output\n\n### Basic tree\n\n```text\n$ dirlens -L 2\nmy-project/ (4 dirs, 10 files, 42.1 KB, 2 hours ago)\n├── src/ (1 dir, 4 files, 18.4 KB, 10 minutes ago)\n│   ├── lib.rs (8.2 KB, 10 minutes ago)\n│   ├── main.rs (3.1 KB, 2 hours ago)\n│   └── utils/ (2 files, 7.1 KB, 1 hour ago)\n├── tests/ (2 files, 9.4 KB, 1 hour ago)\n├── Cargo.toml (1.3 KB, 2 hours ago)\n└── README.md (13.0 KB, 3 days ago)\n\nTotal  4 directories, 10 files\n```\n\n### `--ai`: paste-ready AI context\n\n```bash\ndirlens --ai\n```\n\n`--ai` is shorthand for `-G --date -m -C --status`: it applies `.gitignore`, shows relative modification times, wraps the tree in a Markdown code block, and copies the result straight to the clipboard — ready to paste into a chat the moment the command finishes. It is for a human-operated workflow; do not use it from autonomous agents because clipboard access is a side effect.\n\n````text\n```\nProject/ (2 dirs, 2 files, 29.31 KB, 1 week ago)\n├── assets/ (0 dirs, 1 file, 7 bytes, 1 week ago)\n│   └── logo.png (7 bytes, 1 week ago)\n├── src/ (0 dirs, 1 file, 478 bytes, 1 week ago)\n│   └── util.py (478 bytes, 1 week ago)\n├── main.py (219 bytes, 1 week ago)\n└── pyproject.toml (45 bytes, 1 week ago)\n\n  Total  2 directories,  4 files  (.gitignore applied)\n  .py ×2  .png ×1  .toml ×1\n```\n✓ copied to clipboard\n````\n\n### `--agent`: agent analysis mode\n\n```bash\ndirlens --agent\n```\n\n`--agent` disables ANSI color and enables the complete analysis set: token counts, Git metadata and status, TODO/FIXME markers, test hints, entry-point candidates (`*`), config-file detection (`⚙`), symbol outlines, import relationships, language token totals, and long-function reporting. It also respects `.gitignore` by default.\n\n```text\nProject/ (2 dirs, 2 files, 29.31 KB, 1 week ago)\n├── assets/ (0 dirs, 1 file, 7 bytes, 1 week ago)\n│   └── logo.png (7 bytes, 1 week ago, \"feat: initial release\" (10 days ago))\n├── src/ (0 dirs, 1 file, 478 bytes, 1 week ago)\n│   └── util.py (478 bytes, 1 week ago, ~115 tok, 21 lines, \"feat: initial release\" (10 days ago), TODO×1, no test, def load_config, def export_all, class Cache, def __init__, used-by×1)\n├── * main.py (219 bytes, 1 week ago, ~53 tok, 11 lines, \"feat: initial release\" (10 days ago), no test, def main, imports×1)\n└── ⚙ pyproject.toml (45 bytes, 1 week ago, ~17 tok, 3 lines, \"feat: initial release\" (10 days ago), config)\n\n  Total  2 directories,  4 files  (.gitignore applied)\n  .py ×2  .png ×1  .toml ×1\n  Estimated tokens: ~185 tok\n  Tokens by file type:\n    .py ×2  ~168 tok  32 lines\n    .toml ×1  ~17 tok  3 lines\n  TODO/FIXME items: 1\n    src/util.py:12 [TODO] # TODO: parallelize exports for large projects\n  Files without tests: 2 files\n  Entry point candidates: 1 found\n  Config files: 1 found\n  Most depended-on files (imported by many):\n    src/util.py  (used by 1)\n  Suggested reading order (entry points → most depended-on):\n    1. main.py\n    2. src/util.py\n  Analysis methods: gitignore=git check-ignore (exact) / outline=AST:py,js/ts,html(embedded js),rs,go,c,java,rb,php,cs,kt,swift (regex otherwise) / imports=AST+manifest resolution / tokens=BPE(o200k) / dir sizes=raw disk (gitignore not applied)\n```\n\nUse JSON when a program needs to consume the result:\n\n```bash\ndirlens --agent --json\n```\n\nThe JSON output stays valid even when a partial analysis cannot run (it carries the same `schema_version`). Check `errors`, `capabilities`, and per-file fields such as `outline_method` and `tokens_estimated` before treating a heuristic result as definitive.\n\n---\n\n## What `dirlens` adds to a project map\n\n| Layer | Information |\n| --- | --- |\n| Filesystem | Tree, sizes, modification times, extension totals, hidden files, filtering, sorting, and depth limits. |\n| Git | Last commit per file, author/date, working-tree status, recent history, and changes since a ref. |\n| Context | Exact BPE token counts, language totals, output estimates, and a token budget. |\n| Code | Public API outlines, long functions, local imports, circular-dependency detection, and impact queries. |\n| Maintenance | TODO/FIXME inventory, test-coverage hints, entry-point candidates, and known config files. |\n\nThe analysis is deliberately lightweight. It is a navigation aid, not a replacement for reading the relevant source or running tests. Every \"smart\" feature below runs a best-effort tier first and falls back when the environment doesn't support it — see [Analysis methods and limits](#analysis-methods-and-limits) for which tier ran and what it misses.\n\n### Filesystem, display, and workflow\n\n- **Single binary** — no Python, no Node; download it and run it (macOS / Linux / Windows)\n- **Broad `tree` compatibility** — `-a -d -f -g -l -p -u -r -s -t -c -L -D -P -I -n -J --prune` and more behave like `tree`; `dirlens`-only behavior lives behind `-G` (gitignore), `-S` (sort by size), `-e` (extension filter), and `-C` (clipboard)\n- **Color output** — directories, files, and symlinks are colored distinctly (see [Color legend](#color-legend))\n- **Automatic size units** — bytes / KB / MB / GB / TB\n- **Directory sizes** — the total size of a directory's subtree, computed in parallel for speed. This total is always the raw on-disk size and, unlike the tree's own entries, is **not** affected by `-G` (gitignore exclusion) — matching `du` semantics and consistent with the legacy Python implementation. The children listed, the token counts, and everything else analysis-related *are* correctly excluded by `-G`; only `size`/`size_human` is not. Don't infer that ignored files were analyzed just because a directory's size includes them\n- **Item counts** — dirs/files directly under each directory\n- **Extension totals** — a summary of file types across the whole tree\n- **`.gitignore` support (two tiers)** — `-G` excludes matches. With git available, matching uses `git check-ignore` itself (nested rules, `!` negation, `**`, global excludes, `.git/info/exclude` — all supported); without git, it falls back automatically to a builtin matcher\n- **Relative modification times** — `--date` / `-D`\n- **Extension filter** — `-e py` shows only that extension\n- **Pattern filters** — `--exclude` / `-I` and `--include` / `-P` accept wildcards (repeatable)\n- **Size filters** — `--min-size` / `--max-size`\n- **Prune empty branches** — `--prune` hides branches left empty after filtering (`tree --prune`-compatible)\n- **Permissions display** — `-p` for the permission string, `-u` for the owner name (`tree -p`/`-u`-compatible)\n- **Symlink expansion** — `-l` follows a symlinked directory's target and shows it with `→` (cycle-safe)\n- **Full paths** — `-f` shows each entry's path from the root (`tree -f`-compatible)\n- **Reverse sort** — `-r` reverses the active sort order (`tree -r`-compatible)\n- **Disk-usage bar** — `--bar` visualizes an entry's share of its parent directory\n- **Emoji icons** — `--emoji` adds an icon per extension\n- **Markdown output** — `-m` wraps the tree in a code block\n- **JSON output** — `--json` / `-J` emits a stable, machine-readable schema (**versioned with `schema_version`**; symlinks carry `symlink: {target, broken}`, outlines carry the tier actually used as `outline_method`)\n- **HTML report** — `--html` generates a browsable, collapsible tree you can open in a browser\n- **Clipboard copy** — `-C` copies the output automatically (ANSI codes stripped); if the copied content looks like it contains a `.env` file or a secret key, a warning is printed to stderr\n- **AI chat paste mode** — `--ai` applies gitignore exclusion, dates, Markdown, and clipboard copy in one shot (for a human pasting into a chat)\n- **Agent analysis mode** — `--agent` applies every AI/agent-oriented analysis feature below in one shot (no color, no clipboard — safe for autonomous execution)\n- **Capability report** — `--check` shows which analysis tier is actually available in this environment (exits 1 if anything is degraded)\n- **Hidden files** — `-a` toggles them on\n- **Size sort** — `-S` sorts largest first\n- **Interactive TUI** — `-i` launches a tree browser with expand/collapse, filtering, and a detail pane\n- **Git status overlay** — `--status` overlays `[M]`/`[??]`/`[A]` marks on the tree\n- **Heat coloring** — `--heat age|size|churn` colors filenames along a gradient\n- **Largest-files list** — `--top N` shows a flat list without the tree, useful for disk cleanup\n- **Duplicate detection** — `--dupes` finds files with identical content and the wasted space\n- **Directory comparison** — `--compare DIR` shows additions/deletions/changes between two trees\n- **Config files** — `~/.config/dirlens/config.toml` and a project's `.dirlens.toml` define default flags and named presets (`--preset`)\n- **Shell completions / man page** — `--completions <shell>` / `--man`\n- **Secret-file warning** — copying via `--ai`/`-C` warns on stderr if the content looks like it contains a `.env` file or a private key\n- **Progress spinner** — long scans show a spinner on the terminal (suppressed when not attached to one)\n\n### Code and context layers (all enabled together by `--agent`)\n\nThese are the signals an AI chat or coding agent uses to decide what to read and how far to explore — not a way to pin down a file's exact behavior. After narrowing to the relevant files, read them. Each of these is a best-effort tier with a documented fallback; the tier that actually ran is always reported (`--check`, or the `capabilities`/`analysis` block in `--agent --json`).\n\n- **Token counting** — `-T` shows a per-file token count: **exact `o200k_base` BPE**. Files above the per-file read limit are proportionally estimated instead (`tokens_estimated: true` in JSON). The limit defaults to 5 MB and scales up automatically based on host memory (override with `DIRLENS_MAX_FILE_BYTES`; the active value is visible via `--check`'s `capabilities.max_file_bytes`). The fallback tier is a character-count heuristic. The summary also breaks tokens down by language. Repeat runs are faster thanks to a persistent cache (disable with `--no-cache`, or clear it with `--clear-cache`)\n- **Git integration** — `-H` shows each file's last commit (message, relative date), scanning up to the most recent 2,000 commits. Also surfaces frequently-changed files (hotspots)\n- **TODO/FIXME extraction** — `-K` extracts `TODO`/`FIXME`/`HACK`/`XXX` comments with line numbers\n- **Missing-test detection** — `-V` flags source files with no corresponding test file found. Beyond naming conventions, it **follows transitive imports from test files** and understands Rust's inline tests (`#[cfg(test)]`)\n- **Entry-point detection** — `-N` flags likely entry files based on known names (`main.py`, `index.js`) and `package.json`'s `main`/`bin` fields\n- **Symbol outlines** — `-O` extracts function/class names using per-language AST parsers (Python / JS·TS / Rust / Go / C / Java / Ruby / PHP / C# / Kotlin / Swift), falling back to regex on a parse failure. `-A` narrows the result to the public API only. JSON output includes the first doc-comment line and the line range; the summary also lists the **top 5 longest functions**\n- **Import/dependency graph** — `-M` analyzes local import relationships between files and shows `imports×N` (dependency count), `used-by×N` (dependent count), and circular dependencies. **Resolution understands tsconfig `paths`, package.json `imports`, `go.mod`, Rust's module tree (`crate::`/`self::`/`super::`), Java/Kotlin FQCNs, PHP `use`, and Ruby's `require_relative`**\n- **Impact queries** — `--focus FILE` shows \"what could break if I change this file\" as the transitive closure of dependents/dependencies (supports `--json`)\n- **Token budget** — `--budget N` automatically trims the text output to fit within N tokens (measured with the same BPE counter, trimming depth → annotations → tree rows in that order; omitted content is noted along with the token count needed to show everything). `--estimate` gives a per-depth cost estimate up front\n- **Diff mode** — `--since REF` shows only files changed since a given git ref (includes untracked files; lists deleted files too)\n- **stdin file list** — `git diff --name-only | dirlens --stdin` analyzes only the listed files (tokens, outline, TODOs; supports `--json`)\n- **Public API diff** — `--api-diff REF` compares public symbols against a git ref, for detecting breaking changes\n- **Graph export** — `--mermaid` / `--dot` emit the import graph as diagram source; `--csv` emits a file-metadata table\n- **`--pack`** — `--pack FILE...` formats file contents plus token counts into paste-ready Markdown\n- **MCP server** — `--mcp` runs an MCP server exposing 9 tools an agent can call natively: `analyze`, `tree`, `outline`, `imports`, `focus`, `todos`, `since`, `history`, `api_diff`. It runs in the same binary/process as the CLI, so `DIRLENS_*` environment variables (`DIRLENS_MAX_FILE_BYTES`/`DIRLENS_MAX_WORKERS`/`DIRLENS_GITIGNORE`/`DIRLENS_AST`/`DIRLENS_TOKENS`/`DIRLENS_COMPAT`/`DIRLENS_CACHE`) and the persistent token cache apply the same way over MCP as they do on the CLI. `analyze`/`tree` support a token `budget`, cost `estimate`, and `top`; `imports`/`todos` return a flat array of only the matching files plus a `limit` (truncation is reported via `truncated`/`total_files`; `imports` also supports `format: mermaid/dot`); `outline` accepts multiple files at once (unresolvable paths are reported in `errors`, duplicates are deduped, nested symbols carry `parent`) and returns the public API when `files` is omitted; `api_diff` includes untracked files annotated `(untracked)`; `tree`/`analyze` accept `include_ignored` to turn off gitignore exclusion. Most MCP hosts cap a single response (Claude Code defaults to 25,000 tokens) — if `estimate` reports a result over that cap, pass a `budget` under it (the estimate table flags the offending row with `⚠ exceeds host cap` and a suggested budget). **Registration is guided by `dirlens --mcp-setup`**, which prints your binary's absolute path pre-filled into a Claude Code one-liner and Claude Desktop/Cursor config JSON, ready to paste\n- **Config-file detection** — `-F` detects and lists known configuration files (`.env`, `tsconfig.json`, `Makefile`, etc.)\n- **Structured errors** — `--json` always returns valid JSON even when part of the analysis fails, reporting the failure machine-readably in the `errors` array\n\n---\n\n## Common commands\n\n```bash\n# ── Agent / AI analysis ──────────────────────────────────────\ndirlens --agent          # token counts, git info, TODOs, missing tests, entry points,\n                          # outlines, import graph, config files — all at once\n                          # (--agent already implies --no-color)\ndirlens --agent --json   # same, as JSON (for scripts/agents)\ndirlens --check          # which analysis tier is available here (exit 1 if degraded)\n\n# ── AI/agent analysis (individual flags) ─────────────────────\ndirlens -T                # per-file token count (exact BPE)\ndirlens -H                # last-commit info (needs git)\ndirlens -K                # extract TODO/FIXME/HACK/XXX\ndirlens -V                # source files with no detected test\ndirlens -N                # mark likely entry-point files\ndirlens -O                # function/class outline (AST)\ndirlens -O src/main.py    # outline of a single file (also shows tokens/TODOs)\ndirlens -A                # public-API-only outline\ndirlens -M                # local import/dependency analysis\ndirlens -F                # detect and list config files (.env, tsconfig.json, ...)\n\n# ── Context efficiency and impact (agent-oriented) ───────────\ndirlens --agent --estimate       # estimate output cost per depth (to choose a --budget)\ndirlens --agent --budget 3000    # auto-trim output to 3000 tokens\n                                  # (omitted content is noted as \"... N more entries\",\n                                  #  along with the token count needed to show it all)\ndirlens --focus src/main.py -G   # this file's dependents/dependencies (direct + transitive)\ndirlens --since HEAD -G          # only files changed since the last commit\ngit diff --name-only | dirlens --stdin --json   # analyze only the listed files\ndirlens --api-diff v1.0.0        # public API diff (detect breaking changes)\ndirlens --mcp-setup              # print MCP registration steps (copy-paste ready)\ndirlens --mcp                    # run as an MCP server (stdio)\n\n# ── Human-friendly modes ──────────────────────────────────────\ndirlens -i                # interactive TUI browser\ndirlens --status          # overlay git status marks on the tree\ndirlens --heat age        # gradient color by recency (also: size, churn)\ndirlens --top 10          # flat list of the 10 largest files/directories\ndirlens --dupes           # find duplicate files (size + content hash)\ndirlens --compare ../v2   # diff two directory trees\ndirlens --pack src/a.py src/b.py -C   # format file contents for pasting, then copy\n\n# ── Graph and table export ────────────────────────────────────\ndirlens -M --mermaid      # import graph as Mermaid\ndirlens -M --dot          # import graph as Graphviz DOT\ndirlens --csv -T -G       # file metadata as CSV\n\n# ── Language and configuration ────────────────────────────────\ndirlens --lang ja         # Japanese output (default is English)\ndirlens --preset quick    # apply a named preset from the config file\ndirlens --no-config       # ignore config files\ndirlens --completions zsh > ~/.zfunc/_dirlens   # generate shell completions\ndirlens --man             # generate the man page (roff)\n\n# ── Display control ────────────────────────────────────────────\ndirlens                  # current directory\ndirlens ~/Desktop        # a specific directory\ndirlens -L 2             # limit to 2 levels deep (tree -L-compatible)\ndirlens -d               # directories only (tree -d-compatible)\ndirlens -a               # include hidden files\ndirlens -r               # reverse sort order (tree -r-compatible)\ndirlens --filesfirst     # list files before directories\ndirlens -f               # full paths from the root (tree -f-compatible)\n\n# ── Filtering ────────────────────────────────────────────────\ndirlens -G               # exclude .gitignore matches\ndirlens -G --prune       # gitignore exclusion + prune empty branches\ndirlens -e py            # only .py files\ndirlens -P '*.md'        # only .md files (tree -P-compatible)\ndirlens -I '*.log'       # exclude .log (tree -I-compatible)\ndirlens --exclude 'dist' --exclude '*.log'   # multiple excludes\ndirlens --min-size 1M    # only files 1 MB or larger\ndirlens --max-size 100K  # only files 100 KB or smaller\n\n# ── Sorting ────────────────────────────────────────────────────\ndirlens -S               # largest first\ndirlens -t               # by modification time, newest first (tree -t-compatible)\ndirlens -c               # by status-change time (tree -c-compatible)\ndirlens -t -r            # by modification time, oldest first\n\n# ── Detail ────────────────────────────────────────────────────\ndirlens --date           # relative modification times (tree -D-compatible is -D)\ndirlens --bar            # disk-usage bar\ndirlens --emoji          # emoji icons\ndirlens -p -u -g         # permissions, owner, group (tree-compatible)\ndirlens -l               # expand symlinked directories (tree -l-compatible)\n\n# ── Output format ──────────────────────────────────────────────\ndirlens -m               # Markdown code block\ndirlens --json           # JSON (tree -J-compatible is -J)\ndirlens --html           # HTML report (default: dirlens.html)\ndirlens -C               # copy to clipboard\ndirlens --no-color > dirlens.txt   # write to a text file\n```\n\nUse `-G` with individual analysis flags to honor `.gitignore`. `--agent` enables it automatically.\n\n## Output budgets for large repositories\n\nBefore sending a large project map to a chat or agent, estimate it:\n\n```bash\ndirlens --agent --estimate\n```\n\nThen choose a hard output budget:\n\n```bash\ndirlens --agent --budget 3000\n```\n\n`dirlens` first reduces tree depth, then annotations, then tree rows. It reports omitted entries and the measured token count, so you can decide whether a larger budget is worthwhile.\n\n`-L` only restricts the displayed tree depth; project-wide analysis aggregates still cover the full scan. Directory sizes are raw disk sizes and, unlike the tree entries, include ignored content—do not infer that ignored files were analyzed merely from a directory's size.\n\n## Options\n\nRun `dirlens --help` for the authoritative, version-specific option list.\n\n### Tree and display\n\n| Option | Description |\n| --- | --- |\n| `-L N` | Limit displayed tree depth. |\n| `-a` | Include hidden files. |\n| `-d` | Directories only. |\n| `-G` | Respect `.gitignore` (two-tier: exact via `git check-ignore` when available, otherwise a builtin approximation). |\n| `-e EXT` | Show only files with this extension (e.g. `-e py`). |\n| `-I PATTERN` | Exclude matching paths. |\n| `-P PATTERN` | Include only matching paths. |\n| `--min-size` / `--max-size` | Filter by file size (e.g. `1M`, `500K`). |\n| `--prune` | Hide directories left empty by a filter. |\n| `-f` | Show full paths from the root. |\n| `--filesfirst` | List files before directories. |\n| `-s` | Show sizes (always on; kept for `tree` compatibility). |\n| `-D` | Show modification times, relative. |\n| `-S` | Sort by size, largest first. |\n| `-t` | Sort by modification time, newest first. |\n| `-c` | Sort by status-change time. |\n| `-r` | Reverse the selected ordering. |\n| `-p` / `-u` / `-g` | Show permissions / owner / group (fully supported on macOS/Linux; approximated on Windows). |\n| `-l` | Expand symlinked directories (cycle-safe). |\n| `--bar` | Show a disk-usage bar relative to the parent directory. |\n| `--emoji` | Show an emoji icon per extension. |\n| `--top N` | Show the largest files/directories as a flat list. |\n\n### Analysis and Git\n\n| Option | Description |\n| --- | --- |\n| `--agent` | Full agent-oriented analysis, without ANSI color. |\n| `--ai` | Clipboard-oriented Markdown context for AI chat. |\n| `-T` | Show BPE token counts. |\n| `-O PATH` | Show functions and classes in one file. |\n| `-A` | Show public API across the project. |\n| `-M` | Show local import relationships and cycles. |\n| `--focus PATH` | Show dependencies and dependents of a path. |\n| `-V` | Mark files without a detected test. |\n| `-K` | Mark TODO/FIXME occurrences. |\n| `-N` | Mark entry-point candidates. |\n| `-F` | Mark recognized configuration files. |\n| `-H` | Show recent commits and hotspots. |\n| `--since REF` | Limit analysis to paths changed since a Git ref. |\n| `--api-diff REF` | Compare the public API against a Git ref. |\n| `--status` | Overlay Git status. |\n\n### Formats and integrations\n\n| Option | Description |\n| --- | --- |\n| `--json` | Emit machine-readable JSON. |\n| `--csv` | Emit CSV where supported. |\n| `--mermaid` / `--dot` | Export import relationships as a diagram. |\n| `-m` | Emit a Markdown code block. |\n| `--html [FILE]` | Generate an HTML report (default: `dirlens.html`). |\n| `-C` | Copy output to the clipboard (warns on stderr if it looks like it contains secrets). |\n| `-n` | Disable color output. |\n| `-i` | Launch the interactive TUI browser. |\n| `--check` | Print a capability report; exits 1 if anything is degraded. |\n| `--heat MODE` | Color filenames by `age`/`size`/`churn`. |\n| `--top N` | Flat list of the largest files/directories (see above). |\n| `--dupes` | Find duplicate files by size and content hash. |\n| `--compare DIR` | Diff this tree against another directory. |\n| `--pack FILE...` | Bundle file contents and token counts for pasting. |\n| `--mcp` | Run the MCP server. |\n| `--mcp-setup` | Print MCP setup instructions. |\n| `--lang ja` | Use Japanese output. |\n\n### Configuration and shell integration\n\n| Option | Description |\n| --- | --- |\n| `--preset NAME` | Apply a named argument set from `[presets]` in the config file. |\n| `--no-config` | Ignore all config files (also: `DIRLENS_CONFIG=off`). |\n| `--no-cache` | Skip the persistent token-count cache for this run (also: `DIRLENS_CACHE=off`). |\n| `--clear-cache` | Delete all persistent token-count cache files and exit. |\n| `--completions SHELL` | Print a shell-completion script (bash/zsh/fish/powershell/elvish). |\n| `--man` | Print the man page (roff). |\n| `--version` | Show the version (no short form — `-V` is taken by `--missing-tests`). |\n\n## Color legend\n\n| Color | Meaning |\n| --- | --- |\n| Blue (bold) | Root directory |\n| Cyan (bold) | Subdirectory |\n| Green | File |\n| Magenta | Symlink |\n| Dim | Size annotation |\n\n## Analysis methods and limits\n\n`dirlens` favors a best available method with a safe, documented fallback for every \"smart\" feature. Use `dirlens --check` to see what is actually active in your environment (also available programmatically via `--agent --json`'s `capabilities`/`analysis` blocks).\n\n| Feature | Best tier | Fallback | Notes |\n| --- | --- | --- | --- |\n| `.gitignore` (`-G`) | `git check-ignore` — the real git engine (nested rules, `!` negation, `**`, global excludes, `.git/info/exclude`) | Builtin matcher (an approximation covering basic patterns only) | Falls back when git or a repository isn't available |\n| Token counts (`-T`) | Exact `o200k_base` BPE (vocabulary data ships in the binary); results are cached persistently, see [Configuration](#configuration) | Character-count heuristic | Files above the per-file read limit (5 MB by default, scaling up to 15/30/50/80 MB based on host memory; override with `DIRLENS_MAX_FILE_BYTES`) are proportionally estimated even on the best tier, flagged as `tokens_estimated: true` in JSON. The active limit is visible via `--check`'s `capabilities.max_file_bytes`. Tokenizers differ by model, so counts are only a rough guide outside the OpenAI family. Non-regular files (FIFOs, sockets, devices) are treated as size 0 and never read |\n| Outlines (`-O`/`-A`) | Per-language AST parsers (Python, JavaScript/TypeScript, Rust, Go, C, Java, Ruby, PHP, C#, Kotlin, Swift). HTML outlines inline `<script>` blocks (external `src` scripts are not followed). No false positives from string literals; captures the first doc line and the line range. Python's public/private judgment is scope-aware — a local `def`/`class` inside a function and its members are private; a class's methods are judged public only if the class itself is public. Nested symbols carry their enclosing symbol's name (`parent` in JSON; `def Class.method` / `fn Type::method` in text) | Regex extraction (no doc line or line range; visibility judged by name only) | A syntax error in a file falls back automatically; JSON's `outline_method` (`\"ast\"`/`\"regex\"`) reports which tier actually ran |\n| Import graph (`-M`/`--focus`) | AST extraction plus manifest resolution (TypeScript `paths`/`baseUrl`, package.json `imports`, `go.mod`, Rust's module tree, Java/Kotlin FQCNs, PHP `use`/`require`, Ruby `require_relative`). Nested `Cargo.toml` files are detected as crate boundaries, so monorepos/workspaces resolve per crate. Edges from a bare `mod` declaration are excluded from cycle detection | Regex plus relative-path resolution | External packages (e.g. inside `node_modules`) are never resolved to source and are reported as external. C#/Swift have no local resolution. `tsconfig`/`package.json` `imports`/`go.mod` are read only from the scan root, so `--focus` on a file inside a nested JS/Go sub-project carries a caveat note |\n| Missing-test detection (`-V`) | Naming conventions plus transitive imports from test files plus Rust inline-test detection | Naming conventions only | This is not code coverage. Only `.py/.js/.jsx/.ts/.tsx/.go` (plus `.rs` when AST is enabled) are judged; other files report `has_test: null` in JSON. Rust's `lib.rs`/`main.rs`/`mod.rs` are exempt by name (they're typically re-export/wiring files) — note this also means a `lib.rs` full of real logic won't be flagged either |\n| Entry points (`-N`) | Known filenames plus `package.json`'s `main`/`bin` fields | — | |\n| TODO extraction (`-K`) | Word-boundary text match | — | Can match the word inside a string literal, not only inside a comment |\n| Git integration (`-H`/`--status`/`--since`/`--api-diff`) | Shells out to `git`; `-H` scans the most recent 2,000 commits. Running from a repository subdirectory is handled correctly — git's repo-root-relative paths are remapped to the scan root. `--api-diff` includes untracked files, annotated `(untracked)` | — | Files whose only changes are older than the 2,000-commit window report no history |\n\nFor consequential decisions, inspect the actual source after using the project map to find it.\n\n## Configuration\n\nEnvironment variables include:\n\n| Variable | Purpose |\n| --- | --- |\n| `DIRLENS_LANG` | Default language, for example `ja`. |\n| `DIRLENS_CONFIG` | Set to `off` to skip loading all config files (also: `--no-config`). |\n| `DIRLENS_MAX_FILE_BYTES` | Maximum bytes read per file for analysis. |\n| `DIRLENS_MAX_WORKERS` | Override the parallel-worker limit. |\n| `DIRLENS_GITIGNORE` | Enable or disable gitignore handling. |\n| `DIRLENS_AST` | Enable or disable AST analysis. |\n| `DIRLENS_TOKENS` | Enable or disable token counting. |\n| `DIRLENS_CACHE` | Enable or disable the persistent token cache. |\n| `DIRLENS_COMPAT` | Set to `python` to pin every fallback tier plus Japanese output, for byte-for-byte comparison against the legacy Python implementation (used by golden tests). |\n\nThe persistent token cache lives at `~/.cache/dirlens/` (or `$XDG_CACHE_HOME/dirlens/`), keyed per\nproject. Pass `--no-cache` (or set `DIRLENS_CACHE=off`) to skip it for one run, or run\n`dirlens --clear-cache` to delete all cached files.\n\n`dirlens` reads a global config file (`~/.config/dirlens/config.toml`, or `$XDG_CONFIG_HOME/dirlens/config.toml`), then a project config file (the nearest `.dirlens.toml` found by walking up from the target directory). Precedence is **CLI flags > project config > global config**.\n\nExample configuration:\n\n```toml\n# ~/.config/dirlens/config.toml\nlang = \"ja\"\ngitignore = true    # always apply -G\nemoji = true        # always apply --emoji\nexclude = [\"dist\"]  # always exclude this pattern\n\n[presets]           # apply with: dirlens --preset quick\nquick = [\"-L\", \"2\", \"-G\"]\npaste = [\"--ai\", \"-L\", \"3\"]\n```\n\nSupported keys: `lang`, `gitignore`, `all`, `date`, `emoji`, `markdown`, `no_color`, `bar`, `prune`, `filesfirst`, `follow`, `full_path`, `depth`, `min_size`, `max_size`, `exclude`, `include`, and `[presets]`.\n\n## Notes and caveats\n\n- A directory's size is the sum of **all subfiles**, including hidden files and anything matched by `.gitignore`.\n- Computing directory sizes (stat-ing the full subtree for each total) runs across multiple cores for speed on native builds — a transparent optimization. Output is byte-identical to a serial computation, and there's no regression on a single core (`DIRLENS_MAX_WORKERS` adjusts the thread count).\n- Heavier analysis (token counting, outlines, TODOs, import analysis) also runs in parallel on native builds, since each of these depends only on a file's own content. Output is byte-identical to running serially (`--agent`/`-T`/`-O`/`-M` are roughly 3x faster on 4 cores).\n- **`+` notation** — when part of a subdirectory couldn't be read, sizes show as `1.5+ KB` (at least 1.5 KB) and counts as `3+ dirs`.\n- **Permission denied** — unreadable directories are shown in bold red as `[Permission Denied]` and skipped.\n- **Symlinks** are shown as `→ target path`; `-l` expands a symlinked directory's target (cycle-safe).\n- Running at your home folder (`~/`) or filesystem root (`/`) can be slow — size computation recurses to the bottom regardless of the display depth.\n- **`-L` (depth limit) only shallows the displayed tree** — analysis aggregates (TODO count, estimated tokens, per-language breakdown, longest functions, etc.) always reflect the full project. Only `Total N directories, M files` and the extension counts reflect what's actually displayed (matching `tree`'s own semantics).\n- The `--json` output schema is treated as a **stable public API**: the top-level `schema_version` only increases on a field rename, removal, or type change (additions are backward-compatible).\n- `-p` (permissions), `-u` (owner), and `-g` (group) are fully supported on macOS/Linux; on Windows they show an approximation derived from file attributes and numeric IDs.\n\n## Instruction templates for AI agents\n\nIf you want an agent (Claude Code, Cursor, etc.) to use `dirlens --agent` as its go-to project-exploration step, paste one of these templates as-is into a global rule file such as `CLAUDE.md` or `.cursorrules`. Pick the one that matches your setup (the prose above each file's divider is for humans — only the content below the divider needs to be pasted):\n\n- **[`AGENT_RULE.md`](AGENT_RULE.md)** — works even where `dirlens` might be missing or outdated; emphasizes checking for it first and falling back gracefully.\n- **[`AGENT_RULE_STRICT.md`](AGENT_RULE_STRICT.md)** — a stricter version that assumes the `dirlens` CLI is always available (skips the existence check, pushes full feature use).\n- **[`AGENT_RULE_MCP.md`](AGENT_RULE_MCP.md)** — for environments with both the CLI and the MCP server (`--mcp`) registered; adds guidance on choosing between the two and falling back when one misbehaves.\n\n## Development\n\n```text\nrust/\n├── crates/dirlens-core/   # analysis core (I/O only via provider traits; native + wasm)\n├── crates/dirlens-cli/    # CLI (clap, std providers, parallel size prewarming)\n└── crates/dirlens-wasm/   # wasm bindings (analyzes a host-supplied tree)\ntests/golden/              # golden tests (snapshot comparison, tiered adversarial checks)\n```\n\n```bash\ncd rust && cargo build --release && cargo test --workspace\ncargo run -- --agent -L 2   # smoke-test a debug build\npython3 tests/golden/run.py verify --bin rust/target/release/dirlens   # snapshot check\npython3 tests/golden/tier_check.py --bin rust/target/release/dirlens   # gitignore tier check\npython3 tests/golden/ast_check.py  --bin rust/target/release/dirlens   # AST tier check\n```\n\nSee `tests/golden/README.md` / `tests/golden/DELTAS.md` for compatibility verification against the legacy Python implementation (`run.py live`) and the ledger of intentional differences.\n\n## License\n\nApache-2.0. Use, redistribution, and modification are permitted; retaining the copyright notice and `NOTICE` is required. See [LICENSE](LICENSE) and [NOTICE](NOTICE) for details.\n\nToken counting bundles the [tiktoken](https://github.com/openai/tiktoken) `o200k_base` vocabulary data (MIT License).\n\nCopyright 2026 Igarin\n","readmeFilename":"README.md"}