#!/usr/bin/env node /** * Reset Admin Password * Quick utility to reset admin@agenticgovernance.digital password */ require('dotenv').config(); const bcrypt = require('bcrypt'); const { connect, close, getCollection } = require('../src/utils/db.util'); const NEW_PASSWORD = process.argv[2] || 'Tractatus@2025!'; async function resetPassword() { try { console.log('šŸ” Resetting admin password...'); await connect(); const users = await getCollection('users'); // Find admin user const admin = await users.findOne({ email: 'admin@agenticgovernance.digital' }); if (!admin) { console.error('āŒ Admin user not found: admin@agenticgovernance.digital'); process.exit(1); } console.log('āœ“ Admin user found'); // Hash new password console.log('ā³ Hashing password...'); const hashedPassword = await bcrypt.hash(NEW_PASSWORD, 10); // Update password console.log('ā³ Updating database...'); await users.updateOne( { email: 'admin@agenticgovernance.digital' }, { $set: { password: hashedPassword, updated_at: new Date() } } ); console.log('\nāœ… Password reset successfully!'); console.log('\nšŸ“‹ Admin Credentials:'); console.log(` Email: admin@agenticgovernance.digital`); console.log(` Password: ${NEW_PASSWORD}`); console.log('\n🌐 Login URL:'); console.log(' https://agenticgovernance.digital/admin/login.html'); console.log(''); } catch (error) { console.error('āŒ Error:', error.message); console.error(error.stack); process.exit(1); } finally { await close(); } } resetPassword();