diff --git a/docs/Installation/Windows/Dragon_NaturallySpeaking.md b/docs/Installation/Windows/Dragon_NaturallySpeaking.md
index bcdb7d290..445592f3d 100644
--- a/docs/Installation/Windows/Dragon_NaturallySpeaking.md
+++ b/docs/Installation/Windows/Dragon_NaturallySpeaking.md
@@ -39,13 +39,13 @@ After installing Dragon, you can configure the DNS settings based on your prefer
3. Configure the Natlink GUI
- ![natlink_gui](/images/natlink_gui.png)
+ ![natlink_gui](https://raw.githubusercontent.com/dictation-toolbox/Caster/refs/heads/master/docs/images/natlink_gui.png)
- **Optionally** Check the relevant project Dragonfly or Unimacro to configure the file path to the grammars.
4. Start Dragon start Dragon, the `Messages from Natlink` window should show loading a dragonfly script. In the picture blow is an example loading module`_caster` is `_caster.py`.
- ![natlink_running](/images/natlink_running.png)
+ ![natlink_running](https://raw.githubusercontent.com/dictation-toolbox/Caster/refs/heads/master/docs/images/natlink_running.png)
Scrips starting with an underscore and ending in .py `_*.py` will be imported in alphabetical order, except `__init__.py` will be loaded first if it exists.
diff --git a/docs/Rule_Construction/Advanced_Caster_Rules/NodeRule.md b/docs/Rule_Construction/Advanced_Caster_Rules/NodeRule.md
index 36259d5be..b2727a8e6 100644
--- a/docs/Rule_Construction/Advanced_Caster_Rules/NodeRule.md
+++ b/docs/Rule_Construction/Advanced_Caster_Rules/NodeRule.md
@@ -23,7 +23,7 @@ So, let's say for example that I want to be able to speak any of the following c
That's sixteen specs getting added. Since a lot of them will only be spoken after others, this command set fits well into a tree structure. (Not all command sets will.) The number of specs in the active CCR grammar from this command set can be reduced by only keeping a certain number of levels of the tree structure open (speakable) at a given time.
-
+
In the above diagram, the first two levels of the tree are active. This means I can speak these specs:
@@ -41,7 +41,7 @@ In the above diagram, the first two levels of the tree are active. This means I
If I then speak spec (a), it's effect occurs, and the NodeRule updates itself so that the active nodes look like the diagram below.
-
+
If I had spoken (a d) instead, only (m) would have been available next.
diff --git a/docs/Rule_Construction/Taxonomy_of_a_Rule.md b/docs/Rule_Construction/Taxonomy_of_a_Rule.md
index ad3ecd971..e1c8944c8 100644
--- a/docs/Rule_Construction/Taxonomy_of_a_Rule.md
+++ b/docs/Rule_Construction/Taxonomy_of_a_Rule.md
@@ -2,7 +2,7 @@
Throughout the Caster documentation, you will see references to `rule`, `command`, `spec`, `action`, `extra`, and `default`s. These all refer to parts of a Rule, typically a MappingRule or MergeRule. Both are structured the same way, as depicted below.
-
+
- `spec` : This is what you say in order to invoke an `action`.
- `action` : This is what happens when you speak a `spec`. Examples include Dragonfly's [Key](http://dragonfly.readthedocs.io/en/latest/actions.html#key-action), Text, and Function actions, or Caster's [R](http://caster.readthedocs.io/en/latest/caster/doc/readthedocs/ContextStack/#registeredaction), [ContextSeeker](http://caster.readthedocs.io/en/latest/caster/doc/readthedocs/ContextStack/#contextseeker), or [AsynchronousAction](http://caster.readthedocs.io/en/latest/caster/doc/readthedocs/ContextStack/#asynchronousaction) actions.