Anyone want to work on anything? Here's an idea - take text and develop a universal natural language understanding system that produces standoff logical form assertions about the text, including all the usual suspects, plus additionally derived knowledge delineating possible (defeasible) meanings about text-spans. Also have assertions about the relationship between the contents of the text and the containing file or other source. So for instance, if you have a text-span in which is estimated to exist a self-contained sentence, you can assert that, as well as provide some evidence for it by linking to a memoized result of running a grammar parser on it like the Link Parser. That's the first step. The goal is to have the computer be a deliberative agent in the execution of tasks. You provide it with a model of the types of commands (shell/emacs/perl/APIs/etc) it can use, along with handlers for invoking these commands. Then, you obtain grammars for these languages and embed the parse results of sample commands in those languages into the NLU system, augmented by type information and other semantics. Finally, you develop a classical AI planning or intelligent agent domain, which embeds the grammatical constraints into the planning domain and so provides the ability to generate commands using AI planning. So for instance, you might parse "mv file.txt file2.txt", and so derive facts that there is an containing a with and thus, and that (equals "file.txt") etc, (isa "file.txt" FileName) (exists-file "file.txt") and (isa "file2.txt" FileName), and then link this to an action object in the planning domain. Then by AI planning and other domain specific knowledge, such as derived from scanning the filesystem, you might compose a command to move a file somewhere. The effects of the operations can be learned automatically by diffing the set of environmental observations, or explicitly via either conversion from man files, or from tacit programming of the preconditions and postconditions of effects. (such as here http://arxiv.org/pdf/1210.4889.pdf ) The end result should be a system that can initiate software commands/programming. For instance, the use of ssh could be added, as well as standard syntax for many CS-related concepts, and ultimately, you could have an intelligent agent that could transport itself from computer to computer, and provided with more knowledge, could defend or attack a network, manage system routines, and generally interface with a personal planning system for the automatic achievement of user goals stated in a natural language.