{"_id":"@androff/tutor-ai","_rev":"26-90ac3062bc26d99fcb995ef5f46f0a48","name":"@androff/tutor-ai","dist-tags":{"latest":"0.3.8"},"versions":{"0.0.2":{"name":"@androff/tutor-ai","version":"0.0.2","_id":"@androff/tutor-ai@0.0.2","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"765135916a5fb60e593b1d4859f54a0b57ca27f6","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.0.2.tgz","fileCount":2,"integrity":"sha512-qHipB49WqxSy0LJiFpyCvkQE2he7nTboqsUrTYXZm7xueJpzl+GERRrWyFT5rcsLdwHSUzGs+X68p2vt4ljU2g==","signatures":[{"sig":"MEUCIQDbu0d3ooM0/ul1sP0oqKOQT2WHA+hM0am89Y17GPDIgQIgS09u5mP1F0b4g8sJm7w5D01sksMeaqrom1RyHtTx57o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13766523},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"d5f163eff01f679ac68e862165a1e64e0b31ecff","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"11.16.0","directories":{},"_nodeVersion":"26.4.0","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.0.2_1785766927422_0.6038302119154628","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@androff/tutor-ai","version":"0.0.3","_id":"@androff/tutor-ai@0.0.3","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"795f8c398e8efd13e77ec84d848e12e0a741ab77","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.0.3.tgz","fileCount":2,"integrity":"sha512-eoamGScU+sdPlTWzkADHDteen853WeL2ghN4Axql5M3mbrIwybT6YMwxUXcjaQ78CzLp628jStLB7MsqNwDaOg==","signatures":[{"sig":"MEUCIHEvupJeoZ7uM1yJr4y5oCYe9qifZjllA7jaFqkaeLzxAiEAurEq3maLtmV//t5eVlgI9+IexNfpM+ZQXz4H30XcAVI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13766523},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"1cf6066b898e3ca426f6674b6ee5a5d584acc18d","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.0.3_1785767302420_0.046073882393828924","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@androff/tutor-ai","version":"0.0.4","_id":"@androff/tutor-ai@0.0.4","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"be210a7e74f355e9896343ec2faa0006a52a7118","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.0.4.tgz","fileCount":2,"integrity":"sha512-LQbEvBfYtMzht/IXa0GUk8BWcTPdA4OMD0FVKo375QtGAOOZ9lbVMvals9Gsrs0GzTCBm+7O3qlYVP2Gu5H9PA==","signatures":[{"sig":"MEUCIQDZ2VN/SeD+N9RFA2paoeK4zh/Kde0pl2pYfYwKrXMgMwIgeFMtHbDyEJzt5s3/9fmSaL1R/Ppr53zgaPP1ElHluHE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13775566},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"eb0b10e93591e75032f983b0060653a02df30dc7","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.0.4_1785770771692_0.4532113260550845","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"@androff/tutor-ai","version":"0.0.5","_id":"@androff/tutor-ai@0.0.5","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"d487b5799aa4ec829ea9e3a44d1d3874169f0c05","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.0.5.tgz","fileCount":2,"integrity":"sha512-98+d1Vwbus/w8nEjJiqnAdKbjdujH+WfqpY93RgpfP700uXRWM4BSxZqm+JM8a21MKSy8qu+JC7MNhTmFJwZDA==","signatures":[{"sig":"MEUCIGRiHepTd7vhHhvdwOSBBjy7IRxFxV3W4RDUNRpTfW5ZAiEAgtm3aCCGva7omv8p7kGTSGsunBY/jns1w8StHIo1kwc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13776976},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"72bf82974cc50a6be3625421ebabee1e7c30b195","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.0.5_1785773035047_0.44236800134544096","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"name":"@androff/tutor-ai","version":"0.0.6","_id":"@androff/tutor-ai@0.0.6","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"99cf893f4d82e98d5c8991ed8b63401cffceca89","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.0.6.tgz","fileCount":2,"integrity":"sha512-/JvT8r0ZADLNu/83uaRRfNxTm8lkKl6+5AWq5xXxBRt+zagBKrRz+2+B+p+Yzyfr7Y7jKO6AQjNUdRN4flrHog==","signatures":[{"sig":"MEUCIDt3nqVZEWqvBc8ATzr9vLAw/rjKrejtciMb7pG3PVhXAiEAlwwGCnl0R3VAYPE4hK7XzjjsL+Hj+0gXV923haQfIys=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13779022},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"555aca2f713e316da66f5fd92bb90ef39e788b70","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.0.6_1785773639174_0.0718966715522662","host":"s3://npm-registry-packages-npm-production"}},"0.0.7":{"name":"@androff/tutor-ai","version":"0.0.7","_id":"@androff/tutor-ai@0.0.7","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"d26606a3d3c01554c81046e604933a3a0e5a5966","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.0.7.tgz","fileCount":3,"integrity":"sha512-MT+zDceJZVFTMbHgLQ+nPxwRKDR16tr3BuMfJYQLYtoMgIK0+AilQfb96efiRCJZExNSTKF/m/yGq0a7xpA5zg==","signatures":[{"sig":"MEQCIFLjak/E6wxCYNMDCwRrPpQACWdpI5KspcEqNiOH2y6SAiBSA/fkx4ocI2rG5hgRP7e/PVuAmkumA5tTjzX4M2Jh2A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13783049},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"10654c9ac695358861b0c0f1eb64bc26e987e84d","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.0.7_1785775290874_0.1353912537987425","host":"s3://npm-registry-packages-npm-production"}},"0.0.8":{"name":"@androff/tutor-ai","version":"0.0.8","_id":"@androff/tutor-ai@0.0.8","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"8e4369fa714dca9f02072b3fa12b21508973b35c","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.0.8.tgz","fileCount":3,"integrity":"sha512-fbXhCSffYJlcCWvoboUXYrFjuiP6yxqdQk1T+7rcE9pI/54aer9R4GQ6zFa9GHkMBV8GNqxyOknibSzKXBkQcQ==","signatures":[{"sig":"MEYCIQDWXL6KdvnDyzsooE1yLKBdCM4FfLr6a/q5HMjanIhSDQIhANqBNockti6dRUHJFmQaolDyDYw55XkTtCYmdgFYjHi8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13786092},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"f7d651b7d862c6527fabbd4cf098440390dc82f1","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.0.8_1785821389263_0.7440193256567234","host":"s3://npm-registry-packages-npm-production"}},"0.0.9":{"name":"@androff/tutor-ai","version":"0.0.9","_id":"@androff/tutor-ai@0.0.9","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"2c8299f16b0b57266d621c296db7a218ace9a5e1","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.0.9.tgz","fileCount":3,"integrity":"sha512-F5o3lxHOExe3cqEinI+XyqubKGEOSA/2g09F7wPMX2kArjprREcSCd8XgZOIa4xJvL659zefdYnpcDG3I/4FAw==","signatures":[{"sig":"MEQCIBrfw51/5t40WMJEIGMnuC/riNPhGtE2xNr+0sWLDyU/AiBtc7M25JfQA3HnFCMU5D98+5TfMhzzFqZv0N3NKTeEdw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13786663},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"d71c16672d1c0f54ba65b220e15404727e9f59b6","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.0.9_1785821615422_0.2784103138774976","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@androff/tutor-ai","version":"0.1.0","_id":"@androff/tutor-ai@0.1.0","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"14d5b5361db120bf0b6c8a3b25c612628b791153","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.1.0.tgz","fileCount":3,"integrity":"sha512-WQrVCTjTOpOwelBt/S62cd/PL/spCgv/YcQ/0sEyajKEXCRJ+lcJOGJcQahyomGklTJ6tHZVsDVRicZ4xHiaaw==","signatures":[{"sig":"MEYCIQCHhee7/u7ueaFh2HJuoiK+CZ6SRbEUPiXglL6BF7dMtAIhANn/q8B54RsBGBCphyeGW95wHsBL4YC6Q+PzQ7eop+HY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13807940},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"b281e7525f499314ec96abd877270c59c7b01d59","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.1.0_1785823643785_0.934423792104706","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@androff/tutor-ai","version":"0.1.1","_id":"@androff/tutor-ai@0.1.1","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"42249b657a3095620ebe355c79610c80e684cde2","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.1.1.tgz","fileCount":3,"integrity":"sha512-IqKub/65EDnmyZ8CO66RYoDeD/mBK6rcaCvp3q5JqU8yss6qUhqieAuACW1jtYdOOwNsSXmWhZDwKbpW6+8aug==","signatures":[{"sig":"MEQCIGT7TnGoX4FPS08Lhe7SpOEak3tuIije+3fVN6kFZQHJAiA/4ZhMMohxgMEpaFt513eg0IFf2JjXFPXDJQ8zCAH6LQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13813368},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"83a1d34ca12c9d7934293de9c6c2af3a9c4ea76e","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.1.1_1785825329945_0.1710520722796507","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@androff/tutor-ai","version":"0.1.2","_id":"@androff/tutor-ai@0.1.2","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"9b248ba335196a82a5f8ec590e07380388f3f3d9","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.1.2.tgz","fileCount":3,"integrity":"sha512-QBf7PGYW9Xb/gXWtVaesq00MZgqHkKLnwcymECPN6l52qHsMjzE62pH7Wf+EfMEdFyaUdx5edC7UbfPFpnFDHQ==","signatures":[{"sig":"MEUCIQCYmk/MsDkACv3Tkhu+rf1PYPycnBd8BJGSjAQs3VA+3wIgQvsqqAhwNnKQQq+lI4Rcq5SuPaQ5Z14BQV32TOaVlto=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13813743},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"2bb6388236de35b66db5b01403854dfa5733f90f","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.1.2_1785826261285_0.7903938665943104","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@androff/tutor-ai","version":"0.1.3","_id":"@androff/tutor-ai@0.1.3","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"e550f8b6fd1e30c72029ede5a1a0da7e463e64a2","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.1.3.tgz","fileCount":3,"integrity":"sha512-Ci5JHANgq0tlhYIDy3PQB7kTbhPYtHluKdbxuSU0NJDjzzKK/n+JHls1KtYHy5vePkIbxfeX/yT/hirLXDC1hA==","signatures":[{"sig":"MEYCIQDHHIEBeN1ZO+JqrId8EsuqTcostuG7q1jh45Bk0SBd8QIhAMkvgElJBrvALakQN9IuPjvEZgJhVpxsboj20xTB9QVS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13814766},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"8a4fccd7a0b08b6e75afb970b203b2279df72d7f","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.1.3_1785829009130_0.8354816092560855","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@androff/tutor-ai","version":"0.1.4","_id":"@androff/tutor-ai@0.1.4","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"2e566f86d92d5298af305a9bca104f53545da843","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.1.4.tgz","fileCount":3,"integrity":"sha512-48g00lJykVXnyOffo0KUfRM8/rt2bSF38IZWoRfp2pM+LNLMDcvuPlTCpoWuUGi5QU2ztWAVjo/x3sssfEIfGw==","signatures":[{"sig":"MEYCIQCMrUDN2JoeA0+6udYaVBPbxEYNMLroKj0+o6XV0EjSqAIhALDqbmqkc10ezfoRpyufYHAuxFPR8f19l+yj/yJGJ5B6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13878448},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"ab5c2b053ca23366cd22d2d6f0382f860cb0822e","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.1.4_1785830533234_0.03277580477090991","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@androff/tutor-ai","version":"0.1.5","_id":"@androff/tutor-ai@0.1.5","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"f9512e0106e4d1172cedc9d8dd67c0853b05a692","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.1.5.tgz","fileCount":3,"integrity":"sha512-WgZz2aBgGXp0kHdcrOyMusQHnF8YxcqHo6bmvy7yNM3vRf+fwg7Nq2swgHcOzuW+vjMShk53vIVl7qggJMk2FA==","signatures":[{"sig":"MEUCIQDbuUAfYpp3SjTMCtwMWcl9nKzOEcLlFnETQnU2toZ7kQIgEHPwqrNJVyuMZitMXRnlhOXCOYNxda9ZVOYQjkFDLmA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13879198},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"64c048ecc959f5a2247837db75de50fd9f55ed09","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.1.5_1785831050209_0.012015022326814506","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@androff/tutor-ai","version":"0.1.6","_id":"@androff/tutor-ai@0.1.6","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"2890c8da74eb1bae5461708aa555a62d6701a8c7","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.1.6.tgz","fileCount":3,"integrity":"sha512-BmHk/SwyZJ7FHcSqb/Kp2m2duEpWKMLOzT8PfV/oUHu2C9a5vItUhDwWJ3yfp7gPTXhAwNsEkAH1840zfebwKQ==","signatures":[{"sig":"MEQCICOXbyBr7RS/Pww0cOs3MGdCcYsyGIEuHkBAJKrpgKY1AiAh9CDhQRFlNIA17ShOqyT09LL/jl80RFmGK/r+jMQevg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13879522},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"439e21b7e455ab30ffe174217fcd6163b000d4c7","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.1.6_1785832777313_0.4860137253887058","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@androff/tutor-ai","version":"0.2.0","_id":"@androff/tutor-ai@0.2.0","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"31ae798e47b2026d88778372caa1a9ab5fe3573d","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.2.0.tgz","fileCount":3,"integrity":"sha512-rz38C5Hx4nBxz11MC78j9nbIxP8cRhXe23XHoOD+UcTI+lj+4r75GMytUZe0CbIah3k31siLy77RHwxIFyclZg==","signatures":[{"sig":"MEUCIAcIqhucatnQsClSV8DouBXG5jTntFMwA0VG5Tb967NBAiEA68HJhcIKcm3EkowuweEsWl9X01Rj9rm3eJf/DgENiPE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13879684},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"79e4497333190bf9b2d475745bee55b705c7e98d","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.2.0_1785834322811_0.5655872882347543","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@androff/tutor-ai","version":"0.2.1","_id":"@androff/tutor-ai@0.2.1","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"25aa91250e96a6f5e455dbb0c53ad32271bce5b9","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.2.1.tgz","fileCount":3,"integrity":"sha512-0PbrITPLD42KP8/wiSOMX9pmPorXUD04dwVgFx0BivXgCmo73AYnLj2zONRrwjU9dkGOBaFYNN3o2svc496nEA==","signatures":[{"sig":"MEQCIBpC6uAaH9EeoVOO4+xtVDe9pW8kj6N1xNnbFUZth5Y5AiAV+Tb/aIy5UaQHi6hsvSBYLP7fTsf5YkRnl6MoR0Tytw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13879883},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"d92fe31344d2e4399829b9719513f93a6aa0fc6a","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@cline/shared":"0.0.69","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.2.1_1785844079339_0.36572310608259184","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@androff/tutor-ai","version":"0.3.0","_id":"@androff/tutor-ai@0.3.0","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"97c4dd0f9491dbb56cbba89ad759de2d93b5454d","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.3.0.tgz","fileCount":3,"integrity":"sha512-WgqrsO21WSgkyEsfcJ6fD+nqWourS4l57LeGr2S1mMUz9DzetrAo/v1oYztOzkVMnJGq8K0sdRZv29+nzcE+0Q==","signatures":[{"sig":"MEQCIDDsmD2vMrms+vKn+m78sSlYl8mPrjWaPioON9TXo6SmAiBZVicgKtTdltfWGgJSNpNFaVCi9LTQobOPjlIrHKbllA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1455434},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"f77c7994428398fa7a70544c34c435c2da3b4e2b","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.3.0_1785917778017_0.7864353001711151","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@androff/tutor-ai","version":"0.3.1","_id":"@androff/tutor-ai@0.3.1","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"d0a1dc80a3abb81424f4feb6d9825e6ff1f5399f","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.3.1.tgz","fileCount":3,"integrity":"sha512-G3OZcvyX2hEScjw2DO8p9R6+YhVwPOWE9KdSzSltAdvDmkaQagfua885Qj3WXkwLGDWcymf/bm1eErerQKKPBg==","signatures":[{"sig":"MEUCIQCGk2DcEUyFtnR22+m9zU/KuehfDBgf7EBqEeGHydORCgIgK4J5gvRmWRq2rQVmswafpP+/gh4gi/7MOxdGMRMbkxM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1456315},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"89443639606b7a0f36fcc41ddaf39d2d25444f75","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.3.1_1785923454074_0.012214068760022068","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@androff/tutor-ai","version":"0.3.2","_id":"@androff/tutor-ai@0.3.2","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"d18db5d3ae1d33a829951711a14d9327b2d48d13","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.3.2.tgz","fileCount":3,"integrity":"sha512-mLqL6wHe/tn1b+Fm4rS5wEZN6vaRyMv8rXjG4ej0m8tBenYcfAxhMzjo96L8LuT144W9om1tDz3xJmID8/K5yQ==","signatures":[{"sig":"MEUCIBtjGdWfhTjc0lEUoBznDZ0ftsJ1iAkP7u7wHJzfXMAGAiEA4jJed5Sume5UZIxm6wv+RPVpy2dlcsFb9Khw5O/+vpA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1461359},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"0b652d0127dcd69542861f51612da1ee3806050b","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.3.2_1785947209860_0.7607879380827625","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@androff/tutor-ai","version":"0.3.3","_id":"@androff/tutor-ai@0.3.3","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"49928922300b2e4d4fcbc43980badbfd4c2a6b86","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.3.3.tgz","fileCount":3,"integrity":"sha512-QstD1a3Nb27Jsm/J30WZvqO/HctG0l4F3voiricc16AsuCgCBeRsMaemQ0UCdDYxsYMGgI3JAEka50tSpd54GQ==","signatures":[{"sig":"MEUCIQDdbYzqT7rYKghFk+MJlNCZIoR2+bRvZG0uJvGjvFDxZAIgOqz2nH+vtm4tG0rH8dVBCQSh4CgqFRC+0p7ANYCH2cY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1463212},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"43af46e7273ee4af6a43c806fd9b3ede89bd2243","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.3.3_1785950663258_0.24943516360385765","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@androff/tutor-ai","version":"0.3.4","_id":"@androff/tutor-ai@0.3.4","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"d18597109e5cd8ca6548c3162c872a3096ffea7a","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.3.4.tgz","fileCount":3,"integrity":"sha512-iq+s77aPHwGTj2+f8rRUusXFgLzgaOdxlT4RiqRB7RXdCVlUP8tHUg4RfWRDJSmicyVfiQLvs8SpQ5HZnpMfvQ==","signatures":[{"sig":"MEUCIBCVl99AHDDMmF0INDJUG1rnmqXn+E5BtI3Dyk1jBwnXAiEAtVa6NBFnhR8OjvfoI+hbfE6hYge6PKreGwx2cnzeDdM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1463665},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"f43a8b95a52ba7cfc58e39a9bb1fe6c84c5c7934","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.0.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.3.4_1785952206812_0.2889822586611397","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"@androff/tutor-ai","version":"0.3.5","_id":"@androff/tutor-ai@0.3.5","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"027fad8bf6874d7890cf74dc999b7a3ec2891090","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.3.5.tgz","fileCount":3,"integrity":"sha512-adMwrny3swAUIWkk+zpKpjqIxQfS2/d8DU6SRhpg5pq+HeYzIZRpF4J72LeU55UneBL20bEngem+NbQqM25kkg==","signatures":[{"sig":"MEYCIQCycW3t3WKFnjTS6lBL54haCRK9s1Ihdcce46MyLzbpTAIhANQodwRkGzibRc7Z3NBD/dl4G7PHt109bXxOW9u+W3oe","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1470212},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"c7d0c71987a5676708812022a69eec048e408512","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.3.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.3.5_1785995882049_0.40517936738971394","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"@androff/tutor-ai","version":"0.3.6","_id":"@androff/tutor-ai@0.3.6","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"3e9e8a2c2c15c4b033a2c0c303170e6b3f69f75f","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.3.6.tgz","fileCount":3,"integrity":"sha512-anwWb9SGUEHXgso69sYLPYnU/a5VT0pl20b9sD7FUZ/Zfn0FbuGCasP+fKPuhxYGxe5TQhkFZEdX0reuaDxhmw==","signatures":[{"sig":"MEUCICcvaWxk61hDaJVMmhQQl6SSIIZkNBVkAccFQB1TUMOoAiEA81VYcM4xVX03Q9z76l2E9aQlltTSPKG0pu/ezmupmWM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1489254},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"3d80868e192c33445634c691751195bf6a4b2ec6","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.3.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.3.6_1786175724985_0.8426734891438299","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"name":"@androff/tutor-ai","version":"0.3.7","_id":"@androff/tutor-ai@0.3.7","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"bin":{"lyceum":"dist/bin.js"},"dist":{"shasum":"613a63ac764f2e901270f8cacbc9a16035110f86","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.3.7.tgz","fileCount":3,"integrity":"sha512-kvL2dOHsh5++cJ0qTuCl2/1CtUySHKXxl7MmmkGSdEnY+S9ciM/o0dynv1KxEDR2xrf18xJb/ylLm07jFc8lBA==","signatures":[{"sig":"MEUCIQDSaKIM04oRBc/1CQL/T8Ksuyv/ssChD0KpvaJh8pGq5AIgDLXyuX7aFtHJbQCEv4VhhQzmSeltTf9Xu2v482BUGco=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1490120},"type":"module","engines":{"bun":">=1.3.14"},"gitHead":"55755c3f73fabd0003c001c883fd70dafe89a0ba","scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"_npmVersion":"10.9.8","description":"**Alpha.** Commands, flags, and config formats can change between 0.3.x releases.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"commander":"15.0.0","@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"8.5.1"},"_npmOperationalInternal":{"tmp":"tmp/tutor-ai_0.3.7_1786177117527_0.4604570030400972","host":"s3://npm-registry-packages-npm-production"}},"0.3.8":{"name":"@androff/tutor-ai","version":"0.3.8","type":"module","bin":{"lyceum":"dist/bin.js"},"engines":{"bun":">=1.3.14"},"publishConfig":{"access":"public"},"scripts":{"build":"tsup","typecheck":"bunx tsc --noEmit","prepublishOnly":"bun run build"},"dependencies":{"@oh-my-pi/pi-tui":"17.2.5","@oh-my-pi/pi-natives":"17.2.5","commander":"15.0.0"},"devDependencies":{"tsup":"8.5.1"},"_id":"@androff/tutor-ai@0.3.8","gitHead":"153f30de688fde1a7ee856ff7190f7caa851a6de","description":"**Alpha.** Commands, flags, and config formats can change between 0.3.x releases.","_nodeVersion":"22.23.2","_npmVersion":"10.9.8","dist":{"integrity":"sha512-8OLgRZWwlT/zvMcE74eNHnSzceRP082Vf4wD1Mh4e5aYBCTveU52tJfVid5dSm+ZrBBFnae/T8sgPTmn+xIGQQ==","shasum":"1d7e9fe7201315acadd0e5ec295313c338e85134","tarball":"https://registry.npmjs.org/@androff/tutor-ai/-/tutor-ai-0.3.8.tgz","fileCount":3,"unpackedSize":1493696,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICDk9SBgJ0IOg5XIvcGKqmu//68zw63jLPQf6FeMHegAAiEA1mFB/QL+l7RVjfQuoupueGS8qTgQmWAEj4yet690lrE="}]},"_npmUser":{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"},"directories":{},"maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/tutor-ai_0.3.8_1788237262295_0.11449653188037523"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-03T14:22:06.832Z","modified":"2026-09-01T04:34:22.618Z","0.0.2":"2026-08-03T14:22:07.647Z","0.0.3":"2026-08-03T14:28:22.685Z","0.0.4":"2026-08-03T15:26:11.907Z","0.0.5":"2026-08-03T16:03:55.288Z","0.0.6":"2026-08-03T16:13:59.427Z","0.0.7":"2026-08-03T16:41:31.107Z","0.0.8":"2026-08-04T05:29:49.478Z","0.0.9":"2026-08-04T05:33:35.623Z","0.1.0":"2026-08-04T06:07:24.009Z","0.1.1":"2026-08-04T06:35:30.162Z","0.1.2":"2026-08-04T06:51:01.481Z","0.1.3":"2026-08-04T07:36:49.315Z","0.1.4":"2026-08-04T08:02:13.466Z","0.1.5":"2026-08-04T08:10:50.429Z","0.1.6":"2026-08-04T08:39:37.506Z","0.2.0":"2026-08-04T09:05:23.015Z","0.2.1":"2026-08-04T11:47:59.538Z","0.3.0":"2026-08-05T08:16:18.201Z","0.3.1":"2026-08-05T09:50:54.245Z","0.3.2":"2026-08-05T16:26:50.006Z","0.3.3":"2026-08-05T17:24:23.467Z","0.3.4":"2026-08-05T17:50:06.968Z","0.3.5":"2026-08-06T05:58:02.222Z","0.3.6":"2026-08-08T07:55:25.134Z","0.3.7":"2026-08-08T08:18:37.697Z","0.3.8":"2026-09-01T04:34:22.465Z"},"description":"**Alpha.** Commands, flags, and config formats can change between 0.3.x releases.","maintainers":[{"name":"androff","email":"rishabh.madhwal.dev@gmail.com"}],"readme":"# `@androff/tutor-ai` — the `lyceum` CLI\n\n**Alpha.** Commands, flags, and config formats can change between 0.3.x releases.\n\nSocratic tutor & author for self-learning courses. A provider-agnostic coach\nthat never reveals solutions, never pastes finished code, and uses the course's\nown `bun test` suite as the only grader.\n\n## Install\n\n```sh\nnpm install -g @androff/tutor-ai\n```\n\nRequires Bun >= 1.3.14 at runtime (the bundled binary is a Bun script).\n\n## Commands\n\n### `lyceum run [module]`\n\nOpen the Socratic TUI. With no argument you get the module picker; pass a\nmodule id, directory, or title to jump straight into a session. Bare `lyceum`\nis an alias for `lyceum run`.\n\nTUI keys:\n\n| Key | Action |\n| --- | --- |\n| Up / Down, Enter | Pick a module |\n| Enter | Send the input line |\n| Esc | Stop the in-flight run (or go back) |\n| Shift+Up / Shift+Down | Scroll the transcript |\n| Home / End | Jump to the top / tail of the transcript |\n| Ctrl+C | Quit |\n\nWhile the coach is working, the streaming answer renders incrementally; the\ntranscript follows the tail automatically (re-engage scroll keys to browse\nhistory, then press Enter to snap back).\n\n### `lyceum new <course-name> [--dir <path>]`\n\nGenerate a course from a course name. Every positional word is part of the\nname, so quoting is never required: `lyceum new make a docker course` works.\nFour stages run in sequence:\n\n1. **Clarify** — asks up to 3 questions (level, scope, format) before planning;\n   `--yes` skips them.\n2. **Research** — the agent searches the web (`web_search`, no API key) and\n   writes a sourced findings report to `.lyceum/research.json`. This stage is\n   required; `--no-research` opts out for cheap or offline runs.\n3. **Plan** — the planner writes the course metadata to `.lyceum/outline.json`\n   (`{ name, topic }`) and delivers one module file per module, ordered by\n   prerequisite dependencies (the id IS the teaching sequence, difficulty\n   ramping intro → core → capstone). The assembled outline is saved to\n   `.lyceum/plan.json` as the checkpoint; the per-module delivery files are\n   cleaned up afterwards. A model that plans in prose instead of writing files\n   is rescued by parsing the outline out of its final text.\n4. **Build** — every module is authored in outline order (skeleton created\n   first: `exercise/`, `tests/`, `solutions/`), continuing past a failing\n   module. Each module's status is recorded in the checkpoint. A module is\n   `drafted` only when `tests/index.test.js`, `exercise/index.js`, and\n   `README.md` all land under `modules/<dir>/`; anything else is `failed` with\n   the missing files named. A model that ends a turn without writing files\n   (including turns cut off by the output token limit) is nudged back to\n   `write_file` up to 3 times before the module is failed.\n\nEvery stage streams its reasoning and tool calls live and prints a\n`waiting for model…` line before each model call, so a run never looks hung;\na failed research or plan stage reports exactly what the model got wrong.\n\n```\nlyceum new Express routing for beginners --dir ./express-course --modules 4\n```\n\nOptions:\n\n| Option | Meaning |\n| --- | --- |\n| `--dir <path>` | Course directory (default: current directory) |\n| `--modules <n>` | Override the planned module count (2–8) |\n| `--yes` | Skip clarifying questions |\n| `--no-research` | Skip the web research stage |\n| `--log` | Capture the full model stream to `.lyceum/new.log` (dev/testing) |\n| `--stub` | Scaffold an empty course (no LLM) at `--dir` or cwd |\n\n`--log` appends the raw stream of every stage (clarify, research, plan, and\neach author session) to `.lyceum/new.log`: reasoning and answer text verbatim,\nevery tool call with its arguments and outcome, and each run's finish reason —\na fresh file per run, for debugging model behavior. It works in fresh, resume,\nand append-mode runs.\n\n**Resume** — re-running the same command rebuilds only modules still\npending/failed; a fully drafted plan is a no-op. A different prompt in a\ndirectory that already has `modules/` appends one module with that title\n(today's `add`/`draft` behavior, folded into `new`).\n\nA non-zero exit reports how many modules failed. In append mode the joined\nprompt is the new module's title (`lyceum new Query params`).\n\n### `lyceum list`\n\nList the course's modules (id, title, topic) and the course root.\n\n### `lyceum setup`\n\nInteractively write the user config to the XDG config dir\n(`$XDG_CONFIG_HOME/lyceum/config.json`, default `~/.config/lyceum/config.json`):\nAPI key, base URL, model, and default course directory. Current values are\nshown as defaults, so re-running updates in place; `system-prompt.md` and other\nexisting settings are preserved. `lyceum provider` afterwards shows the\nresolved result — remember env vars (`OPENAI_API_KEY`, `OPENAI_BASE_URL`,\n`TUTOR_MODEL`, `OLLAMA_HOST`) still win over the config file.\n\n### `lyceum provider`\n\nPrint the resolved LLM provider (provider id, model, base URL) — useful for\ndebugging config precedence.\n\n## Environment variables\n\n| Env var | Meaning |\n| --- | --- |\n| `OPENAI_API_KEY` | API key |\n| `OPENAI_BASE_URL` | Base URL for an OpenAI-compatible endpoint |\n| `TUTOR_MODEL` | Model id (default `gpt-4o-mini`, or `openrouter/free` on OpenRouter) |\n| `OLLAMA_HOST` | Ollama endpoint — implies the Ollama provider |\n| `XDG_CONFIG_HOME` | Config base dir (default `~/.config`) |\n\nEnvironment variables always win over the config file, key by key.\n\n## Per-user config (`~/.config/lyceum/`)\n\n```\nlyceum/\n├── config.json        # { \"provider\": { apiKey, baseUrl, model }, \"defaultCourse\", \"systemPrompt\" }\n├── system-prompt.md   # coaching instructions appended to the policy (8 KB cap, wins over the JSON key)\n└── skills/            # *.md skills, loaded on demand via list_skills / get_skill\n```\n\n`config.json` example:\n\n```json\n{\n  \"provider\": { \"apiKey\": \"sk-...\", \"baseUrl\": \"http://127.0.0.1:11434/v1\", \"model\": \"llama3.2\" },\n  \"defaultCourse\": \"/home/you/courses/express\"\n}\n```\n\n## `.lyceum/` course-generation state\n\n`lyceum new` leaves three files under the course's `.lyceum/` (gitignore it):\n\n| File | Written by | Contents |\n| --- | --- | --- |\n| `research.json` | research stage | web findings `{ findings: [{ claim, source_url }], caveats }` |\n| `outline.json` | plan stage | course `{ name, topic }` |\n| `plan.json` | CLI after planning | checkpoint: `{ prompt, outline, modules: [{ id, title, status }] }` — updated by the build stage |\n\nThe plan stage also uses `.lyceum/modules/<id>.json` as a per-module delivery\ntransport while planning; those files are removed once the outline is\nassembled. `session/` holds TUI conversation history, one file per module.\n\n## Session history\n\nEach module's conversation is persisted to `<course>/session/<module-id>.json`\n(a JSON array of `{ who, text, ts }` turns, capped at 500). Reopening a module:\n\n- the stored conversation renders in the transcript, and\n- the last 50 turns are seeded into the model so follow-up questions keep\n  context.\n\nWrites are best-effort — a read-only course directory never breaks the chat.\nAdd `session/` to the course's `.gitignore` to keep conversations local.\n\n## Building & publishing\n\n```sh\nbun run build       # tsup → dist/bin.js\n```\n\nReleases are **tag-driven**: bump `packages/cli/package.json`, commit\n(`release(cli): bump to X.Y.Z — …`), then push a `cli-vX.Y.Z` tag. The\npublish workflow (`.github/workflows/publish.yml`) builds, sets the version\nfrom the tag, and runs `npm publish --access public` with the `NPM_TOKEN`\nsecret. `files` ships only `dist`; npm always includes this README on the\npackage page.\n","readmeFilename":"README.md"}