← AirPrompterCONTENT HISTORY

Update to AirPrompter

Snapshot Nov 3, 2026 · 06:11 UTC · version 1.2.4

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 AirPrompter and check future changes in Following.

Up to 3 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

Oct 10, 2026 · 06:02 UTC

08717b32f8681380d3782da2a9403d551dec429c5889fbbb0ff16ba0a141aa6a

After

Nov 3, 2026 · 06:11 UTC

bec3ab866cd59daab1d6f4f08edb2b82219568a6977a4f444056fd82756862bd

Package file

Before

Oct 10, 2026 · 06:02 UTC

127

After

Nov 3, 2026 · 06:11 UTC

103

Package file

Before

Oct 10, 2026 · 06:02 UTC

440af0e61718981ea1b4d00930a982d582a9f710cf5eaf2512e6b45b65195d37

After

Nov 3, 2026 · 06:11 UTC

aa65ada8ade4f2e6c4ff6bc31781a492aeb3f5535466664c3172bf8cd9a4c6a4

Package file

Before

Oct 10, 2026 · 06:02 UTC

2274

After

Nov 3, 2026 · 06:11 UTC

3128

Compare saved observations

Download comparison JSON

.codex-plugin/plugin.json

− removed · + added

--- before
+++ after
@@ -1,16 +1,17 @@
 {
-  "apps": "./.app.json",
   "author": {
     "name": "AirPrompter LLC"
   },
-  "description": "AirPrompter brings saved AirPrompter prompts and saved AirPrompter workflows into ChatGPT. Users can diagnose the connection, find and inspect saved content, review workflow steps, create and revise reusable prompts, and run workflows with ChatGPT carrying out each step. When a user asks to run, invoke, use, or continue a workflow or saved prompt, use AirPrompter even if they do not name it. AirPrompter also provides planning and draft-authoring guidance, remembers authoring preferences the user chooses to save, and supports authorized personal and team libraries. Saving or updating content is a separate action from reviewing or drafting it. A generic software workflow explanation, such as how GitHub Actions works, does not invoke AirPrompter unless the user asks to run one of their workflows.",
+  "description": "AirPrompter connects ChatGPT and Codex to saved prompts and workflows, also called AirPrompter skills. Find and inspect saved items, create and revise reusable instructions, import or export supported skill packages, run saved workflows, and diagnose the selected connection. The host carries out returned steps using its available capabilities. Saved-item operations use the selected AirPrompter environment and linked account throughout. Repository maintenance, documentation questions, and generic local skill creation do not require saved-item discovery or execution. Prompt and workflow saves are separate from drafting and review. Some Team edits require revision review before execution; available operations depend on the connected server and account permissions.",
   "interface": {
     "capabilities": [],
     "category": "Productivity",
+    "composerIcon": "./assets/icon.png",
     "defaultPrompt": null,
     "developerName": "AirPrompter LLC",
     "displayName": "AirPrompter",
-    "longDescription": "AirPrompter brings saved AirPrompter prompts and saved AirPrompter workflows into ChatGPT. Users can diagnose the connection, find and inspect saved content, review workflow steps, create and revise reusable prompts, and run workflows with ChatGPT carrying out each step. When a user asks to run, invoke, use, or continue a workflow or saved prompt, use AirPrompter even if they do not name it. AirPrompter also provides planning and draft-authoring guidance, remembers authoring preferences the user chooses to save, and supports authorized personal and team libraries. Saving or updating content is a separate action from reviewing or drafting it. A generic software workflow explanation, such as how GitHub Actions works, does not invoke AirPrompter unless the user asks to run one of their workflows.",
+    "longDescription": "AirPrompter connects ChatGPT and Codex to saved prompts and workflows, also called AirPrompter skills. Find and inspect saved items, create and revise reusable instructions, import or export supported skill packages, run saved workflows, and diagnose the selected connection. The host carries out returned steps using its available capabilities. Saved-item operations use the selected AirPrompter environment and linked account throughout. Repository maintenance, documentation questions, and generic local skill creation do not require saved-item discovery or execution. Prompt and workflow saves are separate from drafting and review. Some Team edits require revision review before execution; available operations depend on the connected server and account permissions.",
+    "logo": "./assets/logo.png",
     "privacyPolicyURL": "https://airprompter.com/privacy",
     "shortDescription": "Use prompts and workflows",
     "supportURL": "https://airprompter.com/support",
@@ -19,5 +20,14 @@
   },
   "name": "app-6a30ab89b10081919f808589e24e08ac",
   "skills": "./skills",
-  "version": "1.1.0"
-}
\ No newline at end of file
+  "version": "1.2.4",
+  "mcpServers": "./.mcp.json",
+  "extensions": {
+    "com.openai": {
+      "publication": {
+        "release_notes": "1.2.4 updates the bundled AirPrompter skill only. Since 1.2.2: one fast path for running a saved skill or workflow, with bundled helper files installed into the person's own AirPrompter folder and checked before use; a single safe retry when a host's saved tool list does not yet accept newer optional inputs; at most three setup questions, the rest stated as assumptions the person can correct; one confirmation in the person's own words before each new save; clearer guidance on skill references, checkpoints and handoffs. Production MCP origin, OAuth configuration and published tool definitions are unchanged by this package. Source: prompt-haven main 1e7f5da75 (PRs #1457, #1463, #1469, #1472, #1481)."
+      }
+    }
+  },
+  "apps": "./.app.json"
+}
Full technical diff · 32 changed fields

