- 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>
44 lines
701 B
Text
44 lines
701 B
Text
.git
|
|
.gitignore
|
|
.dockerignore
|
|
|
|
# Dependencies (installed inside the image)
|
|
node_modules
|
|
npm-debug.log*
|
|
|
|
# Secrets and local runtime state
|
|
.env
|
|
.env.*
|
|
config.json
|
|
config/wbxTokens.json
|
|
config/google-service-account.json
|
|
config/*-service-account.json
|
|
googleData.json
|
|
*.pem
|
|
*.key
|
|
|
|
# Legacy top-level scripts (deleted after refactor but ignored defensively)
|
|
get911.js
|
|
getMeeting.js
|
|
phoneFix.js
|
|
storeAddress.js
|
|
|
|
# Local scripts/tooling not needed at runtime
|
|
scripts/
|
|
eslint.config.js
|
|
.prettierrc.json
|
|
.prettierignore
|
|
|
|
# Remote-agent packaging (its own Dockerfile / image; not part of the bot image)
|
|
docker/
|
|
|
|
# Docs and generated output
|
|
*.md
|
|
*.log
|
|
*.zip
|
|
*.csv
|
|
|
|
# OS / editor cruft
|
|
.DS_Store
|
|
.vscode/
|
|
.idea/
|