node-autoit-koffi
Advanced tools
+13
| # AGENTS.md | ||
| PROJECT RULES AND CONVENTIONS | ||
| PACKAGE MANAGEMENT | ||
| - This project uses Bun as the package manager instead of npm or yarn | ||
| - Use `bun install` to install dependencies | ||
| - Use `bun add <package>` to add new dependencies | ||
| - Use `bun add -d <package>` to add dev dependencies | ||
| - Use `bun remove <package>` to remove dependencies | ||
| - Use `bun run <script>` to run scripts defined in package.json | ||
| - Do NOT use npm or yarn commands in this project | ||
+34
| { | ||
| "$schema": "https://biomejs.dev/schemas/2.3.11/schema.json", | ||
| "vcs": { | ||
| "enabled": true, | ||
| "clientKind": "git", | ||
| "useIgnoreFile": true | ||
| }, | ||
| "files": { | ||
| "ignoreUnknown": false, | ||
| "includes": ["src/**"] | ||
| }, | ||
| "formatter": { | ||
| "enabled": true, | ||
| "indentStyle": "space", | ||
| "indentWidth": 2, | ||
| "lineWidth": 100 | ||
| }, | ||
| "linter": { | ||
| "enabled": true, | ||
| "rules": { | ||
| "recommended": true, | ||
| "suspicious": { | ||
| "noExplicitAny": "off" | ||
| } | ||
| } | ||
| }, | ||
| "javascript": { | ||
| "formatter": { | ||
| "quoteStyle": "single", | ||
| "semicolons": "always", | ||
| "trailingCommas": "all" | ||
| } | ||
| } | ||
| } |
+137
| { | ||
| "lockfileVersion": 1, | ||
| "configVersion": 1, | ||
| "workspaces": { | ||
| "": { | ||
| "name": "node-autoit-koffi", | ||
| "dependencies": { | ||
| "iconv-lite": "^0.6.3", | ||
| "koffi": "^2.8.0", | ||
| "lodash": "^4.17.21", | ||
| }, | ||
| "devDependencies": { | ||
| "@biomejs/biome": "2.3.11", | ||
| "@types/node": "^20.11.19", | ||
| "rimraf": "^5.0.5", | ||
| "typescript": "^5.3.3", | ||
| }, | ||
| }, | ||
| }, | ||
| "packages": { | ||
| "@biomejs/biome": ["@biomejs/biome@2.3.11", "", { "optionalDependencies": { "@biomejs/cli-darwin-arm64": "2.3.11", "@biomejs/cli-darwin-x64": "2.3.11", "@biomejs/cli-linux-arm64": "2.3.11", "@biomejs/cli-linux-arm64-musl": "2.3.11", "@biomejs/cli-linux-x64": "2.3.11", "@biomejs/cli-linux-x64-musl": "2.3.11", "@biomejs/cli-win32-arm64": "2.3.11", "@biomejs/cli-win32-x64": "2.3.11" }, "bin": { "biome": "bin/biome" } }, "sha512-/zt+6qazBWguPG6+eWmiELqO+9jRsMZ/DBU3lfuU2ngtIQYzymocHhKiZRyrbra4aCOoyTg/BmY+6WH5mv9xmQ=="], | ||
| "@biomejs/cli-darwin-arm64": ["@biomejs/cli-darwin-arm64@2.3.11", "", { "os": "darwin", "cpu": "arm64" }, "sha512-/uXXkBcPKVQY7rc9Ys2CrlirBJYbpESEDme7RKiBD6MmqR2w3j0+ZZXRIL2xiaNPsIMMNhP1YnA+jRRxoOAFrA=="], | ||
| "@biomejs/cli-darwin-x64": ["@biomejs/cli-darwin-x64@2.3.11", "", { "os": "darwin", "cpu": "x64" }, "sha512-fh7nnvbweDPm2xEmFjfmq7zSUiox88plgdHF9OIW4i99WnXrAC3o2P3ag9judoUMv8FCSUnlwJCM1B64nO5Fbg=="], | ||
| "@biomejs/cli-linux-arm64": ["@biomejs/cli-linux-arm64@2.3.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-l4xkGa9E7Uc0/05qU2lMYfN1H+fzzkHgaJoy98wO+b/7Gl78srbCRRgwYSW+BTLixTBrM6Ede5NSBwt7rd/i6g=="], | ||
| "@biomejs/cli-linux-arm64-musl": ["@biomejs/cli-linux-arm64-musl@2.3.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-XPSQ+XIPZMLaZ6zveQdwNjbX+QdROEd1zPgMwD47zvHV+tCGB88VH+aynyGxAHdzL+Tm/+DtKST5SECs4iwCLg=="], | ||
| "@biomejs/cli-linux-x64": ["@biomejs/cli-linux-x64@2.3.11", "", { "os": "linux", "cpu": "x64" }, "sha512-/1s9V/H3cSe0r0Mv/Z8JryF5x9ywRxywomqZVLHAoa/uN0eY7F8gEngWKNS5vbbN/BsfpCG5yeBT5ENh50Frxg=="], | ||
| "@biomejs/cli-linux-x64-musl": ["@biomejs/cli-linux-x64-musl@2.3.11", "", { "os": "linux", "cpu": "x64" }, "sha512-vU7a8wLs5C9yJ4CB8a44r12aXYb8yYgBn+WeyzbMjaCMklzCv1oXr8x+VEyWodgJt9bDmhiaW/I0RHbn7rsNmw=="], | ||
| "@biomejs/cli-win32-arm64": ["@biomejs/cli-win32-arm64@2.3.11", "", { "os": "win32", "cpu": "arm64" }, "sha512-PZQ6ElCOnkYapSsysiTy0+fYX+agXPlWugh6+eQ6uPKI3vKAqNp6TnMhoM3oY2NltSB89hz59o8xIfOdyhi9Iw=="], | ||
| "@biomejs/cli-win32-x64": ["@biomejs/cli-win32-x64@2.3.11", "", { "os": "win32", "cpu": "x64" }, "sha512-43VrG813EW+b5+YbDbz31uUsheX+qFKCpXeY9kfdAx+ww3naKxeVkTD9zLIWxUPfJquANMHrmW3wbe/037G0Qg=="], | ||
| "@isaacs/cliui": ["@isaacs/cliui@8.0.2", "", { "dependencies": { "string-width": "^5.1.2", "string-width-cjs": "npm:string-width@^4.2.0", "strip-ansi": "^7.0.1", "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", "wrap-ansi": "^8.1.0", "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" } }, "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA=="], | ||
| "@pkgjs/parseargs": ["@pkgjs/parseargs@0.11.0", "", {}, "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg=="], | ||
| "@types/node": ["@types/node@20.19.30", "", { "dependencies": { "undici-types": "~6.21.0" } }, "sha512-WJtwWJu7UdlvzEAUm484QNg5eAoq5QR08KDNx7g45Usrs2NtOPiX8ugDqmKdXkyL03rBqU5dYNYVQetEpBHq2g=="], | ||
| "ansi-regex": ["ansi-regex@6.2.2", "", {}, "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg=="], | ||
| "ansi-styles": ["ansi-styles@6.2.3", "", {}, "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg=="], | ||
| "balanced-match": ["balanced-match@1.0.2", "", {}, "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="], | ||
| "brace-expansion": ["brace-expansion@2.0.2", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ=="], | ||
| "color-convert": ["color-convert@2.0.1", "", { "dependencies": { "color-name": "~1.1.4" } }, "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="], | ||
| "color-name": ["color-name@1.1.4", "", {}, "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="], | ||
| "cross-spawn": ["cross-spawn@7.0.6", "", { "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", "which": "^2.0.1" } }, "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA=="], | ||
| "eastasianwidth": ["eastasianwidth@0.2.0", "", {}, "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA=="], | ||
| "emoji-regex": ["emoji-regex@9.2.2", "", {}, "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg=="], | ||
| "foreground-child": ["foreground-child@3.3.1", "", { "dependencies": { "cross-spawn": "^7.0.6", "signal-exit": "^4.0.1" } }, "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw=="], | ||
| "glob": ["glob@10.5.0", "", { "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", "minimatch": "^9.0.4", "minipass": "^7.1.2", "package-json-from-dist": "^1.0.0", "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" } }, "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg=="], | ||
| "iconv-lite": ["iconv-lite@0.6.3", "", { "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" } }, "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw=="], | ||
| "is-fullwidth-code-point": ["is-fullwidth-code-point@3.0.0", "", {}, "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="], | ||
| "isexe": ["isexe@2.0.0", "", {}, "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="], | ||
| "jackspeak": ["jackspeak@3.4.3", "", { "dependencies": { "@isaacs/cliui": "^8.0.2" }, "optionalDependencies": { "@pkgjs/parseargs": "^0.11.0" } }, "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw=="], | ||
| "koffi": ["koffi@2.15.0", "", {}, "sha512-174BTuWK7L42Om7nDWy9YOTXj6Dkm14veuFf5yhVS5VU6GjtOI1Wjf+K16Z0JvSuZ3/NpkVzFBjE1oKbthTIEA=="], | ||
| "lodash": ["lodash@4.17.21", "", {}, "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="], | ||
| "lru-cache": ["lru-cache@10.4.3", "", {}, "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="], | ||
| "minimatch": ["minimatch@9.0.5", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="], | ||
| "minipass": ["minipass@7.1.2", "", {}, "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="], | ||
| "package-json-from-dist": ["package-json-from-dist@1.0.1", "", {}, "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw=="], | ||
| "path-key": ["path-key@3.1.1", "", {}, "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="], | ||
| "path-scurry": ["path-scurry@1.11.1", "", { "dependencies": { "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" } }, "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA=="], | ||
| "rimraf": ["rimraf@5.0.10", "", { "dependencies": { "glob": "^10.3.7" }, "bin": { "rimraf": "dist/esm/bin.mjs" } }, "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ=="], | ||
| "safer-buffer": ["safer-buffer@2.1.2", "", {}, "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="], | ||
| "shebang-command": ["shebang-command@2.0.0", "", { "dependencies": { "shebang-regex": "^3.0.0" } }, "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA=="], | ||
| "shebang-regex": ["shebang-regex@3.0.0", "", {}, "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="], | ||
| "signal-exit": ["signal-exit@4.1.0", "", {}, "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw=="], | ||
| "string-width": ["string-width@5.1.2", "", { "dependencies": { "eastasianwidth": "^0.2.0", "emoji-regex": "^9.2.2", "strip-ansi": "^7.0.1" } }, "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA=="], | ||
| "string-width-cjs": ["string-width@4.2.3", "", { "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" } }, "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g=="], | ||
| "strip-ansi": ["strip-ansi@7.1.2", "", { "dependencies": { "ansi-regex": "^6.0.1" } }, "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA=="], | ||
| "strip-ansi-cjs": ["strip-ansi@6.0.1", "", { "dependencies": { "ansi-regex": "^5.0.1" } }, "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A=="], | ||
| "typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="], | ||
| "undici-types": ["undici-types@6.21.0", "", {}, "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ=="], | ||
| "which": ["which@2.0.2", "", { "dependencies": { "isexe": "^2.0.0" }, "bin": { "node-which": "./bin/node-which" } }, "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA=="], | ||
| "wrap-ansi": ["wrap-ansi@8.1.0", "", { "dependencies": { "ansi-styles": "^6.1.0", "string-width": "^5.0.1", "strip-ansi": "^7.0.1" } }, "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ=="], | ||
| "wrap-ansi-cjs": ["wrap-ansi@7.0.0", "", { "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" } }, "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q=="], | ||
| "string-width-cjs/emoji-regex": ["emoji-regex@8.0.0", "", {}, "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="], | ||
| "string-width-cjs/strip-ansi": ["strip-ansi@6.0.1", "", { "dependencies": { "ansi-regex": "^5.0.1" } }, "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A=="], | ||
| "strip-ansi-cjs/ansi-regex": ["ansi-regex@5.0.1", "", {}, "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="], | ||
| "wrap-ansi-cjs/ansi-styles": ["ansi-styles@4.3.0", "", { "dependencies": { "color-convert": "^2.0.1" } }, "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="], | ||
| "wrap-ansi-cjs/string-width": ["string-width@4.2.3", "", { "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" } }, "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g=="], | ||
| "wrap-ansi-cjs/strip-ansi": ["strip-ansi@6.0.1", "", { "dependencies": { "ansi-regex": "^5.0.1" } }, "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A=="], | ||
| "string-width-cjs/strip-ansi/ansi-regex": ["ansi-regex@5.0.1", "", {}, "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="], | ||
| "wrap-ansi-cjs/string-width/emoji-regex": ["emoji-regex@8.0.0", "", {}, "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="], | ||
| "wrap-ansi-cjs/strip-ansi/ansi-regex": ["ansi-regex@5.0.1", "", {}, "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="], | ||
| } | ||
| } |
+118
| # CLAUDE.md | ||
| This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. | ||
| ## Development Commands | ||
| ```bash | ||
| # Build (clean dist/ and compile TypeScript) | ||
| yarn build | ||
| # Build and run | ||
| yarn start | ||
| # Run tests (Node.js built-in test runner) | ||
| node examples/index.test.js | ||
| # Generate TypeScript bindings from AutoIt function definitions | ||
| node tools/generate_code.js | ||
| ``` | ||
| **Note:** No linting scripts are configured. Prettier is installed but has no format script. | ||
| ## Architecture Overview | ||
| This is a **Node.js FFI wrapper for AutoIt's Windows automation library** using Koffi. It enables Windows GUI automation (mouse, keyboard, windows) from JavaScript/TypeScript. | ||
| **Data Flow:** | ||
| ``` | ||
| User Code → src/index.ts (Promise-wrapped exports) → Koffi FFI → AutoItX3 DLL → Windows API | ||
| ``` | ||
| **Key Components:** | ||
| - **src/index.ts** - Main entry point with 100+ exported AutoIt functions (mostly generated code) | ||
| - **src/util.ts** - DLL path selection (32/64-bit) and wide-string conversion | ||
| - **src/wchar.js** - UTF-16 string handling for Windows (adapted from ref-wchar, MIT) | ||
| - **tools/generate_code.js** - Code generator that creates TypeScript bindings from function definitions | ||
| - **dlls/** - Native AutoItX3 DLLs (32-bit and 64-bit versions) | ||
| **Critical Dependencies:** | ||
| - `koffi` - FFI library for native DLL calls | ||
| - `iconv-lite` - UTF-16 ↔ UTF-8 conversion | ||
| - `ref-napi` - Buffer/pointer manipulation | ||
| ## Project-Specific Patterns | ||
| ### Generated Code - Do Not Edit Directly | ||
| Most of `src/index.ts` is **generated** by `tools/generate_code.js`. Look for the `// Generated code:` comment. To add or modify AutoIt function bindings: | ||
| 1. Edit the `autoitFunctions` object in `tools/generate_code.js` | ||
| 2. Run `node tools/generate_code.js` | ||
| 3. Rebuild with `yarn build` | ||
| ### Lazy Function Loading Pattern | ||
| All FFI functions use lazy loading - bindings are created on first call and cached in the `fn` object: | ||
| ```typescript | ||
| if (!fn.hasOwnProperty("functionName")) { | ||
| fn["functionName"] = lib.func("AU3_FunctionName", "returnType", ["paramTypes"]); | ||
| } | ||
| ``` | ||
| ### Buffer Auto-Expansion for Strings | ||
| Functions returning strings (like `clipGet`) recursively double buffer size if content is truncated: | ||
| ```typescript | ||
| if (content.length === nBufSize - 1) { | ||
| resolve(clipGet(nBufSize * 2)); // Recursive doubling | ||
| } | ||
| ``` | ||
| ### Dual API Pattern | ||
| Most functions have two versions: | ||
| - String-based: `winActivate(szTitle, szText)` - searches for window | ||
| - Handle-based: `winActivateByHandle(hWnd)` - direct, more efficient | ||
| ### Magic Constants | ||
| - `AU3_INTDEFAULT = -2147483647` - indicates "use default value" for optional parameters | ||
| - Example: `mouseClick("LEFT", AU3_INTDEFAULT, AU3_INTDEFAULT)` clicks at current position | ||
| ### Wide Character Handling | ||
| Windows uses UTF-16LE. All string parameters use Koffi's `"string16"` type. Buffer allocations multiply by `wchar.size` (2 bytes). | ||
| ### Output Parameters | ||
| Structs like Point/Rect are passed as output parameters using Koffi's `_Out_` prefix: | ||
| ```typescript | ||
| fn["mouseGetPos"] = lib.func("AU3_MouseGetPos", "void", ["_Out_ LPPOINT*"]); | ||
| ``` | ||
| ## Critical Requirements | ||
| 1. **Windows Only** - Requires AutoItX DLL, no cross-platform support | ||
| 2. **Must Call `init()` First** - Always `await autoit.init()` before using any functions | ||
| 3. **All Functions Are Async** - Every function returns a Promise | ||
| 4. **Architecture-Aware** - Automatically selects 32-bit or 64-bit DLL based on `os.arch()` | ||
| ## Types | ||
| ```typescript | ||
| type Point = { x: number; y: number }; | ||
| type Rect = { left: number; top: number; right: number; bottom: number }; | ||
| ``` | ||
| ## Error Handling | ||
| - Functions don't validate parameters; rely on AutoIt DLL error codes | ||
| - Errors surface as Promise rejections | ||
| - Use `error()` function to get last AutoIt error code | ||
| ## External Documentation | ||
| Function behavior and parameters: [AutoIt Documentation](https://www.autoitscript.com/autoit3/docs/functions/) | ||
| Function naming: `AU3_MouseMove` → `mouseMove` (camelCase conversion) | ||
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} |
+1
-2
@@ -1,4 +0,3 @@ | ||
| /// <reference types="node" /> | ||
| export declare const getDll: () => string | null; | ||
| export declare const getWString: (buf: Buffer) => any; | ||
| export declare const getWString: (buf: Buffer) => string; | ||
| //# sourceMappingURL=util.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":";AAIA,eAAO,MAAM,MAAM,qBAWlB,CAAC;AAEF,eAAO,MAAM,UAAU,QAAS,MAAM,QAKrC,CAAC"} | ||
| {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,MAAM,qBAWlB,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,WAKrC,CAAC"} |
+24
-14
@@ -18,9 +18,19 @@ "use strict"; | ||
| }); | ||
| var __importStar = (this && this.__importStar) || function (mod) { | ||
| if (mod && mod.__esModule) return mod; | ||
| var result = {}; | ||
| if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); | ||
| __setModuleDefault(result, mod); | ||
| return result; | ||
| }; | ||
| var __importStar = (this && this.__importStar) || (function () { | ||
| var ownKeys = function(o) { | ||
| ownKeys = Object.getOwnPropertyNames || function (o) { | ||
| var ar = []; | ||
| for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; | ||
| return ar; | ||
| }; | ||
| return ownKeys(o); | ||
| }; | ||
| return function (mod) { | ||
| if (mod && mod.__esModule) return mod; | ||
| var result = {}; | ||
| if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); | ||
| __setModuleDefault(result, mod); | ||
| return result; | ||
| }; | ||
| })(); | ||
| var __importDefault = (this && this.__importDefault) || function (mod) { | ||
@@ -31,12 +41,12 @@ return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
| exports.getWString = exports.getDll = void 0; | ||
| const os = __importStar(require("os")); | ||
| const node_path_1 = __importDefault(require("node:path")); | ||
| const os = __importStar(require("node:os")); | ||
| const wchar_1 = __importDefault(require("./wchar")); | ||
| const getDll = () => { | ||
| const libDir = node_path_1.default.join(__dirname, "../dlls"); | ||
| const libDir = node_path_1.default.join(__dirname, '../dlls'); | ||
| switch (os.arch()) { | ||
| case "ia32": | ||
| return node_path_1.default.join(libDir, "AutoItX3.dll"); | ||
| case "x64": | ||
| return node_path_1.default.join(libDir, "AutoItX3_x64.dll"); | ||
| case 'ia32': | ||
| return node_path_1.default.join(libDir, 'AutoItX3.dll'); | ||
| case 'x64': | ||
| return node_path_1.default.join(libDir, 'AutoItX3_x64.dll'); | ||
| } | ||
@@ -48,3 +58,3 @@ return null; | ||
| for (let i = 0; i < buf.length; i += wchar_1.default.size) { | ||
| if (buf[i] == 0 && buf[i + 1] == 0) | ||
| if (buf[i] === 0 && buf[i + 1] === 0) | ||
| return wchar_1.default.toString(buf.slice(0, i)); | ||
@@ -51,0 +61,0 @@ } |
+9
-10
@@ -1,16 +0,15 @@ | ||
| declare const _exports: any; | ||
| export = _exports; | ||
| export const name: "wchar_t"; | ||
| export const indirection: 1; | ||
| export function get(buf: any, offset: any): any; | ||
| export function set(buf: any, offset: any, val: any): any; | ||
| export const string: any; | ||
| export function toString(buffer: Buffer): string; | ||
| /** | ||
| * On Windows they're UTF-16 (2-bytes), | ||
| * but on Unix platform they're UTF-32 (4-bytes). | ||
| */ | ||
| export var size: number; | ||
| /** | ||
| * Turns a `wchar_t *` Buffer instance into a JavaScript String instance. | ||
| * | ||
| * TODO: add a way to optionally enable `-fshort-wchar` for Unix (gcc option). | ||
| * @param {Buffer} buffer - buffer instance to serialize | ||
| * @returns {string} - decoded string | ||
| * @public | ||
| */ | ||
| export var size: any; | ||
| declare function wcharToString(buffer: Buffer): string; | ||
| export { wcharToString as toString }; | ||
| //# sourceMappingURL=wchar.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"wchar.d.ts","sourceRoot":"","sources":["../src/wchar.js"],"names":[],"mappings":";;;;AAkDc,gDAMb;AACa,0DAYb;;AAoCkB,iCAJR,MAAM,UAOhB;AArFD;;;;;GAKG;AAEH,qBAAS"} | ||
| {"version":3,"file":"wchar.d.ts","sourceRoot":"","sources":["../src/wchar.js"],"names":[],"mappings":"AAiBA;;;GAGG;AACH,wBAAgD;AAYhD;;;;;;GAMG;AACH,uCAJW,MAAM,GACJ,MAAM,CAKlB"} |
+12
-69
| "use strict"; | ||
| /* | ||
| This code is from ref-wchar by nathan | ||
| This code is based on ref-wchar by Nathan Rajlich | ||
@@ -16,7 +16,2 @@ License | ||
| */ | ||
| /** | ||
| * Module dependencies. | ||
| */ | ||
| var ref = require('ref-napi'); | ||
| //var Iconv = require('iconv').Iconv; | ||
| var iconv = require('iconv-lite'); | ||
@@ -26,68 +21,12 @@ /** | ||
| * but on Unix platform they're UTF-32 (4-bytes). | ||
| * | ||
| * TODO: add a way to optionally enable `-fshort-wchar` for Unix (gcc option). | ||
| */ | ||
| var size; | ||
| if ('win32' == process.platform) { | ||
| size = 2; | ||
| } | ||
| else { | ||
| size = 4; | ||
| } | ||
| var wchar_encoding = ('utf-' + (8 * size) + ref.endianness).toLowerCase(); | ||
| //var getter = new Iconv('UTF-' + (8 * size) + ref.endianness, 'UTF-8'); | ||
| //var setter = new Iconv('UTF-8', 'UTF-' + (8 * size) + ref.endianness); | ||
| var size = process.platform === 'win32' ? 2 : 4; | ||
| /** | ||
| * The `wchar_t` type. | ||
| * Detect system endianness using TypedArray | ||
| */ | ||
| exports = module.exports = Object.create(ref.types['int' + (8 * size)]); | ||
| exports.name = 'wchar_t'; | ||
| exports.size = size; | ||
| exports.indirection = 1; | ||
| exports.get = function get(buf, offset) { | ||
| if (offset > 0 || buf.length !== exports.size) { | ||
| offset = offset | 0; | ||
| buf = buf.slice(offset, offset + size); | ||
| } | ||
| return exports.toString(buf); | ||
| }; | ||
| exports.set = function set(buf, offset, val) { | ||
| var _buf = val; // assume val is a Buffer by default | ||
| if (typeof val === 'string') { | ||
| //_buf = setter.convert(val[0]); | ||
| _buf = iconv.encode(val[0], wchar_encoding); | ||
| } | ||
| else if (typeof val === 'number') { | ||
| //_buf = setter.convert(String.fromCharCode(val)); | ||
| _buf = iconv.encode(String.fromCharCode(val), wchar_encoding); | ||
| } | ||
| else if (!_buf) { | ||
| throw new TypeError('muss pass a String, Number, or Buffer for `wchar_t`'); | ||
| } | ||
| return _buf.copy(buf, offset, 0, size); | ||
| }; | ||
| var endianness = (new Uint16Array(new Uint8Array([0x12, 0x34]).buffer))[0] === 0x3412 ? 'le' : 'be'; | ||
| /** | ||
| * The "wchar_t *" type. | ||
| * | ||
| * We use the "CString" type as a base since it's pretty close to what we | ||
| * actually want. We just have to define custom "get" and "set" functions. | ||
| * Encoding string for iconv-lite (e.g., 'utf-16le' or 'utf-32le') | ||
| */ | ||
| exports.string = Object.create(ref.types.CString); | ||
| exports.string.name = 'WCString'; | ||
| exports.string.get = function get(buf, offset) { | ||
| var _buf = buf.readPointer(offset); | ||
| if (_buf.isNull()) { | ||
| return null; | ||
| } | ||
| var stringBuf = _buf.reinterpretUntilZeros(exports.size); | ||
| return exports.toString(stringBuf); | ||
| }; | ||
| exports.string.set = function set(buf, offset, val) { | ||
| var _buf = val; // val is a Buffer? it better be \0 terminated... | ||
| if ('string' == typeof val) { | ||
| //_buf = setter.convert(val + '\0'); | ||
| _buf = iconv.encode(val + '\0', wchar_encoding); | ||
| } | ||
| return buf.writePointer(_buf, offset); | ||
| }; | ||
| var wchar_encoding = `utf-${8 * size}${endianness}`; | ||
| /** | ||
@@ -97,7 +36,11 @@ * Turns a `wchar_t *` Buffer instance into a JavaScript String instance. | ||
| * @param {Buffer} buffer - buffer instance to serialize | ||
| * @returns {string} - decoded string | ||
| * @public | ||
| */ | ||
| exports.toString = function toString(buffer) { | ||
| //return getter.convert(buffer).toString('utf8'); | ||
| function wcharToString(buffer) { | ||
| return iconv.decode(buffer, wchar_encoding); | ||
| } | ||
| module.exports = { | ||
| size: size, | ||
| toString: wcharToString | ||
| }; |
@@ -0,0 +0,0 @@ const test = require("node:test"); |
+10
-5
| { | ||
| "name": "node-autoit-koffi", | ||
| "version": "1.0.5", | ||
| "version": "1.0.7", | ||
| "description": "This Node.js module provides support for all AutoIt functions, allowing users to automate Windows GUI tasks seamlessly.", | ||
@@ -10,3 +10,9 @@ "main": "dist/index.js", | ||
| "build": "rimraf dist && tsc", | ||
| "start": "npm run build && node dist/index.js" | ||
| "start": "bun run build && node dist/index.js", | ||
| "lint": "biome lint", | ||
| "lint:fix": "biome lint --write", | ||
| "format": "biome format --write", | ||
| "check": "biome check --write", | ||
| "prepublishOnly": "bun run build", | ||
| "publish:patch": "npm version patch --no-git-tag-version && npm publish --access public" | ||
| }, | ||
@@ -16,8 +22,7 @@ "dependencies": { | ||
| "koffi": "^2.8.0", | ||
| "lodash": "^4.17.21", | ||
| "ref-napi": "^3.0.3" | ||
| "lodash": "^4.17.21" | ||
| }, | ||
| "devDependencies": { | ||
| "@biomejs/biome": "2.3.11", | ||
| "@types/node": "^20.11.19", | ||
| "prettier": "^3.2.5", | ||
| "rimraf": "^5.0.5", | ||
@@ -24,0 +29,0 @@ "typescript": "^5.3.3" |
+1
-1
@@ -27,3 +27,3 @@ # Node AutoIt Koffi | ||
| main().catch(console.error); | ||
| void main(); | ||
| ``` | ||
@@ -30,0 +30,0 @@ |
Sorry, the diff of this file is too big to display
1132659
1.58%3
-25%19
26.67%2324
-3.53%- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed