base on SIMPLE YET COMPLICATED 🚩 <p align="center"> <a href="https://youtu.be/WcA7GZuaN0A"> <img alt="Guru" height="300" src="https://cdn.jsdelivr.net/gh/Guru322/api@Guru/K.jpg"> <h1 align="center">GURU Ai</h1> </a> </p> <p align="center"> <a href="https://github.com/Guru322"> <img title="Author" src="https://img.shields.io/badge/GURU-BOT-black?style=for-the-badge&logo=telegram"> </a> </p> <p align="center"> <a href="https://github.com/Guru322?tab=followers"> <img title="Followers" src="https://img.shields.io/github/followers/Guru322?label=Followers&style=social"> </a> <a href="https://github.com/Guru322/GURU-BOT/stargazers/"> <img title="Stars" src="https://img.shields.io/github/stars/Guru322/GURU-BOT?&style=social"> </a> <a href="https://github.com/Guru322/GURU-BOT/network/members"> <img title="Fork" src="https://img.shields.io/github/forks/Guru322/GURU-BOT?style=social"> </a> <a href="https://github.com/Guru322/GURU-BOT/watchers"> <img title="Watching" src="https://img.shields.io/github/watchers/Guru322/GURU-BOT?label=Watching&style=social"> </a> <a href="https://app.fossa.com/projects/git%2Bgithub.com%2FGuru322%2FGURU-BOT?ref=badge_shield" alt="FOSSA Status"> <img src="https://app.fossa.com/api/projects/git%2Bgithub.com%2FGuru322%2FGURU-BOT.svg?type=shield"> </a> </p> <hr> <h2>Installation</h2> <pre><code>git clone https://github.com/Guru322/GURU-Ai.git cd GURU-Ai npm install </code></pre> <h2>Configuration</h2> <p>Create a <code>.env</code> file in project root or set the following environment variables:</p> <pre><code> MONGODB_URI=&lt;Your MongoDB connection URI&gt; PHONE_NUMBER=&lt;Your WhatsApp phone number with country code&gt; BOTNAME=&lt;Bot display name (optional)&gt; OWNERS="&lt;owner1;john;owner2;doe&gt;" </code></pre> <p>You can also edit <code>config.js</code> for additional settings like bot name, pack name, author, owners list, and sticker watermark.</p> <h2>Running the Bot</h2> <pre><code>npm start # or node index.js </code></pre> <p>By default, the server listens on port 5000 (or the port defined in the <code>PORT</code> environment variable). Open your browser at <a href="http://localhost:5000">http://localhost:5000</a> to access the pairing interface where the pairing code and connection status are displayed.</p> <h2>Usage</h2> <p>After starting, the bot will print a pairing code. Open WhatsApp > Linked Devices > Link a Device > Link with phone number and enter the pairing code to connect.</p> <p>Commands are invoked with a prefix (default is <code>.</code>). For example:</p> <pre><code> .ping # Check bot response time .menu # Display command menu and help .list # List all available commands .alive # Show bot status </code></pre> <p>Type <code>.help</code> or <code>.list</code> in chat to view all commands and descriptions.</p> <hr> <h2>Star History</h2> <a href="https://www.star-history.com/#Guru322/GURU-Ai&Date"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=Guru322/GURU-Ai&type=Date&theme=dark" /> <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=Guru322/GURU-Ai&type=Date" /> <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=Guru322/GURU-Ai&type=Date" /> </picture> </a> ", Assign "at most 3 tags" to the expected json: {"id":"3921","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"