Metadata-Version: 2.5
Name: langchain-sidequest
Version: 0.1.0
Summary: LangChain integration for SideQuest: let agents hire verified people for real-world tasks like checking a store, taking photos, making a phone call, or inspecting an item.
Project-URL: Homepage, https://sidequestpays.com
Project-URL: Documentation, https://sidequestpays.com/docs
Project-URL: Source, https://github.com/uckhill/Sidequest/tree/main/integrations/langchain
Author-email: Crescent Harbor LLC <hello@sidequestpays.com>
License-Expression: MIT
License-File: LICENSE
Keywords: agent tools,ai agents,human in the loop,langchain,langgraph,real world tasks,sidequest
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.9
Requires-Dist: langchain-core>=0.3
Requires-Dist: sidequestpays>=0.2.0
Description-Content-Type: text/markdown

# langchain-sidequest

Give your LangChain or LangGraph agent hands in the real world. [SideQuest](https://sidequestpays.com) lets an agent hire a verified local person to check a store, photograph a shelf or property, inspect an item before purchase, run a pickup and drop-off, or make a phone call. Every quest is paid upfront into escrow, and the person submits photo, GPS, and written proof.

## Install

```bash
pip install langchain-sidequest
```

Get an API key at [sidequestpays.com/post](https://sidequestpays.com/post) (or `POST /v1/requesters`), then:

```bash
export SIDEQUEST_API_KEY=sq_live_...
```

## Use

```python
from langchain_sidequest import SideQuestToolkit
from langgraph.prebuilt import create_react_agent

tools = SideQuestToolkit().get_tools()
agent = create_react_agent("anthropic:claude-sonnet-4-5", tools)

agent.invoke({"messages": [("user", "Check if Joe's Hardware at 412 Main St, Philadelphia is open right now and photograph the hours sign. Budget $15.")]})
```

Tools: `list_templates`, `create_quest`, `get_quest`, `list_quests`, `approve_quest`, `dispute_quest`, `cancel_quest`, `get_balance`.

Use `SideQuestToolkit(read_only=True)` for an agent that should only look up quests.

## Safety and spending

Create a capped agent key so an agent can't overspend: `POST /v1/keys` with `max_quest_usd` and `daily_limit_usd`, or require your approval by email for every quest with `requires_approval: true`. See the [docs](https://sidequestpays.com/docs).

## License

MIT
