Skip to main content
Tarzi Logo

tarzi

Crate Version PyPI Version Rust CI Python CI PyV

License X Follow

⚠️ Current Limitation: Currently only search engines without anti-bot protection are workable, such as DuckDuckGo and Brave. We require advanced features to bypass anti-bot measures for other engines like Google and Bing.

🐒 Tarzi is a unified search interface designed for Retrieval-Augmented Generation (RAG) and agentic systems built on large language models. Search is a core functionality in these systems, yet most search engine providers (SEPs) impose API paywalls or strict rate limits. Tarzi, empowered by browser automation and web crawling technologies, removes these barriers by supporting token-free queries across multiple search engines. With a single dependency, you can integrate and switch between different SEPs as needed—seamlessly and efficiently.

Tarzi Logo

⚙️ Core Capabilities

  • 🦀 Dual Implementation: Native Rust library and Python wrapper with CLI tools
  • 🔄 Content Conversion: Convert raw HTML into Markdown, JSON, or YAML, which is ready for LLMs
  • 🔍 Search Integration: API → plain HTTP → headless browser cascade with a unified result format
  • 🧠 Multi-Engine Support: Bing, Google, Google Serper, DuckDuckGo, Brave, Baidu, Sogou Weixin
  • 🛡️ Proxy Support: Bypass network bans using proxy support to access global SEPs
  • 🚀 End-to-End Workflow: Full pipeline from search to content extraction for AI and automation use cases

🧪 Advanced Features (Under dev.)

  • 🕵️‍♂️ Anti-Bot Evasion: Use fingerprint spoofing, proxy rotation, and human-like actions to avoid detection
  • 🧠 Smarter Queries: Improve search results with prompt rewriting and intent-aware queries
  • 🔗 Workflow Automation: Chain steps like search, click, form fill, and scraping into automated flows

Install

pip install tarzi

CLI Commands

Tarzi provides two command-line interfaces:

  • tarzi: Native Rust CLI (faster, more efficient)
  • pytarzi: Python CLI (easier to extend, same functionality)

Both CLIs support the same commands and configuration precedence.

Usage Examples

  • Examples in Python and Rust: examples
  • Search modes demo: cargo run --example search_modes / python examples/search_modes.py
  • Serper (Google API): set SERPER_API_KEY, then cargo run --example search_engine_serper

Search access modes

Breaking change: tarzi.toml / ~/.tarzi.toml are removed. Configure with env vars (see .env.example):

export TARZI_SEARCH_ENGINE=brave   # bing | google | google_serper | brave | duckduckgo | ...
export TARZI_SEARCH_MODE=auto      # auto | apiquery | webquery
# Engine API keys (tarzi has no product API key):
export BRAVE_API_KEY=...           # or SERPER_API_KEY for google_serper
Mode Behavior
auto (default) API (if key) → plain HTTP → headless browser
apiquery API only (Brave / google_serper)
webquery Plain HTTP → browser (never API)

google is web-only; Google API results use google_serper (alias serper).

Alternatives

Contributors

Thank you ❤ all human and non-human contributors.

