Skip to main content

eqbuilder

Score your AI agent's replies for human-likeness before sending — and check they stick to your approved facts. No account, no API key. 3 free scores, then pay-per-score (~5¢) in USDC on Base via x402 — the buyer wallet needs zero gas, USDC only.

# pip install eqbuilder
from eqbuilder import EqBuilder, WishlistRequired

eq = EqBuilder()
result = eq.free_score(
    "Sounds good — I'll double-check the invoice and get back to you.",
    delay_seconds=4.2,
    profile="analytical_executive",
)
print(result["eq_score_percentage"], result.get("suggested_prompt_addition"))

Free trial note — 3rd score: The final free score is gated behind a one-time wishlist step. Before calling free_score for the third time, POST your feature wish:

import requests
requests.post(
    "https://eqbuilder.dev/api/wishlist",
    json={"need": "a profile for customer-support bots", "audience": "bot"},
)

No free round is consumed until you do. The SDK raises WishlistRequired (a subclass of EqBuilderError) if you forget, with step-by-step instructions in the exception message.

LangChain (one line)

# pip install "eqbuilder[langchain]"
from eqbuilder.langchain_tool import get_langchain_tools

tools = get_langchain_tools()  # add wallet_key="0x..." to keep scoring after the free trial

CrewAI

# pip install "eqbuilder[crewai]"
from eqbuilder.crewai_tool import HumanLikenessScoreTool

agent = Agent(role="support", tools=[HumanLikenessScoreTool()], ...)

Everything at once: pip install "eqbuilder[all]" (payments + LangChain + CrewAI).

Paid scoring (after the 3 free scores)

# pip install "eqbuilder[payments]"
eq = EqBuilder(wallet_key="0x<private key of a wallet holding USDC on Base>")
result = eq.score("...", delay_seconds=4.2, profile="analytical_executive")
deep   = eq.score("...", delay_seconds=4.2, profile="analytical_executive", tier="deep")

Payment is a signed, gasless USDC transfer authorization (EIP-3009) sent in the X-PAYMENT header — the platform's facilitator settles it on-chain. A malformed request is rejected before any money moves.

Script adherence (paid)

check = eq.script_check(
    reply_text="The plan is $49/mo, see example.com/pricing",
    approved_facts=["Plan price is $29/mo", "Docs: https://docs.example.com"],
)
# flags the invented $49 price and the off-script URL

Improvement loop

def rewrite(text, suggestion):
    return my_llm(f"Rewrite this reply. {suggestion}\n\n{text}")

final = eq.improve("...", 4.2, "analytical_executive", rewrite, max_rounds=3)

Download files

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

Source Distribution

eqbuilder-0.1.3.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

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

eqbuilder-0.1.3-py3-none-any.whl (11.6 kB view details)

Uploaded Python 3

File details

Details for the file eqbuilder-0.1.3.tar.gz.

File metadata

  • Download URL: eqbuilder-0.1.3.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for eqbuilder-0.1.3.tar.gz
Algorithm Hash digest
SHA256 62f141808521c48c9aed294ca8f1f3ae08d656fc0805a2df95f27f4b5f6d74de
MD5 d8655368f145e33463362a146e7e9bb7
BLAKE2b-256 36651d27254b18bf8d02d5e50137c419b4b3df66e3d99b81989c32dd1e4749df

See more details on using hashes here.

File details

Details for the file eqbuilder-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: eqbuilder-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 11.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for eqbuilder-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 21c5754d435b0e8983fbdb21fcfdc0ffe8b405590f469301c52ac1d4e48e5807
MD5 1f2be88488512da1105b43464d39837e
BLAKE2b-256 45a009e4914ab1e438c6b375e31a95209b7e7eb4e2413451182861fa2f743cd7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page