changed /files/.app.json/sha256

BEFORE
"08717b32f8681380d3782da2a9403d551dec429c5889fbbb0ff16ba0a141aa6a"
AFTER
"bec3ab866cd59daab1d6f4f08edb2b82219568a6977a4f444056fd82756862bd"

changed /files/.app.json/size

BEFORE
127
AFTER
103

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

BEFORE
"440af0e61718981ea1b4d00930a982d582a9f710cf5eaf2512e6b45b65195d37"
AFTER
"aa65ada8ade4f2e6c4ff6bc31781a492aeb3f5535466664c3172bf8cd9a4c6a4"

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

BEFORE
2274
AFTER
3128

added /files/.mcp.json

BEFORE
Field was absent
AFTER
{
  "sha256": "b68bcea5aaea1e1d6923234253f90874b5df1e988ffcd6e9031907c78b31c437",
  "size": 122
}

added /files/assets~1icon.png

BEFORE
Field was absent
AFTER
{
  "sha256": "a458f26e3218a5468b0e4d11edc80d20da20d03afd688b907d38d9e7336398fe",
  "size": 25099
}

added /files/assets~1logo.png

BEFORE
Field was absent
AFTER
{
  "sha256": "a458f26e3218a5468b0e4d11edc80d20da20d03afd688b907d38d9e7336398fe",
  "size": 25099
}

changed /files/skills~1airprompter~1SKILL.md/sha256

BEFORE
"1ca24927df26211850071cd3ac066007a96ddbf5bdd67406e217a7b20f088565"
AFTER
"8bc702c4c6d1960466398924f09641a02212d8f8b9057047c1cf22c3e8be5ed4"

changed /files/skills~1airprompter~1SKILL.md/size

BEFORE
5303
AFTER
8791

changed /files/skills~1airprompter~1agents~1openai.yaml/sha256

BEFORE
"4acbb4dfcca3a77cc25e9b67246e4006a4dd7976b37d2d4829ccde3b879f5874"
AFTER
"d162b9475ed8816fa8f91f7f32928df678592794db354b3aa5491d3f5582a2d3"

changed /files/skills~1airprompter~1agents~1openai.yaml/size

BEFORE
218
AFTER
219

added /files/skills~1airprompter~1references~1activation-cases.md

BEFORE
Field was absent
AFTER
{
  "sha256": "091db61ff8a4c038e61de3fbfcf77934714bf2ec9c0cf89057e1368490ca243f",
  "size": 4427
}

changed /files/skills~1airprompter~1references~1ambiguity-handling.md/sha256

BEFORE
"530a2a2984ab217ebda9db66a6161a2c8000bef86327287613bdd3b57dca0673"
AFTER
"ea62f74f7dbf122c94381dadfcec6dff904b1307de22035331375a625f51a9fc"

changed /files/skills~1airprompter~1references~1ambiguity-handling.md/size

BEFORE
1156
AFTER
1857

added /files/skills~1airprompter~1references~1connection-selection.md

BEFORE
Field was absent
AFTER
{
  "sha256": "a6f55d6b2400f244abc66d533d84561564890a905e8d2487c71e756534091298",
  "size": 6220
}

added /files/skills~1airprompter~1references~1local-install.md

BEFORE
Field was absent
AFTER
{
  "sha256": "2712be742ec2d7ecd5b372dcab1333a34a53b4d22eefbab45e2118f4840a0a82",
  "size": 17038
}

