Skip to content
In-game console for Godot 3. New version coming, see dev branch.
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
assets/fonts/RobotoMono Project refactor Mar 28, 2018
docs Project refactor Mar 28, 2018
src Merge branch 'ParsingMultipleArgs' of git://… May 3, 2019
.gitignore Project refator Feb 27, 2018 license fix Dec 16, 2017 Added message about new version Jun 26, 2019
screenshot.png Project refactor Mar 28, 2018

Godot Console

In-game console for Godot, easily extensible with new commands.

There is a new version comming, help me debugging the dev branch.

Quake-style console for Godot


  • Writing to console using write and writeLine method. You can use BB codes. (Also printed to engine output)

    Console.writeLine('Hello world!')

  • Auto-completion on TAB (complete command), Enter (complete and execute).

  • History (by default using with actions ui_up and ui_down)

  • Custom types (Filter, IntRange, FloatRange, and more...)

  • Logging


  1. Clone or download this repository to your project folder.
  2. Add src/Console.tscn to godot autoload as Console.
  3. Add new actions to Input Map: console_toggle, ui_up, ui_down


Registering command:

func _ready():
	Console.register('sayHello', { # Command name

		'description': 'Prints hello world',

		'args': [ARGUMENT, ...],
			# This argument is obsolete if
			# target function doesn't
			# take any arguments

			# [Object, variable/method name]
		'target': [self, 'print_hello']
			# Target to bind command.
			# Providing name is obsolete
			# if command name is same.


func print_hello():
	Console.writeLine('Hello world!')

ARGUMENT should look like this:

  • ['arg_name', ARG_TYPE]
  • 'arg_name' — In this situation type will be set to Any

More information about ARG_TYPE you can find in this readme.

You can find more examples in src/

Great thanks to @Krakean and @DmitriySalnikov for the motivation to keep improving the original console by @Calinou.

Take a look at their implementations.


Licensed under the MIT license, see for more information.

You can’t perform that action at this time.