# 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.94.0"
name = "meerkat-mobkit"
version = "0.7.3"
authors = ["Luka Crnkovic-Friis"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Companion orchestration platform for the Meerkat multi-agent runtime"
homepage = "https://docs.rkat.ai"
documentation = "https://docs.rkat.ai"
readme = false
keywords = [
    "agent",
    "llm",
    "ai",
    "meerkat",
    "orchestration",
]
categories = [
    "development-tools",
    "api-bindings",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/lukacf/meerkat-mobkit"
resolver = "2"

[features]
integration-real-tests = []

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

[[bin]]
name = "baseline_check"
path = "src/bin/baseline_check.rs"

[[bin]]
name = "governance_check"
path = "src/bin/governance_check.rs"

[[bin]]
name = "mcp_fixture"
path = "src/bin/mcp_fixture.rs"

[[bin]]
name = "mobkit_flow_editor"
path = "src/bin/mobkit_flow_editor.rs"

[[bin]]
name = "mobkit_gateway"
path = "src/bin/mobkit_gateway.rs"

[[bin]]
name = "rpc_gateway"
path = "src/bin/rpc_gateway.rs"

[[example]]
name = "library_mode_reference"
path = "examples/library_mode_reference.rs"

[[example]]
name = "real_mob_llm_smoke"
path = "examples/real_mob_llm_smoke.rs"

[[example]]
name = "skeleton"
path = "examples/skeleton.rs"

[[example]]
name = "smoke"
path = "examples/smoke.rs"

[[example]]
name = "streaming_smoke"
path = "examples/streaming_smoke.rs"

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[dependencies.anyhow]
version = "1"

[dependencies.async-stream]
version = "0.3"

[dependencies.async-trait]
version = "0.1"

[dependencies.axum]
version = "0.8"
features = [
    "json",
    "multipart",
]

[dependencies.base64]
version = "0.22"

[dependencies.bytes]
version = "1"

[dependencies.chrono]
version = "0.4"

[dependencies.chrono-tz]
version = "0.10"

[dependencies.ed25519-dalek]
version = "2"
features = [
    "std",
    "rand_core",
]
default-features = false

[dependencies.flate2]
version = "1"

[dependencies.form_urlencoded]
version = "1"

[dependencies.futures]
version = "0.3"

[dependencies.hmac]
version = "0.12"

[dependencies.meerkat]
version = "0.7"
features = [
    "comms",
    "skills",
    "mcp",
    "memory-store",
    "memory-store-session",
    "jsonl-store",
    "session-store",
    "sqlite-store",
]

[dependencies.meerkat-client]
version = "0.7"

[dependencies.meerkat-contracts]
version = "0.7"

[dependencies.meerkat-core]
version = "0.7"

[dependencies.meerkat-mcp]
version = "0.7"

[dependencies.meerkat-mob]
version = "0.7"

[dependencies.meerkat-mob-mcp]
version = "0.7"

[dependencies.meerkat-models]
version = "0.7"

[dependencies.meerkat-runtime]
version = "0.7"
features = ["sqlite-store"]

[dependencies.meerkat-session]
version = "0.7"
features = ["session-store"]

[dependencies.meerkat-store]
version = "0.7"
features = ["sqlite"]

[dependencies.meerkat-tools]
version = "0.7"

[dependencies.object_store]
version = "0.13"
features = ["fs"]

[dependencies.rand_core]
version = "0.6"
features = ["std"]
default-features = false

[dependencies.reqwest]
version = "0.12"
features = [
    "blocking",
    "json",
    "rustls-tls",
]
default-features = false

[dependencies.ring]
version = "0.17"

[dependencies.rusqlite]
version = "0.37"
features = ["bundled"]

[dependencies.schemars]
version = "1.2.1"

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

[dependencies.serde_json]
version = "1"

[dependencies.serde_yaml]
version = "0.9"

[dependencies.sha2]
version = "0.10"

[dependencies.tar]
version = "0.4"

[dependencies.tempfile]
version = "3"

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

[dependencies.toml]
version = "0.8"

[dependencies.tower]
version = "0.5"
features = ["limit"]

[dependencies.tracing]
version = "0.1"

[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]

[dev-dependencies.async-trait]
version = "0.1"

[dev-dependencies.futures]
version = "0.3"

[dev-dependencies.jsonwebtoken]
version = "9"

[dev-dependencies.meerkat-comms]
version = "0.7"

[dev-dependencies.serde_json]
version = "1"

[dev-dependencies.tokio]
version = "1"
features = [
    "macros",
    "rt-multi-thread",
    "time",
]

[dev-dependencies.tower]
version = "0.5"
features = ["util"]

[lints.clippy]
allow_attributes_without_reason = "allow"
assigning_clones = "allow"
cargo_common_metadata = "allow"
case_sensitive_file_extension_comparisons = "allow"
cast_lossless = "allow"
cast_possible_truncation = "allow"
cast_possible_wrap = "allow"
cast_precision_loss = "allow"
cast_sign_loss = "allow"
dbg_macro = "deny"
default_trait_access = "allow"
doc_link_with_quotes = "allow"
doc_markdown = "allow"
expect_used = "deny"
float_cmp = "allow"
fn_params_excessive_bools = "allow"
format_push_string = "allow"
ignore_without_reason = "allow"
implicit_clone = "deny"
items_after_statements = "allow"
let_underscore_untyped = "allow"
manual_let_else = "allow"
manual_string_new = "allow"
map_unwrap_or = "allow"
match_bool = "allow"
match_same_arms = "allow"
match_wildcard_for_single_variants = "allow"
missing_const_for_fn = "allow"
missing_docs_in_private_items = "allow"
missing_errors_doc = "allow"
missing_fields_in_debug = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
multiple_crate_versions = "allow"
must_use_candidate = "allow"
mutex_atomic = "deny"
mutex_integer = "deny"
needless_continue = "allow"
needless_pass_by_value = "allow"
panic = "deny"
print_stderr = "allow"
print_stdout = "allow"
redundant_clone = "deny"
ref_option = "allow"
return_self_not_must_use = "allow"
similar_names = "allow"
single_match_else = "allow"
struct_excessive_bools = "allow"
struct_field_names = "allow"
todo = "deny"
too_many_lines = "allow"
trivially_copy_pass_by_ref = "allow"
unimplemented = "deny"
unnecessary_wraps = "allow"
unreadable_literal = "allow"
unused_async = "allow"
unused_self = "allow"
unwrap_used = "deny"
used_underscore_binding = "allow"
wildcard_imports = "allow"

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

[lints.clippy.cargo]
level = "warn"
priority = -1

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

[lints.rust]
unsafe_code = "forbid"
