Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate

Redstone - Application Launcher

  • Please log in to reply
57 replies to this topic
  • Members
  • 48 posts
  • Last active: Feb 13 2010 09:55 PM
  • Joined: 28 Apr 2008
* Launch applications by typing in part of the name
* Type in URLs or a web search phrase
* View active processes (task and process views)
* History of launched applications
* Imports Skype contacts and Firefox bookmarks
* Integrated Google Desktop search
* RSS feed import (such as Google Docs Active Items)

* Configurable hotkeys
* Configurable buttons
* True Plug-in support (Autohotkey scripts or executables)

Download (Installer)

SVN for new beta version

Source for current version

Tutorial (Thanks JoeSchmoe for putting this together)

Posted Image

Posted Image

Posted Image

  • Members
  • 48 posts
  • Last active: Feb 13 2010 09:55 PM
  • Joined: 28 Apr 2008
Sample Plugins (included in the download)

; Install files into plugins/helloworld
; Restart RedStone
; type: *hello world

#include CR_PluginClient.ahk

helloWorld_Initialize() {

	CommandRegister("Hello World", "helloWorld_Command")

helloWorld_Command(A_Command, A_Args) {

	MsgBox,Hello World

Miro Plugin (Mozilla Media Application)

#include CR_PluginClient.ahk

miro_Initialize() {

	CommandRegister("Miro Command", "miro_Command")

miro_Command(A_Command, A_Args) {

	entry := syslist_Get("Windows", "/filter:name=Miro")
	if (entry <> "") {
		wid := getValue(entry, "wid")
		WinGet, pid, PID, ahk_id %wid%
		WinActivate, ahk_pid %pid%
		SetKeyDelay, 0, 25
		command := getValue(A_Args, "args")

		if (command = "Play") {
			ControlSend,MozillaWindowClass1,^{Space},ahk_id %wid%
		} else if (command = "Pause") {
			ControlSend,MozillaWindowClass1,^{Space},ahk_id %wid%
		} else if (command = "Stop") {
			ControlSend,MozillaWindowClass1,^D,ahk_id %wid%
		} else if (command = "Next") {
			ControlSend,MozillaWindowClass1,^{Right},ahk_id %wid%
		} else if (command = "Rewind") {
			ControlSend,MozillaWindowClass1,^{Left},ahk_id %wid%
		} else if (command = "Forward") {
			ControlSend,MozillaWindowClass1,{Right},ahk_id %wid%
		} else if (command = "Back") {
			ControlSend,MozillaWindowClass1,{Left},ahk_id %wid%
		} else if (command = "Fullscreen") {
			ControlSend,MozillaWindowClass1,!{Enter},ahk_id %wid%

		WinActivate, RedStone

  • Members
  • 885 posts
  • Last active: Jan 17 2011 09:57 PM
  • Joined: 01 Nov 2007
Awsome program!

  • Guests
  • Last active:
  • Joined: --
can you provide another download link?

  • Members
  • 1386 posts
  • Last active: Oct 08 2014 10:29 AM
  • Joined: 26 Jun 2006
we need source
Posted Image
ʞɔпɟ əɥʇ ʇɐɥʍ

  • Members
  • 48 posts
  • Last active: Feb 13 2010 09:55 PM
  • Joined: 28 Apr 2008
In the download, I included the source for several of the plugins. The source is located in the plugins subdirectory. Here is a description of each of the plugins:

This plugin shows how to perform a dynamic search using Google Desktop. The user types in /gds {search term}. The GDS plugin executes the search, parses the returned XML, and displays the results in the listview.

Simple plugin test

Creates custom commands that allow the user to control the Miro media player.

A custom scanner that indexes the systems drives and resources.

Creates a slider on the main UI that allows the user to adjust the volume using the mouse wheel.

If requested, I can post the code for any specific component (nearly everything is a plugin and can be customized). I don't want to post the entire source right now as I want to keep control over the core functionality.

  • Members
  • 48 posts
  • Last active: Dec 03 2008 07:22 PM
  • Joined: 16 Dec 2007
This looks really promising, but I get really funky behavior right now.

I keep randomly getting a big heading that says "Errors".

Upon startup it tells me that it's "Unable to locate the Skype configuration file"

The hello world pluging doesn't work: "*hello world" tells me that its an invalid command - the ahk file is in the folder as per the comments in the plugin.

MButton and Escape don't hide the GUI.

I will second ahklerner's request for source - you seem to have done some very cool things that lots of people can learn from. Perhaps you can consider some of the open-source licensing alternatives that are out there.

  • Members
  • 48 posts
  • Last active: Feb 13 2010 09:55 PM
  • Joined: 28 Apr 2008
To get rid of the Skype error, go to Configuration->plugins (click on the > button). Disable the Skype plugin by right clicking on it and hitting disable.

There are several display modes for the UI. The toggle is right next to the > button:

Posted Image

^ is always on top
V is auto-hide
blank is normal (will not autohide)

The hello world plugin is disabled by default. Go to configuration->plugins and right-click on the plugin to enable it.

  • Administrators
  • 2709 posts
  • Hates playing Janitor
  • Last active: Jan 15 2016 11:37 PM
  • Joined: 09 Mar 2008
you tricked me.
RedStone is a free MMO :p
but good app.

you might want to make an easy way to close it. like put an X button in a corner.
unless I'm blind, I didn't see any :p

rawr. be very afraid
. Populate the AutoHotkey city. Pointless but somewhat fun. .

  • Members
  • 48 posts
  • Last active: Feb 13 2010 09:55 PM
  • Joined: 28 Apr 2008
Thanks for the feedback. I uploaded a new version that contains the following:

Skype plugin is initially disabled
Hello World plugin is initially enabled
Autohide mode is default

The way that I completely exit the program is by right-clicking on the tray icon and hitting exit.

  • Members
  • 48 posts
  • Last active: Feb 13 2010 09:55 PM
  • Joined: 28 Apr 2008
Helpful tips on writing plugins

Add this section to the redstone.ini file:

A Redstone.log file will be written to in the installation directory. Review the logA method in the CR_Util.ahk to get a better understanding of the logging mechanism.

Right click on the ">" button to get a list of all the metadata used in the system. If make any changes to the metadata, the changes will be reflected immediately. The exception is types and handlers - if you make changes to either of these two, you must restart the application. If you enabled debug logging, you will have additional options for editing the metadata (by right clicking on the item).

Code and Lists
It is easier to develop directly in the installation directory. Make your changes to the lists in this directory. Only extract your list changes to your plugin directory after you have finalized your plugin (I'll try and add an easier way to develop plugins outside of the install directory soon).

If you place your code in the installation directory, each time you save your file, the application and plugins will be reloaded automatically (as long as you have debug logging enabled).

Redstone code
If you need access to any of the core code, let me know which plugin you need and I will post it. At this time, I do not want to distribute the entire source as it is being actively developed. Any changes that you make to the core code, I will review and incorporate back into the main source.

  • Guests
  • Last active:
  • Joined: --
This is the single greatest utility I've seen in my whole F-Bombing life. Finally a utility that I can use to get things done.

Rather powerful, thin, and oh so nimble.

well done JoeBodo.
well done.

  • Members
  • 48 posts
  • Last active: Feb 13 2010 09:55 PM
  • Joined: 28 Apr 2008
To use a search engine other than google, add your query to the redstone.ini file. Example:


To enable firefox bookmark scanning, edit the redstone.ini and add the location of your bookmarks file. Example:


  • Members
  • 48 posts
  • Last active: Feb 13 2010 09:55 PM
  • Joined: 28 Apr 2008
Now with an installer/uninstaller


  • Guests
  • Last active:
  • Joined: --
I am creating a plugin for Swept Away by Adam Pash.

I have most of the functionality completed but do not know how to add items to the tray menu. Here's the code from Swept Away:


Is it possible to add items to the tray menu?