Skip to content
Draft
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
4ea90d1
feat: experimental OpenAI Apps SDK compatibility
ochafik Dec 16, 2025
28a3924
feat: add cross-platform support for OpenAI Apps SDK
ochafik Dec 16, 2025
38e098c
test: update Three.js golden snapshot
ochafik Dec 17, 2025
c4ac06e
Fix Unknown message type error for tool notifications
ochafik Dec 17, 2025
4e1380a
Add tests for notification handler fixes
ochafik Dec 17, 2025
f10e178
Fix null toolOutput being sent as text 'null'
ochafik Dec 17, 2025
e554054
Fix double-stringification of toolOutput in OpenAI transport
ochafik Dec 17, 2025
a5ad9e4
Add structuredContent support to OpenAI transport
ochafik Dec 17, 2025
35dc00a
style: format OpenAI transport
ochafik Jan 7, 2026
d6048d8
fix: include autoResize option in useApp hook
ochafik Jan 8, 2026
c261e67
feat: experimental OpenAI Apps SDK compatibility
ochafik Dec 16, 2025
5014876
feat: add cross-platform support for OpenAI Apps SDK
ochafik Dec 16, 2025
1df66a3
test: update Three.js golden snapshot
ochafik Dec 17, 2025
32cfe58
Fix Unknown message type error for tool notifications
ochafik Dec 17, 2025
c6d5a6d
Add tests for notification handler fixes
ochafik Dec 17, 2025
ca12b5b
Fix null toolOutput being sent as text 'null'
ochafik Dec 17, 2025
b320fda
Fix double-stringification of toolOutput in OpenAI transport
ochafik Dec 17, 2025
d0a9096
Add structuredContent support to OpenAI transport
ochafik Dec 17, 2025
e3acd70
style: format OpenAI transport
ochafik Jan 7, 2026
a171447
fix: include autoResize option in useApp hook
ochafik Jan 8, 2026
3862794
docs: add OpenAI to MCP Apps SDK migration guide
ochafik Jan 13, 2026
6d2bac5
feat(openai): Add widget state management and file operations
ochafik Jan 13, 2026
e97a571
fix(openai): Use main's request-based updateModelContext API
ochafik Jan 13, 2026
e119d64
feat(openai): Forward runtime context changes and add safe area handling
ochafik Jan 14, 2026
7b4f76d
feat(examples): Add debug-server for comprehensive SDK testing
ochafik Jan 14, 2026
439d562
docs(examples): Add README for debug-server
ochafik Jan 14, 2026
e1fd055
feat(debug-server): Add file logging with debug-log tool
ochafik Jan 14, 2026
2d0f1cc
update
ochafik Jan 14, 2026
06af4d3
style: formatting fixes
ochafik Jan 15, 2026
786cf5d
Merge origin/main into ochafik/openai-compatibility
ochafik Jan 15, 2026
a7e8dd4
chore: update package-lock.json after merge
ochafik Jan 15, 2026
a933249
Merge remote-tracking branch 'origin/main' into ochafik/openai-compat…
ochafik Jan 15, 2026
e0a587c
Merge origin/ochafik/openai-compatibility
ochafik Jan 15, 2026
0213587
Merge remote-tracking branch 'origin/main' into ochafik/openai-compat…
ochafik Jan 16, 2026
8b41397
test(openai): add comprehensive tests and widget state support
ochafik Jan 16, 2026
610fc03
test(openai): remove E2E tests, keep comprehensive unit tests
ochafik Jan 16, 2026
47d53de
Merge remote-tracking branch 'origin/main' into ochafik/openai-compat…
ochafik Jan 19, 2026
33b58e0
fix: regenerate package-lock.json with valid @types/node version
ochafik Jan 19, 2026
1f431d0
Merge remote-tracking branch 'origin/main' into ochafik/openai-compat…
ochafik Jan 19, 2026
1019f0a
Merge remote-tracking branch 'origin/main' into ochafik/openai-compat…
ochafik Jan 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Merge origin/main into ochafik/openai-compatibility
  • Loading branch information
ochafik committed Jan 15, 2026
commit 786cf5df9b0311e5e5608eeb14c6af2e61b92a70
5 changes: 4 additions & 1 deletion src/react/useApp.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ export interface UseAppOptions {
*/
experimentalOAICompatibility?: boolean;
/**
* Called after App is created but before connection.
* Called after {@link App} is created but before connection.
*
* Use this to register request/notification handlers that need to be in place
* before the initialization handshake completes.
Expand Down Expand Up @@ -79,6 +79,9 @@ export interface AppState {
*
* **Important**: The hook intentionally does NOT re-run when options change
* to avoid reconnection loops. Options are only used during the initial mount.
* Furthermore, the `App` instance is NOT closed on unmount. This avoids cleanup
* issues during React Strict Mode's double-mount cycle. If you need to
* explicitly close the `App`, call {@link App.close} manually.
*
* **Note**: This is part of the optional React integration. The core SDK
* (App, PostMessageTransport, OpenAITransport) is framework-agnostic and can be
Expand Down
5 changes: 3 additions & 2 deletions src/server/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,8 @@ export const OPENAI_RESOURCE_SUFFIX = "+skybridge";
export const OPENAI_MIME_TYPE = "text/html+skybridge";

/**
* Tool configuration (same as McpServer.registerTool).
* Base tool configuration matching the standard MCP server tool options.
* Extended by {@link McpUiAppToolConfig} to add UI metadata requirements.
*/
export interface ToolConfig {
title?: string;
Expand Down Expand Up @@ -247,7 +248,7 @@ export function registerAppTool<
* Register an app resource with dual MCP/OpenAI support.
*
* This is a convenience wrapper around `server.registerResource` that:
* - Defaults the MIME type to "text/html;profile=mcp-app"
* - Defaults the MIME type to {@link RESOURCE_MIME_TYPE} (`"text/html;profile=mcp-app"`)
* - Registers both MCP and OpenAI variants for cross-platform compatibility
*
* Registers two resources:
Expand Down
Binary file modified tests/e2e/servers.spec.ts-snapshots/threejs.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
You are viewing a condensed version of this merge commit. You can view the full changes here.