Attend Attend

Worker Tools

Manage worker

Tune the role and tools for this agency teammate. Graph wiring stays internal.

Tools

Loading...

Worker View

No tools selected
Team worker Untitled Agent Describe what this agent should do. HurozoAgent

Worker Chat

Describe the worker you want to add to this team, or what you want to change.
Draft JSON
{}

Teams

Teams are managed from Agency.

Connectors

Connectors

Connect services for the current agency

Loading connectors…

Agency

Team workspace

Planning

Filters

Build

Runs

Execution activity

Runs

Inspect Worker work, tool calls, reasoning summaries, and failures.

Select a run to inspect its activity.

Files

Agency files

    Documentation

    Contact Us

    New message

    To: hi@hurozo.com

    Hurozo CLI

    Terminal-first agent work

    Hurozo CLI

    The same Hurozo agent runtime, model routes, approvals, and connected tools from your shell.

    Install with Homebrew
    brew tap hurozo/hurozo-cli
    brew install hurozo-cli
    Hurozo CLI running in a terminal

    Model routing

    Switch between Hurozo, Gemini, Opus, and ChatGPT-backed routes when your account is configured for them.

    Approvals

    Review tool permissions from the terminal and keep remembered decisions scoped to the exact operation.

    Second opinions

    Use model arbitration to ask another available route for critique, checks, or a different perspective.

    Connected tools

    Use the same account-backed connectors and skills available in Hurozo's desktop and WebCLI experiences.

    First run

    After installation, run hurozo. The CLI walks you through account authentication and any model-specific sign-in or secret setup that your selected route requires.

    Hurozo SDK

    Python agent invocation

    Hurozo SDK

    Invoke saved Hurozo agents from Python using the same API tokens, inputs, outputs, and runtime routing used by Agent Builder.

    Install
    pip install hurozo
    getting_started.pyPython
    import json
    import os
    
    from hurozo import Agent
    
    os.environ["HUROZO_API_TOKEN"] = "YOUR_API_TOKEN"
    agent = Agent("sentiment-analyser")
    inputs = {
        "prompt": "Analyze sentiment and return JSON. Text:",
        "input": "I am very happy!",
    }
    
    result = agent.run(inputs)
    print(json.dumps(result, indent=2))

    Agent lookup

    Use an agent name, saved agent id, or agent UUID. The SDK resolves the correct execution target.

    Structured inputs

    Pass a Python dictionary matching the API input keys exposed by the saved workflow.

    Hosted runtime

    Runs against Hurozo's execution endpoint, including model routing, tools, outputs, and usage accounting.

    Token setup

    Create an API token from Account settings -> Manage API Tokens, then set it as HUROZO_API_TOKEN before running scripts.

    Returns and refunds · a live case

    “Can I get a refund?” Answered by your policy, and the money held for a person.

    The return your queue fills with, and the one your customer is braced for a fight over. Attend checks the order against your returns policy, gives one clear answer, and holds the refund for a person to release.

    New message · web chat 09:14
    My sofa arrived with a torn seam. I want to send it back and get my money back.
    Attend is reading it
    What deciding it by hand costs you

    Right now, every refund is a judgment call.

    Your team opens the order, digs for the policy, weighs the damage photos, and decides. Too soft and the money leaks. Too firm and you lose the customer. And it lands differently depending on who is on the desk.

    ~25%
    of e-commerce support contacts are returns and refunds, second only to order questions.
    Freshworks benchmark · 2025
    71%
    will not buy again after a poor returns experience, and a damaged sofa is the worst kind.
    NRF / Happy Returns · 2025
    57%
    will not come back after being charged for a return they felt was owed.
    NRF / Happy Returns · 2025

    External research, cited above.

    How the crew handles this one

    It decides by your policy, and holds the money for a person.

    Attend · returnsobserve mode · sample data
    ReturnMy sofa arrived with a torn seam. I want to send it back and get my money back.
    Order FUR-20418 · delivered 6 days ago · 3 photos attached
    ✓
    Inside your 14-day return window.from your canonReturns policy · delivered 6 days ago
    ✓
    Damaged on arrival, with photos. Covered in full, no restocking fee.
    ✓
    A full refund is owed, and a pickup booked. Not a partial.
    The answer: yes, the full €1,240 back, and we collect the sofa. One answer, from your policy, not a guess and not a fight.
    money gateIt will not move the money on its own. The €1,240 refund is held for a person to release.
    order + policy, liveReturns policy · the order · refund system

    Sample data, in observe mode. On your own returns, every decision is checked against your policy and cited to the line, and the refund is held for a person to release.

    You may already run a returns portal

    A returns portal takes the return. It doesn’t make the money call.

    A returns portal
    LoopAfterShip ReturnsNarvar
    Slick self-serve returns and a printed label. But it runs the portal, not the money call. It waves the easy ones through and stalls on the damaged one, in no one’s voice.
    A general chatbot
    off-the-shelf AI
    Fast to set up. It invents a refund rule it cannot stand behind, or refuses one you owe. Either way it speaks for you, in public.
    By hand
    your team + inboxes
    Real judgment. But it is slow, it lands differently every time, and the money leaks or the customer is left to fight for it.
    Attend, on this job
    Checks the order against your policy, gives one answer in your voice, and holds the refund for a person to release. Keeps the returns portal you already run.
    What it grounds in for this job

    It reads the order, your returns policy, and your refund system. No refund it cannot back with a line.

    Your canonReturns and warranty policy Order and deliveryThe order, live, from your ERP Refund and paymentWhere the money moves, held for a person

    Attend connects to the systems you already run. See the integrations →

    Proof

    Every refund decision, and the policy line behind it, is yours to inspect.

    matched to your policysample log · RMA-20418 · 09:02 CET
    Decided from: Returns policy + the order, live. Held refunds are logged too.
    read the ordermatched to your policy linenothing from the open weblogged and replayable

    Every decision, and every held refund, is one record you can open, replay, and export. Designed around the EU AI Act, on a source you own.

    You own it EU AI Act, by design EU residency on our roadmap A person releases every refund
    Own the money call your customers fear

    Answer “can I get a refund?” by your policy, every time.

    Checked against your policy, cited to the line, and a person on every payout.

    The pilot is risk-free on the investment. If it does not hit the KPIs you agree, you do not pay for the sprint.

    See how the first weeks work: First steps →