diff --git a/packages/cheatsheet/src/lib/sampleSpokenFormInfos/defaults.json b/packages/cheatsheet/src/lib/sampleSpokenFormInfos/defaults.json
index 28e3ea93b1..b321b815cb 100644
--- a/packages/cheatsheet/src/lib/sampleSpokenFormInfos/defaults.json
+++ b/packages/cheatsheet/src/lib/sampleSpokenFormInfos/defaults.json
@@ -4,6 +4,36 @@
       "name": "Actions",
       "id": "actions",
       "items": [
+        {
+          "id": "addSelection",
+          "type": "action",
+          "variations": [
+            {
+              "spokenForm": "append <target>",
+              "description": "Add selection"
+            }
+          ]
+        },
+        {
+          "id": "addSelectionAfter",
+          "type": "action",
+          "variations": [
+            {
+              "spokenForm": "append post <target>",
+              "description": "Add selection after"
+            }
+          ]
+        },
+        {
+          "id": "addSelectionBefore",
+          "type": "action",
+          "variations": [
+            {
+              "spokenForm": "append pre <target>",
+              "description": "Add selection before"
+            }
+          ]
+        },
         {
           "id": "applyFormatter",
           "type": "action",
@@ -138,6 +168,16 @@
             }
           ]
         },
+        {
+          "id": "flashTargets",
+          "type": "action",
+          "variations": [
+            {
+              "spokenForm": "flash <target>",
+              "description": "Flash targets"
+            }
+          ]
+        },
         {
           "id": "foldRegion",
           "type": "action",
@@ -173,11 +213,51 @@
           "type": "action",
           "variations": [
             {
-              "spokenForm": "snippet make <target>",
+              "spokenForm": "snip make <target>",
               "description": "Generate snippet"
             }
           ]
         },
+        {
+          "id": "gitAccept",
+          "type": "action",
+          "variations": [
+            {
+              "spokenForm": "git accept <target>",
+              "description": "Git accept"
+            }
+          ]
+        },
+        {
+          "id": "gitRevert",
+          "type": "action",
+          "variations": [
+            {
+              "spokenForm": "git revert <target>",
+              "description": "Git revert"
+            }
+          ]
+        },
+        {
+          "id": "gitStage",
+          "type": "action",
+          "variations": [
+            {
+              "spokenForm": "git stage <target>",
+              "description": "Git stage"
+            }
+          ]
+        },
+        {
+          "id": "gitUnstage",
+          "type": "action",
+          "variations": [
+            {
+              "spokenForm": "git unstage <target>",
+              "description": "Git unstage"
+            }
+          ]
+        },
         {
           "id": "highlight",
           "type": "action",
@@ -263,7 +343,7 @@
           "type": "action",
           "variations": [
             {
-              "spokenForm": "snippet <target>",
+              "spokenForm": "snip <target>",
               "description": "Insert snippet"
             }
           ]
@@ -906,14 +986,14 @@
               "spokenForm": "previous <scope>",
               "description": "Previous instance of <scope>"
             },
-            {
-              "spokenForm": "next <scope>",
-              "description": "Next instance of <scope>"
-            },
             {
               "spokenForm": "<ordinal> previous <scope>",
               "description": "<ordinal> instance of <scope> before target"
             },
+            {
+              "spokenForm": "next <scope>",
+              "description": "Next instance of <scope>"
+            },
             {
               "spokenForm": "<ordinal> next <scope>",
               "description": "<ordinal> instance of <scope> after target"
@@ -1126,6 +1206,16 @@
             }
           ]
         },
+        {
+          "id": "string",
+          "type": "pairedDelimiter",
+          "variations": [
+            {
+              "spokenForm": "string",
+              "description": "String"
+            }
+          ]
+        },
         {
           "id": "whitespace",
           "type": "pairedDelimiter",
@@ -1222,7 +1312,17 @@
           "variations": [
             {
               "spokenForm": "short paint",
-              "description": "Non whitespace sequence stopped by surrounding pair delimeters"
+              "description": "Non-whitespace sequence bounded by surrounding pair delimeters"
+            }
+          ]
+        },
+        {
+          "id": "boundedParagraph",
+          "type": "scopeType",
+          "variations": [
+            {
+              "spokenForm": "short block",
+              "description": "Paragraph bounded by surrounding pair delimeters"
             }
           ]
         },
@@ -1496,6 +1596,16 @@
             }
           ]
         },
+        {
+          "id": "pair",
+          "type": "scopeType",
+          "variations": [
+            {
+              "spokenForm": "<pair>",
+              "description": "Paired delimiters"
+            }
+          ]
+        },
         {
           "id": "paragraph",
           "type": "scopeType",
diff --git a/packages/cursorless-org-docs/src/docs/contributing/CONTRIBUTING.md b/packages/cursorless-org-docs/src/docs/contributing/CONTRIBUTING.md
index b506873d1c..2ec381fd3a 100644
--- a/packages/cursorless-org-docs/src/docs/contributing/CONTRIBUTING.md
+++ b/packages/cursorless-org-docs/src/docs/contributing/CONTRIBUTING.md
@@ -139,6 +139,19 @@ To uninstall the local build and revert to production cursorless, run the follow
 pnpm -F cursorless-vscode uninstall-local
 ```
 
+## Regular manual maintenance tasks
+
+### Updating the cheatsheet
+
+We need to keep the default cheatsheet up-to-date for use with local development and for https://www.cursorless.org/cheatsheet.
+
+1. Switch to vanilla community + cursorless_talon
+2. `"debug extension"`
+3. `"cursorless update cheatsheet"`
+4. See diff and cleanup if necessary. In particular, if you have shapes enabled, you'll need to remove these from the generated cheatsheet as they're not on by default
+
+This should be done every time we do something that will change the custom cheatsheet, but in practice we don't, so it rots a bit and needs to be redone regularly.
+
 ## Changing SVGs
 
 ### SVG preprocessing script