Hi HN, I’m Sashank and I'm excited to share Exponent. Exponent is an AI programming assistant that runs in any environment (terminal, web, CI, IDE, remote), can perform simple tasks up to multi-step workflows, and is easy to steer. Our early users have been using Exponent to debug Docker setups, improve query performance, onboard new teammates, automate CI fixes and incident response, and more.
I know there are many options and preferences (and probably fatigue) for AI coding tools. After building and using many of these tools, I repeatedly found the same limitations: opaque behavior, difficulty steering outputs, or being locked into just one environment like an IDE or terminal.
So, I built Exponent to be the AI programming agent that I would want to use. It feels great to work alongside, but is also powerful enough to complete work end-to-end. It runs anywhere: I can use Exponent to debug an error in my local development environment while another instance of Exponent runs in a CI pipeline which auto-fixes typechecking errors, without needing any other tooling. And it has a clean, intuitive interface which shows me exactly what the agent is doing instead of obfuscating it.
Right now, Exponent is best for people who:
- View AI collaboration as a skill: you think working with AI is worth improving at, and would use a tool that rewards and encourages high-quality interaction vs. using an agent that tends to go off the rails.
- Want a single tool for multiple contexts: you work in some combination of in your terminal, against CI, with your database, on remote machines you ssh into, and you want consistent context and capabilities across all of them.
- Use other pro software: you are partial to tools like Raycast, Linear, etc. because you have a low tolerance for friction.
And here are some ways you can quickly see if Exponent resonates:
- Try something you're unsatisfied by other AI tools for: Pick a scenario you've been frustrated by elsewhere, and see how Exponent handles it.
- Pick the next task on your to-do list: Whether it's frontend, backend, or infrastructure, a side project or a chore at work, just ask Exponent and it will collaborate with you on working through the task.
- Play: Experiment casually--ask Exponent to do the worst refactor it can think of, or run an obscure but interesting git operation, or autogenerate an exponent.txt. You'll get a feel for the UX and judge how you'd approach a more serious task.
We'll be quickly improving the agent with your feedback, as well as launching complementary products in the coming weeks. Please reach out to us with any feedback or requests you have!
For code review: At my previous company we used Phacility/Phabricator but unfortunately it's no longer maintained[1]. Both my previous and current companies have since switched to using Graphite[2], which has delivered a pretty compelling stacked PR and code review experience.
Oh my god, it finally happened! I've been waiting for someone to make something like this for ages. The best part is I can use this for my own work without forcing my team to. Thanks for sharing! So far, it seems pretty good.
Shameless plug but anyone interested in a code review tool on top of GitHub may also want to check out CodeApprove (https://codeapprove.com). It's got a lot of the things that people from FAANG companies, especially Xooglers, miss about the excellent internal code review tools those companies have.
Phabricator is no more actively maintained but its author (Evan) is still doing some improvements and recently applied a security fix. The latest release https://secure.phabricator.com/w/changelog/2022.15/
There is also plz.review which more closely mirrors gerrit (ui flow, keyboard driven, etc). Plus I found the cli more pleasing to use than graphites. But glad there are finally options in this space!
How does it compare to using Gerrit? It doesn't come with a custom cli wrapper around git, but the code review experience is getting fairly close to critique these days. Self hosting, GitHub wrappers, and paid hosts are all available so there is a lot of flexibility.
This looks great! Do you have plans on producing JSON output in addition to HTML output? I have a larger custom website in which I need to embed my Python documentation in. I currently rely on Sphinx for this, but would love to switch over to something simpler.
What kind of JSON format would you be looking for? Is there some sort of standard I'm not aware of? Generally speaking it's quite easy to change the output format, one just needs to swap out the Jinja2 template. :)
We first got some attention after collaborating with OpenAI on one of their API features last year: https://x.com/OpenAIDevs/status/1853564730872607229, and we're ready to open to a wider audience.
Here's a quick demo: https://www.youtube.com/watch?v=oN0vU_FbE7c and if you want to try Exponent, get started here: https://exponent.run/.
I know there are many options and preferences (and probably fatigue) for AI coding tools. After building and using many of these tools, I repeatedly found the same limitations: opaque behavior, difficulty steering outputs, or being locked into just one environment like an IDE or terminal.
So, I built Exponent to be the AI programming agent that I would want to use. It feels great to work alongside, but is also powerful enough to complete work end-to-end. It runs anywhere: I can use Exponent to debug an error in my local development environment while another instance of Exponent runs in a CI pipeline which auto-fixes typechecking errors, without needing any other tooling. And it has a clean, intuitive interface which shows me exactly what the agent is doing instead of obfuscating it.
Right now, Exponent is best for people who:
- View AI collaboration as a skill: you think working with AI is worth improving at, and would use a tool that rewards and encourages high-quality interaction vs. using an agent that tends to go off the rails.
- Want a single tool for multiple contexts: you work in some combination of in your terminal, against CI, with your database, on remote machines you ssh into, and you want consistent context and capabilities across all of them.
- Use other pro software: you are partial to tools like Raycast, Linear, etc. because you have a low tolerance for friction.
And here are some ways you can quickly see if Exponent resonates:
- Try something you're unsatisfied by other AI tools for: Pick a scenario you've been frustrated by elsewhere, and see how Exponent handles it.
- Pick the next task on your to-do list: Whether it's frontend, backend, or infrastructure, a side project or a chore at work, just ask Exponent and it will collaborate with you on working through the task.
- Play: Experiment casually--ask Exponent to do the worst refactor it can think of, or run an obscure but interesting git operation, or autogenerate an exponent.txt. You'll get a feel for the UX and judge how you'd approach a more serious task.
We'll be quickly improving the agent with your feedback, as well as launching complementary products in the coming weeks. Please reach out to us with any feedback or requests you have!
Try Exponent and let me know what you think: https://www.exponent.run/.