{"_id":"@alpsckr/unity_cli","_rev":"16-02777dcfc234ada2322bcde255c50320","name":"@alpsckr/unity_cli","dist-tags":{"latest":"0.3.3"},"versions":{"0.1.4":{"name":"@alpsckr/unity_cli","version":"0.1.4","license":"MIT","_id":"@alpsckr/unity_cli@0.1.4","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"ed6bb43868077e319375c0adfd1cb525c439cb59","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.1.4.tgz","fileCount":506,"integrity":"sha512-VBBZQPAE07brctdngudhmk10ebzFZBAG3hRdH9t+1PN5X9mrCnAfL/06QYmtWaMub2QmjvvncNnbGWZko5UrvQ==","signatures":[{"sig":"MEYCIQC1SrhuY/ovrrcckX1H5vZcGH1TQnnRqb66xx4891uJmgIhAO2ClZW9U0cnaVVKNBmDuONsTTNmurWmAlxSO7/S4PJQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3805901},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"5a145826913a935b35049f3216f7a95cfbf4c050","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"10.9.8","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"22.22.3","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.1.4_1782478951612_0.2276462975818876","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.1.5":{"name":"@alpsckr/unity_cli","version":"0.1.5","license":"MIT","_id":"@alpsckr/unity_cli@0.1.5","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"84533bfe737447c8fb79861f6475a5a07c91a5cc","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.1.5.tgz","fileCount":506,"integrity":"sha512-tMauGfDqEqK9o8LNkeZuCDptXuM6pnq8eanowGyVfptHiI5nm6V+1CiItlKJq9PmxTkBrdnUKkwnjmPNWXSN/A==","signatures":[{"sig":"MEUCIDjU4D54ew3/hBrQR3hOvZh/5vBiOnKgVHZ73r0nHvsAAiEAl95ahJuBSUDbyOaQFGoZqU1l8M0xumFrv+7iNbMvbw4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3806857},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"3eb93563a8d668b0e0c67e9061ea4a7db1695eaf","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"10.9.8","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"22.22.3","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.1.5_1782493891999_0.44016928786888987","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.1.6":{"name":"@alpsckr/unity_cli","version":"0.1.6","license":"MIT","_id":"@alpsckr/unity_cli@0.1.6","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"7917a877ce5161d010a4bc362eac45cd9179cd77","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.1.6.tgz","fileCount":507,"integrity":"sha512-Rfxpt6rx4dIAF5vauupHieVaDzkAxC4W6nbt2jJRPJaaGQN/AcRd5DDEifyDPOEGCuX/L3/gSYQbR5VrSbvuaw==","signatures":[{"sig":"MEUCIQDCoZ6FPZrePvzCFCko1FdDHPHgc2ZHlBkfxGfBnIEohwIgXmGxvn39znSdTgKvKI15XAjXm4ccWZ7z+DTnK4BEdEU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3808165},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"6bc5b0a5c63823fad665e43fcefac675938d876a","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"10.9.8","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"22.22.3","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.1.6_1782497837285_0.9618297005512473","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.1.7":{"name":"@alpsckr/unity_cli","version":"0.1.7","license":"MIT","_id":"@alpsckr/unity_cli@0.1.7","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"5d34feefca0cb20dd11e69c0002d5acc9348b4b4","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.1.7.tgz","fileCount":500,"integrity":"sha512-HbT57Dru8GoEoD+x1TopOijLLNIYJDfLWxrQi/nJgZaMaLmL+f9WzBNFxi/u0GztUuKOzUZWUu0KTU9icveWFQ==","signatures":[{"sig":"MEQCIGkBIr4Ytpeas1wvUnzSQCgg6WIhwUAHgcWI63RoNc+WAiBBj593IAj2kCyJqTu6uv3J3+5G8tx4866gaDXiRcBB5g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3815940},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"600e284ea1ee7c3dc76611ea511bcbac851111d1","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"10.9.8","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"22.22.3","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.1.7_1782624225837_0.07836897107761409","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.1.8":{"name":"@alpsckr/unity_cli","version":"0.1.8","license":"MIT","_id":"@alpsckr/unity_cli@0.1.8","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"bddd39365129a7c6c5da2984edac1648161949ef","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.1.8.tgz","fileCount":506,"integrity":"sha512-bobnMMSi2naKj//aT3lOShCOds4d0NqsR4Za9CvBM47hufA4Nsy50Mm5NvGHA/1IlOxc15SWOVsyKu3eufGffA==","signatures":[{"sig":"MEUCIC/s952nt9EvPXuGGRHzhU36fO6Jeyp1GyDrczrlGgAyAiEA+83wzcE4C2Y73t7IFvyCnfCjaYLaPIt97gaWva02yeY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4287078},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"a489f1bff329c9ac6d30c86db9d75ae61017326d","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"10.9.8","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"22.22.3","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.1.8_1782806169278_0.3478265831870959","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.1.9":{"name":"@alpsckr/unity_cli","version":"0.1.9","license":"MIT","_id":"@alpsckr/unity_cli@0.1.9","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"77edc26b1209f30d5b9b4bae2c38675166f090e5","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.1.9.tgz","fileCount":508,"integrity":"sha512-lAeKJlQiLIkK3HPjWqucTd6zbswbxNXgpSgPIblChCg/7x8qYQnPPR4BD6zUWl9R+bHAj0O3hiCqAPD+7VW46A==","signatures":[{"sig":"MEUCIDD3amyZLySY6+L5YoNjTroPkJqCKo3C6H/NYTFBGLeqAiEA0rPWIVcSN7NI6tFfP2UiLnagPA5ALZ9daf+lbjzrRQs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4375337},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"a0273afc8e7c87d73222fb538f8e5476181f0588","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"10.9.8","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"22.22.3","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.1.9_1782977076542_0.8825636256150309","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.1.10":{"name":"@alpsckr/unity_cli","version":"0.1.10","license":"MIT","_id":"@alpsckr/unity_cli@0.1.10","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"204547cf0535d8a5abd47d0c077dfb85e6c12ab0","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.1.10.tgz","fileCount":972,"integrity":"sha512-w64o5hIZUiF1IX4rLzNl2UQa7Ju6Rkxh4mUclICZDtfsw7Tt/KMSnFOXBWX+gFJPcrClyVmmNgq/ImBl9PGmew==","signatures":[{"sig":"MEUCIDQFA9H57oPEjNGckgwcAIdr896ApSsxhddY8WRV+z4yAiEA/rcdDfhSSqtuoDuvJ26SAxLe5UKwasb7ejrus3uD3y4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7882447},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"d5f10461a3e09f7c294f70e51005cf2d5bfac627","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs && tsc -p tsconfig.json","matrix:live":"node scripts/run-final-live-matrix.mjs","completion:audit":"node scripts/audit-tool-completion-contract.mjs --strict","matrix:live:dist":"node scripts/run-final-live-matrix.mjs --cli node --cli-arg dist/cli.js","architecture:audit":"node scripts/audit-final-architecture.mjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js","test:matrix-runner":"node --test scripts/run-final-live-matrix.test.mjs","generate:extensions":"node scripts/gen-extension-projections.mjs","generate:registries":"node scripts/gen-ts-registries.mjs && node scripts/gen-tool-completion-registry.mjs","static-catalog:audit":"node scripts/audit-static-capability-catalog.mjs","architecture:validate":"node scripts/audit-final-architecture.mjs --strict && node scripts/audit-tool-completion-contract.mjs --strict && node scripts/audit-static-capability-catalog.mjs","static-catalog:capture":"node scripts/capture-static-capability-catalog.mjs"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"11.16.0","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.1.10_1785987139474_0.7410716997137332","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.2.0":{"name":"@alpsckr/unity_cli","version":"0.2.0","license":"MIT","_id":"@alpsckr/unity_cli@0.2.0","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"45a24cb2d67d8d63b308db0cedc0e9920dea7b00","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.2.0.tgz","fileCount":1043,"integrity":"sha512-AX35ARAoroakA9YWszT+RytierfwFP0lmUlmLE4GCB3HXvQPkfcZBRW5CADIa+sGqsFYn7Sh00BJ4LdNNhHOBQ==","signatures":[{"sig":"MEQCIBtU3NNKuscAl/AHiJJBGeBInIWtn8zdiHQE5tffVOjBAiA8PSgTaILaRp8utdjmIEQLvexoBXNQoNd9L1fbz9OIWw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9406927},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"8c59bd0886eb3b2845e272012417e1b66c561d26","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs && tsc -p tsconfig.json","matrix:live":"node scripts/run-final-live-matrix.mjs","completion:audit":"node scripts/audit-tool-completion-contract.mjs --strict","matrix:live:dist":"node scripts/run-final-live-matrix.mjs --cli node --cli-arg dist/cli.js","architecture:audit":"node scripts/audit-final-architecture.mjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js","test:matrix-runner":"node --test scripts/run-final-live-matrix.test.mjs","generate:extensions":"node scripts/gen-extension-projections.mjs","generate:registries":"node scripts/gen-ts-registries.mjs && node scripts/gen-tool-completion-registry.mjs","static-catalog:audit":"node scripts/audit-static-capability-catalog.mjs","architecture:validate":"node scripts/audit-final-architecture.mjs --strict && node scripts/audit-tool-completion-contract.mjs --strict && node scripts/audit-static-capability-catalog.mjs","static-catalog:capture":"node scripts/capture-static-capability-catalog.mjs"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"11.16.0","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.2.0_1786540000987_0.34030673847661763","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.2.1":{"name":"@alpsckr/unity_cli","version":"0.2.1","license":"MIT","_id":"@alpsckr/unity_cli@0.2.1","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"4239d98c5b2a9d3a751f85e63bc602e108f6b545","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.2.1.tgz","fileCount":1043,"integrity":"sha512-4XqoX/C+ws0hLQLbkSpI5O+aXz0Cw/Yx7zOEn6ykaB8Kt8SbNVVQsZc7XFX1YBE0g+turCKwiWFA0fsJHOCgkQ==","signatures":[{"sig":"MEYCIQCaU4ESri6xeOodMvio9jMF/uoaOIwo6p22cKyLQrcZsAIhAJ4nLj9G34jcdMBOJVZAL79gkZeNvB5KsMz1VV/JRXNB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9407187},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"6594e67076f468a3e636c426cbdc806a53c53ffa","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs && tsc -p tsconfig.json","matrix:live":"node scripts/run-final-live-matrix.mjs","completion:audit":"node scripts/audit-tool-completion-contract.mjs --strict","matrix:live:dist":"node scripts/run-final-live-matrix.mjs --cli node --cli-arg dist/cli.js","architecture:audit":"node scripts/audit-final-architecture.mjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js","test:matrix-runner":"node --test scripts/run-final-live-matrix.test.mjs","generate:extensions":"node scripts/gen-extension-projections.mjs","generate:registries":"node scripts/gen-ts-registries.mjs && node scripts/gen-tool-completion-registry.mjs","static-catalog:audit":"node scripts/audit-static-capability-catalog.mjs","architecture:validate":"node scripts/audit-final-architecture.mjs --strict && node scripts/audit-tool-completion-contract.mjs --strict && node scripts/audit-static-capability-catalog.mjs","static-catalog:capture":"node scripts/capture-static-capability-catalog.mjs"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"11.16.0","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.2.1_1786543907910_0.24293993579794315","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.2.2":{"name":"@alpsckr/unity_cli","version":"0.2.2","license":"MIT","_id":"@alpsckr/unity_cli@0.2.2","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"291db4651e9d2f90385a1d5a6cace30279d89969","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.2.2.tgz","fileCount":1044,"integrity":"sha512-9cXUXFp04ruLk3YzUS0oVvSrK6saILaBWmM+f+gFAybXfvpfALxRWguHTm07Vfgd+QBfPf1Ml81s5rLO+IYASA==","signatures":[{"sig":"MEUCIDTrA5145hpKoGvaeqj+W6Jm1GjiKyvCjZJ5Moso6BKSAiEAtnUU6++6W16Ts3A9qRVvhk6PfKkJLZ5D+JBe+T74co8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9418022},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"c6321b21d5174adbf9c496d25d554ca09de3655f","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs && tsc -p tsconfig.json","matrix:live":"node scripts/run-final-live-matrix.mjs","completion:audit":"node scripts/audit-tool-completion-contract.mjs --strict","matrix:live:dist":"node scripts/run-final-live-matrix.mjs --cli node --cli-arg dist/cli.js","architecture:audit":"node scripts/audit-final-architecture.mjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js","test:matrix-runner":"node --test scripts/run-final-live-matrix.test.mjs","generate:extensions":"node scripts/gen-extension-projections.mjs","generate:registries":"node scripts/gen-ts-registries.mjs && node scripts/gen-tool-completion-registry.mjs","static-catalog:audit":"node scripts/audit-static-capability-catalog.mjs","architecture:validate":"node scripts/audit-final-architecture.mjs --strict && node scripts/audit-tool-completion-contract.mjs --strict && node scripts/audit-static-capability-catalog.mjs","static-catalog:capture":"node scripts/capture-static-capability-catalog.mjs"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"11.16.0","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.2.2_1786586794019_0.7751036564113905","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.2.3":{"name":"@alpsckr/unity_cli","version":"0.2.3","license":"MIT","_id":"@alpsckr/unity_cli@0.2.3","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"23c7c16b77d2a3a0d07cebecf36ac0d0f80a46b6","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.2.3.tgz","fileCount":1053,"integrity":"sha512-0n9R0D6x2aPc87R4jnCJgnZrTkjCAYFAYrDKrjjyYqIXbZVuV1TwCU2u769J10gmOlhfknBxs/mZp5wHL9qffA==","signatures":[{"sig":"MEQCIAg6C239m8BSgHLTxg9pJKANX7gAHy8fkit2aLg4gAgtAiBFtUxGnQnYaHbWto+JXWVTmO7Uy9bsYHJIyi3Ut+Hjew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18954896},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"0104caa022db679bcb8086c922f25e52f7d4c5ad","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs && tsc -p tsconfig.json","matrix:live":"node scripts/run-final-live-matrix.mjs","completion:audit":"node scripts/audit-tool-completion-contract.mjs --strict","matrix:live:dist":"node scripts/run-final-live-matrix.mjs --cli node --cli-arg dist/cli.js","architecture:audit":"node scripts/audit-final-architecture.mjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js","test:matrix-runner":"node --test scripts/run-final-live-matrix.test.mjs","generate:extensions":"node scripts/gen-extension-projections.mjs","generate:registries":"node scripts/gen-ts-registries.mjs && node scripts/gen-tool-completion-registry.mjs","static-catalog:audit":"node scripts/audit-static-capability-catalog.mjs","architecture:validate":"node scripts/audit-final-architecture.mjs --strict && node scripts/audit-tool-completion-contract.mjs --strict && node scripts/audit-static-capability-catalog.mjs","static-catalog:capture":"node scripts/capture-static-capability-catalog.mjs"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"11.16.0","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.2.3_1786616946645_0.8033842417260129","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.3.0":{"name":"@alpsckr/unity_cli","version":"0.3.0","license":"MIT","_id":"@alpsckr/unity_cli@0.3.0","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"2d3e1273457a1e1252a1f24cce45444c849663fb","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.3.0.tgz","fileCount":1053,"integrity":"sha512-BGbrm5ep4wS0XrjcmuJ6d9/2PLS0kbnAggDZZXv2pZzwQLMhQ9jAIQ38MC2vcbN0Wx/xECc1PV1ydUkvmWCn9g==","signatures":[{"sig":"MEYCIQCimB4A+/49UEdesTiqXhaHh7iW3eK7EQ0XJhjkiVOm9wIhANMXlRspil8IVgL2NjJ1VGLr5iV6t4ekpNsu5wzt7KrN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18863994},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"366d306569efbc3ce553363f0f920338f62cfb5c","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs && tsc -p tsconfig.json","matrix:live":"node scripts/run-final-live-matrix.mjs","completion:audit":"node scripts/audit-tool-completion-contract.mjs --strict","matrix:live:dist":"node scripts/run-final-live-matrix.mjs --cli node --cli-arg dist/cli.js","architecture:audit":"node scripts/audit-final-architecture.mjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js","test:matrix-runner":"node --test scripts/run-final-live-matrix.test.mjs","generate:extensions":"node scripts/gen-extension-projections.mjs","generate:registries":"node scripts/gen-ts-registries.mjs && node scripts/gen-tool-completion-registry.mjs","static-catalog:audit":"node scripts/audit-static-capability-catalog.mjs","architecture:validate":"node scripts/audit-final-architecture.mjs --strict && node scripts/audit-tool-completion-contract.mjs --strict && node scripts/audit-static-capability-catalog.mjs","static-catalog:capture":"node scripts/capture-static-capability-catalog.mjs"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"11.16.0","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.3.0_1786687042193_0.022854375049328413","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.3.1":{"name":"@alpsckr/unity_cli","version":"0.3.1","license":"MIT","_id":"@alpsckr/unity_cli@0.3.1","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"22dc153da7a87fce75c69644a32f06001895894c","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.3.1.tgz","fileCount":1053,"integrity":"sha512-e1+24f+hcSAOojVxtrL3ZnQvPhQkuk047J9OqOE6QMrfspx0d2LdUH0lLBheWJRkENLBXPVWggagmq4rPMlG+A==","signatures":[{"sig":"MEUCIQCXv0mPosR/dRo9ltZm/UgMBjQ2vk8EJTa0mqxmEQMonAIgG3WM+dGFARofC4HmYn0XcWRDg/LArSESGm00lTWSlG4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18921877},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"17f9b30088faf506c183e427794814543ae84a78","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs && tsc -p tsconfig.json","matrix:live":"node scripts/run-final-live-matrix.mjs","completion:audit":"node scripts/audit-tool-completion-contract.mjs --strict","matrix:live:dist":"node scripts/run-final-live-matrix.mjs --cli node --cli-arg dist/cli.js","architecture:audit":"node scripts/audit-final-architecture.mjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js","test:matrix-runner":"node --test scripts/run-final-live-matrix.test.mjs","generate:extensions":"node scripts/gen-extension-projections.mjs","generate:registries":"node scripts/gen-ts-registries.mjs && node scripts/gen-tool-completion-registry.mjs","static-catalog:audit":"node scripts/audit-static-capability-catalog.mjs","architecture:validate":"node scripts/audit-final-architecture.mjs --strict && node scripts/audit-tool-completion-contract.mjs --strict && node scripts/audit-static-capability-catalog.mjs","static-catalog:capture":"node scripts/capture-static-capability-catalog.mjs"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"10.9.8","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.3.1_1787132271816_0.445928156759434","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.3.2":{"name":"@alpsckr/unity_cli","version":"0.3.2","license":"MIT","_id":"@alpsckr/unity_cli@0.3.2","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"d19c07d3e031678fda9202071b92b7b310eca925","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.3.2.tgz","fileCount":1066,"integrity":"sha512-jIoIX3xy0KDVooMlHvlxyjS634yL9dWJoJDRVIwSV8qCb38b1J21VUHhcawhi2yzcoV2U88nJZHHuNaVoikp0w==","signatures":[{"sig":"MEUCIQDDdK2lfV1WXO+iZVQvc/L3NXKfp2fVUnHakq2iZkjDqgIgcuXwUL03qvRHb2HnPaGuZZm981ptzxDLh2Bf144czQo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":19080710},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"d7a796fb0600ec33a23193a874ca6b5ec24779ed","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs && tsc -p tsconfig.json","matrix:live":"node scripts/run-final-live-matrix.mjs","completion:audit":"node scripts/audit-tool-completion-contract.mjs --strict","matrix:live:dist":"node scripts/run-final-live-matrix.mjs --cli node --cli-arg dist/cli.js","architecture:audit":"node scripts/audit-final-architecture.mjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js","test:matrix-runner":"node --test scripts/run-final-live-matrix.test.mjs","generate:extensions":"node scripts/gen-extension-projections.mjs","generate:registries":"node scripts/gen-ts-registries.mjs && node scripts/gen-tool-completion-registry.mjs","static-catalog:audit":"node scripts/audit-static-capability-catalog.mjs","architecture:validate":"node scripts/audit-final-architecture.mjs --strict && node scripts/audit-tool-completion-contract.mjs --strict && node scripts/audit-static-capability-catalog.mjs","static-catalog:capture":"node scripts/capture-static-capability-catalog.mjs"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"10.9.8","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.3.2_1787293462337_0.5922842164474074","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.3.3":{"name":"@alpsckr/unity_cli","version":"0.3.3","license":"MIT","_id":"@alpsckr/unity_cli@0.3.3","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"bin":{"unity_cli":"dist/cli.js"},"dist":{"shasum":"72a705ef9b08cc20f96a85afa05330f63b6fee7a","tarball":"https://registry.npmjs.org/@alpsckr/unity_cli/-/unity_cli-0.3.3.tgz","fileCount":1066,"integrity":"sha512-4TsLx9lEn3mz0gD6t1ayjddBS2gFN43K+1/tOmeiQLuYYszh8+eXRgf0gL2gft5XREGrXGSDR9SJjSdum8g9gQ==","signatures":[{"sig":"MEQCIHt1Dau2xGv9kqYJQ2RO68NymxFFjA+QJXKq3GPR4ThRAiA9ramy22+WbX8mHlD/4+u34XPQqOPU1dsX0F05uFDVOQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":19081035},"type":"module","engines":{"node":">=20.0.0"},"gitHead":"5422fbeba0a85f0c4b1c3c8f606bd1a29af6a279","scripts":{"test":"node --test \"dist/tests/**/*.test.js\"","build":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","prepack":"npm run build","pretest":"npm run build:test","build:test":"npm run clean && npm run generate:extensions && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/gen-command-contract.mjs && node scripts/gen-protocol.mjs && node scripts/gen-tool-schemas.mjs && npm run generate:registries && tsc -p tsconfig.test.json && node scripts/copy-test-resources.cjs && tsc -p tsconfig.json","matrix:live":"node scripts/run-final-live-matrix.mjs","completion:audit":"node scripts/audit-tool-completion-contract.mjs --strict","matrix:live:dist":"node scripts/run-final-live-matrix.mjs --cli node --cli-arg dist/cli.js","architecture:audit":"node scripts/audit-final-architecture.mjs","contracts:validate":"npm run build && node dist/contracts/validate-command-contract.js","test:matrix-runner":"node --test scripts/run-final-live-matrix.test.mjs","generate:extensions":"node scripts/gen-extension-projections.mjs","generate:registries":"node scripts/gen-ts-registries.mjs && node scripts/gen-tool-completion-registry.mjs","static-catalog:audit":"node scripts/audit-static-capability-catalog.mjs","architecture:validate":"node scripts/audit-final-architecture.mjs --strict && node scripts/audit-tool-completion-contract.mjs --strict && node scripts/audit-static-capability-catalog.mjs","static-catalog:capture":"node scripts/capture-static-capability-catalog.mjs"},"_npmUser":{"name":"alpsckr","email":"alpsckr@gmail.com"},"_npmVersion":"10.9.8","description":"Windows-first CLI for Unity CLI automation.","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.14.10"},"_npmOperationalInternal":{"tmp":"tmp/unity_cli_0.3.3_1787561575089_0.2267973930867635","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."}},"time":{"created":"2026-06-26T13:02:31.409Z","modified":"2026-08-27T07:57:18.695Z","0.1.4":"2026-06-26T13:02:31.803Z","0.1.5":"2026-06-26T17:11:32.187Z","0.1.6":"2026-06-26T18:17:17.473Z","0.1.7":"2026-06-28T05:23:46.035Z","0.1.8":"2026-06-30T07:56:09.470Z","0.1.9":"2026-07-02T07:24:36.690Z","0.1.10":"2026-08-06T03:32:19.663Z","0.2.0":"2026-08-12T13:06:41.243Z","0.2.1":"2026-08-12T14:11:48.098Z","0.2.2":"2026-08-13T02:06:34.271Z","0.2.3":"2026-08-13T10:29:06.924Z","0.3.0":"2026-08-14T05:57:22.475Z","0.3.1":"2026-08-19T09:37:52.067Z","0.3.2":"2026-08-21T06:24:22.634Z","0.3.3":"2026-08-24T08:52:55.334Z"},"license":"MIT","description":"Windows-first CLI for Unity CLI automation.","maintainers":[{"name":"alpsckr","email":"alpsckr@gmail.com"}],"readme":"# unity_cli\n\nCLI-first Unity 自动化工具，不是 MCP server。通过 `unity_cli` 二进制命令行直接驱动 Unity Editor，无需额外协议层。\n\nnpm 包名：`@alpsckr/unity_cli`\n运行环境：Windows + Node.js 20+  \n当前方向：冻结决策 - 独立 CLI 实现、Windows-only、npm-first 安装；公开 Tool 与 CLI 控制面调用即授权。\n\n## Project Baseline\n\n本节是项目基线，优先级高于本文档其他章节、历史实现、旧示例和当前代码状态。AI 和后续实现不得自行修改本节含义；如需调整，必须由项目所有者明确确认。\n\n### 1. Clean Project Semantics\n\n本项目是开发中项目，不承担旧版本兼容义务。\n\n项目代码、文档、命令形态和注释必须表达当前项目规范。发现旧语义、阶段性语义或兼容性语义时，应统一改为当前规范；无法干净迁移时，优先删除，而不是保留多套说法。\n\n### 2. Top-Level CLI Shape\n\n用户可见顶层命令分为两类：能力入口和 CLI 控制面。\n\n能力入口只允许：\n\n- `tools`\n- `command`\n\nCLI控制面只允许：\n\n- `init`\n- `extensions`\n- `target`\n- `instances`\n- `doctor`\n\nUnity项目内容与Editor能力域必须进入唯一Tool catalog，例如scene、asset、game-object、prefab、editor、screenshot、package、docs、reflect、build、test、code、profiler、physics、graphics等。`tools run <tool> --input <json>`与`command <name> <business-args>`只是同一descriptor和dispatcher的两种调用语法。\n\n`target`、`instances`、`doctor` 是 CLI 自身的状态、路由和诊断控制面；它们可以作为顶层命令存在，但不得重新引入 Unity 能力域的顶层入口。\n\n内部 Bridge、协调器和 registry 可以作为实现细节存在，但不得定义超出上述清单的用户可见顶层命令形态。\n\n本产品只吸收必须由已打开 Unity Editor 或 development Player 提供的项目内自动化价值。auth、Unity Hub、Editor 安装或打开、Cloud、License 和 proxy 配置属于外部控制面，必须直接使用系统或官方控制面工具，不进入 Tool catalog，也不新增顶层命令。\n\n### 3. AI-First Tool Interface\n\n本 CLI 主要提供给 AI 使用。项目哲学不是维护一套面向人工记忆的传统命令手册，而是提供可发现、可描述、可审计的工具目录。\n\nAI 的标准流程是：\n\n```text\nunity_cli tools group/search\nunity_cli tools describe <tool>\nunity_cli tools run <tool> --input <json>\nunity_cli command\nunity_cli command <name> --field <value>\n\nunity_cli target alias list/set/unset\nunity_cli instances list/prune\nunity_cli doctor\n\nunity_cli extensions list/install/remove/doctor\nunity_cli init\n```\n\n具体有哪些工具、工具参数是什么、风险边界是什么，应由AI通过本CLI内置的`tools group/search/describe`自发现。省略name的`command`只返回同一live catalog的command投影，不是第二份能力目录。\n\n## 快速开始\n\n```powershell\n# 安装\nnpm install -g @alpsckr/unity_cli\n\n# 初始化项目（安装 Bridge 包；若项目已有 .pi/.claude/.agents，则自动安装 Skill）\nunity_cli init --project C:\\path\\MyProject\n\n# Bridge AutoStart默认开启；项目级开关位于Unity的Project Settings > Unity CLI\n# 修改后从下一次Domain Reload或Editor启动生效\n\n# 查看帮助\nunity_cli --help\nunity_cli --version\n```\n\n## 核心使用流程\n\n### 1. 发现目标实例\n\n```powershell\n# 默认只列非 offline 实例；hiddenOfflineCount 表示被隐藏数量\n# invalidRecordCount 出现时表示旧/坏记录已隔离，合法v3实例仍会返回\nunity_cli instances list\n# 需要审计历史/offline 合法记录时显式展开\nunity_cli instances list --all\n\n# 已知实例时，在后续每条 Bridge 命令上显式传入\nunity_cli tools group --instance <instanceId>\n# 可先创建稳定别名，再继续显式传入\nunity_cli target alias set <instanceId> my-project\nunity_cli tools group --instance my-project\n```\n\n### 2. 发现工具能力（group-first 路径）\n\n推荐按组逐层发现，避免一次展开全量工具：\n\n```powershell\n# 第一步：查看工具分组\nunity_cli tools group\n\n# 第二步：按组查看工具摘要\nunity_cli tools group list camera\n# 或搜索关键词（使用 | 分隔多关键词，OR 匹配；PowerShell必须单引号包住整段）\nunity_cli tools search 'screenshot|camera'\n\n# 第三步：查看工具完整描述（执行前必做）\nunity_cli tools describe camera.screenshot\n\n# 第四步：执行工具\nunity_cli tools run camera.screenshot --input '{\"target\":\"Main Camera\",\"output\":\"Artifacts/shot.png\"}'\n```\n\n### 3. 获取只读项目信息\n\n当前版本通过 `docs.get/search` 查询 Unity API 文档，通过 `reflect.*` 查询类型缓存；这些 Tool 仍从已连接实例的统一 catalog 发现和调用：\n\n```powershell\n# Unity API 文档\nunity_cli tools run docs.get UnityEngine.Camera\nunity_cli tools run docs.search \"Render Pipeline\"\n\n# 类型反射\nunity_cli tools run reflect.type UnityEngine.Camera\nunity_cli tools run reflect.member UnityEngine.Camera.fieldOfView\n```\n\n> **注意**：项目与 Editor 状态同样通过 `tools group/search/describe/run` 发现和读取；读取型 Tool 明确声明无副作用。\n\n### 4. 项目注册能力\n\nUnity 项目可通过异步 C# `IUnityCliTool<TReq,TRes>` 注册能力；完成编译后自动进入该实例的完整目录，与 package 内置和 Extension 能力使用同一路径：\n\n```powershell\n# 从当前实例目录发现真实 group\nunity_cli tools group --instance <id|projectPath|alias>\n\n# 描述并执行项目 Tool\nunity_cli tools describe my.custom-tool --instance <id|projectPath|alias>\nunity_cli tools run my.custom-tool --input '{\"key\":\"value\"}' --instance <id|projectPath|alias>\n```\n\n> **注意**：不要假设项目能力位于 `custom` 分组。可通过 `extensions list` 查看已安装扩展，`extensions install <id>` / `extensions remove <id>` 管理扩展，`extensions doctor` 诊断扩展状态。\n\n### 5. 使用command语法\n\n`command`按目标Tool的live `inputSchema`解析named、attached、boolean裸开关和声明顺序positional参数，然后进入与`tools run`相同的dispatcher和JSON envelope：\n\n```powershell\n# 列出当前实例可调用名称\nunity_cli command --project-path C:\\path\\MyProject\n\n# native Tool使用完整Tool名\nunity_cli command editor.compile --refresh true --includeWarnings true\n\n# [CliCommand(\"test\")]在tools中名为UnityPipeline_test，command可用attribute原名\nunity_cli command test --mode EditMode\nunity_cli command UnityPipeline_test --mode EditMode\n```\n\n命令名和业务字段exact匹配，不做snake_case、camelCase、相似名称或语义映射。native完整精确名优先；重名attribute仍通过`UnityPipeline_`完整名调用。\n\n`com.unity.pipeline` package自身的attribute命令已由native能力矩阵吸收，不进入live目录；项目和其他Package声明的`[CliCommand]`继续正常导入。本package首次检测到Pipeline时只执行一次`AutoStart=false`持久化和当前server停服，成功后不再覆盖用户后续手动操作。\n\n### 6. 诊断与健康检查\n\n```powershell\n# 运行完整诊断\nunity_cli doctor\n\n# 诊断预检（通过 Bridge）\nunity_cli tools run diagnose.preflight\n```\n\n## 安全边界\n\n| 规则 | 说明 |\n|------|------|\n| Tool 可有副作用 | 调用即授权；`destructiveHint`、`sideEffects` 与 `supportsDryRun` 仅描述风险和可选预览 |\n| 读取型 Tool 纯只读 | 读取型 Tool 不触发写入、import、compile、domain reload 或 PlayMode 变化 |\n| Extension 不能绕过 descriptor/envelope | 项目工具必须可描述、可审计、可阻断 |\n| 内部完整性不匹配默认阻止 | 自定义工具的 handler 代码与 descriptor 不一致时，默认阻止执行 |\n\n## 安装与构建\n\n```powershell\n# 全局安装\nnpm install -g @alpsckr/unity_cli\n\n# 本地开发\nnpm install\nnpm run build\nnpm test\nnpm link\n```\n\n## 输出格式\n\n所有命令输出统一 JSON envelope：\n\n```json\n{\n  \"ok\": true,\n  \"requestId\": \"req-xxx\",\n  \"data\": { ... }\n}\n```\n\n错误输出：\n\n```json\n{\n  \"ok\": false,\n  \"requestId\": \"req-xxx\",\n  \"error\": {\n    \"code\": \"E_INSTANCE_CONFLICT\",\n    \"message\": \"...\",\n    \"transient\": false,\n    \"nextActions\": [\"Close duplicate Editor sessions for the selected project.\"],\n    \"retryAfterMs\": 0\n  }\n}\n```\n\n## Live Editor 执行\n\n需要 Unity 执行的 Tool 只连接已打开的 Unity Editor，并在同一次 direct 调用中返回最终业务结果。`build.run`、`test.run`、`editor.refresh`、`code.exec` 以及需要 Editor 刷新的 Package Tool 都会等待终态；它们不创建可查询的后台任务。每个live Editor/Development Player session使用默认5/3任务池，CLI在业务请求前自动等待放行。`--timeout-ms T`分别提供最多`T`的准入等待与放行后最多`T`的执行预算；调用CLI的外层进程必须等待CLI退出，host预算至少为`2 * T + 5000`毫秒。准入`E_UNITY_BUSY`证明业务请求未发送；放行后的`E_EXECUTION_TIMEOUT`仍是outcome unknown。CLI在stdout写完或最多再等待1秒后退出。\n\n`code.exec`保留完整同步C#执行能力：它不会拒绝死循环、阻塞等待或长期占用Unity主线程的代码。提交这类代码前应先判断是否确有必要；一旦开始执行，timeout只能停止CLI等待，不能中止代码，结果可能未知且Unity可能需要结束进程才能恢复。CLI进程退出也不证明Unity中的C#已停止。完整边界见`tools describe code.exec`和`docs/safety-boundaries.md`。\n\n## 能力发现与执行\n\n公开能力不维护静态命令清单。Tool 的当前输入 schema、可用性、示例与调用边界以 CLI discovery 为准；结果 schema 留在内部 contract 中校验实际业务 data：\n\n```powershell\nunity_cli tools group\nunity_cli tools group list <group>\nunity_cli tools search <k1|k2|...>\nunity_cli tools describe <tool-name>\nunity_cli tools run <tool-name> --input '<json>' [--instance <id|projectPath|alias>]\n```\n\nTool discovery 必须绑定已连接实例；未连接时返回稳定 instance error，不返回静态或空目录。连接后完整显示 package 内置、Extension、项目注册、Editor 与 Runtime 能力，不按 `source` 或当前模式过滤。`source` 只作内部描述/审计。`examples[].input` 是结构化业务 JSON，按需 `examples[].execution` 承载 dryRun/timeoutMs；调用方明确要求的业务值优先于schema default和example值。业务参数全部放入 `--input`、`--input-file` 或 `--stdin`，命令控制项不混入业务 JSON。\n\nBridge-backed Tool在Unity主线程执行。CLI使用Registry/Health v3与只读内存pulse，在一个不可变deadline内处理compile、import、domain reload和listener generation交接。mutation只允许在同一`editorSessionId`内用完全相同的请求续接；首次POST后session改变时禁止向新session重投，并返回outcome unknown的`E_EXECUTION_TIMEOUT`。`unity_cli tools run editor.state --input '{}'`、`editor.dialogs`与`editor.dialog.click`使用exact frozen本地descriptor进入同一dispatcher，因此统一状态观察和弹窗恢复不依赖被阻断的Live catalog；其他Tool仍严格依赖Live catalog。\n\n### 实例与目标\n\n```powershell\n# 默认隐藏 offline，使用 --all 展开完整集合\nunity_cli instances list\nunity_cli instances list --all\nunity_cli instances prune\n```\n\n实例文件逐个按Registry v3校验。旧格式、损坏或不可读记录不会阻断其他合法实例，也不会被兼容解析或自动删除；存在时list/prune返回`invalidRecordCount`，`doctor`报告warn。显式选择对应坏记录仍严格失败。\n\n```powershell\n# target 只管理 canonical project identity 的别名\nunity_cli target alias set <projectPath|instanceId> <alias>\nunity_cli target alias unset <alias>\nunity_cli target alias list\n```\n\n实例与目标属于 CLI 控制面，只使用顶层 `instances` / `target`；不要通过 `tools run` 包装这些控制面状态。\n\n`doctor`、`instances`、`target alias` 和 `extensions` 属于 CLI 控制面。扩展源码以 `extensions/<id>/` 组织，安装后投影到 `Packages/com.unity_cli/Extensions/<id>/`；Extension 贡献的 Tool 仍通过统一 discovery 入口发现。\n\n## 初始化（init）\n\n`init` 安装捆绑的 `com.unity_cli` Bridge 包到目标 Unity 项目；如果项目根目录已经存在 `.pi`、`.claude` 或 `.agents`，会自动安装对应 AI Agent Skill。也可以用 `--agent` 显式指定目标。Skill 以 `SKILL.md`、`references/**`、`scripts/**` 完整 runtime bundle 安装，`--check` 校验全部 managed 文件；更新会保留已安装 `SKILL.md` 中合法的 `FeedbackMode: off|on`。\n\n| 标志 | 含义 |\n|------|------|\n| *(none)* | 安装/更新 Bridge 包（copy 模式），并为已存在的 Agent 目录安装 Skill |\n| `--pkg-only` | 仅安装 Bridge 包，不安装 Skill |\n| `--skill-only [--agent <agent>]` | 仅安装 Skill；未传 `--agent` 时使用已存在的 Agent 目录 |\n| `--check` | 检查安装状态，不修改项目 |\n| `--agent <pi\\|claude\\|.agents,...>` | 显式指定 Skill 安装目标 |\n\n```powershell\n# 默认安装 Bridge；若项目已有 .pi/.claude/.agents，则自动安装 Skill\nunity_cli init --project C:\\path\\MyProject\n\n# 仅 Bridge 包\nunity_cli init --project C:\\path\\MyProject --pkg-only\n\n# 显式安装 Skill 到 pi\nunity_cli init --project C:\\path\\MyProject --skill-only --agent pi\n\n# 检查安装状态；未传 --agent 时同样会检查已存在的 Agent 目录\nunity_cli init --check --project C:\\path\\MyProject\n```\n\n`FeedbackMode` 默认 `off`。改为 `on` 后，使用该 Skill 的 Agent 只在实际遇到失败、歧义、缺失、误导或成功绕过的坑点时，调用 bundle 内 recorder 写入 `%LOCALAPPDATA%\\UnityCli\\feedback\\` 的有界 JSONL；正常调用不记录，也不联网。\n\n## Unity Editor Bridge\n\n`init` 以 copy 模式把 `com.unity_cli` 安装到 `Packages/com.unity_cli/`。已打开的 Unity Editor 自动注册 canonical project identity 和 Live listener；CLI 通过 `instances list` 与 `--instance` 选择唯一会话，公开接口不接受 endpoint 或 port。\n\nBridge command、handler、journal、fingerprint、listener generation和completion contract都是内部实现，不构成第二套用户入口。mutation在首个真实effect前持久化effect barrier；effect后只有fresh business readback或artifact proof能完成。同一次调用只在`editorSessionId`不变时续接完全相同的请求；首次POST后session改变则禁止重投。无法证明终态时返回`E_EXECUTION_TIMEOUT`，调用方先观察业务状态，再作全新提交决策。\n\n当前能力、Extension 依赖和 Editor/PlayMode 可用性只通过 `tools` discovery 获取，不在 README 冻结能力名清单。\n\n## 项目自定义工具（Custom Tools）\n\nUnity 项目 C# 代码可通过异步 `IUnityCliTool<TReq,TRes>` 注册自定义能力。schema 由 DTO 派生；Tool 必须声明完整 direct completion contract，并在全部可预见校验后、首个 mutation 前调用一次 `ctx.CommitEffect()`。当前接口与完整示例见 [Custom Tools](skills/unity_cli/references/custom-tools.md)。\n\n```powershell\nunity_cli tools group --instance <id|projectPath|alias>\nunity_cli tools group list <real-group> --instance <id|projectPath|alias>\nunity_cli tools describe my.editor-tool --instance <id|projectPath|alias>\nunity_cli tools run my.editor-tool --input '{\"message\":\"hello\"}' --instance <id|projectPath|alias>\n```\n\n### 统一 Tool 与 target\n\n所有能力都以 Tool 呈现。`target: \"editor\" | \"runtime\" | \"both\"` 只是可用性与路由约束，不是两套用户入口。\n\n`runtime` 表示 Unity gameplay/runtime layer；具体 tool 是否需要 Play Mode，由 `availabilityScope` 和 `nextActions` 说明。\n\n### 安全机制\n\n- **Descriptor**：公开 describe 提供完整 inputSchema 与调用/风险信息；内部 metadata 保留 outputSchema 并校验业务结果\n- **Envelope**：所有输入输出必须通过统一 envelope 格式\n- **内部完整性校验**：handler 与 descriptor 不一致时默认阻止执行\n- **target-scoped availability**：工具可用性依赖目标实例和 Play Mode 状态\n- **禁止项**：不允许任意方法调用、反射 escape hatch、绕过 registry 直接执行\n\n## ProBuilder 扩展\n\nProBuilder 工具需要项目先安装精确版本 `com.unity.probuilder@5.2.4`，再安装 CLI 扩展目录；其他版本不执行基于 5.2.4 源码闭合的 mutation proof：\n\n```powershell\nunity_cli extensions install probuilder --project <project>\nunity_cli tools group list probuilder --instance <id|projectPath|alias>\nunity_cli tools describe probuilder.create-shape --instance <id|projectPath|alias>\nunity_cli tools run probuilder.create-shape --input '{\"shapeType\":\"Cube\",\"name\":\"MyCube\"}' --instance <id|projectPath|alias>\n```\n\n## 风险与副作用\n\n公开 Tool 与 CLI 控制面调用本身即授权。`destructiveHint`、`sideEffects` 和 `supportsDryRun` 让调用方了解效果与可选预览，但不会触发额外确认、预定义按钮列表或意图复核。支持 dry-run 的 Tool 可用 `--dry-run` 返回 `plannedEffects` 而不执行实际 mutation；不使用它不会阻止调用。\n\n## 扩展能力概览\n\n| 扩展类型 | 当前状态 | 发现方式 |\n|----------|---------|---------|\n| 项目自定义 Tool (`target=editor`) | ✅ 已实现 | 当前实例 `tools group/list/describe/run` |\n| 项目自定义 Tool (`target=runtime`) | ✅ 已实现 | 当前实例 `tools group/list/describe/run`；EditMode 仍显示，执行通常需 PlayMode |\n| 扩展包管理 | ✅ 已实现 | `extensions list/install/remove/doctor` |\n| ProBuilder 扩展 | ✅ 已实现 | `tools group/list/describe/run`（需要 `com.unity.probuilder@5.2.4` + `extensions install probuilder`） |\n| Cinemachine/VFX/URP/HDRP 扩展 | ✅ 已实现 | `tools group/list/describe/run`（需要对应 Unity package + `extensions install <id>`） |\n\n## 更多文档\n\n- [文档索引](docs/README.md) — 当前使用、扩展与诊断文档入口\n- [Target 与 Instance](docs/target-and-instance.md) — 目标选择与实例管理\n- [工具发现](docs/tool-discovery.md) — group-first 分层发现详解\n- [工具执行](docs/tool-execution.md) — tools run 执行通道详解\n- [安全边界](docs/safety-boundaries.md) — 调用授权、风险元数据与正确性边界\n- [风险与副作用](docs/risk-and-side-effects.md) — destructive/dry-run 描述与可选预览\n- [错误码](docs/error-codes.md) — 结构化错误与 nextActions\n- [可用性差异](docs/availability-differences.md) — 不同实例的工具有效性\n- [扩展包](docs/extensions.md) — 可选扩展安装、卸载与诊断\n- [自定义 Tool](skills/unity_cli/references/custom-tools.md) — 项目侧 Tool 注册开发\n- [AI Agent Skill](skills/unity_cli/SKILL.md) — Agent 最小入口卡片\n\n## 本地开发\n\n```bash\nnpm install\nnpm run build\nnpm test\nnpm link\nunity_cli --help\n```\n\n## 许可证\n\nMIT\n","readmeFilename":"README.md"}