changed /files/skills~1airprompter~1references~1prompt-authoring.md/sha256

BEFORE
"04ead8c2dc93978826f49bdfcd73f9b3a6577cade7f4c8e6fa372d5003cbed53"
AFTER
"1c1190005bbe11eb0359faf1e35e029c9c49ddf7ea8e08a3096d335251496841"

changed /files/skills~1airprompter~1references~1prompt-authoring.md/size

BEFORE
4591
AFTER
14315

changed /files/skills~1airprompter~1references~1run-context-continuation.md/sha256

BEFORE
"7aeb73fcb4b2b5662d251774a9ae7dbef8d579d7c7c3f01ccf4f380c5763ecea"
AFTER
"78f6a594e3777155b4c23f1700f6f506790ef746d5d3cbd30a5c3efe30849e6b"

changed /files/skills~1airprompter~1references~1run-context-continuation.md/size

BEFORE
1369
AFTER
2228

changed /files/skills~1airprompter~1references~1setup-diagnostics.md/sha256

BEFORE
"6ed5a2169e84729d0319a65954d15f3c0ea7f92218bfdca14eafdc853118954a"
AFTER
"3a3563fdb5ed5130188e80b0383f2f4082a3d1951e8d90faba11e5a51fb8bc94"

changed /files/skills~1airprompter~1references~1setup-diagnostics.md/size

BEFORE
2783
AFTER
4209

added /files/skills~1airprompter~1references~1skill-authoring.md

BEFORE
Field was absent
AFTER
{
  "sha256": "710a45f7a99ff69d8a39eaffac22468465b80a761ae19b5b6fb4a794354b0f1b",
  "size": 15281
}

changed /files/skills~1airprompter~1references~1skill-import.md/sha256

BEFORE
"984204bd787d87ffe61984b6fbbba7721779387eba97186606634428e7b2eaaa"
AFTER
"d1aae295674f20ed5ba99b8d97d4914a69c445a74e4d7af6c25fa744d95d8616"

changed /files/skills~1airprompter~1references~1skill-import.md/size

BEFORE
1514
AFTER
6338

changed /files/skills~1airprompter~1references~1workflow-execution.md/sha256

BEFORE
"3bb89bc21b7a87f503c3ae6d20356cae9eee740a5879e2989608a93ef5d02077"
AFTER
"c33f9bac614a8be4610b03f807839e734961428358e84a07c57972b3b1293e95"

changed /files/skills~1airprompter~1references~1workflow-execution.md/size

BEFORE
3500
AFTER
11772

added /files/skills~1airprompter~1scripts~1install

BEFORE
Field was absent
AFTER
{
  "sha256": "703305c0e51a34c3a10ca9dd5ed6ed6bd0545de241250b9d9533933bd688c8c4",
  "size": 330
}

added /files/skills~1airprompter~1scripts~1install.ps1

BEFORE
Field was absent
AFTER
{
  "sha256": "0d0e10b75c05a7b7a5d4279118d781add32ccbf737c58e06903cd5c4c2b12eea",
  "size": 351
}

added /files/skills~1airprompter~1scripts~1install_runtime.py

BEFORE
Field was absent
AFTER
{
  "sha256": "9e225ce50fc194ce94636aeee6a42450710b237c41200ea928f4962bdd1fc0ba",
  "size": 54775
}

added /files/skills~1airprompter~1scripts~1verify

BEFORE
Field was absent
AFTER
{
  "sha256": "4397f1a9786c09cbda473acb1d8b7d1f6916212bf0e83e16b232d7a6bafc4921",
  "size": 319
}

added /files/skills~1airprompter~1scripts~1verify.ps1

