← MotionHubCONTENT HISTORY

Update to MotionHub

Snapshot Oct 26, 2026 · 12:07 UTC · version 3.0.1

WHAT CHANGED

Package or technical metadata updated

Package or technical metadata updated

Observed in package metadata. These changes alone do not establish a new customer-facing feature.

Save MotionHub and check future changes in Following.

Up to 10 plugins free · no card required.

All fields and original values.

These are saved file metadata. Open a changed file to read its text edits.

Package file

Before

Sep 30, 2026 · 22:54 UTC

f91d329d6184b3fe784ff24f723a5d3f89acc1a1589066ad8e89e1273bd82778

After

Oct 26, 2026 · 12:07 UTC

2fd7d11d2d5de82911549c6b27aac43acbbb5845d00a5e01b354d8f3be0edbcb

Package file

Before

Sep 30, 2026 · 22:54 UTC

127

After

Oct 26, 2026 · 12:07 UTC

101

Package file

Before

Sep 30, 2026 · 22:54 UTC

bb032fed7cb66c67c29576f285184d1c56baf9b12e98adeeb3d6be779336c8c4

After

Oct 26, 2026 · 12:07 UTC

ff70ad0f3e909f94e537e216340b2f2a12d29f79fb16089455a08a3a7ae1eba5

Package file

Before

Sep 30, 2026 · 22:54 UTC

1231

After

Oct 26, 2026 · 12:07 UTC

8693

Compare saved observations

Download comparison JSON

Changed files

Choose a file to see its text changes. Binary or large files show metadata only.

.app.json →

.codex-plugin/plugin.json →

.mcp.json →

assets/logo.png →

.codex-plugin/plugin.json

− removed · + added

--- before
+++ after
@@ -1,9 +1,8 @@
 {
-  "apps": "./.app.json",
   "author": {
     "name": "MotionHub Limited"
   },
-  "description": "Manage media production projects with AI. Access tasks, scripts, calendars, boards, media files with transcripts and AI analysis, contacts, and team scheduling. Search footage using natural language to find clips by topic, speaker, or content \u2014 even when exact keywords don't match.",
+  "description": "MotionHub is a production management platform for film and television. The app gives ChatGPT a live, permissioned connection to the user's own MotionHub account, so they can ask about a production and act on the answer in the same conversation.\n\nMain workflows: review the slate and create or update projects and programmes; manage the team and contacts on each project; read and build the production calendar and check for crew clashes before anyone is double-booked; create, assign and chase tasks; search the media library by meaning rather than keyword and read transcripts, comments and tags; build and reorder script scenes and attach specific clips with in and out points; run development and production boards; and manage production budgets \u2014 schedules, lines, versions, purchase orders through approval, actual spend, and cost reports comparing budget against committed and actual.\n\nThe app works strictly inside the user's existing MotionHub permissions. On a project where the user is a Reader it can read but not write, budget access follows their Budget Role, and purchase orders keep their separation of duties \u2014 nobody approves their own PO, including through ChatGPT. Every write is recorded on the project's event timeline exactly as if it had been done in the MotionHub interface. Submitting or approving a purchase order notifies the other people involved in that approval in MotionHub, and emails them unless they have turned that off. Where the account has connected its own Xero organisation, approved purchase orders, posted actual spend and archived projects are queued for sync to that Xero organisation, under the same review rules as in the MotionHub interface. Connection uses OAuth 2.0 with PKCE and can be revoked at any time.",
   "interface": {
     "capabilities": [],
     "category": "Productivity",
@@ -12,12 +11,74 @@
     ],
     "developerName": "MotionHub Limited",
     "displayName": "MotionHub",
-    "longDescription": "Manage media production projects with AI. Access tasks, scripts, calendars, boards, media files with transcripts and AI analysis, contacts, and team scheduling. Search footage using natural language to find clips by topic, speaker, or content \u2014 even when exact keywords don't match.",
+    "longDescription": "MotionHub is a production management platform for film and television. The app gives ChatGPT a live, permissioned connection to the user's own MotionHub account, so they can ask about a production and act on the answer in the same conversation.\n\nMain workflows: review the slate and create or update projects and programmes; manage the team and contacts on each project; read and build the production calendar and check for crew clashes before anyone is double-booked; create, assign and chase tasks; search the media library by meaning rather than keyword and read transcripts, comments and tags; build and reorder script scenes and attach specific clips with in and out points; run development and production boards; and manage production budgets \u2014 schedules, lines, versions, purchase orders through approval, actual spend, and cost reports comparing budget against committed and actual.\n\nThe app works strictly inside the user's existing MotionHub permissions. On a project where the user is a Reader it can read but not write, budget access follows their Budget Role, and purchase orders keep their separation of duties \u2014 nobody approves their own PO, including through ChatGPT. Every write is recorded on the project's event timeline exactly as if it had been done in the MotionHub interface. Submitting or approving a purchase order notifies the other people involved in that approval in MotionHub, and emails them unless they have turned that off. Where the account has connected its own Xero organisation, approved purchase orders, posted actual spend and archived projects are queued for sync to that Xero organisation, under the same review rules as in the MotionHub interface. Connection uses OAuth 2.0 with PKCE and can be revoked at any time.",
     "privacyPolicyURL": "https://motionhub.ai/privacy",
-    "shortDescription": "Manage MotionHub via AI",
+    "shortDescription": "Run your production from chat",
+    "supportURL": "https://motionhub.ai/contact",
     "termsOfServiceURL": "https://motionhub.ai/terms",
-    "websiteURL": "https://motionhub.ai"
+    "websiteURL": "https://motionhub.ai",
+    "logo": "./assets/logo.png",
+    "composerIcon": "./assets/logo.png"
   },
   "name": "app-69ce7b449dcc8191a8ef19126603c239",
