From c7618dda8d9ea82e8d5d86ac3c4fb7bf92e91d57 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 18 Sep 2026 15:21:25 +0000 Subject: [PATCH] Version Packages --- .../20260904140000-inline-mcp-and-skills.md | 5 - .changeset/agent-clone-drawer.md | 5 - .changeset/dry-laws-fetch.md | 5 - .changeset/mcp-api-key-bearer-hint.md | 5 - .changeset/monaco-shell-preload.md | 5 - .changeset/openui-chart-plot-bias.md | 5 - .changeset/pre.json | 4 - ...60826173936-regenerate-sdk-from-openapi.md | 5 - ...60827190410-regenerate-sdk-from-openapi.md | 5 - .../pre/20260827210200-session-metrics.md | 6 - ...60827213832-regenerate-sdk-from-openapi.md | 5 - .../pre/20260827234700-session-metrics-api.md | 6 - .../20260831083812-session-metrics-fold.md | 6 - .../20260901200000-composer-design-refresh.md | 5 - .../pre/20260901205645-agent-metadata.md | 5 - .../pre/20260902143524-agent-external-id.md | 5 - .../20260902194500-truefoundry-agent-store.md | 5 - .../pre/20260903010000-drop-agent-metadata.md | 5 - .../pre/20260903013000-reserve-agent-names.md | 5 - ...04054931-truefoundry-agent-store-db-txn.md | 5 - ...20260904170300-composer-connector-logos.md | 5 - .../20260904173000-attachment-card-tile.md | 5 - .../20260907200000-sandbox-desired-skills.md | 6 - ...20260908014909-tfy-skills-catalog-proxy.md | 7 - ...60908071001-regenerate-sdk-from-openapi.md | 5 - ...60908121652-regenerate-sdk-from-openapi.md | 5 - .../pre/20260908173000-age-2128-fqn-skills.md | 6 - ...60908212006-regenerate-sdk-from-openapi.md | 5 - ...60909054805-regenerate-sdk-from-openapi.md | 5 - .changeset/pre/20260911-name-hyphen-only.md | 5 - ...60911065947-regenerate-sdk-from-openapi.md | 5 - ...60912205155-regenerate-sdk-from-openapi.md | 5 - ...60914082407-regenerate-sdk-from-openapi.md | 5 - ...60914190823-regenerate-sdk-from-openapi.md | 5 - ...60916102001-regenerate-sdk-from-openapi.md | 5 - ...60917043123-regenerate-sdk-from-openapi.md | 5 - .changeset/pre/abort-mcp-connect-timeout.md | 5 - .changeset/pre/adapter-sdk-code-snippets.md | 5 - .changeset/pre/add-agent-schedules-tab.md | 5 - .changeset/pre/add-documentation-links.md | 5 - .changeset/pre/advanced-agent-config.md | 5 - .../pre/age-2217-tenant-list-permissions.md | 6 - .changeset/pre/agent-chat-navigation.md | 5 - .changeset/pre/agent-code-snippets.md | 5 - .changeset/pre/agent-config-chrome.md | 5 - .../pre/agent-config-clickable-sections.md | 5 - .changeset/pre/agent-description-ui.md | 5 - .changeset/pre/agent-description.md | 5 - .changeset/pre/agent-library-details.md | 5 - .changeset/pre/agent-metric-chart-styling.md | 5 - .changeset/pre/agent-metrics-tab.md | 6 - .../pre/agent-model-settings-dropdown.md | 5 - .changeset/pre/agent-overflow-actions.md | 5 - .changeset/pre/agent-session-schedule-rbac.md | 8 - .../pre/agent-sessions-infinite-scroll.md | 5 - .changeset/pre/agent-sessions-list-bg.md | 5 - .changeset/pre/agent-sessions-tab.md | 5 - .changeset/pre/agent-snippet-token.md | 5 - .changeset/pre/agents-library-table-scroll.md | 5 - .../pre/allow-attachment-only-messages.md | 5 - .changeset/pre/approval-nav-banner.md | 5 - .changeset/pre/avatar-gradient-initial.md | 5 - .changeset/pre/boot-loader-status-text.md | 6 - .changeset/pre/boot-loading-spinner.md | 5 - .changeset/pre/brand-icon-wordmark.md | 6 - .../pre/build-agent-from-schedule-picker.md | 5 - .../pre/bump-assistant-ui-runtime-0-1-30.md | 6 - .../pre/bump-assistant-ui-runtime-0-1-31.md | 6 - .../pre/bump-assistant-ui-runtime-0-1-38.md | 6 - .../pre/bump-assistant-ui-runtime-0-1-41.md | 6 - .changeset/pre/cache-composer-catalogs.md | 5 - .changeset/pre/chat-delete-controls.md | 5 - .changeset/pre/clean-session-timeline.md | 5 - .changeset/pre/code-editor-copy-secondary.md | 5 - .../pre/code-mode-destructive-defaults.md | 6 - .../pre/code-snippets-trim-base-url-slash.md | 5 - .changeset/pre/compact-agent-config-sheets.md | 5 - .changeset/pre/composer-tools-count.md | 5 - .../pre/configurable-trueforge-schema.md | 5 - .changeset/pre/controller-entry-point.md | 5 - .changeset/pre/controller-server-mtls.md | 5 - .../pre/correct-builder-timeline-controls.md | 5 - .changeset/pre/create-turn-tfy-metadata.md | 5 - .changeset/pre/created-by-column.md | 6 - .changeset/pre/created-by-me-list-filter.md | 6 - .changeset/pre/created-by-subject-json.md | 6 - .changeset/pre/cron-schedules.md | 5 - .changeset/pre/custom-action-renderers.md | 5 - .../pre/daytona-permission-vs-invalid-key.md | 5 - .changeset/pre/daytona-request-timeouts.md | 6 - .../pre/direct-runtime-switch-clicks.md | 5 - .changeset/pre/dropdown-scrollbar-click.md | 5 - .changeset/pre/edit-configured-connectors.md | 5 - .changeset/pre/empty-screen-states.md | 5 - .changeset/pre/enforce-agent-authorizer.md | 5 - .changeset/pre/feature-agent-metric-cards.md | 5 - .../pre/filter-sessions-created-by-me.md | 6 - .../pre/fix-code-snippets-public-base-url.md | 6 - .changeset/pre/fluffy-bats-cry.md | 6 - .changeset/pre/frontend-base-path-env.md | 5 - .changeset/pre/funky-birds-cough.md | 7 - .changeset/pre/gate-settings-capability.md | 5 - .changeset/pre/gateway-tfy-metadata.md | 5 - .changeset/pre/google-sans-default-font.md | 5 - .../pre/hide-clear-chat-on-fresh-thread.md | 5 - .../pre/hide-unavailable-session-cost.md | 5 - .changeset/pre/interactive-turn-vend-token.md | 5 - .changeset/pre/internal-import-agents.md | 5 - .changeset/pre/lemon-lines-laugh.md | 6 - .changeset/pre/list-permissions-api.md | 6 - ...ist-sessions-metadata-deepobject-filter.md | 7 - .changeset/pre/live-mcp-auth.md | 6 - .changeset/pre/markdown-links-new-tab.md | 5 - .../pre/mcp-approval-destructive-default.md | 7 - .changeset/pre/mcp-idle-body-timeout.md | 5 - .../pre/mcp-invoke-headers-with-auth.md | 5 - .changeset/pre/mcp-list-no-pagination.md | 7 - .changeset/pre/mcp-max-response-bytes.md | 6 - .../pre/mcp-oauth-redirect-from-session.md | 5 - .changeset/pre/mcp-pill-preload-toggle.md | 5 - .../pre/mcp-selector-infinite-scroll.md | 5 - .changeset/pre/mcp-selector-interactions.md | 5 - .changeset/pre/mcp-selector-modal-revamp.md | 5 - .changeset/pre/mcp-server-manifest-union.md | 6 - .changeset/pre/mcp-server-store-auth.md | 5 - .changeset/pre/mcp-tool-approval-selection.md | 5 - .changeset/pre/mcp-tool-sections.md | 5 - .../pre/message-indicator-thinking-orb.md | 5 - .changeset/pre/modern-compaction-triggers.md | 7 - .changeset/pre/move-metrics-filter.md | 5 - .../pre/new-chat-capabilities-sandbox.md | 5 - .changeset/pre/new-chat-vs-new-agent.md | 5 - .changeset/pre/node-engines-22-14.md | 5 - .changeset/pre/oidc-allowed-emails.md | 5 - .changeset/pre/optional-server-lego-gates.md | 5 - .changeset/pre/optional-session-cost.md | 7 - .changeset/pre/overlay-slide-animation.md | 5 - .changeset/pre/paginate-list-agents.md | 7 - .changeset/pre/paginate-list-schedule-runs.md | 5 - .changeset/pre/plain-agent-names.md | 5 - .changeset/pre/plenty-books-itch.md | 6 - .changeset/pre/popover-select-flip.md | 5 - .changeset/pre/popover-select-portal.md | 5 - .changeset/pre/postgres-pool-idle-error.md | 5 - .../pre/postgres-redis-startup-access-logs.md | 5 - .changeset/pre/postgres-ssl-client-cert.md | 5 - .changeset/pre/postgres-ssl.md | 5 - .../pre/preserve-agent-builder-draft.md | 5 - .../pre/preserve-schedule-search-width.md | 5 - .changeset/pre/public-mcp-get.md | 5 - .changeset/pre/python-event-delta-helpers.md | 5 - .changeset/pre/python-use-in-code-snippets.md | 5 - .changeset/pre/quiet-chats-reset.md | 5 - .changeset/pre/railway-database-url.md | 5 - .changeset/pre/readonly-download-tooltip.md | 5 - .changeset/pre/recent-draft-history.md | 5 - .../pre/recheck-request-reply-heartbeat.md | 5 - .changeset/pre/redis-tfg-key-prefix.md | 6 - .changeset/pre/reduce-code-snippet-font.md | 5 - .../relative-sandbox-artifact-downloads.md | 5 - .../pre/remote-agent-description-name.md | 5 - .changeset/pre/remove-modal-preload-tools.md | 5 - .changeset/pre/resume-session-new-tab.md | 5 - .changeset/pre/runtime-config-drawer.md | 5 - .changeset/pre/runtime-ui-base-path.md | 5 - .changeset/pre/schedule-agent-id.md | 5 - .changeset/pre/schedule-isnew-drawer.md | 5 - .changeset/pre/schedule-list-pagination.md | 5 - .changeset/pre/schedule-list-runs.md | 5 - .changeset/pre/schedule-manual-run.md | 5 - .changeset/pre/schedule-recurrence-group.md | 5 - .changeset/pre/schedule-run-reason.md | 5 - .changeset/pre/schedule-runs-ui.md | 5 - .changeset/pre/schedule-session-turn.md | 5 - .changeset/pre/scheduled-turn-agent-token.md | 5 - .changeset/pre/schedules-lazy-agents.md | 5 - .changeset/pre/schedules-list-limit-100.md | 5 - .changeset/pre/schedules-side-drawer.md | 5 - .../sdk-internal-agents-get-code-snippets.md | 5 - .changeset/pre/session-external-id.md | 7 - .changeset/pre/session-list-delete-menu.md | 5 - .changeset/pre/session-metadata.md | 7 - .changeset/pre/session-rename-api.md | 5 - .changeset/pre/session-schedule-polish.md | 5 - .changeset/pre/session-source.md | 7 - .changeset/pre/settings-nav-selected.md | 5 - .changeset/pre/settings-route-capability.md | 5 - .changeset/pre/sfy-model-point-lookup.md | 5 - .../pre/show-agent-metric-statistics.md | 5 - .changeset/pre/sidebar-icon-rail.md | 5 - .changeset/pre/sidebar-text-token.md | 7 - .changeset/pre/simplify-save-agent.md | 5 - .../pre/simplify-use-in-code-snippets.md | 5 - .changeset/pre/skill-version-menu-scroll.md | 5 - .changeset/pre/skill-version-picker.md | 5 - .changeset/pre/skills-no-agent-vend-token.md | 5 - .changeset/pre/sour-suns-greet.md | 5 - .changeset/pre/split-draft-preferences.md | 5 - .changeset/pre/sqlite-wal-disk-full.md | 5 - .changeset/pre/tf-external-login.md | 5 - .changeset/pre/tf-mcp-auth-all-modes.md | 5 - .changeset/pre/tf-mcp-connect-auth.md | 7 - .changeset/pre/tf-mcp-gateway-bearer.md | 5 - .changeset/pre/tfg-per-server-mcp-headers.md | 5 - .changeset/pre/tfy-daytona-sandbox-mode.md | 5 - .changeset/pre/tfy-import-agent-id.md | 5 - .changeset/pre/tfy-sandbox-manifest-union.md | 7 - .../pre/tfy-sandbox-pwd-instructions.md | 5 - .../pre/tfy-tenant-provider-account-filter.md | 5 - .changeset/pre/thinking-orb-loader.md | 6 - .changeset/pre/trueforge-dual-vend-tokens.md | 5 - .changeset/pre/trueforge-postgres-schema.md | 5 - .../pre/truefoundry-ai-gateway-models.md | 7 - .../truefoundry-cache-control-ephemeral.md | 5 - .changeset/pre/truefoundry-managed-mcp.md | 6 - .changeset/pre/turn-llm-dedupe.md | 5 - .changeset/pre/turn-token-tooltip.md | 5 - .changeset/pre/turn-update-event.md | 7 - .changeset/pre/unified-page-header-chrome.md | 5 - .../pre/unified-request-context-auth.md | 5 - .changeset/pre/user-avatar-slot.md | 6 - .changeset/pre/user-permissions-v2.md | 5 - .changeset/pre/web-search-provider.md | 6 - .changeset/pre/weekly-days-before-time.md | 5 - .changeset/pre/wide-agent-config-panel.md | 5 - .changeset/pre/wider-sidebar-rail.md | 5 - .changeset/pre/windows-build-scripts.md | 7 - .changeset/turn-active-executor-id.md | 6 - .changeset/web-search-agent-spec.md | 5 - .github/fern/openapi/openapi.json | 2 +- docs/openapi.json | 2 +- packages/trueforge-core/CHANGELOG.md | 45 +++++ packages/trueforge-core/package.json | 2 +- packages/trueforge-sdk/CHANGELOG.md | 37 ++++ packages/trueforge-sdk/package.json | 2 +- packages/trueforge-sdk/src/BaseClient.ts | 4 +- packages/trueforge-sdk/src/version.ts | 2 +- packages/trueforge-ui/CHANGELOG.md | 158 ++++++++++++++++ packages/trueforge-ui/package.json | 2 +- packages/trueforge/CHANGELOG.md | 179 ++++++++++++++++++ packages/trueforge/package.json | 2 +- python/trueforge_sdk/pyproject.toml | 2 +- .../src/trueforge_sdk/core/client_wrapper.py | 4 +- 243 files changed, 431 insertions(+), 1226 deletions(-) delete mode 100644 .changeset/20260904140000-inline-mcp-and-skills.md delete mode 100644 .changeset/agent-clone-drawer.md delete mode 100644 .changeset/dry-laws-fetch.md delete mode 100644 .changeset/mcp-api-key-bearer-hint.md delete mode 100644 .changeset/monaco-shell-preload.md delete mode 100644 .changeset/openui-chart-plot-bias.md delete mode 100644 .changeset/pre.json delete mode 100644 .changeset/pre/20260826173936-regenerate-sdk-from-openapi.md delete mode 100644 .changeset/pre/20260827190410-regenerate-sdk-from-openapi.md delete mode 100644 .changeset/pre/20260827210200-session-metrics.md delete mode 100644 .changeset/pre/20260827213832-regenerate-sdk-from-openapi.md delete mode 100644 .changeset/pre/20260827234700-session-metrics-api.md delete mode 100644 .changeset/pre/20260831083812-session-metrics-fold.md delete mode 100644 .changeset/pre/20260901200000-composer-design-refresh.md delete mode 100644 .changeset/pre/20260901205645-agent-metadata.md delete mode 100644 .changeset/pre/20260902143524-agent-external-id.md delete mode 100644 .changeset/pre/20260902194500-truefoundry-agent-store.md delete mode 100644 .changeset/pre/20260903010000-drop-agent-metadata.md delete mode 100644 .changeset/pre/20260903013000-reserve-agent-names.md delete mode 100644 .changeset/pre/20260904054931-truefoundry-agent-store-db-txn.md delete mode 100644 .changeset/pre/20260904170300-composer-connector-logos.md delete mode 100644 .changeset/pre/20260904173000-attachment-card-tile.md delete mode 100644 .changeset/pre/20260907200000-sandbox-desired-skills.md delete mode 100644 .changeset/pre/20260908014909-tfy-skills-catalog-proxy.md delete mode 100644 .changeset/pre/20260908071001-regenerate-sdk-from-openapi.md delete mode 100644 .changeset/pre/20260908121652-regenerate-sdk-from-openapi.md delete mode 100644 .changeset/pre/20260908173000-age-2128-fqn-skills.md delete mode 100644 .changeset/pre/20260908212006-regenerate-sdk-from-openapi.md delete mode 100644 .changeset/pre/20260909054805-regenerate-sdk-from-openapi.md delete mode 100644 .changeset/pre/20260911-name-hyphen-only.md delete mode 100644 .changeset/pre/20260911065947-regenerate-sdk-from-openapi.md delete mode 100644 .changeset/pre/20260912205155-regenerate-sdk-from-openapi.md delete mode 100644 .changeset/pre/20260914082407-regenerate-sdk-from-openapi.md delete mode 100644 .changeset/pre/20260914190823-regenerate-sdk-from-openapi.md delete mode 100644 .changeset/pre/20260916102001-regenerate-sdk-from-openapi.md delete mode 100644 .changeset/pre/20260917043123-regenerate-sdk-from-openapi.md delete mode 100644 .changeset/pre/abort-mcp-connect-timeout.md delete mode 100644 .changeset/pre/adapter-sdk-code-snippets.md delete mode 100644 .changeset/pre/add-agent-schedules-tab.md delete mode 100644 .changeset/pre/add-documentation-links.md delete mode 100644 .changeset/pre/advanced-agent-config.md delete mode 100644 .changeset/pre/age-2217-tenant-list-permissions.md delete mode 100644 .changeset/pre/agent-chat-navigation.md delete mode 100644 .changeset/pre/agent-code-snippets.md delete mode 100644 .changeset/pre/agent-config-chrome.md delete mode 100644 .changeset/pre/agent-config-clickable-sections.md delete mode 100644 .changeset/pre/agent-description-ui.md delete mode 100644 .changeset/pre/agent-description.md delete mode 100644 .changeset/pre/agent-library-details.md delete mode 100644 .changeset/pre/agent-metric-chart-styling.md delete mode 100644 .changeset/pre/agent-metrics-tab.md delete mode 100644 .changeset/pre/agent-model-settings-dropdown.md delete mode 100644 .changeset/pre/agent-overflow-actions.md delete mode 100644 .changeset/pre/agent-session-schedule-rbac.md delete mode 100644 .changeset/pre/agent-sessions-infinite-scroll.md delete mode 100644 .changeset/pre/agent-sessions-list-bg.md delete mode 100644 .changeset/pre/agent-sessions-tab.md delete mode 100644 .changeset/pre/agent-snippet-token.md delete mode 100644 .changeset/pre/agents-library-table-scroll.md delete mode 100644 .changeset/pre/allow-attachment-only-messages.md delete mode 100644 .changeset/pre/approval-nav-banner.md delete mode 100644 .changeset/pre/avatar-gradient-initial.md delete mode 100644 .changeset/pre/boot-loader-status-text.md delete mode 100644 .changeset/pre/boot-loading-spinner.md delete mode 100644 .changeset/pre/brand-icon-wordmark.md delete mode 100644 .changeset/pre/build-agent-from-schedule-picker.md delete mode 100644 .changeset/pre/bump-assistant-ui-runtime-0-1-30.md delete mode 100644 .changeset/pre/bump-assistant-ui-runtime-0-1-31.md delete mode 100644 .changeset/pre/bump-assistant-ui-runtime-0-1-38.md delete mode 100644 .changeset/pre/bump-assistant-ui-runtime-0-1-41.md delete mode 100644 .changeset/pre/cache-composer-catalogs.md delete mode 100644 .changeset/pre/chat-delete-controls.md delete mode 100644 .changeset/pre/clean-session-timeline.md delete mode 100644 .changeset/pre/code-editor-copy-secondary.md delete mode 100644 .changeset/pre/code-mode-destructive-defaults.md delete mode 100644 .changeset/pre/code-snippets-trim-base-url-slash.md delete mode 100644 .changeset/pre/compact-agent-config-sheets.md delete mode 100644 .changeset/pre/composer-tools-count.md delete mode 100644 .changeset/pre/configurable-trueforge-schema.md delete mode 100644 .changeset/pre/controller-entry-point.md delete mode 100644 .changeset/pre/controller-server-mtls.md delete mode 100644 .changeset/pre/correct-builder-timeline-controls.md delete mode 100644 .changeset/pre/create-turn-tfy-metadata.md delete mode 100644 .changeset/pre/created-by-column.md delete mode 100644 .changeset/pre/created-by-me-list-filter.md delete mode 100644 .changeset/pre/created-by-subject-json.md delete mode 100644 .changeset/pre/cron-schedules.md delete mode 100644 .changeset/pre/custom-action-renderers.md delete mode 100644 .changeset/pre/daytona-permission-vs-invalid-key.md delete mode 100644 .changeset/pre/daytona-request-timeouts.md delete mode 100644 .changeset/pre/direct-runtime-switch-clicks.md delete mode 100644 .changeset/pre/dropdown-scrollbar-click.md delete mode 100644 .changeset/pre/edit-configured-connectors.md delete mode 100644 .changeset/pre/empty-screen-states.md delete mode 100644 .changeset/pre/enforce-agent-authorizer.md delete mode 100644 .changeset/pre/feature-agent-metric-cards.md delete mode 100644 .changeset/pre/filter-sessions-created-by-me.md delete mode 100644 .changeset/pre/fix-code-snippets-public-base-url.md delete mode 100644 .changeset/pre/fluffy-bats-cry.md delete mode 100644 .changeset/pre/frontend-base-path-env.md delete mode 100644 .changeset/pre/funky-birds-cough.md delete mode 100644 .changeset/pre/gate-settings-capability.md delete mode 100644 .changeset/pre/gateway-tfy-metadata.md delete mode 100644 .changeset/pre/google-sans-default-font.md delete mode 100644 .changeset/pre/hide-clear-chat-on-fresh-thread.md delete mode 100644 .changeset/pre/hide-unavailable-session-cost.md delete mode 100644 .changeset/pre/interactive-turn-vend-token.md delete mode 100644 .changeset/pre/internal-import-agents.md delete mode 100644 .changeset/pre/lemon-lines-laugh.md delete mode 100644 .changeset/pre/list-permissions-api.md delete mode 100644 .changeset/pre/list-sessions-metadata-deepobject-filter.md delete mode 100644 .changeset/pre/live-mcp-auth.md delete mode 100644 .changeset/pre/markdown-links-new-tab.md delete mode 100644 .changeset/pre/mcp-approval-destructive-default.md delete mode 100644 .changeset/pre/mcp-idle-body-timeout.md delete mode 100644 .changeset/pre/mcp-invoke-headers-with-auth.md delete mode 100644 .changeset/pre/mcp-list-no-pagination.md delete mode 100644 .changeset/pre/mcp-max-response-bytes.md delete mode 100644 .changeset/pre/mcp-oauth-redirect-from-session.md delete mode 100644 .changeset/pre/mcp-pill-preload-toggle.md delete mode 100644 .changeset/pre/mcp-selector-infinite-scroll.md delete mode 100644 .changeset/pre/mcp-selector-interactions.md delete mode 100644 .changeset/pre/mcp-selector-modal-revamp.md delete mode 100644 .changeset/pre/mcp-server-manifest-union.md delete mode 100644 .changeset/pre/mcp-server-store-auth.md delete mode 100644 .changeset/pre/mcp-tool-approval-selection.md delete mode 100644 .changeset/pre/mcp-tool-sections.md delete mode 100644 .changeset/pre/message-indicator-thinking-orb.md delete mode 100644 .changeset/pre/modern-compaction-triggers.md delete mode 100644 .changeset/pre/move-metrics-filter.md delete mode 100644 .changeset/pre/new-chat-capabilities-sandbox.md delete mode 100644 .changeset/pre/new-chat-vs-new-agent.md delete mode 100644 .changeset/pre/node-engines-22-14.md delete mode 100644 .changeset/pre/oidc-allowed-emails.md delete mode 100644 .changeset/pre/optional-server-lego-gates.md delete mode 100644 .changeset/pre/optional-session-cost.md delete mode 100644 .changeset/pre/overlay-slide-animation.md delete mode 100644 .changeset/pre/paginate-list-agents.md delete mode 100644 .changeset/pre/paginate-list-schedule-runs.md delete mode 100644 .changeset/pre/plain-agent-names.md delete mode 100644 .changeset/pre/plenty-books-itch.md delete mode 100644 .changeset/pre/popover-select-flip.md delete mode 100644 .changeset/pre/popover-select-portal.md delete mode 100644 .changeset/pre/postgres-pool-idle-error.md delete mode 100644 .changeset/pre/postgres-redis-startup-access-logs.md delete mode 100644 .changeset/pre/postgres-ssl-client-cert.md delete mode 100644 .changeset/pre/postgres-ssl.md delete mode 100644 .changeset/pre/preserve-agent-builder-draft.md delete mode 100644 .changeset/pre/preserve-schedule-search-width.md delete mode 100644 .changeset/pre/public-mcp-get.md delete mode 100644 .changeset/pre/python-event-delta-helpers.md delete mode 100644 .changeset/pre/python-use-in-code-snippets.md delete mode 100644 .changeset/pre/quiet-chats-reset.md delete mode 100644 .changeset/pre/railway-database-url.md delete mode 100644 .changeset/pre/readonly-download-tooltip.md delete mode 100644 .changeset/pre/recent-draft-history.md delete mode 100644 .changeset/pre/recheck-request-reply-heartbeat.md delete mode 100644 .changeset/pre/redis-tfg-key-prefix.md delete mode 100644 .changeset/pre/reduce-code-snippet-font.md delete mode 100644 .changeset/pre/relative-sandbox-artifact-downloads.md delete mode 100644 .changeset/pre/remote-agent-description-name.md delete mode 100644 .changeset/pre/remove-modal-preload-tools.md delete mode 100644 .changeset/pre/resume-session-new-tab.md delete mode 100644 .changeset/pre/runtime-config-drawer.md delete mode 100644 .changeset/pre/runtime-ui-base-path.md delete mode 100644 .changeset/pre/schedule-agent-id.md delete mode 100644 .changeset/pre/schedule-isnew-drawer.md delete mode 100644 .changeset/pre/schedule-list-pagination.md delete mode 100644 .changeset/pre/schedule-list-runs.md delete mode 100644 .changeset/pre/schedule-manual-run.md delete mode 100644 .changeset/pre/schedule-recurrence-group.md delete mode 100644 .changeset/pre/schedule-run-reason.md delete mode 100644 .changeset/pre/schedule-runs-ui.md delete mode 100644 .changeset/pre/schedule-session-turn.md delete mode 100644 .changeset/pre/scheduled-turn-agent-token.md delete mode 100644 .changeset/pre/schedules-lazy-agents.md delete mode 100644 .changeset/pre/schedules-list-limit-100.md delete mode 100644 .changeset/pre/schedules-side-drawer.md delete mode 100644 .changeset/pre/sdk-internal-agents-get-code-snippets.md delete mode 100644 .changeset/pre/session-external-id.md delete mode 100644 .changeset/pre/session-list-delete-menu.md delete mode 100644 .changeset/pre/session-metadata.md delete mode 100644 .changeset/pre/session-rename-api.md delete mode 100644 .changeset/pre/session-schedule-polish.md delete mode 100644 .changeset/pre/session-source.md delete mode 100644 .changeset/pre/settings-nav-selected.md delete mode 100644 .changeset/pre/settings-route-capability.md delete mode 100644 .changeset/pre/sfy-model-point-lookup.md delete mode 100644 .changeset/pre/show-agent-metric-statistics.md delete mode 100644 .changeset/pre/sidebar-icon-rail.md delete mode 100644 .changeset/pre/sidebar-text-token.md delete mode 100644 .changeset/pre/simplify-save-agent.md delete mode 100644 .changeset/pre/simplify-use-in-code-snippets.md delete mode 100644 .changeset/pre/skill-version-menu-scroll.md delete mode 100644 .changeset/pre/skill-version-picker.md delete mode 100644 .changeset/pre/skills-no-agent-vend-token.md delete mode 100644 .changeset/pre/sour-suns-greet.md delete mode 100644 .changeset/pre/split-draft-preferences.md delete mode 100644 .changeset/pre/sqlite-wal-disk-full.md delete mode 100644 .changeset/pre/tf-external-login.md delete mode 100644 .changeset/pre/tf-mcp-auth-all-modes.md delete mode 100644 .changeset/pre/tf-mcp-connect-auth.md delete mode 100644 .changeset/pre/tf-mcp-gateway-bearer.md delete mode 100644 .changeset/pre/tfg-per-server-mcp-headers.md delete mode 100644 .changeset/pre/tfy-daytona-sandbox-mode.md delete mode 100644 .changeset/pre/tfy-import-agent-id.md delete mode 100644 .changeset/pre/tfy-sandbox-manifest-union.md delete mode 100644 .changeset/pre/tfy-sandbox-pwd-instructions.md delete mode 100644 .changeset/pre/tfy-tenant-provider-account-filter.md delete mode 100644 .changeset/pre/thinking-orb-loader.md delete mode 100644 .changeset/pre/trueforge-dual-vend-tokens.md delete mode 100644 .changeset/pre/trueforge-postgres-schema.md delete mode 100644 .changeset/pre/truefoundry-ai-gateway-models.md delete mode 100644 .changeset/pre/truefoundry-cache-control-ephemeral.md delete mode 100644 .changeset/pre/truefoundry-managed-mcp.md delete mode 100644 .changeset/pre/turn-llm-dedupe.md delete mode 100644 .changeset/pre/turn-token-tooltip.md delete mode 100644 .changeset/pre/turn-update-event.md delete mode 100644 .changeset/pre/unified-page-header-chrome.md delete mode 100644 .changeset/pre/unified-request-context-auth.md delete mode 100644 .changeset/pre/user-avatar-slot.md delete mode 100644 .changeset/pre/user-permissions-v2.md delete mode 100644 .changeset/pre/web-search-provider.md delete mode 100644 .changeset/pre/weekly-days-before-time.md delete mode 100644 .changeset/pre/wide-agent-config-panel.md delete mode 100644 .changeset/pre/wider-sidebar-rail.md delete mode 100644 .changeset/pre/windows-build-scripts.md delete mode 100644 .changeset/turn-active-executor-id.md delete mode 100644 .changeset/web-search-agent-spec.md diff --git a/.changeset/20260904140000-inline-mcp-and-skills.md b/.changeset/20260904140000-inline-mcp-and-skills.md deleted file mode 100644 index 6855e6324..000000000 --- a/.changeset/20260904140000-inline-mcp-and-skills.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Accept `x-tfg-mcp` and `x-tfg-skills` in TrueFoundry mode: MCP servers and skills a request defines by name, taking precedence over the tenant registry for that request only. Both resolve for spec validation and turn execution; an unfiltered list still shows only configured resources, so request-scoped ones never appear in settings. Inline MCP credentials come from the manifest's own `auth.headers`, which lets a rotating token ride each turn. diff --git a/.changeset/agent-clone-drawer.md b/.changeset/agent-clone-drawer.md deleted file mode 100644 index 206ecfb8a..000000000 --- a/.changeset/agent-clone-drawer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Open Save Agent drawer on Clone with `{name}-clone` prefilled; stay on Agents list after save. diff --git a/.changeset/dry-laws-fetch.md b/.changeset/dry-laws-fetch.md deleted file mode 100644 index 7e983f995..000000000 --- a/.changeset/dry-laws-fetch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -fix(local-sandbox): allow SRT proxy sockets on Linux diff --git a/.changeset/mcp-api-key-bearer-hint.md b/.changeset/mcp-api-key-bearer-hint.md deleted file mode 100644 index fa7e25a60..000000000 --- a/.changeset/mcp-api-key-bearer-hint.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Clarify MCP API key entry: Bearer placeholders, auto-prefix Authorization values, and a header-name hint on the form. diff --git a/.changeset/monaco-shell-preload.md b/.changeset/monaco-shell-preload.md deleted file mode 100644 index 94503b3b5..000000000 --- a/.changeset/monaco-shell-preload.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Preload Monaco when the UI shell mounts so tool request/response editors open faster. diff --git a/.changeset/openui-chart-plot-bias.md b/.changeset/openui-chart-plot-bias.md deleted file mode 100644 index 34c5062fb..000000000 --- a/.changeset/openui-chart-plot-bias.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-core': patch ---- - -Prefer OpenUI for inline charts over sandbox plot images when OpenUI is available. diff --git a/.changeset/pre.json b/.changeset/pre.json deleted file mode 100644 index 3616d3a6e..000000000 --- a/.changeset/pre.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "mode": "exit", - "tag": "rc" -} diff --git a/.changeset/pre/20260826173936-regenerate-sdk-from-openapi.md b/.changeset/pre/20260826173936-regenerate-sdk-from-openapi.md deleted file mode 100644 index efd8ff00f..000000000 --- a/.changeset/pre/20260826173936-regenerate-sdk-from-openapi.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Regenerate SDK from updated OpenAPI spec. diff --git a/.changeset/pre/20260827190410-regenerate-sdk-from-openapi.md b/.changeset/pre/20260827190410-regenerate-sdk-from-openapi.md deleted file mode 100644 index efd8ff00f..000000000 --- a/.changeset/pre/20260827190410-regenerate-sdk-from-openapi.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Regenerate SDK from updated OpenAPI spec. diff --git a/.changeset/pre/20260827210200-session-metrics.md b/.changeset/pre/20260827210200-session-metrics.md deleted file mode 100644 index b5f1befbd..000000000 --- a/.changeset/pre/20260827210200-session-metrics.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@truefoundry/trueforge-core': patch -'@truefoundry/trueforge': patch ---- - -Persist zero-initialized metrics on agent sessions. diff --git a/.changeset/pre/20260827213832-regenerate-sdk-from-openapi.md b/.changeset/pre/20260827213832-regenerate-sdk-from-openapi.md deleted file mode 100644 index efd8ff00f..000000000 --- a/.changeset/pre/20260827213832-regenerate-sdk-from-openapi.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Regenerate SDK from updated OpenAPI spec. diff --git a/.changeset/pre/20260827234700-session-metrics-api.md b/.changeset/pre/20260827234700-session-metrics-api.md deleted file mode 100644 index 0ebf0d7fd..000000000 --- a/.changeset/pre/20260827234700-session-metrics-api.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@truefoundry/trueforge-core': patch -'@truefoundry/trueforge': patch ---- - -Add caller-scoped session metrics meters, charts, and chart-data under `/internal/metrics` via a server-owned `ISessionMetricsStore`. diff --git a/.changeset/pre/20260831083812-session-metrics-fold.md b/.changeset/pre/20260831083812-session-metrics-fold.md deleted file mode 100644 index 2ea79a557..000000000 --- a/.changeset/pre/20260831083812-session-metrics-fold.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@truefoundry/trueforge-core': patch -'@truefoundry/trueforge': patch ---- - -Fold session metrics totals on createTurn and terminal writes. diff --git a/.changeset/pre/20260901200000-composer-design-refresh.md b/.changeset/pre/20260901200000-composer-design-refresh.md deleted file mode 100644 index a4767c765..000000000 --- a/.changeset/pre/20260901200000-composer-design-refresh.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Refresh composer and composer-trigger styling: 0.75rem composer corners with a light-theme primary-token gradient hairline (faded top → solid bottom) and a neutral hairline in dark, an icon-only tools trigger in place of the "Tools" caption and count badge, the shared `agent-2` glyph on the agents-library trigger, and squared-off chrome-action geometry on the save-agent trigger. Also fixes `agent-2.svg` to use `currentColor` so it is legible in dark mode. diff --git a/.changeset/pre/20260901205645-agent-metadata.md b/.changeset/pre/20260901205645-agent-metadata.md deleted file mode 100644 index 3d54d10e5..000000000 --- a/.changeset/pre/20260901205645-agent-metadata.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Add persisted `agent.metadata` on Postgres and SQLite; store `updateAgent` can patch manifest and/or metadata. diff --git a/.changeset/pre/20260902143524-agent-external-id.md b/.changeset/pre/20260902143524-agent-external-id.md deleted file mode 100644 index 51d5fee5d..000000000 --- a/.changeset/pre/20260902143524-agent-external-id.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Add agent `external_id` (`string | null` on create) with a tenant-scoped partial unique index (Postgres and SQLite). diff --git a/.changeset/pre/20260902194500-truefoundry-agent-store.md b/.changeset/pre/20260902194500-truefoundry-agent-store.md deleted file mode 100644 index 121a175b0..000000000 --- a/.changeset/pre/20260902194500-truefoundry-agent-store.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] Sync ServiceFoundry remote agents on create/update/delete and store the remote id in `external_id`. Filter `listAgents` by `external_ids`. Keep general ServiceFoundry HTTP at 10s and agent CRUD calls at 3s. diff --git a/.changeset/pre/20260903010000-drop-agent-metadata.md b/.changeset/pre/20260903010000-drop-agent-metadata.md deleted file mode 100644 index ee4b52f4d..000000000 --- a/.changeset/pre/20260903010000-drop-agent-metadata.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Drop unused `agent.metadata`; remote identity is stored in `external_id`. diff --git a/.changeset/pre/20260903013000-reserve-agent-names.md b/.changeset/pre/20260903013000-reserve-agent-names.md deleted file mode 100644 index a5de3d31b..000000000 --- a/.changeset/pre/20260903013000-reserve-agent-names.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Reject reserved agent names `tfg` and `trueforge` in create requests. diff --git a/.changeset/pre/20260904054931-truefoundry-agent-store-db-txn.md b/.changeset/pre/20260904054931-truefoundry-agent-store-db-txn.md deleted file mode 100644 index 70e80304e..000000000 --- a/.changeset/pre/20260904054931-truefoundry-agent-store-db-txn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] Use injected `db` for TrueFoundryAgentStore advisory-lock transactions. diff --git a/.changeset/pre/20260904170300-composer-connector-logos.md b/.changeset/pre/20260904170300-composer-connector-logos.md deleted file mode 100644 index 6824b1103..000000000 --- a/.changeset/pre/20260904170300-composer-connector-logos.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Show connector catalog logos in the composer Tools picker, matching the Connectors settings page. diff --git a/.changeset/pre/20260904173000-attachment-card-tile.md b/.changeset/pre/20260904173000-attachment-card-tile.md deleted file mode 100644 index 75876032a..000000000 --- a/.changeset/pre/20260904173000-attachment-card-tile.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Align AttachmentCard with assistant-ui's default square thumbnail, filename tooltip, and overlay remove control. diff --git a/.changeset/pre/20260907200000-sandbox-desired-skills.md b/.changeset/pre/20260907200000-sandbox-desired-skills.md deleted file mode 100644 index ab07244ee..000000000 --- a/.changeset/pre/20260907200000-sandbox-desired-skills.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-core": patch ---- - -Sandbox skills: unify git and registry mounts onto `.tfy-desired-skills.json` (SkillMounter + skill_downloader), and always attach a mounter so existing skills are cleaned up. diff --git a/.changeset/pre/20260908014909-tfy-skills-catalog-proxy.md b/.changeset/pre/20260908014909-tfy-skills-catalog-proxy.md deleted file mode 100644 index 7caded888..000000000 --- a/.changeset/pre/20260908014909-tfy-skills-catalog-proxy.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-core": patch -"@truefoundry/trueforge-ui": patch ---- - -[truefoundry] TrueFoundry skills catalog: proxy GET /skills and /skills/versions from ServiceFoundry; settings skill writes return 424. SkillManifest is a type-discriminated oneOf of GitSkill | TrueFoundryRegistrySkill (`type: truefoundry`; name is FQN, display_name is short). AvailableSkill exposes optional metadata (display_name, repository_name, version). AgentSpec skill refs allow opaque FQN names, optional preload (registry), and max 50. UI draft skill mounts map catalog `id` to AgentSpec `name`. diff --git a/.changeset/pre/20260908071001-regenerate-sdk-from-openapi.md b/.changeset/pre/20260908071001-regenerate-sdk-from-openapi.md deleted file mode 100644 index efd8ff00f..000000000 --- a/.changeset/pre/20260908071001-regenerate-sdk-from-openapi.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Regenerate SDK from updated OpenAPI spec. diff --git a/.changeset/pre/20260908121652-regenerate-sdk-from-openapi.md b/.changeset/pre/20260908121652-regenerate-sdk-from-openapi.md deleted file mode 100644 index efd8ff00f..000000000 --- a/.changeset/pre/20260908121652-regenerate-sdk-from-openapi.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Regenerate SDK from updated OpenAPI spec. diff --git a/.changeset/pre/20260908173000-age-2128-fqn-skills.md b/.changeset/pre/20260908173000-age-2128-fqn-skills.md deleted file mode 100644 index 7203a1346..000000000 --- a/.changeset/pre/20260908173000-age-2128-fqn-skills.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-core": patch ---- - -AgentSpec skills: TrueFoundry save/turn resolve via SFY; standalone git validate/resolve on the skill store. diff --git a/.changeset/pre/20260908212006-regenerate-sdk-from-openapi.md b/.changeset/pre/20260908212006-regenerate-sdk-from-openapi.md deleted file mode 100644 index efd8ff00f..000000000 --- a/.changeset/pre/20260908212006-regenerate-sdk-from-openapi.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Regenerate SDK from updated OpenAPI spec. diff --git a/.changeset/pre/20260909054805-regenerate-sdk-from-openapi.md b/.changeset/pre/20260909054805-regenerate-sdk-from-openapi.md deleted file mode 100644 index efd8ff00f..000000000 --- a/.changeset/pre/20260909054805-regenerate-sdk-from-openapi.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Regenerate SDK from updated OpenAPI spec. diff --git a/.changeset/pre/20260911-name-hyphen-only.md b/.changeset/pre/20260911-name-hyphen-only.md deleted file mode 100644 index 650a42d87..000000000 --- a/.changeset/pre/20260911-name-hyphen-only.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge': patch ---- - -Constrain ResourceName (NameSchema) to hyphen-only 2–64 and migrate existing "."/"_" names. diff --git a/.changeset/pre/20260911065947-regenerate-sdk-from-openapi.md b/.changeset/pre/20260911065947-regenerate-sdk-from-openapi.md deleted file mode 100644 index efd8ff00f..000000000 --- a/.changeset/pre/20260911065947-regenerate-sdk-from-openapi.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Regenerate SDK from updated OpenAPI spec. diff --git a/.changeset/pre/20260912205155-regenerate-sdk-from-openapi.md b/.changeset/pre/20260912205155-regenerate-sdk-from-openapi.md deleted file mode 100644 index efd8ff00f..000000000 --- a/.changeset/pre/20260912205155-regenerate-sdk-from-openapi.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Regenerate SDK from updated OpenAPI spec. diff --git a/.changeset/pre/20260914082407-regenerate-sdk-from-openapi.md b/.changeset/pre/20260914082407-regenerate-sdk-from-openapi.md deleted file mode 100644 index efd8ff00f..000000000 --- a/.changeset/pre/20260914082407-regenerate-sdk-from-openapi.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Regenerate SDK from updated OpenAPI spec. diff --git a/.changeset/pre/20260914190823-regenerate-sdk-from-openapi.md b/.changeset/pre/20260914190823-regenerate-sdk-from-openapi.md deleted file mode 100644 index efd8ff00f..000000000 --- a/.changeset/pre/20260914190823-regenerate-sdk-from-openapi.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Regenerate SDK from updated OpenAPI spec. diff --git a/.changeset/pre/20260916102001-regenerate-sdk-from-openapi.md b/.changeset/pre/20260916102001-regenerate-sdk-from-openapi.md deleted file mode 100644 index efd8ff00f..000000000 --- a/.changeset/pre/20260916102001-regenerate-sdk-from-openapi.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Regenerate SDK from updated OpenAPI spec. diff --git a/.changeset/pre/20260917043123-regenerate-sdk-from-openapi.md b/.changeset/pre/20260917043123-regenerate-sdk-from-openapi.md deleted file mode 100644 index efd8ff00f..000000000 --- a/.changeset/pre/20260917043123-regenerate-sdk-from-openapi.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Regenerate SDK from updated OpenAPI spec. diff --git a/.changeset/pre/abort-mcp-connect-timeout.md b/.changeset/pre/abort-mcp-connect-timeout.md deleted file mode 100644 index 26c3ccebd..000000000 --- a/.changeset/pre/abort-mcp-connect-timeout.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-core": patch ---- - -Abort timed-out remote MCP `client.connect()` so the handshake does not leak sockets. diff --git a/.changeset/pre/adapter-sdk-code-snippets.md b/.changeset/pre/adapter-sdk-code-snippets.md deleted file mode 100644 index a1b97311a..000000000 --- a/.changeset/pre/adapter-sdk-code-snippets.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Load agent Use In Code snippets through `client.internal.agents.getCodeSnippets` instead of a raw `client.fetch`. diff --git a/.changeset/pre/add-agent-schedules-tab.md b/.changeset/pre/add-agent-schedules-tab.md deleted file mode 100644 index b057195f1..000000000 --- a/.changeset/pre/add-agent-schedules-tab.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Add an agent-scoped Schedules tab and route library schedule actions into it. diff --git a/.changeset/pre/add-documentation-links.md b/.changeset/pre/add-documentation-links.md deleted file mode 100644 index a39392f92..000000000 --- a/.changeset/pre/add-documentation-links.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Add documentation links to the code snippets view and shell actions. diff --git a/.changeset/pre/advanced-agent-config.md b/.changeset/pre/advanced-agent-config.md deleted file mode 100644 index d61b82b98..000000000 --- a/.changeset/pre/advanced-agent-config.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': minor ---- - -Add a live advanced agent configuration drawer with shared model, runtime, MCP tool, skill, and Save Agent editors. diff --git a/.changeset/pre/age-2217-tenant-list-permissions.md b/.changeset/pre/age-2217-tenant-list-permissions.md deleted file mode 100644 index ae6a93b58..000000000 --- a/.changeset/pre/age-2217-tenant-list-permissions.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch -"@truefoundry/trueforge": patch ---- - -Gate Save Agent (create) on tenant CREATE from list-permissions, keep Update Agent on agent MANAGE, unwrap `{ type, permissions }`, and bump `@truefoundry/assistant-ui-runtime` to `0.1.39`. diff --git a/.changeset/pre/agent-chat-navigation.md b/.changeset/pre/agent-chat-navigation.md deleted file mode 100644 index 412bf3041..000000000 --- a/.changeset/pre/agent-chat-navigation.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Add agent-filtered chat history labels, preserve Try Agent and explicit history-filter intent in URL query state while resolving backend IDs, reset active chats when users change filters, keep Try Agent highlighted as chat, and route fresh agent builders at `/build-agent` before their session URL is assigned. diff --git a/.changeset/pre/agent-code-snippets.md b/.changeset/pre/agent-code-snippets.md deleted file mode 100644 index fb10d7eff..000000000 --- a/.changeset/pre/agent-code-snippets.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Add GET /api/v1/agents/{agent_id}/code-snippets with TypeScript TrueForge SDK stream and non-stream samples. diff --git a/.changeset/pre/agent-config-chrome.md b/.changeset/pre/agent-config-chrome.md deleted file mode 100644 index 3b1e86d88..000000000 --- a/.changeset/pre/agent-config-chrome.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": minor ---- - -Keep agent configuration visible on the left in full-width builder layouts, add a responsive instructions and initial-messages drawer with explicit save, make mobile config overlays closable, save the current instruction draft, align builder chrome, and preserve open widgets across chat runtime changes. diff --git a/.changeset/pre/agent-config-clickable-sections.md b/.changeset/pre/agent-config-clickable-sections.md deleted file mode 100644 index 272b986ec..000000000 --- a/.changeset/pre/agent-config-clickable-sections.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Make Runtime Config, MCP Servers, and Skills blocks clickable with a hover action icon, explain disabled sandbox and large-tool-response toggles in tooltips, and replace boxed capability cards with divider-separated columns. diff --git a/.changeset/pre/agent-description-ui.md b/.changeset/pre/agent-description-ui.md deleted file mode 100644 index 41547498f..000000000 --- a/.changeset/pre/agent-description-ui.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Round-trip agent description through save/load and show it in the library and agent details. diff --git a/.changeset/pre/agent-description.md b/.changeset/pre/agent-description.md deleted file mode 100644 index 59884d1b6..000000000 --- a/.changeset/pre/agent-description.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Persist top-level agent description and sync it to ServiceFoundry on create/update. diff --git a/.changeset/pre/agent-library-details.md b/.changeset/pre/agent-library-details.md deleted file mode 100644 index 18768e5d6..000000000 --- a/.changeset/pre/agent-library-details.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": minor ---- - -Add routed agent detail pages with lazy Overview, Sessions, and Use In Code tabs backed by the optional AgentSessionsServer port and built-in TrueForge adapter. diff --git a/.changeset/pre/agent-metric-chart-styling.md b/.changeset/pre/agent-metric-chart-styling.md deleted file mode 100644 index fb521717d..000000000 --- a/.changeset/pre/agent-metric-chart-styling.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Polish metric charts with sharp dot-free lines, distinct series colors, and a quieter Metrics tab background. diff --git a/.changeset/pre/agent-metrics-tab.md b/.changeset/pre/agent-metrics-tab.md deleted file mode 100644 index c393fb774..000000000 --- a/.changeset/pre/agent-metrics-tab.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-ui": minor -"@truefoundry/trueforge": minor ---- - -Add a slot-driven agent Metrics tab with aggregate cards, time-range filtering, and Harness-backed line charts. diff --git a/.changeset/pre/agent-model-settings-dropdown.md b/.changeset/pre/agent-model-settings-dropdown.md deleted file mode 100644 index 0448e7eca..000000000 --- a/.changeset/pre/agent-model-settings-dropdown.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": minor ---- - -Open agent model settings inline and support typed custom model parameters. diff --git a/.changeset/pre/agent-overflow-actions.md b/.changeset/pre/agent-overflow-actions.md deleted file mode 100644 index 599086549..000000000 --- a/.changeset/pre/agent-overflow-actions.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Agent list and details overflow menu: Edit, Clone (`{name}-copy` via saveAgent), Manage Schedules, and Delete (wired through harness `deleteAgent`). diff --git a/.changeset/pre/agent-session-schedule-rbac.md b/.changeset/pre/agent-session-schedule-rbac.md deleted file mode 100644 index 9d4343769..000000000 --- a/.changeset/pre/agent-session-schedule-rbac.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@truefoundry/trueforge-core': minor -'@truefoundry/trueforge': minor ---- - -Agent access is decided only by the `Authorizer`: standalone/OIDC lets everyone list and use agents and restricts update/delete to the creator; TrueFoundry uses external permissions api. - -You can read a session, turn, events, metrics, schedule, or its runs if you created it, or if you manage the named agent it is bound to. Creating still requires permission to use that agent. Only the creator can update, delete, or cancel a session, create a turn, or download sandbox files. Only the creator can update, delete, pause, resume, or run a schedule. An OIDC settings admin can no longer see other users' schedules. diff --git a/.changeset/pre/agent-sessions-infinite-scroll.md b/.changeset/pre/agent-sessions-infinite-scroll.md deleted file mode 100644 index 214d11958..000000000 --- a/.changeset/pre/agent-sessions-infinite-scroll.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Paginate the Agent Sessions list on scroll instead of a "Load more" button, showing a skeleton row while the next page loads. diff --git a/.changeset/pre/agent-sessions-list-bg.md b/.changeset/pre/agent-sessions-list-bg.md deleted file mode 100644 index bdc6a0908..000000000 --- a/.changeset/pre/agent-sessions-list-bg.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -AgentSessions list pane uses a quieter surface, and the resize grip stays gray until hover, press, or focus. diff --git a/.changeset/pre/agent-sessions-tab.md b/.changeset/pre/agent-sessions-tab.md deleted file mode 100644 index 5beb47359..000000000 --- a/.changeset/pre/agent-sessions-tab.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": minor ---- - -Add the agent library Sessions tab and an all-user Sessions sidebar page (including drafts) with agent and time filters, shareable query params, and the same two-pane timeline. Library agent details keep the active tab in `?tab=` so opening an agent lands on Overview. diff --git a/.changeset/pre/agent-snippet-token.md b/.changeset/pre/agent-snippet-token.md deleted file mode 100644 index d627d3acd..000000000 --- a/.changeset/pre/agent-snippet-token.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge': patch ---- - -Include `token: "USER_API_KEY"` in TypeScript agent code snippets when OIDC or TrueFoundry auth is enabled. diff --git a/.changeset/pre/agents-library-table-scroll.md b/.changeset/pre/agents-library-table-scroll.md deleted file mode 100644 index 8f39b9974..000000000 --- a/.changeset/pre/agents-library-table-scroll.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Fix Agents library table scrolling when rows exceed the viewport diff --git a/.changeset/pre/allow-attachment-only-messages.md b/.changeset/pre/allow-attachment-only-messages.md deleted file mode 100644 index 64974f155..000000000 --- a/.changeset/pre/allow-attachment-only-messages.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Allow sending user messages that contain attachments without text. diff --git a/.changeset/pre/approval-nav-banner.md b/.changeset/pre/approval-nav-banner.md deleted file mode 100644 index 5f5e16a45..000000000 --- a/.changeset/pre/approval-nav-banner.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": minor ---- - -Add a composer approval-nav banner (overridable `ApprovalNavBanner` slot) that counts pending tool approvals, pauses the composer, and jumps/expands/flashes the focused approval — including nested subagent tools. diff --git a/.changeset/pre/avatar-gradient-initial.md b/.changeset/pre/avatar-gradient-initial.md deleted file mode 100644 index 4bef1114c..000000000 --- a/.changeset/pre/avatar-gradient-initial.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Avatar fallbacks use a light primary-button gradient in light mode, a solid primary gradient in dark mode, and show a single initial character. diff --git a/.changeset/pre/boot-loader-status-text.md b/.changeset/pre/boot-loader-status-text.md deleted file mode 100644 index 704f3f7e7..000000000 --- a/.changeset/pre/boot-loader-status-text.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-ui": patch ---- - -Announce boot loading with a light-themed orb for contrast outside ThemeProvider. diff --git a/.changeset/pre/boot-loading-spinner.md b/.changeset/pre/boot-loading-spinner.md deleted file mode 100644 index dcc5259f5..000000000 --- a/.changeset/pre/boot-loading-spinner.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Show a spinner on the app boot screens instead of "Loading application…" text. diff --git a/.changeset/pre/brand-icon-wordmark.md b/.changeset/pre/brand-icon-wordmark.md deleted file mode 100644 index a4e82360a..000000000 --- a/.changeset/pre/brand-icon-wordmark.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-ui": minor -"@truefoundry/trueforge": patch ---- - -Add `brand.mode` (`icon-title` | `icon-only` | `logo`) so hosts pick chrome look first; `name` always labels the mark, and `resolveBrandChrome` maps mode to layout chrome. diff --git a/.changeset/pre/build-agent-from-schedule-picker.md b/.changeset/pre/build-agent-from-schedule-picker.md deleted file mode 100644 index 79f33f302..000000000 --- a/.changeset/pre/build-agent-from-schedule-picker.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Add an empty state and Build Agent action to the schedule agent picker. diff --git a/.changeset/pre/bump-assistant-ui-runtime-0-1-30.md b/.changeset/pre/bump-assistant-ui-runtime-0-1-30.md deleted file mode 100644 index 629a6f053..000000000 --- a/.changeset/pre/bump-assistant-ui-runtime-0-1-30.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch -"@truefoundry/trueforge": patch ---- - -Bump `@truefoundry/assistant-ui-runtime` to `0.1.30`. diff --git a/.changeset/pre/bump-assistant-ui-runtime-0-1-31.md b/.changeset/pre/bump-assistant-ui-runtime-0-1-31.md deleted file mode 100644 index 876e7cadd..000000000 --- a/.changeset/pre/bump-assistant-ui-runtime-0-1-31.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch -"@truefoundry/trueforge": patch ---- - -Bump `@truefoundry/assistant-ui-runtime` to `0.1.31`. diff --git a/.changeset/pre/bump-assistant-ui-runtime-0-1-38.md b/.changeset/pre/bump-assistant-ui-runtime-0-1-38.md deleted file mode 100644 index 5efab7b95..000000000 --- a/.changeset/pre/bump-assistant-ui-runtime-0-1-38.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch -"@truefoundry/trueforge": patch ---- - -Bump `@truefoundry/assistant-ui-runtime` to `0.1.38` for assistant completion timestamps and keep-alive turn streams on session switch. diff --git a/.changeset/pre/bump-assistant-ui-runtime-0-1-41.md b/.changeset/pre/bump-assistant-ui-runtime-0-1-41.md deleted file mode 100644 index d7e273b94..000000000 --- a/.changeset/pre/bump-assistant-ui-runtime-0-1-41.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch -"@truefoundry/trueforge": patch ---- - -Bump `@truefoundry/assistant-ui-runtime` to `0.1.41` for turn-scoped sandbox artifact downloads and to stop stale session history from merging after a session switch. diff --git a/.changeset/pre/cache-composer-catalogs.md b/.changeset/pre/cache-composer-catalogs.md deleted file mode 100644 index 9f9f3f353..000000000 --- a/.changeset/pre/cache-composer-catalogs.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Keep composer catalogs cached when starting a new chat. diff --git a/.changeset/pre/chat-delete-controls.md b/.changeset/pre/chat-delete-controls.md deleted file mode 100644 index 1f5357f92..000000000 --- a/.changeset/pre/chat-delete-controls.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Wire remote chat session deletion and improve the history delete action styling. diff --git a/.changeset/pre/clean-session-timeline.md b/.changeset/pre/clean-session-timeline.md deleted file mode 100644 index 151137359..000000000 --- a/.changeset/pre/clean-session-timeline.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Improve session timelines with sub-agent wait states, grouped point-event markers, clean linear ticks, and readable summary durations. diff --git a/.changeset/pre/code-editor-copy-secondary.md b/.changeset/pre/code-editor-copy-secondary.md deleted file mode 100644 index 1fd7d95cd..000000000 --- a/.changeset/pre/code-editor-copy-secondary.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Agent Code (`SyntaxHighlighter` / `AgentCodeBlock`) copy control uses the bordered secondary button, and a trailing source newline no longer paints an empty last line while Copy still keeps the exact source. diff --git a/.changeset/pre/code-mode-destructive-defaults.md b/.changeset/pre/code-mode-destructive-defaults.md deleted file mode 100644 index 5046e8a88..000000000 --- a/.changeset/pre/code-mode-destructive-defaults.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@truefoundry/trueforge-core': patch -'@truefoundry/trueforge': patch ---- - -Prefer MCP Python SDK 2.0 snake_case tool annotation fields, with camelCase fallback for older SDKs, without changing destructive-tool detection behavior. diff --git a/.changeset/pre/code-snippets-trim-base-url-slash.md b/.changeset/pre/code-snippets-trim-base-url-slash.md deleted file mode 100644 index 63a5de968..000000000 --- a/.changeset/pre/code-snippets-trim-base-url-slash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Strip a trailing slash from the `base_url` passed to agent code-snippets. diff --git a/.changeset/pre/compact-agent-config-sheets.md b/.changeset/pre/compact-agent-config-sheets.md deleted file mode 100644 index 18fe224bb..000000000 --- a/.changeset/pre/compact-agent-config-sheets.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Improve compact agent building with model configuration bottom sheets, provider-first model selection, and a contextual composer actions menu. diff --git a/.changeset/pre/composer-tools-count.md b/.changeset/pre/composer-tools-count.md deleted file mode 100644 index 09b6f43e3..000000000 --- a/.changeset/pre/composer-tools-count.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Show the selected connector and skill count beside the composer tools icon. diff --git a/.changeset/pre/configurable-trueforge-schema.md b/.changeset/pre/configurable-trueforge-schema.md deleted file mode 100644 index 6701d0a35..000000000 --- a/.changeset/pre/configurable-trueforge-schema.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": minor ---- - -Make the Postgres app schema configurable via `POSTGRES_SCHEMA` (default `trueforge`) for `search_path`, migrations, and schema bootstrap. diff --git a/.changeset/pre/controller-entry-point.md b/.changeset/pre/controller-entry-point.md deleted file mode 100644 index 8b358c301..000000000 --- a/.changeset/pre/controller-entry-point.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Add a dedicated controller entry point (`dist/controller-main.js`) that runs the periodic control loops (schedule dispatch) as a single-replica process for distributed mode (`STANDALONE=false`). It targets the server API via the new `SERVER_URL` env (default `http://localhost:$PORT`). Standalone mode keeps running the controller inside the server process. diff --git a/.changeset/pre/controller-server-mtls.md b/.changeset/pre/controller-server-mtls.md deleted file mode 100644 index e4015d966..000000000 --- a/.changeset/pre/controller-server-mtls.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": minor ---- - -Add optional mutual TLS for the HTTPS listener and schedule controller→server hop via `TRUEFORGE_MTLS_ENABLED` / `TRUEFORGE_MTLS_CERTS_DIR`. Off by default; independent of ServiceFoundry `TRUEFOUNDRY_MTLS_*`. diff --git a/.changeset/pre/correct-builder-timeline-controls.md b/.changeset/pre/correct-builder-timeline-controls.md deleted file mode 100644 index ac8a49b3c..000000000 --- a/.changeset/pre/correct-builder-timeline-controls.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Hide model selection in the Build Agent composer and correct concurrent sub-agent timeline bars. diff --git a/.changeset/pre/create-turn-tfy-metadata.md b/.changeset/pre/create-turn-tfy-metadata.md deleted file mode 100644 index d8c8068f2..000000000 --- a/.changeset/pre/create-turn-tfy-metadata.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] Forward inbound `x-tfy-metadata` from create-turn to TrueFoundry-mode gateway calls, merged with harness session, turn, and agent ids. diff --git a/.changeset/pre/created-by-column.md b/.changeset/pre/created-by-column.md deleted file mode 100644 index f3fd9aff9..000000000 --- a/.changeset/pre/created-by-column.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch -"@truefoundry/trueforge": patch ---- - -Show Created by (avatar + name) on Agents and Schedules tables when creator info is present. diff --git a/.changeset/pre/created-by-me-list-filter.md b/.changeset/pre/created-by-me-list-filter.md deleted file mode 100644 index 9f5db715b..000000000 --- a/.changeset/pre/created-by-me-list-filter.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-sdk": patch ---- - -Add `created_by_me` to list sessions and list schedules so callers can restrict results to resources they created (excluding managed-agent visibility). diff --git a/.changeset/pre/created-by-subject-json.md b/.changeset/pre/created-by-subject-json.md deleted file mode 100644 index 616ac0851..000000000 --- a/.changeset/pre/created-by-subject-json.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@truefoundry/trueforge-core': minor -'@truefoundry/trueforge': minor ---- - -Replace string creator fields (`created_by` / `triggered_by`) with a non-null `created_by_subject` JSON object on agent, session, schedule, and schedule_run. Ownership and list filters use `tenant_id` + `created_by_subject.subject_id`. diff --git a/.changeset/pre/cron-schedules.md b/.changeset/pre/cron-schedules.md deleted file mode 100644 index f7217946a..000000000 --- a/.changeset/pre/cron-schedules.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": minor ---- - -Adds first-class cron schedules for existing agents: persist them, manage them via /api/v1/schedules, validate cron policy at write time, and advance due runs through a single-dispatcher claim path. diff --git a/.changeset/pre/custom-action-renderers.md b/.changeset/pre/custom-action-renderers.md deleted file mode 100644 index a65d5696d..000000000 --- a/.changeset/pre/custom-action-renderers.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": minor ---- - -Add `customActionRenderers` so hosts can pause the composer on client-side tools with their own UI and resume via `onSubmit(content)`. diff --git a/.changeset/pre/daytona-permission-vs-invalid-key.md b/.changeset/pre/daytona-permission-vs-invalid-key.md deleted file mode 100644 index e12c64177..000000000 --- a/.changeset/pre/daytona-permission-vs-invalid-key.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Report a Daytona key that cannot register snapshots as missing key permissions (403) instead of an invalid API key (422), and name the grants to add in the Daytona dashboard. diff --git a/.changeset/pre/daytona-request-timeouts.md b/.changeset/pre/daytona-request-timeouts.md deleted file mode 100644 index 94c1a73c7..000000000 --- a/.changeset/pre/daytona-request-timeouts.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-core": patch ---- - -Cap Daytona status-refresh calls at 1 minute so a stalled provider cannot hang request handlers. diff --git a/.changeset/pre/direct-runtime-switch-clicks.md b/.changeset/pre/direct-runtime-switch-clicks.md deleted file mode 100644 index 69a6be81d..000000000 --- a/.changeset/pre/direct-runtime-switch-clicks.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Require direct switch clicks in the Runtime Config sidebar. diff --git a/.changeset/pre/dropdown-scrollbar-click.md b/.changeset/pre/dropdown-scrollbar-click.md deleted file mode 100644 index f5457b57d..000000000 --- a/.changeset/pre/dropdown-scrollbar-click.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Keep close-on-click dropdown menus and bottom sheets open when a click or drag lands on their own scrollbar, so scrolling a long menu no longer dismisses it before a choice is made. diff --git a/.changeset/pre/edit-configured-connectors.md b/.changeset/pre/edit-configured-connectors.md deleted file mode 100644 index fd9076f9e..000000000 --- a/.changeset/pre/edit-configured-connectors.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Replace API key replacement with connector configuration editing from the connector list and details view. diff --git a/.changeset/pre/empty-screen-states.md b/.changeset/pre/empty-screen-states.md deleted file mode 100644 index b32f404d1..000000000 --- a/.changeset/pre/empty-screen-states.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Agents, Sessions, and Schedules empty states use a shared centered empty-box screen with title and supporting copy. diff --git a/.changeset/pre/enforce-agent-authorizer.md b/.changeset/pre/enforce-agent-authorizer.md deleted file mode 100644 index d6835f50e..000000000 --- a/.changeset/pre/enforce-agent-authorizer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge': minor ---- - -Enforce external agent authorization on agent list, get, snippets, update, delete, and referenced-agent use. diff --git a/.changeset/pre/feature-agent-metric-cards.md b/.changeset/pre/feature-agent-metric-cards.md deleted file mode 100644 index d7dccaa0e..000000000 --- a/.changeset/pre/feature-agent-metric-cards.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Show the four primary agent metrics in a compact summary-card layout. diff --git a/.changeset/pre/filter-sessions-created-by-me.md b/.changeset/pre/filter-sessions-created-by-me.md deleted file mode 100644 index 6c2384c4b..000000000 --- a/.changeset/pre/filter-sessions-created-by-me.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch -"@truefoundry/trueforge": patch ---- - -Filter chat history to sessions created by the current user, and bump `@truefoundry/assistant-ui-runtime` to `0.1.34`. diff --git a/.changeset/pre/fix-code-snippets-public-base-url.md b/.changeset/pre/fix-code-snippets-public-base-url.md deleted file mode 100644 index 51e912549..000000000 --- a/.changeset/pre/fix-code-snippets-public-base-url.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-ui": patch ---- - -Accept optional `base_url` on agent code-snippets (FE public host); fall back to request origin + `PUBLIC_BASE_URL` path. diff --git a/.changeset/pre/fluffy-bats-cry.md b/.changeset/pre/fluffy-bats-cry.md deleted file mode 100644 index 9ce5a6125..000000000 --- a/.changeset/pre/fluffy-bats-cry.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -fixed the button component icon and padding, delete conflicting local prettier.json in trueforge-ui package - \ No newline at end of file diff --git a/.changeset/pre/frontend-base-path-env.md b/.changeset/pre/frontend-base-path-env.md deleted file mode 100644 index 56c419d05..000000000 --- a/.changeset/pre/frontend-base-path-env.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Make optional `VITE_BASE_PATH` apply to both the UI public path and API/auth URLs (defaults to `/`). diff --git a/.changeset/pre/funky-birds-cough.md b/.changeset/pre/funky-birds-cough.md deleted file mode 100644 index bfb3ac11f..000000000 --- a/.changeset/pre/funky-birds-cough.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge-core": patch -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-ui": patch ---- - -Update published dependency ranges (AI SDK, Hono, MCP SDK, Redis, assistant-ui, and related packages). diff --git a/.changeset/pre/gate-settings-capability.md b/.changeset/pre/gate-settings-capability.md deleted file mode 100644 index 310408968..000000000 --- a/.changeset/pre/gate-settings-capability.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Keep Settings hidden until the server explicitly enables it. diff --git a/.changeset/pre/gateway-tfy-metadata.md b/.changeset/pre/gateway-tfy-metadata.md deleted file mode 100644 index 5125f804e..000000000 --- a/.changeset/pre/gateway-tfy-metadata.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] Forward session, turn, and agent context as `x-tfy-metadata` on TrueFoundry-mode model and MCP gateway calls. diff --git a/.changeset/pre/google-sans-default-font.md b/.changeset/pre/google-sans-default-font.md deleted file mode 100644 index f323f1262..000000000 --- a/.changeset/pre/google-sans-default-font.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Use Google Sans as the default `trueforge` theme font and load it from Google Fonts when styles are injected. diff --git a/.changeset/pre/hide-clear-chat-on-fresh-thread.md b/.changeset/pre/hide-clear-chat-on-fresh-thread.md deleted file mode 100644 index e224d549c..000000000 --- a/.changeset/pre/hide-clear-chat-on-fresh-thread.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Hide Clear chat while the thread is fresh (New Chat, New Agent, and Try Agent) since there is nothing to clear. diff --git a/.changeset/pre/hide-unavailable-session-cost.md b/.changeset/pre/hide-unavailable-session-cost.md deleted file mode 100644 index bcae842b4..000000000 --- a/.changeset/pre/hide-unavailable-session-cost.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Hide session cost metrics when cost data is unavailable. diff --git a/.changeset/pre/interactive-turn-vend-token.md b/.changeset/pre/interactive-turn-vend-token.md deleted file mode 100644 index 2b1f9f72d..000000000 --- a/.changeset/pre/interactive-turn-vend-token.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge': patch ---- - -[truefoundry] Use agent-scoped tokens for saved-agent turns in TrueFoundry mode while inline turns keep using the caller token. diff --git a/.changeset/pre/internal-import-agents.md b/.changeset/pre/internal-import-agents.md deleted file mode 100644 index ea2bf0098..000000000 --- a/.changeset/pre/internal-import-agents.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Add internal POST /api/internal/import/agents and POST /sessions (snapshot) plus GET /checkpoint?tenant_id= for SF→TrueForge backfill. Import requires the service API key. Named session import links a local agent when present (or SF agent_id / dummy). Drafts use agent_spec; when SF also sends name/id those go in metadata. Checkpoint is per-tenant min created_at of imported sessions. diff --git a/.changeset/pre/lemon-lines-laugh.md b/.changeset/pre/lemon-lines-laugh.md deleted file mode 100644 index fb9d8a04d..000000000 --- a/.changeset/pre/lemon-lines-laugh.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Update /healthz to return JSON status and package version - \ No newline at end of file diff --git a/.changeset/pre/list-permissions-api.md b/.changeset/pre/list-permissions-api.md deleted file mode 100644 index ae4097038..000000000 --- a/.changeset/pre/list-permissions-api.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@truefoundry/trueforge': patch -'@truefoundry/trueforge-core': patch ---- - -Add POST `/api/internal/list-permissions` via `Authorizer.getPermissions` (owner grants for schedules/sessions; agents include `USE`, with TrueFoundry agents mapped from SFY `USE_AGENT`/`MANAGE_AGENT`/`DELETE_AGENT`). diff --git a/.changeset/pre/list-sessions-metadata-deepobject-filter.md b/.changeset/pre/list-sessions-metadata-deepobject-filter.md deleted file mode 100644 index 15d4a14d2..000000000 --- a/.changeset/pre/list-sessions-metadata-deepobject-filter.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge-core": patch -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-sdk": patch ---- - -List sessions accepts `metadata[key]=value` query params (OpenAPI deepObject) for exact metadata containment filtering. Bare JSON-string `metadata` query params are rejected. Metadata keys are limited to 32 characters and cannot include `[]` or whitespace so they do not collide with the bracket query form. diff --git a/.changeset/pre/live-mcp-auth.md b/.changeset/pre/live-mcp-auth.md deleted file mode 100644 index 18477ff3d..000000000 --- a/.changeset/pre/live-mcp-auth.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch -"@truefoundry/trueforge": patch ---- - -Check live per-user MCP authentication before loading tools in the agent builder. diff --git a/.changeset/pre/markdown-links-new-tab.md b/.changeset/pre/markdown-links-new-tab.md deleted file mode 100644 index dfbd0bdcc..000000000 --- a/.changeset/pre/markdown-links-new-tab.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Open markdown links in assistant messages in a new tab diff --git a/.changeset/pre/mcp-approval-destructive-default.md b/.changeset/pre/mcp-approval-destructive-default.md deleted file mode 100644 index 3cd81e7fb..000000000 --- a/.changeset/pre/mcp-approval-destructive-default.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge-core": patch -"@truefoundry/trueforge-ui": patch -"@truefoundry/trueforge": patch ---- - -Default MCP tool approval to `@destructive` only. Selecting Other/read-only tools clears approval; selecting destructive tools keeps it on. Migrate mounts still carrying the old `@write`+`@destructive` default. diff --git a/.changeset/pre/mcp-idle-body-timeout.md b/.changeset/pre/mcp-idle-body-timeout.md deleted file mode 100644 index d0575a83e..000000000 --- a/.changeset/pre/mcp-idle-body-timeout.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-core": patch ---- - -Raise remote MCP undici bodyTimeout to 30m so idle SSE streams are not killed at 5m; warn on Body Timeout and stringify other transport errors. diff --git a/.changeset/pre/mcp-invoke-headers-with-auth.md b/.changeset/pre/mcp-invoke-headers-with-auth.md deleted file mode 100644 index e4635c716..000000000 --- a/.changeset/pre/mcp-invoke-headers-with-auth.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Move `resolveInvokeHeaders` onto `IMcpServerWithAuthStore` (not `IMcpServerStore`) so DB backends stay CRUD-only and turn/MCP invoke paths take the request-scoped with-auth store for configured headers and TrueFoundry gateway Bearer. diff --git a/.changeset/pre/mcp-list-no-pagination.md b/.changeset/pre/mcp-list-no-pagination.md deleted file mode 100644 index a9b8a5442..000000000 --- a/.changeset/pre/mcp-list-no-pagination.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": minor -"@truefoundry/trueforge-ui": minor -"@truefoundry/trueforge": minor ---- - -Remove pagination from list MCP servers across the API, SDK, and UI; return and search the complete configured MCP catalog client-side. diff --git a/.changeset/pre/mcp-max-response-bytes.md b/.changeset/pre/mcp-max-response-bytes.md deleted file mode 100644 index 0dc05aab9..000000000 --- a/.changeset/pre/mcp-max-response-bytes.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-core": patch -"@truefoundry/trueforge": patch ---- - -Abort remote MCP HTTP response bodies over 50MB (`MCP_TOOL_CALL_MAX_RESPONSE_BYTES`) so oversized tool results cannot OOM the process. diff --git a/.changeset/pre/mcp-oauth-redirect-from-session.md b/.changeset/pre/mcp-oauth-redirect-from-session.md deleted file mode 100644 index 432aefd21..000000000 --- a/.changeset/pre/mcp-oauth-redirect-from-session.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] TrueFoundry MCP OAuth authorize redirect uses the tenant `controlPlaneURL` from the session instead of the process `PUBLIC_BASE_URL` origin. diff --git a/.changeset/pre/mcp-pill-preload-toggle.md b/.changeset/pre/mcp-pill-preload-toggle.md deleted file mode 100644 index 37bc2f6de..000000000 --- a/.changeset/pre/mcp-pill-preload-toggle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Add a book-icon preload toggle and dashed add button to Agent Config MCP server pills. diff --git a/.changeset/pre/mcp-selector-infinite-scroll.md b/.changeset/pre/mcp-selector-infinite-scroll.md deleted file mode 100644 index 5e414da0c..000000000 --- a/.changeset/pre/mcp-selector-infinite-scroll.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': minor ---- - -MCP selectors (composer + agent config) infinite-scroll through `listMcp` pages via DraftCatalogProvider. diff --git a/.changeset/pre/mcp-selector-interactions.md b/.changeset/pre/mcp-selector-interactions.md deleted file mode 100644 index aac728d9a..000000000 --- a/.changeset/pre/mcp-selector-interactions.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Improve MCP and skill selectors with consistent search sizing, explicit MCP selection controls, grouped tool summaries, and removable MCP chips. diff --git a/.changeset/pre/mcp-selector-modal-revamp.md b/.changeset/pre/mcp-selector-modal-revamp.md deleted file mode 100644 index 398b77afe..000000000 --- a/.changeset/pre/mcp-selector-modal-revamp.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Revamp the MCP tools selector modal with focus rows, connect empty state, and grouped selected-tools summary. diff --git a/.changeset/pre/mcp-server-manifest-union.md b/.changeset/pre/mcp-server-manifest-union.md deleted file mode 100644 index 90c0e1a65..000000000 --- a/.changeset/pre/mcp-server-manifest-union.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-sdk": patch ---- - -[truefoundry] Make MCPServerManifest a type-discriminated oneOf of RemoteMCPServerManifest and TrueFoundryMCPServerManifest. diff --git a/.changeset/pre/mcp-server-store-auth.md b/.changeset/pre/mcp-server-store-auth.md deleted file mode 100644 index 0f635c373..000000000 --- a/.changeset/pre/mcp-server-store-auth.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Split MCP server persistence (`IMcpServerStore`) from Connect UX auth (`IMcpServerWithAuthStore` / `McpServerWithAuthStore`) so DB backends stay CRUD + OAuth client columns while authorize/status/revoke compose in via a token store. diff --git a/.changeset/pre/mcp-tool-approval-selection.md b/.changeset/pre/mcp-tool-approval-selection.md deleted file mode 100644 index 86c1b8fde..000000000 --- a/.changeset/pre/mcp-tool-approval-selection.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Let Build Agent pick which MCP tools require human approval, saved as `require_approval_for_tools` on the agent spec, and make unchecked tool checkboxes legible in both tool selectors. The agent Overview tab now expands each attached MCP server into its tools, with read/write/destructive labels and approval state. diff --git a/.changeset/pre/mcp-tool-sections.md b/.changeset/pre/mcp-tool-sections.md deleted file mode 100644 index 7f59c70fa..000000000 --- a/.changeset/pre/mcp-tool-sections.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Section MCP tools in the Build Agent selector by read-only, others, and destructive annotations, with a read-only enable-all toggle. diff --git a/.changeset/pre/message-indicator-thinking-orb.md b/.changeset/pre/message-indicator-thinking-orb.md deleted file mode 100644 index 43e39be76..000000000 --- a/.changeset/pre/message-indicator-thinking-orb.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Assistant message loading indicator uses ThinkingOrb with left-to-right shimmering Working... text. diff --git a/.changeset/pre/modern-compaction-triggers.md b/.changeset/pre/modern-compaction-triggers.md deleted file mode 100644 index 3f6213c08..000000000 --- a/.changeset/pre/modern-compaction-triggers.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@truefoundry/trueforge-core': minor -'@truefoundry/trueforge': minor -'@truefoundry/trueforge-ui': minor ---- - -Add context-management compaction triggers with model-aware defaults and migrate persisted legacy token thresholds. diff --git a/.changeset/pre/move-metrics-filter.md b/.changeset/pre/move-metrics-filter.md deleted file mode 100644 index 2a013de26..000000000 --- a/.changeset/pre/move-metrics-filter.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Move the agent metrics time range filter into the active Metrics tab row. diff --git a/.changeset/pre/new-chat-capabilities-sandbox.md b/.changeset/pre/new-chat-capabilities-sandbox.md deleted file mode 100644 index fe399a36f..000000000 --- a/.changeset/pre/new-chat-capabilities-sandbox.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -New Chat enables sandbox on the live draft agent config when capabilities report sandbox as available. diff --git a/.changeset/pre/new-chat-vs-new-agent.md b/.changeset/pre/new-chat-vs-new-agent.md deleted file mode 100644 index 36f596fa7..000000000 --- a/.changeset/pre/new-chat-vs-new-agent.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': minor ---- - -Split New Chat vs New Agent: simple chat keeps the Connectors/Skills picker; New Agent keeps Agent Config + Save Agent. Session metadata `is_create_agent` drives resume from the sessions browser. diff --git a/.changeset/pre/node-engines-22-14.md b/.changeset/pre/node-engines-22-14.md deleted file mode 100644 index cea0d9fbd..000000000 --- a/.changeset/pre/node-engines-22-14.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge': patch ---- - -Require Node.js 22.14+ (`better-sqlite3` v13 is built for Node-API 10 and SIGSEGVs on 22.13 and below). diff --git a/.changeset/pre/oidc-allowed-emails.md b/.changeset/pre/oidc-allowed-emails.md deleted file mode 100644 index b33abd7ba..000000000 --- a/.changeset/pre/oidc-allowed-emails.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": minor ---- - -Add optional `OIDC_ALLOWED_EMAILS` allowlist (exact addresses and `*` globs) so OIDC logins can be limited to approved emails or domains. diff --git a/.changeset/pre/optional-server-lego-gates.md b/.changeset/pre/optional-server-lego-gates.md deleted file mode 100644 index 52d278a7f..000000000 --- a/.changeset/pre/optional-server-lego-gates.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Clamp optional sessions/schedules chrome and unregister `/sessions`, `/schedules`, and `/library/:agentId` when those server ports are omitted, matching the Settings Lego gate. diff --git a/.changeset/pre/optional-session-cost.md b/.changeset/pre/optional-session-cost.md deleted file mode 100644 index 6d2254a19..000000000 --- a/.changeset/pre/optional-session-cost.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge-core": patch -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-sdk": patch ---- - -Omit session `total_cost_in_usd` when cost is unavailable (instead of defaulting to 0), matching turn metrics. diff --git a/.changeset/pre/overlay-slide-animation.md b/.changeset/pre/overlay-slide-animation.md deleted file mode 100644 index c6842d3ed..000000000 --- a/.changeset/pre/overlay-slide-animation.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Slide SideDrawer/BottomSheet and add a light fade+scale enter on dropdowns and popup cards. diff --git a/.changeset/pre/paginate-list-agents.md b/.changeset/pre/paginate-list-agents.md deleted file mode 100644 index b806f1750..000000000 --- a/.changeset/pre/paginate-list-agents.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-ui": patch -"@truefoundry/trueforge-sdk": patch ---- - -Paginate `GET /api/v1/agents` with `limit` / `page_token` and a `pagination` envelope; optional `agent_name` filters by case-insensitive substring. Agents library uses rows-per-page and prev/next against the token-paginated API. Schedule create and the schedules listing agent filter use a searchable agent combobox backed by the same filtered list API. diff --git a/.changeset/pre/paginate-list-schedule-runs.md b/.changeset/pre/paginate-list-schedule-runs.md deleted file mode 100644 index 061fa33b1..000000000 --- a/.changeset/pre/paginate-list-schedule-runs.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Paginate `GET /api/v1/schedules/{schedule_id}/runs` with `limit` / `page_token` and a `pagination` envelope. diff --git a/.changeset/pre/plain-agent-names.md b/.changeset/pre/plain-agent-names.md deleted file mode 100644 index d6391a643..000000000 --- a/.changeset/pre/plain-agent-names.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Show agent names without an icon in the Agents table. diff --git a/.changeset/pre/plenty-books-itch.md b/.changeset/pre/plenty-books-itch.md deleted file mode 100644 index 1880da8fc..000000000 --- a/.changeset/pre/plenty-books-itch.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -show mcp server tool name on tool approval - \ No newline at end of file diff --git a/.changeset/pre/popover-select-flip.md b/.changeset/pre/popover-select-flip.md deleted file mode 100644 index 1b470f196..000000000 --- a/.changeset/pre/popover-select-flip.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Flip PopoverSelect menus when the preferred side lacks viewport room (e.g. table rows-per-page). diff --git a/.changeset/pre/popover-select-portal.md b/.changeset/pre/popover-select-portal.md deleted file mode 100644 index 7a085d3f2..000000000 --- a/.changeset/pre/popover-select-portal.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Portal PopoverSelect menus so table page-size and other selects are not clipped by overflow parents. diff --git a/.changeset/pre/postgres-pool-idle-error.md b/.changeset/pre/postgres-pool-idle-error.md deleted file mode 100644 index 57547b66b..000000000 --- a/.changeset/pre/postgres-pool-idle-error.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Fail Postgres connects after 10s and log idle pool errors so a backend restart cannot crash the process. diff --git a/.changeset/pre/postgres-redis-startup-access-logs.md b/.changeset/pre/postgres-redis-startup-access-logs.md deleted file mode 100644 index f8040841b..000000000 --- a/.changeset/pre/postgres-redis-startup-access-logs.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Log while connecting to Postgres and Redis on startup, and skip access logs for `/assets/`. diff --git a/.changeset/pre/postgres-ssl-client-cert.md b/.changeset/pre/postgres-ssl-client-cert.md deleted file mode 100644 index ea2ede293..000000000 --- a/.changeset/pre/postgres-ssl-client-cert.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Apply Postgres TLS via Pool `ssl` like servicefoundry (`POSTGRES_SSL_MODE` + cert/key/CA paths), not `sslmode` on the URL. diff --git a/.changeset/pre/postgres-ssl.md b/.changeset/pre/postgres-ssl.md deleted file mode 100644 index dd45b0498..000000000 --- a/.changeset/pre/postgres-ssl.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Apply `POSTGRES_SSL_MODE` as `sslmode` on the Postgres connection URL. diff --git a/.changeset/pre/preserve-agent-builder-draft.md b/.changeset/pre/preserve-agent-builder-draft.md deleted file mode 100644 index 96c064caa..000000000 --- a/.changeset/pre/preserve-agent-builder-draft.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Preserve the active agent draft when returning to Build Agent from another page. diff --git a/.changeset/pre/preserve-schedule-search-width.md b/.changeset/pre/preserve-schedule-search-width.md deleted file mode 100644 index 02251cf69..000000000 --- a/.changeset/pre/preserve-schedule-search-width.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Prevent the schedule search field from shrinking and clipping its placeholder. diff --git a/.changeset/pre/public-mcp-get.md b/.changeset/pre/public-mcp-get.md deleted file mode 100644 index ef2c8c3f3..000000000 --- a/.changeset/pre/public-mcp-get.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Add public GET /api/v1/mcp-servers/{name} returning the chat projection with live per-user auth_status. diff --git a/.changeset/pre/python-event-delta-helpers.md b/.changeset/pre/python-event-delta-helpers.md deleted file mode 100644 index e44b1c8ef..000000000 --- a/.changeset/pre/python-event-delta-helpers.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Python SDK `is_event_delta` / `merge_event_delta` (PyPI version locksteps with this package on Version Packages). diff --git a/.changeset/pre/python-use-in-code-snippets.md b/.changeset/pre/python-use-in-code-snippets.md deleted file mode 100644 index 5c17b31e5..000000000 --- a/.changeset/pre/python-use-in-code-snippets.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Add Python TrueForge SDK stream and non-stream samples to agent Use in Code snippets, merging deltas with is_event_delta / merge_event_delta. diff --git a/.changeset/pre/quiet-chats-reset.md b/.changeset/pre/quiet-chats-reset.md deleted file mode 100644 index a21797f5d..000000000 --- a/.changeset/pre/quiet-chats-reset.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Stop highlighting New Chat while trying a named agent, and clear the Try Agent URL and history filter when starting a new chat. diff --git a/.changeset/pre/railway-database-url.md b/.changeset/pre/railway-database-url.md deleted file mode 100644 index 0e875f4cd..000000000 --- a/.changeset/pre/railway-database-url.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Accept `DATABASE_URL` for hosted mode so managed Postgres (e.g. Railway) can be wired without discrete `POSTGRES_*` vars. diff --git a/.changeset/pre/readonly-download-tooltip.md b/.changeset/pre/readonly-download-tooltip.md deleted file mode 100644 index cf82e56ab..000000000 --- a/.changeset/pre/readonly-download-tooltip.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Show an optional tooltip when sandbox artifact downloads are read-only. diff --git a/.changeset/pre/recent-draft-history.md b/.changeset/pre/recent-draft-history.md deleted file mode 100644 index adc2e1ad4..000000000 --- a/.changeset/pre/recent-draft-history.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Show draft and named sessions in the history panel, exclude agent-builder sessions, cache session pages, and switch history sessions in place without remounting the chat runtime. diff --git a/.changeset/pre/recheck-request-reply-heartbeat.md b/.changeset/pre/recheck-request-reply-heartbeat.md deleted file mode 100644 index dffb41db2..000000000 --- a/.changeset/pre/recheck-request-reply-heartbeat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-core": patch ---- - -Fail Redis request-reply waits when the executor heartbeat expires during polling instead of waiting until replyTimeoutMs. diff --git a/.changeset/pre/redis-tfg-key-prefix.md b/.changeset/pre/redis-tfg-key-prefix.md deleted file mode 100644 index 17b92c705..000000000 --- a/.changeset/pre/redis-tfg-key-prefix.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-core": patch -"@truefoundry/trueforge": patch ---- - -Namespace all Redis keys and pub/sub channels under `tfg:` so TrueForge can share a Redis instance without colliding with other apps. diff --git a/.changeset/pre/reduce-code-snippet-font.md b/.changeset/pre/reduce-code-snippet-font.md deleted file mode 100644 index 638be1d76..000000000 --- a/.changeset/pre/reduce-code-snippet-font.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Reduce the agent code snippet font size to match its surrounding controls. diff --git a/.changeset/pre/relative-sandbox-artifact-downloads.md b/.changeset/pre/relative-sandbox-artifact-downloads.md deleted file mode 100644 index 03b39c703..000000000 --- a/.changeset/pre/relative-sandbox-artifact-downloads.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Allow sandbox artifact downloads to use paths relative to the sandbox working directory. diff --git a/.changeset/pre/remote-agent-description-name.md b/.changeset/pre/remote-agent-description-name.md deleted file mode 100644 index 60a8705f4..000000000 --- a/.changeset/pre/remote-agent-description-name.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] Use agent name for ServiceFoundry remote agent description so save succeeds when instructions are empty. diff --git a/.changeset/pre/remove-modal-preload-tools.md b/.changeset/pre/remove-modal-preload-tools.md deleted file mode 100644 index 41ddfab19..000000000 --- a/.changeset/pre/remove-modal-preload-tools.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Polish the MCP tool selector controls, loading state, and API error messages. diff --git a/.changeset/pre/resume-session-new-tab.md b/.changeset/pre/resume-session-new-tab.md deleted file mode 100644 index b7bd177c1..000000000 --- a/.changeset/pre/resume-session-new-tab.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Resume Chat / Resume Agent building opens in a new tab when routed (`/sessions/:id` + square-arrow-out-up-right); without a router it keeps the in-shell resume fallback. diff --git a/.changeset/pre/runtime-config-drawer.md b/.changeset/pre/runtime-config-drawer.md deleted file mode 100644 index 668ce70d7..000000000 --- a/.changeset/pre/runtime-config-drawer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": minor ---- - -Open Runtime Config in a right-side drawer and label scheduled sessions consistently. diff --git a/.changeset/pre/runtime-ui-base-path.md b/.changeset/pre/runtime-ui-base-path.md deleted file mode 100644 index 840dd6302..000000000 --- a/.changeset/pre/runtime-ui-base-path.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Derive the UI public prefix from the pathname of `PUBLIC_BASE_URL` at process start so one published frontend can run behind any path-stripping proxy. diff --git a/.changeset/pre/schedule-agent-id.md b/.changeset/pre/schedule-agent-id.md deleted file mode 100644 index fc967ec47..000000000 --- a/.changeset/pre/schedule-agent-id.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Add NOT NULL `agent_id` on `schedule` (backfilled from `agent`), FK to `agent(id)` ON DELETE CASCADE (replacing the `(tenant_id, agent_name)` FK), and `(tenant_id, agent_id)` index for per-agent listing. diff --git a/.changeset/pre/schedule-isnew-drawer.md b/.changeset/pre/schedule-isnew-drawer.md deleted file mode 100644 index 9082c2255..000000000 --- a/.changeset/pre/schedule-isnew-drawer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Open the create schedule drawer when Agents "+ Schedule" navigates with `isNew=true`, then clear the flag from the URL. diff --git a/.changeset/pre/schedule-list-pagination.md b/.changeset/pre/schedule-list-pagination.md deleted file mode 100644 index 0dd67dcce..000000000 --- a/.changeset/pre/schedule-list-pagination.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -List schedules is token-paginated (`limit` / `page_token`) and filters by comma-separated `agent_names`. diff --git a/.changeset/pre/schedule-list-runs.md b/.changeset/pre/schedule-list-runs.md deleted file mode 100644 index f7bb1b7c0..000000000 --- a/.changeset/pre/schedule-list-runs.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Add GET /api/v1/schedules/{schedule_id}/runs to list a schedule's runs (newest `scheduled_for` first), with the same creator-or-admin access as other schedule routes. diff --git a/.changeset/pre/schedule-manual-run.md b/.changeset/pre/schedule-manual-run.md deleted file mode 100644 index 467e62a3d..000000000 --- a/.changeset/pre/schedule-manual-run.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Add POST /api/v1/schedules/runs to trigger an immediate schedule run diff --git a/.changeset/pre/schedule-recurrence-group.md b/.changeset/pre/schedule-recurrence-group.md deleted file mode 100644 index b47ec8515..000000000 --- a/.changeset/pre/schedule-recurrence-group.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Group schedule recurrence controls and display the cadence in an attached summary footer. diff --git a/.changeset/pre/schedule-run-reason.md b/.changeset/pre/schedule-run-reason.md deleted file mode 100644 index 73fb0c948..000000000 --- a/.changeset/pre/schedule-run-reason.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Persist optional `reason` on schedule runs when hand-off fails. Exposed on ScheduleRun responses as nullable string. diff --git a/.changeset/pre/schedule-runs-ui.md b/.changeset/pre/schedule-runs-ui.md deleted file mode 100644 index 772881f52..000000000 --- a/.changeset/pre/schedule-runs-ui.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": minor ---- - -Wire schedule test runs and show last five run status chips on the schedules table. Bump `@truefoundry/assistant-ui-runtime` to `0.1.25`. diff --git a/.changeset/pre/schedule-session-turn.md b/.changeset/pre/schedule-session-turn.md deleted file mode 100644 index 81f6ad57c..000000000 --- a/.changeset/pre/schedule-session-turn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Dispatch schedule runs through the session/turn API: get-or-create a session keyed by run id, then create a turn only when that session has none. diff --git a/.changeset/pre/scheduled-turn-agent-token.md b/.changeset/pre/scheduled-turn-agent-token.md deleted file mode 100644 index 1e8e17eef..000000000 --- a/.changeset/pre/scheduled-turn-agent-token.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": minor ---- - -Schedule runs now execute through one internal API call authenticated with `TRUEFORGE_API_KEY`. The server loads the saved run, schedule, and agent, then uses one agent-scoped token for turn resources in TrueFoundry mode. diff --git a/.changeset/pre/schedules-lazy-agents.md b/.changeset/pre/schedules-lazy-agents.md deleted file mode 100644 index c399515ca..000000000 --- a/.changeset/pre/schedules-lazy-agents.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Stop draining the full agents catalog on Schedules mount; load agents only when the filter opens (infinite scroll). diff --git a/.changeset/pre/schedules-list-limit-100.md b/.changeset/pre/schedules-list-limit-100.md deleted file mode 100644 index 874069f85..000000000 --- a/.changeset/pre/schedules-list-limit-100.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Show active/paused schedule counts in the Agents library, pin selected MCPs when reopening the tools modal, and align paused schedule badge colors. diff --git a/.changeset/pre/schedules-side-drawer.md b/.changeset/pre/schedules-side-drawer.md deleted file mode 100644 index 0d866b0ca..000000000 --- a/.changeset/pre/schedules-side-drawer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": minor ---- - -Add global Schedules page at `/schedules` with listing, popover-based filters, and create/edit drawer wired to the schedule API. New schedules save as paused, open a Test Schedule review with MCP connect status, and support Activate Anyway. List schedules uses server token pagination and multi-agent filters. Agents shows a Schedules count column (warning when any are paused) loaded via a batched list for on-screen agents. Add Table primitives with client-side and token pagination plus portal DropdownMenu so row actions are not clipped by overflow. Export a reusable popover select with single- and multi-select modes. diff --git a/.changeset/pre/sdk-internal-agents-get-code-snippets.md b/.changeset/pre/sdk-internal-agents-get-code-snippets.md deleted file mode 100644 index 099be6d46..000000000 --- a/.changeset/pre/sdk-internal-agents-get-code-snippets.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-sdk": patch ---- - -Add `internal.agents.getCodeSnippets` API under the new SDK `internal` namespace. diff --git a/.changeset/pre/session-external-id.md b/.changeset/pre/session-external-id.md deleted file mode 100644 index 16193f1d9..000000000 --- a/.changeset/pre/session-external-id.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-core": patch -"@truefoundry/trueforge-sdk": patch ---- - -Add tenant-unique optional session `external_id`, `Sessions.getOrCreateByExternalId`, and an idempotent `POST /internal/sessions/get-or-create-by-external-id` endpoint and SDK method. diff --git a/.changeset/pre/session-list-delete-menu.md b/.changeset/pre/session-list-delete-menu.md deleted file mode 100644 index 85b93b8d5..000000000 --- a/.changeset/pre/session-list-delete-menu.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Add a hover ellipsis delete menu with confirmation dialog on Sessions list rows. diff --git a/.changeset/pre/session-metadata.md b/.changeset/pre/session-metadata.md deleted file mode 100644 index 22603d358..000000000 --- a/.changeset/pre/session-metadata.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-core": patch -"@truefoundry/trueforge-sdk": patch ---- - -Add caller-owned session `metadata` (`Record` with size limits) on create, update, and read. Persist as a new `session.metadata` jsonb column; leave session `custom` unchanged. diff --git a/.changeset/pre/session-rename-api.md b/.changeset/pre/session-rename-api.md deleted file mode 100644 index a71c250a2..000000000 --- a/.changeset/pre/session-rename-api.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Allow renaming sessions via `PATCH /api/v1/sessions/{session_id}` with an optional `title` (trimmed, 1–50 chars). diff --git a/.changeset/pre/session-schedule-polish.md b/.changeset/pre/session-schedule-polish.md deleted file mode 100644 index be60fef9e..000000000 --- a/.changeset/pre/session-schedule-polish.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Improve Agent Sessions with a resizable divider, accurate turn grouping, optional cost display, and reliable timeline tooltips with sub-agent details. Simplify schedule recurrence and default new schedules to the local timezone. diff --git a/.changeset/pre/session-source.md b/.changeset/pre/session-source.md deleted file mode 100644 index ee18adff4..000000000 --- a/.changeset/pre/session-source.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-core": patch -"@truefoundry/trueforge-sdk": patch ---- - -Add optional session `source`. Persist as nullable JSONB with a list filter index; expose on session responses and list via `source_type` / `source_id`. Schedule dispatch sets source on create; public create/update do not accept it. diff --git a/.changeset/pre/settings-nav-selected.md b/.changeset/pre/settings-nav-selected.md deleted file mode 100644 index ebaf9884c..000000000 --- a/.changeset/pre/settings-nav-selected.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Settings sidebar uses a subtle primary tint for the selected section instead of a solid fill. diff --git a/.changeset/pre/settings-route-capability.md b/.changeset/pre/settings-route-capability.md deleted file mode 100644 index 23e248fc9..000000000 --- a/.changeset/pre/settings-route-capability.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Unregister the `/settings` route when Settings chrome is unavailable (no catalog or `capabilities.settings.enabled` is false), matching the sidebar Settings button gate. diff --git a/.changeset/pre/sfy-model-point-lookup.md b/.changeset/pre/sfy-model-point-lookup.md deleted file mode 100644 index 1034cf96b..000000000 --- a/.changeset/pre/sfy-model-point-lookup.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] Point-lookup ServiceFoundry model integrations by provider account and model name, and fetch the full catalog in one unpaginated request. diff --git a/.changeset/pre/show-agent-metric-statistics.md b/.changeset/pre/show-agent-metric-statistics.md deleted file mode 100644 index f79bb7556..000000000 --- a/.changeset/pre/show-agent-metric-statistics.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Show turn and duration statistics alongside the featured agent metric cards. diff --git a/.changeset/pre/sidebar-icon-rail.md b/.changeset/pre/sidebar-icon-rail.md deleted file mode 100644 index 1960bc434..000000000 --- a/.changeset/pre/sidebar-icon-rail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": minor ---- - -Sidebar layout is a permanent icon+label nav rail (no expand/collapse). Recent chats are hidden from the sidebar and mobile drawer; the drawer shows nav actions only. diff --git a/.changeset/pre/sidebar-text-token.md b/.changeset/pre/sidebar-text-token.md deleted file mode 100644 index 83c3e1a54..000000000 --- a/.changeset/pre/sidebar-text-token.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@truefoundry/trueforge-ui': minor ---- - -Add a `sidebarText` semantic token for sidebar nav labels, refresh trueforge sidebar colors, set trueforge base `radius` to `0.375rem` (6px), and set sidebar / thread-list control corners to `0.75rem` (12px). - -Expose design-system `Button` (`Button.Primary` / `.Secondary` / `.Ghost` / `.Destructive`). `ButtonVariant` is now `primary | secondary | ghost | destructive` (`default` renamed to `primary`; `outline` removed — use `secondary`). Button sizes are `large` (default) and `small` (`icon` for icon-only). diff --git a/.changeset/pre/simplify-save-agent.md b/.changeset/pre/simplify-save-agent.md deleted file mode 100644 index 1ec8a377b..000000000 --- a/.changeset/pre/simplify-save-agent.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": minor ---- - -Open Save Agent in a right-side drawer with only the agent name while preserving configuration from Agent Config. diff --git a/.changeset/pre/simplify-use-in-code-snippets.md b/.changeset/pre/simplify-use-in-code-snippets.md deleted file mode 100644 index 4ebfc3bf9..000000000 --- a/.changeset/pre/simplify-use-in-code-snippets.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Simplify agent Use In Code snippets to create/stream/print/map/merge events. diff --git a/.changeset/pre/skill-version-menu-scroll.md b/.changeset/pre/skill-version-menu-scroll.md deleted file mode 100644 index 6c9b2483e..000000000 --- a/.changeset/pre/skill-version-menu-scroll.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Cap the skill version menu height and scroll it, so skills with many versions no longer run off screen. While it is open, scrolling is confined to the menu. diff --git a/.changeset/pre/skill-version-picker.md b/.changeset/pre/skill-version-picker.md deleted file mode 100644 index 129948b59..000000000 --- a/.changeset/pre/skill-version-picker.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -[truefoundry] Show TrueFoundry skill repositories and versions in skill pickers, load version choices lazily, preserve the chosen version FQN when attaching skills, keep picker ordering stable while open, and add registry-only preload controls to selected skill pills. diff --git a/.changeset/pre/skills-no-agent-vend-token.md b/.changeset/pre/skills-no-agent-vend-token.md deleted file mode 100644 index 827397cb3..000000000 --- a/.changeset/pre/skills-no-agent-vend-token.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] TrueFoundry skills: use caller JWT for catalog/validate; never agent vend tokens. diff --git a/.changeset/pre/sour-suns-greet.md b/.changeset/pre/sour-suns-greet.md deleted file mode 100644 index a070e7517..000000000 --- a/.changeset/pre/sour-suns-greet.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Fetch MCP servers and gateway installations in parallel. diff --git a/.changeset/pre/split-draft-preferences.md b/.changeset/pre/split-draft-preferences.md deleted file mode 100644 index 1a74137d9..000000000 --- a/.changeset/pre/split-draft-preferences.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Split New Chat and New Agent draft preference stores. New Chat remembers only model (+ reasoning), skills, and MCP; New Agent keeps the full seed including runtime config. diff --git a/.changeset/pre/sqlite-wal-disk-full.md b/.changeset/pre/sqlite-wal-disk-full.md deleted file mode 100644 index 2d816c133..000000000 --- a/.changeset/pre/sqlite-wal-disk-full.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Cap SQLite leftover WAL at 64 MiB after checkpoint so a full disk cannot grow the WAL unbounded. diff --git a/.changeset/pre/tf-external-login.md b/.changeset/pre/tf-external-login.md deleted file mode 100644 index c9a11bc3e..000000000 --- a/.changeset/pre/tf-external-login.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] TrueFoundry-mode `/api/v1/auth/login` redirects to `PUBLIC_BASE_URL` origin + caller `return_to` (platform `/signin/external?redirectPath=…`). diff --git a/.changeset/pre/tf-mcp-auth-all-modes.md b/.changeset/pre/tf-mcp-auth-all-modes.md deleted file mode 100644 index 8f9fddaeb..000000000 --- a/.changeset/pre/tf-mcp-auth-all-modes.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] TrueFoundry MCP: live SFY auth status on single-server GET and mid-turn authorize gating for every auth mode. diff --git a/.changeset/pre/tf-mcp-connect-auth.md b/.changeset/pre/tf-mcp-connect-auth.md deleted file mode 100644 index a6ccbd3bd..000000000 --- a/.changeset/pre/tf-mcp-connect-auth.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-ui": patch -"@truefoundry/trueforge-sdk": patch ---- - -[truefoundry] Wire TrueFoundry MCP authorize, status, and delete through ServiceFoundry; stub list auth_status; gate oauth2 invoke mid-turn with authRequired; paginate MCP server lists. UI treats SFY consent `code`/`error` on the FE landing like local DCR success/failure. diff --git a/.changeset/pre/tf-mcp-gateway-bearer.md b/.changeset/pre/tf-mcp-gateway-bearer.md deleted file mode 100644 index 87e080a63..000000000 --- a/.changeset/pre/tf-mcp-gateway-bearer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] TrueFoundry MCP invoke headers are owned by the MCP store (`resolveInvokeHeaders`), so gateway Bearer comes from the request-scoped store rather than being threaded through turn/tools APIs. diff --git a/.changeset/pre/tfg-per-server-mcp-headers.md b/.changeset/pre/tfg-per-server-mcp-headers.md deleted file mode 100644 index bf3718b88..000000000 --- a/.changeset/pre/tfg-per-server-mcp-headers.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -Per-MCP-server request headers via `x-tfg-mcp-headers`, merged into the invoke headers for the named server. Lets a caller that authenticates as one identity give each MCP server the identity it should actually see. diff --git a/.changeset/pre/tfy-daytona-sandbox-mode.md b/.changeset/pre/tfy-daytona-sandbox-mode.md deleted file mode 100644 index f2691be8b..000000000 --- a/.changeset/pre/tfy-daytona-sandbox-mode.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] TrueFoundry mode: shared Daytona sandbox via TRUEFOUNDRY_SANDBOX_* env and settings-server snapshot (lru-cache TTL). diff --git a/.changeset/pre/tfy-import-agent-id.md b/.changeset/pre/tfy-import-agent-id.md deleted file mode 100644 index 1402aa6b1..000000000 --- a/.changeset/pre/tfy-import-agent-id.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] Pass TrueFoundry agents metadata through TrueFoundry agent import. diff --git a/.changeset/pre/tfy-sandbox-manifest-union.md b/.changeset/pre/tfy-sandbox-manifest-union.md deleted file mode 100644 index f17b47f14..000000000 --- a/.changeset/pre/tfy-sandbox-manifest-union.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-core": patch -"@truefoundry/trueforge-sdk": patch ---- - -[truefoundry] TrueFoundry mode: env-backed Daytona | truefoundry sandbox via TRUEFOUNDRY_SANDBOX_* (static SETTINGS JSON). Settings OpenAPI stays Daytona-only (`SandboxProviderManifest`); truefoundry is store-internal (`StoredSandboxProviderManifest`). diff --git a/.changeset/pre/tfy-sandbox-pwd-instructions.md b/.changeset/pre/tfy-sandbox-pwd-instructions.md deleted file mode 100644 index 36f3511dd..000000000 --- a/.changeset/pre/tfy-sandbox-pwd-instructions.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-core": patch ---- - -[truefoundry] Add TFY sandbox agent instructions to discover the working directory via `pwd` before writing files. diff --git a/.changeset/pre/tfy-tenant-provider-account-filter.md b/.changeset/pre/tfy-tenant-provider-account-filter.md deleted file mode 100644 index eb70a1782..000000000 --- a/.changeset/pre/tfy-tenant-provider-account-filter.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": patch ---- - -[truefoundry] TrueFoundry mode: optional `TRUEFOUNDRY_TENANT_ID_TO_ALLOWED_MODEL_PROVIDER_ACCOUNTS` JSON map of tenant id → provider account names to limit which virtual providers are listed per tenant. diff --git a/.changeset/pre/thinking-orb-loader.md b/.changeset/pre/thinking-orb-loader.md deleted file mode 100644 index 9d8c76f04..000000000 --- a/.changeset/pre/thinking-orb-loader.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-ui": patch ---- - -Use an animated thinking orb for application boot and server initialization. diff --git a/.changeset/pre/trueforge-dual-vend-tokens.md b/.changeset/pre/trueforge-dual-vend-tokens.md deleted file mode 100644 index 75ffd75b4..000000000 --- a/.changeset/pre/trueforge-dual-vend-tokens.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge': minor ---- - -[truefoundry] Use ServiceFoundry dual vend-token response: authenticate as the agent for registry lookups, and as the user (with agent in `act`) for MCP authorize/auth status, gateway model api_key, and MCP invoke. diff --git a/.changeset/pre/trueforge-postgres-schema.md b/.changeset/pre/trueforge-postgres-schema.md deleted file mode 100644 index 666ed95e8..000000000 --- a/.changeset/pre/trueforge-postgres-schema.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge": minor ---- - -Store Postgres app tables and Kysely migration bookkeeping in a dedicated `trueforge` schema, with an automatic one-time move from `public` so existing installs keep their data and migration history. diff --git a/.changeset/pre/truefoundry-ai-gateway-models.md b/.changeset/pre/truefoundry-ai-gateway-models.md deleted file mode 100644 index b41d9d2d6..000000000 --- a/.changeset/pre/truefoundry-ai-gateway-models.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge": minor -"@truefoundry/trueforge-core": minor -"@truefoundry/trueforge-ui": minor ---- - -[truefoundry] Add a TrueFoundry-managed model registry. When `TRUEFOUNDRY_SERVICEFOUNDRY_SERVER_URL` is set, models are listed from the TrueFoundry ServiceFoundry server and turns are routed through the tenant's default AI Gateway with the caller's token. Mutually exclusive with OIDC. Supports internal mutual TLS to the ServiceFoundry server via `TRUEFOUNDRY_MTLS_ENABLED`/`TRUEFOUNDRY_MTLS_CERTS_DIR`. diff --git a/.changeset/pre/truefoundry-cache-control-ephemeral.md b/.changeset/pre/truefoundry-cache-control-ephemeral.md deleted file mode 100644 index 66887d212..000000000 --- a/.changeset/pre/truefoundry-cache-control-ephemeral.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-core': patch ---- - -[truefoundry] Default `cache_control` to `{ type: 'ephemeral' }` for `truefoundry` provider model calls (overridable via request body). diff --git a/.changeset/pre/truefoundry-managed-mcp.md b/.changeset/pre/truefoundry-managed-mcp.md deleted file mode 100644 index 78e48c1fe..000000000 --- a/.changeset/pre/truefoundry-managed-mcp.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-sdk": patch ---- - -[truefoundry] Add TrueFoundry-managed MCP list/get (SFY registry, gateway proxy URL, create/update 424). diff --git a/.changeset/pre/turn-llm-dedupe.md b/.changeset/pre/turn-llm-dedupe.md deleted file mode 100644 index 35bbf9d1b..000000000 --- a/.changeset/pre/turn-llm-dedupe.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-core": patch ---- - -Dedupe LLM resolve within a turn so parent and sub-agents sharing a model name call deps.llm once. diff --git a/.changeset/pre/turn-token-tooltip.md b/.changeset/pre/turn-token-tooltip.md deleted file mode 100644 index f237abef9..000000000 --- a/.changeset/pre/turn-token-tooltip.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': patch ---- - -Per-turn Tokens in Agent Sessions shows a keyboard-accessible Input / Output / Cached tooltip (Input is uncached). diff --git a/.changeset/pre/turn-update-event.md b/.changeset/pre/turn-update-event.md deleted file mode 100644 index 583eb4ac3..000000000 --- a/.changeset/pre/turn-update-event.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@truefoundry/trueforge-core": patch -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-ui": patch ---- - -Add a `turn.update` event schema with paused/running status and `action_required_on_events`. diff --git a/.changeset/pre/unified-page-header-chrome.md b/.changeset/pre/unified-page-header-chrome.md deleted file mode 100644 index 5f82a3270..000000000 --- a/.changeset/pre/unified-page-header-chrome.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Share a single `PageHeader` across chat and list chrome so title size/height stay consistent, and drop decorative title icons. diff --git a/.changeset/pre/unified-request-context-auth.md b/.changeset/pre/unified-request-context-auth.md deleted file mode 100644 index df05ca6e8..000000000 --- a/.changeset/pre/unified-request-context-auth.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge': minor ---- - -Unify request-scoped RequestContext across standalone, OIDC, and TrueFoundry auth. `/auth/me` returns `{ data: { type, tenant_id, subject, roles } }` (`type` is `oidc-connected` | `default`; OpenAPI/SDK regen deferred to CI). diff --git a/.changeset/pre/user-avatar-slot.md b/.changeset/pre/user-avatar-slot.md deleted file mode 100644 index 3eccbc061..000000000 --- a/.changeset/pre/user-avatar-slot.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch -"@truefoundry/trueforge": patch ---- - -Add a host-overridable user avatar slot with initials and display-name chrome across every built-in layout, wired to the current authenticated frontend user. diff --git a/.changeset/pre/user-permissions-v2.md b/.changeset/pre/user-permissions-v2.md deleted file mode 100644 index 531393034..000000000 --- a/.changeset/pre/user-permissions-v2.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': minor ---- - -Add optional resource permissions and gate agent, schedule, and session mutations. diff --git a/.changeset/pre/web-search-provider.md b/.changeset/pre/web-search-provider.md deleted file mode 100644 index f2e25e671..000000000 --- a/.changeset/pre/web-search-provider.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge-core": minor -"@truefoundry/trueforge": minor ---- - -Add built-in web search/fetch system tools (Parallel via `parallel-web`), gated by `AgentSpec.config.web_search` (default off) and TrueFoundry-mode host env `TRUEFOUNDRY_WEB_SEARCH_PROVIDER`. New drafts seed `web_search.enabled` from `/capabilities` when a provider is configured. diff --git a/.changeset/pre/weekly-days-before-time.md b/.changeset/pre/weekly-days-before-time.md deleted file mode 100644 index 7b3772dbd..000000000 --- a/.changeset/pre/weekly-days-before-time.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Show weekly schedule days before the time controls. diff --git a/.changeset/pre/wide-agent-config-panel.md b/.changeset/pre/wide-agent-config-panel.md deleted file mode 100644 index ab0fa49ab..000000000 --- a/.changeset/pre/wide-agent-config-panel.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Match the Build Agent configuration panel width to the agent playground and identify sessions created by schedule runs. diff --git a/.changeset/pre/wider-sidebar-rail.md b/.changeset/pre/wider-sidebar-rail.md deleted file mode 100644 index 8c41fa9fc..000000000 --- a/.changeset/pre/wider-sidebar-rail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@truefoundry/trueforge-ui": patch ---- - -Widen the sidebar rail and its nav buttons so labels like "Build Agent" have more breathing room. diff --git a/.changeset/pre/windows-build-scripts.md b/.changeset/pre/windows-build-scripts.md deleted file mode 100644 index 4a794407d..000000000 --- a/.changeset/pre/windows-build-scripts.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@truefoundry/trueforge-core': patch -'@truefoundry/trueforge-ui': patch -'@truefoundry/trueforge': patch ---- - -Keep `npx @truefoundry/trueforge` working on native Windows: import Kysely migrations with `pathToFileURL`, and keep sandbox guest paths POSIX. Source development stays Unix/WSL; CI also runs unit and SQLite store tests on Windows. diff --git a/.changeset/turn-active-executor-id.md b/.changeset/turn-active-executor-id.md deleted file mode 100644 index d2d370313..000000000 --- a/.changeset/turn-active-executor-id.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@truefoundry/trueforge": patch -"@truefoundry/trueforge-core": patch ---- - -Persist turn ownership as `active_executor_id` on the turn row, mint plain ULID turn ids, and peer cancel via the DB owner instead of embedding the executor in the turn id. diff --git a/.changeset/web-search-agent-spec.md b/.changeset/web-search-agent-spec.md deleted file mode 100644 index 0e0bd1102..000000000 --- a/.changeset/web-search-agent-spec.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@truefoundry/trueforge-ui': minor ---- - -Gate `config.webSearch` on host capabilities: New Chat auto-enables with no toggle; New Agent / edit show a Runtime Config switch (default on when absent). diff --git a/.github/fern/openapi/openapi.json b/.github/fern/openapi/openapi.json index 7a06b406e..b9d8e2deb 100644 --- a/.github/fern/openapi/openapi.json +++ b/.github/fern/openapi/openapi.json @@ -5816,7 +5816,7 @@ "info": { "description": "HTTP API for the TrueForge agent server (`/api/v1`). Interactive docs are served at `/api/v1/docs` (OpenAPI JSON at `/api/v1/openapi.json`).\n\n**Authentication:** Standalone auth accepts requests without credentials — middleware stamps a local default user. When OIDC or TrueFoundry auth is configured, protected routes require a valid cookie or `Authorization: Bearer` token. There is no built-in API-key scheme; pass custom headers only if your reverse proxy or IdP layer requires them.\n\nCovers DB-backed sessions, the agent registry, settings catalogs, and model/MCP/skill/sandbox providers.", "title": "TrueForge API", - "version": "0.2.0-rc.14" + "version": "0.2.0" }, "openapi": "3.1.0", "paths": { diff --git a/docs/openapi.json b/docs/openapi.json index 7a06b406e..b9d8e2deb 100644 --- a/docs/openapi.json +++ b/docs/openapi.json @@ -5816,7 +5816,7 @@ "info": { "description": "HTTP API for the TrueForge agent server (`/api/v1`). Interactive docs are served at `/api/v1/docs` (OpenAPI JSON at `/api/v1/openapi.json`).\n\n**Authentication:** Standalone auth accepts requests without credentials — middleware stamps a local default user. When OIDC or TrueFoundry auth is configured, protected routes require a valid cookie or `Authorization: Bearer` token. There is no built-in API-key scheme; pass custom headers only if your reverse proxy or IdP layer requires them.\n\nCovers DB-backed sessions, the agent registry, settings catalogs, and model/MCP/skill/sandbox providers.", "title": "TrueForge API", - "version": "0.2.0-rc.14" + "version": "0.2.0" }, "openapi": "3.1.0", "paths": { diff --git a/packages/trueforge-core/CHANGELOG.md b/packages/trueforge-core/CHANGELOG.md index 57100bac1..074de4930 100644 --- a/packages/trueforge-core/CHANGELOG.md +++ b/packages/trueforge-core/CHANGELOG.md @@ -1,5 +1,50 @@ # @truefoundry/trueforge-core +## 0.2.0 + +### Minor Changes + +- a70543b: Agent access is decided only by the `Authorizer`: standalone/OIDC lets everyone list and use agents and restricts update/delete to the creator; TrueFoundry uses external permissions api. + + You can read a session, turn, events, metrics, schedule, or its runs if you created it, or if you manage the named agent it is bound to. Creating still requires permission to use that agent. Only the creator can update, delete, or cancel a session, create a turn, or download sandbox files. Only the creator can update, delete, pause, resume, or run a schedule. An OIDC settings admin can no longer see other users' schedules. + +- 9bfcdaa: Replace string creator fields (`created_by` / `triggered_by`) with a non-null `created_by_subject` JSON object on agent, session, schedule, and schedule_run. Ownership and list filters use `tenant_id` + `created_by_subject.subject_id`. +- 0297727: Add context-management compaction triggers with model-aware defaults and migrate persisted legacy token thresholds. +- 8f1a2dc: [truefoundry] Add a TrueFoundry-managed model registry. When `TRUEFOUNDRY_SERVICEFOUNDRY_SERVER_URL` is set, models are listed from the TrueFoundry ServiceFoundry server and turns are routed through the tenant's default AI Gateway with the caller's token. Mutually exclusive with OIDC. Supports internal mutual TLS to the ServiceFoundry server via `TRUEFOUNDRY_MTLS_ENABLED`/`TRUEFOUNDRY_MTLS_CERTS_DIR`. +- e4c4b56: Add built-in web search/fetch system tools (Parallel via `parallel-web`), gated by `AgentSpec.config.web_search` (default off) and TrueFoundry-mode host env `TRUEFOUNDRY_WEB_SEARCH_PROVIDER`. New drafts seed `web_search.enabled` from `/capabilities` when a provider is configured. + +### Patch Changes + +- 354991d: Prefer OpenUI for inline charts over sandbox plot images when OpenUI is available. +- fad55d8: Persist turn ownership as `active_executor_id` on the turn row, mint plain ULID turn ids, and peer cancel via the DB owner instead of embedding the executor in the turn id. +- d89b2ff: Persist zero-initialized metrics on agent sessions. +- 172bf14: Add caller-scoped session metrics meters, charts, and chart-data under `/internal/metrics` via a server-owned `ISessionMetricsStore`. +- d89b2ff: Fold session metrics totals on createTurn and terminal writes. +- db37b6e: Sandbox skills: unify git and registry mounts onto `.tfy-desired-skills.json` (SkillMounter + skill_downloader), and always attach a mounter so existing skills are cleaned up. +- 762ecc0: [truefoundry] TrueFoundry skills catalog: proxy GET /skills and /skills/versions from ServiceFoundry; settings skill writes return 424. SkillManifest is a type-discriminated oneOf of GitSkill | TrueFoundryRegistrySkill (`type: truefoundry`; name is FQN, display_name is short). AvailableSkill exposes optional metadata (display_name, repository_name, version). AgentSpec skill refs allow opaque FQN names, optional preload (registry), and max 50. UI draft skill mounts map catalog `id` to AgentSpec `name`. +- fc38f74: AgentSpec skills: TrueFoundry save/turn resolve via SFY; standalone git validate/resolve on the skill store. +- 01ee934: Abort timed-out remote MCP `client.connect()` so the handshake does not leak sockets. +- 940c4e5: Prefer MCP Python SDK 2.0 snake_case tool annotation fields, with camelCase fallback for older SDKs, without changing destructive-tool detection behavior. +- c40129c: Cap Daytona status-refresh calls at 1 minute so a stalled provider cannot hang request handlers. +- a655537: Update published dependency ranges (AI SDK, Hono, MCP SDK, Redis, assistant-ui, and related packages). +- 4111287: Add POST `/api/internal/list-permissions` via `Authorizer.getPermissions` (owner grants for schedules/sessions; agents include `USE`, with TrueFoundry agents mapped from SFY `USE_AGENT`/`MANAGE_AGENT`/`DELETE_AGENT`). +- a000b47: List sessions accepts `metadata[key]=value` query params (OpenAPI deepObject) for exact metadata containment filtering. Bare JSON-string `metadata` query params are rejected. Metadata keys are limited to 32 characters and cannot include `[]` or whitespace so they do not collide with the bracket query form. +- 551b6a8: Default MCP tool approval to `@destructive` only. Selecting Other/read-only tools clears approval; selecting destructive tools keeps it on. Migrate mounts still carrying the old `@write`+`@destructive` default. +- 2cb51a5: Raise remote MCP undici bodyTimeout to 30m so idle SSE streams are not killed at 5m; warn on Body Timeout and stringify other transport errors. +- c83145a: Abort remote MCP HTTP response bodies over 50MB (`MCP_TOOL_CALL_MAX_RESPONSE_BYTES`) so oversized tool results cannot OOM the process. +- 0ec8dc6: Omit session `total_cost_in_usd` when cost is unavailable (instead of defaulting to 0), matching turn metrics. +- bf5233d: Fail Redis request-reply waits when the executor heartbeat expires during polling instead of waiting until replyTimeoutMs. +- a36ffaf: Namespace all Redis keys and pub/sub channels under `tfg:` so TrueForge can share a Redis instance without colliding with other apps. +- 38ce068: Add tenant-unique optional session `external_id`, `Sessions.getOrCreateByExternalId`, and an idempotent `POST /internal/sessions/get-or-create-by-external-id` endpoint and SDK method. +- b654052: Add caller-owned session `metadata` (`Record` with size limits) on create, update, and read. Persist as a new `session.metadata` jsonb column; leave session `custom` unchanged. +- 11865b4: Add optional session `source`. Persist as nullable JSONB with a list filter index; expose on session responses and list via `source_type` / `source_id`. Schedule dispatch sets source on create; public create/update do not accept it. +- 44f9cbe: [truefoundry] TrueFoundry mode: env-backed Daytona | truefoundry sandbox via TRUEFOUNDRY_SANDBOX_* (static SETTINGS JSON). Settings OpenAPI stays Daytona-only (`SandboxProviderManifest`); truefoundry is store-internal (`StoredSandboxProviderManifest`). +- ba79ce5: [truefoundry] Add TFY sandbox agent instructions to discover the working directory via `pwd` before writing files. +- afe816e: [truefoundry] Default `cache_control` to `{ type: 'ephemeral' }` for `truefoundry` provider model calls (overridable via request body). +- a5f220f: Dedupe LLM resolve within a turn so parent and sub-agents sharing a model name call deps.llm once. +- a655537: Add a `turn.update` event schema with paused/running status and `action_required_on_events`. +- 5d72138: Keep `npx @truefoundry/trueforge` working on native Windows: import Kysely migrations with `pathToFileURL`, and keep sandbox guest paths POSIX. Source development stays Unix/WSL; CI also runs unit and SQLite store tests on Windows. + ## 0.2.0-rc.6 ### Minor Changes diff --git a/packages/trueforge-core/package.json b/packages/trueforge-core/package.json index 02d08accf..b7c5a54c2 100644 --- a/packages/trueforge-core/package.json +++ b/packages/trueforge-core/package.json @@ -1,6 +1,6 @@ { "name": "@truefoundry/trueforge-core", - "version": "0.2.0-rc.6", + "version": "0.2.0", "description": "TrueForge Agent Harness library.", "author": "TrueFoundry", "license": "MIT", diff --git a/packages/trueforge-sdk/CHANGELOG.md b/packages/trueforge-sdk/CHANGELOG.md index d94afbb22..8a04435bd 100644 --- a/packages/trueforge-sdk/CHANGELOG.md +++ b/packages/trueforge-sdk/CHANGELOG.md @@ -1,5 +1,42 @@ +## [0.2.0] - 2026-09-18 + ## [0.2.0-rc.9] - 2026-09-17 +## 0.2.0 + +### Minor Changes + +- 74eae6c: Remove pagination from list MCP servers across the API, SDK, and UI; return and search the complete configured MCP catalog client-side. + +### Patch Changes + +- 648273b: Regenerate SDK from updated OpenAPI spec. +- 648273b: Regenerate SDK from updated OpenAPI spec. +- 648273b: Regenerate SDK from updated OpenAPI spec. +- 648273b: Regenerate SDK from updated OpenAPI spec. +- 648273b: Regenerate SDK from updated OpenAPI spec. +- 648273b: Regenerate SDK from updated OpenAPI spec. +- 648273b: Regenerate SDK from updated OpenAPI spec. +- 648273b: Regenerate SDK from updated OpenAPI spec. +- 648273b: Regenerate SDK from updated OpenAPI spec. +- 648273b: Regenerate SDK from updated OpenAPI spec. +- 648273b: Regenerate SDK from updated OpenAPI spec. +- 648273b: Regenerate SDK from updated OpenAPI spec. +- 648273b: Regenerate SDK from updated OpenAPI spec. +- 2dcb3a0: Add `created_by_me` to list sessions and list schedules so callers can restrict results to resources they created (excluding managed-agent visibility). +- a000b47: List sessions accepts `metadata[key]=value` query params (OpenAPI deepObject) for exact metadata containment filtering. Bare JSON-string `metadata` query params are rejected. Metadata keys are limited to 32 characters and cannot include `[]` or whitespace so they do not collide with the bracket query form. +- 9501536: [truefoundry] Make MCPServerManifest a type-discriminated oneOf of RemoteMCPServerManifest and TrueFoundryMCPServerManifest. +- 0ec8dc6: Omit session `total_cost_in_usd` when cost is unavailable (instead of defaulting to 0), matching turn metrics. +- dc2151f: Paginate `GET /api/v1/agents` with `limit` / `page_token` and a `pagination` envelope; optional `agent_name` filters by case-insensitive substring. Agents library uses rows-per-page and prev/next against the token-paginated API. Schedule create and the schedules listing agent filter use a searchable agent combobox backed by the same filtered list API. +- 134dcb9: Python SDK `is_event_delta` / `merge_event_delta` (PyPI version locksteps with this package on Version Packages). +- 52987a7: Add `internal.agents.getCodeSnippets` API under the new SDK `internal` namespace. +- 38ce068: Add tenant-unique optional session `external_id`, `Sessions.getOrCreateByExternalId`, and an idempotent `POST /internal/sessions/get-or-create-by-external-id` endpoint and SDK method. +- b654052: Add caller-owned session `metadata` (`Record` with size limits) on create, update, and read. Persist as a new `session.metadata` jsonb column; leave session `custom` unchanged. +- 11865b4: Add optional session `source`. Persist as nullable JSONB with a list filter index; expose on session responses and list via `source_type` / `source_id`. Schedule dispatch sets source on create; public create/update do not accept it. +- 4c1260e: [truefoundry] Wire TrueFoundry MCP authorize, status, and delete through ServiceFoundry; stub list auth_status; gate oauth2 invoke mid-turn with authRequired; paginate MCP server lists. UI treats SFY consent `code`/`error` on the FE landing like local DCR success/failure. +- 44f9cbe: [truefoundry] TrueFoundry mode: env-backed Daytona | truefoundry sandbox via TRUEFOUNDRY_SANDBOX_* (static SETTINGS JSON). Settings OpenAPI stays Daytona-only (`SandboxProviderManifest`); truefoundry is store-internal (`StoredSandboxProviderManifest`). +- f175245: [truefoundry] Add TrueFoundry-managed MCP list/get (SFY registry, gateway proxy URL, create/update 424). + ## [0.2.0-rc.8] - 2026-09-15 ## 0.2.0-rc.9 diff --git a/packages/trueforge-sdk/package.json b/packages/trueforge-sdk/package.json index 8287ffb70..13ccde5b7 100644 --- a/packages/trueforge-sdk/package.json +++ b/packages/trueforge-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@truefoundry/trueforge-sdk", - "version": "0.2.0-rc.9", + "version": "0.2.0", "private": false, "type": "commonjs", "main": "./dist/cjs/index.js", diff --git a/packages/trueforge-sdk/src/BaseClient.ts b/packages/trueforge-sdk/src/BaseClient.ts index 2edbadd13..658a02a9a 100644 --- a/packages/trueforge-sdk/src/BaseClient.ts +++ b/packages/trueforge-sdk/src/BaseClient.ts @@ -65,8 +65,8 @@ export function normalizeClientOptions