Inspiration
A developer solves a difficult problem, figures out why something broke, makes an important decision, and moves on. A few weeks later, someone else on the team runs into the same problem and starts from scratch.
That happens constantly in software development. The code stays, but the reasoning behind it disappears into old conversations, scattered documentation, or someone’s memory.
AI coding tools introduce another challenge. They can generate code quickly, but they may also make decisions the developer never explicitly considered.
We built Grep around one question:
What if every problem solved by one engineer could make the next engineer’s work easier?
What Grep Does
Grep brings shared engineering knowledge directly into the terminal.
Developers can describe a problem in their own words and use semantic search to find explanations contributed by teammates. They can also record new discoveries from the same workflow, allowing useful technical context to stay with the team instead of disappearing after a problem is solved.
Our goal is to create a simple cycle:
Find what the team already knows → apply it → learn something new → share it for the next developer.
Understanding AI Generated Code
We also built Grep to help developers understand the decisions being introduced by AI generated code.
Before an implementation request reaches the coding agent, Grep evaluates whether important behavior is still unclear. When those uncertainties appear in the resulting code, Grep generates review questions grounded in the exact files and lines that changed.
For example, a request like:
Add search to the customer list
may sound simple, but several decisions are still unstated.
Should search use names, email addresses, or both? What happens when the query is empty? How should matching behave?
The AI still has to make those decisions when generating the implementation.
Grep surfaces them and asks the developer to inspect the actual code and explain what it does. This keeps developers involved in the reasoning behind their code instead of only accepting the final output.
What We Built
We built a Go terminal application that connects to Codex app server for coding conversations, commands, tools, and file changes.
We created a backend that handles:
- Prompt evaluation
- Authentication
- Knowledge storage
- Review generation
- Developer activity
For the reasoning layer, we integrated Snowflake Cortex to analyze implementation requests and generate structured evaluations and review questions.
For shared engineering knowledge, we use MongoDB Atlas with vector search. This allows developers to search previous technical insights by meaning rather than requiring exact keyword matches.
We also integrated GitHub OAuth so users can securely sign in to Grep. Their authenticated identity allows knowledge contributions and activity to be connected to the correct user and organization.
Alongside the terminal experience, we built a React and TypeScript dashboard to visualize developer activity, review results, and how knowledge grows across the team.
Why Grep Matters
The purpose of Grep is to turn individual engineering work into shared progress.
When one developer solves a difficult problem, that knowledge should not disappear when the terminal closes.
Their explanation could help another teammate avoid repeating the same investigation. A decision discovered while reviewing AI generated code could become useful context months later. Knowledge collected across the organization could also give AI coding agents better context when working inside the same codebase.
Instead of every engineer and every AI agent starting from zero, Grep gives them access to what the team has already learned.
AI can help developers write code faster. Grep helps make sure the team’s understanding grows with it.
Built With
- amazon-web-services
- golang
- mongodb
- react
- snowflakes
Log in or sign up for Devpost to join the conversation.