Send message and shortly delete it

I recommend you send the message, wait for the response and delete the returned message after that time. Here's how it'd work now:

message.reply('Invalid command')
  .then(msg => {
    setTimeout(() => msg.delete(), 10000)
  })
  .catch(/*Your Error handling if the Message isn't returned, sent, etc.*/);

See the Discord.JS Docs for more information about the Message.delete() function and the Node Docs for information about setTimeout().

Old ways to do this were:

Discord.JS v12:

message.reply('Invalid command')
  .then(msg => {
    msg.delete({ timeout: 10000 })
  })
  .catch(/*Your Error handling if the Message isn't returned, sent, etc.*/);

Discord.JS v11:

message.reply('Invalid command')
  .then(msg => {
    msg.delete(10000)
  })
  .catch(/*Your Error handling if the Message isn't returned, sent, etc.*/);

Current API differs from older versions. Proper way to pass timeout looks like this now.

Discord.js v13

message.reply('Invalid command!')
  .then(msg => {
    setTimeout(() => msg.delete(), 10000)
  })
  .catch(console.error);

Discord.js v12

message.reply('Invalid command!')
  .then(msg => {
    msg.delete({ timeout: 10000 })
  })
  .catch(console.error);

Every Discord.JS Version has a new way to delete with timeout.

Discord.JS V11:

message.channel.send('Test!').then(msg => msg.delete(10000));

Discord.JS V12:

message.channel.send('Test!').then(msg => msg.delete({timeout: 10000}));

Discord.JS V13:

message.channel.send('Test!').then(msg => setTimeout(() => message.delete(), 10000));