Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 14 additions & 0 deletions codex-rs/app-server-protocol/schema/json/v2/AppsReadResponse.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 5 additions & 0 deletions codex-rs/app-server-protocol/src/protocol/v2/apps.rs
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,11 @@ pub struct AppToolSummary {
pub name: String,
pub title: Option<String>,
pub description: String,
#[serde(default = "default_enabled")]
pub is_enabled: bool,
pub disabled_reason: Option<String>,
#[serde(default)]
pub is_read_only: bool,
}

#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, JsonSchema, TS)]
Expand Down
9 changes: 6 additions & 3 deletions codex-rs/app-server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -1990,7 +1990,10 @@ instead of failing the whole request.
{
"name": "search",
"title": "Search",
"description": "Search the app."
"description": "Search the app.",
"isEnabled": true,
"disabledReason": null,
"isReadOnly": true
}
]
}
Expand All @@ -2004,8 +2007,8 @@ account/workspace identity, then makes at most one `POST /ps/apps/batch` for mis
expired ids. `includeTools` defaults to false and is forwarded as `include_tools`; a fresh
metadata-only cache entry is refetched when tool summaries are requested. Backend or transport
failures return an RPC error without replacing existing cache records. Its metadata shape can
include display-only public tool summaries and intentionally excludes runtime state, MCP tool
state, full actions, and model descriptions.
include display-only public tool summaries with enabled/read-only state and intentionally excludes
runtime state, MCP tool state, full actions, and model descriptions.

Connected apps may override the thread's approval reviewer in `config.toml`.
Use `apps._default.approvals_reviewer` to set the reviewer for all apps, and a
Expand Down
6 changes: 6 additions & 0 deletions codex-rs/app-server/src/app_info.rs
Original file line number Diff line number Diff line change
Expand Up @@ -89,11 +89,17 @@ pub(crate) fn connector_metadata_to_api(metadata: ConnectorMetadata) -> ApiConne
name,
title,
description,
is_enabled,
disabled_reason,
is_read_only,
} = tool;
ApiAppToolSummary {
name,
title,
description,
is_enabled,
disabled_reason,
is_read_only,
}
})
.collect()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -477,7 +477,7 @@ fn record_legacy_apps_installed_duration(started_at: Instant, reload: bool) {
);
}
}
const APP_READ_MAX_IDS: usize = 100;
pub(super) const APP_READ_MAX_IDS: usize = 100;

enum AppListLoadResult {
Accessible(Result<AccessibleConnectorsStatus, String>),
Expand Down
Loading
Loading