Project Info
Inspiration
Last week, one of us spent three hours messaging eleven different sellers on Facebook Marketplace just to buy a desk. Four never responded. Two disappeared after we'd already agreed on a price. We hadn't bought a desk, we'd just wasted an afternoon scrolling and waiting. That frustration turned into a bigger question: why does secondhand shopping still work the same way it did a decade ago, even as the market around it explodes. The global secondhand market is now worth roughly $393 billion, growing nearly four times faster than retail, with Gen Z and millennials driving most of that growth. Secondhand already wins on price, the problem has always been finding the right item without losing hours to spam and unresponsive strangers. Everyone we knew had their own version of this story, students furnishing apartments, friends building PCs on a budget, resellers flipping for extra income. We also weren't alone in thinking AI could help, nearly two thirds of shoppers already say they're comfortable letting AI handle part of the buying process. So we set out to build something that doesn't just search for you, it goes out and gets the deal.
What it does
Picture this: you fill out a quick form describing what you want, your budget, your location, your condition preferences. Seconds later, five AI agents are simultaneously messaging five different sellers across multiple marketplaces, each one reading the room and negotiating like a sharp human would. One agent realizes its seller mentioned moving out this weekend and leans into a same day cash offer. Another senses a firm, no nonsense seller and switches to a respectful, no haggle close. Meanwhile, a sixth agent, the manager, is watching all five conversations at once, deciding in real time which seller is actually worth pushing harder on and which negotiation isn't worth the effort. Bang4YourBuck is an autonomous shopping agent built for the messiest, most human corner of ecommerce: secondhand, peer to peer marketplaces, where there is no checkout API and no structured pricing, just a stranger on the other end of a chat. You approve the final price, we handle everything that gets you there.
How we built it
This project would not have come together without leaning hard into our sponsor stack, and honestly, each piece earned its place. LangGraph is the backbone of our agent orchestration. It let us model our manager and worker agents as a real graph of coordinated state instead of a tangle of prompt chains, which is the only reason a six agent swarm was even manageable in a weekend. Browserbase gave us reliable, real browser automation against live marketplace listings, something that would have been a nightmare to hand roll with brittle scraping scripts. It just worked, even against sites that actively resist bots. Redis 8 is doing more heavy lifting in this project than any other single piece of infrastructure. We embed every listing as a vector and run native Redis vector similarity search to confirm two items are actually comparable before letting one agent's negotiated price become leverage for another, so a banged up item selling cheap never gets mistaken for a comp against a mint condition one. On top of that, Redis Pub/Sub broadcasts live price breakthroughs across all five agents instantly, while a Redis Stream keeps a permanent, replayable log of every single negotiation event. Vector search, real time messaging, and durable event logging, all from one platform, is genuinely what made our shared intelligence layer possible. Anthropic's Claude powers every agent's reasoning, from reading a seller's tone to deciding which negotiation tactic to deploy. The quality of judgment we got out of the model, distinguishing a motivated seller from a stubborn one, choosing when to bundle versus when to walk away, is what turned this from a scripted bot into something that actually feels like it is negotiating. Arize Phoenix, auto-instrumented on top of LangGraph and the Anthropic SDK, gave us full tracing of the entire swarm with almost no setup. Because we made sure each worker's negotiation is nested as its own clean subtree, we can click into any single agent mid demo and watch its exact conversation and Redis reads happening live. The first time we saw all five negotiations rendered as a clean execution tree, in real time, was the moment this stopped feeling like a hackathon project and started feeling like a real product.
Challenges we ran into
Coordinating multiple agents without duplicated effort was harder than it sounds. Early on, our workers would sometimes chase the same listing or act on stale information, so we had to build real communication between the manager and workers instead of just letting them run independently. Designing negotiation logic that actually felt human, rather than a script repeating the same lines, took a lot of iteration against real listings. We also had to scope aggressively. We had bigger ideas than we had hours, so we made deliberate trade offs about which features mattered most and cut the rest so we could ship something that worked end to end rather than something half finished across too many features.
Accomplishments we're proud of
Watching five agents negotiate live, each reading its seller differently and reaching for a different tactic, while a sixth agent dynamically reroutes strategy across all of them, is the most genuinely exciting thing any of us have built. It does not feel like five copies of the same chatbot, it feels like five negotiators on a call floor. We're especially proud of getting Redis vector search to do real condition aware leverage matching instead of a naive lowest number broadcast, and of getting full Phoenix tracing working cleanly across a parallel agent swarm, which let us prove on stage, not just claim, that the system is doing exactly what we say it's doing.
What we learned
We learned that real multi-agent coordination means agents that actually change each other's behavior, not just agents that report back to a shared list. We learned how much a single platform like Redis can carry when you actually dig into its newer capabilities, vector search, Pub/Sub, and Streams covered three completely different problems for us without adding three different pieces of infrastructure. And we learned that observability is not a nice to have bolted on at the end, tracing our agents from day one made debugging faster and gave us our single best demo moment.
What's next
We want to expand beyond furniture and electronics into more categories, and bring in more marketplaces beyond the ones we focused on this weekend. We're also interested in handling logistics after a deal closes, like coordinating pickup times or connecting with local delivery options. On the negotiation side, we want to keep sharpening our agents' tactics with more real world data so they get better at reading sellers and timing offers. We also want to build in real scam protection, flagging listings and sellers that show common fraud patterns before a user ever starts negotiating. On the search side, we want to combine keyword search with our image and description matching so results stay accurate even when a listing's photos or text don't fully line up. And we want our agents to actually assess the product itself, checking that the condition and details match what's described before any negotiation even begins, instead of taking a listing at face value. Longer term, we'd like to support frequent users like resellers and flippers with tools that go beyond a single purchase and help them track opportunities across the market over time.
Analysis
View
Metric
- 10
- 5
- 4
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- FastAPIIn code
- HTMLIn code
- JavaScriptIn code
- LangChainIn code
- PythonIn code
- ReactIn code
- RedisIn code
- Tailwind CSSIn code
- TypeScriptIn code
- DockerClaimed
10 of 11 appear in the indexed code. 1 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
291 KB
Source files
33
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
pranavgowrish/Dealbot
42 files · 494 KB · @ 1047318
Structure
Interface
9 files · 21%Screens, components and styles rendered to the user.
Application logic
21 files · 50%Domain rules, services and shared utilities.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- Python70%
- TypeScript20%
- CSS10%
- HTML0%
- JavaScript0%
- YAML0%
- Other (1)0%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
backend/requirements.txt
pypi · 18- arize-otel
- browserbase
- dotenv
- fastapi
- langchain
- langchain-anthropic
- langchain-core
- langgraph
- openinference-instrumentation-langchain
- paho-mqtt
- playwright
- pydantic
- python-dotenv
- redis
- redisvl
- sentence-transformers
- stagehand
- uvicorn
frontend/package.json
npm · 13- framer-motion
- mqtt
- react
- react-dom
- +9 more
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.