{"_id":"@dailephd/my-dev-kit","_rev":"22-e25b0d2e927e52de2035c5c8a8c20470","name":"@dailephd/my-dev-kit","dist-tags":{"latest":"1.12.4"},"versions":{"1.0.0":{"name":"@dailephd/my-dev-kit","version":"1.0.0","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.0.0","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"5c9daff33684d0dcd0fef7cedeadfdf4f5d5a8db","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.0.0.tgz","fileCount":23,"integrity":"sha512-f9Fd6ho3B36IlWDfJ4XgVqfPKXO9YrZGRUXI9l9KX/1WjizOhC7Ueubhtpilh+d/+nYz1fkK3PeHAB0+0fEuwQ==","signatures":[{"sig":"MEUCIGfa6SF0MrZcD1GpxwHq5fbkI0HR7Y/sgO7uHx8svGK3AiEA8AztR5C1RHRFoGbK893fv3EKZ0NiX7BqDpmTbRxeWz0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":231101},"type":"module","_from":"file:dailephd-my-dev-kit-1.0.0.tgz","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build","prepack":"npm run build","typecheck":"tsc --noEmit"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"_resolved":"Z:\\Users\\newuser\\Projects\\my-dev-kit-v1\\dailephd-my-dev-kit-1.0.0.tgz","_integrity":"sha512-f9Fd6ho3B36IlWDfJ4XgVqfPKXO9YrZGRUXI9l9KX/1WjizOhC7Ueubhtpilh+d/+nYz1fkK3PeHAB0+0fEuwQ==","_npmVersion":"11.14.0","description":"Local codebase graph, indexing, slicing, source retrieval, search, and Graphviz visualization CLI.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","tsup":"^8.5.1","vitest":"^2.1.9","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.0.0_1780074809725_0.7005712762889778","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@dailephd/my-dev-kit","version":"1.1.0","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.1.0","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"771bbda378e18b7a967052f07af8d82bce110c01","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.1.0.tgz","fileCount":27,"integrity":"sha512-VjbHldebX38yHA3/UIkccpic7y/OptoisaI+bP5hLFgvmKIY/dQNgiJbOklu2Zcfl/4QRaXGkMURK83sJXkpsQ==","signatures":[{"sig":"MEUCIF9jYS5yEZsf2jkhxzY4l7ftDHHqYs8n1FHrPgoVd2Q9AiEAz3bappeJTwgV6McFPjy/mC+kQYuRvyh4pAvTHoPkdrY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":369149},"type":"module","gitHead":"f0805c9caf9e142fb2beb681cd4d4db6819f9a09","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build","prepack":"npm run build","typecheck":"tsc --noEmit"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"_npmVersion":"11.14.0","description":"Local codebase graph, indexing, slicing, source retrieval, search, and Graphviz visualization CLI.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","tsup":"^8.5.1","vitest":"^2.1.9","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.1.0_1781635740705_0.1823662923374081","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@dailephd/my-dev-kit","version":"1.2.0","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.2.0","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"7cf4ae000dc21a405535a3c6c850dd6ad661b279","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.2.0.tgz","fileCount":29,"integrity":"sha512-yRxtyu3eBcXXPfmJ5EFm4otY9N716+gQvsMZnU+o1jZa73q1Y7ctcTwTARgMdhT8+wk81mgKgBYJpj0kc+0n7w==","signatures":[{"sig":"MEYCIQDZwjlU1/RXeBBzHzUzi/xTDeVWJ5hAcM2iZTMNsz7zKgIhAOHZ6ZfLcN94Lt3eXoybV5PXSkrIIBbQJzECevzytw8L","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":507378},"type":"module","gitHead":"be577a48b3e5938f954d7d64c9ab4cfff475c50a","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build","prepack":"npm run build","typecheck":"tsc --noEmit"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, and conservative static lineage for TypeScript, JavaScript, and Python projects.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","tsup":"^8.5.1","vitest":"^2.1.9","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.2.0_1781821819456_0.8837228092517599","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@dailephd/my-dev-kit","version":"1.3.0","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.3.0","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"de5fe094ad7099d2b40f0a8b4caf8264b24948fd","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.3.0.tgz","fileCount":30,"integrity":"sha512-hLJi3ky41lxLM9c2sbz+EbAHWqevI6HKTZ/71oitzOTdycclUSw9unwdf4XAtLK7Xr8CZtWwGmQDj7bUP6QN8Q==","signatures":[{"sig":"MEYCIQDHgM3pw+PaKgLlbNxxdqvNoXhhw0N/wP5VHrBB8kDTBAIhAMyP9qcbbheB9WVfvUgPeN6Yl0VQ+5hisdGKrQDQ7Hud","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":577799},"type":"module","gitHead":"fadb690ccc1504e272ab7f8a29e0813bf0d7c338","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build","prepack":"npm run build","typecheck":"tsc --noEmit"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, and conservative static lineage for TypeScript, JavaScript, and Python projects.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.3.0_1782392244162_0.4070767385092735","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@dailephd/my-dev-kit","version":"1.4.0","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.4.0","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"7f03a34f480e40a261293e65a3bd3d7e936e09df","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.4.0.tgz","fileCount":30,"integrity":"sha512-t7WsKvHwunTz3E5gsTSvthDr4pf7V+SzkYpJOhX0sH8Ekgx3FWQ5/FpI0r5aPep+tv67Fq0AXlqA+FICKngbUw==","signatures":[{"sig":"MEQCIFHdOlDtV/kjGHi0EIRZuM1xYAkFbzff6b/c57gE26IQAiB4jIiHouRpdaRAnTge7IK3soRmvJ40wS9pR5sBJ4Ve8g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":633768},"type":"module","gitHead":"9b8c249348c69931242f47dc6d3d330ce4716e6d","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build","prepack":"npm run build","typecheck":"tsc --noEmit"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, and conservative static lineage for TypeScript, JavaScript, and Python projects.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.4.0_1783004509367_0.406084701591618","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@dailephd/my-dev-kit","version":"1.5.0","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.5.0","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"a275cd63d93ccce54ee17725513f3f82676934ac","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.5.0.tgz","fileCount":30,"integrity":"sha512-zh13ewQ9qStu18QD1SyquSJDz689OhX2kOe5VAPuubuhoTOD3KFMOEV7bZH9/Y4jKNaEBBcZ3ztraIOVWsYDLQ==","signatures":[{"sig":"MEQCICpLUYFpNbW6U/qYpRaFFJf/OmC9ZfIBRf78I9XM2aQKAiBP/bZgoBOcuNX1c6pKVuGP+cOiudUgwnBwWFZc6eYBdQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":691151},"type":"module","gitHead":"7791359c6a37a978e231266c402e6c3619da655a","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build","prepack":"npm run build","typecheck":"tsc --noEmit","test:security":"vitest run tests/security"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, and conservative static lineage for TypeScript, JavaScript, and Python projects.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.5.0_1783032994267_0.38623614273714457","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@dailephd/my-dev-kit","version":"1.6.0","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.6.0","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"a06c48fcdb5f62e46935b8c2ee93660fd5b497e4","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.6.0.tgz","fileCount":30,"integrity":"sha512-QjKulSTTq/N8S1ZjInTo0PrxU20Byf3JbyhpygF5Tc1Ipk/ePnFAOwDgwjgLLJFKmC18DuLA/EEWJEJYYTkTwA==","signatures":[{"sig":"MEUCIQDmfAWxO3nFPcQ0C7sLjpVNGx3zaGPi56K1ZcdmvP9Q2QIgVgPWGrNWBqZQnX1HuC42t6VI5+llAzh1CHkZF5EEab8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":771542},"type":"module","gitHead":"ebf99c418628a9acee136a9d9940ff0559af35d0","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build","prepack":"npm run build","typecheck":"tsc --noEmit","test:security":"vitest run tests/security"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, and conservative static lineage for TypeScript, JavaScript, and Python projects.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.6.0_1783195051055_0.47539444112871165","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"@dailephd/my-dev-kit","version":"1.6.1","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.6.1","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"8fc8aa14c15ed13a22ab69307e90c586c7618e4e","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.6.1.tgz","fileCount":30,"integrity":"sha512-8lA2PNDEBwZswvPWPgoobnWKUrqbgVSjTXF9Y72nVsx/Ak+ge3YIRtE7VPlFQ52sCOktAg3V0lI+8eBDU4Q3CA==","signatures":[{"sig":"MEQCIHnA1Mi129RDZtvwy9rXKUXJDclbfcLP4OaUO9sRZSYOAiBkgUd/Hxgr/FYlr0e0pM0an8eLQ4kWZ0RVYQfYwCmg4A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":771914},"type":"module","gitHead":"185900d22549970fb84d6e973e1da57b8e5a5392","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build","prepack":"npm run build","typecheck":"tsc --noEmit","test:security":"vitest run tests/security"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, and conservative static lineage for TypeScript, JavaScript, and Python projects.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.6.1_1783198768812_0.7704955796484099","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@dailephd/my-dev-kit","version":"1.7.0","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.7.0","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"48789eb9475fdfeb0d412d5167ab96e28b18d49e","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.7.0.tgz","fileCount":30,"integrity":"sha512-EoiaMASlljr9zYAVIhF9YIaLGejwKvyyH6c8wKH1XyfmqZWMdB0xwgKqqO+SY5ruP+Y6pyXYFmm9kQ76cu9KWA==","signatures":[{"sig":"MEYCIQDekT0x4wE0EfGj8XGAQ5z43vo3Z6JHkmc0SlX91ojrigIhAKuhVEehquwPTpswWcGDYaRe12Kx7gN04d2DCCu2SQED","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":782874},"type":"module","gitHead":"baf3897ad3ed66697a110f55dc11bb804579ab23","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build","prepack":"npm run build","typecheck":"tsc --noEmit","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, and conservative static lineage for TypeScript, JavaScript, and Python projects.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.7.0_1783252378913_0.954925061916378","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@dailephd/my-dev-kit","version":"1.8.0","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.8.0","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"623f8d62869f4de944536fc76f992bf953d69055","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.8.0.tgz","fileCount":30,"integrity":"sha512-Yi/rO2JOAp1mhQXdwjjkBMfHfnRYsuU+5hV/Qk0MYq3EQK1oN9MmsM7JG3AY8bcKJE9oRwexLc+SZlYWjlvavQ==","signatures":[{"sig":"MEQCIFzCRaxsdVNgkfHZpfSxGY23PlEzsuSEmc6/UmZXCpEBAiBXuqpDvrMdPkIOcPB5J3C/GnhrgQ6ZGrvsNjZ4KDueRg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":869292},"type":"module","gitHead":"aa2df31ac2bf43ba11e665714aa908d36dca9476","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build","prepack":"npm run build","typecheck":"tsc --noEmit","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, and conservative static lineage for TypeScript, JavaScript, and Python projects.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.8.0_1783367251438_0.008063866348100301","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@dailephd/my-dev-kit","version":"1.9.0","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.9.0","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"a8adf7bf61062319f2a396f8cbcc6a566293ee92","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.9.0.tgz","fileCount":30,"integrity":"sha512-YLwPgZrfpNR7KT6+HJnZjz7OmWTcbJ/oNbOMQygi/jGRNDOFQkigHmwEP2vTUZdKuEgj/JR9wwU+tKeEyRLZjA==","signatures":[{"sig":"MEUCIEkzkqVO5KINymjGV5j2QMZ8Hc9bRZQdS8lSJX2f2dvFAiEAwlfhRufQ5DRoCRPLgi5nMiRkOZh47O7UaJs769qXEw0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":973504},"type":"module","gitHead":"b4a829293b53f4c49f08e039949b218be50a5bf0","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build","prepack":"npm run build","typecheck":"tsc --noEmit","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, and conservative static lineage for TypeScript, JavaScript, and Python projects.","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.9.0_1783428779142_0.43678675802713784","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@dailephd/my-dev-kit","version":"1.10.0","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.10.0","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"45a4d03ce319366a43f071c3990ef16f7c58fb8f","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.10.0.tgz","fileCount":30,"integrity":"sha512-kSZqIzweSayORN9Es/SUZR7Kwkle3iI1NzmWl0ufptVisabb+L3uzMGG8WH2pxVZbdbGiygV29XWEL17yNFleA==","signatures":[{"sig":"MEYCIQCbbQSE64q6shnVrgwAcQkk5AM8gycF1WDRHSj3BAdthgIhAJXSVKZ4yAgN3P5qoxcN+STigNHyj0OUL3VsaGdkA39o","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1343749},"type":"module","gitHead":"2e9bc7e3e83096e7f06c7a27944eb3edb81b9c7a","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build && npm run docs:check","prepack":"npm run build","typecheck":"tsc --noEmit","docs:check":"tsx scripts/docs/checkDocs.ts","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, conservative static lineage, and conservative static Android project/component detection for TypeScript, JavaScript, Python, ","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.10.0_1783983292671_0.9864357812864228","host":"s3://npm-registry-packages-npm-production"}},"1.10.1":{"name":"@dailephd/my-dev-kit","version":"1.10.1","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.10.1","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"homepage":"https://github.com/dailephd/my-dev-kit#readme","bugs":{"url":"https://github.com/dailephd/my-dev-kit/issues"},"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"c27b0f437d531d42c9b4b8a02d837bbe42ce39c9","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.10.1.tgz","fileCount":30,"integrity":"sha512-u26wDvvBuhlPX57JrmvWn6T6PsCpl145N0lRBnX7/cWrmGrpQgg4Rh5/dJn32U4JSkKlHypqVI5fkJxF6FrbFw==","signatures":[{"sig":"MEQCICGucMkjVenqXqCMmErjxfnq7FJLwACPaKYVcdh/oEhbAiBb9y+f+ZJiDxk09Di9toGXubvigWOe2WjCl1njDmUhfA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1520859},"type":"module","gitHead":"c8e9b3c3d8c9db3673f81a505d9019b9e8af65f6","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build && npm run docs:check","prepack":"npm run build","typecheck":"tsc --noEmit","docs:check":"tsx scripts/docs/checkDocs.ts","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/dailephd/my-dev-kit.git","type":"git"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, conservative static lineage, and conservative static Android project/component detection for TypeScript, JavaScript, Python, ","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.10.1_1784291755308_0.5690001878101896","host":"s3://npm-registry-packages-npm-production"}},"1.10.2":{"name":"@dailephd/my-dev-kit","version":"1.10.2","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.10.2","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"homepage":"https://github.com/dailephd/my-dev-kit#readme","bugs":{"url":"https://github.com/dailephd/my-dev-kit/issues"},"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"a2d6f538619a3ad292570773eb8cd066463c471a","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.10.2.tgz","fileCount":30,"integrity":"sha512-C+t9XxwOCAYJN91AvzP592MXvYC5Ax47mutlOYZrpctE7TFlBHFhpT8NicMKJq/F49QvwlN+mC2qO1zL9AqNMw==","signatures":[{"sig":"MEUCIBi7MkRlf/cMUtzDaUrIxNsfA5y4uBmjbdNTrTbzFIFhAiEAmTXKwMVUCDiIxg1HxQUsdSAPZfgxdJVSU21m32lH8ic=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1524247},"type":"module","gitHead":"1496ff426f1d4dbc662a2257fcf43d3754c4407d","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run test && npm run build && npm run docs:check","prepack":"npm run build","typecheck":"tsc --noEmit","docs:check":"tsx scripts/docs/checkDocs.ts","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/dailephd/my-dev-kit.git","type":"git"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, conservative static lineage, and conservative static Android project/component detection for TypeScript, JavaScript, Python, ","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.10.2_1784303961971_0.9525827627036709","host":"s3://npm-registry-packages-npm-production"}},"1.10.3":{"name":"@dailephd/my-dev-kit","version":"1.10.3","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.10.3","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"homepage":"https://github.com/dailephd/my-dev-kit#readme","bugs":{"url":"https://github.com/dailephd/my-dev-kit/issues"},"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"721ffa333fc44547984fd5ebefd200c2d8f9eb22","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.10.3.tgz","fileCount":30,"integrity":"sha512-rbH4dlrmbxW1NhAW/u0U1oghkgf40cABLsB9kKAeGW6gdZq4Nq4qcpYoI1/4J4IwB9JUads3xY1emrQeOZYMzA==","signatures":[{"sig":"MEQCIHqDuBBIiuRiJp3V2Y/2urcQkpmNfacR2eHCx8Q9dwz0AiAVByouhkjrE9VGZwKghCxrCwFzyWxAw1tcjSpEQ8TuiA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1560398},"type":"module","gitHead":"938baf59f735a827b57d0f1a30b1d6fb2ae7b3bc","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run build && npm run docs:check","prepack":"npm run build","typecheck":"tsc --noEmit","docs:check":"tsx scripts/docs/checkDocs.ts","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/dailephd/my-dev-kit.git","type":"git"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, conservative static lineage, and conservative static Android project/component detection for TypeScript, JavaScript, Python, ","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.10.3_1785271486547_0.8212550964329774","host":"s3://npm-registry-packages-npm-production"}},"1.10.4":{"name":"@dailephd/my-dev-kit","version":"1.10.4","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.10.4","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"homepage":"https://github.com/dailephd/my-dev-kit#readme","bugs":{"url":"https://github.com/dailephd/my-dev-kit/issues"},"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"a6c18aa2761c7249d631c04e10dc2fcd99274202","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.10.4.tgz","fileCount":30,"integrity":"sha512-UWrs67jq6Ca/mofxi9c5d+V5e1JANJjYJOMvmJQ4VgMG6zyMlGk9lwe6tIarzO8qnx5zSf8dmHHMxSnKa2ypOg==","signatures":[{"sig":"MEQCICEad4Y/+DUs7jCJQGgx201Wp0Hyxd/Q4hZSLiRksAz6AiBnj45MCNPZqMpvVVEKyr7C5YDWf9GZ3UzooNtO1esNuQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1581373},"type":"module","gitHead":"537200230b0b6bc97d3d529b0b95e3c551e381d7","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run build && npm run docs:check","prepack":"npm run build","typecheck":"tsc --noEmit","docs:check":"tsx scripts/docs/checkDocs.ts","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/dailephd/my-dev-kit.git","type":"git"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, conservative static lineage, and conservative static Android project/component detection for TypeScript, JavaScript, Python, ","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.10.4_1785605410284_0.4729005636982193","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"@dailephd/my-dev-kit","version":"1.11.0","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.11.0","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"homepage":"https://github.com/dailephd/my-dev-kit#readme","bugs":{"url":"https://github.com/dailephd/my-dev-kit/issues"},"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"399dc679de98e251b3fdb6aca0b44383ec15092c","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.11.0.tgz","fileCount":30,"integrity":"sha512-TmZbLei0sAg4k2gGFhsFxFmDFTXUgXEdwsO/OX7ap8RucTTvLNb7igmu3KS/Gt7d5azTWkez0Ib5Dy15RM82SA==","signatures":[{"sig":"MEQCIEpl1veKgRr7OdDDLch92WYpzTqtDt684QIYDFVNenwoAiBexGRyBpH6MxaSC+f0EE7FRj6maO2j1CZWhiPLor1nlg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1792581},"type":"module","gitHead":"688e55ac13a66349b98af15ababbb4035fd7af7b","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run build && npm run docs:check","prepack":"npm run build -- --silent","typecheck":"tsc --noEmit","docs:check":"tsx scripts/docs/checkDocs.ts","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/dailephd/my-dev-kit.git","type":"git"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, conservative static lineage, and conservative static Android project/component detection for TypeScript, JavaScript, Python, ","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.11.0_1785712019970_0.3242192525688605","host":"s3://npm-registry-packages-npm-production"}},"1.12.0":{"name":"@dailephd/my-dev-kit","version":"1.12.0","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.12.0","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"homepage":"https://github.com/dailephd/my-dev-kit#readme","bugs":{"url":"https://github.com/dailephd/my-dev-kit/issues"},"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"1bc68d7c7c03ee0025025a984a8eb6c2fbe2006c","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.12.0.tgz","fileCount":30,"integrity":"sha512-uLYi6kJCfLTcn1jhrRYcvZnGHDpl7kOmIIxFYRGvuzSyyTwGpPHBQICoTOu9gfAdg/vs9HP0VwZqUFqvrdRlBg==","signatures":[{"sig":"MEUCIGXpb4KfQUC5FjeyzcZ/OZM8GhSDzhOyU6aQRTBsng3KAiEA6CqEXFfR+aARXtfjvZsqWJU32ub6igjLyFeAKF/7Mk4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1992308},"type":"module","gitHead":"64c6fd3382c73db44e428b68c16f0bc844cf4667","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run build && npm run docs:check","prepack":"npm run build -- --silent","typecheck":"tsc --noEmit","docs:check":"tsx scripts/docs/checkDocs.ts","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/dailephd/my-dev-kit.git","type":"git"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, conservative static lineage, and conservative static Android project/component detection for TypeScript, JavaScript, Python, ","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.12.0_1785790704679_0.10606873727402699","host":"s3://npm-registry-packages-npm-production"}},"1.12.1":{"name":"@dailephd/my-dev-kit","version":"1.12.1","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.12.1","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"homepage":"https://github.com/dailephd/my-dev-kit#readme","bugs":{"url":"https://github.com/dailephd/my-dev-kit/issues"},"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"9c952a9a5ca12b6c609102e0ec15b4d979c98795","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.12.1.tgz","fileCount":30,"integrity":"sha512-SxzNBvZYhEvEms3CLdAVuvHI9YId9etK4PgWYqT9eOA6IzMNqz1Wg/LAwCKD+WVXC7ux6xSoJ9hpyC61NVe/Sw==","signatures":[{"sig":"MEUCIGl9D+Tg2k5TdmMwpK9xsTaDG2BwRd2cTiAZ5JoEr6JkAiEAgXnLU8j1Yv3JK1PNriLwngvnsmtKFOoKgD9JFqvK2XY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2002077},"type":"module","gitHead":"b2fb19b72f2148127cbec194ea2317d90ffbd27d","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run build && npm run docs:check","prepack":"npm run build -- --silent","typecheck":"tsc --noEmit","docs:check":"tsx scripts/docs/checkDocs.ts","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/dailephd/my-dev-kit.git","type":"git"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, conservative static lineage, and conservative static Android project/component detection for TypeScript, JavaScript, Python, ","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.12.1_1785868098740_0.9591633856309771","host":"s3://npm-registry-packages-npm-production"}},"1.12.2":{"name":"@dailephd/my-dev-kit","version":"1.12.2","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.12.2","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"homepage":"https://github.com/dailephd/my-dev-kit#readme","bugs":{"url":"https://github.com/dailephd/my-dev-kit/issues"},"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"fd8497e7898b3c8237cd66d50d67c1d3d46b6a48","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.12.2.tgz","fileCount":30,"integrity":"sha512-SBrUqCqcWNnX7dcB7r8RjHj7fAFtMdhKhX4bQGQPAgssfp85z3x6GbrPBrxCes7CZsztVtLMxBM0EeEGznYpnA==","signatures":[{"sig":"MEUCIQDDRaUd2az68VTQX8kLjVQvJ7uFQzWjFfIon9Ghjc5kEAIgA+l2KaMzeA8+Zx0dlqo2mVur6fqojiLTAE5velxzQ0E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2003691},"type":"module","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run build && npm run docs:check","prepack":"npm run build -- --silent","typecheck":"tsc --noEmit","docs:check":"tsx scripts/docs/checkDocs.ts","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/dailephd/my-dev-kit.git","type":"git"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, conservative static lineage, and conservative static Android project/component detection for TypeScript, JavaScript, Python, ","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.12.2_1786404433962_0.7921269722386277","host":"s3://npm-registry-packages-npm-production"}},"1.12.3":{"name":"@dailephd/my-dev-kit","version":"1.12.3","author":{"name":"dailephd LLC"},"license":"MIT","_id":"@dailephd/my-dev-kit@1.12.3","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"homepage":"https://github.com/dailephd/my-dev-kit#readme","bugs":{"url":"https://github.com/dailephd/my-dev-kit/issues"},"bin":{"my-dev-kit":"dist/cli.js"},"dist":{"shasum":"294ad9753ce832b5a75b1d7bf9ac36417df8527c","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.12.3.tgz","fileCount":30,"integrity":"sha512-MbYubJ7oBz0DYFgVy5scIT6WFDdt4ivdMQanjOLzIuaIqoyNJxh4zhXpAmsown77HBMXGGUdIyR7QedCL4sbtg==","signatures":[{"sig":"MEUCIGE/N91bR8GUBWkuVLk0BPUxFe+islnBar8Rhsil0CVMAiEA9OKJ5E0eogOOi3hgU1E/Fvoppum/YBL/tPBRMfrqets=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2026313},"type":"module","gitHead":"3a105bb40be702e59f716174ea0ea71b7a73783c","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run build && npm run docs:check","prepack":"npm run build -- --silent","typecheck":"tsc --noEmit","docs:check":"tsx scripts/docs/checkDocs.ts","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/dailephd/my-dev-kit.git","type":"git"},"_npmVersion":"11.14.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, conservative static lineage, and conservative static Android project/component detection for TypeScript, JavaScript, Python, ","directories":{},"_nodeVersion":"24.11.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"tmp":"tmp/my-dev-kit_1.12.3_1788627337779_0.4887317160082114","host":"s3://npm-registry-packages-npm-production"}},"1.12.4":{"_id":"@dailephd/my-dev-kit@1.12.4","bin":{"my-dev-kit":"dist/cli.js"},"bugs":{"url":"https://github.com/dailephd/my-dev-kit/issues"},"dist":{"shasum":"40309dbb6980b400fc7611f5ca43d5e82c3529a6","tarball":"https://registry.npmjs.org/@dailephd/my-dev-kit/-/my-dev-kit-1.12.4.tgz","fileCount":32,"integrity":"sha512-T7zuL6H7cZYcnF+XUS7QB8VRhM/C5FCQyQskSAdbrtrfG1daHZc2UwHWrGYL0MMKwnVGOPHtmF7m1lwJ8UyExw==","signatures":[{"sig":"MEQCIHcPQRe788/zQDXlpfl2JsfKUNwjDCmiaP5/F3dnpNMgAiBDmy0HSmex1TMO2bjvukKAPk2rI16pyRtqECb+1YqmVw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBj5sC705ZjhyS8Q5JDLZrtxZ6U59fQWclCI7wfh7QVuAiEAsP8YnH4Vxdabg4b1Edg3w2temYimfEuvKR9xZ+1MlI4="}],"unpackedSize":2043370},"name":"@dailephd/my-dev-kit","type":"module","author":{"name":"dailephd LLC"},"gitHead":"fcf58329820ddae781ceb75d3936024ed87d5f72","license":"MIT","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"tsup","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","verify":"npm run typecheck && npm run build && npm run docs:check","prepack":"npm run build -- --silent","typecheck":"tsc --noEmit","docs:check":"tsx scripts/docs/checkDocs.ts","test:security":"vitest run tests/security","benchmark:retrieval":"tsx src/retrievalRegression/runRetrievalRegression.ts --config benchmarks/retrieval/v1.7/core.json --out .my-dev-kit/retrieval-regression --fail-on-regression"},"version":"1.12.4","_npmUser":{"name":"dailephd","email":"dailephd@gmail.com"},"homepage":"https://github.com/dailephd/my-dev-kit#readme","overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/dailephd/my-dev-kit.git","type":"git"},"_npmVersion":"11.19.0","description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, conservative static lineage, and conservative static Android project/component detection for TypeScript, JavaScript, Python, ","directories":{},"maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"_nodeVersion":"24.20.0","dependencies":{"commander":"^12.1.0","typescript":"^5.9.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","tsup":"^8.5.1","vitest":"^4.1.9","esbuild":"^0.28.1","@types/node":"^20.19.25"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/my-dev-kit_1.12.4_1790090376680_0.40701125975937535"}}},"time":{"created":"2026-05-29T17:13:29.595Z","modified":"2026-09-22T15:19:37.024Z","1.0.0":"2026-05-29T17:13:29.913Z","1.1.0":"2026-06-16T18:49:00.897Z","1.2.0":"2026-06-18T22:30:19.596Z","1.3.0":"2026-06-25T12:57:24.291Z","1.4.0":"2026-07-02T15:01:49.564Z","1.5.0":"2026-07-02T22:56:34.456Z","1.6.0":"2026-07-04T19:57:31.238Z","1.6.1":"2026-07-04T20:59:28.975Z","1.7.0":"2026-07-05T11:52:59.085Z","1.8.0":"2026-07-06T19:47:31.640Z","1.9.0":"2026-07-07T12:52:59.305Z","1.10.0":"2026-07-13T22:54:52.851Z","1.10.1":"2026-07-17T12:35:55.517Z","1.10.2":"2026-07-17T15:59:22.148Z","1.10.3":"2026-07-28T20:44:46.737Z","1.10.4":"2026-08-01T17:30:10.468Z","1.11.0":"2026-08-02T23:07:00.114Z","1.12.0":"2026-08-03T20:58:25.217Z","1.12.1":"2026-08-04T18:28:18.909Z","1.12.2":"2026-08-10T23:27:14.122Z","1.12.3":"2026-09-05T16:55:37.920Z","1.12.4":"2026-09-22T15:19:36.849Z"},"bugs":{"url":"https://github.com/dailephd/my-dev-kit/issues"},"author":{"name":"dailephd LLC"},"license":"MIT","homepage":"https://github.com/dailephd/my-dev-kit#readme","repository":{"url":"git+https://github.com/dailephd/my-dev-kit.git","type":"git"},"description":"Local codebase graph indexing, semantic enrichment, bounded source retrieval, React/TSX frontend indexing, data-model extraction, conservative static lineage, and conservative static Android project/component detection for TypeScript, JavaScript, Python, ","maintainers":[{"name":"dailephd","email":"dailephd@gmail.com"}],"readme":"# my-dev-kit\n\nmy-dev-kit is a local-first CLI for indexing a codebase, exploring its graph, and retrieving bounded source evidence. It supports TypeScript, JavaScript, Python, Kotlin, Java, and supported Android project structures without editing source files or sending project data to an external service.\n\n## Overview\n\nLocal codebase graph indexing produces deterministic, inspectable artifacts for files, symbols, frontend structures, supported data models, and Android static evidence. Use those artifacts to search the code graph, inspect exact nodes, retrieve focused source, trace supported static relationships, and prepare bounded context for downstream tools.\n\nEverything runs locally. my-dev-kit does not call an LLM, make network requests, connect to a database, or edit source files.\n\n## Installation\n\nUse without installing globally:\n\n```sh\nnpx @dailephd/my-dev-kit --help\nnpx @dailephd/my-dev-kit --version\n```\n\nOr install globally:\n\n```sh\nnpm install -g @dailephd/my-dev-kit\n```\n\n## Quickstart\n\nRun the CLI inside your own project:\n\n```sh\ncd <your-project>\n\nnpx @dailephd/my-dev-kit index --root . --src src --out .my-dev-kit --json\nnpx @dailephd/my-dev-kit search --index .my-dev-kit --query \"service\" --limit 20 --json\nnpx @dailephd/my-dev-kit lookup --index .my-dev-kit --node \"<node-id>\" --depth 1 --json\nnpx @dailephd/my-dev-kit slice --index .my-dev-kit --node \"<node-id>\" --depth 2 --direction both --json\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --file \"<path>\" --symbol \"<symbol-name>\" --format numbered\nnpx @dailephd/my-dev-kit view --index .my-dev-kit --format dot --out .my-dev-kit/graph.dot\n```\n\n```mermaid\nflowchart TD\n  A[index] --> B[manifest.json]\n  B --> C[symbol-index.json]\n  B --> D[code-graph.json]\n  B --> E[data-model.json]\n  B --> F[data-model-graph.json]\n  B --> G[frontend-semantic.json]\n  C --> H[search]\n  D --> H\n  G --> H\n  H --> I[lookup]\n  H --> J[slice]\n  H --> K[source]\n  D --> L[view --graph code]\n  E --> L\n  F --> L\n  G --> M[view --graph react-*\\nview --graph frontend-test]\n```\n\nRe-run `index` to refresh artifacts when source changes:\n\n```sh\nnpx @dailephd/my-dev-kit index --root . --src src --out .my-dev-kit --json\n```\n\n`index` refreshes the artifact directory in place. The normal artifact directory is `.my-dev-kit`. Custom `--out` paths remain supported.\n\nInspect data-model entities and fields:\n\n```sh\nnpx @dailephd/my-dev-kit data-model --index .my-dev-kit --entity User --json\nnpx @dailephd/my-dev-kit data-model --index .my-dev-kit --field User.email --json\n```\n\nTrace supported static view usage:\n\n```sh\nnpx @dailephd/my-dev-kit data-model --index .my-dev-kit --trace-view User --json\nnpx @dailephd/my-dev-kit data-model --index .my-dev-kit --field User.email --trace-view --json\n```\n\n## Commands\n\n| Command | Purpose |\n| --- | --- |\n| `index` | Scan source roots, run semantic analyzers, and write index and semantic artifacts |\n| `search` | Search indexed files, symbols, edges, and semantic roles by keyword |\n| `lookup` | Look up a graph node by exact node ID, including semantic metadata |\n| `source` | Retrieve bounded source by line range, symbol, node ID, exact string, or React region |\n| `slice` | Build a bounded subgraph around a focus node, preserving semantic metadata |\n| `view` | Render the code graph, data-model graph, lineage graph, or frontend semantic graphs as DOT, SVG, or PNG |\n| `data-model` | Inspect exact entities or fields, or regenerate data-model artifacts and trace supported static view usage |\n| `context` | Write a bounded, local, deterministic context capsule and optional retrieval audit for a query against an existing index |\n| `graph-diff` | Compare two existing index directories and report added/removed/changed graph nodes, edges, and artifact metadata |\n\nSee [docs/COMMANDS.md](docs/COMMANDS.md) for the full flag reference.\n\nFor a guided introduction, see [docs/QUICKSTART.md](docs/QUICKSTART.md). The [example workflows](examples/README.md) provide small projects that you can run from a cloned repository.\n\n## Graph-Guided Symbol Retrieval for LLM workflows\n\nThe recommended usage pattern for feeding bounded context to an LLM or coding agent is `search` → `lookup` → `slice` → `source`: narrow to a candidate with `search`, inspect the exact node and its relationships with `lookup`, pull a bounded neighborhood with `slice` when more relationship context is needed, then retrieve the bounded source text for the symbols that matter.\n\n```sh\nnpx @dailephd/my-dev-kit search --index .my-dev-kit --query \"user\" --limit 20 --json\nnpx @dailephd/my-dev-kit lookup --index .my-dev-kit --node \"<node-id>\" --depth 1 --json\nnpx @dailephd/my-dev-kit slice --index .my-dev-kit --node \"<node-id>\" --depth 2 --direction both --json\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --node \"<node-id>\" --format numbered\n```\n\nCompact prompt template for pasting the retrieved output into an LLM or coding-agent prompt:\n\n```text\nTask: <describe the change>\nRepository context (from my-dev-kit, local static analysis only):\n<paste search/lookup/slice/source JSON or numbered output here>\nInstructions: use only the context above; do not assume behavior outside it.\n```\n\nFor the full set of retrieval workflows (index → manifest → artifacts, search → lookup → slice → source with continuation and local expansion, data-model/lineage, context capsules, graph-diff, and Android/Kotlin/Java retrieval), see [docs/WORKFLOWS.md](docs/WORKFLOWS.md). For whole-ecosystem composition across my-dev-kit, Orchestrator, Lab, and Observer, including command-surface-derived handoffs, see [docs/ECOSYSTEM_DEVELOPMENT_WORKFLOWS.md](docs/ECOSYSTEM_DEVELOPMENT_WORKFLOWS.md).\n\n## Graph visualization example\n\nRender the code graph and open it as an image:\n\n```sh\nnpx @dailephd/my-dev-kit view --index .my-dev-kit --format dot --out .my-dev-kit/graph.dot\nnpx @dailephd/my-dev-kit view --index .my-dev-kit --format svg --out .my-dev-kit/graph.svg\nnpx @dailephd/my-dev-kit view --index .my-dev-kit --format png --out .my-dev-kit/graph.png\n```\n\nDOT output does not require Graphviz. SVG and PNG output require a local Graphviz installation (the `dot` binary on `PATH`); if Graphviz is not available, use the DOT output with any external Graphviz-compatible renderer instead.\n\n## Latest release: v1.12.4\n\n`@dailephd/my-dev-kit@1.12.4` is the latest published release. It is a bounded corrective patch for core test-file indexing and retrieval. Supported `.test.`/`.spec.` files beneath an explicitly selected `--src` root are now indexed like any other supported file. They get ordinary `file:<path>` graph nodes and work with `search`, `lookup`, `slice`, and exact `source --contains --path` matching. `.d.ts` files, `--exclude` values, and default ignored directories remain excluded. The incremental cache fingerprint now covers the default file-exclusion policy, so the first `--incremental` run after upgrading rebuilds once. Raw `search` ranking is unchanged and can rank a strongly matching test above a production file; rank is not edit ownership. No new public command, flag, artifact family, or artifact schema major.\n\nVersion 1.12.3 was a bounded corrective patch for the role-aware `context` command's readiness semantics: final role adequacy (`architecture`/`implementation`/`test-implementation`) now recovers from an early, non-material base-retrieval or helper-classification failure whenever independently retained evidence still satisfies the role's actual required conditions, while genuinely missing required evidence, unresolved material conflict, and required-witness truncation remain blocking as before. Implementation-contract discovery recognizes legitimate neutral-named Python contract owners (for example `result.py`, `cases.py`) from grounded structural evidence rather than relying on filename hints alone. Test-responsibility mapping distinguishes core evidence (production, contract/validator/error, related-test, and oracle/assertion) from supplemental test-command evidence: a core-complete responsibility with no discovered test command remains sufficiently mapped with an explicit warning, unless the request explicitly asks for `test-commands` evidence, in which case grounded command evidence is required. Test-command discovery also now checks a repository `Makefile` `test` target alongside the existing `package.json` script discovery. This is a backward-compatible defect correction; no new public command, flag, role, or artifact schema major. The command syntax and artifact schema major remain unchanged.\n\n## v1.12.0 Android architecture and data-flow retrieval\n\nv1.12.0 shipped Android architecture and data-flow retrieval and remains fully included in v1.12.4.\n\nThe release adds a complete Android classification vocabulary (`classification.json` schema `1.1.0`) covering Android project/module structure, manifest components, navigation routes, resources, Compose screens/UI components, ViewModels, and UI-only state/events, each with edit guidance, readiness, uncertainty, and up to seven advisory risk labels. `android-components.json` (schema `1.1.0`) adds `dependencyFacts[]` — exact static component-dependency relationships (ViewModel→Repository, Repository→DAO/Service, DAO→Entity, Room Database→DAO) projected into `code-graph.json` as new edges. `android-compose-semantic.json` (schema `1.3.0`) adds Compose collected-state ownership and Activity-to-Compose hosting evidence, projected as `compose-state-reads-viewmodel` and `activity-hosts-composable` graph edges.\n\nThe command surface adds:\n\n```sh\nnpx @dailephd/my-dev-kit search --index .my-dev-kit --android-role view-model --json\nnpx @dailephd/my-dev-kit slice --index .my-dev-kit --node \"<node-id>\" --include-data-flow --json\nnpx @dailephd/my-dev-kit context --index .my-dev-kit --role implementation --query \"Change the loading state behavior shown by HomeScreen.\" --json\n```\n\n`search --android-role` accepts any of 31 Android classification roles and is mutually exclusive with other search selectors. `slice --include-data-flow` performs a bounded, bidirectional traversal over a fixed Android ownership/data-flow edge allowlist (Activity → Compose → ViewModel → Repository → DAO/Entity/Retrofit, plus Room database → DAO and route → screen). The existing `slice --include-tests` modifier gains Android-aware related-test expansion. The existing role-aware `context` command becomes Android-aware: it prefers the correct owning layer for a request (for example, a state request prefers the ViewModel over its own collected-state fact) and reports six new wrong-layer conflict kinds when ownership is ambiguous or a generated/test-only node would otherwise be selected.\n\nThis release remains static evidence only: no Gradle/Kotlin/Compose/test execution, no dependency-injection resolution, no database or network inspection, no emulator, and no runtime UI/navigation/reachability proof. Android classification is advisory evidence, not an automatic edit decision. See [docs/COMMANDS.md](docs/COMMANDS.md), [docs/GRAPH_SCHEMA.md](docs/GRAPH_SCHEMA.md), and [docs/WORKFLOWS.md](docs/WORKFLOWS.md) for the complete release contract.\n\n## v1.11.0 Compose and Android-test retrieval\n\nv1.11.0 shipped Compose semantic indexing and retrieval, Android unit/instrumented test semantic indexing, and bounded Compose/Android-test graph views.\n\nThe implementation adds two conditional Android artifacts:\n\n- `android-compose-semantic.json` (`my-dev-kit-v1-android-compose-semantic`, schema `1.2.0`) for conservative static composable declarations, child calls and UI regions, state/effect/ViewModel/UI-marker facts, and click/navigation-call evidence\n- `android-test-semantic.json` (`my-dev-kit-v1-android-test-semantic`, schema `1.0.0`) for Android `test`/`androidTest` files, classes, methods, JUnit/Compose/Espresso/Robolectric evidence, assertions, routes, and test doubles\n\nCompose evidence is projected into the existing `code-graph.json` as `android-composable` and `android-compose-fact` nodes. Android test evidence is projected as `android-test-file`, `android-test-class`, `android-test-method`, and `android-test-fact` nodes. The existing generic `search`, `lookup`, `source`, `slice`, `context`, and `graph-diff` paths consume these nodes; no second graph or retrieval engine is introduced.\n\nThe local development command surface adds exact Compose selectors and three bounded graph views:\n\n```sh\nnode dist/cli.js source --index .my-dev-kit --composable HomeScreen --include-compose-tree --format numbered\nnode dist/cli.js source --index .my-dev-kit --android-ui \"Welcome back\" --format numbered\nnode dist/cli.js source --index .my-dev-kit --test-tag login_button --format numbered\nnode dist/cli.js slice --index .my-dev-kit --composable HomeScreen --include-viewmodel --include-navigation --json\nnode dist/cli.js view --index .my-dev-kit --graph compose-ui --format dot\nnode dist/cli.js view --index .my-dev-kit --graph compose-navigation --format dot\nnode dist/cli.js view --index .my-dev-kit --graph android-test --format dot\n```\n\nMatching is exact and ambiguity is preserved. All evidence is local, deterministic, read-only static analysis: it does not execute Gradle, Compose, tests, applications, or emulators; prove runtime UI visibility, click behavior, navigation, test success, or coverage; or resolve rendered resource values. See [docs/COMMANDS.md](docs/COMMANDS.md), [docs/GRAPH_SCHEMA.md](docs/GRAPH_SCHEMA.md), and [docs/WORKFLOWS.md](docs/WORKFLOWS.md) for the complete release contract.\n\n### Android capability introduced in v1.10.0\n\nv1.10.0 extends the v1.9.0 Android foundation with conservative static Gradle, manifest, resource, navigation, relationship, retrieval, context, and graph-view evidence:\n\n- static Android/Gradle project, module, and source-set detection, written to `android-project.json`\n- conservative static Kotlin structural indexing for `.kt` files under indexed source roots\n- conservative static Java structural indexing for `.java` files under indexed source roots\n- conservative static Android component-role detection (Activity, Fragment, ViewModel, Service, BroadcastReceiver, ContentProvider, Worker, Repository, UseCase, Room Entity, Room DAO, Room Database, Retrofit service, Hilt/Dagger module), written to `android-components.json`\n- Android component-role metadata surfaced through the existing `search`, `lookup`, `source`, `slice`, `context`, and `graph-diff` commands\n- static Gradle project evidence in `android-gradle.json`; static manifest, resource, and navigation evidence in `android-manifest.json`, `android-resources.json`, and `android-navigation.json`\n- compact Android relationship nodes and conservative candidate edges enriching `code-graph.json` (there is no `android-relationships.json`)\n- exact Android route, permission, resource, and component retrieval through the existing `search`, `lookup`, `source`, `slice`, `context`, and `view` commands\n\nFor example:\n\n```sh\nnpx @dailephd/my-dev-kit search --index .my-dev-kit --android-route home --json\nnpx @dailephd/my-dev-kit search --index .my-dev-kit --permission android.permission.CAMERA --json\nnpx @dailephd/my-dev-kit lookup --index .my-dev-kit --android-component com.example.MainActivity --json\nnpx @dailephd/my-dev-kit view --index .my-dev-kit --graph android-navigation --format dot\n```\n\nThe shipped Android capability is static evidence, not runtime proof. It does not execute Gradle or start a Gradle daemon; resolve or download dependencies; build Android projects; run tests or emulators/devices; inspect APK/AAB files; perform signing, Play Store, App Links, or Android security validation; produce a final merged runtime manifest; select runtime resource overlays; or prove runtime UI, route, intent, or deep-link behavior.\n\n## Stage-specific bounded context retrieval\n\nVersion 1.10.1 introduced this shipped capability by extending the existing `context` command and artifacts. It added `ContextRole` and `ContextRequest`, `context --request <path>`, `context --role <role>`, deterministic input normalization, role-aware and changed-surface evidence, responsibility mapping, adequacy, freshness, bounded fallback and truncation reporting, and provenance. The current package retains the v1.10.2 documentation corrections, the v1.10.3 implementation-role context readiness refinements, and v1.10.4 condition-aware adequacy without changing command syntax or schema major. See [docs/COMMANDS.md](docs/COMMANDS.md) for the complete command contract.\n\nThe patch separates three repository-evidence roles that have different freshness and evidence needs:\n\n- **architecture** - locate likely owners, extension points, public contracts, graph neighbors, and architecture tests; answers \"Where should the behavior live?\"\n- **implementation** - refresh immediately before production editing and retrieve exact owners, callers/callees, validators, constants, defaults, errors, serializers, schemas, compatibility surfaces, and closest tests; answers \"What current code must change or be preserved?\"\n- **test-implementation** - refresh after production changes and focus on changed files/symbols, failure and side-effect boundaries, related tests, fixtures, factories, mocks, setup, configuration, commands, and explicit test-responsibility mappings; answers \"How should approved test responsibilities be implemented against final production code?\"\n\nThe additive structured `ContextRequest` is accepted through `context --request <request.json>` and supports focus files/symbols, caller-provided changed files/symbols, before/after index identities, requested evidence kinds, responsibility references, limits, output paths, and audit output. Results include graph-diff evidence, role-specific evidence groups, adequacy, freshness (`fresh`, `stale`, or `unknown`), truncation, unresolved evidence, and selection provenance. In v1.10.4, implementation output also includes role-condition witness coverage: general truncation may remain true while adequacy remains sufficient when the required owner and contract witnesses are retained. Existing `context` syntax and its `general`, `feature-add`, and `subsystem` modes remain compatible; role is a separate concept.\n\nOwnership stays narrow:\n\n- `my-dev-kit` owns deterministic local indexing and bounded repository-evidence retrieval, capsules, and retrieval audits.\n- `my-dev-kit-orchestrator` v1.2.1 owns workflow/stage/command/rule/report-contract IDs, workflow dependency resolution, `WorkflowInstructionPacket`, TaskState, prompt assembly, stage order, lifecycle, judge handling, and manual stage freshness rules. The current orchestrator does not automatically run my-dev-kit; initial integration is prompt-guided.\n- `my-dev-kit-lab` v0.4.3 owns controlled strategy evaluation, evidence recall/irrelevant inclusion, responsibility-mapping completeness, provenance/determinism/truncation evaluation, immutable targets, reports, plots, security validation, and code-rot auditing. It is not a production retrieval runtime.\n\nThe patch remains bounded, deterministic, inspectable, and honest: nonempty output is not automatically adequate; an existing index is not automatically fresh; free-form test prose is not automatically mapped; and every truncation or full-file fallback is reported. See [docs/ROADMAP.md](docs/ROADMAP.md), [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md), [docs/COMMANDS.md](docs/COMMANDS.md), and [docs/WORKFLOWS.md](docs/WORKFLOWS.md) for the planning and command detail.\n\n## Generated artifacts\n\nThe `index` command writes:\n\n| Artifact | Contents |\n| --- | --- |\n| `manifest.json` | Artifact registry, analyzer registry and status, project metadata, artifact paths, and summary counts |\n| `symbol-index.json` | Per-file symbol tables with locations, imports, exports, and compact semantic roles and classification roles per symbol |\n| `code-graph.json` | Graph of file and symbol nodes connected by typed edges, with compact semantic roles and classification roles on symbol nodes |\n| `call-graph.json` | Optional static call graph written when `--call-graph` is requested |\n| `data-model.json` | Data entities, fields, relationships, source refs, and warnings, written when the TypeScript model analyzer runs |\n| `data-model-graph.json` | Separate graph of data-model entity and field nodes, written when the TypeScript model analyzer runs |\n| `frontend-semantic.json` | Frontend semantic artifact: React components, local components, prop types, hooks, handlers, JSX regions, test blocks, locators, UI strings, and flow relationships, written when the frontend analyzer runs on TSX/JSX files |\n| `frontend-reachability.json` | Frontend reachability artifact (v1.3.0): static route facts, browser storage key facts, UI reachability facts, and cross-domain reachability edges, written when the frontend analyzer runs on TSX/JSX files |\n| `classification.json` | Classification artifact (v1.5.0): conservative static schema/layer classification of files and symbols — category, edit guidance, readiness, risk labels, evidence, and uncertainty — written whenever the classification analyzer runs |\n| `android-project.json` | Android project artifact (v1.9.0 Batch 1): static Android/Gradle project, module, and source-set detection — Kotlin/Java symbol data lives in `symbol-index.json`/`code-graph.json` instead (Batch 2/Batch 3) — written when Android evidence is found under `--root` |\n| `android-components.json` | Android component-role artifact (v1.9.0 Batch 4): conservative static role detection (Activity/Fragment/ViewModel/Service/BroadcastReceiver/ContentProvider/Worker/Repository/UseCase/Room-Entity/Room-DAO/Room-Database/Retrofit-service/Hilt-module) over already-indexed Kotlin/Java top-level symbols — written only when at least one role is detected |\n| `android-gradle.json` | Static Gradle settings, module, plugin, dependency, SDK, build-type, product-flavor, source-set, and version-catalog evidence; unsupported dynamic expressions remain warnings |\n| `android-manifest.json` | Static source-set manifest declarations, components, permissions, features, intent filters, deep-link and launcher candidates, metadata, and resource references; no manifest merging |\n| `android-resources.json` | Static resource directories, qualifiers, values/layout/file resources, IDs, references, and FileProvider/network-security records; no overlay selection or binary decoding |\n| `android-navigation.json` | Static XML navigation graphs and narrow Compose route evidence, including destinations, actions, arguments, includes, deep links, candidates, and direct screen candidates; no runtime reachability proof |\n| `android-compose-semantic.json` | v1.11.0 conservative Compose declarations and static state/effect/ViewModel/UI/click/navigation evidence; conditional on supported Compose evidence in a detected Android project |\n| `android-test-semantic.json` | v1.11.0 Android unit/instrumented test structure and static JUnit/Compose/Espresso/Robolectric/assertion/route/test-double evidence; conditional on detected Android test source sets |\n\n`manifest.json` is the authoritative registry for the current artifact set. Stale artifacts from previous runs are removed when `index` refreshes the directory.\n\nCompact semantic roles (`semanticRoles`/`artifactRefs`) and compact classification roles (`classificationRoles`/`classificationRefs`) on symbol-index symbols and code-graph nodes link back to their respective detailed artifacts. The data-model, frontend semantic, and classification artifacts remain separate from `code-graph.json`, each with its own node/entry ID space.\n\n`view` renders `code-graph.json` by default. Use `--graph data-model` or `--graph model-view-lineage` for data-model graphs. Use `--graph react-component`, `--graph react-flow`, `--graph react-prop-event-flow`, or `--graph frontend-test` for frontend semantic graphs. Graph artifacts remain separate; `view` does not merge semantic or lineage nodes into the code graph.\n\nAndroid relationships enrich `code-graph.json` directly. Use `--graph android-module`, `--graph android-manifest`, or `--graph android-navigation` for the original Android views. v1.11.0 adds `--graph compose-ui`, `--graph compose-navigation`, and `--graph android-test`, all as bounded projections of that same code graph.\n\n## Semantic integration\n\n### v1.1 data-model semantic roles\n\nThe TypeScript model analyzer produces:\n\n- `data-entity` roles on exported interfaces, type aliases, and classes that are classified as data models\n- `data-field` roles on their properties\n\nThese compact roles are embedded in `symbol-index.json` and `code-graph.json` using `semanticRoles` and `artifactRefs` arrays on each symbol or node. `search`, `lookup`, `slice`, and `source` are all semantic-aware.\n\n### v1.2 frontend semantic roles\n\nThe frontend analyzer runs on `.tsx` and `.jsx` files and produces a separate `frontend-semantic.json` artifact containing:\n\n- Exported React components with source locations\n- Local (non-exported) React components with source locations\n- Prop type interfaces with source locations\n- Hook blocks (useState, useEffect, and others) with source locations\n- Event handlers with source locations\n- JSX regions with source locations\n- Frontend test blocks (describe, test, it), setup hooks, locators, route strings, and UI strings when test files are indexed\n\nFrontend facts are not embedded into `code-graph.json` or `data-model.json`. They remain in `frontend-semantic.json` and are accessed through `source --react-region`, `source --include-local-component-tree`, and `view --graph react-*` or `view --graph frontend-test`.\n\n## React/TSX indexing\n\nWhen `index` encounters `.tsx` or `.jsx` files, the frontend analyzer extracts:\n\n- Exported React components (function and arrow-function forms)\n- Local (non-exported) React components used within the file\n- Prop type interfaces and type aliases\n- `useState` and `useEffect` hook blocks\n- Event handlers and inline handlers\n- JSX return regions\n- Render helper local functions\n- Important UI strings (`data-testid`, `aria-label`)\n\nResults are written to `frontend-semantic.json` and registered in `manifest.json`.\n\nExample:\n\n```sh\nnpx @dailephd/my-dev-kit index --root . --src src --out .my-dev-kit --json\n```\n\nThe `manifest.json` will include a `frontendSemantic` artifact path when TSX/JSX files are indexed.\n\n## Frontend-test indexing\n\nThe frontend analyzer infrastructure supports extracting test facts from test files: `describe`/`test`/`it` block titles, setup/teardown hooks, locator expressions, and route-like strings. Test facts are included in `frontend-semantic.json` alongside component facts when present.\n\nSupported `.test.`/`.spec.` files are indexed like any other supported file when they are beneath a selected `--src` root (for example `--src tests`, or colocated tests under `--src src`); `.d.ts` declaration files remain excluded, and `--exclude` and the default ignored directories still apply. The `view --graph frontend-test` graph view produces output only when test files reach `frontend-semantic.json`, so include the test roots you want analyzed. Indexing test files is static evidence only and does not prove the tests run or pass.\n\n## Exact source retrieval\n\nSearch for an exact string across all indexed source files:\n\n```sh\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --contains \"workspace-editor-empty-state\" --context 5 --format numbered\n```\n\nFilter by path prefix:\n\n```sh\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --contains \"structured-content\" --path src/components --context 3 --format json\n```\n\nEach match result includes:\n- file path and line/column\n- surrounding context lines\n- match classification (`declaration-like`, `usage-like`, or `unknown`)\n- frontend value context when the string appears in frontend facts\n\nMultiple occurrences of the same literal across files are all reported.\n\n## React region retrieval\n\nRetrieve a named React region (component, hook, handler, JSX region, or prop type) by name:\n\n```sh\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --react-region WorkspaceEditorShell --file \"src/WorkspaceEditorShell.tsx\" --format numbered\n```\n\nThe `--react-region` flag resolves the named region from the frontend semantic artifact and returns its source slice. JSON output includes a `reactRegion` metadata block with the matched kind, ID, and name.\n\n## Local component-tree prop/event-flow retrieval\n\nRetrieve a component and its local child components as a connected source bundle:\n\n```sh\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --symbol WorkspaceEditorShell --file \"src/WorkspaceEditorShell.tsx\" --include-local-component-tree --format numbered\n```\n\nFilter to a specific prop name:\n\n```sh\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --symbol WorkspaceEditorShell --file \"src/WorkspaceEditorShell.tsx\" --include-local-component-tree --prop onSuccess --format numbered\n```\n\nThis feature uses statically extracted prop and event flow relationships between the parent component and its local child components. It is static analysis only — it does not trace runtime rendering behavior, route reachability, or browser-state behavior.\n\n## Frontend graph views\n\nRender a static React component graph (components, local components, prop types, and their structural relationships):\n\n```sh\nnpx @dailephd/my-dev-kit view --index .my-dev-kit --graph react-component --format dot --out .my-dev-kit/react-component.dot\n```\n\nRender all frontend flow facts (hooks, handlers, JSX regions, and flow relationships):\n\n```sh\nnpx @dailephd/my-dev-kit view --index .my-dev-kit --graph react-flow --format dot --out .my-dev-kit/react-flow.dot\n```\n\nRender only prop and event flow relationships:\n\n```sh\nnpx @dailephd/my-dev-kit view --index .my-dev-kit --graph react-prop-event-flow --format dot --out .my-dev-kit/react-prop-event-flow.dot\n```\n\nRender frontend test structure (test files, describe blocks, test/it blocks, setup hooks, locators, route strings):\n\n```sh\nnpx @dailephd/my-dev-kit view --index .my-dev-kit --graph frontend-test --format dot --out .my-dev-kit/frontend-test.dot\n```\n\nDOT output does not require Graphviz. All four graph views are backed by the same `frontend-semantic.json` artifact and are rendered at command time from static extracted facts. They do not claim runtime rendering behavior, route reachability, or browser-state behavior.\n\n## Frontend Reachability (v1.3.0)\n\nmy-dev-kit records static evidence connecting routes, components, UI markers, browser storage keys, and tests. When `index` runs the frontend analyzer on `.tsx`/`.jsx` files, it also writes a `frontend-reachability.json` artifact that links:\n\n- static route paths (React Router `path`/`to`/`href`, Next.js `pages/` convention, test-mentioned routes) to their owning components\n- browser storage keys (`localStorage`/`sessionStorage`/`cookie` with static string keys) to the components and `useState` gates that use them\n- UI markers (`data-testid`, `aria-label`, visible text, `placeholder`, `aria-labelledby`) to their components, JSX condition gates, and any matching test locators\n\nEvery fact carries a static confidence (`high`/`medium`/`low`) and warnings for dynamic or unresolved values. This is conservative static analysis: it records what the source text contains. It does not execute the app, run the browser, prove a route is reachable by any user, or prove a UI element is visible at runtime.\n\n`search`, `lookup`, `slice`, and `source` accept `--route`, `--storage-key`, and `--ui` selectors, and `view` adds three reachability graph views:\n\n```sh\n# Find a route fact and its related components, storage keys, and UI markers\nnpx @dailephd/my-dev-kit search --index .my-dev-kit --route \"/workspaces/new\" --json\nnpx @dailephd/my-dev-kit search --index .my-dev-kit --storage-key \"workspace-editor-draft.v1\" --json\nnpx @dailephd/my-dev-kit search --index .my-dev-kit --ui \"workspace-editor-empty-state\" --json\n\n# Look up a single reachability fact and its depth-1 neighbors\nnpx @dailephd/my-dev-kit lookup --index .my-dev-kit --route \"/workspaces/new\" --json\nnpx @dailephd/my-dev-kit lookup --index .my-dev-kit --storage-key \"workspace-editor-draft.v1\" --json\nnpx @dailephd/my-dev-kit lookup --index .my-dev-kit --ui \"workspace-editor-empty-state\" --json\n\n# Slice a cross-domain subgraph rooted at a route, pulling in storage, UI, and test evidence\nnpx @dailephd/my-dev-kit slice --index .my-dev-kit --route \"/workspaces/new\" --include-storage --include-ui --include-tests --json\n\n# Retrieve the bounded source where a route/storage-key/UI marker is defined\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --route \"/workspaces/new\" --format numbered\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --storage-key \"workspace-editor-draft.v1\" --format numbered\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --ui \"workspace-editor-empty-state\" --format numbered\n\n# Render reachability graph views (DOT does not require Graphviz)\nnpx @dailephd/my-dev-kit view --index .my-dev-kit --graph route --format dot --out .my-dev-kit/route.dot\nnpx @dailephd/my-dev-kit view --index .my-dev-kit --graph browser-storage --format dot --out .my-dev-kit/browser-storage.dot\nnpx @dailephd/my-dev-kit view --index .my-dev-kit --graph ui-reachability --format dot --out .my-dev-kit/ui-reachability.dot\n```\n\nSee [docs/COMMANDS.md](docs/COMMANDS.md) for the full reachability flag reference.\n\n## Source continuation (v1.4.0)\n\nWhen the first bounded source result is not enough, continue reading without defaulting to a whole-file read.\n\n```sh\n# Continue a file from an explicit line\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --file src/editor.ts --continue-from 21\n\n# Continue from the end of a symbol's initial preview\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --file src/editor.ts --symbol EditorShell --continue\n\n# Continue from the end of a node's initial preview\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --node \"symbol:src/editor.ts#EditorShell\" --continue\n```\n\nJSON output always includes a `continuationCursor` with `nextStartLine`, `previousEndLine`, `exhausted`, and `reason`. Numbered output prints a `[CONTINUE: ...]` or `[EOF: ...]` footer.\n\n## Local dependency expansion (v1.4.0)\n\nRetrieve a primary symbol and the same-file definitions it directly depends on as a bounded, structured bundle.\n\n```sh\n# Include same-file types and helpers (composite flag)\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --file src/editor.ts --symbol EditorShell --include-local-deps --format numbered\n\n# Include prop types (uses frontend-semantic when available for exact end lines)\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --file src/editor.tsx --symbol EditorShell --include-props --format numbered\n\n# Include locally rendered child components\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --file src/editor.tsx --symbol EditorShell --include-local-components --format numbered\n\n# Include local import lines (external packages go to skippedBlocks)\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --file src/editor.ts --symbol EditorShell --include-imports --format numbered\n\n# Cap bundle size\nnpx @dailephd/my-dev-kit source --index .my-dev-kit --file src/editor.ts --symbol EditorShell --include-local-deps --max-bundle-lines 150 --max-blocks 8 --format json\n```\n\nBundle output (`--format json`) includes `primaryBlock`, `expansionBlocks` (each with `kind`, `expansionReasons`, `confidence`, `dedupeKey`), `skippedBlocks` (with `reasonCode` and human reason), `limits`, `stats`, and `continuationCursors`.\n\nNumbered output prints a block header before each block:\n\n```\n=== [local-type] src/editor.ts:3-7 (5 lines) — local-type ===\n```\n\nExpansion is static-analysis only: direct, same-file dependencies. No cross-file closure, no runtime tracing, no browser execution.\n\n## Data-model extraction\n\nSupported extraction patterns:\n\n- exported interfaces with property signatures\n- exported type aliases whose right side is an object literal type\n- exported classes with property declarations\n\nSupported inspection behavior:\n\n- exact entity lookup by name or stable ID\n- exact field lookup by `Entity.field`\n- conservative static `trace-view` output for supported same-project evidence\n\nThe `data-model` command is available for focused inspection and regeneration of data-model artifacts. It reads index artifacts from `--index` and can regenerate or inspect without re-running `index`.\n\nUnsupported or ambiguous patterns are reported as warnings or omitted conservatively. The current release does not claim Prisma, SQL, Django, SQLAlchemy, TypeORM, or Sequelize support.\n\n## Conservative model-to-view lineage\n\n`trace-view` is a static evidence feature, not a runtime UI tracer.\n\nSupported lineage is intentionally narrow. It can connect supported data-model fields through:\n\n- direct transformation functions that return object literals from model field reads\n- direct view-model property assignments from known model fields\n- direct component prop assignments when field identity remains explicit\n- direct JSX rendering when field identity remains explicit\n\nIt does not claim:\n\n- route-aware reachability\n- browser-state behavior\n- full React render-flow tracing\n- runtime rendering behavior\n\n## Trying the bundled examples from a cloned repository\n\nThe bundled examples are useful when you cloned this repository, are inspecting package contents, or want a small smoke-test project.\n\nTypeScript graph example:\n\n```sh\nnpx @dailephd/my-dev-kit index --root examples/basic-ts --src src --out .my-dev-kit --call-graph --json\nnpx @dailephd/my-dev-kit search --index examples/basic-ts/.my-dev-kit --query \"user\" --limit 5 --json\nnpx @dailephd/my-dev-kit lookup --index examples/basic-ts/.my-dev-kit --node symbol:src/index.ts#describeUser --depth 1 --json\n```\n\nData-model example:\n\n```sh\nnpx @dailephd/my-dev-kit index --root examples/basic-data-model-ts --src src --out .my-dev-kit --json\nnpx @dailephd/my-dev-kit data-model --index examples/basic-data-model-ts/.my-dev-kit --entity User --json\nnpx @dailephd/my-dev-kit data-model --index examples/basic-data-model-ts/.my-dev-kit --field User.email --json\nnpx @dailephd/my-dev-kit data-model --index examples/basic-data-model-ts/.my-dev-kit --trace-view User --json\nnpx @dailephd/my-dev-kit view --index examples/basic-data-model-ts/.my-dev-kit --graph data-model --format dot --out examples/basic-data-model-ts/.my-dev-kit/data-model.dot\n```\n\nReact/TSX example:\n\n```sh\nnpx @dailephd/my-dev-kit index --root examples/basic-react-tsx --src src --out .my-dev-kit --json\nnpx @dailephd/my-dev-kit source --index examples/basic-react-tsx/.my-dev-kit --contains \"workspace-editor-empty-state\" --context 5 --format numbered\nnpx @dailephd/my-dev-kit view --index examples/basic-react-tsx/.my-dev-kit --graph react-component --format dot --out examples/basic-react-tsx/.my-dev-kit/react-component.dot\n```\n\nSee [examples/README.md](examples/README.md) for more detail.\n\n## Design boundaries\n\nmy-dev-kit is a local, deterministic read-only CLI tool. It does not:\n\n- make network requests or LLM calls\n- edit or modify source files\n- perform semantic similarity search or embedding-based retrieval\n- execute user application code\n- connect to databases\n- claim runtime React or browser-state behavior\n- prove route reachability at runtime\n- prove UI visibility at runtime\n- execute Android unit or instrumented tests, Compose, Gradle, an application, or an emulator\n\nAll React/TSX and frontend-test analysis is conservative static extraction from source text. The frontend semantic artifact records what the static analyzer found in the source; it does not prove what the application renders at runtime.\n\n## Limitations\n\n- Symbol end lines are not stored in the symbol index. Symbol source retrieval returns a capped preview from the symbol's start line. v1.4 uses the `frontend-semantic.json` artifact (when available) or a next-symbol heuristic to estimate end lines; confidence is reported per block. Use `--continue-from <n>` or `--continue` to retrieve subsequent windows.\n- Call-graph extraction is best-effort static syntactic analysis and may miss dynamic dispatch, computed calls, monkey-patching, decorator effects, and runtime behavior.\n- Data-model extraction is conservative and currently focused on supported TypeScript patterns.\n- Frontend semantic extraction is conservative. Dynamic component registrations, runtime-composed JSX, and computed prop names may not be extracted or may be partially extracted with warnings.\n- Semantic roles currently produced: `data-entity` and `data-field` from the TypeScript model analyzer. Frontend facts are in `frontend-semantic.json`, not embedded as `semanticRoles` in the code graph.\n- Lookup is exact only. There is no fuzzy entity, field, or component lookup.\n- `trace-view` is conservative static analysis only. Unsupported dynamic or ambiguous patterns are warned or omitted.\n- Route-aware retrieval, browser-storage tracing, and UI reachability analysis (v1.3.0) record static evidence only. They do not execute the app, run the browser, prove a route is reachable by any user, or prove a UI element is visible at runtime.\n\n## Development from source\n\n```sh\nnpm install\nnpm run build\n```\n\nValidate:\n\n```sh\nnpm run typecheck\nnpm run test\nnpm run verify\n```\n\nSee [docs/DEVELOPMENT.md](docs/DEVELOPMENT.md) for the development guide and [docs/RELEASE.md](docs/RELEASE.md) for the maintainer release checklist.\n\n## Roadmap\n\nVersion 1.12.4 is the latest published release. Later versions retain their separate planned scopes: v1.13.0 Android retrieval benchmarks/examples/workflow documentation, and the longer-term v1.14.0 and v2.0.0 plans. Historical release details and deferred v1.8.0 work remain in the canonical [roadmap](docs/ROADMAP.md) and [changelog](CHANGELOG.md).\n\n## Support the project\n\nmy-dev-kit is independently developed and maintained by dailephd / dailephd LLC.\n\nIf the project helps your work, you can optionally support continued development through:\n\n- GitHub Sponsors: https://github.com/sponsors/dailephd\n- PayPal: https://paypal.me/daile88\n\nSupport is appreciated, but not required. The project remains usable under its published license.\n\n## Bug reports\n\nOpen an issue in the project repository with a description of the finding and a reproduction case.\n\n## License\n\nMIT. Copyright (c) 2026 dailephd LLC.\n\nSee [LICENSE](LICENSE) for the full license text.\n","readmeFilename":"README.md"}