This is a project that I started motivated by the book THINKERTOYS by M. Michalko with the idea of ​​developing an application to support creativity based on some of the techniques proposed in this wonderful book. After studying the tools, I entered a long-standing informal investigation into the domain of creativity in general first, then focusing on the advertising and design sectors. At the same time, I was recording everything in the Squeak environment itself, which was supposed to support the development of a software tool (which I have not developed yet).
In this way I extended (cultivated?) The environment to accommodate my research and I realized that it had become not a tool, but a creative MEDIUM!
Then, the availability of artificial intelligence emerged. And all the pieces fit together, in a very simple way.
XUL is a Squeak Smalltalk development environment that models creativity from various points of view: processes, practices, people, techniques, etc.
It consists of simple tools to manage the corpus of knowledge, and others related to artificial intelligence, in particular it uses OpenAI.
In this case, a common chat or a particular creative dialogue, called BohmDialogue, can be established with this system and selective use can be made of the corpus during the conversation, which can be saved and reused.
Browser
It consists of a repository explorer. It contains the corpus of knowledge, an ontology organized into classes (>2200 entities, 500K of hiper-texts) on the domain of creativity, with specializations in Design and Advertising.
The entities remain linked to each other automatically through hypertext, constituting a metaverse that can also be seen in graphic form. The links can be either to concepts referenced in the text (keywords) or to references to the entity (references).
In addition to hypertext and its relationships, each entity can have more material (textual/graphic) associated in a Scrapbook. This material can be easily accessed through the use of Bookmarks
List
It is similar to the Browser, but in this case the classes are in a configurable, uncategorized list. There is a global List and you can also create as many Lists as you wish to analyze particular sets of concepts.
References
Similar to the List, but includes an extra panel with the references of the selected class/word.
A particular example of Reference is the list of Authors referenced in the hypertext, dynamically constructed from Labels in it.
Concepts (Processes) Browser
This tool is a specialized browser on a defined concept (actually only processes are specified). The tool parses the hipertext with given specification and presents the concepts in a structured way. You can use the selected concept as a new corpus for AI
Collections (document imports)
You can extend the corpus by two ways:
Creating new classes and documenting it (entering rich text in the Browser)
Importing documents (pdf or text) from your disk
This last option allows to create collections from given folders, and then perform semantic search on them Previous version of the application only supported latent semantic indexing (LSI) on mac, now an integrated AI semantic search is developed
AI
The tools that use the OpenAI API can be accessed from the Desktop button bar, or also from menu options of the previous tools:
Explain: explains a text
Chat: a tool that allows you to interact in natural language with the configured chatgpt model (see Preferences)
Creative Dialogue: an extended chat based to have a creative dialogue based on a particular deployment process. You can use any technique mixed in this dialog (for example you could choose to use a PersonalMentor with selected Author to interact with you). The user controls the (extensible) corpus to be used
Searches: allows you to search the entire corpus for a text semantically, and then start a chat if you wish with the search results
Images: allows you to obtain a series of images created by OpenAI from a text, or a response from the Assistant itself
Completion: allows you to obtain a completion of an entered text...
See an (partial) model example uploaded here:
Related Docs.