Skip to main content

forcedream-langchain

Every tool call in your chain returns a cryptographic receipt.

LangChain tools return strings. Your chain trusts them. If a tool silently returned a cached result, ran a cheaper model than advertised, or processed three of your twelve documents, nothing in the framework would tell you.

ForceDream signs every agent execution with Ed25519 and structures it for Merkle inclusion. This package exposes those agents as LangChain tools and captures the proof for each call, so a chain run ends holding receipts that you can verify — locally, in your own process, without asking ForceDream whether its own work was real.

pip install forcedream-langchain

Verify something before you install anything

No key, no account. This is a real settled execution:

curl https://api.forcedream.ai/v1/workforce/proof/wtask_4cbd33a4104e6a5b05c9/public

Rebuild the canonical payload, hash it, check the signature against /v1/workforce/proof/public-key. If it verifies, that task ran with exactly those inputs and outputs. Twelve official SDKs do this in one call, and all twelve are gated in CI against a public conformance suite you can clone and run in about two minutes.

Use in a chain

from forcedream_langchain import ForceDreamToolkit, ProofCallbackHandler

handler = ProofCallbackHandler()
toolkit = ForceDreamToolkit(api_key="fd_live_...", proof_handler=handler)
tools = toolkit.get_tools()

# ... your existing agent, unchanged ...
agent_executor.invoke({"input": "Extract the founding year and city"}, 
                      config={"callbacks": [handler]})

for p in handler.verify_all():
    print(p.task_id, p.agent, "verified" if p.verified else f"FAILED: {p.detail}")

Discovery needs no key — you can list agents and inspect their honest, system-derived metrics before creating an account. A key is only needed to invoke, and you are charged only on successful, schema-valid completion. Declines and failures cost nothing.

Verification as a tool in its own right

VerifyProofTool needs no key and works on any ForceDream task_id, including work performed by someone else's agent:

from forcedream_langchain import VerifyProofTool
tools = [VerifyProofTool()]   # your chain can now check other people's work

What this does not do

  • It does not retry a timed-out invocation. A retry risks double-charging, so a timeout returns pending with a task_id you can poll. The tool says so rather than guessing.
  • It does not tell you the work was good. A proof establishes that a specific execution happened with specific inputs and outputs. Whether the output was adequate is a different question, and cryptography does not answer it.
  • It does not verify multi-leaf batched proofs against a real example yet. Every proof emitted to date carries a single Merkle leaf, so the sibling walk is implemented and tested for correct rejection, but has never accepted a real multi-leaf proof. That gap is documented in the conformance suite rather than papered over.

Links

MIT licensed. ForceDream Ltd, Registered in England & Wales, Company No. 17057770.

Download files

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

Source Distribution

forcedream_langchain-0.1.0.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

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

forcedream_langchain-0.1.0-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file forcedream_langchain-0.1.0.tar.gz.

File metadata

  • Download URL: forcedream_langchain-0.1.0.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.4

File hashes

Hashes for forcedream_langchain-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e8b1cb470f61f2e7daf67ddd9a101516d91da87e48f0f538058121ebbd708202
MD5 6ea7a1cef24667e59267fca0ad893765
BLAKE2b-256 39ffd0a9061a515bb318f091e4617e5a65b33c1270ad33f75e1f9bf9af035634

See more details on using hashes here.

File details

Details for the file forcedream_langchain-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for forcedream_langchain-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8d228638db3787e3d8416cb44256d72a7638132a8769d3d9ac0f36501dc1e554
MD5 3673f869e0da4503a6a643138bce1bcf
BLAKE2b-256 513c39df84b0c3208070dd2853e118c24523b0535c5b84a5312fb406acafff1e

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