READ THE README IF YOU PLAN TO USE THIS PLUGIN. IT IS USEFUL
This is a reimplementation of Loom as an Obsidian plugin, designed to be easier to use and more modular and extensible.
Loom is a recursively branching interface to GPT-3 and other language models; it is designed to be conducive to exploratory and experimental use of base models. The workflow primarily consists of this: you hit Ctrl+Space
from a point in the text, and Loom generates n
child nodes of the current node, where each child contains a different completion of the text leading up to the cursor. This is paired with a tree interface and settings panel in the right sidebar, as well as a pane containing the full text of the current node and its siblings.
Loom can request completions from the following providers: Cohere, TextSynth, OpenAI, and Azure OpenAI Service. It can also request completions from implementations of openai-cd2-proxy, in which case you must provide the base URL in the Loom tab in Settings.
If you are interested in funding this plugin's development, you can support me on Patreon; I would then be able to devote more time to this and other independent projects.
If you are new to Obsidian: if you want to see the tree interface, make sure to open the right sidebar using the button on the top right, or using Ctrl+P
then Toggle right sidebar
. Once you've done that, go to the Loom tab, which is signified by a network icon.
Default hotkeys:
- generate -
Ctrl+Space
- generate siblings -
Ctrl+Shift+Space
- split at point -
Alt+s
- split at point and create child -
Alt+c
- delete (current node) -
Alt+Backspace
- merge (current node) with parent -
Alt+m
Navigation:
- switch to next sibling -
Alt+Down
- switch to previous sibling -
Alt+Up
- switch to parent -
Alt+Left
- switch to (most recently visited) child -
Alt+Right
In the editor:
Shift+click
on the text corresponding to a node to switch to it
Loom can be installed in the Obsidian store. If you don't want to do that:
- Go to the latest release under the "Releases" subheading on the right
- Download the zip file under "Assets"
- Unzip the file you downloaded in
[path to vault]/.obsidian/plugins
, creating theplugins
directory if necessary - Go to the "Community plugins" tab in Obsidian settings, then enable "Loom"
Alternatively, you can build Loom from source:
- Clone this repository (
git clone https://github.com/cosmicoptima/loom
) in[path to vault]/.obsidian/plugins
, creating theplugins
directory if necessary - Run the following:
cd loom; npm i; npm run build
- Go to the "Community plugins" tab in Obsidian settings, then enable "Loom"
- To update, go to the repository and
git pull; npm i; npm run build
, then disable and re-enable Loom
If you are using MacOS: a few hotkeys -- Alt+s
, Alt+c
, and Alt+m
-- are bound to special characters. You can either:
- Disable MacOS's special character shortcuts, as explained here: https://superuser.com/questions/941286/disable-default-option-key-binding
- Rebind the Loom hotkeys you want to use in the Hotkeys tab in Settings