-  "version": "2.0.0"
-}
\ No newline at end of file
+  "version": "3.0.1",
+  "extensions": {
+    "com.openai": {
+      "review": {
+        "test_cases": {
+          "positive": [
+            {
+              "description": "List the projects the connected user can access \u2014 the usual entry point before any other tool.",
+              "prompt": "What projects do I have access to in MotionHub?",
+              "tools_triggered": "project_list",
+              "expected_behavior": "Returns the projects the authenticated user is a member of, each with its name, status and a link into MotionHub. Projects the user cannot access are not listed."
+            },
+            {
+              "description": "Semantic media search \u2014 finds clips by meaning rather than by keyword, the app's most distinctive read workflow.",
+              "prompt": "Find clips in Demo Project One where people talk about fashion.",
+              "tools_triggered": "media_semantic_search",
+              "expected_behavior": "Returns matching media items ranked by relevance, including ones whose transcript or AI analysis covers the topic without using the exact word, each with a link to the clip in MotionHub."
+            },
+            {
+              "description": "Create a task \u2014 exercises a write tool and the client's write-confirmation path.",
+              "prompt": "Create a task in Demo Project One called 'Confirm location permits' and assign it to me, due next Friday.",
+              "tools_triggered": "task_create",
+              "expected_behavior": "Asks the user to confirm the write, then creates the task and returns it with its title, assignee, due date and a link. The task appears in a following task_list call."
+            },
+            {
+              "description": "Scheduling edge case \u2014 a conflict check must surface an existing clash rather than silently double-booking.",
+              "prompt": "Is anyone already booked on the 14th in Demo Project One, and what else is scheduled that week?",
+              "tools_triggered": "calendar_check_user_conflicts, calendar_event_list",
+              "expected_behavior": "Reports any overlapping bookings for the crew in question and lists the events scheduled that week. If there are no clashes it says so explicitly rather than returning an empty result with no explanation."
+            },
+            {
+              "description": "Permission edge case \u2014 budget access follows the user's Budget Role, so a user without one must be refused, not served partial figures.",
+              "prompt": "Show me the cost report for Demo Project One \u2014 budget against actual spend.",
+              "tools_triggered": "budget_cost_report",
+              "expected_behavior": "For a user with a Budget Role, returns budget vs committed vs actual vs variance by schedule. For a user without one, returns a clear permission message and no financial figures."
+            }
+          ],
+          "negative": [
+            {
+              "description": "General knowledge unrelated to production management \u2014 no tool should be called.",
+              "prompt": "What is the capital of France?"
+            },
+            {
+              "description": "Nearby but out of scope \u2014 MotionHub manages media metadata and does not edit or render video.",
+              "prompt": "Edit this video to add a colour grade and export it as an MP4."
+            },
+            {
+              "description": "Nearby but out of scope \u2014 the app has no tool that composes or sends a message to a person on the user's behalf.",
+              "prompt": "Email the production team to tell them tomorrow's call time has moved."
+            }
+          ]
+        }
+      },
+      "publication": {
+        "release_notes": "Tool annotations corrected after review: openWorldHint is now true on every tool that can email people or sync to the account's connected Xero organisation (budget_po_submit, budget_po_transition, budget_po_convert_to_actual, budget_actual_create, budget_actual_update, budget_actual_post, project_update_status), and conservatively on project_create and project_assign_user, which change what other account members can access. budget_po_create and budget_po_update gain an optional supplier reference field; neither contacts Xero itself. Tool descriptions now disclose these side effects."
+      }
+    }
+  },
+  "mcpServers": "./.mcp.json",
+  "apps": "./.app.json"
+}
Full technical diff · 6 changed fields

