Lattice
A Slack agent that turns bug reports into tickets and pull requests.
Built at Hack the North 2025, Lattice lives in your Slack threads. @mention it on a bug discussion and it extracts a structured report, files a Jira ticket, analyzes the repo, and opens a GitHub pull request with a proposed fix — routing every model call through Martian’s Deimos Router to keep quality high and cost low. It won the event.
# bug-reports· thread
sam2:14 PM
alex2:15 PM
Latticeapp2:15 PM
On it — reading the thread.
✓extract_reportseverity: high
✓jira.create_ticketBUG-142
✓repo.analyzecheckout/discounts.ts
✓github.open_pr#87
fix: dedupe discount codes before allocation#87
+38 −6·open — review requested
The problem
Bugs are found in conversation and lost in conversation. Someone notices something broken, types it into a Slack thread, a few people react — and then the hard, forgettable part begins: writing it up, filing a ticket, finding the relevant code, and actually proposing a fix.
Every one of those steps is manual, and every hand-off is a place the bug can quietly die. We wanted to collapse the distance between “someone mentioned this in Slack” and “there’s a ticket and a fix in review.”
How it works
Lattice listens for @mentions via Slack Bolt. When it’s tagged in a thread, it reads the conversation and uses Cohere to extract a structured bug report — summary, reproduction, severity — from the messy back-and-forth.
From there, an MCP server acts as the orchestrator. It treats each capability — creating a Jira ticket, analyzing the target repository, opening a GitHub pull request — as a discrete tool the agent can call. Every language-model request is sent through Martian’s Deimos Router, which picks a cost-appropriate model per call instead of paying top-tier prices for every token.
Engineering decisions
The MCP architecture was the key call. By modeling Jira, GitHub, and code analysis as independent tools behind a Model Context Protocol server, the agent’s reasoning stays separate from its integrations — you can add, swap, or repair a tool without touching the core.
Routing through Deimos meant we could be aggressive about using LLMs everywhere in the pipeline without the bill (or the latency) that usually implies. And crucially, Lattice opens a pull request rather than merging one — the human stays in the loop at exactly the moment judgment matters.
The hard parts
Doing all of it inside a hackathon window meant the pipeline had to work end-to-end, live, in front of judges — Slack event to open PR — with no room for a step to silently fail. Keeping AI-generated fixes trustworthy enough to review, and fast enough to feel like part of the conversation, was the constant tension.
Outcome
Lattice won Hack the North 2025. More than the result, it’s the project that got me hooked on agentic systems — tools that take real actions in real systems, with a human holding the final approval.