BEFORE
Field was absent
AFTER
{
  "sha256": "25875985056ee1c0d9577fc91c2240c19d350719b66d7af0ac81b91c72a1c3ea",
  "size": 343
}
Full snapshot data
{
  "files": {
    ".app.json": {
      "sha256": "bec3ab866cd59daab1d6f4f08edb2b82219568a6977a4f444056fd82756862bd",
      "size": 103
    },
    ".codex-plugin/plugin.json": {
      "sha256": "aa65ada8ade4f2e6c4ff6bc31781a492aeb3f5535466664c3172bf8cd9a4c6a4",
      "size": 3128
    },
    ".mcp.json": {
      "sha256": "b68bcea5aaea1e1d6923234253f90874b5df1e988ffcd6e9031907c78b31c437",
      "size": 122
    },
    "assets/icon.png": {
      "sha256": "a458f26e3218a5468b0e4d11edc80d20da20d03afd688b907d38d9e7336398fe",
      "size": 25099
    },
    "assets/logo.png": {
      "sha256": "a458f26e3218a5468b0e4d11edc80d20da20d03afd688b907d38d9e7336398fe",
      "size": 25099
    },
    "skills/airprompter/SKILL.md": {
      "sha256": "8bc702c4c6d1960466398924f09641a02212d8f8b9057047c1cf22c3e8be5ed4",
      "size": 8791
    },
    "skills/airprompter/agents/openai.yaml": {
      "sha256": "d162b9475ed8816fa8f91f7f32928df678592794db354b3aa5491d3f5582a2d3",
      "size": 219
    },
    "skills/airprompter/references/activation-cases.md": {
      "sha256": "091db61ff8a4c038e61de3fbfcf77934714bf2ec9c0cf89057e1368490ca243f",
      "size": 4427
    },
    "skills/airprompter/references/ambiguity-handling.md": {
      "sha256": "ea62f74f7dbf122c94381dadfcec6dff904b1307de22035331375a625f51a9fc",
      "size": 1857
    },
    "skills/airprompter/references/connection-selection.md": {
      "sha256": "a6f55d6b2400f244abc66d533d84561564890a905e8d2487c71e756534091298",
      "size": 6220
    },
    "skills/airprompter/references/image-workflows.md": {
      "sha256": "6f4cd0aaaa70bdbd1c97e0a6522bc55c38d31e07d3fc7a06f87ff5d941b1eddd",
      "size": 1528
    },
    "skills/airprompter/references/local-install.md": {
      "sha256": "2712be742ec2d7ecd5b372dcab1333a34a53b4d22eefbab45e2118f4840a0a82",
      "size": 17038
    },
    "skills/airprompter/references/prompt-authoring.md": {
      "sha256": "1c1190005bbe11eb0359faf1e35e029c9c49ddf7ea8e08a3096d335251496841",
      "size": 14315
    },
    "skills/airprompter/references/run-context-continuation.md": {
      "sha256": "78f6a594e3777155b4c23f1700f6f506790ef746d5d3cbd30a5c3efe30849e6b",
      "size": 2228
    },
    "skills/airprompter/references/setup-diagnostics.md": {
      "sha256": "3a3563fdb5ed5130188e80b0383f2f4082a3d1951e8d90faba11e5a51fb8bc94",
      "size": 4209
    },
    "skills/airprompter/references/skill-authoring.md": {
      "sha256": "710a45f7a99ff69d8a39eaffac22468465b80a761ae19b5b6fb4a794354b0f1b",
      "size": 15281
    },
    "skills/airprompter/references/skill-import.md": {
      "sha256": "d1aae295674f20ed5ba99b8d97d4914a69c445a74e4d7af6c25fa744d95d8616",
      "size": 6338
    },
    "skills/airprompter/references/workflow-execution.md": {
      "sha256": "c33f9bac614a8be4610b03f807839e734961428358e84a07c57972b3b1293e95",
      "size": 11772
    },
    "skills/airprompter/scripts/install": {
      "sha256": "703305c0e51a34c3a10ca9dd5ed6ed6bd0545de241250b9d9533933bd688c8c4",
      "size": 330
    },
    "skills/airprompter/scripts/install.ps1": {
      "sha256": "0d0e10b75c05a7b7a5d4279118d781add32ccbf737c58e06903cd5c4c2b12eea",
      "size": 351
    },
    "skills/airprompter/scripts/install_runtime.py": {
      "sha256": "9e225ce50fc194ce94636aeee6a42450710b237c41200ea928f4962bdd1fc0ba",
      "size": 54775
    },
    "skills/airprompter/scripts/verify": {
      "sha256": "4397f1a9786c09cbda473acb1d8b7d1f6916212bf0e83e16b232d7a6bafc4921",
      "size": 319
    },
    "skills/airprompter/scripts/verify.ps1": {
      "sha256": "25875985056ee1c0d9577fc91c2240c19d350719b66d7af0ac81b91c72a1c3ea",
      "size": 343
    }
  }
}

SHA-256 of public snapshot: a1871515093eaf8086df89a9e25558a76ffa746740db83f24a36acc7c3c258d2