changed /files/.app.json/sha256

BEFORE
"f91d329d6184b3fe784ff24f723a5d3f89acc1a1589066ad8e89e1273bd82778"
AFTER
"2fd7d11d2d5de82911549c6b27aac43acbbb5845d00a5e01b354d8f3be0edbcb"

changed /files/.app.json/size

BEFORE
127
AFTER
101

changed /files/.codex-plugin~1plugin.json/sha256

BEFORE
"bb032fed7cb66c67c29576f285184d1c56baf9b12e98adeeb3d6be779336c8c4"
AFTER
"ff70ad0f3e909f94e537e216340b2f2a12d29f79fb16089455a08a3a7ae1eba5"

changed /files/.codex-plugin~1plugin.json/size

BEFORE
1231
AFTER
8693

added /files/.mcp.json

BEFORE
Field was absent
AFTER
{
  "sha256": "811a934aad4d1ffa15239fc9161cdf4b24dd0a9c7bc60844f95ba87fa366fa01",
  "size": 95
}

added /files/assets~1logo.png

BEFORE
Field was absent
AFTER
{
  "sha256": "593a6c43a7897629f4041c3ff198cb7ee972e2d4ee798e23ac508ea72d354d0d",
  "size": 14315
}
Full snapshot data
{
  "files": {
    ".app.json": {
      "sha256": "2fd7d11d2d5de82911549c6b27aac43acbbb5845d00a5e01b354d8f3be0edbcb",
      "size": 101
    },
    ".codex-plugin/plugin.json": {
      "sha256": "ff70ad0f3e909f94e537e216340b2f2a12d29f79fb16089455a08a3a7ae1eba5",
      "size": 8693
    },
    ".mcp.json": {
      "sha256": "811a934aad4d1ffa15239fc9161cdf4b24dd0a9c7bc60844f95ba87fa366fa01",
      "size": 95
    },
    "assets/logo.png": {
      "sha256": "593a6c43a7897629f4041c3ff198cb7ee972e2d4ee798e23ac508ea72d354d0d",
      "size": 14315
    }
  }
}

SHA-256 of public snapshot: dd643a61e598131f92db07faf72916402839afbccfdf0bc756c6ff369b79eec1