tarzi contributors

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tarzi-0.2.1.tar.gz (2.1 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

tarzi-0.2.1-cp314-cp314t-manylinux_2_28_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ ARM64

tarzi-0.2.1-cp314-cp314t-macosx_15_0_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.14tmacOS 15.0+ x86-64

tarzi-0.2.1-cp314-cp314t-macosx_15_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.14tmacOS 15.0+ ARM64

tarzi-0.2.1-cp314-cp314-manylinux_2_28_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

tarzi-0.2.1-cp314-cp314-macosx_15_0_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.14macOS 15.0+ x86-64

tarzi-0.2.1-cp314-cp314-macosx_15_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.14macOS 15.0+ ARM64

tarzi-0.2.1-cp313-cp313-manylinux_2_28_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

tarzi-0.2.1-cp313-cp313-macosx_15_0_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.13macOS 15.0+ x86-64

tarzi-0.2.1-cp313-cp313-macosx_15_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

tarzi-0.2.1-cp312-cp312-manylinux_2_28_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

tarzi-0.2.1-cp312-cp312-macosx_15_0_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.12macOS 15.0+ x86-64

tarzi-0.2.1-cp312-cp312-macosx_15_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 15.0+ ARM64

tarzi-0.2.1-cp311-cp311-manylinux_2_28_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

tarzi-0.2.1-cp311-cp311-macosx_15_0_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.11macOS 15.0+ x86-64

tarzi-0.2.1-cp311-cp311-macosx_15_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 15.0+ ARM64

tarzi-0.2.1-cp310-cp310-manylinux_2_28_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

tarzi-0.2.1-cp310-cp310-macosx_15_0_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.10macOS 15.0+ x86-64

tarzi-0.2.1-cp310-cp310-macosx_15_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 15.0+ ARM64

File details

Details for the file tarzi-0.2.1.tar.gz.

File metadata

  • Download URL: tarzi-0.2.1.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for tarzi-0.2.1.tar.gz
Algorithm Hash digest
SHA256 6efd5cbfbf75fc573e032577b57153cc54103028f2d067d60a00f878069d5130
MD5 8bd1f79931cb741987e952c185ec375a
BLAKE2b-256 ca2d7f6173e1f32ebd938e0b8c390cc4c692186bbd7b6869bdc6a15fdffbb919

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1.tar.gz:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp314-cp314t-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp314-cp314t-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 79c7a62005d32b00f62f40421312303414590255b85127fbca7e8ee0b1821b7f
MD5 af876b1ec58207e7678ca248af0f2803
BLAKE2b-256 7161e3ff4de26d21270bc4386da62d67d6bc5c3084651682bc3e206d6182b707

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp314-cp314t-manylinux_2_28_aarch64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp314-cp314t-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp314-cp314t-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 0aa745279589a24209c5f8c39f93f2d7637c3a6ae0e946a171afc4677abb7920
MD5 1ca4e6e67f39f0f02de55aa30a117085
BLAKE2b-256 a013418995e07132a75d4892e6bf1c718612134f684766f3646b5847df838d56

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp314-cp314t-macosx_15_0_x86_64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp314-cp314t-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp314-cp314t-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 bb05d6aacb8f79c869e9905cf4a2c89781ffe99176b813dac0a9eb9b6f974985
MD5 9f5e4060d1f5d52c9caa16e573465661
BLAKE2b-256 96c188e29f5efc6843f69e99986fd389ec6d3033c5524f6cc98480f9054aebe4

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp314-cp314t-macosx_15_0_arm64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp314-cp314-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3976e8f8f8ffaedcbebcbe2bb23199a7c922bfc365d4d24a28e06faa5d08acd6
MD5 bd19718e97c7342208b3cd992d9b4956
BLAKE2b-256 87ff7f44280604468007785c1b6989a96cf2a75c896e6cd5ae51dc285c6634e9

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp314-cp314-manylinux_2_28_aarch64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp314-cp314-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp314-cp314-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 483c892172f09aca6657ecb2bfc55d88cc670f2ecb1f85340eee856116e944cb
MD5 e2e2bc5727c859f859d68756dc277384
BLAKE2b-256 9b6b819dbc9b0af763540c7772fcd52794fcff671b701362365b5f172ba5b186

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp314-cp314-macosx_15_0_x86_64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp314-cp314-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp314-cp314-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 6aa5e42a98fb3e46e4e25acf63a9495c57c9893f578140166f5bfe2d52ef0072
MD5 5c9c1434a774d07f241e90a846718041
BLAKE2b-256 5e25dbed90b2e3f0e2f57b1e0951ac99e2670b0346d50a5447101f8d635f6a1a

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp314-cp314-macosx_15_0_arm64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4b1c199087b9177e1e50626eec5c9973cfa960140175e0dca1ff493468fe7831
MD5 ec4d4b2718d7302063e70d51d98164c4
BLAKE2b-256 d8f145e5c22295d89b54bee31bfab9c99b3229358c8a37630ef9ada12be55f5b

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp313-cp313-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp313-cp313-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 f71f1a04705555b60348148098064c0603a444f1a278e54b31e9debceda5af8e
MD5 e4b806e566556ac934e329007705528b
BLAKE2b-256 ddfd5f56e533a63ad6bade9d6e0132fd8a733975dfabb46de7ad277c6f202111

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp313-cp313-macosx_15_0_x86_64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp313-cp313-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 f76589f9208348e10bf4bcad9ed638adcce5f36cabcc2bb5c212eb69ed62bd9d
MD5 67f549beaa18e13d35e4b58b283b51d1
BLAKE2b-256 2fa7f16b7c71321e503fdc2f9f625116fece84305cf352bb8776e6f444903810

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp313-cp313-macosx_15_0_arm64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e325b2ac31ffd141d0b10e594512a9fda2289032457feb368c593dee887b0f8b
MD5 f98652337b2e55f073456ae24aee0a08
BLAKE2b-256 6609ef67bd1222c30688c902ecaaefc75b542d94cf3781c07a4df2d1f2e6cebc

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp312-cp312-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp312-cp312-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 f4ae6117cfe810998912e260b97b2ec3e6de601a0f54834e955568e91556a32d
MD5 9b092dc4d817ab6f297f0d6a9793b566
BLAKE2b-256 4068c468daa7c48ad631f18964c752cab58fd06f80d3707960bccde0d156b41e

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp312-cp312-macosx_15_0_x86_64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp312-cp312-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp312-cp312-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 8f6b9c0c191f729a44806716251db3369a7122f648974d1454f6ff25e549187e
MD5 6085dc15100707c95eea40f0b666c47d
BLAKE2b-256 153f769b3e0516765ce8e8d2eaade868c5d2e6de812a6091d3e96ac452e439ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp312-cp312-macosx_15_0_arm64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 36c0f2e56ca2ac879d1141cca55733614f2e695fd278fe7b0c1b210d492b90db
MD5 c604e5786ef0c38ec8c645332912926f
BLAKE2b-256 5e0c765b5d52971aec7cb6205e815087e19fdfe817eabb48fc5c05bdb92c70b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp311-cp311-manylinux_2_28_aarch64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp311-cp311-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp311-cp311-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 f202238f9fcf7c7922482638abbbe65561c43a5a38872f93656698dae80cae6a
MD5 31f0896b5b33e10254b349b1e4fa32b5
BLAKE2b-256 eab72732cbcb9bc53f08a742ed1130e0e9294928b38fe4b3458322eed7d4f9a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp311-cp311-macosx_15_0_x86_64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp311-cp311-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp311-cp311-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 5b91caabdb396967835742edaadf9a7d3686b3ab1a5276e93e80a7266d0be76f
MD5 728507dc31302b0e434b232f969b6fc7
BLAKE2b-256 7cf8c4d6ee6af80f31daa2e04465d1a815ca220df0ef336037936d7480767924

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp311-cp311-macosx_15_0_arm64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 1ef7db50a5b606474be7d749e29190e5b4b394bd5ed283734d8188d691cc3010
MD5 b20b3851bc888c3fbb820159688e9cb5
BLAKE2b-256 aa38b11d157e516fe7c11d1c4c10d317de9975108b316caf3a18b73b33e97833

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp310-cp310-manylinux_2_28_aarch64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp310-cp310-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp310-cp310-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 0b11420383a438a25a627affefc264e7eca842edf8c34a7f6e9fcb9c966a2ba3
MD5 77a28cacd2896787e8f6ea928270cd51
BLAKE2b-256 58c2e79c61581648bdca26e58b026573870c4d58f91d2f06ec82f27cde049c47

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp310-cp310-macosx_15_0_x86_64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tarzi-0.2.1-cp310-cp310-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for tarzi-0.2.1-cp310-cp310-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 cd154a7adcadd2f33d5c3a4ccd2cfecb65a7b2ba87806c30f2c7e9c6f60ca3a7
MD5 707d445b5e378025c30e20d90f32b96a
BLAKE2b-256 181ca9e86bd23607cb5ecbd593fec8c218f36d30366c058e03de1e45d3a6918e

See more details on using hashes here.

Provenance

The following attestation bundles were made for tarzi-0.2.1-cp310-cp310-macosx_15_0_arm64.whl:

Publisher: publish.yml on mirasoth/tarzi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.2.3

19 files

0.2.2

19 files

This release

0.2.1 This release

19 files

0.2.0

19 files

0.1.11

19 files

0.1.10

19 files

0.1.9

18 files

0.1.6

24 files

0.1.5

24 files

0.1.3

14 files

0.0.21

12 files

0.0.15

12 files

0.0.12

12 files

0.0.11

12 files

0.0.10

12 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page