# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.95"
name = "agy-bridge"
version = "0.5.2"
build = false
exclude = [
    "AGENTS.md",
    ".agents/",
    ".recovered/",
    "blank.png",
    ".markdownlint.jsonc",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rust bridge for the Google Antigravity SDK (Python) via PyO3"
readme = "README.md"
keywords = [
    "gemini",
    "agent",
    "pyo3",
    "antigravity",
    "llm",
]
categories = [
    "api-bindings",
    "asynchronous",
]
license = "Apache-2.0 OR MIT"
repository = "https://github.com/domenukk/agy-bridge"

[features]
md-tmpl = ["llm-tool/md-tmpl"]

[lib]
name = "agy_bridge"
path = "src/lib.rs"

[[example]]
name = "deep_dives_agent_middleware"
path = "examples/deep_dives/agent_middleware.rs"

[[example]]
name = "deep_dives_async_chat"
path = "examples/deep_dives/async_chat.rs"

[[example]]
name = "deep_dives_doc_maintenance_agent"
path = "examples/deep_dives/doc_maintenance_agent.rs"

[[example]]
name = "deep_dives_docstring_maintenance_agent"
path = "examples/deep_dives/docstring_maintenance_agent.rs"

[[example]]
name = "deep_dives_host_tool_hooks"
path = "examples/deep_dives/host_tool_hooks.rs"

[[example]]
name = "deep_dives_interactive_cli"
path = "examples/deep_dives/interactive_cli.rs"

[[example]]
name = "deep_dives_multimodal_pipeline"
path = "examples/deep_dives/multimodal_pipeline.rs"

[[example]]
name = "deep_dives_round_based_chat"
path = "examples/deep_dives/round_based_chat.rs"

[[example]]
name = "getting_started_agent_skills"
path = "examples/getting_started/agent_skills.rs"

[[example]]
name = "getting_started_app_data_dir_override"
path = "examples/getting_started/app_data_dir_override.rs"

[[example]]
name = "getting_started_autonomous_shell"
path = "examples/getting_started/autonomous_shell.rs"

[[example]]
name = "getting_started_custom_tools"
path = "examples/getting_started/custom_tools.rs"

[[example]]
name = "getting_started_error_handler"
path = "examples/getting_started/error_handler.rs"

[[example]]
name = "getting_started_hello_world"
path = "examples/getting_started/hello_world.rs"

[[example]]
name = "getting_started_hooks"
path = "examples/getting_started/hooks.rs"

[[example]]
name = "getting_started_human_in_the_loop"
path = "examples/getting_started/human_in_the_loop.rs"

[[example]]
name = "getting_started_mcp_tools"
path = "examples/getting_started/mcp_tools.rs"

[[example]]
name = "getting_started_multimodal"
path = "examples/getting_started/multimodal.rs"

[[example]]
name = "getting_started_observability"
path = "examples/getting_started/observability.rs"

[[example]]
name = "getting_started_persistence"
path = "examples/getting_started/persistence.rs"

[[example]]
name = "getting_started_persona_config"
path = "examples/getting_started/persona_config.rs"

[[example]]
name = "getting_started_policies"
path = "examples/getting_started/policies.rs"

[[example]]
name = "getting_started_streaming"
path = "examples/getting_started/streaming.rs"

[[example]]
name = "getting_started_structured_output"
path = "examples/getting_started/structured_output.rs"

[[example]]
name = "getting_started_subagents"
path = "examples/getting_started/subagents.rs"

[[example]]
name = "getting_started_template_tools"
path = "examples/getting_started/template_tools.rs"
required-features = ["md-tmpl"]

[[example]]
name = "getting_started_triggers"
path = "examples/getting_started/triggers.rs"

[[test]]
name = "agent_test"
path = "tests/agent_test.rs"

[[test]]
name = "ask_user_policy_live_test"
path = "tests/ask_user_policy_live_test.rs"

[[test]]
name = "audit_regression_test"
path = "tests/audit_regression_test.rs"

[[test]]
name = "base_url_routing_test"
path = "tests/base_url_routing_test.rs"

[[test]]
name = "basic_chat_live_test"
path = "tests/basic_chat_live_test.rs"

[[test]]
name = "capabilities_live_test"
path = "tests/capabilities_live_test.rs"

[[test]]
name = "concurrent_agents_test"
path = "tests/concurrent_agents_test.rs"

[[test]]
name = "conversation_live_test"
path = "tests/conversation_live_test.rs"

[[test]]
name = "error_handling_live_test"
path = "tests/error_handling_live_test.rs"

[[test]]
name = "hooks_live_test"
path = "tests/hooks_live_test.rs"

[[test]]
name = "multi_agent_live_test"
path = "tests/multi_agent_live_test.rs"

[[test]]
name = "policy_live_test"
path = "tests/policy_live_test.rs"

[[test]]
name = "quota_integration_test"
path = "tests/quota_integration_test.rs"

[[test]]
name = "tools_live_test"
path = "tests/tools_live_test.rs"

[[test]]
name = "trigger_live_test"
path = "tests/trigger_live_test.rs"

[dependencies.base64]
version = "0.22"

[dependencies.fast_rands]
version = "0.15"

[dependencies.futures]
version = "0.3"

[dependencies.llm-tool]
version = "0.5.2"

[dependencies.llm-tool-macros]
version = "0.5.2"

[dependencies.pyo3]
version = "0.29"
features = ["auto-initialize"]

[dependencies.pyo3-async-runtimes]
version = "0.29"
features = ["tokio-runtime"]

[dependencies.pythonize]
version = "0.29"

[dependencies.schemars]
version = "1"

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"

[dependencies.thiserror]
version = "2"

[dependencies.tokio]
version = "1"
features = [
    "rt-multi-thread",
    "macros",
    "sync",
    "time",
    "process",
    "fs",
    "io-util",
]

[dependencies.tokio-stream]
version = "0.1"

[dependencies.tracing]
version = "0.1"

[dependencies.typed-builder]
version = "0.23"

[dev-dependencies.tempfile]
version = "3"

[dev-dependencies.tokio]
version = "1"
features = [
    "rt-multi-thread",
    "macros",
    "sync",
    "time",
    "process",
    "fs",
    "io-util",
    "test-util",
    "net",
    "io-util",
]

[lints.clippy.all]
level = "deny"
priority = -1

[lints.clippy.pedantic]
level = "deny"
priority = -1

[lints.rust]
warnings = "deny"
