{"_id":"@aitherium/awsh","_rev":"7-a2c951dd934c7a9180bcdbcaa6076413","name":"@aitherium/awsh","dist-tags":{"latest":"1.18.10"},"versions":{"1.18.3":{"name":"@aitherium/awsh","version":"1.18.3","license":"BUSL-1.1","_id":"@aitherium/awsh@1.18.3","maintainers":[{"name":"wzns","email":"david@aitherium.com"}],"homepage":"https://aitherium.github.io/awsh/","bugs":{"url":"https://github.com/Aitherium/AitherOS/issues"},"bin":{"awsh":"dist/main.js","aither":"dist/main.js","aither-shell":"dist/main.js"},"dist":{"shasum":"c50d3997b659b63c4f07a6185d94c10a59a8b43e","tarball":"https://registry.npmjs.org/@aitherium/awsh/-/awsh-1.18.3.tgz","fileCount":152,"integrity":"sha512-eoqjjBDXTu1ZJ3CuU0AtpV931GRrcPchbfhXvHdM+ZLQyVjdMs3e/0K/eglgNQwNNbF8tCkDykCbvhDV/rxEDg==","signatures":[{"sig":"MEUCIQCJBw8hmMikGP5fMWkphEAqCdNX51ffI3AUHv5ZyCrGVwIgTgr7y3TrNp4fGsTMSmWIRYgeYaXPFDiRAl1dLmCcH6o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1795671},"type":"module","engines":{"node":">=18.0.0"},"scripts":{"dev":"tsx src/main.ts","test":"node --import tsx --test \"test/**/*.test.ts\"","build":"node scripts/sync-version.mjs --check && tsc","start":"node dist/main.js","test:tui":"node --import tsx --test test/timeline.test.ts test/controller.test.ts test/wide-chars.test.ts test/verdict-model.test.ts","tui:replay":"tsx scripts/tui-replay.ts","sync-version":"node scripts/sync-version.mjs","version:check":"node scripts/sync-version.mjs --check","build:standalone":"bun build --compile src/main.ts --outfile dist/aither-shell"},"_npmUser":{"name":"wzns","email":"david@aitherium.com"},"repository":{"url":"git+https://github.com/Aitherium/AitherOS.git","type":"git","directory":".PRODUCTS/.AITHERSHELL/cli"},"_npmVersion":"11.9.0","description":"awsh - your terminal answers you. Type a question where a command would go, and get an answer instead of \"command not found\".","directories":{},"_nodeVersion":"25.2.1","dependencies":{"ora":"^8.2.0","chalk":"^5.4.0","marked":"^15.0.0","neo-blessed":"^0.2.0","marked-terminal":"^7.3.0","@inquirer/prompts":"^8.3.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.8.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/awsh_1.18.3_1787500600956_0.6537292759331823","host":"s3://npm-registry-packages-npm-production"}},"1.18.4":{"name":"@aitherium/awsh","version":"1.18.4","license":"BUSL-1.1","_id":"@aitherium/awsh@1.18.4","maintainers":[{"name":"wzns","email":"david@aitherium.com"}],"homepage":"https://aitherium.github.io/awsh/","bugs":{"url":"https://github.com/Aitherium/awsh/issues"},"bin":{"awsh":"dist/main.js","aither":"dist/main.js","aither-shell":"dist/main.js"},"dist":{"shasum":"0660507bff2351127bdbb02fe0355f2167e07bda","tarball":"https://registry.npmjs.org/@aitherium/awsh/-/awsh-1.18.4.tgz","fileCount":156,"integrity":"sha512-GJnbPm3VjJ7lvyldd3p1o/DQ2lNY6BeV3/GHRZXovwr+PqYu3TJFzTDrrifIe0vMwAl8VDtVUmSQZV6wH2Vbxw==","signatures":[{"sig":"MEUCIQCtaUoiEvU1fQVlhmBy4w48RvvOdF1gg6XAmyAWxXBFXgIgEjW5PcPhBZRyxucrIObrTI+5/WXKsMIn2ZWppXKqOfM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aitherium%2fawsh@1.18.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1840826},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"1f0795cc1cdbe3dbc0b9b291f7e39ffc39117ae5","scripts":{"dev":"tsx src/main.ts","test":"node --import tsx --test \"test/**/*.test.ts\"","build":"node scripts/sync-version.mjs --check && tsc","start":"node dist/main.js","test:tui":"node --import tsx --test test/timeline.test.ts test/controller.test.ts test/wide-chars.test.ts test/verdict-model.test.ts","tui:replay":"tsx scripts/tui-replay.ts","sync-version":"node scripts/sync-version.mjs","version:check":"node scripts/sync-version.mjs --check","build:standalone":"bun build --compile src/main.ts --outfile dist/aither-shell"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d3044546-cde6-4abb-b358-6f39b480696e"}},"repository":{"url":"git+https://github.com/Aitherium/awsh.git","type":"git"},"_npmVersion":"12.0.2","description":"awsh - your terminal answers you. Type a question where a command would go, and get an answer instead of \"command not found\".","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ora":"^8.2.0","chalk":"^5.4.0","marked":"^15.0.0","neo-blessed":"^0.2.0","marked-terminal":"^7.3.0","@inquirer/prompts":"^8.3.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.8.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/awsh_1.18.4_1787631461799_0.10466378134647703","host":"s3://npm-registry-packages-npm-production"}},"1.18.5":{"name":"@aitherium/awsh","version":"1.18.5","keywords":["awsh","awshell","aitherium","agent","shell","cli","omnibox"],"license":"BUSL-1.1","_id":"@aitherium/awsh@1.18.5","maintainers":[{"name":"wzns","email":"david@aitherium.com"}],"homepage":"https://aitherium.github.io/awsh/","bugs":{"url":"https://github.com/Aitherium/awsh/issues"},"bin":{"awsh":"dist/main.js","aither":"dist/main.js","aither-shell":"dist/main.js"},"dist":{"shasum":"bf2218bbe19b33646064c7fb52a8afef5d77dd0c","tarball":"https://registry.npmjs.org/@aitherium/awsh/-/awsh-1.18.5.tgz","fileCount":158,"integrity":"sha512-1hYVoWRKU04n2kojWFG8qYsUM61QtuBblAvEshD5k2+wgboe9/1+wWOOgVHUp/zWz1I1AnMqVHFjmDhsB8C5bw==","signatures":[{"sig":"MEYCIQCDuENfLNg9Wimkk5j1+x7+Ge3z6XPbLlP89mxrb4nP4gIhAMACbDm9gez57M2cuQ7U+mBne3Mz92xAK80E/rFqClh7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aitherium%2fawsh@1.18.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1850737},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"8ea2a98bda0a4a9b6bc33be432dba3796f1d2c80","scripts":{"dev":"tsx src/main.ts","test":"node --import tsx --test \"test/**/*.test.ts\"","build":"node scripts/sync-version.mjs --check && tsc","start":"node dist/main.js","test:tui":"node --import tsx --test test/timeline.test.ts test/controller.test.ts test/wide-chars.test.ts test/verdict-model.test.ts","tui:replay":"tsx scripts/tui-replay.ts","sync-version":"node scripts/sync-version.mjs","version:check":"node scripts/sync-version.mjs --check","build:standalone":"bun build --compile src/main.ts --outfile dist/aither-shell"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d3044546-cde6-4abb-b358-6f39b480696e"}},"repository":{"url":"git+https://github.com/Aitherium/awsh.git","type":"git"},"_npmVersion":"12.0.2","description":"awsh - your terminal answers you. Type a question where a command would go, and get an answer instead of \"command not found\".","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ora":"^8.2.0","chalk":"^5.4.0","marked":"^15.0.0","neo-blessed":"^0.2.0","marked-terminal":"^7.3.0","@inquirer/prompts":"^8.3.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.8.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/awsh_1.18.5_1787643316537_0.1106877674055271","host":"s3://npm-registry-packages-npm-production"}},"1.18.6":{"name":"@aitherium/awsh","version":"1.18.6","keywords":["awsh","awshell","aitherium","agent","shell","cli","omnibox"],"license":"BUSL-1.1","_id":"@aitherium/awsh@1.18.6","maintainers":[{"name":"wzns","email":"david@aitherium.com"}],"homepage":"https://aitherium.github.io/awsh/","bugs":{"url":"https://github.com/Aitherium/awsh/issues"},"bin":{"awsh":"dist/main.js","aither":"dist/main.js","aither-shell":"dist/main.js"},"dist":{"shasum":"88f6854c5a621b564d228c642786c1f839bfd636","tarball":"https://registry.npmjs.org/@aitherium/awsh/-/awsh-1.18.6.tgz","fileCount":160,"integrity":"sha512-SHBGyuyW4hJo5lRVAvoRjUNis7YcFMo5oZC88cBz2ytEKuEw6Qpos10eou+q683yDf75RUMfX69yLnG4QPlmVA==","signatures":[{"sig":"MEQCIBlQB7QB3GOhd7/hs4rypScMw9Xvu50Yl5NXqXX7gigAAiAzDPkTs4tLw6O24dYGkCYB4tyQj5wUUQkLW5/mifOTgg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aitherium%2fawsh@1.18.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1853837},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"374f76acdeea02530d4ea11123582163f3cc2334","scripts":{"dev":"tsx src/main.ts","test":"node --import tsx --test \"test/**/*.test.ts\"","build":"node scripts/sync-version.mjs --check && node scripts/check-spinner-import.mjs && tsc","start":"node dist/main.js","test:tui":"node --import tsx --test test/timeline.test.ts test/controller.test.ts test/wide-chars.test.ts test/verdict-model.test.ts","tui:replay":"tsx scripts/tui-replay.ts","sync-version":"node scripts/sync-version.mjs","version:check":"node scripts/sync-version.mjs --check","build:standalone":"bun build --compile src/main.ts --outfile dist/aither-shell"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d3044546-cde6-4abb-b358-6f39b480696e"}},"repository":{"url":"git+https://github.com/Aitherium/awsh.git","type":"git"},"_npmVersion":"12.0.2","description":"awsh - your terminal answers you. Type a question where a command would go, and get an answer instead of \"command not found\".","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ora":"^8.2.0","chalk":"^5.4.0","marked":"^15.0.0","neo-blessed":"^0.2.0","marked-terminal":"^7.3.0","@inquirer/prompts":"^8.3.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.8.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/awsh_1.18.6_1787662920437_0.9272597313681732","host":"s3://npm-registry-packages-npm-production"}},"1.18.7":{"name":"@aitherium/awsh","version":"1.18.7","keywords":["awsh","awshell","aitherium","agent","shell","cli","omnibox"],"license":"BUSL-1.1","_id":"@aitherium/awsh@1.18.7","maintainers":[{"name":"wzns","email":"david@aitherium.com"}],"homepage":"https://aitherium.github.io/awsh/","bugs":{"url":"https://github.com/Aitherium/awsh/issues"},"bin":{"awsh":"dist/main.js","aither":"dist/main.js","aither-shell":"dist/main.js"},"dist":{"shasum":"729f9be97c8065dce4cf4a26b9cc7a4ea0201ec3","tarball":"https://registry.npmjs.org/@aitherium/awsh/-/awsh-1.18.7.tgz","fileCount":161,"integrity":"sha512-umMU9yOY9s4ClHAkNV7S1VQ0h4xDQqa1EpL1k2N1Lod4Ka3VJROo0pY7xbyW5KfR3oP4q9qz2hFF6PrHn6V37A==","signatures":[{"sig":"MEICHlX1yeoh1h80JuiV2gs62Jsi0bwYdhgGC+J0jbr77wIgPkaG55d9HUh1OD8d9ieWcRd8mO7emBTBvh9651BDyUA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aitherium%2fawsh@1.18.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1857671},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"0745d6d55e38a915eb49903bdb49cdaf6c31354f","scripts":{"dev":"tsx src/main.ts","test":"node --import tsx --test \"test/**/*.test.ts\"","build":"node scripts/sync-version.mjs --check && node scripts/check-spinner-import.mjs && tsc","start":"node dist/main.js","test:tui":"node --import tsx --test test/timeline.test.ts test/controller.test.ts test/wide-chars.test.ts test/verdict-model.test.ts","tui:replay":"tsx scripts/tui-replay.ts","sync-version":"node scripts/sync-version.mjs","version:check":"node scripts/sync-version.mjs --check","build:standalone":"bun build --compile src/main.ts --outfile dist/aither-shell"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d3044546-cde6-4abb-b358-6f39b480696e"}},"repository":{"url":"git+https://github.com/Aitherium/awsh.git","type":"git"},"_npmVersion":"12.0.2","description":"awsh - your terminal answers you. Type a question where a command would go, and get an answer instead of \"command not found\".","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ora":"^8.2.0","chalk":"^5.4.0","marked":"^15.0.0","neo-blessed":"^0.2.0","marked-terminal":"^7.3.0","@inquirer/prompts":"^8.3.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.8.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/awsh_1.18.7_1787973558459_0.610773765598805","host":"s3://npm-registry-packages-npm-production"}},"1.18.8":{"name":"@aitherium/awsh","version":"1.18.8","keywords":["awsh","awshell","aitherium","agent","shell","cli","omnibox"],"license":"BUSL-1.1","_id":"@aitherium/awsh@1.18.8","maintainers":[{"name":"wzns","email":"david@aitherium.com"}],"homepage":"https://aitherium.github.io/awsh/","bugs":{"url":"https://github.com/Aitherium/awsh/issues"},"bin":{"awsh":"dist/main.js","aither":"dist/main.js","aither-shell":"dist/main.js"},"dist":{"shasum":"940db213e9b58cc03c48c3213faefbe202e2e989","tarball":"https://registry.npmjs.org/@aitherium/awsh/-/awsh-1.18.8.tgz","fileCount":169,"integrity":"sha512-UoBsGd2F4Bfeyx56Q3Svav7iK/VHfAg/T8nx/0j4YuF5Lq0j0iBE3ZRMlZsMwFrFXR2SvWzwadcybV+JJ2mC/g==","signatures":[{"sig":"MEQCIFEssNHdem6dVYDV2sGwKTxm4xVdSnsSFulXDEUo7eo9AiA4+qt5ULsGHl9wO8WL53cU9zargC72EWoqZK0hrEnrQw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aitherium%2fawsh@1.18.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1903745},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"c367dd467dcebfd3eb79347e1ce26f6cf71aa2e3","scripts":{"dev":"tsx src/main.ts","test":"node --import tsx --test \"test/**/*.test.ts\"","build":"node scripts/sync-version.mjs --check && node scripts/check-spinner-import.mjs && tsc","start":"node dist/main.js","test:tui":"node --import tsx --test test/timeline.test.ts test/controller.test.ts test/wide-chars.test.ts test/verdict-model.test.ts","tui:replay":"tsx scripts/tui-replay.ts","sync-version":"node scripts/sync-version.mjs","version:check":"node scripts/sync-version.mjs --check","build:standalone":"bun build --compile src/main.ts --outfile dist/aither-shell"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d3044546-cde6-4abb-b358-6f39b480696e"}},"repository":{"url":"git+https://github.com/Aitherium/awsh.git","type":"git"},"_npmVersion":"12.0.2","description":"awsh - your terminal answers you. Type a question where a command would go, and get an answer instead of \"command not found\".","directories":{},"_nodeVersion":"22.23.2","dependencies":{"ora":"^8.2.0","chalk":"^5.4.0","marked":"^15.0.0","neo-blessed":"^0.2.0","marked-terminal":"^7.3.0","@inquirer/prompts":"^8.3.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.8.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/awsh_1.18.8_1788382244132_0.7816295947723424","host":"s3://npm-registry-packages-npm-production"}},"1.18.10":{"name":"@aitherium/awsh","version":"1.18.10","description":"awsh - your terminal answers you. Type a question where a command would go, and get an answer instead of \"command not found\".","license":"BUSL-1.1","type":"module","repository":{"type":"git","url":"git+https://github.com/Aitherium/awsh.git"},"bin":{"awsh":"dist/main.js","aither":"dist/main.js","aither-shell":"dist/main.js"},"scripts":{"dev":"tsx src/main.ts","sync-version":"node scripts/sync-version.mjs","version:check":"node scripts/sync-version.mjs --check","build":"node scripts/sync-version.mjs --check && node scripts/check-spinner-import.mjs && tsc","build:standalone":"bun build --compile src/main.ts --outfile dist/aither-shell","start":"node dist/main.js","test":"node --import tsx --test \"test/**/*.test.ts\"","test:tui":"node --import tsx --test test/timeline.test.ts test/controller.test.ts test/wide-chars.test.ts test/verdict-model.test.ts","tui:replay":"tsx scripts/tui-replay.ts"},"dependencies":{"@inquirer/prompts":"^8.3.2","chalk":"^5.4.0","marked":"^15.0.0","cli-highlight":"^2.1.11","marked-terminal":"^7.3.0","neo-blessed":"^0.2.0","ora":"^8.2.0"},"devDependencies":{"@types/node":"^22.0.0","tsx":"^4.19.0","typescript":"^5.8.0"},"engines":{"node":">=18.0.0"},"homepage":"https://aitherium.github.io/awsh/","keywords":["awsh","awshell","aitherium","agent","shell","cli","omnibox"],"gitHead":"2cace0f8c54414ed3925a1265adae06676ba8fcf","_id":"@aitherium/awsh@1.18.10","bugs":{"url":"https://github.com/Aitherium/awsh/issues"},"_nodeVersion":"22.23.2","_npmVersion":"12.0.2","dist":{"integrity":"sha512-0mt5qc8MTzo3f58Eq2WIrAc5fJpCpSaitI8M3CatVG/zr4z35/e7Kb3RTC5aQztWJd6SvJZRyNZ2Xg6LL7cajg==","shasum":"0f9561bbbf42989492d029c56e25433680eeec61","tarball":"https://registry.npmjs.org/@aitherium/awsh/-/awsh-1.18.10.tgz","fileCount":179,"unpackedSize":2006977,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aitherium%2fawsh@1.18.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIEFRq+MRVf3+gIDeEzTgOtcGpIFLv8EzelfvdWhRPtBTAiEAyzp+Uygl4z9F1Ksrl5HNy4V774Q9eGxbDejiYudPm8U="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d3044546-cde6-4abb-b358-6f39b480696e"}},"directories":{},"maintainers":[{"name":"wzns","email":"david@aitherium.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/awsh_1.18.10_1789321721580_0.8982520583312255"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-23T15:56:40.736Z","modified":"2026-09-13T17:48:42.061Z","1.18.3":"2026-08-23T15:56:41.116Z","1.18.4":"2026-08-25T04:17:42.012Z","1.18.5":"2026-08-25T07:35:16.729Z","1.18.6":"2026-08-25T13:02:00.618Z","1.18.7":"2026-08-29T03:19:18.612Z","1.18.8":"2026-09-02T20:50:44.309Z","1.18.10":"2026-09-13T17:48:41.735Z"},"bugs":{"url":"https://github.com/Aitherium/awsh/issues"},"license":"BUSL-1.1","homepage":"https://aitherium.github.io/awsh/","keywords":["awsh","awshell","aitherium","agent","shell","cli","omnibox"],"repository":{"type":"git","url":"git+https://github.com/Aitherium/awsh.git"},"description":"awsh - your terminal answers you. Type a question where a command would go, and get an answer instead of \"command not found\".","maintainers":[{"name":"wzns","email":"david@aitherium.com"}],"readme":"# awsh — your terminal answers you\n\nA shell has exactly one response to a line it does not recognise:\n\n```\n$ how do I rotate this cert without dropping the tunnel\nbash: how: command not found\n```\n\nSo you open a browser, and you lose the directory you were in, the environment\nyou had loaded, and the session you were already halfway through — when\neverything needed to answer you was right there on the machine.\n\n`awsh` is a terminal where that line is a question instead of a mistake.\n\n```bash\nnpm i -g @aitherium/shell-cli\nawsh\n```\n\nNode 20+. It runs on its own; it does not need an account, and it does not need\nour cloud — point it at any agent-shaped backend, including one on localhost.\n\n## How a line is routed\n\nThree cases, decided before anything runs, so you always know which one you are in:\n\n| you type | what happens |\n|---|---|\n| `/models` | a **slash command** — dispatched locally, 74 of them |\n| `!git status` | a **shell escape** — straight through to your shell |\n| `why is this container unhealthy` | a **question** — answered by the backend you chose |\n\nThe routing is not a guess made after the fact. `/` and `!` are dispatched\nlocally **even while a generation is running**, so a command never gets swallowed\nas steering text — and anything else typed during a generation **steers it**\nrather than queuing behind it. That is the part people notice: you do not have to\nwait for a wrong answer to finish before correcting it.\n\n## Steering, not waiting\n\n```\n> plan the migration for the payments service\n  ...thinking, streaming...\n> actually assume postgres 16, not 14        ← lands in the SAME turn\n> cancel                                      ← or stop it outright\n```\n\n## Backends\n\n`awsh` resolves where to think, in this order, and tells you which it picked:\n\n1. an endpoint you pinned (`--gateway`, `AITHER_API_URL`, or the config file)\n2. a local agent daemon on `127.0.0.1:9001`\n3. a local gateway on `127.0.0.1:8001`\n4. whatever cloud endpoint you are logged into\n\nA pinned endpoint always wins. Nothing is silently substituted: if the fast local\npath is unreachable it says so rather than quietly falling back and getting\nslower for reasons you cannot see.\n\n## The commands\n\n74 of them. `/commands` lists every one, `/help <name>` explains one, and Tab\ncompletes them.\n\n| | |\n|---|---|\n| `/models` `/pool` `/compute` `/node` | what is serving you, and on whose hardware |\n| `/fleet` `/docker` `/deploy` `/routines` | the machines and what runs on them |\n| `/codegraph` `/repowise` `/explore` `/review` | the code you are standing in |\n| `/memory` `/context` `/ingest` `/research` | what it knows and what you gave it |\n| `/mail` `/inbox` `/cal` `/tasks` | the day around the work |\n| `/imagine` `/generate` `/notebook` | making things |\n| `/escalate` `/approve` `/expedition` | when a human has to decide |\n\n## Where it sits\n\n`awsh` is the front door of the **Aither World** — the same tools an agent uses,\nin the place you were already typing. It composes with\n[awdk](https://github.com/Aitherium/awdk) (the agent runtime it can talk to),\n[awfind](https://github.com/Aitherium/awfind) (search that is not one vendor's\nindex) and [awbrowse](https://github.com/Aitherium/awbrowse) (a page it can\nactually read). None of them are required.\n\n## Licence\n\n**BUSL-1.1.** Free to install, run and modify for your own use. It is not\nApache-2.0 like most of the family, and the family list will keep saying so\nrather than letting you find out at adoption time.\n\nThe published artifact is `@aitherium/shell-cli` — it installs the `awsh`\nbinary. `@aitherium/awsh` also exists; the bare name `awsh` is a 404.\n","readmeFilename":"README.md"}