Inspiration

This project came from seeing the same research bottleneck from two different sides. One of us saw a bio researcher repeatedly depend on others for even small software changes because she could not code, while the other became the designated coder on a research team and saw the whole workflow stall once that support was gone.

What it does

Our project is a Slack-native AI workflow system for interdisciplinary research teams. A researcher can describe a change in plain language, and the system turns that request into either a grounded implementation plan and GitHub pull request workflow, or an advice memo if the request is too exploratory to execute safely.

How we built it

Committable is implemented as a service-oriented Python application. The web layer is built with FastAPI and handles Slack and GitHub authentication. Background execution runs in a dedicated worker process that polls a persisted job queue and advances requests through a deterministic lifecycle. For persistence, we use SQLAlchemy with Alembic migrations and a relational schema. The context-to-plan pipeline is modular. Slack context is normalized first, then passed to a context compiler that produces a strict, schema-shaped brief with constraints and evidence references. A strategy layer generates multiple implementation options, and a ranking layer evaluates idea fit, execution risk, and rollout safety before anything touches code. Only after explicit approval do we enter execution mode, where the system prepares a branch-scoped workspace, runs constrained code tasks, executes checks, and opens a PR through GitHub APIs.

Challenges we ran into

The hardest problem was translating messy, informal Slack requests into precise technical scope without over-interpreting intent. We also had to enforce a reliable decision boundary between “execute code changes” and “return advisory memo,” while keeping every action traceable and reviewable. On the systems side, we dealt with asynchronous complexity across Slack, background jobs, and GitHub APIs, including idempotency, retries, and safe branch-only execution under failure conditions.

Accomplishments that we're proud of

We are proud that we built a system that does more than generate code, it understands research requests in context, connects them to a real repository workflow, and produces reviewable outputs instead of isolated responses. We are also proud that we designed clear safety boundaries, so the system can distinguish between requests that should become pull requests and requests that should stop at advice, which makes it much more practical for real interdisciplinary teams.

What we learned

We learned that the biggest bottleneck in research software is often not writing code, but translating domain knowledge into safe technical changes. We also learned that AI is much more useful in this setting when it fits into existing team workflows like Slack, review, and pull requests instead of acting like a standalone coding tool.

What's next for committable

Next, we want to make Committable more stable and better at understanding context. This means improving how Committable reads Slack conversations and project details so it gives more accurate plans and better recommendations. In short, we want it to be more reliable day to day and smarter about what teams actually mean when they ask for changes.

Built With

  • cryptography
  • fastapi
  • githubapi
  • hermescliintegration
  • httpx
  • kiro
  • openaiapi
  • postgresql
  • pydantic
  • pydantic-settings
  • pyjwt
  • pytest
  • python
  • ruff
  • slackapi
  • sql
  • sqlalchemy
  • uv
  • uvicorn
Share this project:

Updates