diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 17e9be8023..35eeef01e4 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -7,6 +7,9 @@ ## Documentation -- [ ] No Docs Needed: +- [ ] **No Docs Needed (skips all doc checks below)** +- [ ] No CLI Docs Needed (skip check for `docs/development/reference/cli-reference.mdx`) +- [ ] No Python SDK Docs Needed (skip check for `docs/development/reference/python-sdk/`) +- [ ] No General Docs Needed (skip check for general docs changes) -If this PR adds new feature or changes existing. Make sure documentation is adjusted accordingly. If the docs is not needed, please explain why. \ No newline at end of file +If this PR adds a new feature or changes existing behavior, make sure the relevant documentation is updated. If docs are not needed for a specific area, check the corresponding box above and explain why. \ No newline at end of file diff --git a/.github/workflows/docs-check.yaml b/.github/workflows/docs-check.yaml index cd3a535026..e4b8d09c51 100644 --- a/.github/workflows/docs-check.yaml +++ b/.github/workflows/docs-check.yaml @@ -15,29 +15,72 @@ jobs: uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8 with: script: | - if (/\[x\].*no docs needed/i.test(context.payload.pull_request.body || '')) { + const body = context.payload.pull_request.body || ''; + + if (/\[x\].*no docs needed/i.test(body)) { core.info('๐ŸŸก "No Docs Needed" checked โ€” skipping docs enforcement.'); return; } - + if (context.payload.pull_request.user.login === 'renovate[bot]') { core.info('๐Ÿค– Renovate PR detected โ€” skipping docs enforcement.'); return; } - + + const noCliDocs = /\[x\].*no cli docs needed/i.test(body); + const noSdkDocs = /\[x\].*no python sdk docs needed/i.test(body); + const noGeneralDocs = /\[x\].*no general docs needed/i.test(body); + const filenames = (await github.rest.pulls.listFiles({ owner: context.repo.owner, repo: context.repo.repo, pull_number: context.payload.pull_request.number })).data.map(f => f.filename); - + if (filenames.some(f => f.startsWith('docs/stable/'))) { core.setFailed('โŒ Changes to "stable" documentation are not allowed. Please make changes in the "development" directory instead.'); return; } - - if (filenames.some(f => /\.mdx?$/.test(f))) { - core.info('โœ… Docs updated.'); - } else { - core.setFailed('โŒ No docs changes found and "No Docs Needed" not checked.'); + + const errors = []; + + // 1. CLI changes require CLI reference doc update + if (filenames.some(f => f.startsWith('apps/agentstack-cli/'))) { + if (noCliDocs) { + core.info('๐ŸŸก "No CLI Docs Needed" checked โ€” skipping CLI docs check.'); + } else if (!filenames.some(f => f === 'docs/development/reference/cli-reference.mdx')) { + errors.push('โŒ Changes in apps/agentstack-cli require an update to docs/development/reference/cli-reference.mdx.'); + } else { + core.info('โœ… CLI reference docs updated.'); + } + } + + // 2. Python SDK changes require Python SDK reference docs update + if (filenames.some(f => f.startsWith('apps/agentstack-sdk-py/'))) { + if (noSdkDocs) { + core.info('๐ŸŸก "No Python SDK Docs Needed" checked โ€” skipping Python SDK docs check.'); + } else if (!filenames.some(f => f.startsWith('docs/development/reference/python-sdk/'))) { + errors.push('โŒ Changes in apps/agentstack-sdk-py require updates in docs/development/reference/python-sdk/.'); + } else { + core.info('โœ… Python SDK reference docs updated.'); + } + } + + // 3. Other apps/ changes require general docs update (outside reference/) + if (filenames.some(f => + f.startsWith('apps/') && + !f.startsWith('apps/agentstack-cli/') && + !f.startsWith('apps/agentstack-sdk-py/') + )) { + if (noGeneralDocs) { + core.info('๐ŸŸก "No General Docs Needed" checked โ€” skipping general docs check.'); + } else if (!filenames.some(f => f.startsWith('docs/development') && !f.startsWith('docs/development/reference/'))) { + errors.push('โŒ Changes in apps/ require docs updates outside of the reference subfolder.'); + } else { + core.info('โœ… Docs updated for other apps changes.'); + } + } + + if (errors.length > 0) { + core.setFailed(errors.join('\n')); } diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 50f565e4a2..4d0c3a04d2 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -345,7 +345,7 @@ There are two documentation folders: `docs/stable` and `docs/development`. Due t All PRs **must** either include corresponding documentation in `docs/development`, or include `[x] No Docs Needed` in the PR description. This is checked by GitHub Actions. -Special care needs to be taken with the `docs/development/reference/cli-reference.mdx` file, which is automatically generated. Use `mise run agentstack-cli:docs` to regenerate this file when modifying the CLI interface. +Special care needs to be taken with the `docs/development/reference/` folder, as its contents are automatically generated. Use `mise run agentstack-cli:docs` to regenerate the CLI reference when modifying the CLI interface. Use `mise run agentstack-sdk-py:docs` to regenerate the Python SDK reference when making any changes to it; Additionally, modify the corresponding SDK reference generating scripts in `apps/agentstack-sdk-py/docs` and the docs/docs.json file whenever you change the package import structure to reflect those changes. Try to follow this structure: diff --git a/apps/agentstack-cli/src/agentstack_cli/async_typer.py b/apps/agentstack-cli/src/agentstack_cli/async_typer.py index 9efe065786..cd2be054e2 100644 --- a/apps/agentstack-cli/src/agentstack_cli/async_typer.py +++ b/apps/agentstack-cli/src/agentstack_cli/async_typer.py @@ -37,6 +37,9 @@ def __rich_console__(self, *args, **kwargs) -> RenderResult: Markdown.elements["heading_open"] = _LeftAlignedHeading +class test: + pass + @contextmanager def create_table(*args, no_wrap: bool = True, **kwargs) -> Iterator[Table]: diff --git a/apps/agentstack-sdk-py/docs/generate_docs.py b/apps/agentstack-sdk-py/docs/generate_docs.py new file mode 100644 index 0000000000..3426854285 --- /dev/null +++ b/apps/agentstack-sdk-py/docs/generate_docs.py @@ -0,0 +1,695 @@ +# Copyright 2025 ยฉ BeeAI a Series of LF Projects, LLC +# SPDX-License-Identifier: Apache-2.0 +"""Generate Python SDK reference docs (MDX) from exports_structure.json. + +Uses Jinja2 templates from the docs_templates/ directory. +Run `uv run python introspect_exports.py` first to produce exports_structure.json. + +Usage: uv run python generate_docs.py +""" + +from __future__ import annotations + +import argparse +import json +from collections import OrderedDict +from functools import partial +from pathlib import Path + +from jinja2 import Environment, FileSystemLoader + +# --------------------------------------------------------------------------- +# Paths (module-level defaults; all can be overridden via CLI flags) +# --------------------------------------------------------------------------- + +AUTOGEN_WARNING = """\ +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/}""" + +# --------------------------------------------------------------------------- +# Page configuration +# --------------------------------------------------------------------------- + +# The five top-level modules shown on the overview page. +TOP_MODULES = [ + { + "title": "Server", + "description": "Core server for creating and running A2A-compatible agents", + "filename": "server", + }, + { + "title": "A2A", + "description": "Extensions for authentication, services, tools, UI, and interactions", + "filename": "a2a", + }, + { + "title": "Platform API", + "description": "Clients for files, vector stores, contexts, providers, and more", + "filename": "platform", + }, + { + "title": "Types", + "description": "Core type definitions and base classes", + "filename": "types", + }, + { + "title": "Utilities", + "description": "Utility helpers", + "filename": "util", + }, +] + +# Each entry drives a single .mdx page. +# +# json_key โ€“ key in exports_structure.json to pull items from; None = index-only page +# filename โ€“ output filename (no .mdx extension) +# title โ€“ MDX frontmatter title +# description โ€“ MDX frontmatter description +# import_path โ€“ Python import path shown in the code snippet +# submodule_cards โ€“ optional list of child modules rendered as a card grid +# group_by_origin โ€“ split items into sections per origin sub-module (used for platform) + +# This must be updated when the imports logic and structure changes, +# for example if we directly populate some __init__.py file instead of importing directly from some .py file. +# On one hand, this allows fine grained control over what we actually show in the docs, on the other hand it requires maintenance. +# One must also update the docs/docs.json file to add the generated pages to the sidebar. + +PAGE_CONFIG: list[dict] = [ + # โ”€โ”€ server โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.server", + "filename": "server", + "title": "Server", + "description": "Core server for creating and running A2A-compatible agents", + "import_path": "agentstack_sdk.server", + "submodule_cards": [ + { + "title": "Middleware", + "filename": "server-middleware-platform-auth-backend", + "description": "Platform authentication middleware", + }, + { + "title": "Memory context store", + "filename": "server-store-memory-context-store", + "description": "Context management using in-memory storage", + }, + { + "title": "Platform context store", + "filename": "server-store-platform-context-store", + "description": "Context management using platform storage", + }, + ], + }, + { + "json_key": "agentstack_sdk.server.middleware.platform_auth_backend", + "filename": "server-middleware-platform-auth-backend", + "title": "Server Middleware Platform Auth Backend", + "description": "Core server for creating and running A2A-compatible agents", + "import_path": "agentstack_sdk.server.middleware.platform_auth_backend", + }, + { + "json_key": "agentstack_sdk.server.store.memory_context_store", + "filename": "server-store-memory-context-store", + "title": "Server Memory Context Store", + "description": "In-memory context store for the server", + "import_path": "agentstack_sdk.server.store.memory_context_store", + }, + { + "json_key": "agentstack_sdk.server.store.platform_context_store", + "filename": "server-store-platform-context-store", + "title": "Server Platform Context Store", + "description": "Platform context store for the server", + "import_path": "agentstack_sdk.server.store.platform_context_store", + }, + # โ”€โ”€ a2a (index, items live in sub-pages) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": None, + "filename": "a2a", + "title": "A2A Extensions", + "description": "Extensions for the A2A protocol โ€” authentication, services, tools, UI, and interactions", + "import_path": "agentstack_sdk.a2a.extensions", + "submodule_cards": [ + {"title": "Auth", "filename": "a2a-auth", "description": "OAuth and secrets authentication"}, + {"title": "Common", "filename": "a2a-common", "description": "Shared base classes and form types"}, + { + "title": "Interactions", + "filename": "a2a-interactions", + "description": "Human-in-the-loop interaction extensions", + }, + { + "title": "Services", + "filename": "a2a-services", + "description": "LLM, embedding, MCP, and platform services", + }, + {"title": "Tools", "filename": "a2a-tools", "description": "Tool call approval extensions"}, + {"title": "UI", "filename": "a2a-ui", "description": "Rich UI component extensions"}, + ], + }, + # โ”€โ”€ a2a.auth (index) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": None, + "filename": "a2a-auth", + "title": "Auth Extensions Overview", + "description": "OAuth and secrets authentication extensions", + "import_path": "agentstack_sdk.a2a.extensions.auth", + "submodule_cards": [ + {"title": "Extensions", "filename": "a2a-auth-oauth", "description": "OAuth 2.0 flow extensions"}, + { + "title": "Storage", + "filename": "a2a-auth-oauth-storage", + "description": "OAuth 2.0 flow storage extensions", + }, + {"title": "Secrets", "filename": "a2a-auth-secrets", "description": "Secrets injection extensions"}, + ], + }, + # โ”€โ”€ a2a.auth.oauth โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.a2a.extensions.auth.oauth", + "filename": "a2a-auth-oauth", + "title": "OAuth Extensions", + "description": "OAuth 2.0 flow extensions", + "import_path": "agentstack_sdk.a2a.extensions.auth.oauth", + }, + # โ”€โ”€ a2a.auth.oauth.storage โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.a2a.extensions.auth.oauth.storage", + "filename": "a2a-auth-oauth-storage", + "title": "OAuth Storage", + "description": "Storage backends for OAuth flow state", + "import_path": "agentstack_sdk.a2a.extensions.auth.oauth.storage", + }, + # โ”€โ”€ a2a.auth.secrets โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.a2a.extensions.auth.secrets", + "filename": "a2a-auth-secrets", + "title": "Secrets Extensions", + "description": "Secrets injection extensions", + "import_path": "agentstack_sdk.a2a.extensions.auth.secrets", + }, + # โ”€โ”€ a2a.common โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.a2a.extensions.common", + "filename": "a2a-common", + "title": "Common Types", + "description": "Shared base classes and form types for extensions", + "import_path": "agentstack_sdk.a2a.extensions.common", + }, + # โ”€โ”€ a2a.interactions โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.a2a.extensions.interactions", + "filename": "a2a-interactions", + "title": "Interaction Extensions", + "description": "Human-in-the-loop interaction extensions", + "import_path": "agentstack_sdk.a2a.extensions.interactions", + }, + # โ”€โ”€ a2a.services โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.a2a.extensions.services", + "filename": "a2a-services", + "title": "Service Extensions", + "description": "LLM, embedding, MCP, and platform service extensions", + "import_path": "agentstack_sdk.a2a.extensions.services", + }, + # โ”€โ”€ a2a.tools โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.a2a.extensions.tools", + "filename": "a2a-tools", + "title": "Tool Extensions", + "description": "Tool call approval extensions", + "import_path": "agentstack_sdk.a2a.extensions.tools", + }, + # โ”€โ”€ a2a.ui โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.a2a.extensions.ui", + "filename": "a2a-ui", + "title": "UI Extensions", + "description": "Rich UI component extensions", + "import_path": "agentstack_sdk.a2a.extensions.ui", + }, + # โ”€โ”€ platform (grouped by sub-module) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.platform", + "filename": "platform", + "title": "Platform", + "description": "Clients for files, vector stores, contexts, providers, and more", + "import_path": "agentstack_sdk.platform", + "submodule_cards": [ + {"title": "Common", "filename": "platform-common", "description": "Shared types and utilities"}, + {"title": "Context", "filename": "platform-context", "description": "Context management"}, + ], + "group_by_origin": True, + }, + # โ”€โ”€ platform.context โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.platform.common", + "filename": "platform-common", + "title": "Common", + "description": "Shared types and utilities", + "import_path": "agentstack_sdk.platform.common", + }, + # โ”€โ”€ platform.common โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.platform.context", + "filename": "platform-context", + "title": "Context", + "description": "Context management", + "import_path": "agentstack_sdk.platform.context", + }, + # โ”€โ”€ types โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.types", + "filename": "types", + "title": "SDK Types", + "description": "Core type definitions and base classes", + "import_path": "agentstack_sdk.types", + }, + # โ”€โ”€ util โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + { + "json_key": "agentstack_sdk.util", + "filename": "util", + "title": "Utilities", + "description": "Utility helpers", + "import_path": "agentstack_sdk.util", + }, +] + +# --------------------------------------------------------------------------- +# Jinja2 custom transformations +# --------------------------------------------------------------------------- + +_TYPE_PREFIXES = ( + "agentstack_sdk.a2a.extensions.common.form.", + "agentstack_sdk.a2a.extensions.auth.oauth.oauth.", + "agentstack_sdk.a2a.extensions.auth.secrets.secrets.", + "agentstack_sdk.a2a.extensions.", + "agentstack_sdk.a2a.", + "agentstack_sdk.server.", + "agentstack_sdk.platform.", + "agentstack_sdk.", + "a2a.types.", + "collections.abc.", + "typing.", + "typing_extensions.", + "datetime.", + "uuid.", + "pydantic.", + "starlette.", + "httpx.", + "ssl.", + "os.", + "contextlib.", + "abc.", +) + + +def _shorten_type(s: str | None) -> str: + if not s: + return "" + for prefix in _TYPE_PREFIXES: + s = s.removeprefix(prefix) + return s + + +def _first_line(text: str | None) -> str: + if not text: + return "" + line = text.strip().split("\n")[0].strip().rstrip(".") + return line.replace('"', "'") # safe for MDX attribute strings + + +def _extra_lines(text: str | None) -> str: + if not text: + return "" + lines = text.strip().split("\n") + return "\n".join(lines[1:]).strip() if len(lines) > 1 else "" + + +def _sig_params(params: list[dict] | None, max_params: int = 5) -> str: + """Parameter names only โ€” keeps accordion titles short.""" + if not params: + return "" + + return ", ".join(p["name"] for p in params[:max_params]) + ("..." if len(params) > max_params else "") + + +def _truncate_val(val: str | None, max_len: int = 40) -> str: + if not val: + return "" + return val[:max_len] + "..." if len(val) > max_len else val + + +def _table_type(s: str | None) -> str: + """Shorten a type annotation and escape | so it doesn't break Markdown table columns.""" + result = _shorten_type(s) + return result.replace("|", "\\|") + + +def _mdx_escape(text: str | None) -> str: + """Escape characters that MDX/acorn would try to parse as JSX expressions.""" + if not text: + return "" + return text.replace("{", "\\{").replace("}", "\\}") + + +# --------------------------------------------------------------------------- +# Item helpers +# --------------------------------------------------------------------------- + +_SKIP_KINDS = {"unknown"} + +# --------------------------------------------------------------------------- +# Module โ†’ filename / import_path look-up (built lazily from PAGE_CONFIG) +# --------------------------------------------------------------------------- + +_JSON_KEY_TO_FILENAME: dict[str, str] = {} +_JSON_KEY_TO_IMPORT_PATH: dict[str, str] = {} +_FILENAME_TO_TITLE: dict[str, str] = {} +_FILENAME_TO_PARENT: dict[str, str] = {} # child filename โ†’ parent filename + + +def _build_high_level_import_maps() -> None: + if _JSON_KEY_TO_FILENAME: + return + for cfg in PAGE_CONFIG: + key = cfg.get("json_key") + if key: + _JSON_KEY_TO_FILENAME[key] = cfg["filename"] + _JSON_KEY_TO_IMPORT_PATH[key] = cfg["import_path"] + _FILENAME_TO_TITLE[cfg["filename"]] = cfg["title"] + for card in cfg.get("submodule_cards", []): + _FILENAME_TO_PARENT[card["filename"]] = cfg["filename"] + + +def _symbol_breadcrumb_ancestors(parent_filename: str) -> list[tuple[str, str]]: + """Return ordered list of (title, filename) ancestors from root down to *parent_filename* (inclusive).""" + chain: list[tuple[str, str]] = [] + current = parent_filename + while current: + title = _FILENAME_TO_TITLE.get(current, current.replace("-", " ").title()) + chain.append((title, current)) + current = _FILENAME_TO_PARENT.get(current, "") + chain.reverse() + return chain + + +def _find_longest_matching_json_key(origin: str) -> str | None: + """Return the longest _JSON_KEY_TO_FILENAME (PAGE_CONFIG) json_key that is a prefix of *origin*.""" + best_key: str | None = None + best_len = 0 + for key in _JSON_KEY_TO_FILENAME: + if (origin == key or origin.startswith(key + ".")) and len(key) > best_len: + best_key = key + best_len = len(key) + return best_key + + +def _symbol_import_path(item: dict) -> str: + """Best import path to use on a symbol's own page.""" + origin = item.get("origin", "") + longest = _find_longest_matching_json_key(origin) + if longest: + return _JSON_KEY_TO_IMPORT_PATH[longest] + + # Fallback: use origin directly + return origin + + +def _symbol_page_parent_filename(item: dict) -> str: + """Filename of the parent module page for *item* (used as sub-directory).""" + origin = item.get("origin", "") + longest = _find_longest_matching_json_key(origin) + if longest: + return _JSON_KEY_TO_FILENAME[longest] + # Fallback: slugify origin + return origin.replace("agentstack_sdk.", "").replace(".", "-") + + +def _symbol_page_parent_title(parent_filename: str) -> str: + """Human-readable title of the parent module page.""" + return _FILENAME_TO_TITLE.get(parent_filename, parent_filename.replace("-", " ").title()) + + +# --------------------------------------------------------------------------- +# Item helpers +# --------------------------------------------------------------------------- + + +def _split_items(items: list[dict]) -> tuple[list[dict], list[dict], list[dict]]: + classes = sorted([i for i in items if i.get("kind") == "class"], key=lambda i: i.get("name", "")) + functions = sorted([i for i in items if i.get("kind") == "function"], key=lambda i: i.get("name", "")) + constants = sorted( + [i for i in items if i.get("kind") not in ("class", "function")], key=lambda i: i.get("name", "") + ) + return classes, functions, constants + + +def _origin_submodule(item: dict, base_key: str) -> str: + origin = item.get("origin", "") + prefix = base_key + "." + if origin.startswith(prefix): + return origin[len(prefix) :].split(".")[0] + return "" + + +def _import_example(import_path: str, classes: list[dict], functions: list[dict]) -> str: + names = [i["name"] for i in (classes + functions)[:3]] + if not names: + return f"from {import_path} import ..." + suffix = " # ..." if len(classes) + len(functions) > 3 else "" + return f"from {import_path} import {', '.join(names)}{suffix}" + + +def _build_group(title: str, import_path: str, items: list[dict]) -> dict: + classes, functions, constants = _split_items(items) + return { + "title": title, + "import_path": import_path, + "import_example": _import_example(import_path, classes, functions), + "classes": classes, + "functions": functions, + "constants": constants, + } + + +# --------------------------------------------------------------------------- +# Rendering +# --------------------------------------------------------------------------- + + +def _make_env(templates_dir: Path) -> Environment: + env = Environment( + loader=FileSystemLoader(str(templates_dir)), + autoescape=False, + trim_blocks=True, + lstrip_blocks=True, + ) + env.filters["first_line"] = _first_line + env.filters["extra_lines"] = _extra_lines + env.filters["shorten_type"] = _shorten_type + env.filters["table_type"] = _table_type + env.filters["mdx_escape"] = _mdx_escape + env.filters["sig_params"] = _sig_params + env.filters["sig_params_short"] = partial(_sig_params, max_params=4) + env.filters["truncate_val"] = _truncate_val + return env + + +def render_overview(env: Environment, version: str) -> str: + tmpl = env.get_template("overview.mdx.j2") + return tmpl.render( + autogen_warning=AUTOGEN_WARNING, + top_modules=TOP_MODULES, + base_href=f"/{version}/reference/python-sdk", + ) + + +def render_page(env: Environment, cfg: dict, data: dict, version: str) -> str: + json_key: str | None = cfg.get("json_key") + import_path: str = cfg["import_path"] + submodule_cards: list[dict] = cfg.get("submodule_cards", []) + group_by_origin: bool = cfg.get("group_by_origin", False) + base_href = f"/{version}/reference/python-sdk" + symbol_base_href = f"{base_href}/{cfg['filename']}" + + items: list[dict] = [] + if json_key and json_key in data: + items = [i for i in data[json_key] if i.get("kind") not in _SKIP_KINDS] + + groups: list[dict] = [] + if items: + if group_by_origin: + grouped: dict[str, list[dict]] = OrderedDict() + for item in items: + sub = _origin_submodule(item, json_key or "") + grouped.setdefault(sub, []).append(item) + for sub, sub_items in grouped.items(): + sub_title = sub.replace("_", " ").title() if sub else "" + sub_import = f"{import_path}.{sub}" if sub else import_path + groups.append(_build_group(sub_title, sub_import, sub_items)) + else: + groups.append(_build_group("", import_path, items)) + + all_classes = [c for g in groups for c in g["classes"]] + all_functions = [f for g in groups for f in g["functions"]] + import_example = _import_example(import_path, all_classes, all_functions) if items else "" + + parent_filename = _FILENAME_TO_PARENT.get(cfg["filename"], "") + breadcrumb_ancestors = _symbol_breadcrumb_ancestors(parent_filename) if parent_filename else [] + + tmpl = env.get_template("module.mdx.j2") + return tmpl.render( + autogen_warning=AUTOGEN_WARNING, + title=cfg["title"], + description=cfg["description"], + import_path=import_path, + import_example=import_example, + submodule_cards=submodule_cards, + groups=groups, + base_href=base_href, + symbol_base_href=symbol_base_href, + breadcrumb_ancestors=breadcrumb_ancestors, + ) + + +# --------------------------------------------------------------------------- +# Symbol-level page renderers +# --------------------------------------------------------------------------- + + +def render_class_page( + env: Environment, + cls: dict, + import_path: str, + breadcrumb_ancestors: list[tuple[str, str]] | None = None, + base_href: str = "", +) -> str: + tmpl = env.get_template("class.mdx.j2") + return tmpl.render( + autogen_warning=AUTOGEN_WARNING, + cls=cls, + import_path=import_path, + breadcrumb_ancestors=breadcrumb_ancestors or [], + base_href=base_href, + ) + + +def render_function_page( + env: Environment, + fn: dict, + import_path: str, + breadcrumb_ancestors: list[tuple[str, str]] | None = None, + base_href: str = "", +) -> str: + tmpl = env.get_template("function.mdx.j2") + return tmpl.render( + autogen_warning=AUTOGEN_WARNING, + fn=fn, + import_path=import_path, + breadcrumb_ancestors=breadcrumb_ancestors or [], + base_href=base_href, + ) + + +# --------------------------------------------------------------------------- +# Main +# --------------------------------------------------------------------------- + + +def main() -> None: + _build_high_level_import_maps() + parser = argparse.ArgumentParser( + description="Generate Python SDK reference docs (MDX) from exports_structure.json." + ) + parser.add_argument( + "--json-file", + type=Path, + default=Path(__file__).resolve().parent / "exports_structure.json", + help="Path to the exports_structure.json manifest", + ) + parser.add_argument( + "--docs-dir", + type=Path, + help=f"Root docs output directory", + ) + parser.add_argument( + "--templates-dir", + type=Path, + help=f"Jinja2 templates directory", + ) + args = parser.parse_args() + + json_file: Path = args.json_file + docs_dir: Path = args.docs_dir + templates_dir: Path = args.templates_dir + + if not json_file.exists(): + raise FileNotFoundError( + f"exports_structure.json not found at {json_file}.\nRun `mise x -- uv run introspect_exports.py` first." + ) + + data = json.loads(json_file.read_text()) + env = _make_env(templates_dir) + + out_dir = docs_dir + out_dir.mkdir(parents=True, exist_ok=True) + + # โ”€โ”€ overview + module pages (as before) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + version = "development" + content = render_overview(env, version) + (out_dir / "overview.mdx").write_text(content) + + for cfg in PAGE_CONFIG: + content = render_page(env, cfg, data, version) + (out_dir / f"{cfg['filename']}.mdx").write_text(content) + + # โ”€โ”€ auto-generated symbol pages โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + # Collect all unique symbols across every module key in the JSON. + # Dedup by (name, origin) so each real symbol gets exactly one page, + # placed under the most specific matching PAGE_CONFIG module directory. + generated_symbols: set[tuple[str, str]] = set() + symbol_count = 0 + + for json_key, items in data.items(): + for item in items: + kind = item.get("kind") + if kind in _SKIP_KINDS: + continue + name: str = item.get("name", "") + origin: str = item.get("origin", json_key) + if not name: + continue + + dedup_key = (name, origin) + if dedup_key in generated_symbols: + continue + generated_symbols.add(dedup_key) + + import_path = _symbol_import_path(item) + parent_filename = _symbol_page_parent_filename(item) + base_href = f"/{version}/reference/python-sdk" + breadcrumb_ancestors = _symbol_breadcrumb_ancestors(parent_filename) + + symbol_dir = out_dir / parent_filename + symbol_dir.mkdir(parents=True, exist_ok=True) + + if kind == "class": + content = render_class_page(env, item, import_path, breadcrumb_ancestors, base_href) + elif kind == "function": + content = render_function_page(env, item, import_path, breadcrumb_ancestors, base_href) + else: + continue + + (symbol_dir / f"{name}.mdx").write_text(content) + symbol_count += 1 + + module_count = 1 + len(PAGE_CONFIG) + print(f"Generated {module_count} module pages + {symbol_count} symbol pages in {args.docs_dir}") + + +if __name__ == "__main__": + main() diff --git a/apps/agentstack-sdk-py/docs/introspect_exports.py b/apps/agentstack-sdk-py/docs/introspect_exports.py new file mode 100644 index 0000000000..020157d703 --- /dev/null +++ b/apps/agentstack-sdk-py/docs/introspect_exports.py @@ -0,0 +1,757 @@ +# Copyright 2025 ยฉ BeeAI a Series of LF Projects, LLC +# SPDX-License-Identifier: Apache-2.0 + +from __future__ import annotations + +import ast +import enum +import functools +import json +import re +import sys +from pathlib import Path +from typing import Any +from pydantic import BaseModel, ConfigDict + +import argparse + +import griffe + + +class ExportItem(BaseModel): + model_config = ConfigDict(validate_assignment=True) + name: str + origin: str + kind: str | None = None + docstring: str | None = None + annotation: str | None = None + definition: str | None = None + default: str | None = None + params: list[dict[str, Any]] | None = None + returns: str | None = None + bases: list[str] | None = None + class_attributes: list[dict[str, Any]] | None = None + attributes: list[dict[str, Any]] | None = None + methods: list[dict[str, Any]] | None = None + labels: list[str] | None = None + + +def parse_allnames(tree: ast.Module) -> list[str]: + """Extract string names from a top-level __all__ = [...] assignment.""" + for node in tree.body: + if ( + isinstance(node, ast.Assign) + and len(node.targets) == 1 + and isinstance(node.targets[0], ast.Name) + and node.targets[0].id == "__all__" + and isinstance(node.value, ast.List) + ): + return [ + elt.value for elt in node.value.elts if isinstance(elt, ast.Constant) and isinstance(elt.value, str) + ] + return [] + + +def _resolve_candidate(candidate: Path) -> Path | None: + """Resolve a candidate path to a package directory or .py module, or None.""" + if (candidate / "__init__.py").exists(): + return candidate + if candidate.with_suffix(".py").exists(): + return candidate.with_suffix(".py") + return None + + +def resolve_absolute(module_path: str, src_root: Path) -> Path | None: + """ + Resolve an absolute dotted module path to a filesystem path, but only + if the module lives inside the same package (src_root). + """ + if not module_path.startswith(src_root.name): + return None + candidate: Path = src_root.parent + for part in module_path.split("."): + candidate = candidate / part + return _resolve_candidate(candidate) + + +def resolve_relative(current_pkg_path: Path, level: int, module_suffix: str | None) -> Path | None: + """ + Resolve a relative import to an absolute filesystem path. + + current_pkg_path: directory of the package containing the importing file + level: number of leading dots (1 = current package, 2 = parent, ...) + module_suffix: the `X.Y` part after the dots, or None + Returns: Path to the resolved .py file or package directory, or None if not found. + """ + base = current_pkg_path + for _ in range(level - 1): + base = base.parent + + if module_suffix: + candidate = base + for part in module_suffix.split("."): + candidate = candidate / part + else: + candidate = base + + return _resolve_candidate(candidate) + + +def collect_exports(path: Path, src_root: Path, visited: set[str] | None = None) -> list[ExportItem]: + """ + Recursively collect effective exports from a file or package directory. + + path: either a .py file or a package directory (containing __init__.py) + Returns a deduplicated list of ExportItem(name, origin). + """ + if visited is None: + visited = set() + + # Normalise to the actual file we'll parse + if path.is_dir(): + parse_file = path / "__init__.py" + pkg_dir = path + else: + parse_file = path + pkg_dir = path.parent + + str_path = str(parse_file) + if str_path in visited: + return [] + visited.add(str_path) + + if not parse_file.exists(): + return [] + + source = parse_file.read_text() + try: + tree = ast.parse(source) + except SyntaxError as exc: + print(f" โš  SyntaxError in {parse_file}: {exc}", file=sys.stderr) + return [] + + exports: list[ExportItem] = [] + origin = _path_to_module(parse_file, src_root) + + # โ”€โ”€ 1. Check for an explicit __all__ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + declared = parse_allnames(tree) + if declared: + for name in declared: + exports.append(ExportItem(name=name, origin=origin)) + # An explicit __all__ is the final word โ€“ no need to follow star imports + return _deduplicate(exports) + + # โ”€โ”€ 2. No __all__: follow star imports, explicit re-exports, and local definitions โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + for node in tree.body: + # โ”€โ”€ locally defined classes โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + if isinstance(node, ast.ClassDef): + if not node.name.startswith("_"): + exports.append(ExportItem(name=node.name, origin=origin)) + continue + + # โ”€โ”€ locally defined functions โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + if isinstance(node, (ast.FunctionDef, ast.AsyncFunctionDef)): + if not node.name.startswith("_"): + exports.append(ExportItem(name=node.name, origin=origin)) + continue + + # โ”€โ”€ module-level assignments (constants and variables) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + if isinstance(node, ast.Assign): + for target in node.targets: + if isinstance(target, ast.Name) and not target.id.startswith("_"): + exports.append(ExportItem(name=target.id, origin=origin)) + continue + + if isinstance(node, ast.AnnAssign): + target = node.target + if isinstance(target, ast.Name) and not target.id.startswith("_"): + exports.append(ExportItem(name=target.id, origin=origin)) + continue + + if not isinstance(node, ast.ImportFrom): + continue + + # Only handle relative imports (level > 0) + if node.level == 0: + # โ”€โ”€ absolute star import from within the same package โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + if node.names and node.names[0].name == "*" and node.module: + resolved_abs = resolve_absolute(node.module, src_root) + if resolved_abs is not None: + child_exports = collect_exports(resolved_abs, src_root, visited) + exports.extend(child_exports) + else: + # Capture intentional `Name as Name` re-exports + for alias in node.names: + if alias.name != "*" and alias.asname == alias.name: + exports.append(ExportItem(name=alias.name, origin=node.module or "")) + continue + + # โ”€โ”€ relative wildcard: `from .X import *` โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + resolved = resolve_relative(pkg_dir, node.level, node.module) + if node.names[0].name == "*": + if resolved is None: + print( + f" โš  Cannot resolve relative import {'.' * node.level}{node.module or ''} in {parse_file}", + file=sys.stderr, + ) + continue + child_exports = collect_exports(resolved, src_root, visited) + exports.extend(child_exports) + + # โ”€โ”€ relative explicit: `from .X import Name as Name` โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + else: + resolved_module = _path_to_module(resolved, src_root) if resolved else (node.module or "") + for alias in node.names: + if alias.name != "*": + exports.append(ExportItem(name=alias.asname or alias.name, origin=resolved_module)) + + return _deduplicate(exports) + + +def _path_to_module(path: Path | None, src_root: Path) -> str: + """Convert an absolute path under src_root.parent to a dotted module name.""" + if path is None: + return "" + try: + rel = path.relative_to(src_root.parent) + except ValueError: + return str(path) + parts = list(rel.parts) + if parts[-1] == "__init__.py": + parts = parts[:-1] + elif parts[-1].endswith(".py"): + parts[-1] = parts[-1][:-3] + return ".".join(parts) + + +def _deduplicate(exports: list[ExportItem]) -> list[ExportItem]: + seen: set[str] = set() + result: list[ExportItem] = [] + for exp in exports: + if exp.name not in seen: + seen.add(exp.name) + result.append(exp) + return result + + +@functools.lru_cache(maxsize=None) +def _init_imports_file(init_file: Path, module_stem: str) -> bool: + """ + Return True if *init_file* contains any import that explicitly references + a sibling module named *module_stem* (e.g. "types"). + + Matches relative imports of the form: + from .types import ... + from . import types + """ + if not init_file.exists(): + return False + try: + tree = ast.parse(init_file.read_text()) + except SyntaxError: + return False + for node in tree.body: + if not isinstance(node, ast.ImportFrom): + continue + if node.level == 0: + continue + # `from .types import ...` โ†’ node.module == "types" + if node.module == module_stem: + return True + # `from . import types` โ†’ node.module is None, names contain "types" + if node.module is None and any(alias.name == module_stem for alias in node.names): + return True + return False + + +# TODO: this might need to change if the logic of how the classes etc. are exposed changes +def trace_package(root: Path, src_root: Path) -> dict[str, list[ExportItem]]: + """ + Walk every __init__.py in the package and compute its effective public API. + Also picks up flat .py modules anywhere in the package tree that are NOT + already referenced (imported) by the sibling __init__.py. + It is currently not clear what should actually be exposed so this approach takes everything directly + exposed through the __init__ files and adds everything that lies separately alongside this scheme. + Returns {dotted_module_path: [ExportItem, ...]}. + """ + result: dict[str, list[ExportItem]] = {} + init_files: list[Path] = [] + other_files: list[Path] = [] + # collect and categorize all .py files under the root (skip __pycache__) + for py_file in sorted(root.rglob("*.py")): + if "__pycache__" in py_file.parts: + continue + if py_file.name == "__init__.py": + init_files.append(py_file) + elif not py_file.name.startswith("_"): + other_files.append(py_file) + + # collect all the __init_.py exports, which directly define the main public API of each package + for init_file in init_files: + pkg_dir = init_file.parent + module_name = _path_to_module(pkg_dir, src_root) + exports = collect_exports(pkg_dir, src_root) # fresh visited set per package + result[module_name] = exports + + # Also pick up flat .py modules anywhere in the package tree (e.g. a2a/types.py). + # Skip a file if the sibling __init__.py already imports from it โ€” those + # exports are already captured via the package entry above. + for py_file in other_files: + module_name = _path_to_module(py_file, src_root) + if module_name in result: + continue + sibling_init = py_file.parent / "__init__.py" + if _init_imports_file(sibling_init, py_file.stem): + continue + exports = collect_exports(py_file, src_root) + if exports: + result[module_name] = exports + + return result + + +# โ”€โ”€ Griffe enrichment โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + + +def _fmt_annotation(ann: Any) -> str | None: + """Stringify a griffe annotation, keeping package prefixes.""" + if ann is None: + return None + s = str(ann) + return s or None + + +def _fmt_docstring(ds: griffe.Docstring | None) -> str | None: + if not ds or not ds.value: + return None + return ds.value.strip() or None + + +FILTER_FUNCTION_LABELS = {"module-attribute"} + +_SENTINEL_DEFAULTS = frozenset({"PosOnlyArgsSep", "KwOnlyArgsSep"}) +_MAX_DEFAULT_LEN = 80 + + +def _serialize_params(fn: griffe.Function) -> list[dict[str, Any]]: + """Serialize function/method parameters, skipping self/cls.""" + params = [] + for p in fn.parameters: + if p.name in ("self", "cls"): + continue + entry: dict[str, Any] = {"name": p.name} + if p.annotation: + entry["type"] = _fmt_annotation(p.annotation) + if p.default is not None and str(p.default) not in _SENTINEL_DEFAULTS: + d = str(p.default) + entry["default"] = d if len(d) <= _MAX_DEFAULT_LEN else d[:_MAX_DEFAULT_LEN] + "..." + entry["kind"] = p.kind.value if p.kind and hasattr(p.kind, "value") else str(p.kind) + params.append(entry) + return params + + +def _serialize_function(fn: griffe.Function) -> dict[str, Any]: + params = _serialize_params(fn) + + result: dict[str, Any] = {"kind": "function", "params": params} + if fn.returns: + result["returns"] = _fmt_annotation(fn.returns) + doc = _fmt_docstring(fn.docstring) + if doc: + result["docstring"] = doc + if fn.labels: + result["labels"] = sorted(str(l) for l in fn.labels if str(l) not in FILTER_FUNCTION_LABELS) + return result + + +def _identify_arguments_from_init(method: griffe.Function) -> list[dict[str, Any]]: + assigns: list[dict[str, Any]] = [] + try: + src = method.source + if src: + tree = ast.parse(src) + for node in ast.walk(tree): + if isinstance(node, ast.Assign): + for target in node.targets: + if ( + isinstance(target, ast.Attribute) + and isinstance(target.value, ast.Name) + and target.value.id == "self" + and not target.attr.startswith("_") + ): + assigns.append({"name": target.attr}) + elif isinstance(node, ast.AnnAssign): + if ( + isinstance(node.target, ast.Attribute) + and isinstance(node.target.value, ast.Name) + and node.target.value.id == "self" + and not node.target.attr.startswith("_") + ): + entry: dict[str, Any] = {"name": node.target.attr} + if node.annotation: + entry["type"] = ast.unparse(node.annotation) + assigns.append(entry) + except Exception: + pass + return assigns + + +def _is_factory_classmethod(method: griffe.Function, class_name: str) -> bool: + """ + Return True if *method* is a @classmethod whose return annotation is + exactly "Self" or the enclosing class name. + """ + if "classmethod" not in {str(l) for l in method.labels}: + return False + ret = _fmt_annotation(method.returns) + if not ret: + return False + + core = ret.strip() + # Accept bare "Self" or any qualified variant (typing.Self, typing_extensions.Self) + # as well as the exact class name. + return core in (class_name, "Self") or core.endswith(".Self") + + +def _serialize_class(cls: griffe.Class) -> dict[str, Any]: + result: dict[str, Any] = {"kind": "class"} + + bases = [_fmt_annotation(b) for b in cls.bases if _fmt_annotation(b) not in ("object", None)] + if bases: + result["bases"] = bases + + doc = _fmt_docstring(cls.docstring) + if doc: + result["docstring"] = doc + + class_attrs: list[dict[str, Any]] = [] + methods: list[dict[str, Any]] = [] + init_assigned: list[dict[str, Any]] | None = None + + for name, member in cls.members.items(): + is_private = name.startswith("_") + actual = member + + if isinstance(member, griffe.Alias): + try: + actual = member.target + except Exception: + continue + + kind_name = actual.kind.name + + # โ”€โ”€ class-level attributes (excluding private and dunder) โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + if kind_name == "ATTRIBUTE" and not is_private: + field: dict[str, Any] = {"name": name} + ann = getattr(actual, "annotation", None) + if ann: + field["type"] = _fmt_annotation(ann) + field_doc = _fmt_docstring(actual.docstring) + if field_doc: + field["docstring"] = field_doc + val = getattr(actual, "value", None) + # TODO: this might need some change if we find this to be + if val is not None: + v = str(val) + field["default"] = v[:120] + ("..." if len(v) > 120 else "") + class_attrs.append(field) + + # โ”€โ”€ public methods (excluding dunder, but including __init__) โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + elif kind_name == "FUNCTION" and (not is_private or name == "__init__"): + method_info: dict[str, Any] = {"name": name} + if name == "__init__": + method_info["kind"] = "constructor" + init_assigned = _identify_arguments_from_init(actual) # pyrefly: ignore[bad-argument-type] + elif _is_factory_classmethod(actual, cls.name): # pyrefly: ignore[bad-argument-type] + method_info["kind"] = "constructor" + else: + method_info["kind"] = "method" + params = _serialize_params(actual) # pyrefly: ignore[bad-argument-type] + if params: + method_info["params"] = params + if hasattr(actual, "returns") and actual.returns: + method_info["returns"] = _fmt_annotation(actual.returns) + method_doc = _fmt_docstring(actual.docstring) + if method_doc: + method_info["docstring"] = method_doc + if actual.labels: + method_info["labels"] = sorted(str(l) for l in actual.labels) + methods.append(method_info) + + if class_attrs: + result["class_attributes"] = class_attrs + if init_assigned: + class_attrs_names = {attr["name"] for attr in class_attrs} + result["attributes"] = [aa for aa in init_assigned if aa["name"] not in class_attrs_names] + if methods: + result["methods"] = methods + + return result + + +def _is_constant(name: str) -> bool: + """Check if a name follows the UPPER_SNAKE_CASE constant convention.""" + return bool(re.match(r"^[A-Z0-9_]+$", name)) + + +def _is_callable_annotation(ann_str: str | None) -> bool: + """Return True if the annotation string represents a Callable type.""" + if not ann_str: + return False + return bool(re.match(r"^(typing\.)?Callable\b", ann_str)) + + +class TypingKind(str, enum.Enum): + SPECIAL_FORM = "special_form" + TYPE_VAR = "type_var" + NEW_TYPE = "new_type" + TYPE_ALIAS = "type_alias" # PEP 613 / PEP 695 explicit alias + UNION_ALIAS = "union_alias" # A | B style + + +_SPECIAL_FORM_PREFIXES = [ + "Literal[", + "Union[", + "Optional[", + "Annotated[", + "Final[", + "ClassVar[", + "Concatenate[", +] + +_TYPING_KIND_PREFIXES: list[tuple[str, TypingKind]] = [ + ("TypeVar(", TypingKind.TYPE_VAR), + ("NewType(", TypingKind.NEW_TYPE), +] + +_VALUE_PREFIX_TO_KIND: list[tuple[str, TypingKind]] = [ + *(("typing." + p, TypingKind.SPECIAL_FORM) for p in _SPECIAL_FORM_PREFIXES), + *((p, TypingKind.SPECIAL_FORM) for p in _SPECIAL_FORM_PREFIXES), + *(("typing." + prefix, kind) for prefix, kind in _TYPING_KIND_PREFIXES), + *_TYPING_KIND_PREFIXES, +] + +_TYPE_ALIAS_ANNOTATION_NAMES = {"TypeAlias", "typing.TypeAlias", "typing_extensions.TypeAlias"} + + +def _is_top_level_union(val_str: str) -> bool: + """Return True if val_str is an A | B union with at least one | outside brackets.""" + depth = 0 + for ch in val_str: + if ch in "([{": + depth += 1 + elif ch in ")]}": + depth -= 1 + elif ch == "|" and depth == 0: + return True + return False + + +def _get_typing_kind(attr: griffe.Attribute) -> str | None: + """Return the TypingKind of the attribute, or None if it's not a typing construct.""" + ann = getattr(attr, "annotation", None) + ann_str = _fmt_annotation(ann) + + # PEP 613 explicit: `Foo: TypeAlias = ...` + if ann_str and ann_str in _TYPE_ALIAS_ANNOTATION_NAMES: + return TypingKind.TYPE_ALIAS + + val = getattr(attr, "value", None) + if val is None: + return None + + val_str = str(val).strip() + + for prefix, kind in _VALUE_PREFIX_TO_KIND: + if val_str.startswith(prefix): + return kind + + if _is_top_level_union(val_str): + return TypingKind.UNION_ALIAS + + return None + + +def _serialize_attribute(attr: griffe.Attribute, name: str = "") -> dict[str, str | list[str] | None]: + """ + Serialize a module-level attribute/variable or constant. + + Callable-annotated attributes are serialised with kind="function". + Type alias assignments (typing.Literal, Union, etc.) are + serialised with kind="type_alias" and the actual type expression as "type". + Other attributes are distinguished as constants (UPPER_SNAKE_CASE) or + regular variables. + """ + ann = getattr(attr, "annotation", None) + ann_str = _fmt_annotation(ann) + result: dict[str, str | list[str] | None] = {} + doc = _fmt_docstring(attr.docstring) + if doc: + result["docstring"] = doc + + if typing_kind := _get_typing_kind(attr): + val = getattr(attr, "value", None) + type_str = str(val).strip() if val is not None else ann_str + result["kind"] = typing_kind + if type_str: + result["definition"] = type_str + + return result + + if ann: + result["annotation"] = ann_str + + if _is_callable_annotation(ann_str): + result["kind"] = "function" + if attr.labels: + result["labels"] = sorted(str(l) for l in attr.labels if str(l) not in FILTER_FUNCTION_LABELS) + return result + + kind = "constant" if _is_constant(name) else "attribute" + result["kind"] = kind + val = getattr(attr, "value", None) + if val is not None: + v = str(val) + if len(v) <= 200: + result["value"] = v + + return result + + +def _lookup_griffe(pkg: griffe.Module, dotted_path: str, name: str) -> griffe.Object | None: + """Resolve dotted_path in the griffe module tree, then look up name.""" + try: + obj = pkg + relative = dotted_path.removeprefix(f"{pkg.name}.") + if relative and relative != pkg.name: + for part in relative.split("."): + obj = obj[part] + return obj[name] + except (KeyError, TypeError): + return None + + +_UNWANTED_ANNOTATIONS = { + "logging.Logger", + "Logger", + "logging.RootLogger", + "RootLogger", + "TypeVar", + "typing.TypeVar", +} + +_UNWANTED_VALUE_PREFIXES = { + "logging.getLogger", + "getLogger", + "TypeVar", + "typing.TypeVar", +} + + +def _is_unwanted_attribute(attr: griffe.Attribute) -> bool: + """Return True if the attribute is a logging.Logger instance or TypeVar.""" + ann = getattr(attr, "annotation", None) + if _fmt_annotation(ann) in _UNWANTED_ANNOTATIONS: + return True + + val = getattr(attr, "value", None) + if val is not None: + val_str = str(val).strip() + return any(val_str.startswith(f"{prefix}(") for prefix in _UNWANTED_VALUE_PREFIXES) + + return False + + +def enrich_api( + api: dict[str, list[ExportItem]], + pkg: griffe.Module, +) -> dict[str, list[dict[str, Any]]]: + """ + For every ExportItem in *api*, look up the object in the griffe tree and + attach rich metadata. Returns a JSON-serialisable dict. + """ + result: dict[str, list[dict[str, Any]]] = {} + + for module_path, exports in sorted(api.items()): + if not exports: + continue + enriched_exports = [] + for exp in exports: + member = _lookup_griffe(pkg, exp.origin, exp.name) + + # Resolve through aliases + if member is not None and member.kind.name == "ALIAS": + if hasattr(member, "target"): + member = member.target + else: + member = None + + if member is None: + exp.kind = "unknown" + enriched_exports.append(exp.model_dump(exclude_none=True)) + continue + + kind = member.kind.name + if kind == "CLASS": + exp = exp.model_copy(update=_serialize_class(member)) # pyrefly: ignore[bad-argument-type] + elif kind == "FUNCTION": + exp = exp.model_copy(update=_serialize_function(member)) # pyrefly: ignore[bad-argument-type] + elif kind == "ATTRIBUTE": + if _is_unwanted_attribute(member): # pyrefly: ignore[bad-argument-type] + continue + exp = exp.model_copy( + update=_serialize_attribute(member, exp.name) + ) # pyrefly: ignore[bad-argument-type] + else: + exp.kind = kind.lower() + doc = _fmt_docstring(getattr(member, "docstring", None)) + if doc: + exp.docstring = doc + + enriched_exports.append(exp.model_dump(exclude_none=True)) + result[module_path] = enriched_exports + + return result + + +def main() -> None: + parser = argparse.ArgumentParser(description="Introspect agentstack-sdk-py exports and emit a JSON manifest.") + parser.add_argument( + "--src-root", + type=Path, + help="Path to the agentstack_sdk package source directory", + ) + parser.add_argument( + "--output", + "-o", + type=Path, + default=Path(__file__).resolve().parent / "exports_structure.json", + help="Path where the JSON manifest will be written (default: /exports_structure.json)", + ) + args = parser.parse_args() + + # Allow helper functions (resolve_absolute, _path_to_module) to use the + # correct source root when --src-root is overridden. + src_root = Path(args.src_root.resolve()) + + if not src_root.exists(): + sys.exit(f"Package source not found at {src_root}") + + # โ”€โ”€ Phase 1: star-import tracing โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + api = trace_package(src_root, src_root) + + # โ”€โ”€ Phase 2: griffe enrichment โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ + pkg = griffe.load(src_root.name, search_paths=[str(src_root.parent)]) + enriched = enrich_api(api, pkg) + + out_file: Path = args.output + out_file.parent.mkdir(parents=True, exist_ok=True) + out_file.write_text(json.dumps(enriched, indent=2)) + + pkg_count = len(enriched) + name_count = sum(len(v) for v in enriched.values()) + print(f"Python SDK: Extracted {pkg_count} packages ยท {name_count} total exports") + + +if __name__ == "__main__": + main() diff --git a/apps/agentstack-sdk-py/docs/templates/class.mdx.j2 b/apps/agentstack-sdk-py/docs/templates/class.mdx.j2 new file mode 100644 index 0000000000..ab174b29ea --- /dev/null +++ b/apps/agentstack-sdk-py/docs/templates/class.mdx.j2 @@ -0,0 +1,99 @@ +--- +title: "{{ cls.name }}" +description: "{{ cls.docstring | first_line }}" +--- + +{{ autogen_warning }} +{%- if base_href and breadcrumb_ancestors %} + +[Python SDK Reference]({{ base_href }}/overview){% for title, filename in breadcrumb_ancestors %} / [{{ title }}]({{ base_href }}/{{ filename }}){% endfor %} / {{ cls.name }} +{%- endif %} + +```py +from {{ import_path }} import {{ cls.name }} +``` +{%- if cls.bases %} + +**Bases:** `{{ cls.bases | join(' , ') | shorten_type }}` +{%- endif %} +{%- if cls.docstring and cls.docstring | extra_lines %} + +{{ cls.docstring | extra_lines }} +{%- endif %} +{%- if cls.class_attributes %} + +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +{% for attr in cls.class_attributes %}| `{{ attr.name }}` | {% if attr.type %}`{{ attr.type | table_type }}`{% else %}โ€”{% endif %} | {% if attr.default %}`{{ attr.default | truncate_val }}`{% else %}โ€”{% endif %} | +{% endfor %} +{%- endif %} +{%- if cls.attributes %} + +## Attributes + +| Attribute | Type | Default | +|-------|------|---------| +{% for attr in cls.attributes %}| `{{ attr.name }}` | {% if attr.type %}`{{ attr.type | table_type }}`{% else %}โ€”{% endif %} | {% if attr.default %}`{{ attr.default | truncate_val }}`{% else %}โ€”{% endif %} | +{% endfor %} +{%- endif %} +{%- if cls.methods %} + +## Methods + + +{% for method in cls.methods %} +{%- if method.kind == 'constructor'%} + + +{%- if method.docstring %} + +{{ method.docstring | mdx_escape }} +{%- endif %} +{%- if method.params %} + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +{% for p in method.params %}| `{{ p.name }}` | {% if p.type %}`{{ p.type | table_type }}`{% else %}โ€”{% endif %} | {% if p.default %}`{{ p.default | truncate_val }}`{% else %}โ€”{% endif %} | +{% endfor %} +{%- endif %} +{%- if method.returns %} + +**Returns:** `{{ method.returns | shorten_type }}` + +{% endif %} + +{%- endif %} +{% endfor %} + + +{% for method in cls.methods %} +{%- if method.kind != 'constructor'%} + + +{%- if method.docstring %} + +{{ method.docstring | mdx_escape }} +{%- endif %} +{%- if method.params %} + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +{% for p in method.params %}| `{{ p.name }}` | {% if p.type %}`{{ p.type | table_type }}`{% else %}โ€”{% endif %} | {% if p.default %}`{{ p.default | truncate_val }}`{% else %}โ€”{% endif %} | +{% endfor %} +{%- endif %} +{%- if method.returns %} + +**Returns:** `{{ method.returns | shorten_type }}` + +{% endif %} + +{%- endif %} +{% endfor %} + +{%- endif %} diff --git a/apps/agentstack-sdk-py/docs/templates/function.mdx.j2 b/apps/agentstack-sdk-py/docs/templates/function.mdx.j2 new file mode 100644 index 0000000000..36b9c5a739 --- /dev/null +++ b/apps/agentstack-sdk-py/docs/templates/function.mdx.j2 @@ -0,0 +1,39 @@ +--- +title: "{{ fn.name }}" +description: "{{ fn.docstring | first_line }}" +--- + +{{ autogen_warning }} +{%- if base_href and breadcrumb_ancestors %} + +[Python SDK Reference]({{ base_href }}/overview){% for title, filename in breadcrumb_ancestors %} / [{{ title }}]({{ base_href }}/{{ filename }}){% endfor %} / {{ fn.name }} +{%- endif %} + +```py +from {{ import_path }} import {{ fn.name }} +``` +{%- if fn.labels %} + +Labels: {% for label in fn.labels %}`{{ label }}`{% if not loop.last %}, {% endif %}{% endfor %} +{%- endif %} +{%- if fn.docstring %} + +{{ fn.docstring }} +{%- endif %} +{%- if fn.params %} + +## Parameters + +| Name | Type | Default | +|------|------|---------| +{% for p in fn.params %}| `{{ p.name }}` | {% if p.type %}`{{ p.type | table_type }}`{% else %}โ€”{% endif %} | {% if p.default %}`{{ p.default | truncate_val }}`{% else %}โ€”{% endif %} | +{% endfor %} + +{%- endif %} +{%- if fn.returns %} + +## Returns + +`{{ fn.returns | shorten_type }}` + +{% endif %} diff --git a/apps/agentstack-sdk-py/docs/templates/module.mdx.j2 b/apps/agentstack-sdk-py/docs/templates/module.mdx.j2 new file mode 100644 index 0000000000..c32f911950 --- /dev/null +++ b/apps/agentstack-sdk-py/docs/templates/module.mdx.j2 @@ -0,0 +1,93 @@ +--- +title: "{{ title }}" +description: "{{ description }}" +--- + +{{ autogen_warning }} +{%- if base_href and breadcrumb_ancestors %} + +[Python SDK Reference]({{ base_href }}/overview){% for anc_title, anc_filename in breadcrumb_ancestors %} / [{{ anc_title }}]({{ base_href }}/{{ anc_filename }}){% endfor %} / {{ title }} +{%- endif %} +{%- if import_example %} + + +```py +{{ import_example }} +``` +{%- endif %} +{%- if submodule_cards %} + +## Submodules + + +{%- for card in submodule_cards %} + + + {{ card.description }} + +{%- endfor %} + + +{%- endif %} +{%- for group in groups %} +{%- if group.title %} + +--- + +## {{ group.title }} + +{%- endif %} +{%- if group.classes %} +{%- if not group.title %} + +--- + +{%- endif %} + +### Classes + + +{%- for cls in group.classes %} + + + +{%- endfor %} + + + +{%- endif %} +{%- if group.functions %} +{%- if not group.title and not group.classes %} + +--- + +{%- endif %} + +### Functions + + +{%- for fn in group.functions %} + + + +{%- endfor %} + + + +{%- endif %} +{%- if group.constants %} +{%- if not group.title and not group.classes and not group.functions %} + +--- + +{%- endif %} + +### Constants & Variables + +| {% raw %}Name{% endraw %} | Kind | Type / Definition | +|------|------|------| +{% for attr in group.constants %}| `{{ attr.name }}` | *{{ attr.kind }}* | {% if attr.annotation %}`{{ attr.annotation | shorten_type | replace('|', '\|') }}`{% elif attr.definition %}`{{ attr.definition | shorten_type | replace('|', '\|') }}`{% else %}โ€”{% endif %} | +{% endfor %} + +{%- endif %} +{%- endfor %} diff --git a/apps/agentstack-sdk-py/docs/templates/overview.mdx.j2 b/apps/agentstack-sdk-py/docs/templates/overview.mdx.j2 new file mode 100644 index 0000000000..1136d8118b --- /dev/null +++ b/apps/agentstack-sdk-py/docs/templates/overview.mdx.j2 @@ -0,0 +1,25 @@ +--- +title: "Python SDK Reference" +description: "Complete reference for the Agent Stack Python SDK (agentstack-sdk)" +--- + +{{ autogen_warning }} + +The Agent Stack Python SDK (`agentstack-sdk`) provides the tools to build, run, and integrate +A2A-compatible agents with the Agent Stack platform. + +Install with: + +```bash +pip install agentstack-sdk +``` + +## Modules + + +{%- for mod in top_modules %} + + {{ mod.description }} + +{%- endfor %} + diff --git a/apps/agentstack-sdk-py/pyproject.toml b/apps/agentstack-sdk-py/pyproject.toml index 5d4fdf7242..b93d0ce4ac 100644 --- a/apps/agentstack-sdk-py/pyproject.toml +++ b/apps/agentstack-sdk-py/pyproject.toml @@ -33,6 +33,8 @@ dependencies = [ [dependency-groups] dev = [ "beeai-framework[duckduckgo,wikipedia]>=0.1.76", + "griffe>=1.0.0", + "jinja2>=3.1.0", "pyrefly>=0.52.0", "pytest>=8.4.1", "pytest-asyncio>=1.1.0", diff --git a/apps/agentstack-sdk-py/src/agentstack_sdk/a2a/extensions/tools/exceptions.py b/apps/agentstack-sdk-py/src/agentstack_sdk/a2a/extensions/tools/exceptions.py index 957c46ae9a..5518e83c6a 100644 --- a/apps/agentstack-sdk-py/src/agentstack_sdk/a2a/extensions/tools/exceptions.py +++ b/apps/agentstack-sdk-py/src/agentstack_sdk/a2a/extensions/tools/exceptions.py @@ -4,5 +4,6 @@ from __future__ import annotations + class ToolCallRejectionError(RuntimeError): pass diff --git a/apps/agentstack-sdk-py/src/agentstack_sdk/platform/client.py b/apps/agentstack-sdk-py/src/agentstack_sdk/platform/client.py index 168e75ac54..33c10aa5e3 100644 --- a/apps/agentstack-sdk-py/src/agentstack_sdk/platform/client.py +++ b/apps/agentstack-sdk-py/src/agentstack_sdk/platform/client.py @@ -101,6 +101,8 @@ async def __aexit__( await super().__aexit__(exc_type, exc_value, traceback) +get_platform_client: typing.Callable[[], PlatformClient] +set_platform_client: typing.Callable[..., contextlib.AbstractContextManager[PlatformClient]] get_platform_client, set_platform_client = resource_context(factory=PlatformClient, default_factory=PlatformClient) P = typing.ParamSpec("P") @@ -119,6 +121,7 @@ async def use_async_resource(*args: P.args, **kwargs: P.kwargs) -> AsyncIterator return use_async_resource +use_platform_client: typing.Callable[..., contextlib.AbstractAsyncContextManager[PlatformClient]] use_platform_client = wrap_context(set_platform_client) diff --git a/apps/agentstack-sdk-py/src/agentstack_sdk/server/store/memory_context_store.py b/apps/agentstack-sdk-py/src/agentstack_sdk/server/store/memory_context_store.py index e2a23a9e78..ea3306f565 100644 --- a/apps/agentstack-sdk-py/src/agentstack_sdk/server/store/memory_context_store.py +++ b/apps/agentstack-sdk-py/src/agentstack_sdk/server/store/memory_context_store.py @@ -49,7 +49,7 @@ def __init__(self, max_contexts: int = 1000, context_ttl: timedelta = timedelta( Args: max_contexts: Maximum number of contexts to keep in memory - ttl_seconds: Time-to-live for context instances in seconds (default: 1 hour) + context_ttl: Time-to-live for context instances (default: 1 hour) """ self._instances: TTLCache[str, MemoryContextStoreInstance] = TTLCache( maxsize=max_contexts, ttl=context_ttl.total_seconds() diff --git a/apps/agentstack-sdk-py/src/agentstack_sdk/util/pydantic.py b/apps/agentstack-sdk-py/src/agentstack_sdk/util/pydantic.py index b5f4ce5946..584646413f 100644 --- a/apps/agentstack-sdk-py/src/agentstack_sdk/util/pydantic.py +++ b/apps/agentstack-sdk-py/src/agentstack_sdk/util/pydantic.py @@ -85,10 +85,12 @@ def apply_compatibility_monkey_patching(): # Fix for Python 3.14 + Pydantic 2.12.x + prefer_fwd_module TypeError if sys.version_info >= (3, 14): import typing + with suppress(ImportError, AttributeError): import pydantic._internal._typing_extra as typing_extra if hasattr(typing_extra, "_eval_type"): + def patched_eval_type(value, globalns=None, localns=None, type_params=None): # Python 3.14 typing._eval_type doesn't support prefer_fwd_module # but Pydantic 2.12.x incorrectly passes it. @@ -110,12 +112,15 @@ def patched_eval_type(value, globalns=None, localns=None, type_params=None): try: chat_module._ChatModelKwargsAdapter.validate_python({}) except Exception: + class _ChatModelKwargsRebuilder(BaseModel): kwargs: chat_module.ChatModelKwargs _ChatModelKwargsRebuilder.model_rebuild() # Re-create the adapter with explicit module to ensure forward references are resolved - chat_module._ChatModelKwargsAdapter = TypeAdapter(chat_module.ChatModelKwargs, module=chat_module.__name__) + chat_module._ChatModelKwargsAdapter = TypeAdapter( + chat_module.ChatModelKwargs, module=chat_module.__name__ + ) # Fix EmbeddingModelKwargs with suppress(ImportError, AttributeError): @@ -124,6 +129,7 @@ class _ChatModelKwargsRebuilder(BaseModel): try: embedding_module._EmbeddingModelKwargsAdapter.validate_python({}) except Exception: + class _EmbeddingModelKwargsRebuilder(BaseModel): kwargs: embedding_module.EmbeddingModelKwargs diff --git a/apps/agentstack-sdk-py/tasks.toml b/apps/agentstack-sdk-py/tasks.toml index c86e8b06ae..6ce88e0586 100644 --- a/apps/agentstack-sdk-py/tasks.toml +++ b/apps/agentstack-sdk-py/tasks.toml @@ -54,6 +54,74 @@ run = """ uv run --python="${usage_python?}" pytest """ +# docs + +["agentstack-sdk-py:docs"] +description = "Generate Python SDK reference docs for Mintlify" +depends = ["agentstack-sdk-py:setup"] +dir = "{{config_root}}/apps/agentstack-sdk-py" +run = """ +#!/bin/bash +set -euo pipefail + +DOCS_ROOT="$(cd "../../docs" && pwd)" +SDK_DOCS_DIR="${DOCS_ROOT}/development/reference/python-sdk" + +# Temp locations created by mktemp (macOS-compatible) +TEMP_OLD_DOCS="$(mktemp -d)" +TEMP_JSON="$(mktemp)" + +cleanup_on_failure() { + local exit_code=$? + # Always attempt to remove the temp JSON manifest + rm -f "${TEMP_JSON}" || true + + if [ "${exit_code}" -ne 0 ]; then + echo "โš  Doc generation failed (exit ${exit_code}) โ€” restoring previous state..." + # Remove any partially generated output + rm -rf "${SDK_DOCS_DIR}" || true + # Restore the backed-up docs when the backup is non-empty + if [ -d "${TEMP_OLD_DOCS}" ] && [ "$(ls -A "${TEMP_OLD_DOCS}" 2>/dev/null)" ]; then + mkdir -p "${SDK_DOCS_DIR}" + mv "${TEMP_OLD_DOCS}/." "${SDK_DOCS_DIR}/" || true + fi + fi + + rm -rf "${TEMP_OLD_DOCS}" || true +} +trap cleanup_on_failure EXIT + +# Step 1: back up existing docs +if [ -d "${SDK_DOCS_DIR}" ]; then + echo "Backing up current docs โ†’ ${TEMP_OLD_DOCS}" + cp -r "${SDK_DOCS_DIR}/." "${TEMP_OLD_DOCS}/" +fi + +# Step 2: introspect exports โ†’ temp JSON +echo "Running introspect_exports.py..." +uv run python docs/introspect_exports.py \\ + --src-root src/agentstack_sdk \\ + --output "${TEMP_JSON}" + +# Step 3: generate MDX docs from temp JSON +echo "Running generate_docs.py..." +uv run python docs/generate_docs.py \\ + --json-file "${TEMP_JSON}" \\ + --docs-dir "${SDK_DOCS_DIR}" \\ + --templates-dir "docs/templates" + +# Step 4: delete the introspect JSON +rm -f "${TEMP_JSON}" + +# Step 5: delete the old-docs backup +rm -rf "${TEMP_OLD_DOCS}" + +# All good โ€” disarm the failure-cleanup trap +trap - EXIT + +echo "โœ“ Docs generated successfully" +""" + # build ["agentstack-sdk-py:build"] diff --git a/apps/agentstack-sdk-py/uv.lock b/apps/agentstack-sdk-py/uv.lock index 2a6968bfc7..2ac33b25d6 100644 --- a/apps/agentstack-sdk-py/uv.lock +++ b/apps/agentstack-sdk-py/uv.lock @@ -54,6 +54,8 @@ dependencies = [ [package.dev-dependencies] dev = [ { name = "beeai-framework", extra = ["duckduckgo", "wikipedia"] }, + { name = "griffe" }, + { name = "jinja2" }, { name = "pyrefly" }, { name = "pytest" }, { name = "pytest-asyncio" }, @@ -90,6 +92,8 @@ requires-dist = [ [package.metadata.requires-dev] dev = [ { name = "beeai-framework", extras = ["duckduckgo", "wikipedia"], specifier = ">=0.1.76" }, + { name = "griffe", specifier = ">=1.0.0" }, + { name = "jinja2", specifier = ">=3.1.0" }, { name = "pyrefly", specifier = ">=0.52.0" }, { name = "pytest", specifier = ">=8.4.1" }, { name = "pytest-asyncio", specifier = ">=1.1.0" }, @@ -938,6 +942,38 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/c4/ab/09169d5a4612a5f92490806649ac8d41e3ec9129c636754575b3553f4ea4/googleapis_common_protos-1.72.0-py3-none-any.whl", hash = "sha256:4299c5a82d5ae1a9702ada957347726b167f9f8d1fc352477702a1e851ff4038", size = 297515, upload-time = "2025-11-06T18:29:13.14Z" }, ] +[[package]] +name = "griffe" +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "griffecli" }, + { name = "griffelib" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/8b/94/ee21d41e7eb4f823b94603b9d40f86d3c7fde80eacc2c3c71845476dddaa/griffe-2.0.0-py3-none-any.whl", hash = "sha256:5418081135a391c3e6e757a7f3f156f1a1a746cc7b4023868ff7d5e2f9a980aa", size = 5214, upload-time = "2026-02-09T19:09:44.105Z" }, +] + +[[package]] +name = "griffecli" +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama" }, + { name = "griffelib" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/e6/ed/d93f7a447bbf7a935d8868e9617cbe1cadf9ee9ee6bd275d3040fbf93d60/griffecli-2.0.0-py3-none-any.whl", hash = "sha256:9f7cd9ee9b21d55e91689358978d2385ae65c22f307a63fb3269acf3f21e643d", size = 9345, upload-time = "2026-02-09T19:09:42.554Z" }, +] + +[[package]] +name = "griffelib" +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4d/51/c936033e16d12b627ea334aaaaf42229c37620d0f15593456ab69ab48161/griffelib-2.0.0-py3-none-any.whl", hash = "sha256:01284878c966508b6d6f1dbff9b6fa607bc062d8261c5c7253cb285b06422a7f", size = 142004, upload-time = "2026-02-09T19:09:40.561Z" }, +] + [[package]] name = "h11" version = "0.16.0" diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth-storage.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth-storage.mdx new file mode 100644 index 0000000000..11e86712ad --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth-storage.mdx @@ -0,0 +1,28 @@ +--- +title: "OAuth Storage" +description: "Storage backends for OAuth flow state" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / OAuth Storage + +```py +from agentstack_sdk.a2a.extensions.auth.oauth.storage import MemoryTokenStorage, MemoryTokenStorageFactory, TokenStorageFactory +``` +--- +### Classes + + + + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth-storage/MemoryTokenStorage.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth-storage/MemoryTokenStorage.mdx new file mode 100644 index 0000000000..ad80f461ad --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth-storage/MemoryTokenStorage.mdx @@ -0,0 +1,59 @@ +--- +title: "MemoryTokenStorage" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [OAuth Storage](/development/reference/python-sdk/a2a-auth-oauth-storage) / MemoryTokenStorage +```py +from agentstack_sdk.a2a.extensions.auth.oauth.storage import MemoryTokenStorage +``` +**Bases:** `TokenStorage` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `tokens` | `OAuthToken \| None` | `None` | +| `client_info` | `OAuthClientInformationFull \| None` | `None` | + +## Methods + + + + + + + +**Returns:** `OAuthToken | None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `tokens` | `OAuthToken` | โ€” | + +**Returns:** `None` + + + +**Returns:** `OAuthClientInformationFull | None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client_info` | `OAuthClientInformationFull` | โ€” | + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth-storage/MemoryTokenStorageFactory.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth-storage/MemoryTokenStorageFactory.mdx new file mode 100644 index 0000000000..a75748e3cb --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth-storage/MemoryTokenStorageFactory.mdx @@ -0,0 +1,34 @@ +--- +title: "MemoryTokenStorageFactory" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [OAuth Storage](/development/reference/python-sdk/a2a-auth-oauth-storage) / MemoryTokenStorageFactory +```py +from agentstack_sdk.a2a.extensions.auth.oauth.storage import MemoryTokenStorageFactory +``` +**Bases:** `TokenStorageFactory` +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client_info` | `OAuthClientInformationFull \| None` | `None` | + + + + +**Returns:** `TokenStorage` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth-storage/TokenStorageFactory.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth-storage/TokenStorageFactory.mdx new file mode 100644 index 0000000000..1ae6c6d358 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth-storage/TokenStorageFactory.mdx @@ -0,0 +1,27 @@ +--- +title: "TokenStorageFactory" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [OAuth Storage](/development/reference/python-sdk/a2a-auth-oauth-storage) / TokenStorageFactory +```py +from agentstack_sdk.a2a.extensions.auth.oauth.storage import TokenStorageFactory +``` +**Bases:** `ABC` +## Methods + + + + + + +**Returns:** `TokenStorage` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth.mdx new file mode 100644 index 0000000000..3e3dcd989c --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth.mdx @@ -0,0 +1,40 @@ +--- +title: "OAuth Extensions" +description: "OAuth 2.0 flow extensions" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / OAuth Extensions + +```py +from agentstack_sdk.a2a.extensions.auth.oauth import AuthRequest, AuthResponse, OAuthDemand # ... +``` +--- +### Classes + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth/AuthRequest.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth/AuthRequest.mdx new file mode 100644 index 0000000000..3f1df88d50 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth/AuthRequest.mdx @@ -0,0 +1,22 @@ +--- +title: "AuthRequest" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [OAuth Extensions](/development/reference/python-sdk/a2a-auth-oauth) / AuthRequest +```py +from agentstack_sdk.a2a.extensions.auth.oauth import AuthRequest +``` +**Bases:** `SecureBaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `authorization_endpoint_url` | `AnyUrl` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth/AuthResponse.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth/AuthResponse.mdx new file mode 100644 index 0000000000..45286896ba --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth/AuthResponse.mdx @@ -0,0 +1,22 @@ +--- +title: "AuthResponse" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [OAuth Extensions](/development/reference/python-sdk/a2a-auth-oauth) / AuthResponse +```py +from agentstack_sdk.a2a.extensions.auth.oauth import AuthResponse +``` +**Bases:** `SecureBaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `redirect_uri` | `AnyUrl` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthDemand.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthDemand.mdx new file mode 100644 index 0000000000..7c2dc12fe0 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthDemand.mdx @@ -0,0 +1,22 @@ +--- +title: "OAuthDemand" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [OAuth Extensions](/development/reference/python-sdk/a2a-auth-oauth) / OAuthDemand +```py +from agentstack_sdk.a2a.extensions.auth.oauth import OAuthDemand +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `redirect_uri` | `bool` | `True` | diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionClient.mdx new file mode 100644 index 0000000000..76f396763f --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionClient.mdx @@ -0,0 +1,48 @@ +--- +title: "OAuthExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [OAuth Extensions](/development/reference/python-sdk/a2a-auth-oauth) / OAuthExtensionClient +```py +from agentstack_sdk.a2a.extensions.auth.oauth import OAuthExtensionClient +``` +**Bases:** `BaseExtensionClient[OAuthExtensionSpec, NoneType]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `oauth_fulfillments` | `dict[str, Any]` | โ€” | + +**Returns:** `dict[str, Any]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `task_id` | `str` | โ€” | +| `redirect_uri` | `AnyUrl` | โ€” | + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionMetadata.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionMetadata.mdx new file mode 100644 index 0000000000..3a78503869 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionMetadata.mdx @@ -0,0 +1,22 @@ +--- +title: "OAuthExtensionMetadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [OAuth Extensions](/development/reference/python-sdk/a2a-auth-oauth) / OAuthExtensionMetadata +```py +from agentstack_sdk.a2a.extensions.auth.oauth import OAuthExtensionMetadata +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `oauth_fulfillments` | `dict[str, OAuthFulfillment]` | `{}` | diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionParams.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionParams.mdx new file mode 100644 index 0000000000..ce7d01cdd3 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionParams.mdx @@ -0,0 +1,22 @@ +--- +title: "OAuthExtensionParams" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [OAuth Extensions](/development/reference/python-sdk/a2a-auth-oauth) / OAuthExtensionParams +```py +from agentstack_sdk.a2a.extensions.auth.oauth import OAuthExtensionParams +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `oauth_demands` | `dict[str, OAuthDemand]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionServer.mdx new file mode 100644 index 0000000000..34494c079e --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionServer.mdx @@ -0,0 +1,71 @@ +--- +title: "OAuthExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [OAuth Extensions](/development/reference/python-sdk/a2a-auth-oauth) / OAuthExtensionServer +```py +from agentstack_sdk.a2a.extensions.auth.oauth import OAuthExtensionServer +``` +**Bases:** `BaseExtensionServer[OAuthExtensionSpec, OAuthExtensionMetadata]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `context` | `RunContext` | โ€” | +| `token_storage_factory` | `TokenStorageFactory` | `token_storage_factory or MemoryTokenStor...` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `spec` | `OAuthExtensionSpec` | โ€” | +| `token_storage_factory` | `TokenStorageFactory \| None` | `None` | + +**Returns:** `None` + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | +| `run_context` | `RunContext` | โ€” | +| `request_context` | `RequestContext` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `resource_url` | `AnyUrl` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `authorization_endpoint_url` | `AnyUrl` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionSpec.mdx new file mode 100644 index 0000000000..9daeeccb8c --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthExtensionSpec.mdx @@ -0,0 +1,39 @@ +--- +title: "OAuthExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [OAuth Extensions](/development/reference/python-sdk/a2a-auth-oauth) / OAuthExtensionSpec +```py +from agentstack_sdk.a2a.extensions.auth.oauth import OAuthExtensionSpec +``` +**Bases:** `BaseExtensionSpec[OAuthExtensionParams]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `name` | `str` | `_DEFAULT_DEMAND_NAME` | + +**Returns:** `Self` + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthFulfillment.mdx b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthFulfillment.mdx new file mode 100644 index 0000000000..de0b97f538 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-oauth/OAuthFulfillment.mdx @@ -0,0 +1,22 @@ +--- +title: "OAuthFulfillment" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [OAuth Extensions](/development/reference/python-sdk/a2a-auth-oauth) / OAuthFulfillment +```py +from agentstack_sdk.a2a.extensions.auth.oauth import OAuthFulfillment +``` +**Bases:** `SecureBaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `redirect_uri` | `AnyUrl` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-auth-secrets.mdx b/docs/development/reference/python-sdk/a2a-auth-secrets.mdx new file mode 100644 index 0000000000..811563e529 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-secrets.mdx @@ -0,0 +1,42 @@ +--- +title: "Secrets Extensions" +description: "Secrets injection extensions" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / Secrets Extensions + +```py +from agentstack_sdk.a2a.extensions.auth.secrets import SecretDemand, SecretFulfillment, SecretsExtensionClient # ... +``` +--- +### Classes + + + + + + + + + + + + + + + + + +### Constants & Variables + +| Name | Kind | Type / Definition | +|------|------|------| +| `A2A_EXTENSION_SECRETS_REQUESTED` | *constant* | โ€” | +| `A2A_EXTENSION_SECRETS_RESOLVED` | *constant* | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-auth-secrets/SecretDemand.mdx b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretDemand.mdx new file mode 100644 index 0000000000..14e3a547fb --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretDemand.mdx @@ -0,0 +1,23 @@ +--- +title: "SecretDemand" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [Secrets Extensions](/development/reference/python-sdk/a2a-auth-secrets) / SecretDemand +```py +from agentstack_sdk.a2a.extensions.auth.secrets import SecretDemand +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `name` | `str` | โ€” | +| `description` | `str \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-auth-secrets/SecretFulfillment.mdx b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretFulfillment.mdx new file mode 100644 index 0000000000..2a2be2dc1b --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretFulfillment.mdx @@ -0,0 +1,22 @@ +--- +title: "SecretFulfillment" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [Secrets Extensions](/development/reference/python-sdk/a2a-auth-secrets) / SecretFulfillment +```py +from agentstack_sdk.a2a.extensions.auth.secrets import SecretFulfillment +``` +**Bases:** `SecureBaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `secret` | `SecretStr` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsExtensionClient.mdx new file mode 100644 index 0000000000..e3c8522f28 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsExtensionClient.mdx @@ -0,0 +1,17 @@ +--- +title: "SecretsExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [Secrets Extensions](/development/reference/python-sdk/a2a-auth-secrets) / SecretsExtensionClient +```py +from agentstack_sdk.a2a.extensions.auth.secrets import SecretsExtensionClient +``` +**Bases:** `BaseExtensionClient[SecretsExtensionSpec, SecretsServiceExtensionParams]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsExtensionServer.mdx new file mode 100644 index 0000000000..fddaed218b --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsExtensionServer.mdx @@ -0,0 +1,58 @@ +--- +title: "SecretsExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [Secrets Extensions](/development/reference/python-sdk/a2a-auth-secrets) / SecretsExtensionServer +```py +from agentstack_sdk.a2a.extensions.auth.secrets import SecretsExtensionServer +``` +**Bases:** `BaseExtensionServer[SecretsExtensionSpec, SecretsServiceExtensionMetadata]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `context` | `RunContext` | โ€” | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | +| `run_context` | `RunContext` | โ€” | +| `request_context` | `RequestContext` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | + +**Returns:** `SecretsServiceExtensionMetadata` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `params` | `SecretsServiceExtensionParams` | โ€” | + +**Returns:** `SecretsServiceExtensionMetadata` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsExtensionSpec.mdx new file mode 100644 index 0000000000..a8edcb6c2a --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsExtensionSpec.mdx @@ -0,0 +1,41 @@ +--- +title: "SecretsExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [Secrets Extensions](/development/reference/python-sdk/a2a-auth-secrets) / SecretsExtensionSpec +```py +from agentstack_sdk.a2a.extensions.auth.secrets import SecretsExtensionSpec +``` +**Bases:** `BaseExtensionSpec[SecretsServiceExtensionParams | None]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `name` | `str` | โ€” | +| `key` | `str \| None` | `None` | +| `description` | `str \| None` | `None` | + +**Returns:** `Self` + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsServiceExtensionMetadata.mdx b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsServiceExtensionMetadata.mdx new file mode 100644 index 0000000000..f23e2930bd --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsServiceExtensionMetadata.mdx @@ -0,0 +1,22 @@ +--- +title: "SecretsServiceExtensionMetadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [Secrets Extensions](/development/reference/python-sdk/a2a-auth-secrets) / SecretsServiceExtensionMetadata +```py +from agentstack_sdk.a2a.extensions.auth.secrets import SecretsServiceExtensionMetadata +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `secret_fulfillments` | `dict[str, SecretFulfillment]` | `{}` | diff --git a/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsServiceExtensionParams.mdx b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsServiceExtensionParams.mdx new file mode 100644 index 0000000000..1718beb050 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth-secrets/SecretsServiceExtensionParams.mdx @@ -0,0 +1,22 @@ +--- +title: "SecretsServiceExtensionParams" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Auth Extensions Overview](/development/reference/python-sdk/a2a-auth) / [Secrets Extensions](/development/reference/python-sdk/a2a-auth-secrets) / SecretsServiceExtensionParams +```py +from agentstack_sdk.a2a.extensions.auth.secrets import SecretsServiceExtensionParams +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `secret_demands` | `dict[str, SecretDemand]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-auth.mdx b/docs/development/reference/python-sdk/a2a-auth.mdx new file mode 100644 index 0000000000..31ae8dad63 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-auth.mdx @@ -0,0 +1,26 @@ +--- +title: "Auth Extensions Overview" +description: "OAuth and secrets authentication extensions" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / Auth Extensions Overview +## Submodules + + + + OAuth 2.0 flow extensions + + + OAuth 2.0 flow storage extensions + + + Secrets injection extensions + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-common.mdx b/docs/development/reference/python-sdk/a2a-common.mdx new file mode 100644 index 0000000000..2658ad201b --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common.mdx @@ -0,0 +1,80 @@ +--- +title: "Common Types" +description: "Shared base classes and form types for extensions" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / Common Types + +```py +from agentstack_sdk.a2a.extensions.common import BaseField, BaseFormRender, BaseFormResponse # ... +``` +--- +### Classes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +### Constants & Variables + +| Name | Kind | Type / Definition | +|------|------|------| +| `FormField` | *union_alias* | `TextField \| DateField \| FileField \| SingleSelectField \| MultiSelectField \| CheckboxField \| CheckboxGroupField` | +| `FormFieldValue` | *union_alias* | `TextFieldValue \| DateFieldValue \| FileFieldValue \| SingleSelectFieldValue \| MultiSelectFieldValue \| CheckboxFieldValue \| CheckboxGroupFieldValue` | +| `IterValue` | *union_alias* | `list[dict[str, str \| None]] \| NonFileIterValue` | +| `NonFileIterValue` | *union_alias* | `dict[str, bool \| None] \| list[str] \| str \| bool \| None` | +| `SettingsFormField` | *union_alias* | `CheckboxGroupField \| SingleSelectField` | +| `SettingsFormFieldValue` | *union_alias* | `CheckboxGroupFieldValue \| SingleSelectFieldValue` | diff --git a/docs/development/reference/python-sdk/a2a-common/BaseField.mdx b/docs/development/reference/python-sdk/a2a-common/BaseField.mdx new file mode 100644 index 0000000000..79d3010cab --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/BaseField.mdx @@ -0,0 +1,25 @@ +--- +title: "BaseField" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / BaseField +```py +from agentstack_sdk.a2a.extensions.common import BaseField +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `label` | `str` | โ€” | +| `required` | `bool` | `False` | +| `col_span` | `int \| None` | `Field(default=None, ge=1, le=4)` | diff --git a/docs/development/reference/python-sdk/a2a-common/BaseFormRender.mdx b/docs/development/reference/python-sdk/a2a-common/BaseFormRender.mdx new file mode 100644 index 0000000000..2c8e2edd61 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/BaseFormRender.mdx @@ -0,0 +1,26 @@ +--- +title: "BaseFormRender" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / BaseFormRender +```py +from agentstack_sdk.a2a.extensions.common import BaseFormRender +``` +**Bases:** `BaseModel , Generic[F]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `title` | `str \| None` | `None` | +| `description` | `str \| None` | `None` | +| `columns` | `int \| None` | `Field(default=None, ge=1, le=4)` | +| `submit_label` | `str \| None` | `None` | +| `fields` | `list[F]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-common/BaseFormResponse.mdx b/docs/development/reference/python-sdk/a2a-common/BaseFormResponse.mdx new file mode 100644 index 0000000000..959b4d0d44 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/BaseFormResponse.mdx @@ -0,0 +1,22 @@ +--- +title: "BaseFormResponse" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / BaseFormResponse +```py +from agentstack_sdk.a2a.extensions.common import BaseFormResponse +``` +**Bases:** `BaseModel , Generic[FV]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `values` | `dict[str, FV]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-common/CheckboxField.mdx b/docs/development/reference/python-sdk/a2a-common/CheckboxField.mdx new file mode 100644 index 0000000000..1cecf53d4e --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/CheckboxField.mdx @@ -0,0 +1,24 @@ +--- +title: "CheckboxField" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / CheckboxField +```py +from agentstack_sdk.a2a.extensions.common import CheckboxField +``` +**Bases:** `BaseField` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['checkbox']` | `'checkbox'` | +| `content` | `str` | โ€” | +| `default_value` | `bool` | `False` | diff --git a/docs/development/reference/python-sdk/a2a-common/CheckboxFieldValue.mdx b/docs/development/reference/python-sdk/a2a-common/CheckboxFieldValue.mdx new file mode 100644 index 0000000000..72a00118bd --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/CheckboxFieldValue.mdx @@ -0,0 +1,23 @@ +--- +title: "CheckboxFieldValue" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / CheckboxFieldValue +```py +from agentstack_sdk.a2a.extensions.common import CheckboxFieldValue +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['checkbox']` | `'checkbox'` | +| `value` | `bool \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-common/CheckboxGroupField.mdx b/docs/development/reference/python-sdk/a2a-common/CheckboxGroupField.mdx new file mode 100644 index 0000000000..b4d68c0960 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/CheckboxGroupField.mdx @@ -0,0 +1,23 @@ +--- +title: "CheckboxGroupField" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / CheckboxGroupField +```py +from agentstack_sdk.a2a.extensions.common import CheckboxGroupField +``` +**Bases:** `BaseField` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['checkbox_group']` | `'checkbox_group'` | +| `fields` | `list[CheckboxField]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-common/CheckboxGroupFieldValue.mdx b/docs/development/reference/python-sdk/a2a-common/CheckboxGroupFieldValue.mdx new file mode 100644 index 0000000000..d1eb5639bb --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/CheckboxGroupFieldValue.mdx @@ -0,0 +1,23 @@ +--- +title: "CheckboxGroupFieldValue" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / CheckboxGroupFieldValue +```py +from agentstack_sdk.a2a.extensions.common import CheckboxGroupFieldValue +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['checkbox_group']` | `'checkbox_group'` | +| `value` | `dict[str, bool \| None] \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-common/DateField.mdx b/docs/development/reference/python-sdk/a2a-common/DateField.mdx new file mode 100644 index 0000000000..6f3343dde8 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/DateField.mdx @@ -0,0 +1,24 @@ +--- +title: "DateField" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / DateField +```py +from agentstack_sdk.a2a.extensions.common import DateField +``` +**Bases:** `BaseField` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['date']` | `'date'` | +| `placeholder` | `str \| None` | `None` | +| `default_value` | `str \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-common/DateFieldValue.mdx b/docs/development/reference/python-sdk/a2a-common/DateFieldValue.mdx new file mode 100644 index 0000000000..8418dbefa9 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/DateFieldValue.mdx @@ -0,0 +1,23 @@ +--- +title: "DateFieldValue" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / DateFieldValue +```py +from agentstack_sdk.a2a.extensions.common import DateFieldValue +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['date']` | `'date'` | +| `value` | `str \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-common/FileField.mdx b/docs/development/reference/python-sdk/a2a-common/FileField.mdx new file mode 100644 index 0000000000..8b0d2919e3 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/FileField.mdx @@ -0,0 +1,23 @@ +--- +title: "FileField" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / FileField +```py +from agentstack_sdk.a2a.extensions.common import FileField +``` +**Bases:** `BaseField` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['file']` | `'file'` | +| `accept` | `list[str]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-common/FileFieldValue.mdx b/docs/development/reference/python-sdk/a2a-common/FileFieldValue.mdx new file mode 100644 index 0000000000..99b119726f --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/FileFieldValue.mdx @@ -0,0 +1,23 @@ +--- +title: "FileFieldValue" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / FileFieldValue +```py +from agentstack_sdk.a2a.extensions.common import FileFieldValue +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['file']` | `'file'` | +| `value` | `list[FileInfo] \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-common/FileInfo.mdx b/docs/development/reference/python-sdk/a2a-common/FileInfo.mdx new file mode 100644 index 0000000000..8b987d8a72 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/FileInfo.mdx @@ -0,0 +1,24 @@ +--- +title: "FileInfo" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / FileInfo +```py +from agentstack_sdk.a2a.extensions.common import FileInfo +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `uri` | `str` | โ€” | +| `name` | `str \| None` | `None` | +| `mime_type` | `str \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-common/FileItem.mdx b/docs/development/reference/python-sdk/a2a-common/FileItem.mdx new file mode 100644 index 0000000000..ccfe5d1d3e --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/FileItem.mdx @@ -0,0 +1,24 @@ +--- +title: "FileItem" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / FileItem +```py +from agentstack_sdk.a2a.extensions.common import FileItem +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `uri` | `str` | โ€” | +| `name` | `str \| None` | `None` | +| `mime_type` | `str \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-common/FormRender.mdx b/docs/development/reference/python-sdk/a2a-common/FormRender.mdx new file mode 100644 index 0000000000..0cb487e3fd --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/FormRender.mdx @@ -0,0 +1,17 @@ +--- +title: "FormRender" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / FormRender +```py +from agentstack_sdk.a2a.extensions.common import FormRender +``` +**Bases:** `BaseFormRender[FormField]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-common/FormResponse.mdx b/docs/development/reference/python-sdk/a2a-common/FormResponse.mdx new file mode 100644 index 0000000000..4376145e2d --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/FormResponse.mdx @@ -0,0 +1,17 @@ +--- +title: "FormResponse" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / FormResponse +```py +from agentstack_sdk.a2a.extensions.common import FormResponse +``` +**Bases:** `BaseFormResponse[FormFieldValue]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-common/MultiSelectField.mdx b/docs/development/reference/python-sdk/a2a-common/MultiSelectField.mdx new file mode 100644 index 0000000000..52ab55f33b --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/MultiSelectField.mdx @@ -0,0 +1,32 @@ +--- +title: "MultiSelectField" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / MultiSelectField +```py +from agentstack_sdk.a2a.extensions.common import MultiSelectField +``` +**Bases:** `BaseField` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['multiselect']` | `'multiselect'` | +| `options` | `list[OptionItem]` | โ€” | +| `default_value` | `list[str] \| None` | `None` | + +## Methods + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-common/MultiSelectFieldValue.mdx b/docs/development/reference/python-sdk/a2a-common/MultiSelectFieldValue.mdx new file mode 100644 index 0000000000..c8ec3c19db --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/MultiSelectFieldValue.mdx @@ -0,0 +1,23 @@ +--- +title: "MultiSelectFieldValue" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / MultiSelectFieldValue +```py +from agentstack_sdk.a2a.extensions.common import MultiSelectFieldValue +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['multiselect']` | `'multiselect'` | +| `value` | `list[str] \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-common/OptionItem.mdx b/docs/development/reference/python-sdk/a2a-common/OptionItem.mdx new file mode 100644 index 0000000000..a09fdebec6 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/OptionItem.mdx @@ -0,0 +1,23 @@ +--- +title: "OptionItem" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / OptionItem +```py +from agentstack_sdk.a2a.extensions.common import OptionItem +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `label` | `str` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-common/SettingsFormRender.mdx b/docs/development/reference/python-sdk/a2a-common/SettingsFormRender.mdx new file mode 100644 index 0000000000..c51f335b5f --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/SettingsFormRender.mdx @@ -0,0 +1,17 @@ +--- +title: "SettingsFormRender" +description: "FormRender for settings - only allows fields defined in SettingsFormField" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / SettingsFormRender +```py +from agentstack_sdk.a2a.extensions.common import SettingsFormRender +``` +**Bases:** `BaseFormRender[SettingsFormField]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-common/SettingsFormResponse.mdx b/docs/development/reference/python-sdk/a2a-common/SettingsFormResponse.mdx new file mode 100644 index 0000000000..65fc6ba0ed --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/SettingsFormResponse.mdx @@ -0,0 +1,17 @@ +--- +title: "SettingsFormResponse" +description: "FormResponse for settings - only allows fields defined in SettingsFormFieldValue" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / SettingsFormResponse +```py +from agentstack_sdk.a2a.extensions.common import SettingsFormResponse +``` +**Bases:** `BaseFormResponse[SettingsFormFieldValue]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-common/SingleSelectField.mdx b/docs/development/reference/python-sdk/a2a-common/SingleSelectField.mdx new file mode 100644 index 0000000000..f0ce6af22a --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/SingleSelectField.mdx @@ -0,0 +1,32 @@ +--- +title: "SingleSelectField" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / SingleSelectField +```py +from agentstack_sdk.a2a.extensions.common import SingleSelectField +``` +**Bases:** `BaseField` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['singleselect']` | `'singleselect'` | +| `options` | `list[OptionItem]` | โ€” | +| `default_value` | `str \| None` | `None` | + +## Methods + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-common/SingleSelectFieldValue.mdx b/docs/development/reference/python-sdk/a2a-common/SingleSelectFieldValue.mdx new file mode 100644 index 0000000000..83c74a9b31 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/SingleSelectFieldValue.mdx @@ -0,0 +1,23 @@ +--- +title: "SingleSelectFieldValue" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / SingleSelectFieldValue +```py +from agentstack_sdk.a2a.extensions.common import SingleSelectFieldValue +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['singleselect']` | `'singleselect'` | +| `value` | `str \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-common/TextField.mdx b/docs/development/reference/python-sdk/a2a-common/TextField.mdx new file mode 100644 index 0000000000..63b3406a2b --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/TextField.mdx @@ -0,0 +1,25 @@ +--- +title: "TextField" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / TextField +```py +from agentstack_sdk.a2a.extensions.common import TextField +``` +**Bases:** `BaseField` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['text']` | `'text'` | +| `placeholder` | `str \| None` | `None` | +| `default_value` | `str \| None` | `None` | +| `auto_resize` | `bool \| None` | `True` | diff --git a/docs/development/reference/python-sdk/a2a-common/TextFieldValue.mdx b/docs/development/reference/python-sdk/a2a-common/TextFieldValue.mdx new file mode 100644 index 0000000000..e66ae4f090 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-common/TextFieldValue.mdx @@ -0,0 +1,23 @@ +--- +title: "TextFieldValue" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Common Types](/development/reference/python-sdk/a2a-common) / TextFieldValue +```py +from agentstack_sdk.a2a.extensions.common import TextFieldValue +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['text']` | `'text'` | +| `value` | `str \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-extensions-base/BaseExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-extensions-base/BaseExtensionClient.mdx new file mode 100644 index 0000000000..6d6f6b2d31 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-extensions-base/BaseExtensionClient.mdx @@ -0,0 +1,50 @@ +--- +title: "BaseExtensionClient" +description: "Type of the extension metadata, attached to messages" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions Base](/development/reference/python-sdk/a2a-extensions-base) / BaseExtensionClient +```py +from agentstack_sdk.a2a.extensions.base import BaseExtensionClient +``` +**Bases:** `ABC , typing.Generic[ExtensionSpecT, MetadataFromServerT]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `spec` | โ€” | `spec` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `spec` | `ExtensionSpecT` | โ€” | + +**Returns:** `None` + + + + + +Client should use this method to retrieve extension-associated metadata from a message. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | + +**Returns:** `MetadataFromServerT | None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-extensions-base/BaseExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-extensions-base/BaseExtensionServer.mdx new file mode 100644 index 0000000000..1915c2541f --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-extensions-base/BaseExtensionServer.mdx @@ -0,0 +1,67 @@ +--- +title: "BaseExtensionServer" +description: "Type of the extension metadata, attached to messages" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions Base](/development/reference/python-sdk/a2a-extensions-base) / BaseExtensionServer +```py +from agentstack_sdk.a2a.extensions.base import BaseExtensionServer +``` +**Bases:** `ABC , typing.Generic[ExtensionSpecT, MetadataFromClientT]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `data` | โ€” | โ€” | +| `spec` | โ€” | `spec` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `spec` | `ExtensionSpecT` | โ€” | +| `args` | โ€” | `()` | +| `kwargs` | โ€” | `{}` | + +**Returns:** `None` + + + + + +Server should use this method to retrieve extension-associated metadata from a message. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | + +**Returns:** `MetadataFromClientT | None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | +| `run_context` | `RunContext` | โ€” | +| `request_context` | `RequestContext` | โ€” | + + +Called when entering the agent context after the first message was parsed (__call__ was already called) +**Returns:** `AsyncIterator[None]` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-extensions-base/BaseExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-extensions-base/BaseExtensionSpec.mdx new file mode 100644 index 0000000000..15595417fd --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-extensions-base/BaseExtensionSpec.mdx @@ -0,0 +1,69 @@ +--- +title: "BaseExtensionSpec" +description: "Base class for an A2A extension handler" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions Base](/development/reference/python-sdk/a2a-extensions-base) / BaseExtensionSpec +```py +from agentstack_sdk.a2a.extensions.base import BaseExtensionSpec +``` +**Bases:** `ABC , typing.Generic[ParamsT]` +The base implementations assume a single URI. More complex extension +handlers (e.g. serving multiple versions of an extension spec) may override +the appropriate methods. +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | โ€” | +| `DESCRIPTION` | `str \| None` | `None` | +| `params` | `ParamsT` | `params` | + +## Methods + + + + +Agent should construct an extension instance using the constructor. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `params` | `ParamsT` | โ€” | + +**Returns:** `None` + + + + + +Client should construct an extension instance using this classmethod. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `agent` | `AgentCard` | โ€” | + +**Returns:** `Self | None` + + + +Agent should use this method to obtain extension definitions to advertise on the agent card. +This returns a list, as it's possible to support multiple A2A extensions within a single class. +(Usually, that would be different versions of the extension spec.) +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `required` | `bool` | `False` | + +**Returns:** `list[AgentExtension]` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-extensions-base/NoParamsBaseExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-extensions-base/NoParamsBaseExtensionSpec.mdx new file mode 100644 index 0000000000..0aaef6366d --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-extensions-base/NoParamsBaseExtensionSpec.mdx @@ -0,0 +1,34 @@ +--- +title: "NoParamsBaseExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions Base](/development/reference/python-sdk/a2a-extensions-base) / NoParamsBaseExtensionSpec +```py +from agentstack_sdk.a2a.extensions.base import NoParamsBaseExtensionSpec +``` +**Bases:** `BaseExtensionSpec[NoneType]` +## Methods + + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `agent` | `AgentCard` | โ€” | + +**Returns:** `Self | None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-extensions-exceptions/ExtensionError.mdx b/docs/development/reference/python-sdk/a2a-extensions-exceptions/ExtensionError.mdx new file mode 100644 index 0000000000..fd473c67b9 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-extensions-exceptions/ExtensionError.mdx @@ -0,0 +1,37 @@ +--- +title: "ExtensionError" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions Exceptions](/development/reference/python-sdk/a2a-extensions-exceptions) / ExtensionError +```py +from agentstack_sdk.a2a.extensions.exceptions import ExtensionError +``` +**Bases:** `Exception` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `extension` | `BaseExtensionSpec` | โ€” | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `spec` | `BaseExtensionSpec` | โ€” | +| `message` | `str` | โ€” | + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-interactions.mdx b/docs/development/reference/python-sdk/a2a-interactions.mdx new file mode 100644 index 0000000000..ee7b124018 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-interactions.mdx @@ -0,0 +1,49 @@ +--- +title: "Interaction Extensions" +description: "Human-in-the-loop interaction extensions" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / Interaction Extensions + +```py +from agentstack_sdk.a2a.extensions.interactions import ApprovalExtensionClient, ApprovalExtensionMetadata, ApprovalExtensionParams # ... +``` +--- +### Classes + + + + + + + + + + + + + + + + + + + + + + + +### Constants & Variables + +| Name | Kind | Type / Definition | +|------|------|------| +| `A2A_EXTENSION_APPROVAL_REQUESTED` | *constant* | โ€” | +| `A2A_EXTENSION_APPROVAL_RESOLVED` | *constant* | โ€” | +| `ApprovalRequest` | *special_form* | `Annotated[GenericApprovalRequest \| ToolCallApprovalRequest, Discriminator('action')]` | diff --git a/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionClient.mdx new file mode 100644 index 0000000000..584b6c0b87 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionClient.mdx @@ -0,0 +1,42 @@ +--- +title: "ApprovalExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Interaction Extensions](/development/reference/python-sdk/a2a-interactions) / ApprovalExtensionClient +```py +from agentstack_sdk.a2a.extensions.interactions import ApprovalExtensionClient +``` +**Bases:** `BaseExtensionClient[ApprovalExtensionSpec, NoneType]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `response` | `ApprovalResponse` | โ€” | +| `task_id` | `str \| None` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `Message` | โ€” | + + +**Returns:** `dict[str, Any]` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionMetadata.mdx b/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionMetadata.mdx new file mode 100644 index 0000000000..b73e7a49cb --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionMetadata.mdx @@ -0,0 +1,17 @@ +--- +title: "ApprovalExtensionMetadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Interaction Extensions](/development/reference/python-sdk/a2a-interactions) / ApprovalExtensionMetadata +```py +from agentstack_sdk.a2a.extensions.interactions import ApprovalExtensionMetadata +``` +**Bases:** `BaseModel` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionParams.mdx b/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionParams.mdx new file mode 100644 index 0000000000..689d7dfdba --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionParams.mdx @@ -0,0 +1,17 @@ +--- +title: "ApprovalExtensionParams" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Interaction Extensions](/development/reference/python-sdk/a2a-interactions) / ApprovalExtensionParams +```py +from agentstack_sdk.a2a.extensions.interactions import ApprovalExtensionParams +``` +**Bases:** `BaseModel` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionServer.mdx new file mode 100644 index 0000000000..3b58a02743 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionServer.mdx @@ -0,0 +1,48 @@ +--- +title: "ApprovalExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Interaction Extensions](/development/reference/python-sdk/a2a-interactions) / ApprovalExtensionServer +```py +from agentstack_sdk.a2a.extensions.interactions import ApprovalExtensionServer +``` +**Bases:** `BaseExtensionServer[ApprovalExtensionSpec, ApprovalExtensionMetadata]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `request` | `ApprovalRequest` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `Message` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `request` | `ApprovalRequest` | โ€” | +| `context` | `RunContext` | โ€” | + +**Returns:** `ApprovalResponse` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionSpec.mdx new file mode 100644 index 0000000000..286693d0a9 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-interactions/ApprovalExtensionSpec.mdx @@ -0,0 +1,22 @@ +--- +title: "ApprovalExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Interaction Extensions](/development/reference/python-sdk/a2a-interactions) / ApprovalExtensionSpec +```py +from agentstack_sdk.a2a.extensions.interactions import ApprovalExtensionSpec +``` +**Bases:** `BaseExtensionSpec[ApprovalExtensionParams]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | diff --git a/docs/development/reference/python-sdk/a2a-interactions/ApprovalRejectionError.mdx b/docs/development/reference/python-sdk/a2a-interactions/ApprovalRejectionError.mdx new file mode 100644 index 0000000000..8aa503a627 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-interactions/ApprovalRejectionError.mdx @@ -0,0 +1,17 @@ +--- +title: "ApprovalRejectionError" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Interaction Extensions](/development/reference/python-sdk/a2a-interactions) / ApprovalRejectionError +```py +from agentstack_sdk.a2a.extensions.interactions import ApprovalRejectionError +``` +**Bases:** `RuntimeError` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-interactions/ApprovalResponse.mdx b/docs/development/reference/python-sdk/a2a-interactions/ApprovalResponse.mdx new file mode 100644 index 0000000000..6b63a863e1 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-interactions/ApprovalResponse.mdx @@ -0,0 +1,34 @@ +--- +title: "ApprovalResponse" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Interaction Extensions](/development/reference/python-sdk/a2a-interactions) / ApprovalResponse +```py +from agentstack_sdk.a2a.extensions.interactions import ApprovalResponse +``` +**Bases:** `SecureBaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `decision` | `Literal['approve', 'reject']` | โ€” | +| `approved` | `bool` | โ€” | + +## Methods + + + + + + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-interactions/GenericApprovalRequest.mdx b/docs/development/reference/python-sdk/a2a-interactions/GenericApprovalRequest.mdx new file mode 100644 index 0000000000..6fdaae6651 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-interactions/GenericApprovalRequest.mdx @@ -0,0 +1,24 @@ +--- +title: "GenericApprovalRequest" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Interaction Extensions](/development/reference/python-sdk/a2a-interactions) / GenericApprovalRequest +```py +from agentstack_sdk.a2a.extensions.interactions import GenericApprovalRequest +``` +**Bases:** `SecureBaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `action` | `Literal['generic']` | `'generic'` | +| `title` | `str \| None` | `Field(None, description='A human-readabl...` | +| `description` | `str \| None` | `Field(None, description='A human-readabl...` | diff --git a/docs/development/reference/python-sdk/a2a-interactions/ToolCallApprovalRequest.mdx b/docs/development/reference/python-sdk/a2a-interactions/ToolCallApprovalRequest.mdx new file mode 100644 index 0000000000..4bea191c74 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-interactions/ToolCallApprovalRequest.mdx @@ -0,0 +1,46 @@ +--- +title: "ToolCallApprovalRequest" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Interaction Extensions](/development/reference/python-sdk/a2a-interactions) / ToolCallApprovalRequest +```py +from agentstack_sdk.a2a.extensions.interactions import ToolCallApprovalRequest +``` +**Bases:** `SecureBaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `action` | `Literal['tool-call']` | `'tool-call'` | +| `title` | `str \| None` | `Field(None, description='A human-readabl...` | +| `description` | `str \| None` | `Field(None, description='A human-readabl...` | +| `name` | `str` | `Field(description='The programmatic name...` | +| `input` | `dict[str, Any] \| None` | `Field(description='The input for the too...` | +| `server` | `ToolCallServer \| None` | `Field(None, description='The server exec...` | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `tool` | `Tool` | โ€” | +| `input` | `dict[str, Any] \| None` | โ€” | +| `server` | `Implementation \| None` | `None` | + +**Returns:** `'ToolCallApprovalRequest'` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-interactions/ToolCallServer.mdx b/docs/development/reference/python-sdk/a2a-interactions/ToolCallServer.mdx new file mode 100644 index 0000000000..c1fd95218c --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-interactions/ToolCallServer.mdx @@ -0,0 +1,24 @@ +--- +title: "ToolCallServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Interaction Extensions](/development/reference/python-sdk/a2a-interactions) / ToolCallServer +```py +from agentstack_sdk.a2a.extensions.interactions import ToolCallServer +``` +**Bases:** `SecureBaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `name` | `str` | `Field(description='The programmatic name...` | +| `title` | `str \| None` | `Field(description='A human-readable titl...` | +| `version` | `str` | `Field(description='The version of the se...` | diff --git a/docs/development/reference/python-sdk/a2a-services.mdx b/docs/development/reference/python-sdk/a2a-services.mdx new file mode 100644 index 0000000000..bd2687588d --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services.mdx @@ -0,0 +1,97 @@ +--- +title: "Service Extensions" +description: "LLM, embedding, MCP, and platform service extensions" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / Service Extensions + +```py +from agentstack_sdk.a2a.extensions.services import EmbeddingDemand, EmbeddingFulfillment, EmbeddingServiceExtensionClient # ... +``` +--- +### Classes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +### Constants & Variables + +| Name | Kind | Type / Definition | +|------|------|------| +| `MCPTransport` | *special_form* | `Annotated[StdioTransport \| StreamableHTTPTransport, pydantic.Field(discriminator='type')]` | diff --git a/docs/development/reference/python-sdk/a2a-services/EmbeddingDemand.mdx b/docs/development/reference/python-sdk/a2a-services/EmbeddingDemand.mdx new file mode 100644 index 0000000000..db989aea55 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/EmbeddingDemand.mdx @@ -0,0 +1,23 @@ +--- +title: "EmbeddingDemand" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / EmbeddingDemand +```py +from agentstack_sdk.a2a.extensions.services import EmbeddingDemand +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `description` | `str \| None` | `None` | +| `suggested` | `tuple[str, ...]` | `()` | diff --git a/docs/development/reference/python-sdk/a2a-services/EmbeddingFulfillment.mdx b/docs/development/reference/python-sdk/a2a-services/EmbeddingFulfillment.mdx new file mode 100644 index 0000000000..30a3bae37a --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/EmbeddingFulfillment.mdx @@ -0,0 +1,25 @@ +--- +title: "EmbeddingFulfillment" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / EmbeddingFulfillment +```py +from agentstack_sdk.a2a.extensions.services import EmbeddingFulfillment +``` +**Bases:** `SecureBaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `identifier` | `str \| None` | `None` | +| `api_base` | `str` | โ€” | +| `api_key` | `str` | โ€” | +| `api_model` | `str` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionClient.mdx new file mode 100644 index 0000000000..d78a4b8b0c --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionClient.mdx @@ -0,0 +1,33 @@ +--- +title: "EmbeddingServiceExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / EmbeddingServiceExtensionClient +```py +from agentstack_sdk.a2a.extensions.services import EmbeddingServiceExtensionClient +``` +**Bases:** `BaseExtensionClient[EmbeddingServiceExtensionSpec, NoneType]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `embedding_fulfillments` | `dict[str, EmbeddingFulfillment]` | โ€” | + +**Returns:** `dict[str, Any]` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionMetadata.mdx b/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionMetadata.mdx new file mode 100644 index 0000000000..9d76b823a9 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionMetadata.mdx @@ -0,0 +1,22 @@ +--- +title: "EmbeddingServiceExtensionMetadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / EmbeddingServiceExtensionMetadata +```py +from agentstack_sdk.a2a.extensions.services import EmbeddingServiceExtensionMetadata +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `embedding_fulfillments` | `dict[str, EmbeddingFulfillment]` | `{}` | diff --git a/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionParams.mdx b/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionParams.mdx new file mode 100644 index 0000000000..7e80a00749 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionParams.mdx @@ -0,0 +1,22 @@ +--- +title: "EmbeddingServiceExtensionParams" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / EmbeddingServiceExtensionParams +```py +from agentstack_sdk.a2a.extensions.services import EmbeddingServiceExtensionParams +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `embedding_demands` | `dict[str, EmbeddingDemand]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionServer.mdx new file mode 100644 index 0000000000..938db1cedf --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionServer.mdx @@ -0,0 +1,32 @@ +--- +title: "EmbeddingServiceExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / EmbeddingServiceExtensionServer +```py +from agentstack_sdk.a2a.extensions.services import EmbeddingServiceExtensionServer +``` +**Bases:** `BaseExtensionServer[EmbeddingServiceExtensionSpec, EmbeddingServiceExtensionMetadata]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | +| `run_context` | `RunContext` | โ€” | +| `request_context` | `RequestContext` | โ€” | + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionSpec.mdx new file mode 100644 index 0000000000..28313b63fd --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/EmbeddingServiceExtensionSpec.mdx @@ -0,0 +1,41 @@ +--- +title: "EmbeddingServiceExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / EmbeddingServiceExtensionSpec +```py +from agentstack_sdk.a2a.extensions.services import EmbeddingServiceExtensionSpec +``` +**Bases:** `BaseExtensionSpec[EmbeddingServiceExtensionParams]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `name` | `str \| None` | `None` | +| `description` | `str \| None` | `None` | +| `suggested` | `tuple[str, ...]` | `()` | + +**Returns:** `Self` + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/FormDemands.mdx b/docs/development/reference/python-sdk/a2a-services/FormDemands.mdx new file mode 100644 index 0000000000..5153415215 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/FormDemands.mdx @@ -0,0 +1,23 @@ +--- +title: "FormDemands" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / FormDemands +```py +from agentstack_sdk.a2a.extensions.services import FormDemands +``` +**Bases:** `TypedDict` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `initial_form` | `FormRender \| None` | โ€” | +| `settings_form` | `SettingsFormRender \| None` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionClient.mdx new file mode 100644 index 0000000000..9c1d023cbb --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionClient.mdx @@ -0,0 +1,33 @@ +--- +title: "FormServiceExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / FormServiceExtensionClient +```py +from agentstack_sdk.a2a.extensions.services import FormServiceExtensionClient +``` +**Bases:** `BaseExtensionClient[FormServiceExtensionSpec, FormRender]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `form_fulfillments` | `dict[str, FormResponse \| SettingsFormResponse]` | โ€” | + +**Returns:** `dict[str, Any]` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionMetadata.mdx b/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionMetadata.mdx new file mode 100644 index 0000000000..fd5ec59199 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionMetadata.mdx @@ -0,0 +1,22 @@ +--- +title: "FormServiceExtensionMetadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / FormServiceExtensionMetadata +```py +from agentstack_sdk.a2a.extensions.services import FormServiceExtensionMetadata +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `form_fulfillments` | `dict[str, FormResponse \| SettingsFormResponse]` | `{}` | diff --git a/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionParams.mdx b/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionParams.mdx new file mode 100644 index 0000000000..b0d11eb4f6 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionParams.mdx @@ -0,0 +1,22 @@ +--- +title: "FormServiceExtensionParams" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / FormServiceExtensionParams +```py +from agentstack_sdk.a2a.extensions.services import FormServiceExtensionParams +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `form_demands` | `FormDemands` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionServer.mdx new file mode 100644 index 0000000000..18a4d1509e --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionServer.mdx @@ -0,0 +1,48 @@ +--- +title: "FormServiceExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / FormServiceExtensionServer +```py +from agentstack_sdk.a2a.extensions.services import FormServiceExtensionServer +``` +**Bases:** `BaseExtensionServer[FormServiceExtensionSpec, FormServiceExtensionMetadata]` +## Methods + + + + + + +Parse initial_form from form_fulfillments. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `model` | `type[T] \| None` | `None` | + +**Returns:** `T | FormResponse | None` + + + +Parse settings_form from form_fulfillments. + +This is the preferred way to access settings in agents, replacing the +deprecated SettingsExtensionServer.parse_settings_response(). +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `model` | `type[T] \| None` | `None` | + +**Returns:** `T | SettingsFormResponse | None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionSpec.mdx new file mode 100644 index 0000000000..c707842057 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/FormServiceExtensionSpec.mdx @@ -0,0 +1,65 @@ +--- +title: "FormServiceExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / FormServiceExtensionSpec +```py +from agentstack_sdk.a2a.extensions.services import FormServiceExtensionSpec +``` +**Bases:** `BaseExtensionSpec[FormServiceExtensionParams]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | + +## Methods + + + + +Create form extension demanding an initial_form. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `initial_form` | `FormRender \| None` | โ€” | + +**Returns:** `Self` + + + +Create form extension demanding a settings_form. + +This is the preferred way to add settings to an agent, replacing the deprecated SettingsExtensionSpec. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `settings_form` | `SettingsFormRender` | โ€” | + +**Returns:** `Self` + + + +Create form extension demanding both initial_form and settings_form. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `initial_form` | `FormRender \| None` | `None` | +| `settings_form` | `SettingsFormRender \| None` | `None` | + +**Returns:** `Self` + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/LLMDemand.mdx b/docs/development/reference/python-sdk/a2a-services/LLMDemand.mdx new file mode 100644 index 0000000000..514d9b630c --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/LLMDemand.mdx @@ -0,0 +1,23 @@ +--- +title: "LLMDemand" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / LLMDemand +```py +from agentstack_sdk.a2a.extensions.services import LLMDemand +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `description` | `str \| None` | `None` | +| `suggested` | `tuple[str, ...]` | `()` | diff --git a/docs/development/reference/python-sdk/a2a-services/LLMFulfillment.mdx b/docs/development/reference/python-sdk/a2a-services/LLMFulfillment.mdx new file mode 100644 index 0000000000..4950769ad6 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/LLMFulfillment.mdx @@ -0,0 +1,25 @@ +--- +title: "LLMFulfillment" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / LLMFulfillment +```py +from agentstack_sdk.a2a.extensions.services import LLMFulfillment +``` +**Bases:** `SecureBaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `identifier` | `str \| None` | `None` | +| `api_base` | `str` | โ€” | +| `api_key` | `str` | โ€” | +| `api_model` | `str` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionClient.mdx new file mode 100644 index 0000000000..0bdebab2b4 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionClient.mdx @@ -0,0 +1,33 @@ +--- +title: "LLMServiceExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / LLMServiceExtensionClient +```py +from agentstack_sdk.a2a.extensions.services import LLMServiceExtensionClient +``` +**Bases:** `BaseExtensionClient[LLMServiceExtensionSpec, NoneType]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `llm_fulfillments` | `dict[str, LLMFulfillment]` | โ€” | + +**Returns:** `dict[str, Any]` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionMetadata.mdx b/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionMetadata.mdx new file mode 100644 index 0000000000..da4bf67747 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionMetadata.mdx @@ -0,0 +1,22 @@ +--- +title: "LLMServiceExtensionMetadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / LLMServiceExtensionMetadata +```py +from agentstack_sdk.a2a.extensions.services import LLMServiceExtensionMetadata +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `llm_fulfillments` | `dict[str, LLMFulfillment]` | `{}` | diff --git a/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionParams.mdx b/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionParams.mdx new file mode 100644 index 0000000000..153ecb49cf --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionParams.mdx @@ -0,0 +1,22 @@ +--- +title: "LLMServiceExtensionParams" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / LLMServiceExtensionParams +```py +from agentstack_sdk.a2a.extensions.services import LLMServiceExtensionParams +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `llm_demands` | `dict[str, LLMDemand]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionServer.mdx new file mode 100644 index 0000000000..035abdec2f --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionServer.mdx @@ -0,0 +1,32 @@ +--- +title: "LLMServiceExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / LLMServiceExtensionServer +```py +from agentstack_sdk.a2a.extensions.services import LLMServiceExtensionServer +``` +**Bases:** `BaseExtensionServer[LLMServiceExtensionSpec, LLMServiceExtensionMetadata]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | +| `run_context` | `RunContext` | โ€” | +| `request_context` | `RequestContext` | โ€” | + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionSpec.mdx new file mode 100644 index 0000000000..5889b7c5bd --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/LLMServiceExtensionSpec.mdx @@ -0,0 +1,41 @@ +--- +title: "LLMServiceExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / LLMServiceExtensionSpec +```py +from agentstack_sdk.a2a.extensions.services import LLMServiceExtensionSpec +``` +**Bases:** `BaseExtensionSpec[LLMServiceExtensionParams]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `name` | `str \| None` | `None` | +| `description` | `str \| None` | `None` | +| `suggested` | `tuple[str, ...]` | `()` | + +**Returns:** `Self` + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/MCPDemand.mdx b/docs/development/reference/python-sdk/a2a-services/MCPDemand.mdx new file mode 100644 index 0000000000..eb7155e9e4 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/MCPDemand.mdx @@ -0,0 +1,24 @@ +--- +title: "MCPDemand" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / MCPDemand +```py +from agentstack_sdk.a2a.extensions.services import MCPDemand +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `description` | `str \| None` | `None` | +| `suggested` | `tuple[str, ...]` | `()` | +| `allowed_transports` | `list[_TRANSPORT_TYPES]` | `pydantic.Field(default_factory=(lambda: ...` | diff --git a/docs/development/reference/python-sdk/a2a-services/MCPFulfillment.mdx b/docs/development/reference/python-sdk/a2a-services/MCPFulfillment.mdx new file mode 100644 index 0000000000..0cb4e0d819 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/MCPFulfillment.mdx @@ -0,0 +1,22 @@ +--- +title: "MCPFulfillment" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / MCPFulfillment +```py +from agentstack_sdk.a2a.extensions.services import MCPFulfillment +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `transport` | `MCPTransport` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionClient.mdx new file mode 100644 index 0000000000..1eb82b3d23 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionClient.mdx @@ -0,0 +1,33 @@ +--- +title: "MCPServiceExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / MCPServiceExtensionClient +```py +from agentstack_sdk.a2a.extensions.services import MCPServiceExtensionClient +``` +**Bases:** `BaseExtensionClient[MCPServiceExtensionSpec, NoneType]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `mcp_fulfillments` | `dict[str, MCPFulfillment]` | โ€” | + +**Returns:** `dict[str, Any]` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionMetadata.mdx b/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionMetadata.mdx new file mode 100644 index 0000000000..de64755694 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionMetadata.mdx @@ -0,0 +1,22 @@ +--- +title: "MCPServiceExtensionMetadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / MCPServiceExtensionMetadata +```py +from agentstack_sdk.a2a.extensions.services import MCPServiceExtensionMetadata +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `mcp_fulfillments` | `dict[str, MCPFulfillment]` | `{}` | diff --git a/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionParams.mdx b/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionParams.mdx new file mode 100644 index 0000000000..f713e78342 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionParams.mdx @@ -0,0 +1,22 @@ +--- +title: "MCPServiceExtensionParams" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / MCPServiceExtensionParams +```py +from agentstack_sdk.a2a.extensions.services import MCPServiceExtensionParams +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `mcp_demands` | `dict[str, MCPDemand]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionServer.mdx new file mode 100644 index 0000000000..d20249184f --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionServer.mdx @@ -0,0 +1,49 @@ +--- +title: "MCPServiceExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / MCPServiceExtensionServer +```py +from agentstack_sdk.a2a.extensions.services import MCPServiceExtensionServer +``` +**Bases:** `BaseExtensionServer[MCPServiceExtensionSpec, MCPServiceExtensionMetadata]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | +| `run_context` | `RunContext` | โ€” | +| `request_context` | `RequestContext` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | + +**Returns:** `MCPServiceExtensionMetadata | None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `demand` | `str` | `_DEFAULT_DEMAND_NAME` | + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionSpec.mdx new file mode 100644 index 0000000000..2070b68b95 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/MCPServiceExtensionSpec.mdx @@ -0,0 +1,42 @@ +--- +title: "MCPServiceExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / MCPServiceExtensionSpec +```py +from agentstack_sdk.a2a.extensions.services import MCPServiceExtensionSpec +``` +**Bases:** `BaseExtensionSpec[MCPServiceExtensionParams]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `name` | `str` | `_DEFAULT_DEMAND_NAME` | +| `description` | `str \| None` | `None` | +| `suggested` | `tuple[str, ...]` | `()` | +| `allowed_transports` | `list[_TRANSPORT_TYPES] \| None` | `None` | + +**Returns:** `Self` + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/PlatformApiExtension.mdx b/docs/development/reference/python-sdk/a2a-services/PlatformApiExtension.mdx new file mode 100644 index 0000000000..0493cfe339 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/PlatformApiExtension.mdx @@ -0,0 +1,17 @@ +--- +title: "PlatformApiExtension" +description: "Request authentication token and url to be able to access the agentstack API" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / PlatformApiExtension +```py +from agentstack_sdk.a2a.extensions.services import PlatformApiExtension +``` +**Bases:** `BaseModel` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionClient.mdx new file mode 100644 index 0000000000..20ff33ba74 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionClient.mdx @@ -0,0 +1,35 @@ +--- +title: "PlatformApiExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / PlatformApiExtensionClient +```py +from agentstack_sdk.a2a.extensions.services import PlatformApiExtensionClient +``` +**Bases:** `BaseExtensionClient[PlatformApiExtensionSpec, NoneType]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `auth_token` | `Secret[str] \| str` | โ€” | +| `expires_at` | `AwareDatetime \| None` | `None` | +| `base_url` | `HttpUrl \| None` | `None` | + +**Returns:** `dict[str, dict[str, str]]` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionMetadata.mdx b/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionMetadata.mdx new file mode 100644 index 0000000000..64e4b5c31a --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionMetadata.mdx @@ -0,0 +1,24 @@ +--- +title: "PlatformApiExtensionMetadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / PlatformApiExtensionMetadata +```py +from agentstack_sdk.a2a.extensions.services import PlatformApiExtensionMetadata +``` +**Bases:** `SecureBaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `base_url` | `HttpUrl \| None` | `None` | +| `auth_token` | `SecretStr \| None` | `None` | +| `expires_at` | `AwareDatetime \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionParams.mdx b/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionParams.mdx new file mode 100644 index 0000000000..6b3bbc0938 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionParams.mdx @@ -0,0 +1,22 @@ +--- +title: "PlatformApiExtensionParams" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / PlatformApiExtensionParams +```py +from agentstack_sdk.a2a.extensions.services import PlatformApiExtensionParams +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `auto_use` | `bool` | `True` | diff --git a/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionServer.mdx new file mode 100644 index 0000000000..53100a48f9 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionServer.mdx @@ -0,0 +1,51 @@ +--- +title: "PlatformApiExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / PlatformApiExtensionServer +```py +from agentstack_sdk.a2a.extensions.services import PlatformApiExtensionServer +``` +**Bases:** `BaseExtensionServer[PlatformApiExtensionSpec, PlatformApiExtensionMetadata]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `context_id` | `str \| None` | `None` | + +## Methods + + + + + + +Called when entering the agent context after the first message was parsed (__call__ was already called) +**Returns:** `AsyncIterator[None]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | +| `run_context` | `RunContext` | โ€” | +| `request_context` | `RequestContext` | โ€” | + + +**Returns:** `AsyncIterator[PlatformClient]` + + + +**Returns:** `BearerAuth` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionSpec.mdx new file mode 100644 index 0000000000..5b6e807fa2 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/PlatformApiExtensionSpec.mdx @@ -0,0 +1,39 @@ +--- +title: "PlatformApiExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / PlatformApiExtensionSpec +```py +from agentstack_sdk.a2a.extensions.services import PlatformApiExtensionSpec +``` +**Bases:** `BaseExtensionSpec[PlatformApiExtensionParams]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `params` | `PlatformApiExtensionParams \| None` | `None` | + +**Returns:** `None` + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-services/StdioTransport.mdx b/docs/development/reference/python-sdk/a2a-services/StdioTransport.mdx new file mode 100644 index 0000000000..f4de040788 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/StdioTransport.mdx @@ -0,0 +1,25 @@ +--- +title: "StdioTransport" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / StdioTransport +```py +from agentstack_sdk.a2a.extensions.services import StdioTransport +``` +**Bases:** `SecureBaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['stdio']` | `'stdio'` | +| `command` | `str` | โ€” | +| `args` | `list[str]` | โ€” | +| `env` | `dict[str, str] \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-services/StreamableHTTPTransport.mdx b/docs/development/reference/python-sdk/a2a-services/StreamableHTTPTransport.mdx new file mode 100644 index 0000000000..83f7db68ec --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-services/StreamableHTTPTransport.mdx @@ -0,0 +1,24 @@ +--- +title: "StreamableHTTPTransport" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Service Extensions](/development/reference/python-sdk/a2a-services) / StreamableHTTPTransport +```py +from agentstack_sdk.a2a.extensions.services import StreamableHTTPTransport +``` +**Bases:** `SecureBaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['streamable_http']` | `'streamable_http'` | +| `url` | `AnyUrl` | โ€” | +| `headers` | `dict[str, str] \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-tools.mdx b/docs/development/reference/python-sdk/a2a-tools.mdx new file mode 100644 index 0000000000..5427cbe178 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-tools.mdx @@ -0,0 +1,40 @@ +--- +title: "Tool Extensions" +description: "Tool call approval extensions" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / Tool Extensions + +```py +from agentstack_sdk.a2a.extensions.tools import ToolCallExtensionClient, ToolCallExtensionMetadata, ToolCallExtensionParams # ... +``` +--- +### Classes + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionClient.mdx new file mode 100644 index 0000000000..899116879e --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionClient.mdx @@ -0,0 +1,42 @@ +--- +title: "ToolCallExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Tool Extensions](/development/reference/python-sdk/a2a-tools) / ToolCallExtensionClient +```py +from agentstack_sdk.a2a.extensions.tools import ToolCallExtensionClient +``` +**Bases:** `BaseExtensionClient[ToolCallExtensionSpec, NoneType]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `response` | `ToolCallResponse` | โ€” | +| `task_id` | `str \| None` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `Message` | โ€” | + + +**Returns:** `dict[str, Any]` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionMetadata.mdx b/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionMetadata.mdx new file mode 100644 index 0000000000..72734e1d71 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionMetadata.mdx @@ -0,0 +1,17 @@ +--- +title: "ToolCallExtensionMetadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Tool Extensions](/development/reference/python-sdk/a2a-tools) / ToolCallExtensionMetadata +```py +from agentstack_sdk.a2a.extensions.tools import ToolCallExtensionMetadata +``` +**Bases:** `BaseModel` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionParams.mdx b/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionParams.mdx new file mode 100644 index 0000000000..a08043b005 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionParams.mdx @@ -0,0 +1,17 @@ +--- +title: "ToolCallExtensionParams" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Tool Extensions](/development/reference/python-sdk/a2a-tools) / ToolCallExtensionParams +```py +from agentstack_sdk.a2a.extensions.tools import ToolCallExtensionParams +``` +**Bases:** `BaseModel` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionServer.mdx new file mode 100644 index 0000000000..bf08fa8106 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionServer.mdx @@ -0,0 +1,48 @@ +--- +title: "ToolCallExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Tool Extensions](/development/reference/python-sdk/a2a-tools) / ToolCallExtensionServer +```py +from agentstack_sdk.a2a.extensions.tools import ToolCallExtensionServer +``` +**Bases:** `BaseExtensionServer[ToolCallExtensionSpec, ToolCallExtensionMetadata]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `request` | `ToolCallRequest` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `Message` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `request` | `ToolCallRequest` | โ€” | +| `context` | `RunContext` | โ€” | + +**Returns:** `ToolCallResponse` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionSpec.mdx new file mode 100644 index 0000000000..a74df46be0 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-tools/ToolCallExtensionSpec.mdx @@ -0,0 +1,22 @@ +--- +title: "ToolCallExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Tool Extensions](/development/reference/python-sdk/a2a-tools) / ToolCallExtensionSpec +```py +from agentstack_sdk.a2a.extensions.tools import ToolCallExtensionSpec +``` +**Bases:** `BaseExtensionSpec[ToolCallExtensionParams]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | diff --git a/docs/development/reference/python-sdk/a2a-tools/ToolCallRejectionError.mdx b/docs/development/reference/python-sdk/a2a-tools/ToolCallRejectionError.mdx new file mode 100644 index 0000000000..07f91d6ec1 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-tools/ToolCallRejectionError.mdx @@ -0,0 +1,17 @@ +--- +title: "ToolCallRejectionError" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Tool Extensions](/development/reference/python-sdk/a2a-tools) / ToolCallRejectionError +```py +from agentstack_sdk.a2a.extensions.tools import ToolCallRejectionError +``` +**Bases:** `RuntimeError` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-tools/ToolCallRequest.mdx b/docs/development/reference/python-sdk/a2a-tools/ToolCallRequest.mdx new file mode 100644 index 0000000000..338fa6f3e2 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-tools/ToolCallRequest.mdx @@ -0,0 +1,45 @@ +--- +title: "ToolCallRequest" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Tool Extensions](/development/reference/python-sdk/a2a-tools) / ToolCallRequest +```py +from agentstack_sdk.a2a.extensions.tools import ToolCallRequest +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `name` | `str` | `Field(description='The programmatic name...` | +| `title` | `str \| None` | `Field(None, description='A human-readabl...` | +| `description` | `str \| None` | `Field(None, description='A human-readabl...` | +| `input` | `dict[str, Any] \| None` | `Field(description='The input for the too...` | +| `server` | `ToolCallServer \| None` | `Field(None, description='The server exec...` | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `tool` | `Tool` | โ€” | +| `input` | `dict[str, Any] \| None` | โ€” | +| `server` | `Implementation \| None` | `None` | + +**Returns:** `'ToolCallRequest'` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-tools/ToolCallResponse.mdx b/docs/development/reference/python-sdk/a2a-tools/ToolCallResponse.mdx new file mode 100644 index 0000000000..19944e458a --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-tools/ToolCallResponse.mdx @@ -0,0 +1,22 @@ +--- +title: "ToolCallResponse" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Tool Extensions](/development/reference/python-sdk/a2a-tools) / ToolCallResponse +```py +from agentstack_sdk.a2a.extensions.tools import ToolCallResponse +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `action` | `Literal['accept', 'reject']` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-tools/ToolCallServer.mdx b/docs/development/reference/python-sdk/a2a-tools/ToolCallServer.mdx new file mode 100644 index 0000000000..87c7841103 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-tools/ToolCallServer.mdx @@ -0,0 +1,24 @@ +--- +title: "ToolCallServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [Tool Extensions](/development/reference/python-sdk/a2a-tools) / ToolCallServer +```py +from agentstack_sdk.a2a.extensions.tools import ToolCallServer +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `name` | `str` | `Field(description='The programmatic name...` | +| `title` | `str \| None` | `Field(description='A human-readable titl...` | +| `version` | `str` | `Field(description='The version of the se...` | diff --git a/docs/development/reference/python-sdk/a2a-types/AgentArtifact.mdx b/docs/development/reference/python-sdk/a2a-types/AgentArtifact.mdx new file mode 100644 index 0000000000..39ebc0b56b --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-types/AgentArtifact.mdx @@ -0,0 +1,31 @@ +--- +title: "AgentArtifact" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Types](/development/reference/python-sdk/a2a-types) / AgentArtifact +```py +from agentstack_sdk.a2a.types import AgentArtifact +``` +**Bases:** `Artifact` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `artifact_id` | `str` | `Field(default_factory=(lambda: str(uuid....` | +| `parts` | `list[Part \| TextPart \| FilePart \| DataPart]` | โ€” | + +## Methods + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-types/AgentMessage.mdx b/docs/development/reference/python-sdk/a2a-types/AgentMessage.mdx new file mode 100644 index 0000000000..3b7a53439c --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-types/AgentMessage.mdx @@ -0,0 +1,33 @@ +--- +title: "AgentMessage" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Types](/development/reference/python-sdk/a2a-types) / AgentMessage +```py +from agentstack_sdk.a2a.types import AgentMessage +``` +**Bases:** `Message` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `message_id` | `str` | `Field(default_factory=(lambda: str(uuid....` | +| `role` | `Literal[Role.agent]` | `Role.agent` | +| `text` | `str \| None` | `Field(default=None, exclude=True)` | +| `parts` | `list[Part \| TextPart \| FilePart \| DataPart]` | `Field(default_factory=list)` | + +## Methods + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-types/ArtifactChunk.mdx b/docs/development/reference/python-sdk/a2a-types/ArtifactChunk.mdx new file mode 100644 index 0000000000..dc6d3ce191 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-types/ArtifactChunk.mdx @@ -0,0 +1,31 @@ +--- +title: "ArtifactChunk" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Types](/development/reference/python-sdk/a2a-types) / ArtifactChunk +```py +from agentstack_sdk.a2a.types import ArtifactChunk +``` +**Bases:** `Artifact` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `last_chunk` | `bool` | `False` | +| `parts` | `list[Part \| TextPart \| FilePart \| DataPart]` | โ€” | + +## Methods + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-types/AuthRequired.mdx b/docs/development/reference/python-sdk/a2a-types/AuthRequired.mdx new file mode 100644 index 0000000000..2a5b7e0019 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-types/AuthRequired.mdx @@ -0,0 +1,22 @@ +--- +title: "AuthRequired" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Types](/development/reference/python-sdk/a2a-types) / AuthRequired +```py +from agentstack_sdk.a2a.types import AuthRequired +``` +**Bases:** `InputRequired` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `state` | `Literal[TaskState.auth_required]` | `TaskState.auth_required` | diff --git a/docs/development/reference/python-sdk/a2a-types/InputRequired.mdx b/docs/development/reference/python-sdk/a2a-types/InputRequired.mdx new file mode 100644 index 0000000000..b0a4aca76c --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-types/InputRequired.mdx @@ -0,0 +1,33 @@ +--- +title: "InputRequired" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Types](/development/reference/python-sdk/a2a-types) / InputRequired +```py +from agentstack_sdk.a2a.types import InputRequired +``` +**Bases:** `TaskStatus` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `message` | `Message \| None` | `None` | +| `state` | `Literal[TaskState.input_required]` | `TaskState.input_required` | +| `text` | `str \| None` | `Field(default=None, exclude=True)` | +| `parts` | `list[Part \| TextPart \| DataPart \| FilePart]` | `Field(exclude=True, default_factory=list...` | + +## Methods + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-types/Metadata.mdx b/docs/development/reference/python-sdk/a2a-types/Metadata.mdx new file mode 100644 index 0000000000..93c5dacdf9 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-types/Metadata.mdx @@ -0,0 +1,17 @@ +--- +title: "Metadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Types](/development/reference/python-sdk/a2a-types) / Metadata +```py +from agentstack_sdk.a2a.types import Metadata +``` +**Bases:** `dict[str, JsonValue]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui.mdx b/docs/development/reference/python-sdk/a2a-ui.mdx new file mode 100644 index 0000000000..4352d6b298 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui.mdx @@ -0,0 +1,114 @@ +--- +title: "UI Extensions" +description: "Rich UI component extensions" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / UI Extensions + +```py +from agentstack_sdk.a2a.extensions.ui import AgentDetail, AgentDetailContributor, AgentDetailExtensionClient # ... +``` +--- +### Classes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +### Constants & Variables + +| Name | Kind | Type / Definition | +|------|------|------| +| `DEFAULT_ERROR_EXTENSION` | *constant* | `Final` | +| `SettingsFieldValue` | *union_alias* | `CheckboxGroupFieldValue \| SingleSelectFieldValue` | diff --git a/docs/development/reference/python-sdk/a2a-ui/AgentDetail.mdx b/docs/development/reference/python-sdk/a2a-ui/AgentDetail.mdx new file mode 100644 index 0000000000..11d12482b7 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/AgentDetail.mdx @@ -0,0 +1,34 @@ +--- +title: "AgentDetail" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / AgentDetail +```py +from agentstack_sdk.a2a.extensions.ui import AgentDetail +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `interaction_mode` | `str \| None` | `pydantic.Field('multi-turn', examples=['...` | +| `user_greeting` | `str \| None` | `None` | +| `input_placeholder` | `str \| None` | `None` | +| `tools` | `list[AgentDetailTool] \| None` | `None` | +| `framework` | `str \| None` | `None` | +| `license` | `str \| None` | `None` | +| `programming_language` | `str \| None` | `'Python'` | +| `homepage_url` | `str \| None` | `None` | +| `source_code_url` | `str \| None` | `None` | +| `container_image_url` | `str \| None` | `None` | +| `author` | `AgentDetailContributor \| None` | `None` | +| `contributors` | `list[AgentDetailContributor] \| None` | `None` | +| `variables` | `list[EnvVar] \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-ui/AgentDetailContributor.mdx b/docs/development/reference/python-sdk/a2a-ui/AgentDetailContributor.mdx new file mode 100644 index 0000000000..8af6795f85 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/AgentDetailContributor.mdx @@ -0,0 +1,24 @@ +--- +title: "AgentDetailContributor" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / AgentDetailContributor +```py +from agentstack_sdk.a2a.extensions.ui import AgentDetailContributor +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `name` | `str` | โ€” | +| `email` | `str \| None` | `None` | +| `url` | `str \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-ui/AgentDetailExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-ui/AgentDetailExtensionClient.mdx new file mode 100644 index 0000000000..078040e78f --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/AgentDetailExtensionClient.mdx @@ -0,0 +1,17 @@ +--- +title: "AgentDetailExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / AgentDetailExtensionClient +```py +from agentstack_sdk.a2a.extensions.ui import AgentDetailExtensionClient +``` +**Bases:** `BaseExtensionClient[AgentDetailExtensionSpec, AgentDetail]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui/AgentDetailExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-ui/AgentDetailExtensionServer.mdx new file mode 100644 index 0000000000..00c6e382cc --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/AgentDetailExtensionServer.mdx @@ -0,0 +1,17 @@ +--- +title: "AgentDetailExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / AgentDetailExtensionServer +```py +from agentstack_sdk.a2a.extensions.ui import AgentDetailExtensionServer +``` +**Bases:** `BaseExtensionServer[AgentDetailExtensionSpec, NoneType]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui/AgentDetailExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-ui/AgentDetailExtensionSpec.mdx new file mode 100644 index 0000000000..f215f38564 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/AgentDetailExtensionSpec.mdx @@ -0,0 +1,22 @@ +--- +title: "AgentDetailExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / AgentDetailExtensionSpec +```py +from agentstack_sdk.a2a.extensions.ui import AgentDetailExtensionSpec +``` +**Bases:** `BaseExtensionSpec[AgentDetail]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | diff --git a/docs/development/reference/python-sdk/a2a-ui/AgentDetailTool.mdx b/docs/development/reference/python-sdk/a2a-ui/AgentDetailTool.mdx new file mode 100644 index 0000000000..8893984939 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/AgentDetailTool.mdx @@ -0,0 +1,23 @@ +--- +title: "AgentDetailTool" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / AgentDetailTool +```py +from agentstack_sdk.a2a.extensions.ui import AgentDetailTool +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `name` | `str` | โ€” | +| `description` | `str` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-ui/AgentRunSettings.mdx b/docs/development/reference/python-sdk/a2a-ui/AgentRunSettings.mdx new file mode 100644 index 0000000000..6a2f924dfb --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/AgentRunSettings.mdx @@ -0,0 +1,22 @@ +--- +title: "AgentRunSettings" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / AgentRunSettings +```py +from agentstack_sdk.a2a.extensions.ui import AgentRunSettings +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `values` | `dict[str, SettingsFieldValue]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-ui/CanvasEditRequest.mdx b/docs/development/reference/python-sdk/a2a-ui/CanvasEditRequest.mdx new file mode 100644 index 0000000000..c3f2c8c67f --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/CanvasEditRequest.mdx @@ -0,0 +1,25 @@ +--- +title: "CanvasEditRequest" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / CanvasEditRequest +```py +from agentstack_sdk.a2a.extensions.ui import CanvasEditRequest +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `start_index` | `int` | โ€” | +| `end_index` | `int` | โ€” | +| `description` | `str` | โ€” | +| `artifact` | `Artifact` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-ui/CanvasEditRequestMetadata.mdx b/docs/development/reference/python-sdk/a2a-ui/CanvasEditRequestMetadata.mdx new file mode 100644 index 0000000000..9c330e0585 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/CanvasEditRequestMetadata.mdx @@ -0,0 +1,25 @@ +--- +title: "CanvasEditRequestMetadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / CanvasEditRequestMetadata +```py +from agentstack_sdk.a2a.extensions.ui import CanvasEditRequestMetadata +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `start_index` | `int` | โ€” | +| `end_index` | `int` | โ€” | +| `description` | `str` | โ€” | +| `artifact_id` | `str` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-ui/CanvasExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-ui/CanvasExtensionServer.mdx new file mode 100644 index 0000000000..20b534a8e5 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/CanvasExtensionServer.mdx @@ -0,0 +1,42 @@ +--- +title: "CanvasExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / CanvasExtensionServer +```py +from agentstack_sdk.a2a.extensions.ui import CanvasExtensionServer +``` +**Bases:** `BaseExtensionServer[CanvasExtensionSpec, CanvasEditRequestMetadata]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | +| `run_context` | `RunContext` | โ€” | +| `request_context` | `RequestContext` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | + +**Returns:** `CanvasEditRequest | None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui/CanvasExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-ui/CanvasExtensionSpec.mdx new file mode 100644 index 0000000000..0ac3f8a21b --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/CanvasExtensionSpec.mdx @@ -0,0 +1,22 @@ +--- +title: "CanvasExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / CanvasExtensionSpec +```py +from agentstack_sdk.a2a.extensions.ui import CanvasExtensionSpec +``` +**Bases:** `NoParamsBaseExtensionSpec` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | diff --git a/docs/development/reference/python-sdk/a2a-ui/CheckboxField.mdx b/docs/development/reference/python-sdk/a2a-ui/CheckboxField.mdx new file mode 100644 index 0000000000..565603bf2a --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/CheckboxField.mdx @@ -0,0 +1,24 @@ +--- +title: "CheckboxField" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / CheckboxField +```py +from agentstack_sdk.a2a.extensions.ui import CheckboxField +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `label` | `str` | โ€” | +| `default_value` | `bool` | `False` | diff --git a/docs/development/reference/python-sdk/a2a-ui/CheckboxFieldValue.mdx b/docs/development/reference/python-sdk/a2a-ui/CheckboxFieldValue.mdx new file mode 100644 index 0000000000..2b27bd2e5f --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/CheckboxFieldValue.mdx @@ -0,0 +1,22 @@ +--- +title: "CheckboxFieldValue" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / CheckboxFieldValue +```py +from agentstack_sdk.a2a.extensions.ui import CheckboxFieldValue +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `value` | `bool \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-ui/CheckboxGroupField.mdx b/docs/development/reference/python-sdk/a2a-ui/CheckboxGroupField.mdx new file mode 100644 index 0000000000..d0c22536b1 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/CheckboxGroupField.mdx @@ -0,0 +1,24 @@ +--- +title: "CheckboxGroupField" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / CheckboxGroupField +```py +from agentstack_sdk.a2a.extensions.ui import CheckboxGroupField +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `type` | `Literal['checkbox_group']` | `'checkbox_group'` | +| `fields` | `list[CheckboxField]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-ui/CheckboxGroupFieldValue.mdx b/docs/development/reference/python-sdk/a2a-ui/CheckboxGroupFieldValue.mdx new file mode 100644 index 0000000000..510c378951 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/CheckboxGroupFieldValue.mdx @@ -0,0 +1,23 @@ +--- +title: "CheckboxGroupFieldValue" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / CheckboxGroupFieldValue +```py +from agentstack_sdk.a2a.extensions.ui import CheckboxGroupFieldValue +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['checkbox_group']` | `'checkbox_group'` | +| `values` | `dict[str, CheckboxFieldValue]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-ui/Citation.mdx b/docs/development/reference/python-sdk/a2a-ui/Citation.mdx new file mode 100644 index 0000000000..2b6a019f5a --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/Citation.mdx @@ -0,0 +1,47 @@ +--- +title: "Citation" +description: "Represents an inline citation, providing info about information source. This" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / Citation +```py +from agentstack_sdk.a2a.extensions.ui import Citation +``` +**Bases:** `BaseModel` +is supposed to be rendered as an inline icon, optionally marking a text +range it belongs to. + +If Citation is included together with content in the message part, +the citation belongs to that content and renders at the Part position. +This way may be used for non-text content, like images and files. + +Alternatively, `start_index` and `end_index` may define a text range, +counting characters in the current Message across all Parts containing plain +text, where the citation will be rendered. If one of `start_index` and +`end_index` is missing or their values are equal, the citation renders only +as an inline icon at that position. + +If both `start_index` and `end_index` are not present and Part has empty +content, the citation renders as inline icon only at the Part position. + +Properties: +- url: URL of the source document. +- title: Title of the source document. +- description: Accompanying text, which may be a general description of the + source document, or a specific snippet. +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `start_index` | `int \| None` | `None` | +| `end_index` | `int \| None` | `None` | +| `url` | `str \| None` | `None` | +| `title` | `str \| None` | `None` | +| `description` | `str \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-ui/CitationExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-ui/CitationExtensionClient.mdx new file mode 100644 index 0000000000..ec737a1bff --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/CitationExtensionClient.mdx @@ -0,0 +1,17 @@ +--- +title: "CitationExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / CitationExtensionClient +```py +from agentstack_sdk.a2a.extensions.ui import CitationExtensionClient +``` +**Bases:** `BaseExtensionClient[CitationExtensionSpec, CitationMetadata]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui/CitationExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-ui/CitationExtensionServer.mdx new file mode 100644 index 0000000000..fa0748a135 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/CitationExtensionServer.mdx @@ -0,0 +1,45 @@ +--- +title: "CitationExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / CitationExtensionServer +```py +from agentstack_sdk.a2a.extensions.ui import CitationExtensionServer +``` +**Bases:** `BaseExtensionServer[CitationExtensionSpec, NoneType]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `citations` | `list[Citation]` | โ€” | + +**Returns:** `Metadata` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `text` | `str \| None` | `None` | +| `parts` | `list[Part \| TextPart \| FilePart \| DataPart] \| None` | `None` | +| `citations` | `list[Citation]` | โ€” | + +**Returns:** `AgentMessage` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui/CitationExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-ui/CitationExtensionSpec.mdx new file mode 100644 index 0000000000..c848a78a7c --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/CitationExtensionSpec.mdx @@ -0,0 +1,22 @@ +--- +title: "CitationExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / CitationExtensionSpec +```py +from agentstack_sdk.a2a.extensions.ui import CitationExtensionSpec +``` +**Bases:** `NoParamsBaseExtensionSpec` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | diff --git a/docs/development/reference/python-sdk/a2a-ui/CitationMetadata.mdx b/docs/development/reference/python-sdk/a2a-ui/CitationMetadata.mdx new file mode 100644 index 0000000000..ed9ca50db6 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/CitationMetadata.mdx @@ -0,0 +1,22 @@ +--- +title: "CitationMetadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / CitationMetadata +```py +from agentstack_sdk.a2a.extensions.ui import CitationMetadata +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `citations` | `list[Citation]` | `pydantic.Field(default_factory=list)` | diff --git a/docs/development/reference/python-sdk/a2a-ui/EnvVar.mdx b/docs/development/reference/python-sdk/a2a-ui/EnvVar.mdx new file mode 100644 index 0000000000..401d12c523 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/EnvVar.mdx @@ -0,0 +1,24 @@ +--- +title: "EnvVar" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / EnvVar +```py +from agentstack_sdk.a2a.extensions.ui import EnvVar +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `name` | `str` | โ€” | +| `description` | `str \| None` | `None` | +| `required` | `bool` | `False` | diff --git a/docs/development/reference/python-sdk/a2a-ui/Error.mdx b/docs/development/reference/python-sdk/a2a-ui/Error.mdx new file mode 100644 index 0000000000..6dc3a9b290 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/Error.mdx @@ -0,0 +1,32 @@ +--- +title: "Error" +description: "Represents error information for displaying exceptions in the UI" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / Error +```py +from agentstack_sdk.a2a.extensions.ui import Error +``` +**Bases:** `BaseModel` +This extension helps display errors in a user-friendly way with: +- A clear error title (exception type) +- A descriptive error message + +Visually, this may appear as an error card in the UI. + +Properties: +- title: Title of the error (typically the exception class name). +- message: The error message describing what went wrong. +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `title` | `str` | โ€” | +| `message` | `str` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-ui/ErrorContext.mdx b/docs/development/reference/python-sdk/a2a-ui/ErrorContext.mdx new file mode 100644 index 0000000000..192fd4e705 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/ErrorContext.mdx @@ -0,0 +1,23 @@ +--- +title: "ErrorContext" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / ErrorContext +```py +from agentstack_sdk.a2a.extensions.ui import ErrorContext +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `server` | `ErrorExtensionServer` | `pydantic.Field(default=DEFAULT_ERROR_EXT...` | +| `context` | `JsonValue` | `pydantic.Field(default_factory=dict)` | diff --git a/docs/development/reference/python-sdk/a2a-ui/ErrorExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-ui/ErrorExtensionClient.mdx new file mode 100644 index 0000000000..7e287e29c1 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/ErrorExtensionClient.mdx @@ -0,0 +1,17 @@ +--- +title: "ErrorExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / ErrorExtensionClient +```py +from agentstack_sdk.a2a.extensions.ui import ErrorExtensionClient +``` +**Bases:** `BaseExtensionClient[ErrorExtensionSpec, ErrorMetadata]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui/ErrorExtensionParams.mdx b/docs/development/reference/python-sdk/a2a-ui/ErrorExtensionParams.mdx new file mode 100644 index 0000000000..99d557301b --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/ErrorExtensionParams.mdx @@ -0,0 +1,24 @@ +--- +title: "ErrorExtensionParams" +description: "Configuration parameters for the error extension" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / ErrorExtensionParams +```py +from agentstack_sdk.a2a.extensions.ui import ErrorExtensionParams +``` +**Bases:** `BaseModel` +Properties: +- include_stacktrace: Whether to include stack traces in error messages (default: False). +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `include_stacktrace` | `bool` | `False` | diff --git a/docs/development/reference/python-sdk/a2a-ui/ErrorExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-ui/ErrorExtensionServer.mdx new file mode 100644 index 0000000000..f0bfea9b9e --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/ErrorExtensionServer.mdx @@ -0,0 +1,79 @@ +--- +title: "ErrorExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / ErrorExtensionServer +```py +from agentstack_sdk.a2a.extensions.ui import ErrorExtensionServer +``` +**Bases:** `BaseExtensionServer[ErrorExtensionSpec, NoneType]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `context` | `JsonValue` | โ€” | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `args` | `Any` | `()` | +| `kwargs` | `Any` | `{}` | + +**Returns:** `None` + + + + + +Set up request-scoped error context using ContextVar. +**Returns:** `AsyncIterator[None]` + + + +Create metadata for an error. + +Args: + error: The exception to convert to metadata + +Returns: + Metadata dictionary with error information +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `error` | `BaseException` | โ€” | + +**Returns:** `Metadata` + + + +Create an AgentMessage with error metadata and serialized text representation. + +Args: + error: The exception to include in the message + +Returns: + AgentMessage with error metadata and markdown-formatted text +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `error` | `BaseException` | โ€” | + +**Returns:** `AgentMessage` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui/ErrorExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-ui/ErrorExtensionSpec.mdx new file mode 100644 index 0000000000..3b91ddf032 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/ErrorExtensionSpec.mdx @@ -0,0 +1,22 @@ +--- +title: "ErrorExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / ErrorExtensionSpec +```py +from agentstack_sdk.a2a.extensions.ui import ErrorExtensionSpec +``` +**Bases:** `BaseExtensionSpec[ErrorExtensionParams]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | diff --git a/docs/development/reference/python-sdk/a2a-ui/ErrorGroup.mdx b/docs/development/reference/python-sdk/a2a-ui/ErrorGroup.mdx new file mode 100644 index 0000000000..8ed225ef61 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/ErrorGroup.mdx @@ -0,0 +1,26 @@ +--- +title: "ErrorGroup" +description: "Represents a group of errors" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / ErrorGroup +```py +from agentstack_sdk.a2a.extensions.ui import ErrorGroup +``` +**Bases:** `BaseModel` +Properties: +- message: A message describing the group of errors. +- errors: A list of error objects. +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `message` | `str` | โ€” | +| `errors` | `list[Error]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-ui/ErrorMetadata.mdx b/docs/development/reference/python-sdk/a2a-ui/ErrorMetadata.mdx new file mode 100644 index 0000000000..1fbe8ebe04 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/ErrorMetadata.mdx @@ -0,0 +1,28 @@ +--- +title: "ErrorMetadata" +description: "Metadata containing an error (or group of errors) and an optional stack trace" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / ErrorMetadata +```py +from agentstack_sdk.a2a.extensions.ui import ErrorMetadata +``` +**Bases:** `BaseModel` +Properties: +- error: The error object or group of errors. +- stack_trace: Optional formatted stack trace for debugging. +- context: Optional context dictionary. +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `error` | `Error \| ErrorGroup` | โ€” | +| `stack_trace` | `str \| None` | `None` | +| `context` | `JsonValue \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-ui/FormRequestExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-ui/FormRequestExtensionClient.mdx new file mode 100644 index 0000000000..39cfc2fd64 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/FormRequestExtensionClient.mdx @@ -0,0 +1,17 @@ +--- +title: "FormRequestExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / FormRequestExtensionClient +```py +from agentstack_sdk.a2a.extensions.ui import FormRequestExtensionClient +``` +**Bases:** `BaseExtensionClient[FormRequestExtensionSpec, FormRender]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui/FormRequestExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-ui/FormRequestExtensionServer.mdx new file mode 100644 index 0000000000..70538617c8 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/FormRequestExtensionServer.mdx @@ -0,0 +1,54 @@ +--- +title: "FormRequestExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / FormRequestExtensionServer +```py +from agentstack_sdk.a2a.extensions.ui import FormRequestExtensionServer +``` +**Bases:** `BaseExtensionServer[FormRequestExtensionSpec, FormResponse]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | +| `run_context` | `RunContext` | โ€” | +| `request_context` | `RequestContext` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `form` | `FormRender` | โ€” | +| `model` | `type[T] \| None` | `None` | + +**Returns:** `T | FormResponse | None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `message` | `A2AMessage` | โ€” | +| `model` | `type[T] \| None` | `None` | + +**Returns:** `T | FormResponse | None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui/FormRequestExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-ui/FormRequestExtensionSpec.mdx new file mode 100644 index 0000000000..109463d3eb --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/FormRequestExtensionSpec.mdx @@ -0,0 +1,22 @@ +--- +title: "FormRequestExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / FormRequestExtensionSpec +```py +from agentstack_sdk.a2a.extensions.ui import FormRequestExtensionSpec +``` +**Bases:** `NoParamsBaseExtensionSpec` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | diff --git a/docs/development/reference/python-sdk/a2a-ui/OptionItem.mdx b/docs/development/reference/python-sdk/a2a-ui/OptionItem.mdx new file mode 100644 index 0000000000..e6df860ee2 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/OptionItem.mdx @@ -0,0 +1,23 @@ +--- +title: "OptionItem" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / OptionItem +```py +from agentstack_sdk.a2a.extensions.ui import OptionItem +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `label` | `str` | โ€” | +| `value` | `str` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-ui/SettingsExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-ui/SettingsExtensionClient.mdx new file mode 100644 index 0000000000..09aea922a3 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/SettingsExtensionClient.mdx @@ -0,0 +1,17 @@ +--- +title: "SettingsExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / SettingsExtensionClient +```py +from agentstack_sdk.a2a.extensions.ui import SettingsExtensionClient +``` +**Bases:** `BaseExtensionClient[SettingsExtensionSpec, SettingsRender]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui/SettingsExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-ui/SettingsExtensionServer.mdx new file mode 100644 index 0000000000..a6ff25c896 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/SettingsExtensionServer.mdx @@ -0,0 +1,27 @@ +--- +title: "SettingsExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / SettingsExtensionServer +```py +from agentstack_sdk.a2a.extensions.ui import SettingsExtensionServer +``` +**Bases:** `BaseExtensionServer[SettingsExtensionSpec, AgentRunSettings]` +## Methods + + + + + + +**Returns:** `AgentRunSettings` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui/SettingsExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-ui/SettingsExtensionSpec.mdx new file mode 100644 index 0000000000..bb9198d4d3 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/SettingsExtensionSpec.mdx @@ -0,0 +1,22 @@ +--- +title: "SettingsExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / SettingsExtensionSpec +```py +from agentstack_sdk.a2a.extensions.ui import SettingsExtensionSpec +``` +**Bases:** `BaseExtensionSpec[SettingsRender | None]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | diff --git a/docs/development/reference/python-sdk/a2a-ui/SettingsRender.mdx b/docs/development/reference/python-sdk/a2a-ui/SettingsRender.mdx new file mode 100644 index 0000000000..8e2c0b1dff --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/SettingsRender.mdx @@ -0,0 +1,22 @@ +--- +title: "SettingsRender" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / SettingsRender +```py +from agentstack_sdk.a2a.extensions.ui import SettingsRender +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `fields` | `list[Annotated[CheckboxGroupField \| SingleSelectField, Field(discriminator='type')]]` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-ui/SingleSelectField.mdx b/docs/development/reference/python-sdk/a2a-ui/SingleSelectField.mdx new file mode 100644 index 0000000000..a166d6e241 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/SingleSelectField.mdx @@ -0,0 +1,26 @@ +--- +title: "SingleSelectField" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / SingleSelectField +```py +from agentstack_sdk.a2a.extensions.ui import SingleSelectField +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['single_select']` | `'single_select'` | +| `id` | `str` | โ€” | +| `label` | `str` | โ€” | +| `options` | `list[OptionItem]` | โ€” | +| `default_value` | `str` | โ€” | diff --git a/docs/development/reference/python-sdk/a2a-ui/SingleSelectFieldValue.mdx b/docs/development/reference/python-sdk/a2a-ui/SingleSelectFieldValue.mdx new file mode 100644 index 0000000000..15f3a16c05 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/SingleSelectFieldValue.mdx @@ -0,0 +1,23 @@ +--- +title: "SingleSelectFieldValue" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / SingleSelectFieldValue +```py +from agentstack_sdk.a2a.extensions.ui import SingleSelectFieldValue +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['single_select']` | `'single_select'` | +| `value` | `str \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-ui/Trajectory.mdx b/docs/development/reference/python-sdk/a2a-ui/Trajectory.mdx new file mode 100644 index 0000000000..287ed9823f --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/Trajectory.mdx @@ -0,0 +1,39 @@ +--- +title: "Trajectory" +description: "Represents trajectory information for an agent's reasoning or tool execution" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / Trajectory +```py +from agentstack_sdk.a2a.extensions.ui import Trajectory +``` +**Bases:** `BaseModel` +steps. Helps track the agent's decision-making process and provides +transparency into how the agent arrived at its response. + +Trajectory can capture intermediate steps like: +- A reasoning step with a message +- A tool execution with tool name, input, and output + +This information can be used for debugging, audit trails, and providing +users with insight into the agent's thought process. + +Visually, this may appear as an accordion component in the UI. + +Properties: +- title: Title of the trajectory update. +- content: Markdown-formatted content of the trajectory update. +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `title` | `str \| None` | `None` | +| `content` | `str \| None` | `None` | +| `group_id` | `str \| None` | `None` | diff --git a/docs/development/reference/python-sdk/a2a-ui/TrajectoryExtensionClient.mdx b/docs/development/reference/python-sdk/a2a-ui/TrajectoryExtensionClient.mdx new file mode 100644 index 0000000000..2172bc53c2 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/TrajectoryExtensionClient.mdx @@ -0,0 +1,17 @@ +--- +title: "TrajectoryExtensionClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / TrajectoryExtensionClient +```py +from agentstack_sdk.a2a.extensions.ui import TrajectoryExtensionClient +``` +**Bases:** `BaseExtensionClient[TrajectoryExtensionSpec, Trajectory]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui/TrajectoryExtensionServer.mdx b/docs/development/reference/python-sdk/a2a-ui/TrajectoryExtensionServer.mdx new file mode 100644 index 0000000000..1fa94ff4d7 --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/TrajectoryExtensionServer.mdx @@ -0,0 +1,48 @@ +--- +title: "TrajectoryExtensionServer" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / TrajectoryExtensionServer +```py +from agentstack_sdk.a2a.extensions.ui import TrajectoryExtensionServer +``` +**Bases:** `BaseExtensionServer[TrajectoryExtensionSpec, NoneType]` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `title` | `str \| None` | `None` | +| `content` | `str \| None` | `None` | +| `group_id` | `str \| None` | `None` | + +**Returns:** `Metadata` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `text` | `str \| None` | `None` | +| `parts` | `list[Part \| TextPart \| FilePart \| DataPart] \| None` | `None` | +| `trajectory_title` | `str \| None` | `None` | +| `trajectory_content` | `str \| None` | `None` | + +**Returns:** `AgentMessage` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/a2a-ui/TrajectoryExtensionSpec.mdx b/docs/development/reference/python-sdk/a2a-ui/TrajectoryExtensionSpec.mdx new file mode 100644 index 0000000000..3e90f2291a --- /dev/null +++ b/docs/development/reference/python-sdk/a2a-ui/TrajectoryExtensionSpec.mdx @@ -0,0 +1,22 @@ +--- +title: "TrajectoryExtensionSpec" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [A2A Extensions](/development/reference/python-sdk/a2a) / [UI Extensions](/development/reference/python-sdk/a2a-ui) / TrajectoryExtensionSpec +```py +from agentstack_sdk.a2a.extensions.ui import TrajectoryExtensionSpec +``` +**Bases:** `NoParamsBaseExtensionSpec` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `URI` | `str` | `'https://a2a-extensions.agentstack.beeai...` | diff --git a/docs/development/reference/python-sdk/a2a.mdx b/docs/development/reference/python-sdk/a2a.mdx new file mode 100644 index 0000000000..b773cd27aa --- /dev/null +++ b/docs/development/reference/python-sdk/a2a.mdx @@ -0,0 +1,34 @@ +--- +title: "A2A Extensions" +description: "Extensions for the A2A protocol โ€” authentication, services, tools, UI, and interactions" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +## Submodules + + + + OAuth and secrets authentication + + + Shared base classes and form types + + + Human-in-the-loop interaction extensions + + + LLM, embedding, MCP, and platform services + + + Tool call approval extensions + + + Rich UI component extensions + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/overview.mdx b/docs/development/reference/python-sdk/overview.mdx new file mode 100644 index 0000000000..d9ba5a8176 --- /dev/null +++ b/docs/development/reference/python-sdk/overview.mdx @@ -0,0 +1,35 @@ +--- +title: "Python SDK Reference" +description: "Complete reference for the Agent Stack Python SDK (agentstack-sdk)" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} + +The Agent Stack Python SDK (`agentstack-sdk`) provides the tools to build, run, and integrate +A2A-compatible agents with the Agent Stack platform. + +Install with: + +```bash +pip install agentstack-sdk +``` + +## Modules + + + Core server for creating and running A2A-compatible agents + + Extensions for authentication, services, tools, UI, and interactions + + Clients for files, vector stores, contexts, providers, and more + + Core type definitions and base classes + + Utility helpers + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-common.mdx b/docs/development/reference/python-sdk/platform-common.mdx new file mode 100644 index 0000000000..e59fa6a9a5 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-common.mdx @@ -0,0 +1,30 @@ +--- +title: "Common" +description: "Shared types and utilities" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / Common + +```py +from agentstack_sdk.platform.common import GithubVersionType, PaginatedResult, ResolvedDockerImageID # ... +``` +--- +### Classes + + + + + + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-common/GithubVersionType.mdx b/docs/development/reference/python-sdk/platform-common/GithubVersionType.mdx new file mode 100644 index 0000000000..142a1c1d1c --- /dev/null +++ b/docs/development/reference/python-sdk/platform-common/GithubVersionType.mdx @@ -0,0 +1,23 @@ +--- +title: "GithubVersionType" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / [Common](/development/reference/python-sdk/platform-common) / GithubVersionType +```py +from agentstack_sdk.platform.common import GithubVersionType +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `HEAD` | โ€” | `'head'` | +| `TAG` | โ€” | `'tag'` | diff --git a/docs/development/reference/python-sdk/platform-common/PaginatedResult.mdx b/docs/development/reference/python-sdk/platform-common/PaginatedResult.mdx new file mode 100644 index 0000000000..2e6922e7dc --- /dev/null +++ b/docs/development/reference/python-sdk/platform-common/PaginatedResult.mdx @@ -0,0 +1,25 @@ +--- +title: "PaginatedResult" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / [Common](/development/reference/python-sdk/platform-common) / PaginatedResult +```py +from agentstack_sdk.platform.common import PaginatedResult +``` +**Bases:** `BaseModel , Generic[T]` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `items` | `list[T]` | โ€” | +| `total_count` | `int` | โ€” | +| `has_more` | `bool` | `False` | +| `next_page_token` | `str \| None` | `None` | diff --git a/docs/development/reference/python-sdk/platform-common/ResolvedDockerImageID.mdx b/docs/development/reference/python-sdk/platform-common/ResolvedDockerImageID.mdx new file mode 100644 index 0000000000..26b56ba198 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-common/ResolvedDockerImageID.mdx @@ -0,0 +1,25 @@ +--- +title: "ResolvedDockerImageID" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / [Common](/development/reference/python-sdk/platform-common) / ResolvedDockerImageID +```py +from agentstack_sdk.platform.common import ResolvedDockerImageID +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `registry` | `str` | โ€” | +| `repository` | `str` | โ€” | +| `tag` | `str` | โ€” | +| `digest` | `str` | โ€” | diff --git a/docs/development/reference/python-sdk/platform-common/ResolvedGithubUrl.mdx b/docs/development/reference/python-sdk/platform-common/ResolvedGithubUrl.mdx new file mode 100644 index 0000000000..efc4595a2b --- /dev/null +++ b/docs/development/reference/python-sdk/platform-common/ResolvedGithubUrl.mdx @@ -0,0 +1,28 @@ +--- +title: "ResolvedGithubUrl" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / [Common](/development/reference/python-sdk/platform-common) / ResolvedGithubUrl +```py +from agentstack_sdk.platform.common import ResolvedGithubUrl +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `host` | `str` | `'github.com'` | +| `org` | `str` | โ€” | +| `repo` | `str` | โ€” | +| `version` | `str` | โ€” | +| `version_type` | `GithubVersionType` | โ€” | +| `commit_hash` | `str` | โ€” | +| `path` | `str \| None` | `None` | diff --git a/docs/development/reference/python-sdk/platform-context.mdx b/docs/development/reference/python-sdk/platform-context.mdx new file mode 100644 index 0000000000..369353afea --- /dev/null +++ b/docs/development/reference/python-sdk/platform-context.mdx @@ -0,0 +1,32 @@ +--- +title: "Context" +description: "Context management" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / Context + +```py +from agentstack_sdk.platform.context import Context, ContextHistoryItem, ContextPermissions # ... +``` +--- +### Classes + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-context/Context.mdx b/docs/development/reference/python-sdk/platform-context/Context.mdx new file mode 100644 index 0000000000..50ae89bd11 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-context/Context.mdx @@ -0,0 +1,171 @@ +--- +title: "Context" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / [Context](/development/reference/python-sdk/platform-context) / Context +```py +from agentstack_sdk.platform.context import Context +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `created_at` | `AwareDatetime` | โ€” | +| `updated_at` | `AwareDatetime` | โ€” | +| `last_active_at` | `AwareDatetime` | โ€” | +| `created_by` | `str` | โ€” | +| `provider_id` | `str \| None` | `None` | +| `metadata` | `Metadata \| None` | `None` | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `metadata` | `Metadata \| None` | `None` | +| `provider_id` | `str \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Context'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | +| `page_token` | `str \| None` | `None` | +| `limit` | `int \| None` | `None` | +| `order` | `Literal['asc'] \| Literal['desc'] \| None` | `None` | +| `order_by` | `Literal['created_at'] \| Literal['updated_at'] \| None` | `None` | +| `include_empty` | `bool` | `True` | +| `provider_id` | `str \| None` | `None` | + +**Returns:** `PaginatedResult['Context']` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Context'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `metadata` | `Metadata \| None` | โ€” | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Context'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `metadata` | `MetadataPatch \| None` | โ€” | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Context'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `None` + + + +Generate token for agent authentication + +@param grant_global_permissions: Global permissions granted by the token. Must be subset of the users permissions +@param grant_context_permissions: Context permissions granted by the token. Must be subset of the users permissions +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `providers` | `builtins.list[str] \| builtins.list[Provider] \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | +| `grant_global_permissions` | `Permissions \| None` | `None` | +| `grant_context_permissions` | `ContextPermissions \| None` | `None` | + +**Returns:** `ContextToken` + + + +Add a Message or Artifact to the context history (append-only) +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `data` | `Message \| Artifact` | โ€” | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `None` + + + +Delete all history items from a specific item onwards (inclusive) +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `from_id` | `UUID \| str` | โ€” | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `None` + + + +List all history items for this context in chronological order +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `page_token` | `str \| None` | `None` | +| `limit` | `int \| None` | `None` | +| `order` | `Literal['asc'] \| Literal['desc'] \| None` | `'asc'` | +| `order_by` | `Literal['created_at'] \| Literal['updated_at'] \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `PaginatedResult[ContextHistoryItem]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `AsyncIterator[ContextHistoryItem]` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-context/ContextHistoryItem.mdx b/docs/development/reference/python-sdk/platform-context/ContextHistoryItem.mdx new file mode 100644 index 0000000000..6df030df8d --- /dev/null +++ b/docs/development/reference/python-sdk/platform-context/ContextHistoryItem.mdx @@ -0,0 +1,26 @@ +--- +title: "ContextHistoryItem" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / [Context](/development/reference/python-sdk/platform-context) / ContextHistoryItem +```py +from agentstack_sdk.platform.context import ContextHistoryItem +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `UUID` | `Field(default_factory=uuid4)` | +| `data` | `Artifact \| Message` | โ€” | +| `created_at` | `AwareDatetime` | `Field(default_factory=utc_now)` | +| `context_id` | `str` | โ€” | +| `kind` | `Literal['message', 'artifact']` | โ€” | diff --git a/docs/development/reference/python-sdk/platform-context/ContextPermissions.mdx b/docs/development/reference/python-sdk/platform-context/ContextPermissions.mdx new file mode 100644 index 0000000000..fb32d757ea --- /dev/null +++ b/docs/development/reference/python-sdk/platform-context/ContextPermissions.mdx @@ -0,0 +1,24 @@ +--- +title: "ContextPermissions" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / [Context](/development/reference/python-sdk/platform-context) / ContextPermissions +```py +from agentstack_sdk.platform.context import ContextPermissions +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `files` | `set[Literal['read', 'write', 'extract', '*']]` | `set()` | +| `vector_stores` | `set[Literal['read', 'write', '*']]` | `set()` | +| `context_data` | `set[Literal['read', 'write', '*']]` | `set()` | diff --git a/docs/development/reference/python-sdk/platform-context/ContextToken.mdx b/docs/development/reference/python-sdk/platform-context/ContextToken.mdx new file mode 100644 index 0000000000..b4162ed921 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-context/ContextToken.mdx @@ -0,0 +1,24 @@ +--- +title: "ContextToken" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / [Context](/development/reference/python-sdk/platform-context) / ContextToken +```py +from agentstack_sdk.platform.context import ContextToken +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `context_id` | `str` | โ€” | +| `token` | `Secret[str]` | โ€” | +| `expires_at` | `AwareDatetime \| None` | `None` | diff --git a/docs/development/reference/python-sdk/platform-context/Permissions.mdx b/docs/development/reference/python-sdk/platform-context/Permissions.mdx new file mode 100644 index 0000000000..02866bdb43 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-context/Permissions.mdx @@ -0,0 +1,30 @@ +--- +title: "Permissions" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / [Context](/development/reference/python-sdk/platform-context) / Permissions +```py +from agentstack_sdk.platform.context import Permissions +``` +**Bases:** `ContextPermissions` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `llm` | `set[Literal['*'] \| str]` | `set()` | +| `embeddings` | `set[Literal['*'] \| str]` | `set()` | +| `a2a_proxy` | `set[Literal['*'] \| str]` | `set()` | +| `model_providers` | `set[Literal['read', 'write', '*']]` | `set()` | +| `variables` | `SerializeAsAny[set[Literal['read', 'write', '*']]]` | `set()` | +| `providers` | `set[Literal['read', 'write', '*']]` | `set()` | +| `provider_variables` | `set[Literal['read', 'write', '*']]` | `set()` | +| `contexts` | `set[Literal['read', 'write', '*']]` | `set()` | +| `connectors` | `set[Literal['read', 'write', 'proxy', '*']]` | `set()` | diff --git a/docs/development/reference/python-sdk/platform-idx.mdx b/docs/development/reference/python-sdk/platform-idx.mdx new file mode 100644 index 0000000000..20525aebae --- /dev/null +++ b/docs/development/reference/python-sdk/platform-idx.mdx @@ -0,0 +1,23 @@ +--- +title: "Platform API Overview" +description: "Clients for files, vector stores, contexts, providers, and more" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} + + + General platform client and utilities + + + Shared types and utilities + + + Context management + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new.mdx b/docs/development/reference/python-sdk/platform-new.mdx new file mode 100644 index 0000000000..32668be1e0 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new.mdx @@ -0,0 +1,211 @@ +--- +title: "Platform" +description: "Clients for files, vector stores, contexts, providers, and more" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} + +```py +from agentstack_sdk.platform import PlatformClient, SystemConfiguration, AuthorizationCodeRequest # ... +``` +## Submodules + + + + Shared types and utilities + + + Context management + + +--- + +## Client +### Classes + + + + + +### Functions + + + + + + + + + +--- + +## Configuration +### Classes + + + + + +--- + +## Connector +### Classes + + + + + + + + + + + + + +### Functions + + + + + +### Constants & Variables + +| Name | Kind | Type / Definition | +|------|------|------| +| `UuidStr` | *special_form* | `Annotated[UUID \| str, BeforeValidator(uuid_to_str)]` | + +--- + +## File +### Classes + + + + + + + + + +### Constants & Variables + +| Name | Kind | Type / Definition | +|------|------|------| +| `ExtractionFormatLiteral` | *special_form* | `Literal['markdown', 'vendor_specific_json']` | + +--- + +## Model Provider +### Classes + + + + + + + + + + + + + +--- + +## Provider +### Classes + + + + + + + + + + + +--- + +## Provider Build +### Classes + + + + + + + + + + + + + + + +### Constants & Variables + +| Name | Kind | Type / Definition | +|------|------|------| +| `OnCompleteAction` | *type_alias* | `AddProvider \| UpdateProvider \| NoAction` | + +--- + +## Provider Discovery +### Classes + + + + + + + +--- + +## User +### Classes + + + + + + + + + +--- + +## User Feedback +### Classes + + + + + + + +--- + +## Vector Store +### Classes + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/AddProvider.mdx b/docs/development/reference/python-sdk/platform-new/AddProvider.mdx new file mode 100644 index 0000000000..27b646007f --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/AddProvider.mdx @@ -0,0 +1,25 @@ +--- +title: "AddProvider" +description: "Will add a new provider or update an existing one with the same base docker image ID" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / AddProvider +```py +from agentstack_sdk.platform import AddProvider +``` +**Bases:** `BaseModel` +(docker registry + repository, excluding tag) +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['add_provider']` | `'add_provider'` | +| `auto_stop_timeout_sec` | `int \| None` | `pydantic.Field(default=None, gt=0, le=60...` | +| `variables` | `dict[str, str] \| None` | `None` | diff --git a/docs/development/reference/python-sdk/platform-new/AuthorizationCodeRequest.mdx b/docs/development/reference/python-sdk/platform-new/AuthorizationCodeRequest.mdx new file mode 100644 index 0000000000..1219044429 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/AuthorizationCodeRequest.mdx @@ -0,0 +1,23 @@ +--- +title: "AuthorizationCodeRequest" +description: "Authorization request for code-based OAuth flow" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / AuthorizationCodeRequest +```py +from agentstack_sdk.platform import AuthorizationCodeRequest +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['code']` | `'code'` | +| `authorization_endpoint` | `AnyUrl` | โ€” | diff --git a/docs/development/reference/python-sdk/platform-new/BuildConfiguration.mdx b/docs/development/reference/python-sdk/platform-new/BuildConfiguration.mdx new file mode 100644 index 0000000000..f866791d60 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/BuildConfiguration.mdx @@ -0,0 +1,22 @@ +--- +title: "BuildConfiguration" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / BuildConfiguration +```py +from agentstack_sdk.platform import BuildConfiguration +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `dockerfile_path` | `Path \| None` | `Field(default=None, description='Path to...` | diff --git a/docs/development/reference/python-sdk/platform-new/BuildState.mdx b/docs/development/reference/python-sdk/platform-new/BuildState.mdx new file mode 100644 index 0000000000..06f526fab2 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/BuildState.mdx @@ -0,0 +1,26 @@ +--- +title: "BuildState" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / BuildState +```py +from agentstack_sdk.platform import BuildState +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `MISSING` | โ€” | `'missing'` | +| `IN_PROGRESS` | โ€” | `'in_progress'` | +| `BUILD_COMPLETED` | โ€” | `'build_completed'` | +| `COMPLETED` | โ€” | `'completed'` | +| `FAILED` | โ€” | `'failed'` | diff --git a/docs/development/reference/python-sdk/platform-new/ChangeRoleResponse.mdx b/docs/development/reference/python-sdk/platform-new/ChangeRoleResponse.mdx new file mode 100644 index 0000000000..41dabeef9c --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/ChangeRoleResponse.mdx @@ -0,0 +1,23 @@ +--- +title: "ChangeRoleResponse" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / ChangeRoleResponse +```py +from agentstack_sdk.platform import ChangeRoleResponse +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `user_id` | `str` | โ€” | +| `new_role` | `UserRole` | โ€” | diff --git a/docs/development/reference/python-sdk/platform-new/Connector.mdx b/docs/development/reference/python-sdk/platform-new/Connector.mdx new file mode 100644 index 0000000000..0367c6d793 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/Connector.mdx @@ -0,0 +1,234 @@ +--- +title: "Connector" +description: "Represents a configured connector instance" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / Connector +```py +from agentstack_sdk.platform import Connector +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `UUID` | โ€” | +| `url` | `AnyUrl` | โ€” | +| `state` | `ConnectorState` | โ€” | +| `auth_request` | `AuthorizationCodeRequest \| None` | `None` | +| `disconnect_reason` | `str \| None` | `None` | +| `metadata` | `Metadata \| None` | `None` | +| `created_at` | `AwareDatetime \| None` | `None` | +| `updated_at` | `AwareDatetime \| None` | `None` | +| `created_by` | `UUID \| None` | `None` | + +## Methods + + + + + + +Create a new connector. + +Args: + url: The URL of the connector/MCP server + client_id: OAuth client ID (optional) + client_secret: OAuth client secret (optional) + metadata: Additional metadata for the connector (optional) + match_preset: Whether to match against preset connectors + client: Optional PlatformClient instance + +Returns: + The created Connector instance +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `url` | `AnyUrl \| str` | โ€” | +| `client_id` | `str \| None` | โ€” | +| `client_secret` | `str \| None` | โ€” | +| `metadata` | `Metadata \| None` | โ€” | +| `match_preset` | `bool` | `True` | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'Connector'` + + + +List all connectors for the current user. + +Returns: + A paginated list of Connector instances +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `PaginatedResult['Connector']` + + + +Read a specific connector by ID. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'Connector'` + + + +Delete a connector. + +Args: + client: Optional PlatformClient instance +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `None` + + + +This is just a syntactic sugar for calling Connector.get(). +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'Connector'` + + + +Wait for the connector to reach connected state. + +This is useful after calling connect() and opening the browser for OAuth. +It will poll the server until the connector reaches 'connected' state or +timeout is exceeded. + +Args: + poll_interval: Seconds between polls (default: 2) + client: Optional PlatformClient instance + +Returns: + Updated Connector instance when connected + +Raises: + TimeoutError: If connector doesn't reach connected state within timeout (300 seconds) +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `state` | `ConnectorState` | `ConnectorState.connected` | +| `poll_interval` | `int` | `1` | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'Connector'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `poll_interval` | `int` | `1` | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `None` + + + +Connect a connector (establish authorization). + +If the connector requires OAuth authorization, this will automatically +open the browser with the authorization endpoint. + +Args: + redirect_url: OAuth redirect URL (optional) + access_token: OAuth access token (optional) + client: Optional PlatformClient instance + +Returns: + The updated Connector instance +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `redirect_url` | `AnyUrl \| str \| None` | โ€” | +| `access_token` | `str \| None` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'Connector'` + + + +Disconnect a connector. + +Args: + client: Optional PlatformClient instance + +Returns: + The updated Connector instance +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'Connector'` + + + +Proxy a streaming request through to the connector's MCP endpoint. + +This allows direct communication with the Model Context Protocol server +exposed by the connector. The response is streamed to avoid loading +large responses into memory. + +Args: + method: HTTP method (GET, POST, etc.) + headers: Optional HTTP headers to include + content: Optional request body content + client: Optional PlatformClient instance + +Yields: + Response content chunks as bytes +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `method` | `str` | โ€” | +| `headers` | `dict \| None` | โ€” | +| `content` | `bytes \| None` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `AsyncIterator[MCPProxyResponse]` + + + +List all available connector presets. + +Returns: + A paginated list of ConnectorPreset instances +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `PaginatedResult['ConnectorPreset']` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/ConnectorPreset.mdx b/docs/development/reference/python-sdk/platform-new/ConnectorPreset.mdx new file mode 100644 index 0000000000..6d7c153a5f --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/ConnectorPreset.mdx @@ -0,0 +1,23 @@ +--- +title: "ConnectorPreset" +description: "Represents a preset connector configuration" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / ConnectorPreset +```py +from agentstack_sdk.platform import ConnectorPreset +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `url` | `AnyUrl` | โ€” | +| `metadata` | `Metadata \| None` | `None` | diff --git a/docs/development/reference/python-sdk/platform-new/ConnectorState.mdx b/docs/development/reference/python-sdk/platform-new/ConnectorState.mdx new file mode 100644 index 0000000000..fae65437d7 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/ConnectorState.mdx @@ -0,0 +1,25 @@ +--- +title: "ConnectorState" +description: "Enumeration of possible connector states" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / ConnectorState +```py +from agentstack_sdk.platform import ConnectorState +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `created` | โ€” | `'created'` | +| `auth_required` | โ€” | `'auth_required'` | +| `connected` | โ€” | `'connected'` | +| `disconnected` | โ€” | `'disconnected'` | diff --git a/docs/development/reference/python-sdk/platform-new/DiscoveryState.mdx b/docs/development/reference/python-sdk/platform-new/DiscoveryState.mdx new file mode 100644 index 0000000000..999a7181cc --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/DiscoveryState.mdx @@ -0,0 +1,25 @@ +--- +title: "DiscoveryState" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / DiscoveryState +```py +from agentstack_sdk.platform import DiscoveryState +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `PENDING` | โ€” | `'pending'` | +| `IN_PROGRESS` | โ€” | `'in_progress'` | +| `COMPLETED` | โ€” | `'completed'` | +| `FAILED` | โ€” | `'failed'` | diff --git a/docs/development/reference/python-sdk/platform-new/EnvVar.mdx b/docs/development/reference/python-sdk/platform-new/EnvVar.mdx new file mode 100644 index 0000000000..24dd6a6535 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/EnvVar.mdx @@ -0,0 +1,24 @@ +--- +title: "EnvVar" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / EnvVar +```py +from agentstack_sdk.platform import EnvVar +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `name` | `str` | โ€” | +| `description` | `str \| None` | `None` | +| `required` | `bool` | `False` | diff --git a/docs/development/reference/python-sdk/platform-new/ExtractedFileInfo.mdx b/docs/development/reference/python-sdk/platform-new/ExtractedFileInfo.mdx new file mode 100644 index 0000000000..fffc833b8f --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/ExtractedFileInfo.mdx @@ -0,0 +1,23 @@ +--- +title: "ExtractedFileInfo" +description: "Information about an extracted file" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / ExtractedFileInfo +```py +from agentstack_sdk.platform import ExtractedFileInfo +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `file_id` | `str` | โ€” | +| `format` | `ExtractionFormatLiteral \| None` | โ€” | diff --git a/docs/development/reference/python-sdk/platform-new/Extraction.mdx b/docs/development/reference/python-sdk/platform-new/Extraction.mdx new file mode 100644 index 0000000000..21778c4e52 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/Extraction.mdx @@ -0,0 +1,31 @@ +--- +title: "Extraction" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / Extraction +```py +from agentstack_sdk.platform import Extraction +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `file_id` | `str` | โ€” | +| `extracted_files` | `builtins.list[ExtractedFileInfo]` | `pydantic.Field(default_factory=list)` | +| `status` | `Literal['pending', 'in_progress', 'completed', 'failed', 'cancelled']` | `'pending'` | +| `job_id` | `str \| None` | `None` | +| `error_message` | `str \| None` | `None` | +| `extraction_metadata` | `dict[str, typing.Any] \| None` | `None` | +| `started_at` | `AwareDatetime \| None` | `None` | +| `finished_at` | `AwareDatetime \| None` | `None` | +| `created_at` | `AwareDatetime` | โ€” | diff --git a/docs/development/reference/python-sdk/platform-new/File.mdx b/docs/development/reference/python-sdk/platform-new/File.mdx new file mode 100644 index 0000000000..cd96a3dd08 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/File.mdx @@ -0,0 +1,164 @@ +--- +title: "File" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / File +```py +from agentstack_sdk.platform import File +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `filename` | `str` | โ€” | +| `content_type` | `str` | โ€” | +| `file_size_bytes` | `int` | โ€” | +| `created_at` | `AwareDatetime` | โ€” | +| `created_by` | `str` | โ€” | +| `file_type` | `Literal['user_upload', 'extracted_text']` | โ€” | +| `parent_file_id` | `str \| None` | `None` | +| `url` | `PlatformFileUrl` | โ€” | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `filename` | `str` | โ€” | +| `content` | `BinaryIO \| bytes` | โ€” | +| `content_type` | `str` | `'application/octet-stream'` | +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `'File'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `'File'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `stream` | `bool` | `False` | +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `AsyncIterator[LoadedFile]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `stream` | `bool` | `False` | +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `AsyncIterator[LoadedFile]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `stream` | `bool` | `False` | +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `AsyncIterator[LoadedFile]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `formats` | `builtins.list[ExtractionFormatLiteral] \| None` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `Extraction` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `Extraction` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `None` + + + +**Returns:** `FilePart` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `content_type` | `str \| None` | โ€” | +| `filename_search` | `str \| None` | โ€” | +| `page_token` | `str \| None` | โ€” | +| `limit` | `int \| None` | โ€” | +| `order` | `Literal['asc'] \| Literal['desc'] \| None` | `'asc'` | +| `order_by` | `Literal['created_at'] \| Literal['filename'] \| Literal['file_size_bytes'] \| None` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `PaginatedResult['File']` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/ListUserFeedbackResponse.mdx b/docs/development/reference/python-sdk/platform-new/ListUserFeedbackResponse.mdx new file mode 100644 index 0000000000..52f3412b1f --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/ListUserFeedbackResponse.mdx @@ -0,0 +1,17 @@ +--- +title: "ListUserFeedbackResponse" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / ListUserFeedbackResponse +```py +from agentstack_sdk.platform import ListUserFeedbackResponse +``` +**Bases:** `PaginatedResult[UserFeedback]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/MCPProxyResponse.mdx b/docs/development/reference/python-sdk/platform-new/MCPProxyResponse.mdx new file mode 100644 index 0000000000..ff8440e6dd --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/MCPProxyResponse.mdx @@ -0,0 +1,24 @@ +--- +title: "MCPProxyResponse" +description: "Response from an MCP proxy request with headers and streaming content" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / MCPProxyResponse +```py +from agentstack_sdk.platform import MCPProxyResponse +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `headers` | `Annotated[dict[str, str], Field(description='HTTP headers from the proxy response')]` | โ€” | +| `status_code` | `Annotated[int, Field(description='HTTP status code from the proxy response')]` | โ€” | +| `chunk` | `Annotated[bytes, Field(description='Bytes chunk from streaming response content')]` | โ€” | diff --git a/docs/development/reference/python-sdk/platform-new/ModelCapability.mdx b/docs/development/reference/python-sdk/platform-new/ModelCapability.mdx new file mode 100644 index 0000000000..53a28b2aed --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/ModelCapability.mdx @@ -0,0 +1,23 @@ +--- +title: "ModelCapability" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / ModelCapability +```py +from agentstack_sdk.platform import ModelCapability +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `LLM` | โ€” | `'llm'` | +| `EMBEDDING` | โ€” | `'embedding'` | diff --git a/docs/development/reference/python-sdk/platform-new/ModelProvider.mdx b/docs/development/reference/python-sdk/platform-new/ModelProvider.mdx new file mode 100644 index 0000000000..36555e55d6 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/ModelProvider.mdx @@ -0,0 +1,97 @@ +--- +title: "ModelProvider" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / ModelProvider +```py +from agentstack_sdk.platform import ModelProvider +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `name` | `str \| None` | `None` | +| `description` | `str \| None` | `None` | +| `type` | `ModelProviderType` | โ€” | +| `base_url` | `HttpUrl` | โ€” | +| `watsonx_project_id` | `str \| None` | `None` | +| `watsonx_space_id` | `str \| None` | `None` | +| `created_at` | `AwareDatetime` | โ€” | +| `capabilities` | `set[ModelCapability]` | โ€” | +| `state` | `ModelProviderState` | โ€” | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `name` | `str \| None` | โ€” | +| `description` | `str \| None` | โ€” | +| `type` | `ModelProviderType` | โ€” | +| `base_url` | `str \| pydantic.HttpUrl` | โ€” | +| `watsonx_project_id` | `str \| None` | โ€” | +| `watsonx_space_id` | `str \| None` | โ€” | +| `api_key` | `str` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'ModelProvider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'ModelProvider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `capability` | `ModelCapability` | `ModelCapability.LLM` | +| `suggested_models` | `tuple[str, ...] \| None` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `builtins.list[ModelWithScore]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `builtins.list['ModelProvider']` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/ModelProviderState.mdx b/docs/development/reference/python-sdk/platform-new/ModelProviderState.mdx new file mode 100644 index 0000000000..8e6cd965f8 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/ModelProviderState.mdx @@ -0,0 +1,23 @@ +--- +title: "ModelProviderState" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / ModelProviderState +```py +from agentstack_sdk.platform import ModelProviderState +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `ONLINE` | โ€” | `'online'` | +| `OFFLINE` | โ€” | `'offline'` | diff --git a/docs/development/reference/python-sdk/platform-new/ModelProviderType.mdx b/docs/development/reference/python-sdk/platform-new/ModelProviderType.mdx new file mode 100644 index 0000000000..bf46b0401f --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/ModelProviderType.mdx @@ -0,0 +1,42 @@ +--- +title: "ModelProviderType" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / ModelProviderType +```py +from agentstack_sdk.platform import ModelProviderType +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `ANTHROPIC` | โ€” | `'anthropic'` | +| `CEREBRAS` | โ€” | `'cerebras'` | +| `CHUTES` | โ€” | `'chutes'` | +| `COHERE` | โ€” | `'cohere'` | +| `DEEPSEEK` | โ€” | `'deepseek'` | +| `GEMINI` | โ€” | `'gemini'` | +| `GITHUB` | โ€” | `'github'` | +| `GROQ` | โ€” | `'groq'` | +| `WATSONX` | โ€” | `'watsonx'` | +| `JAN` | โ€” | `'jan'` | +| `MISTRAL` | โ€” | `'mistral'` | +| `MOONSHOT` | โ€” | `'moonshot'` | +| `NVIDIA` | โ€” | `'nvidia'` | +| `OLLAMA` | โ€” | `'ollama'` | +| `OPENAI` | โ€” | `'openai'` | +| `OPENROUTER` | โ€” | `'openrouter'` | +| `PERPLEXITY` | โ€” | `'perplexity'` | +| `TOGETHER` | โ€” | `'together'` | +| `VOYAGE` | โ€” | `'voyage'` | +| `RITS` | โ€” | `'rits'` | +| `OTHER` | โ€” | `'other'` | diff --git a/docs/development/reference/python-sdk/platform-new/ModelWithScore.mdx b/docs/development/reference/python-sdk/platform-new/ModelWithScore.mdx new file mode 100644 index 0000000000..14120b28a7 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/ModelWithScore.mdx @@ -0,0 +1,23 @@ +--- +title: "ModelWithScore" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / ModelWithScore +```py +from agentstack_sdk.platform import ModelWithScore +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `model_id` | `str` | โ€” | +| `score` | `float` | โ€” | diff --git a/docs/development/reference/python-sdk/platform-new/NoAction.mdx b/docs/development/reference/python-sdk/platform-new/NoAction.mdx new file mode 100644 index 0000000000..26db7f09c7 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/NoAction.mdx @@ -0,0 +1,22 @@ +--- +title: "NoAction" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / NoAction +```py +from agentstack_sdk.platform import NoAction +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['no_action']` | `'no_action'` | diff --git a/docs/development/reference/python-sdk/platform-new/PlatformClient.mdx b/docs/development/reference/python-sdk/platform-new/PlatformClient.mdx new file mode 100644 index 0000000000..a143daf63c --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/PlatformClient.mdx @@ -0,0 +1,59 @@ +--- +title: "PlatformClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / PlatformClient +```py +from agentstack_sdk.platform import PlatformClient +``` +**Bases:** `AsyncClient` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `context_id` | `str \| None` | `context_id` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `context_id` | `str \| None` | โ€” | +| `auth_token` | `str \| Secret[str] \| None` | โ€” | +| `auth` | `AuthTypes \| None` | โ€” | +| `params` | `QueryParamTypes \| None` | โ€” | +| `headers` | `HeaderTypes \| None` | โ€” | +| `cookies` | `CookieTypes \| None` | โ€” | +| `verify` | `SSLContext \| str \| bool` | `True` | +| `cert` | `CertTypes \| None` | โ€” | +| `http1` | `bool` | `True` | +| `http2` | `bool` | `False` | +| `proxy` | `ProxyTypes \| None` | โ€” | +| `mounts` | `None \| Mapping[str, AsyncBaseTransport \| None]` | โ€” | +| `timeout` | `TimeoutTypes` | `DEFAULT_SDK_TIMEOUT` | +| `follow_redirects` | `bool` | `False` | +| `limits` | `Limits` | `DEFAULT_LIMITS` | +| `max_redirects` | `int` | `DEFAULT_MAX_REDIRECTS` | +| `event_hooks` | `None \| Mapping[str, list[EventHook]]` | โ€” | +| `base_url` | `URL \| str` | `''` | +| `transport` | `AsyncBaseTransport \| None` | โ€” | +| `trust_env` | `bool` | `True` | +| `default_encoding` | `str \| typing.Callable[[bytes], str]` | `'utf-8'` | + +**Returns:** `None` + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/Provider.mdx b/docs/development/reference/python-sdk/platform-new/Provider.mdx new file mode 100644 index 0000000000..f1bd20203f --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/Provider.mdx @@ -0,0 +1,166 @@ +--- +title: "Provider" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / Provider +```py +from agentstack_sdk.platform import Provider +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `auto_stop_timeout` | `timedelta` | โ€” | +| `source` | `str` | โ€” | +| `origin` | `str` | โ€” | +| `version_info` | `VersionInfo` | `pydantic.Field(default_factory=VersionIn...` | +| `registry` | `str \| None` | `None` | +| `created_at` | `AwareDatetime` | โ€” | +| `updated_at` | `AwareDatetime` | โ€” | +| `last_active_at` | `AwareDatetime` | โ€” | +| `agent_card` | `AgentCard` | โ€” | +| `state` | `Literal['missing', 'starting', 'ready', 'running', 'error', 'online', 'offline']` | `'missing'` | +| `managed` | `bool` | โ€” | +| `last_error` | `ProviderErrorMessage \| None` | `None` | +| `created_by` | `UUID` | โ€” | +| `missing_configuration` | `builtins.list[EnvVar]` | `pydantic.Field(default_factory=list)` | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `location` | `str` | โ€” | +| `agent_card` | `AgentCard \| None` | โ€” | +| `origin` | `str \| None` | โ€” | +| `auto_stop_timeout` | `timedelta \| None` | โ€” | +| `variables` | `dict[str, str] \| None` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'Provider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `location` | `str \| None` | โ€” | +| `agent_card` | `AgentCard \| None` | โ€” | +| `origin` | `str \| None` | โ€” | +| `auto_stop_timeout` | `timedelta \| None` | โ€” | +| `variables` | `dict[str, str] \| None` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'Provider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `location` | `str` | โ€” | +| `agent_card` | `AgentCard \| None` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'Provider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'Provider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `location` | `str` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'Provider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `variables` | `dict[str, str \| None] \| dict[str, str]` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `AsyncIterator[dict[str, typing.Any]]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `dict[str, str]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `origin` | `str \| None` | โ€” | +| `user_owned` | `bool \| None` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `builtins.list['Provider']` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/ProviderBuild.mdx b/docs/development/reference/python-sdk/platform-new/ProviderBuild.mdx new file mode 100644 index 0000000000..eeefd1bb91 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/ProviderBuild.mdx @@ -0,0 +1,108 @@ +--- +title: "ProviderBuild" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / ProviderBuild +```py +from agentstack_sdk.platform import ProviderBuild +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `created_at` | `AwareDatetime` | โ€” | +| `status` | `BuildState` | โ€” | +| `source` | `ResolvedGithubUrl` | โ€” | +| `destination` | `str` | โ€” | +| `provider_id` | `str \| None` | `None` | +| `build_configuration` | `BuildConfiguration \| None` | `None` | +| `created_by` | `str` | โ€” | +| `error_message` | `str \| None` | `None` | +| `provider_origin` | `str` | โ€” | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `location` | `str` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | +| `on_complete` | `OnCompleteAction \| None` | โ€” | +| `build_configuration` | `BuildConfiguration \| None` | โ€” | + +**Returns:** `'ProviderBuild'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `location` | `str` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | +| `on_complete` | `OnCompleteAction \| None` | โ€” | + +**Returns:** `'ProviderBuild'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `AsyncIterator[dict[str, Any]]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'ProviderBuild'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `page_token` | `str \| None` | โ€” | +| `limit` | `int \| None` | โ€” | +| `order` | `Literal['asc'] \| Literal['desc'] \| None` | `'asc'` | +| `order_by` | `Literal['created_at'] \| Literal['updated_at'] \| None` | โ€” | +| `user_owned` | `bool \| None` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `PaginatedResult['ProviderBuild']` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/ProviderDiscovery.mdx b/docs/development/reference/python-sdk/platform-new/ProviderDiscovery.mdx new file mode 100644 index 0000000000..0558d2caa9 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/ProviderDiscovery.mdx @@ -0,0 +1,56 @@ +--- +title: "ProviderDiscovery" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / ProviderDiscovery +```py +from agentstack_sdk.platform import ProviderDiscovery +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `UUID` | โ€” | +| `created_at` | `AwareDatetime` | โ€” | +| `status` | `DiscoveryState` | โ€” | +| `docker_image` | `str` | โ€” | +| `created_by` | `UUID` | โ€” | +| `agent_card` | `AgentCard \| None` | `None` | +| `error_message` | `str \| None` | `None` | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `docker_image` | `str` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'ProviderDiscovery'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'ProviderDiscovery'` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/ProviderErrorMessage.mdx b/docs/development/reference/python-sdk/platform-new/ProviderErrorMessage.mdx new file mode 100644 index 0000000000..ccf24388f3 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/ProviderErrorMessage.mdx @@ -0,0 +1,22 @@ +--- +title: "ProviderErrorMessage" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / ProviderErrorMessage +```py +from agentstack_sdk.platform import ProviderErrorMessage +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `message` | `str` | โ€” | diff --git a/docs/development/reference/python-sdk/platform-new/SystemConfiguration.mdx b/docs/development/reference/python-sdk/platform-new/SystemConfiguration.mdx new file mode 100644 index 0000000000..fa7897859c --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/SystemConfiguration.mdx @@ -0,0 +1,57 @@ +--- +title: "SystemConfiguration" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / SystemConfiguration +```py +from agentstack_sdk.platform import SystemConfiguration +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `default_llm_model` | `str \| None` | `None` | +| `default_embedding_model` | `str \| None` | `None` | +| `updated_at` | `AwareDatetime` | โ€” | +| `created_by` | `str` | โ€” | + +## Methods + + + + + + +Get the current system configuration. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'SystemConfiguration'` + + + +Update the system configuration. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `default_llm_model` | `str \| None` | โ€” | +| `default_embedding_model` | `str \| None` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'SystemConfiguration'` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/UpdateProvider.mdx b/docs/development/reference/python-sdk/platform-new/UpdateProvider.mdx new file mode 100644 index 0000000000..5e9f4e19cb --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/UpdateProvider.mdx @@ -0,0 +1,23 @@ +--- +title: "UpdateProvider" +description: "Will update provider specified by ID" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / UpdateProvider +```py +from agentstack_sdk.platform import UpdateProvider +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['update_provider']` | `'update_provider'` | +| `provider_id` | `UUID` | โ€” | diff --git a/docs/development/reference/python-sdk/platform-new/User.mdx b/docs/development/reference/python-sdk/platform-new/User.mdx new file mode 100644 index 0000000000..b04f0da8fe --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/User.mdx @@ -0,0 +1,67 @@ +--- +title: "User" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / User +```py +from agentstack_sdk.platform import User +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `role` | `UserRole` | โ€” | +| `email` | `str` | โ€” | +| `created_at` | `AwareDatetime` | โ€” | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'User'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `email` | `str \| None` | โ€” | +| `limit` | `int` | `40` | +| `page_token` | `str \| None` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `PaginatedResult['User']` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `user_id` | `str` | โ€” | +| `new_role` | `UserRole` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `ChangeRoleResponse` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/UserFeedback.mdx b/docs/development/reference/python-sdk/platform-new/UserFeedback.mdx new file mode 100644 index 0000000000..078b47e93c --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/UserFeedback.mdx @@ -0,0 +1,51 @@ +--- +title: "UserFeedback" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / UserFeedback +```py +from agentstack_sdk.platform import UserFeedback +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `UUID` | โ€” | +| `provider_id` | `UUID` | โ€” | +| `task_id` | `UUID` | โ€” | +| `context_id` | `UUID` | โ€” | +| `rating` | `int` | โ€” | +| `message` | `str` | โ€” | +| `comment` | `str \| None` | `None` | +| `comment_tags` | `builtins.list[str] \| None` | `None` | +| `created_at` | `datetime` | โ€” | +| `agent_name` | `str` | โ€” | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `provider_id` | `str \| None` | โ€” | +| `limit` | `int` | `50` | +| `after_cursor` | `str \| None` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'ListUserFeedbackResponse'` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/UserRole.mdx b/docs/development/reference/python-sdk/platform-new/UserRole.mdx new file mode 100644 index 0000000000..99b59dff27 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/UserRole.mdx @@ -0,0 +1,24 @@ +--- +title: "UserRole" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / UserRole +```py +from agentstack_sdk.platform import UserRole +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `ADMIN` | โ€” | `'admin'` | +| `DEVELOPER` | โ€” | `'developer'` | +| `USER` | โ€” | `'user'` | diff --git a/docs/development/reference/python-sdk/platform-new/Variables.mdx b/docs/development/reference/python-sdk/platform-new/Variables.mdx new file mode 100644 index 0000000000..ce6b023381 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/Variables.mdx @@ -0,0 +1,51 @@ +--- +title: "Variables" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / Variables +```py +from agentstack_sdk.platform import Variables +``` +**Bases:** `dict[str, str]` +## Methods + + + + + + +Save variables to the Agent Stack platform. Does not delete keys unless explicitly set to None. + +Can be used as a class method: Variables.save(\{"key": "value", ...\}) +...or as an instance method: variables.save() +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `None` + + + +Load variables from the Agent Stack platform. + +Can be used as a class method: variables = Variables.load() +...or as an instance method to update the instance: variables.load() +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | + +**Returns:** `'Variables'` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/VectorStore.mdx b/docs/development/reference/python-sdk/platform-new/VectorStore.mdx new file mode 100644 index 0000000000..4d298e8886 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/VectorStore.mdx @@ -0,0 +1,120 @@ +--- +title: "VectorStore" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / VectorStore +```py +from agentstack_sdk.platform import VectorStore +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `name` | `str \| None` | `None` | +| `model_id` | `str` | โ€” | +| `dimension` | `int` | โ€” | +| `created_at` | `AwareDatetime` | โ€” | +| `last_active_at` | `AwareDatetime` | โ€” | +| `created_by` | `str` | โ€” | +| `stats` | `VectorStoreStats \| None` | `None` | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `name` | `str` | โ€” | +| `dimension` | `int` | โ€” | +| `model_id` | `str` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `'VectorStore'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `'VectorStore'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `items` | `list[VectorStoreItem]` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `query_vector` | `list[float]` | โ€” | +| `limit` | `int` | `10` | +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `list[VectorStoreSearchResult]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `list[VectorStoreDocument]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `document_id` | `str` | โ€” | +| `client` | `PlatformClient \| None` | โ€” | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/VectorStoreDocument.mdx b/docs/development/reference/python-sdk/platform-new/VectorStoreDocument.mdx new file mode 100644 index 0000000000..a2b0c85380 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/VectorStoreDocument.mdx @@ -0,0 +1,26 @@ +--- +title: "VectorStoreDocument" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / VectorStoreDocument +```py +from agentstack_sdk.platform import VectorStoreDocument +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `vector_store_id` | `str` | โ€” | +| `file_id` | `str \| None` | `None` | +| `usage_bytes` | `int \| None` | `None` | +| `created_at` | `AwareDatetime` | โ€” | diff --git a/docs/development/reference/python-sdk/platform-new/VectorStoreItem.mdx b/docs/development/reference/python-sdk/platform-new/VectorStoreItem.mdx new file mode 100644 index 0000000000..2a97736ef2 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/VectorStoreItem.mdx @@ -0,0 +1,40 @@ +--- +title: "VectorStoreItem" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / VectorStoreItem +```py +from agentstack_sdk.platform import VectorStoreItem +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | `pydantic.Field(default_factory=(lambda: ...` | +| `document_id` | `str` | โ€” | +| `document_type` | `Literal['platform_file', 'external'] \| None` | `'platform_file'` | +| `model_id` | `str \| typing.Literal['platform']` | `'platform'` | +| `text` | `str` | โ€” | +| `embedding` | `list[float]` | โ€” | +| `metadata` | `Metadata \| None` | `None` | + +## Methods + + + + + + +Validate that document_id is a valid UUID when document_type is platform_file. +**Returns:** `Self` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/VectorStoreSearchResult.mdx b/docs/development/reference/python-sdk/platform-new/VectorStoreSearchResult.mdx new file mode 100644 index 0000000000..64bb9aca6b --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/VectorStoreSearchResult.mdx @@ -0,0 +1,23 @@ +--- +title: "VectorStoreSearchResult" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / VectorStoreSearchResult +```py +from agentstack_sdk.platform import VectorStoreSearchResult +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `item` | `VectorStoreItem` | โ€” | +| `score` | `float` | โ€” | diff --git a/docs/development/reference/python-sdk/platform-new/VectorStoreStats.mdx b/docs/development/reference/python-sdk/platform-new/VectorStoreStats.mdx new file mode 100644 index 0000000000..0a4e8c95ba --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/VectorStoreStats.mdx @@ -0,0 +1,23 @@ +--- +title: "VectorStoreStats" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / VectorStoreStats +```py +from agentstack_sdk.platform import VectorStoreStats +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `usage_bytes` | `int` | โ€” | +| `num_documents` | `int` | โ€” | diff --git a/docs/development/reference/python-sdk/platform-new/VersionInfo.mdx b/docs/development/reference/python-sdk/platform-new/VersionInfo.mdx new file mode 100644 index 0000000000..bb084d8b83 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/VersionInfo.mdx @@ -0,0 +1,23 @@ +--- +title: "VersionInfo" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / VersionInfo +```py +from agentstack_sdk.platform import VersionInfo +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `docker` | `ResolvedDockerImageID \| None` | `None` | +| `github` | `ResolvedGithubUrl \| None` | `None` | diff --git a/docs/development/reference/python-sdk/platform-new/get_platform_client.mdx b/docs/development/reference/python-sdk/platform-new/get_platform_client.mdx new file mode 100644 index 0000000000..f4777a878a --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/get_platform_client.mdx @@ -0,0 +1,16 @@ +--- +title: "get_platform_client" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / get_platform_client +```py +from agentstack_sdk.platform import get_platform_client +``` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/set_platform_client.mdx b/docs/development/reference/python-sdk/platform-new/set_platform_client.mdx new file mode 100644 index 0000000000..05653ac782 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/set_platform_client.mdx @@ -0,0 +1,16 @@ +--- +title: "set_platform_client" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / set_platform_client +```py +from agentstack_sdk.platform import set_platform_client +``` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/use_platform_client.mdx b/docs/development/reference/python-sdk/platform-new/use_platform_client.mdx new file mode 100644 index 0000000000..5b5ed078f3 --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/use_platform_client.mdx @@ -0,0 +1,16 @@ +--- +title: "use_platform_client" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / use_platform_client +```py +from agentstack_sdk.platform import use_platform_client +``` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform-new/uuid_to_str.mdx b/docs/development/reference/python-sdk/platform-new/uuid_to_str.mdx new file mode 100644 index 0000000000..efdf7418cc --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/uuid_to_str.mdx @@ -0,0 +1,27 @@ +--- +title: "uuid_to_str" +description: "Convert UUID or str to str" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / uuid_to_str +```py +from agentstack_sdk.platform import uuid_to_str +``` +Convert UUID or str to str. +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `v` | `UUID \| str` | โ€” | + +## Returns + +`str` + diff --git a/docs/development/reference/python-sdk/platform-new/validate_metadata.mdx b/docs/development/reference/python-sdk/platform-new/validate_metadata.mdx new file mode 100644 index 0000000000..1a93d97b7f --- /dev/null +++ b/docs/development/reference/python-sdk/platform-new/validate_metadata.mdx @@ -0,0 +1,26 @@ +--- +title: "validate_metadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform-new) / validate_metadata +```py +from agentstack_sdk.platform import validate_metadata +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `metadata` | `dict[str, str \| None]` | โ€” | + +## Returns + +`dict[str, str | None]` + diff --git a/docs/development/reference/python-sdk/platform.mdx b/docs/development/reference/python-sdk/platform.mdx new file mode 100644 index 0000000000..3443593468 --- /dev/null +++ b/docs/development/reference/python-sdk/platform.mdx @@ -0,0 +1,211 @@ +--- +title: "Platform" +description: "Clients for files, vector stores, contexts, providers, and more" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} + +```py +from agentstack_sdk.platform import PlatformClient, SystemConfiguration, AuthorizationCodeRequest # ... +``` +## Submodules + + + + Shared types and utilities + + + Context management + + +--- + +## Client +### Classes + + + + + +### Functions + + + + + + + + + +--- + +## Configuration +### Classes + + + + + +--- + +## Connector +### Classes + + + + + + + + + + + + + +### Functions + + + + + +### Constants & Variables + +| Name | Kind | Type / Definition | +|------|------|------| +| `UuidStr` | *special_form* | `Annotated[UUID \| str, BeforeValidator(uuid_to_str)]` | + +--- + +## File +### Classes + + + + + + + + + +### Constants & Variables + +| Name | Kind | Type / Definition | +|------|------|------| +| `ExtractionFormatLiteral` | *special_form* | `Literal['markdown', 'vendor_specific_json']` | + +--- + +## Model Provider +### Classes + + + + + + + + + + + + + +--- + +## Provider +### Classes + + + + + + + + + + + +--- + +## Provider Build +### Classes + + + + + + + + + + + + + + + +### Constants & Variables + +| Name | Kind | Type / Definition | +|------|------|------| +| `OnCompleteAction` | *type_alias* | `AddProvider \| UpdateProvider \| NoAction` | + +--- + +## Provider Discovery +### Classes + + + + + + + +--- + +## User +### Classes + + + + + + + + + +--- + +## User Feedback +### Classes + + + + + + + +--- + +## Vector Store +### Classes + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/AddProvider.mdx b/docs/development/reference/python-sdk/platform/AddProvider.mdx new file mode 100644 index 0000000000..88605fc0f4 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/AddProvider.mdx @@ -0,0 +1,25 @@ +--- +title: "AddProvider" +description: "Will add a new provider or update an existing one with the same base docker image ID" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / AddProvider +```py +from agentstack_sdk.platform import AddProvider +``` +**Bases:** `BaseModel` +(docker registry + repository, excluding tag) +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['add_provider']` | `'add_provider'` | +| `auto_stop_timeout_sec` | `int \| None` | `pydantic.Field(default=None, gt=0, le=60...` | +| `variables` | `dict[str, str] \| None` | `None` | diff --git a/docs/development/reference/python-sdk/platform/AuthorizationCodeRequest.mdx b/docs/development/reference/python-sdk/platform/AuthorizationCodeRequest.mdx new file mode 100644 index 0000000000..cefec4301b --- /dev/null +++ b/docs/development/reference/python-sdk/platform/AuthorizationCodeRequest.mdx @@ -0,0 +1,23 @@ +--- +title: "AuthorizationCodeRequest" +description: "Authorization request for code-based OAuth flow" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / AuthorizationCodeRequest +```py +from agentstack_sdk.platform import AuthorizationCodeRequest +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['code']` | `'code'` | +| `authorization_endpoint` | `AnyUrl` | โ€” | diff --git a/docs/development/reference/python-sdk/platform/BuildConfiguration.mdx b/docs/development/reference/python-sdk/platform/BuildConfiguration.mdx new file mode 100644 index 0000000000..1edab77fa6 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/BuildConfiguration.mdx @@ -0,0 +1,22 @@ +--- +title: "BuildConfiguration" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / BuildConfiguration +```py +from agentstack_sdk.platform import BuildConfiguration +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `dockerfile_path` | `Path \| None` | `Field(default=None, description='Path to...` | diff --git a/docs/development/reference/python-sdk/platform/BuildState.mdx b/docs/development/reference/python-sdk/platform/BuildState.mdx new file mode 100644 index 0000000000..8d23f639c2 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/BuildState.mdx @@ -0,0 +1,26 @@ +--- +title: "BuildState" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / BuildState +```py +from agentstack_sdk.platform import BuildState +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `MISSING` | โ€” | `'missing'` | +| `IN_PROGRESS` | โ€” | `'in_progress'` | +| `BUILD_COMPLETED` | โ€” | `'build_completed'` | +| `COMPLETED` | โ€” | `'completed'` | +| `FAILED` | โ€” | `'failed'` | diff --git a/docs/development/reference/python-sdk/platform/ChangeRoleResponse.mdx b/docs/development/reference/python-sdk/platform/ChangeRoleResponse.mdx new file mode 100644 index 0000000000..fe77cb0561 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/ChangeRoleResponse.mdx @@ -0,0 +1,23 @@ +--- +title: "ChangeRoleResponse" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / ChangeRoleResponse +```py +from agentstack_sdk.platform import ChangeRoleResponse +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `user_id` | `str` | โ€” | +| `new_role` | `UserRole` | โ€” | diff --git a/docs/development/reference/python-sdk/platform/Connector.mdx b/docs/development/reference/python-sdk/platform/Connector.mdx new file mode 100644 index 0000000000..89e3329ef2 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/Connector.mdx @@ -0,0 +1,234 @@ +--- +title: "Connector" +description: "Represents a configured connector instance" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / Connector +```py +from agentstack_sdk.platform import Connector +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `UUID` | โ€” | +| `url` | `AnyUrl` | โ€” | +| `state` | `ConnectorState` | โ€” | +| `auth_request` | `AuthorizationCodeRequest \| None` | `None` | +| `disconnect_reason` | `str \| None` | `None` | +| `metadata` | `Metadata \| None` | `None` | +| `created_at` | `AwareDatetime \| None` | `None` | +| `updated_at` | `AwareDatetime \| None` | `None` | +| `created_by` | `UUID \| None` | `None` | + +## Methods + + + + + + +Create a new connector. + +Args: + url: The URL of the connector/MCP server + client_id: OAuth client ID (optional) + client_secret: OAuth client secret (optional) + metadata: Additional metadata for the connector (optional) + match_preset: Whether to match against preset connectors + client: Optional PlatformClient instance + +Returns: + The created Connector instance +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `url` | `AnyUrl \| str` | โ€” | +| `client_id` | `str \| None` | `None` | +| `client_secret` | `str \| None` | `None` | +| `metadata` | `Metadata \| None` | `None` | +| `match_preset` | `bool` | `True` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Connector'` + + + +List all connectors for the current user. + +Returns: + A paginated list of Connector instances +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `PaginatedResult['Connector']` + + + +Read a specific connector by ID. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Connector'` + + + +Delete a connector. + +Args: + client: Optional PlatformClient instance +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `None` + + + +This is just a syntactic sugar for calling Connector.get(). +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Connector'` + + + +Wait for the connector to reach connected state. + +This is useful after calling connect() and opening the browser for OAuth. +It will poll the server until the connector reaches 'connected' state or +timeout is exceeded. + +Args: + poll_interval: Seconds between polls (default: 2) + client: Optional PlatformClient instance + +Returns: + Updated Connector instance when connected + +Raises: + TimeoutError: If connector doesn't reach connected state within timeout (300 seconds) +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `state` | `ConnectorState` | `ConnectorState.connected` | +| `poll_interval` | `int` | `1` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Connector'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `poll_interval` | `int` | `1` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `None` + + + +Connect a connector (establish authorization). + +If the connector requires OAuth authorization, this will automatically +open the browser with the authorization endpoint. + +Args: + redirect_url: OAuth redirect URL (optional) + access_token: OAuth access token (optional) + client: Optional PlatformClient instance + +Returns: + The updated Connector instance +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `redirect_url` | `AnyUrl \| str \| None` | `None` | +| `access_token` | `str \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Connector'` + + + +Disconnect a connector. + +Args: + client: Optional PlatformClient instance + +Returns: + The updated Connector instance +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Connector'` + + + +Proxy a streaming request through to the connector's MCP endpoint. + +This allows direct communication with the Model Context Protocol server +exposed by the connector. The response is streamed to avoid loading +large responses into memory. + +Args: + method: HTTP method (GET, POST, etc.) + headers: Optional HTTP headers to include + content: Optional request body content + client: Optional PlatformClient instance + +Yields: + Response content chunks as bytes +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `method` | `str` | โ€” | +| `headers` | `dict \| None` | `None` | +| `content` | `bytes \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `AsyncIterator[MCPProxyResponse]` + + + +List all available connector presets. + +Returns: + A paginated list of ConnectorPreset instances +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `PaginatedResult['ConnectorPreset']` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/ConnectorPreset.mdx b/docs/development/reference/python-sdk/platform/ConnectorPreset.mdx new file mode 100644 index 0000000000..67989e4af1 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/ConnectorPreset.mdx @@ -0,0 +1,23 @@ +--- +title: "ConnectorPreset" +description: "Represents a preset connector configuration" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / ConnectorPreset +```py +from agentstack_sdk.platform import ConnectorPreset +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `url` | `AnyUrl` | โ€” | +| `metadata` | `Metadata \| None` | `None` | diff --git a/docs/development/reference/python-sdk/platform/ConnectorState.mdx b/docs/development/reference/python-sdk/platform/ConnectorState.mdx new file mode 100644 index 0000000000..8e65c456ec --- /dev/null +++ b/docs/development/reference/python-sdk/platform/ConnectorState.mdx @@ -0,0 +1,25 @@ +--- +title: "ConnectorState" +description: "Enumeration of possible connector states" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / ConnectorState +```py +from agentstack_sdk.platform import ConnectorState +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `created` | โ€” | `'created'` | +| `auth_required` | โ€” | `'auth_required'` | +| `connected` | โ€” | `'connected'` | +| `disconnected` | โ€” | `'disconnected'` | diff --git a/docs/development/reference/python-sdk/platform/DiscoveryState.mdx b/docs/development/reference/python-sdk/platform/DiscoveryState.mdx new file mode 100644 index 0000000000..b45342f89b --- /dev/null +++ b/docs/development/reference/python-sdk/platform/DiscoveryState.mdx @@ -0,0 +1,25 @@ +--- +title: "DiscoveryState" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / DiscoveryState +```py +from agentstack_sdk.platform import DiscoveryState +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `PENDING` | โ€” | `'pending'` | +| `IN_PROGRESS` | โ€” | `'in_progress'` | +| `COMPLETED` | โ€” | `'completed'` | +| `FAILED` | โ€” | `'failed'` | diff --git a/docs/development/reference/python-sdk/platform/EnvVar.mdx b/docs/development/reference/python-sdk/platform/EnvVar.mdx new file mode 100644 index 0000000000..c95a5a2ee0 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/EnvVar.mdx @@ -0,0 +1,24 @@ +--- +title: "EnvVar" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / EnvVar +```py +from agentstack_sdk.platform import EnvVar +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `name` | `str` | โ€” | +| `description` | `str \| None` | `None` | +| `required` | `bool` | `False` | diff --git a/docs/development/reference/python-sdk/platform/ExtractedFileInfo.mdx b/docs/development/reference/python-sdk/platform/ExtractedFileInfo.mdx new file mode 100644 index 0000000000..f1e6675050 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/ExtractedFileInfo.mdx @@ -0,0 +1,23 @@ +--- +title: "ExtractedFileInfo" +description: "Information about an extracted file" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / ExtractedFileInfo +```py +from agentstack_sdk.platform import ExtractedFileInfo +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `file_id` | `str` | โ€” | +| `format` | `ExtractionFormatLiteral \| None` | โ€” | diff --git a/docs/development/reference/python-sdk/platform/Extraction.mdx b/docs/development/reference/python-sdk/platform/Extraction.mdx new file mode 100644 index 0000000000..c044a5c9f6 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/Extraction.mdx @@ -0,0 +1,31 @@ +--- +title: "Extraction" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / Extraction +```py +from agentstack_sdk.platform import Extraction +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `file_id` | `str` | โ€” | +| `extracted_files` | `builtins.list[ExtractedFileInfo]` | `pydantic.Field(default_factory=list)` | +| `status` | `Literal['pending', 'in_progress', 'completed', 'failed', 'cancelled']` | `'pending'` | +| `job_id` | `str \| None` | `None` | +| `error_message` | `str \| None` | `None` | +| `extraction_metadata` | `dict[str, typing.Any] \| None` | `None` | +| `started_at` | `AwareDatetime \| None` | `None` | +| `finished_at` | `AwareDatetime \| None` | `None` | +| `created_at` | `AwareDatetime` | โ€” | diff --git a/docs/development/reference/python-sdk/platform/File.mdx b/docs/development/reference/python-sdk/platform/File.mdx new file mode 100644 index 0000000000..bc8d0fef2a --- /dev/null +++ b/docs/development/reference/python-sdk/platform/File.mdx @@ -0,0 +1,164 @@ +--- +title: "File" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / File +```py +from agentstack_sdk.platform import File +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `filename` | `str` | โ€” | +| `content_type` | `str` | โ€” | +| `file_size_bytes` | `int` | โ€” | +| `created_at` | `AwareDatetime` | โ€” | +| `created_by` | `str` | โ€” | +| `file_type` | `Literal['user_upload', 'extracted_text']` | โ€” | +| `parent_file_id` | `str \| None` | `None` | +| `url` | `PlatformFileUrl` | โ€” | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `filename` | `str` | โ€” | +| `content` | `BinaryIO \| bytes` | โ€” | +| `content_type` | `str` | `'application/octet-stream'` | +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `'File'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `'File'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `stream` | `bool` | `False` | +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `AsyncIterator[LoadedFile]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `stream` | `bool` | `False` | +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `AsyncIterator[LoadedFile]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `stream` | `bool` | `False` | +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `AsyncIterator[LoadedFile]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `formats` | `builtins.list[ExtractionFormatLiteral] \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `Extraction` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `Extraction` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `None` + + + +**Returns:** `FilePart` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `content_type` | `str \| None` | `None` | +| `filename_search` | `str \| None` | `None` | +| `page_token` | `str \| None` | `None` | +| `limit` | `int \| None` | `None` | +| `order` | `Literal['asc'] \| Literal['desc'] \| None` | `'asc'` | +| `order_by` | `Literal['created_at'] \| Literal['filename'] \| Literal['file_size_bytes'] \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `PaginatedResult['File']` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/ListUserFeedbackResponse.mdx b/docs/development/reference/python-sdk/platform/ListUserFeedbackResponse.mdx new file mode 100644 index 0000000000..8d8d370be1 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/ListUserFeedbackResponse.mdx @@ -0,0 +1,17 @@ +--- +title: "ListUserFeedbackResponse" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / ListUserFeedbackResponse +```py +from agentstack_sdk.platform import ListUserFeedbackResponse +``` +**Bases:** `PaginatedResult[UserFeedback]` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/MCPProxyResponse.mdx b/docs/development/reference/python-sdk/platform/MCPProxyResponse.mdx new file mode 100644 index 0000000000..5ad418adcd --- /dev/null +++ b/docs/development/reference/python-sdk/platform/MCPProxyResponse.mdx @@ -0,0 +1,24 @@ +--- +title: "MCPProxyResponse" +description: "Response from an MCP proxy request with headers and streaming content" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / MCPProxyResponse +```py +from agentstack_sdk.platform import MCPProxyResponse +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `headers` | `Annotated[dict[str, str], Field(description='HTTP headers from the proxy response')]` | โ€” | +| `status_code` | `Annotated[int, Field(description='HTTP status code from the proxy response')]` | โ€” | +| `chunk` | `Annotated[bytes, Field(description='Bytes chunk from streaming response content')]` | โ€” | diff --git a/docs/development/reference/python-sdk/platform/ModelCapability.mdx b/docs/development/reference/python-sdk/platform/ModelCapability.mdx new file mode 100644 index 0000000000..61d86fdfab --- /dev/null +++ b/docs/development/reference/python-sdk/platform/ModelCapability.mdx @@ -0,0 +1,23 @@ +--- +title: "ModelCapability" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / ModelCapability +```py +from agentstack_sdk.platform import ModelCapability +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `LLM` | โ€” | `'llm'` | +| `EMBEDDING` | โ€” | `'embedding'` | diff --git a/docs/development/reference/python-sdk/platform/ModelProvider.mdx b/docs/development/reference/python-sdk/platform/ModelProvider.mdx new file mode 100644 index 0000000000..d15c389c3f --- /dev/null +++ b/docs/development/reference/python-sdk/platform/ModelProvider.mdx @@ -0,0 +1,97 @@ +--- +title: "ModelProvider" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / ModelProvider +```py +from agentstack_sdk.platform import ModelProvider +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `name` | `str \| None` | `None` | +| `description` | `str \| None` | `None` | +| `type` | `ModelProviderType` | โ€” | +| `base_url` | `HttpUrl` | โ€” | +| `watsonx_project_id` | `str \| None` | `None` | +| `watsonx_space_id` | `str \| None` | `None` | +| `created_at` | `AwareDatetime` | โ€” | +| `capabilities` | `set[ModelCapability]` | โ€” | +| `state` | `ModelProviderState` | โ€” | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `name` | `str \| None` | `None` | +| `description` | `str \| None` | `None` | +| `type` | `ModelProviderType` | โ€” | +| `base_url` | `str \| pydantic.HttpUrl` | โ€” | +| `watsonx_project_id` | `str \| None` | `None` | +| `watsonx_space_id` | `str \| None` | `None` | +| `api_key` | `str` | โ€” | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'ModelProvider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'ModelProvider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `capability` | `ModelCapability` | `ModelCapability.LLM` | +| `suggested_models` | `tuple[str, ...] \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `builtins.list[ModelWithScore]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `builtins.list['ModelProvider']` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/ModelProviderState.mdx b/docs/development/reference/python-sdk/platform/ModelProviderState.mdx new file mode 100644 index 0000000000..dd8123cbb7 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/ModelProviderState.mdx @@ -0,0 +1,23 @@ +--- +title: "ModelProviderState" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / ModelProviderState +```py +from agentstack_sdk.platform import ModelProviderState +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `ONLINE` | โ€” | `'online'` | +| `OFFLINE` | โ€” | `'offline'` | diff --git a/docs/development/reference/python-sdk/platform/ModelProviderType.mdx b/docs/development/reference/python-sdk/platform/ModelProviderType.mdx new file mode 100644 index 0000000000..a0696f09d8 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/ModelProviderType.mdx @@ -0,0 +1,42 @@ +--- +title: "ModelProviderType" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / ModelProviderType +```py +from agentstack_sdk.platform import ModelProviderType +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `ANTHROPIC` | โ€” | `'anthropic'` | +| `CEREBRAS` | โ€” | `'cerebras'` | +| `CHUTES` | โ€” | `'chutes'` | +| `COHERE` | โ€” | `'cohere'` | +| `DEEPSEEK` | โ€” | `'deepseek'` | +| `GEMINI` | โ€” | `'gemini'` | +| `GITHUB` | โ€” | `'github'` | +| `GROQ` | โ€” | `'groq'` | +| `WATSONX` | โ€” | `'watsonx'` | +| `JAN` | โ€” | `'jan'` | +| `MISTRAL` | โ€” | `'mistral'` | +| `MOONSHOT` | โ€” | `'moonshot'` | +| `NVIDIA` | โ€” | `'nvidia'` | +| `OLLAMA` | โ€” | `'ollama'` | +| `OPENAI` | โ€” | `'openai'` | +| `OPENROUTER` | โ€” | `'openrouter'` | +| `PERPLEXITY` | โ€” | `'perplexity'` | +| `TOGETHER` | โ€” | `'together'` | +| `VOYAGE` | โ€” | `'voyage'` | +| `RITS` | โ€” | `'rits'` | +| `OTHER` | โ€” | `'other'` | diff --git a/docs/development/reference/python-sdk/platform/ModelWithScore.mdx b/docs/development/reference/python-sdk/platform/ModelWithScore.mdx new file mode 100644 index 0000000000..03f8397f01 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/ModelWithScore.mdx @@ -0,0 +1,23 @@ +--- +title: "ModelWithScore" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / ModelWithScore +```py +from agentstack_sdk.platform import ModelWithScore +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `model_id` | `str` | โ€” | +| `score` | `float` | โ€” | diff --git a/docs/development/reference/python-sdk/platform/NoAction.mdx b/docs/development/reference/python-sdk/platform/NoAction.mdx new file mode 100644 index 0000000000..54fd0d77bd --- /dev/null +++ b/docs/development/reference/python-sdk/platform/NoAction.mdx @@ -0,0 +1,22 @@ +--- +title: "NoAction" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / NoAction +```py +from agentstack_sdk.platform import NoAction +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['no_action']` | `'no_action'` | diff --git a/docs/development/reference/python-sdk/platform/PlatformClient.mdx b/docs/development/reference/python-sdk/platform/PlatformClient.mdx new file mode 100644 index 0000000000..0720a12186 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/PlatformClient.mdx @@ -0,0 +1,59 @@ +--- +title: "PlatformClient" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / PlatformClient +```py +from agentstack_sdk.platform import PlatformClient +``` +**Bases:** `AsyncClient` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `context_id` | `str \| None` | `context_id` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `context_id` | `str \| None` | `None` | +| `auth_token` | `str \| Secret[str] \| None` | `None` | +| `auth` | `AuthTypes \| None` | `None` | +| `params` | `QueryParamTypes \| None` | `None` | +| `headers` | `HeaderTypes \| None` | `None` | +| `cookies` | `CookieTypes \| None` | `None` | +| `verify` | `SSLContext \| str \| bool` | `True` | +| `cert` | `CertTypes \| None` | `None` | +| `http1` | `bool` | `True` | +| `http2` | `bool` | `False` | +| `proxy` | `ProxyTypes \| None` | `None` | +| `mounts` | `None \| Mapping[str, AsyncBaseTransport \| None]` | `None` | +| `timeout` | `TimeoutTypes` | `DEFAULT_SDK_TIMEOUT` | +| `follow_redirects` | `bool` | `False` | +| `limits` | `Limits` | `DEFAULT_LIMITS` | +| `max_redirects` | `int` | `DEFAULT_MAX_REDIRECTS` | +| `event_hooks` | `None \| Mapping[str, list[EventHook]]` | `None` | +| `base_url` | `URL \| str` | `''` | +| `transport` | `AsyncBaseTransport \| None` | `None` | +| `trust_env` | `bool` | `True` | +| `default_encoding` | `str \| typing.Callable[[bytes], str]` | `'utf-8'` | + +**Returns:** `None` + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/Provider.mdx b/docs/development/reference/python-sdk/platform/Provider.mdx new file mode 100644 index 0000000000..8000cc631e --- /dev/null +++ b/docs/development/reference/python-sdk/platform/Provider.mdx @@ -0,0 +1,166 @@ +--- +title: "Provider" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / Provider +```py +from agentstack_sdk.platform import Provider +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `auto_stop_timeout` | `timedelta` | โ€” | +| `source` | `str` | โ€” | +| `origin` | `str` | โ€” | +| `version_info` | `VersionInfo` | `pydantic.Field(default_factory=VersionIn...` | +| `registry` | `str \| None` | `None` | +| `created_at` | `AwareDatetime` | โ€” | +| `updated_at` | `AwareDatetime` | โ€” | +| `last_active_at` | `AwareDatetime` | โ€” | +| `agent_card` | `AgentCard` | โ€” | +| `state` | `Literal['missing', 'starting', 'ready', 'running', 'error', 'online', 'offline']` | `'missing'` | +| `managed` | `bool` | โ€” | +| `last_error` | `ProviderErrorMessage \| None` | `None` | +| `created_by` | `UUID` | โ€” | +| `missing_configuration` | `builtins.list[EnvVar]` | `pydantic.Field(default_factory=list)` | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `location` | `str` | โ€” | +| `agent_card` | `AgentCard \| None` | `None` | +| `origin` | `str \| None` | `None` | +| `auto_stop_timeout` | `timedelta \| None` | `None` | +| `variables` | `dict[str, str] \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Provider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `location` | `str \| None` | `None` | +| `agent_card` | `AgentCard \| None` | `None` | +| `origin` | `str \| None` | `None` | +| `auto_stop_timeout` | `timedelta \| None` | `None` | +| `variables` | `dict[str, str] \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Provider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `location` | `str` | โ€” | +| `agent_card` | `AgentCard \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Provider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Provider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `location` | `str` | โ€” | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Provider'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `variables` | `dict[str, str \| None] \| dict[str, str]` | โ€” | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `AsyncIterator[dict[str, typing.Any]]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `dict[str, str]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `origin` | `str \| None` | `None` | +| `user_owned` | `bool \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `builtins.list['Provider']` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/ProviderBuild.mdx b/docs/development/reference/python-sdk/platform/ProviderBuild.mdx new file mode 100644 index 0000000000..73f1719480 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/ProviderBuild.mdx @@ -0,0 +1,108 @@ +--- +title: "ProviderBuild" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / ProviderBuild +```py +from agentstack_sdk.platform import ProviderBuild +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `created_at` | `AwareDatetime` | โ€” | +| `status` | `BuildState` | โ€” | +| `source` | `ResolvedGithubUrl` | โ€” | +| `destination` | `str` | โ€” | +| `provider_id` | `str \| None` | `None` | +| `build_configuration` | `BuildConfiguration \| None` | `None` | +| `created_by` | `str` | โ€” | +| `error_message` | `str \| None` | `None` | +| `provider_origin` | `str` | โ€” | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `location` | `str` | โ€” | +| `client` | `PlatformClient \| None` | `None` | +| `on_complete` | `OnCompleteAction \| None` | `None` | +| `build_configuration` | `BuildConfiguration \| None` | `None` | + +**Returns:** `'ProviderBuild'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `location` | `str` | โ€” | +| `client` | `PlatformClient \| None` | `None` | +| `on_complete` | `OnCompleteAction \| None` | `None` | + +**Returns:** `'ProviderBuild'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `AsyncIterator[dict[str, Any]]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'ProviderBuild'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `page_token` | `str \| None` | `None` | +| `limit` | `int \| None` | `None` | +| `order` | `Literal['asc'] \| Literal['desc'] \| None` | `'asc'` | +| `order_by` | `Literal['created_at'] \| Literal['updated_at'] \| None` | `None` | +| `user_owned` | `bool \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `PaginatedResult['ProviderBuild']` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/ProviderDiscovery.mdx b/docs/development/reference/python-sdk/platform/ProviderDiscovery.mdx new file mode 100644 index 0000000000..85c63bfe92 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/ProviderDiscovery.mdx @@ -0,0 +1,56 @@ +--- +title: "ProviderDiscovery" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / ProviderDiscovery +```py +from agentstack_sdk.platform import ProviderDiscovery +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `UUID` | โ€” | +| `created_at` | `AwareDatetime` | โ€” | +| `status` | `DiscoveryState` | โ€” | +| `docker_image` | `str` | โ€” | +| `created_by` | `UUID` | โ€” | +| `agent_card` | `AgentCard \| None` | `None` | +| `error_message` | `str \| None` | `None` | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `docker_image` | `str` | โ€” | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'ProviderDiscovery'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'ProviderDiscovery'` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/ProviderErrorMessage.mdx b/docs/development/reference/python-sdk/platform/ProviderErrorMessage.mdx new file mode 100644 index 0000000000..2d03c5dbf4 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/ProviderErrorMessage.mdx @@ -0,0 +1,22 @@ +--- +title: "ProviderErrorMessage" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / ProviderErrorMessage +```py +from agentstack_sdk.platform import ProviderErrorMessage +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `message` | `str` | โ€” | diff --git a/docs/development/reference/python-sdk/platform/SystemConfiguration.mdx b/docs/development/reference/python-sdk/platform/SystemConfiguration.mdx new file mode 100644 index 0000000000..0c708e787c --- /dev/null +++ b/docs/development/reference/python-sdk/platform/SystemConfiguration.mdx @@ -0,0 +1,57 @@ +--- +title: "SystemConfiguration" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / SystemConfiguration +```py +from agentstack_sdk.platform import SystemConfiguration +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `default_llm_model` | `str \| None` | `None` | +| `default_embedding_model` | `str \| None` | `None` | +| `updated_at` | `AwareDatetime` | โ€” | +| `created_by` | `str` | โ€” | + +## Methods + + + + + + +Get the current system configuration. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'SystemConfiguration'` + + + +Update the system configuration. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `default_llm_model` | `str \| None` | `None` | +| `default_embedding_model` | `str \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'SystemConfiguration'` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/UpdateProvider.mdx b/docs/development/reference/python-sdk/platform/UpdateProvider.mdx new file mode 100644 index 0000000000..f7196ea897 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/UpdateProvider.mdx @@ -0,0 +1,23 @@ +--- +title: "UpdateProvider" +description: "Will update provider specified by ID" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / UpdateProvider +```py +from agentstack_sdk.platform import UpdateProvider +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `type` | `Literal['update_provider']` | `'update_provider'` | +| `provider_id` | `UUID` | โ€” | diff --git a/docs/development/reference/python-sdk/platform/User.mdx b/docs/development/reference/python-sdk/platform/User.mdx new file mode 100644 index 0000000000..fd4e64aa93 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/User.mdx @@ -0,0 +1,67 @@ +--- +title: "User" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / User +```py +from agentstack_sdk.platform import User +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `role` | `UserRole` | โ€” | +| `email` | `str` | โ€” | +| `created_at` | `AwareDatetime` | โ€” | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'User'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `email` | `str \| None` | `None` | +| `limit` | `int` | `40` | +| `page_token` | `str \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `PaginatedResult['User']` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `user_id` | `str` | โ€” | +| `new_role` | `UserRole` | โ€” | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `ChangeRoleResponse` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/UserFeedback.mdx b/docs/development/reference/python-sdk/platform/UserFeedback.mdx new file mode 100644 index 0000000000..9af85fdad6 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/UserFeedback.mdx @@ -0,0 +1,51 @@ +--- +title: "UserFeedback" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / UserFeedback +```py +from agentstack_sdk.platform import UserFeedback +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `UUID` | โ€” | +| `provider_id` | `UUID` | โ€” | +| `task_id` | `UUID` | โ€” | +| `context_id` | `UUID` | โ€” | +| `rating` | `int` | โ€” | +| `message` | `str` | โ€” | +| `comment` | `str \| None` | `None` | +| `comment_tags` | `builtins.list[str] \| None` | `None` | +| `created_at` | `datetime` | โ€” | +| `agent_name` | `str` | โ€” | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `provider_id` | `str \| None` | `None` | +| `limit` | `int` | `50` | +| `after_cursor` | `str \| None` | `None` | +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'ListUserFeedbackResponse'` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/UserRole.mdx b/docs/development/reference/python-sdk/platform/UserRole.mdx new file mode 100644 index 0000000000..9b7dbaf7da --- /dev/null +++ b/docs/development/reference/python-sdk/platform/UserRole.mdx @@ -0,0 +1,24 @@ +--- +title: "UserRole" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / UserRole +```py +from agentstack_sdk.platform import UserRole +``` +**Bases:** `StrEnum` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `ADMIN` | โ€” | `'admin'` | +| `DEVELOPER` | โ€” | `'developer'` | +| `USER` | โ€” | `'user'` | diff --git a/docs/development/reference/python-sdk/platform/Variables.mdx b/docs/development/reference/python-sdk/platform/Variables.mdx new file mode 100644 index 0000000000..37e7ae2cdd --- /dev/null +++ b/docs/development/reference/python-sdk/platform/Variables.mdx @@ -0,0 +1,51 @@ +--- +title: "Variables" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / Variables +```py +from agentstack_sdk.platform import Variables +``` +**Bases:** `dict[str, str]` +## Methods + + + + + + +Save variables to the Agent Stack platform. Does not delete keys unless explicitly set to None. + +Can be used as a class method: Variables.save(\{"key": "value", ...\}) +...or as an instance method: variables.save() +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `None` + + + +Load variables from the Agent Stack platform. + +Can be used as a class method: variables = Variables.load() +...or as an instance method to update the instance: variables.load() +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | + +**Returns:** `'Variables'` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/VectorStore.mdx b/docs/development/reference/python-sdk/platform/VectorStore.mdx new file mode 100644 index 0000000000..ab263319f6 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/VectorStore.mdx @@ -0,0 +1,120 @@ +--- +title: "VectorStore" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / VectorStore +```py +from agentstack_sdk.platform import VectorStore +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `name` | `str \| None` | `None` | +| `model_id` | `str` | โ€” | +| `dimension` | `int` | โ€” | +| `created_at` | `AwareDatetime` | โ€” | +| `last_active_at` | `AwareDatetime` | โ€” | +| `created_by` | `str` | โ€” | +| `stats` | `VectorStoreStats \| None` | `None` | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `name` | `str` | โ€” | +| `dimension` | `int` | โ€” | +| `model_id` | `str` | โ€” | +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `'VectorStore'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `'VectorStore'` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `items` | `list[VectorStoreItem]` | โ€” | +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `query_vector` | `list[float]` | โ€” | +| `limit` | `int` | `10` | +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `list[VectorStoreSearchResult]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `list[VectorStoreDocument]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `document_id` | `str` | โ€” | +| `client` | `PlatformClient \| None` | `None` | +| `context_id` | `str \| None \| Literal['auto']` | `'auto'` | + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/VectorStoreDocument.mdx b/docs/development/reference/python-sdk/platform/VectorStoreDocument.mdx new file mode 100644 index 0000000000..56ef6c878b --- /dev/null +++ b/docs/development/reference/python-sdk/platform/VectorStoreDocument.mdx @@ -0,0 +1,26 @@ +--- +title: "VectorStoreDocument" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / VectorStoreDocument +```py +from agentstack_sdk.platform import VectorStoreDocument +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | โ€” | +| `vector_store_id` | `str` | โ€” | +| `file_id` | `str \| None` | `None` | +| `usage_bytes` | `int \| None` | `None` | +| `created_at` | `AwareDatetime` | โ€” | diff --git a/docs/development/reference/python-sdk/platform/VectorStoreItem.mdx b/docs/development/reference/python-sdk/platform/VectorStoreItem.mdx new file mode 100644 index 0000000000..43514db28b --- /dev/null +++ b/docs/development/reference/python-sdk/platform/VectorStoreItem.mdx @@ -0,0 +1,40 @@ +--- +title: "VectorStoreItem" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / VectorStoreItem +```py +from agentstack_sdk.platform import VectorStoreItem +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `id` | `str` | `pydantic.Field(default_factory=(lambda: ...` | +| `document_id` | `str` | โ€” | +| `document_type` | `Literal['platform_file', 'external'] \| None` | `'platform_file'` | +| `model_id` | `str \| typing.Literal['platform']` | `'platform'` | +| `text` | `str` | โ€” | +| `embedding` | `list[float]` | โ€” | +| `metadata` | `Metadata \| None` | `None` | + +## Methods + + + + + + +Validate that document_id is a valid UUID when document_type is platform_file. +**Returns:** `Self` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/VectorStoreSearchResult.mdx b/docs/development/reference/python-sdk/platform/VectorStoreSearchResult.mdx new file mode 100644 index 0000000000..d18c68b8ac --- /dev/null +++ b/docs/development/reference/python-sdk/platform/VectorStoreSearchResult.mdx @@ -0,0 +1,23 @@ +--- +title: "VectorStoreSearchResult" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / VectorStoreSearchResult +```py +from agentstack_sdk.platform import VectorStoreSearchResult +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `item` | `VectorStoreItem` | โ€” | +| `score` | `float` | โ€” | diff --git a/docs/development/reference/python-sdk/platform/VectorStoreStats.mdx b/docs/development/reference/python-sdk/platform/VectorStoreStats.mdx new file mode 100644 index 0000000000..652bf74471 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/VectorStoreStats.mdx @@ -0,0 +1,23 @@ +--- +title: "VectorStoreStats" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / VectorStoreStats +```py +from agentstack_sdk.platform import VectorStoreStats +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `usage_bytes` | `int` | โ€” | +| `num_documents` | `int` | โ€” | diff --git a/docs/development/reference/python-sdk/platform/VersionInfo.mdx b/docs/development/reference/python-sdk/platform/VersionInfo.mdx new file mode 100644 index 0000000000..60423bc178 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/VersionInfo.mdx @@ -0,0 +1,23 @@ +--- +title: "VersionInfo" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / VersionInfo +```py +from agentstack_sdk.platform import VersionInfo +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `docker` | `ResolvedDockerImageID \| None` | `None` | +| `github` | `ResolvedGithubUrl \| None` | `None` | diff --git a/docs/development/reference/python-sdk/platform/get_platform_client.mdx b/docs/development/reference/python-sdk/platform/get_platform_client.mdx new file mode 100644 index 0000000000..c3d116a510 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/get_platform_client.mdx @@ -0,0 +1,16 @@ +--- +title: "get_platform_client" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / get_platform_client +```py +from agentstack_sdk.platform import get_platform_client +``` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/set_platform_client.mdx b/docs/development/reference/python-sdk/platform/set_platform_client.mdx new file mode 100644 index 0000000000..a23cd35a82 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/set_platform_client.mdx @@ -0,0 +1,16 @@ +--- +title: "set_platform_client" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / set_platform_client +```py +from agentstack_sdk.platform import set_platform_client +``` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/use_platform_client.mdx b/docs/development/reference/python-sdk/platform/use_platform_client.mdx new file mode 100644 index 0000000000..4ebdb8cefa --- /dev/null +++ b/docs/development/reference/python-sdk/platform/use_platform_client.mdx @@ -0,0 +1,16 @@ +--- +title: "use_platform_client" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / use_platform_client +```py +from agentstack_sdk.platform import use_platform_client +``` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/platform/uuid_to_str.mdx b/docs/development/reference/python-sdk/platform/uuid_to_str.mdx new file mode 100644 index 0000000000..65751f6685 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/uuid_to_str.mdx @@ -0,0 +1,27 @@ +--- +title: "uuid_to_str" +description: "Convert UUID or str to str" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / uuid_to_str +```py +from agentstack_sdk.platform import uuid_to_str +``` +Convert UUID or str to str. +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `v` | `UUID \| str` | โ€” | + +## Returns + +`str` + diff --git a/docs/development/reference/python-sdk/platform/validate_metadata.mdx b/docs/development/reference/python-sdk/platform/validate_metadata.mdx new file mode 100644 index 0000000000..4f8bce17a0 --- /dev/null +++ b/docs/development/reference/python-sdk/platform/validate_metadata.mdx @@ -0,0 +1,26 @@ +--- +title: "validate_metadata" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Platform](/development/reference/python-sdk/platform) / validate_metadata +```py +from agentstack_sdk.platform import validate_metadata +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `metadata` | `dict[str, str \| None]` | โ€” | + +## Returns + +`dict[str, str | None]` + diff --git a/docs/development/reference/python-sdk/server-middleware-platform-auth-backend.mdx b/docs/development/reference/python-sdk/server-middleware-platform-auth-backend.mdx new file mode 100644 index 0000000000..99ea870a9a --- /dev/null +++ b/docs/development/reference/python-sdk/server-middleware-platform-auth-backend.mdx @@ -0,0 +1,32 @@ +--- +title: "Server Middleware Platform Auth Backend" +description: "Core server for creating and running A2A-compatible agents" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / Server Middleware Platform Auth Backend + +```py +from agentstack_sdk.server.middleware.platform_auth_backend import PlatformAuthBackend, PlatformAuthenticatedUser, discover_jwks +``` +--- +### Classes + + + + + + + +### Functions + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server-middleware-platform-auth-backend/PlatformAuthBackend.mdx b/docs/development/reference/python-sdk/server-middleware-platform-auth-backend/PlatformAuthBackend.mdx new file mode 100644 index 0000000000..2a1daf0d37 --- /dev/null +++ b/docs/development/reference/python-sdk/server-middleware-platform-auth-backend/PlatformAuthBackend.mdx @@ -0,0 +1,61 @@ +--- +title: "PlatformAuthBackend" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / [Server Middleware Platform Auth Backend](/development/reference/python-sdk/server-middleware-platform-auth-backend) / PlatformAuthBackend +```py +from agentstack_sdk.server.middleware.platform_auth_backend import PlatformAuthBackend +``` +**Bases:** `SdkAuthenticationBackend` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `skip_audience_validation` | `bool` | `skip_audience_validation if skip_audienc...` | +| `security` | `HTTPBearer` | `HTTPBearer(auto_error=False)` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `public_url` | `str \| None` | `None` | +| `skip_audience_validation` | `bool \| None` | `None` | + +**Returns:** `None` + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `conn` | `HTTPConnection` | โ€” | + +**Returns:** `tuple[AuthCredentials, BaseUser] | None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `agent_card` | `AgentCard` | โ€” | + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server-middleware-platform-auth-backend/PlatformAuthenticatedUser.mdx b/docs/development/reference/python-sdk/server-middleware-platform-auth-backend/PlatformAuthenticatedUser.mdx new file mode 100644 index 0000000000..d2f53dae25 --- /dev/null +++ b/docs/development/reference/python-sdk/server-middleware-platform-auth-backend/PlatformAuthenticatedUser.mdx @@ -0,0 +1,42 @@ +--- +title: "PlatformAuthenticatedUser" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / [Server Middleware Platform Auth Backend](/development/reference/python-sdk/server-middleware-platform-auth-backend) / PlatformAuthenticatedUser +```py +from agentstack_sdk.server.middleware.platform_auth_backend import PlatformAuthenticatedUser +``` +**Bases:** `User , BaseUser` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `claims` | `dict[str, JsonValue]` | `claims` | +| `auth_token` | `Secret[str]` | `Secret(auth_token)` | +| `is_authenticated` | `bool` | โ€” | +| `user_name` | `str` | โ€” | +| `display_name` | `str` | โ€” | +| `identity` | `str` | โ€” | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `claims` | `dict[str, JsonValue]` | โ€” | +| `auth_token` | `str` | โ€” | + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server-middleware-platform-auth-backend/discover_jwks.mdx b/docs/development/reference/python-sdk/server-middleware-platform-auth-backend/discover_jwks.mdx new file mode 100644 index 0000000000..b69853af31 --- /dev/null +++ b/docs/development/reference/python-sdk/server-middleware-platform-auth-backend/discover_jwks.mdx @@ -0,0 +1,21 @@ +--- +title: "discover_jwks" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / [Server Middleware Platform Auth Backend](/development/reference/python-sdk/server-middleware-platform-auth-backend) / discover_jwks +```py +from agentstack_sdk.server.middleware.platform_auth_backend import discover_jwks +``` +Labels: `async` +## Returns + +`KeySet` + diff --git a/docs/development/reference/python-sdk/server-store-memory-context-store.mdx b/docs/development/reference/python-sdk/server-store-memory-context-store.mdx new file mode 100644 index 0000000000..18c4db5f7e --- /dev/null +++ b/docs/development/reference/python-sdk/server-store-memory-context-store.mdx @@ -0,0 +1,26 @@ +--- +title: "Server Memory Context Store" +description: "In-memory context store for the server" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / Server Memory Context Store + +```py +from agentstack_sdk.server.store.memory_context_store import InMemoryContextStore, MemoryContextStoreInstance +``` +--- +### Classes + + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server-store-memory-context-store/InMemoryContextStore.mdx b/docs/development/reference/python-sdk/server-store-memory-context-store/InMemoryContextStore.mdx new file mode 100644 index 0000000000..a2473fc252 --- /dev/null +++ b/docs/development/reference/python-sdk/server-store-memory-context-store/InMemoryContextStore.mdx @@ -0,0 +1,47 @@ +--- +title: "InMemoryContextStore" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / [Server Memory Context Store](/development/reference/python-sdk/server-store-memory-context-store) / InMemoryContextStore +```py +from agentstack_sdk.server.store.memory_context_store import InMemoryContextStore +``` +**Bases:** `ContextStore` +## Methods + + + + +Initialize in-memory context store with TTL cache. + +Args: + max_contexts: Maximum number of contexts to keep in memory + ttl_seconds: Time-to-live for context instances in seconds (default: 1 hour) +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `max_contexts` | `int` | `1000` | +| `context_ttl` | `timedelta` | `timedelta(hours=1)` | + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `context_id` | `str` | โ€” | +| `initialized_dependencies` | `list[Dependency]` | โ€” | + +**Returns:** `ContextStoreInstance` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server-store-memory-context-store/MemoryContextStoreInstance.mdx b/docs/development/reference/python-sdk/server-store-memory-context-store/MemoryContextStoreInstance.mdx new file mode 100644 index 0000000000..bbdfe80502 --- /dev/null +++ b/docs/development/reference/python-sdk/server-store-memory-context-store/MemoryContextStoreInstance.mdx @@ -0,0 +1,66 @@ +--- +title: "MemoryContextStoreInstance" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / [Server Memory Context Store](/development/reference/python-sdk/server-store-memory-context-store) / MemoryContextStoreInstance +```py +from agentstack_sdk.server.store.memory_context_store import MemoryContextStoreInstance +``` +**Bases:** `ContextStoreInstance` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `context_id` | โ€” | `context_id` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `context_id` | `str` | โ€” | + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `load_history_items` | `bool` | `False` | + +**Returns:** `AsyncIterator[ContextHistoryItem | Message | Artifact]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `data` | `Message \| Artifact` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `from_id` | `UUID` | โ€” | + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server-store-platform-context-store.mdx b/docs/development/reference/python-sdk/server-store-platform-context-store.mdx new file mode 100644 index 0000000000..c5eebbd1c7 --- /dev/null +++ b/docs/development/reference/python-sdk/server-store-platform-context-store.mdx @@ -0,0 +1,26 @@ +--- +title: "Server Platform Context Store" +description: "Platform context store for the server" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / Server Platform Context Store + +```py +from agentstack_sdk.server.store.platform_context_store import PlatformContextStore, PlatformContextStoreInstance +``` +--- +### Classes + + + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server-store-platform-context-store/PlatformContextStore.mdx b/docs/development/reference/python-sdk/server-store-platform-context-store/PlatformContextStore.mdx new file mode 100644 index 0000000000..bf27c9eb7f --- /dev/null +++ b/docs/development/reference/python-sdk/server-store-platform-context-store/PlatformContextStore.mdx @@ -0,0 +1,44 @@ +--- +title: "PlatformContextStore" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / [Server Platform Context Store](/development/reference/python-sdk/server-store-platform-context-store) / PlatformContextStore +```py +from agentstack_sdk.server.store.platform_context_store import PlatformContextStore +``` +**Bases:** `ContextStore` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `dependencies` | `dict[str, Depends]` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `context_id` | `str` | โ€” | +| `initialized_dependencies` | `list[Dependency]` | โ€” | + +**Returns:** `ContextStoreInstance` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server-store-platform-context-store/PlatformContextStoreInstance.mdx b/docs/development/reference/python-sdk/server-store-platform-context-store/PlatformContextStoreInstance.mdx new file mode 100644 index 0000000000..77e512c3b9 --- /dev/null +++ b/docs/development/reference/python-sdk/server-store-platform-context-store/PlatformContextStoreInstance.mdx @@ -0,0 +1,61 @@ +--- +title: "PlatformContextStoreInstance" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / [Server Platform Context Store](/development/reference/python-sdk/server-store-platform-context-store) / PlatformContextStoreInstance +```py +from agentstack_sdk.server.store.platform_context_store import PlatformContextStoreInstance +``` +**Bases:** `ContextStoreInstance` +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `context_id` | `str` | โ€” | +| `platform_extension` | `PlatformApiExtensionServer` | โ€” | + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `load_history_items` | `bool` | `False` | + +**Returns:** `AsyncIterator[ContextHistoryItem | Message | Artifact]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `data` | `Message \| Artifact` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `from_id` | `UUID` | โ€” | + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server.mdx b/docs/development/reference/python-sdk/server.mdx new file mode 100644 index 0000000000..7e9cbc0339 --- /dev/null +++ b/docs/development/reference/python-sdk/server.mdx @@ -0,0 +1,36 @@ +--- +title: "Server" +description: "Core server for creating and running A2A-compatible agents" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} + +```py +from agentstack_sdk.server import Server +``` +## Submodules + + + + Platform authentication middleware + + + Context management using in-memory storage + + + Context management using platform storage + + +--- +### Classes + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/Agent.mdx b/docs/development/reference/python-sdk/server/Agent.mdx new file mode 100644 index 0000000000..282c491d02 --- /dev/null +++ b/docs/development/reference/python-sdk/server/Agent.mdx @@ -0,0 +1,69 @@ +--- +title: "agent" +description: "Create an Agent function" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / agent +```py +from agentstack_sdk.server import agent +``` +Create an Agent function. + +:param name: A human-readable name for the agent (inferred from the function name if not provided). +:param description: A human-readable description of the agent, assisting users and other agents in understanding + its purpose (inferred from the function docstring if not provided). +:param additional_interfaces: A list of additional supported interfaces (transport and URL combinations). + A client can use any of these to communicate with the agent. +:param capabilities: A declaration of optional capabilities supported by the agent. +:param default_input_modes: Default set of supported input MIME types for all skills, which can be overridden on + a per-skill basis. +:param default_output_modes: Default set of supported output MIME types for all skills, which can be overridden on + a per-skill basis. +:param detail: Agent Stack SDK details extending the agent metadata +:param documentation_url: An optional URL to the agent's documentation. +:param extensions: Agent Stack SDK extensions to apply to the agent. +:param icon_url: An optional URL to an icon for the agent. +:param preferred_transport: The transport protocol for the preferred endpoint. Defaults to 'JSONRPC' if not + specified. +:param provider: Information about the agent's service provider. +:param security: A list of security requirement objects that apply to all agent interactions. Each object lists + security schemes that can be used. Follows the OpenAPI 3.0 Security Requirement Object. +:param security_schemes: A declaration of the security schemes available to authorize requests. The key is the + scheme name. Follows the OpenAPI 3.0 Security Scheme Object. +:param skills: The set of skills, or distinct capabilities, that the agent can perform. +:param supports_authenticated_extended_card: If true, the agent can provide an extended agent card with additional + details to authenticated users. Defaults to false. +:param version: The agent's own version number. The format is defined by the provider. +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `name` | `str \| None` | `None` | +| `description` | `str \| None` | `None` | +| `url` | `str` | `'http://invalid'` | +| `additional_interfaces` | `list[AgentInterface] \| None` | `None` | +| `capabilities` | `AgentCapabilities \| None` | `None` | +| `default_input_modes` | `list[str] \| None` | `None` | +| `default_output_modes` | `list[str] \| None` | `None` | +| `detail` | `AgentDetail \| None` | `None` | +| `documentation_url` | `str \| None` | `None` | +| `icon_url` | `str \| None` | `None` | +| `preferred_transport` | `str \| None` | `None` | +| `provider` | `AgentProvider \| None` | `None` | +| `security` | `list[dict[str, list[str]]] \| None` | `None` | +| `security_schemes` | `dict[str, SecurityScheme] \| None` | `None` | +| `skills` | `list[AgentSkill] \| None` | `None` | +| `supports_authenticated_extended_card` | `bool \| None` | `None` | +| `version` | `str \| None` | `None` | + +## Returns + +`Callable[[OriginalFnType], AgentFactory]` + diff --git a/docs/development/reference/python-sdk/server/AgentExecuteFn.mdx b/docs/development/reference/python-sdk/server/AgentExecuteFn.mdx new file mode 100644 index 0000000000..357031ad88 --- /dev/null +++ b/docs/development/reference/python-sdk/server/AgentExecuteFn.mdx @@ -0,0 +1,17 @@ +--- +title: "AgentExecuteFn" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / AgentExecuteFn +```py +from agentstack_sdk.server import AgentExecuteFn +``` +**Bases:** `Protocol` \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/AgentRun.mdx b/docs/development/reference/python-sdk/server/AgentRun.mdx new file mode 100644 index 0000000000..fb26872b23 --- /dev/null +++ b/docs/development/reference/python-sdk/server/AgentRun.mdx @@ -0,0 +1,69 @@ +--- +title: "AgentRun" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / AgentRun +```py +from agentstack_sdk.server import AgentRun +``` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `last_invocation` | `datetime` | `datetime.now()` | +| `resume_queue` | `asyncio.Queue[RunYieldResume]` | `asyncio.Queue()` | +| `run_context` | `RunContext` | โ€” | +| `request_context` | `RequestContext` | โ€” | +| `task_updater` | `TaskUpdater` | โ€” | +| `done` | `bool` | โ€” | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `agent` | `Agent` | โ€” | +| `context_store` | `ContextStore` | โ€” | +| `on_finish` | `Callable[[], None] \| None` | `None` | + +**Returns:** `None` + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `request_context` | `RequestContext` | โ€” | +| `event_queue` | `EventQueue` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `request_context` | `RequestContext` | โ€” | +| `event_queue` | `EventQueue` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `request_context` | `RequestContext` | โ€” | +| `event_queue` | `EventQueue` | โ€” | + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/ContextStore.mdx b/docs/development/reference/python-sdk/server/ContextStore.mdx new file mode 100644 index 0000000000..6b3147a1e1 --- /dev/null +++ b/docs/development/reference/python-sdk/server/ContextStore.mdx @@ -0,0 +1,44 @@ +--- +title: "ContextStore" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / ContextStore +```py +from agentstack_sdk.server import ContextStore +``` +**Bases:** `ABC` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `dependencies` | `dict[str, Depends]` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `context_id` | `str` | โ€” | +| `initialized_dependencies` | `list[Dependency]` | โ€” | + +**Returns:** `ContextStoreInstance` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/ContextStoreInstance.mdx b/docs/development/reference/python-sdk/server/ContextStoreInstance.mdx new file mode 100644 index 0000000000..0d0d789783 --- /dev/null +++ b/docs/development/reference/python-sdk/server/ContextStoreInstance.mdx @@ -0,0 +1,53 @@ +--- +title: "ContextStoreInstance" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / ContextStoreInstance +```py +from agentstack_sdk.server import ContextStoreInstance +``` +**Bases:** `Protocol` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `load_history_items` | `bool` | `False` | + +**Returns:** `AsyncIterator[ContextHistoryItem | Message | Artifact]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `data` | `Message \| Artifact` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `from_id` | `UUID` | โ€” | + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/Depends.mdx b/docs/development/reference/python-sdk/server/Depends.mdx new file mode 100644 index 0000000000..b9d2401131 --- /dev/null +++ b/docs/development/reference/python-sdk/server/Depends.mdx @@ -0,0 +1,35 @@ +--- +title: "Depends" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / Depends +```py +from agentstack_sdk.server import Depends +``` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `extension` | `BaseExtensionServer[Any, Any] \| None` | `None` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `dependency` | `Annotated[Dependency, Doc('\n A "dependable" callable (like a function).\n Don\'t call it directly, Agent Stack SDK will call it for you, just pass the object directly.\n ')]` | โ€” | + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/Executor.mdx b/docs/development/reference/python-sdk/server/Executor.mdx new file mode 100644 index 0000000000..7414df2b97 --- /dev/null +++ b/docs/development/reference/python-sdk/server/Executor.mdx @@ -0,0 +1,59 @@ +--- +title: "Executor" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / Executor +```py +from agentstack_sdk.server import Executor +``` +**Bases:** `AgentExecutor` +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `agent` | `Agent` | โ€” | +| `queue_manager` | `QueueManager` | โ€” | +| `context_store` | `ContextStore` | โ€” | +| `task_timeout` | `timedelta` | โ€” | +| `task_store` | `TaskStore` | โ€” | + +**Returns:** `None` + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `context` | `RequestContext` | โ€” | +| `event_queue` | `EventQueue` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `context` | `RequestContext` | โ€” | +| `event_queue` | `EventQueue` | โ€” | + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/InMemoryContextStore.mdx b/docs/development/reference/python-sdk/server/InMemoryContextStore.mdx new file mode 100644 index 0000000000..10723f95b7 --- /dev/null +++ b/docs/development/reference/python-sdk/server/InMemoryContextStore.mdx @@ -0,0 +1,47 @@ +--- +title: "InMemoryContextStore" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / InMemoryContextStore +```py +from agentstack_sdk.server import InMemoryContextStore +``` +**Bases:** `ContextStore` +## Methods + + + + +Initialize in-memory context store with TTL cache. + +Args: + max_contexts: Maximum number of contexts to keep in memory + ttl_seconds: Time-to-live for context instances in seconds (default: 1 hour) +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `max_contexts` | `int` | `1000` | +| `context_ttl` | `timedelta` | `timedelta(hours=1)` | + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `context_id` | `str` | โ€” | +| `initialized_dependencies` | `list[Dependency]` | โ€” | + +**Returns:** `ContextStoreInstance` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/MemoryContextStoreInstance.mdx b/docs/development/reference/python-sdk/server/MemoryContextStoreInstance.mdx new file mode 100644 index 0000000000..d12e3ec8c1 --- /dev/null +++ b/docs/development/reference/python-sdk/server/MemoryContextStoreInstance.mdx @@ -0,0 +1,66 @@ +--- +title: "MemoryContextStoreInstance" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / MemoryContextStoreInstance +```py +from agentstack_sdk.server import MemoryContextStoreInstance +``` +**Bases:** `ContextStoreInstance` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `context_id` | โ€” | `context_id` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `context_id` | `str` | โ€” | + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `load_history_items` | `bool` | `False` | + +**Returns:** `AsyncIterator[ContextHistoryItem | Message | Artifact]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `data` | `Message \| Artifact` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `from_id` | `UUID` | โ€” | + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/PlatformAuthBackend.mdx b/docs/development/reference/python-sdk/server/PlatformAuthBackend.mdx new file mode 100644 index 0000000000..ef88306638 --- /dev/null +++ b/docs/development/reference/python-sdk/server/PlatformAuthBackend.mdx @@ -0,0 +1,61 @@ +--- +title: "PlatformAuthBackend" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / PlatformAuthBackend +```py +from agentstack_sdk.server import PlatformAuthBackend +``` +**Bases:** `SdkAuthenticationBackend` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `skip_audience_validation` | `bool` | `skip_audience_validation if skip_audienc...` | +| `security` | `HTTPBearer` | `HTTPBearer(auto_error=False)` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `public_url` | `str \| None` | โ€” | +| `skip_audience_validation` | `bool \| None` | โ€” | + +**Returns:** `None` + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `conn` | `HTTPConnection` | โ€” | + +**Returns:** `tuple[AuthCredentials, BaseUser] | None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `agent_card` | `AgentCard` | โ€” | + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/PlatformAuthenticatedUser.mdx b/docs/development/reference/python-sdk/server/PlatformAuthenticatedUser.mdx new file mode 100644 index 0000000000..e3432fb7e7 --- /dev/null +++ b/docs/development/reference/python-sdk/server/PlatformAuthenticatedUser.mdx @@ -0,0 +1,42 @@ +--- +title: "PlatformAuthenticatedUser" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / PlatformAuthenticatedUser +```py +from agentstack_sdk.server import PlatformAuthenticatedUser +``` +**Bases:** `User , BaseUser` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `claims` | `dict[str, JsonValue]` | `claims` | +| `auth_token` | `Secret[str]` | `Secret(auth_token)` | +| `is_authenticated` | `bool` | โ€” | +| `user_name` | `str` | โ€” | +| `display_name` | `str` | โ€” | +| `identity` | `str` | โ€” | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `claims` | `dict[str, JsonValue]` | โ€” | +| `auth_token` | `str` | โ€” | + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/PlatformContextStore.mdx b/docs/development/reference/python-sdk/server/PlatformContextStore.mdx new file mode 100644 index 0000000000..6efc544fa4 --- /dev/null +++ b/docs/development/reference/python-sdk/server/PlatformContextStore.mdx @@ -0,0 +1,44 @@ +--- +title: "PlatformContextStore" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / PlatformContextStore +```py +from agentstack_sdk.server import PlatformContextStore +``` +**Bases:** `ContextStore` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `dependencies` | `dict[str, Depends]` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `context_id` | `str` | โ€” | +| `initialized_dependencies` | `list[Dependency]` | โ€” | + +**Returns:** `ContextStoreInstance` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/PlatformContextStoreInstance.mdx b/docs/development/reference/python-sdk/server/PlatformContextStoreInstance.mdx new file mode 100644 index 0000000000..efd1e75d80 --- /dev/null +++ b/docs/development/reference/python-sdk/server/PlatformContextStoreInstance.mdx @@ -0,0 +1,61 @@ +--- +title: "PlatformContextStoreInstance" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / PlatformContextStoreInstance +```py +from agentstack_sdk.server import PlatformContextStoreInstance +``` +**Bases:** `ContextStoreInstance` +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `context_id` | `str` | โ€” | +| `platform_extension` | `PlatformApiExtensionServer` | โ€” | + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `load_history_items` | `bool` | `False` | + +**Returns:** `AsyncIterator[ContextHistoryItem | Message | Artifact]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `data` | `Message \| Artifact` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `from_id` | `UUID` | โ€” | + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/RunContext.mdx b/docs/development/reference/python-sdk/server/RunContext.mdx new file mode 100644 index 0000000000..ec613a846f --- /dev/null +++ b/docs/development/reference/python-sdk/server/RunContext.mdx @@ -0,0 +1,84 @@ +--- +title: "RunContext" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / RunContext +```py +from agentstack_sdk.server import RunContext +``` +**Bases:** `BaseModel` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `configuration` | `MessageSendConfiguration \| None` | `None` | +| `task_id` | `str` | โ€” | +| `context_id` | `str` | โ€” | +| `current_task` | `Task \| None` | `None` | +| `related_tasks` | `list[Task] \| None` | `None` | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `data` | `Message \| Artifact` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `load_history_items` | `bool` | `False` | + +**Returns:** `AsyncGenerator[ContextHistoryItem | Message | Artifact]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `from_id` | `UUID` | โ€” | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `value` | `RunYield` | โ€” | + +**Returns:** `RunYieldResume` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `value` | `RunYield` | โ€” | + +**Returns:** `RunYieldResume` + + + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/Server.mdx b/docs/development/reference/python-sdk/server/Server.mdx new file mode 100644 index 0000000000..6013f687af --- /dev/null +++ b/docs/development/reference/python-sdk/server/Server.mdx @@ -0,0 +1,127 @@ +--- +title: "Server" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / Server +```py +from agentstack_sdk.server import Server +``` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `server` | `uvicorn.Server \| None` | `None` | +| `should_exit` | `bool` | โ€” | + +## Methods + + + + +**Returns:** `None` + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `args` | โ€” | `()` | +| `kwargs` | โ€” | `{}` | + +**Returns:** `Callable` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `configure_logger` | `bool` | `True` | +| `configure_telemetry` | `bool` | `False` | +| `self_registration` | `bool` | `True` | +| `self_registration_id` | `str \| None` | `None` | +| `task_store` | `TaskStore \| None` | `None` | +| `context_store` | `ContextStore \| None` | `None` | +| `queue_manager` | `QueueManager \| None` | `None` | +| `task_timeout` | `timedelta` | `timedelta(minutes=10)` | +| `push_config_store` | `PushNotificationConfigStore \| None` | `None` | +| `push_sender` | `PushNotificationSender \| None` | `None` | +| `request_context_builder` | `RequestContextBuilder \| None` | `None` | +| `host` | `str` | `'127.0.0.1'` | +| `port` | `int` | `10000` | +| `url` | `str \| None` | `None` | +| `uds` | `str \| None` | `None` | +| `fd` | `int \| None` | `None` | +| `loop` | `Literal['none', 'auto', 'asyncio', 'uvloop']` | `'auto'` | +| `http` | `type[asyncio.Protocol] \| uvicorn_config.HTTPProtocolType` | `'auto'` | +| `ws` | `type[asyncio.Protocol] \| uvicorn_config.WSProtocolType` | `'auto'` | +| `ws_max_size` | `int` | `16 * 1024 * 1024` | +| `ws_max_queue` | `int` | `32` | +| `ws_ping_interval` | `float \| None` | `20.0` | +| `ws_ping_timeout` | `float \| None` | `20.0` | +| `ws_per_message_deflate` | `bool` | `True` | +| `lifespan` | `uvicorn_config.LifespanType` | `'auto'` | +| `lifespan_fn` | `Lifespan[AppType] \| None` | `None` | +| `env_file` | `str \| os.PathLike[str] \| None` | `None` | +| `log_config` | `dict[str, Any] \| str \| RawConfigParser \| IO[Any] \| None` | `uvicorn_config.LOGGING_CONFIG` | +| `log_level` | `str \| int \| None` | `None` | +| `access_log` | `bool` | `True` | +| `use_colors` | `bool \| None` | `None` | +| `interface` | `uvicorn_config.InterfaceType` | `'auto'` | +| `reload` | `bool` | `False` | +| `reload_dirs` | `list[str] \| str \| None` | `None` | +| `reload_delay` | `float` | `0.25` | +| `reload_includes` | `list[str] \| str \| None` | `None` | +| `reload_excludes` | `list[str] \| str \| None` | `None` | +| `workers` | `int \| None` | `None` | +| `proxy_headers` | `bool` | `True` | +| `server_header` | `bool` | `True` | +| `date_header` | `bool` | `True` | +| `forwarded_allow_ips` | `list[str] \| str \| None` | `None` | +| `root_path` | `str` | `''` | +| `limit_concurrency` | `int \| None` | `None` | +| `limit_max_requests` | `int \| None` | `None` | +| `backlog` | `int` | `2048` | +| `timeout_keep_alive` | `int` | `5` | +| `timeout_notify` | `int` | `30` | +| `timeout_worker_healthcheck` | `int` | `5` | +| `timeout_graceful_shutdown` | `int \| None` | `None` | +| `callback_notify` | `Callable[..., Awaitable[None]] \| None` | `None` | +| `ssl_keyfile` | `str \| os.PathLike[str] \| None` | `None` | +| `ssl_certfile` | `str \| os.PathLike[str] \| None` | `None` | +| `ssl_keyfile_password` | `str \| None` | `None` | +| `ssl_version` | `int` | `uvicorn_config.SSL_PROTOCOL_VERSION` | +| `ssl_cert_reqs` | `int` | `CERT_NONE` | +| `ssl_ca_certs` | `str \| None` | `None` | +| `ssl_ciphers` | `str` | `'TLSv1'` | +| `headers` | `list[tuple[str, str]] \| None` | `None` | +| `factory` | `bool` | `False` | +| `h11_max_incomplete_event_size` | `int \| None` | `None` | +| `self_registration_client_factory` | `Callable[[], PlatformClient] \| None` | `None` | +| `auth_backend` | `SdkAuthenticationBackend \| None` | `None` | + +**Returns:** `None` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `args` | โ€” | `()` | +| `kwargs` | โ€” | `{}` | + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/server/cancel_task.mdx b/docs/development/reference/python-sdk/server/cancel_task.mdx new file mode 100644 index 0000000000..0f3625ceb1 --- /dev/null +++ b/docs/development/reference/python-sdk/server/cancel_task.mdx @@ -0,0 +1,22 @@ +--- +title: "cancel_task" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / cancel_task +```py +from agentstack_sdk.server import cancel_task +``` +Labels: `async` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `task` | `asyncio.Task` | โ€” | diff --git a/docs/development/reference/python-sdk/server/close_queue.mdx b/docs/development/reference/python-sdk/server/close_queue.mdx new file mode 100644 index 0000000000..644308390e --- /dev/null +++ b/docs/development/reference/python-sdk/server/close_queue.mdx @@ -0,0 +1,29 @@ +--- +title: "close_queue" +description: "Closes a queue without blocking the QueueManager" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / close_queue +```py +from agentstack_sdk.server import close_queue +``` +Labels: `async` +Closes a queue without blocking the QueueManager + +By default, QueueManager.close() will block all QueueManager operations (creating new queues, etc) +until all queue events are processed. This can have unexpected side effects, we avoid this by closing queue +independently and then removing it from queue_manager +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `queue_manager` | `QueueManager` | โ€” | +| `queue_name` | `str` | โ€” | +| `immediate` | `bool` | `False` | diff --git a/docs/development/reference/python-sdk/server/configure_telemetry.mdx b/docs/development/reference/python-sdk/server/configure_telemetry.mdx new file mode 100644 index 0000000000..425ec059a1 --- /dev/null +++ b/docs/development/reference/python-sdk/server/configure_telemetry.mdx @@ -0,0 +1,27 @@ +--- +title: "configure_telemetry" +description: "Utility that configures opentelemetry with OTLP exporter and FastAPI instrumentation" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / configure_telemetry +```py +from agentstack_sdk.server import configure_telemetry +``` +Utility that configures opentelemetry with OTLP exporter and FastAPI instrumentation +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `app` | `FastAPI` | โ€” | + +## Returns + +`None` + diff --git a/docs/development/reference/python-sdk/server/create_app.mdx b/docs/development/reference/python-sdk/server/create_app.mdx new file mode 100644 index 0000000000..96e43f8d5c --- /dev/null +++ b/docs/development/reference/python-sdk/server/create_app.mdx @@ -0,0 +1,37 @@ +--- +title: "create_app" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / create_app +```py +from agentstack_sdk.server import create_app +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `agent` | `Agent` | โ€” | +| `task_store` | `TaskStore \| None` | `None` | +| `context_store` | `ContextStore \| None` | `None` | +| `queue_manager` | `QueueManager \| None` | `None` | +| `push_config_store` | `PushNotificationConfigStore \| None` | `None` | +| `push_sender` | `PushNotificationSender \| None` | `None` | +| `request_context_builder` | `RequestContextBuilder \| None` | `None` | +| `lifespan` | `Lifespan[AppType] \| None` | `None` | +| `dependencies` | `list[Depends] \| None` | `None` | +| `override_interfaces` | `bool` | `True` | +| `task_timeout` | `timedelta` | `timedelta(minutes=10)` | +| `kwargs` | โ€” | `{}` | + +## Returns + +`FastAPI` + diff --git a/docs/development/reference/python-sdk/server/discover_jwks.mdx b/docs/development/reference/python-sdk/server/discover_jwks.mdx new file mode 100644 index 0000000000..24a8d4d328 --- /dev/null +++ b/docs/development/reference/python-sdk/server/discover_jwks.mdx @@ -0,0 +1,21 @@ +--- +title: "discover_jwks" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / discover_jwks +```py +from agentstack_sdk.server import discover_jwks +``` +Labels: `async` +## Returns + +`KeySet` + diff --git a/docs/development/reference/python-sdk/server/extract_dependencies.mdx b/docs/development/reference/python-sdk/server/extract_dependencies.mdx new file mode 100644 index 0000000000..32a4c5e2d8 --- /dev/null +++ b/docs/development/reference/python-sdk/server/extract_dependencies.mdx @@ -0,0 +1,26 @@ +--- +title: "extract_dependencies" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Server](/development/reference/python-sdk/server) / extract_dependencies +```py +from agentstack_sdk.server import extract_dependencies +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `fn` | `Callable[..., Any]` | โ€” | + +## Returns + +`dict[str, Depends]` + diff --git a/docs/development/reference/python-sdk/types.mdx b/docs/development/reference/python-sdk/types.mdx new file mode 100644 index 0000000000..e2cfeed53d --- /dev/null +++ b/docs/development/reference/python-sdk/types.mdx @@ -0,0 +1,29 @@ +--- +title: "SDK Types" +description: "Core type definitions and base classes" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} + +```py +from agentstack_sdk.types import SdkAuthenticationBackend +``` +--- +### Classes + + + + + +### Constants & Variables + +| Name | Kind | Type / Definition | +|------|------|------| +| `JsonDict` | *type_alias* | `dict[str, JsonValue]` | +| `JsonValue` | *type_alias* | `list['JsonValue'] \| dict[str, 'JsonValue'] \| str \| bool \| int \| float \| None` | diff --git a/docs/development/reference/python-sdk/types/SdkAuthenticationBackend.mdx b/docs/development/reference/python-sdk/types/SdkAuthenticationBackend.mdx new file mode 100644 index 0000000000..bdebad22fd --- /dev/null +++ b/docs/development/reference/python-sdk/types/SdkAuthenticationBackend.mdx @@ -0,0 +1,33 @@ +--- +title: "SdkAuthenticationBackend" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [SDK Types](/development/reference/python-sdk/types) / SdkAuthenticationBackend +```py +from agentstack_sdk.types import SdkAuthenticationBackend +``` +**Bases:** `AuthenticationBackend , abc.ABC` +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `agent_card` | `AgentCard` | โ€” | + +**Returns:** `None` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/util.mdx b/docs/development/reference/python-sdk/util.mdx new file mode 100644 index 0000000000..1127061aac --- /dev/null +++ b/docs/development/reference/python-sdk/util.mdx @@ -0,0 +1,23 @@ +--- +title: "Utilities" +description: "Utility helpers" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} + +```py +from agentstack_sdk.util import resource_context +``` +--- +### Functions + + + + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/util/BearerAuth.mdx b/docs/development/reference/python-sdk/util/BearerAuth.mdx new file mode 100644 index 0000000000..7956dcab59 --- /dev/null +++ b/docs/development/reference/python-sdk/util/BearerAuth.mdx @@ -0,0 +1,50 @@ +--- +title: "BearerAuth" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / BearerAuth +```py +from agentstack_sdk.util import BearerAuth +``` +**Bases:** `Auth` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `token` | โ€” | `token` | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `token` | `str` | โ€” | + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `request` | `Request` | โ€” | + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `request` | `Request` | โ€” | + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/util/ColoredFormatter.mdx b/docs/development/reference/python-sdk/util/ColoredFormatter.mdx new file mode 100644 index 0000000000..661ff4e5c4 --- /dev/null +++ b/docs/development/reference/python-sdk/util/ColoredFormatter.mdx @@ -0,0 +1,36 @@ +--- +title: "ColoredFormatter" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / ColoredFormatter +```py +from agentstack_sdk.util import ColoredFormatter +``` +**Bases:** `logging.Formatter` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `COLORS` | `dict[str, str]` | `{'DEBUG': '\x1b[36m', 'INFO': '\x1b[32m'...` | + +## Methods + + + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `record` | โ€” | โ€” | + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/util/LoadedFile.mdx b/docs/development/reference/python-sdk/util/LoadedFile.mdx new file mode 100644 index 0000000000..68723c6746 --- /dev/null +++ b/docs/development/reference/python-sdk/util/LoadedFile.mdx @@ -0,0 +1,100 @@ +--- +title: "LoadedFile" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / LoadedFile +```py +from agentstack_sdk.util import LoadedFile +``` +**Bases:** `Protocol` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `filename` | `str \| None` | โ€” | +| `content_type` | `str` | โ€” | +| `file_size_bytes` | `int \| None` | โ€” | +| `content` | `bytes` | โ€” | +| `text` | `str` | โ€” | + +## Methods + + + + + + +Read and return the response content. +**Returns:** `bytes` + + + +A byte-iterator over the decoded response content. +This allows us to handle gzip, deflate, brotli, and zstd encoded responses. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `chunk_size` | `int \| None` | `None` | + +**Returns:** `Iterator[bytes]` + + + +A str-iterator over the decoded response content +that handles both gzip, deflate, etc but also detects the content's +string encoding. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `chunk_size` | `int \| None` | `None` | + +**Returns:** `Iterator[str]` + + + +**Returns:** `Iterator[str]` + + + +**Returns:** `bytes` + + + +A byte-iterator over the decoded response content. +This allows us to handle gzip, deflate, brotli, and zstd encoded responses. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `chunk_size` | `int \| None` | `None` | + +**Returns:** `AsyncIterator[bytes]` + + + +A str-iterator over the decoded response content +that handles both gzip, deflate, etc but also detects the content's +string encoding. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `chunk_size` | `int \| None` | `None` | + +**Returns:** `AsyncIterator[str]` + + + +**Returns:** `AsyncIterator[str]` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/util/LoadedFileWithBytes.mdx b/docs/development/reference/python-sdk/util/LoadedFileWithBytes.mdx new file mode 100644 index 0000000000..acfdc8795e --- /dev/null +++ b/docs/development/reference/python-sdk/util/LoadedFileWithBytes.mdx @@ -0,0 +1,99 @@ +--- +title: "LoadedFileWithBytes" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / LoadedFileWithBytes +```py +from agentstack_sdk.util import LoadedFileWithBytes +``` +**Bases:** `LoadedFile` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `filename` | โ€” | `filename` | +| `content_type` | โ€” | `content_type or 'application/octet-strea...` | +| `file_size_bytes` | โ€” | `len(content)` | +| `content` | `bytes` | โ€” | +| `text` | `str` | โ€” | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `content` | `bytes` | โ€” | +| `filename` | `str \| None` | `None` | +| `content_type` | `str \| None` | `None` | +| `encoding` | `str \| None` | `None` | + + + + +**Returns:** `bytes` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `chunk_size` | `int \| None` | `None` | + +**Returns:** `Iterator[bytes]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `chunk_size` | `int \| None` | `None` | + +**Returns:** `Iterator[str]` + + + +**Returns:** `Iterator[str]` + + + +**Returns:** `bytes` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `chunk_size` | `int \| None` | `None` | + +**Returns:** `AsyncIterator[bytes]` + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `chunk_size` | `int \| None` | `None` | + +**Returns:** `AsyncIterator[str]` + + + +**Returns:** `AsyncIterator[str]` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/util/LoadedFileWithUri.mdx b/docs/development/reference/python-sdk/util/LoadedFileWithUri.mdx new file mode 100644 index 0000000000..b5afd6cd7a --- /dev/null +++ b/docs/development/reference/python-sdk/util/LoadedFileWithUri.mdx @@ -0,0 +1,110 @@ +--- +title: "LoadedFileWithUri" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / LoadedFileWithUri +```py +from agentstack_sdk.util import LoadedFileWithUri +``` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `file_size_bytes` | โ€” | `file_size_bytes or int(response.headers....` | +| `filename` | โ€” | `filename or response_filename` | +| `content_type` | โ€” | `content_type or response_content_type or...` | +| `content` | `bytes` | โ€” | +| `text` | `str` | โ€” | + +## Methods + + + + +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `response` | `Response` | โ€” | +| `filename` | `str \| None` | `None` | +| `content_type` | `str \| None` | `None` | +| `file_size_bytes` | `int \| None` | `None` | + + + + +Read and return the response content. +**Returns:** `bytes` + + + +A byte-iterator over the decoded response content. +This allows us to handle gzip, deflate, brotli, and zstd encoded responses. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `chunk_size` | `int \| None` | `None` | + +**Returns:** `Iterator[bytes]` + + + +A str-iterator over the decoded response content +that handles both gzip, deflate, etc but also detects the content's +string encoding. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `chunk_size` | `int \| None` | `None` | + +**Returns:** `Iterator[str]` + + + +**Returns:** `Iterator[str]` + + + +Read and return the response content. +**Returns:** `bytes` + + + +A byte-iterator over the decoded response content. +This allows us to handle gzip, deflate, brotli, and zstd encoded responses. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `chunk_size` | `int \| None` | `None` | + +**Returns:** `AsyncIterator[bytes]` + + + +A str-iterator over the decoded response content +that handles both gzip, deflate, etc but also detects the content's +string encoding. +**Parameters** + +| Name | Type | Default | +|------|------|---------| +| `chunk_size` | `int \| None` | `None` | + +**Returns:** `AsyncIterator[str]` + + + +**Returns:** `AsyncIterator[str]` + + \ No newline at end of file diff --git a/docs/development/reference/python-sdk/util/PlatformFileUrl.mdx b/docs/development/reference/python-sdk/util/PlatformFileUrl.mdx new file mode 100644 index 0000000000..9fe24decfc --- /dev/null +++ b/docs/development/reference/python-sdk/util/PlatformFileUrl.mdx @@ -0,0 +1,22 @@ +--- +title: "PlatformFileUrl" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / PlatformFileUrl +```py +from agentstack_sdk.util import PlatformFileUrl +``` +**Bases:** `AnyUrl` +## Class Attributes + +| Attribute | Type | Default | +|-------|------|---------| +| `file_id` | `str` | โ€” | diff --git a/docs/development/reference/python-sdk/util/SecureBaseModel.mdx b/docs/development/reference/python-sdk/util/SecureBaseModel.mdx new file mode 100644 index 0000000000..96662c8ad1 --- /dev/null +++ b/docs/development/reference/python-sdk/util/SecureBaseModel.mdx @@ -0,0 +1,18 @@ +--- +title: "SecureBaseModel" +description: "Base class that automatically handles SecretStr redaction unless explicitly revealed via context" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / SecureBaseModel +```py +from agentstack_sdk.util import SecureBaseModel +``` +**Bases:** `BaseModel` +Inherit from this instead of BaseModel for models that may contain secrets. \ No newline at end of file diff --git a/docs/development/reference/python-sdk/util/apply_compatibility_monkey_patching.mdx b/docs/development/reference/python-sdk/util/apply_compatibility_monkey_patching.mdx new file mode 100644 index 0000000000..fb24b56d46 --- /dev/null +++ b/docs/development/reference/python-sdk/util/apply_compatibility_monkey_patching.mdx @@ -0,0 +1,18 @@ +--- +title: "apply_compatibility_monkey_patching" +description: "Workaround for Pydantic + Python 3.14 issue where TypeAdapter[ChatModelKwargs] is not fully defined" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / apply_compatibility_monkey_patching +```py +from agentstack_sdk.util import apply_compatibility_monkey_patching +``` +Workaround for Pydantic + Python 3.14 issue where TypeAdapter[ChatModelKwargs] is not fully defined. +This happens because TypedDict annotations are deferred in 3.14 and Pydantic's lazy build fails to resolve them. \ No newline at end of file diff --git a/docs/development/reference/python-sdk/util/configure_logger.mdx b/docs/development/reference/python-sdk/util/configure_logger.mdx new file mode 100644 index 0000000000..71894f0a83 --- /dev/null +++ b/docs/development/reference/python-sdk/util/configure_logger.mdx @@ -0,0 +1,26 @@ +--- +title: "configure_logger" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / configure_logger +```py +from agentstack_sdk.util import configure_logger +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `level` | `int \| str \| None` | `None` | + +## Returns + +`None` + diff --git a/docs/development/reference/python-sdk/util/extract_messages.mdx b/docs/development/reference/python-sdk/util/extract_messages.mdx new file mode 100644 index 0000000000..025ffab409 --- /dev/null +++ b/docs/development/reference/python-sdk/util/extract_messages.mdx @@ -0,0 +1,26 @@ +--- +title: "extract_messages" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / extract_messages +```py +from agentstack_sdk.util import extract_messages +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `exc` | `BaseException` | โ€” | + +## Returns + +`list[tuple[str, str]]` + diff --git a/docs/development/reference/python-sdk/util/filter_dict.mdx b/docs/development/reference/python-sdk/util/filter_dict.mdx new file mode 100644 index 0000000000..7e0a6368f6 --- /dev/null +++ b/docs/development/reference/python-sdk/util/filter_dict.mdx @@ -0,0 +1,21 @@ +--- +title: "filter_dict" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / filter_dict +```py +from agentstack_sdk.util import filter_dict +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `d` | `dict` | โ€” | diff --git a/docs/development/reference/python-sdk/util/flatten_dict.mdx b/docs/development/reference/python-sdk/util/flatten_dict.mdx new file mode 100644 index 0000000000..8c381f257f --- /dev/null +++ b/docs/development/reference/python-sdk/util/flatten_dict.mdx @@ -0,0 +1,34 @@ +--- +title: "flatten_dict" +description: "Flatten nested dict โ†’ OpenTelemetry-compatible flat dict" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / flatten_dict +```py +from agentstack_sdk.util import flatten_dict +``` +Flatten nested dict โ†’ OpenTelemetry-compatible flat dict. + +- Lists are usually kept as-is (OTel supports primitive arrays) +- None values are skipped by default +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `d` | `Mapping[str, Any]` | โ€” | +| `parent_key` | `str` | `''` | +| `sep` | `str` | `'.'` | +| `skip_none` | `bool` | `True` | +| `max_depth` | `int \| None` | `None` | + +## Returns + +`dict[str, Any]` + diff --git a/docs/development/reference/python-sdk/util/load_file.mdx b/docs/development/reference/python-sdk/util/load_file.mdx new file mode 100644 index 0000000000..4ba1535934 --- /dev/null +++ b/docs/development/reference/python-sdk/util/load_file.mdx @@ -0,0 +1,31 @@ +--- +title: "load_file" +description: ":param stream: if stream is set to False, 'content' and 'text' fields are immediately available" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / load_file +```py +from agentstack_sdk.util import load_file +``` +Labels: `async` +:param stream: if stream is set to False, 'content' and 'text' fields are immediately available. + Otherwise, they are only available after calling the '(a)read' method. +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `part` | `FilePart` | โ€” | +| `stream` | `bool` | `False` | +| `client` | `AsyncClient \| None` | `None` | + +## Returns + +`AsyncIterator[LoadedFile]` + diff --git a/docs/development/reference/python-sdk/util/parse_stream.mdx b/docs/development/reference/python-sdk/util/parse_stream.mdx new file mode 100644 index 0000000000..bea605056d --- /dev/null +++ b/docs/development/reference/python-sdk/util/parse_stream.mdx @@ -0,0 +1,27 @@ +--- +title: "parse_stream" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / parse_stream +```py +from agentstack_sdk.util import parse_stream +``` +Labels: `async` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `response` | `Response` | โ€” | + +## Returns + +`AsyncIterator[dict[str, Any]]` + diff --git a/docs/development/reference/python-sdk/util/redact_dict.mdx b/docs/development/reference/python-sdk/util/redact_dict.mdx new file mode 100644 index 0000000000..7f8aa2a787 --- /dev/null +++ b/docs/development/reference/python-sdk/util/redact_dict.mdx @@ -0,0 +1,27 @@ +--- +title: "redact_dict" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / redact_dict +```py +from agentstack_sdk.util import redact_dict +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `v` | `dict[str, str]` | โ€” | +| `info` | `SerializationInfo` | โ€” | + +## Returns + +`dict[str, str]` + diff --git a/docs/development/reference/python-sdk/util/redact_secret.mdx b/docs/development/reference/python-sdk/util/redact_secret.mdx new file mode 100644 index 0000000000..3e134777df --- /dev/null +++ b/docs/development/reference/python-sdk/util/redact_secret.mdx @@ -0,0 +1,27 @@ +--- +title: "redact_secret" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / redact_secret +```py +from agentstack_sdk.util import redact_secret +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `v` | `Secret \| SecretStr \| SecretBytes` | โ€” | +| `info` | `SerializationInfo` | โ€” | + +## Returns + +`Secret | SecretStr | SecretBytes | str | bytes` + diff --git a/docs/development/reference/python-sdk/util/redact_str.mdx b/docs/development/reference/python-sdk/util/redact_str.mdx new file mode 100644 index 0000000000..e1df776876 --- /dev/null +++ b/docs/development/reference/python-sdk/util/redact_str.mdx @@ -0,0 +1,27 @@ +--- +title: "redact_str" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / redact_str +```py +from agentstack_sdk.util import redact_str +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `v` | `str` | โ€” | +| `info` | `SerializationInfo` | โ€” | + +## Returns + +`str` + diff --git a/docs/development/reference/python-sdk/util/redact_url.mdx b/docs/development/reference/python-sdk/util/redact_url.mdx new file mode 100644 index 0000000000..d7ee6a6cae --- /dev/null +++ b/docs/development/reference/python-sdk/util/redact_url.mdx @@ -0,0 +1,27 @@ +--- +title: "redact_url" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / redact_url +```py +from agentstack_sdk.util import redact_url +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `v` | `AnyUrl` | โ€” | +| `info` | `SerializationInfo` | โ€” | + +## Returns + +`AnyUrl` + diff --git a/docs/development/reference/python-sdk/util/resource_context.mdx b/docs/development/reference/python-sdk/util/resource_context.mdx new file mode 100644 index 0000000000..6b9b46185b --- /dev/null +++ b/docs/development/reference/python-sdk/util/resource_context.mdx @@ -0,0 +1,27 @@ +--- +title: "resource_context" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / resource_context +```py +from agentstack_sdk.util import resource_context +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `factory` | `Callable[P, T]` | โ€” | +| `default_factory` | `Callable[[], T]` | โ€” | + +## Returns + +`tuple[typing.Callable[[], T], typing.Callable[P, contextlib.AbstractContextManager[T]]]` + diff --git a/docs/development/reference/python-sdk/util/should_redact.mdx b/docs/development/reference/python-sdk/util/should_redact.mdx new file mode 100644 index 0000000000..fe4f59d35e --- /dev/null +++ b/docs/development/reference/python-sdk/util/should_redact.mdx @@ -0,0 +1,26 @@ +--- +title: "should_redact" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / should_redact +```py +from agentstack_sdk.util import should_redact +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `info` | `SerializationInfo` | โ€” | + +## Returns + +`bool` + diff --git a/docs/development/reference/python-sdk/util/should_reveal.mdx b/docs/development/reference/python-sdk/util/should_reveal.mdx new file mode 100644 index 0000000000..2e3b26c5b1 --- /dev/null +++ b/docs/development/reference/python-sdk/util/should_reveal.mdx @@ -0,0 +1,26 @@ +--- +title: "should_reveal" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / should_reveal +```py +from agentstack_sdk.util import should_reveal +``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `info` | `SerializationInfo` | โ€” | + +## Returns + +`bool` + diff --git a/docs/development/reference/python-sdk/util/trace_class.mdx b/docs/development/reference/python-sdk/util/trace_class.mdx new file mode 100644 index 0000000000..e021a21ec9 --- /dev/null +++ b/docs/development/reference/python-sdk/util/trace_class.mdx @@ -0,0 +1,77 @@ +--- +title: "trace_class" +description: "A class decorator to automatically trace specified methods of a class" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / trace_class +```py +from agentstack_sdk.util import trace_class +``` +A class decorator to automatically trace specified methods of a class. + +This decorator iterates over the methods of a class and applies the +`trace_function` decorator to them, based on the `include_list` and +`exclude_list` criteria. Methods starting or ending with double underscores +(dunder methods, e.g., `__init__`, `__call__`) are always excluded by default. + +Args: + include_list (list[str], optional): A list of method names to + explicitly include for tracing. If provided, only methods in this + list (that are not dunder methods) will be traced. + Defaults to None (trace all non-dunder methods). + exclude_list (list[str], optional): A list of method names to exclude + from tracing. This is only considered if `include_list` is not + provided. Dunder methods are implicitly excluded. + Defaults to an empty list. + kind (SpanKind, optional): The `opentelemetry.trace.SpanKind` for the + created spans on the methods. Defaults to `SpanKind.INTERNAL`. + +Returns: + callable: A decorator function that, when applied to a class, + modifies the class to wrap its specified methods with tracing. + +Example: + To trace all methods except 'internal_method': + ```python + @trace_class(exclude_list=['internal_method']) + class MyService: + def public_api(self): + pass + + def internal_method(self): + pass + ``` + + To trace only 'method_one' and 'method_two': + ```python + @trace_class(include_list=['method_one', 'method_two']) + class AnotherService: + def method_one(self): + pass + + def method_two(self): + pass + + def not_traced_method(self): + pass + ``` +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `include_list` | `list[str] \| None` | `None` | +| `exclude_list` | `list[str] \| None` | `None` | +| `kind` | `SpanKind` | `SpanKind.INTERNAL` | +| `attributes` | `dict[str, Any] \| None` | `None` | + +## Returns + +`Callable` + diff --git a/docs/development/reference/python-sdk/util/trace_function.mdx b/docs/development/reference/python-sdk/util/trace_function.mdx new file mode 100644 index 0000000000..04ca6dac30 --- /dev/null +++ b/docs/development/reference/python-sdk/util/trace_function.mdx @@ -0,0 +1,72 @@ +--- +title: "trace_function" +description: "A decorator to automatically trace a function call with OpenTelemetry" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / trace_function +```py +from agentstack_sdk.util import trace_function +``` +A decorator to automatically trace a function call with OpenTelemetry. + +This decorator can be used to wrap both sync and async functions. +When applied, it creates a new span for each call to the decorated function. +The span will record the execution time, status (OK or ERROR), and any +exceptions that occur. + +It can be used in two ways: + +1. As a direct decorator: `@trace_function` +2. As a decorator factory to provide arguments: `@trace_function(span_name="custom.name")` + +Args: + func (callable, optional): The function to be decorated. If None, + the decorator returns a partial function, allowing it to be called + with arguments. Defaults to None. + span_name (str, optional): Custom name for the span. If None, + it defaults to ``f'{func.__module__}.{func.__name__}'``. + Defaults to None. + kind (SpanKind, optional): The ``opentelemetry.trace.SpanKind`` for the + created span. Defaults to ``SpanKind.INTERNAL``. + attributes (dict, optional): A dictionary of static attributes to be + set on the span. Keys are attribute names (str) and values are + the corresponding attribute values. Defaults to None. + attribute_extractor (callable, optional): A function that can be used + to dynamically extract and set attributes on the span. + It is called within a ``finally`` block, ensuring it runs even if + the decorated function raises an exception. + The function signature should be: + ``attribute_extractor(span, args, kwargs, result, exception)`` + where: + - ``span`` : the OpenTelemetry ``Span`` object. + - ``args`` : a tuple of positional arguments passed + - ``kwargs`` : a dictionary of keyword arguments passed + - ``result`` : return value (None if an exception occurred) + - ``exception`` : exception object if raised (None otherwise). + Any exception raised by the ``attribute_extractor`` itself will be + caught and logged. Defaults to None. + +Returns: + callable: The wrapped function that includes tracing, or a partial + decorator if ``func`` is None. +## Parameters + +| Name | Type | Default | +|------|------|---------| +| `func` | `Callable \| None` | `None` | +| `span_name` | `str \| None` | `None` | +| `kind` | `SpanKind` | `SpanKind.INTERNAL` | +| `attributes` | `dict[str, Any] \| None` | `None` | +| `attribute_extractor` | `Callable \| None` | `None` | + +## Returns + +`Callable` + diff --git a/docs/development/reference/python-sdk/util/utc_now.mdx b/docs/development/reference/python-sdk/util/utc_now.mdx new file mode 100644 index 0000000000..1fb2add5bc --- /dev/null +++ b/docs/development/reference/python-sdk/util/utc_now.mdx @@ -0,0 +1,20 @@ +--- +title: "utc_now" +description: "" +--- + +{/* + +โš ๏ธโš ๏ธโš ๏ธ WARNING โš ๏ธโš ๏ธโš ๏ธ + +DO NOT EDIT THIS FILE BY HAND, IT IS AUTOMATICALLY GENERATED BY `mise agentstack-sdk-py:docs` + +*/} +[Python SDK Reference](/development/reference/python-sdk/overview) / [Utilities](/development/reference/python-sdk/util) / utc_now +```py +from agentstack_sdk.util import utc_now +``` +## Returns + +`datetime` + diff --git a/docs/docs.json b/docs/docs.json index ec71654df5..01fb48932d 100644 --- a/docs/docs.json +++ b/docs/docs.json @@ -57,7 +57,9 @@ }, { "group": "Reference", - "pages": ["stable/reference/cli-reference"] + "pages": [ + "stable/reference/cli-reference" + ] }, { "group": "Deploy Agent Stack", @@ -134,7 +136,39 @@ }, { "group": "Reference", - "pages": ["development/reference/cli-reference"] + "pages": [ + "development/reference/cli-reference", + { + "group": "Python SDK", + "pages": [ + "development/reference/python-sdk/overview", + "development/reference/python-sdk/server", + { + "group": "A2A Extensions", + "pages": [ + "development/reference/python-sdk/a2a", + "development/reference/python-sdk/a2a-common", + "development/reference/python-sdk/a2a-interactions", + "development/reference/python-sdk/a2a-services", + "development/reference/python-sdk/a2a-tools", + "development/reference/python-sdk/a2a-ui", + { + "group": "Auth", + "pages": [ + "development/reference/python-sdk/a2a-auth", + "development/reference/python-sdk/a2a-auth-oauth", + "development/reference/python-sdk/a2a-auth-oauth-storage", + "development/reference/python-sdk/a2a-auth-secrets" + ] + } + ] + }, + "development/reference/python-sdk/platform", + "development/reference/python-sdk/types", + "development/reference/python-sdk/util" + ] + } + ] }, { "group": "Deploy Agent Stack",