This repository holds the federated modules for Console's virtual assistant (Chameleon). This can be tested on the landing page.
Note: You don't have to run it anymore with the landing page frontend.
See ONBOARDING_GUIDE.md for instructions on how to integrate your AI agent into Chameleon.
npm installnpm run startornpm run startif running on beta/preview.- Navigate to the landing page (you're going to get a 404)
- You should be able to see it on the bottom right. To make changes to the position/alignment relative to the landing page, check out the landing page code.
If you want to run your backend locally, use USE_LOCAL_RASA=1 npm run start.
A static mode is provided to be able to host the federated modules:
npm run start:static- Download the landing page frontend code and update the fec config to include these routes.
module.exports = {
// ...
routes: {
'/apps/virtual-assistant/': { host: 'http://localhost:8003' },
// Optional. If you want to run a local instance of Rasa add this entry
'/api/virtual-assistant/v1': { host: 'http://localhost:5005' },
}
};You still need to complete once the Initial etc/hosts setup as detailed in the landing page repository.
After that, you can run npm run start:standalone.
npm run verify will run npm run lint (eslint) and npm test (Jest)
For comprehensive testing of ARH chatbot components, see the ARH Chatbot Testing Guide.
Available test commands:
npm run test- Run Jest unit testsnpm run test:watch- Run Jest in watch modenpm run test:coverage- Run Jest with coverage reportnpm run cypress:open:cp- Open Cypress component test runnernpm run cypress:run:cp- Run Cypress component tests headlessly
Testing Strategy:
- Cypress Component Tests: UI components, user interactions, accessibility
- Jest Tests: React hooks, utility functions, business logic
- Mocking: Third-party dependencies (
arh-client,ai-client-state,ai-react-state) are mocked to ensure test isolation