wbxcallprov/package.json
jmcqueen 93b060bc8b Modernize bot to Node.js 22 with modular architecture and remote SIW agent
- Refactor monolithic index.js (2646 lines) into src/{webex,integrations,
  cards,flows,commands,services} modules; replace node-fetch/form-data
  with native fetch/FormData; move all secrets to .env via dotenv
- Add dockerized remote SIW agent (docker/remote-agent/) with cross-arch
  buildx packaging (arm64 Mac -> linux/amd64), idempotent install.sh
  deploy bundle, and docker-free ZIP inspector for arch verification
- Bot hosts a WebSocket server; agent proxies SIW requests with a
  per-request insecure:true flag, replacing the process-wide
  NODE_TLS_REJECT_UNAUTHORIZED bypass
- Add ESLint flat config + Prettier, rewrite Dockerfile as non-root
  multi-stage node:22-alpine build, README covering setup / deploy /
  remote agent workflow
- Fix parseStoreArg to read trigger.prompt correctly (was indexing past
  the framework's post-match slice); register /help as regex (string
  matcher only compares the first token); switch catch-all to /.+/
  (previous /.*/gim was stateful due to the g flag); remove
  /fixDisplayNames command and its flow/card

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-06 14:48:51 -04:00

40 lines
1.2 KiB
JSON

{
"name": "wbxcallprov",
"version": "2.0.0",
"description": "Webex Calling provisioning bot for retail stores",
"private": true,
"type": "module",
"main": "src/index.js",
"engines": {
"node": ">=20.0.0"
},
"author": "Joseph B. McQueen",
"license": "ISC",
"scripts": {
"start": "node src/index.js",
"dev": "node --watch src/index.js",
"lint": "eslint .",
"lint:fix": "eslint . --fix",
"format": "prettier --write .",
"format:check": "prettier --check .",
"generate-911-csv": "node scripts/generate911Csv.js",
"fix-store-phones": "node scripts/fixStorePhones.js",
"agent:package": "./docker/remote-agent/package.sh",
"agent:check": "./docker/remote-agent/package.sh --check",
"agent:inspect": "./docker/remote-agent/inspect-bundle.sh"
},
"dependencies": {
"dotenv": "^16.4.5",
"node-cron": "^3.0.3",
"undici": "^6.19.8",
"webex-node-bot-framework": "^2.5.1",
"ws": "^8.20.1"
},
"devDependencies": {
"@eslint/js": "^9.9.0",
"eslint": "^9.9.0",
"eslint-config-prettier": "^9.1.0",
"globals": "^15.9.0",
"prettier": "^3.3.3"
}
}