Discover

Bruto

A task board that lives in your repo, for you and your AI
6 ratings4.35
Saves80
CategoryDeveloper Tools
PlatformWeb
PricingFree

Bruto is a free, open-source task board integrated directly into your project repository. It allows you to create, manage, and interlink tasks as notes that live locally in your project folder, enabling collaboration between you and AI tools like Claude Code, Cursor, or ChatGPT from the same tasks without needing accounts or cloud services. Bruto supports project context sharing, visual task mapping, cross-project linking, keyboard-first controls, and offline use, all while keeping your notes private and local.

open-sourcenotes

Ratings & Reviews

Write a review
4.35

6 reviews

Product
3.85
Design & Polish
4.85
Performance
4.35
Mobile PageSpeed
Performance
83 out of 100, Needs improvement
Accessibility
96 out of 100, Good
Best Practices
100 out of 100, Good
SEO
100 out of 100, Good

Website checks are queued. Results will appear here when complete.

Be the first to share a thoughtful review.

Information

CategoryDeveloper Tools
PlatformsWeb
PricingFree
AccountNot confirmed
ListedSeptember 2026
Report a problem

Website checks

Mobile PageSpeed
Performance
83 out of 100, Needs improvement
Accessibility
96 out of 100, Good
Best Practices
100 out of 100, Good
SEO
100 out of 100, Good

Website checks are queued. Results will appear here when complete.

Around the Web

Product Hunt80 source points · 9 comments

We came to the same approach too. We create a markdown file for each task. At the start we write the status and state. The approach is simple and works fine. I ran through your code because I was curious how you do the sync. And I think I found a possible problem there. The sync itself works well and is written carefully, but there is this scenario. Say we have an unsaved change to a note's state locally. At that same moment the AI agent changes the state of the same note. Then the local copy wins and rewrites the file. And it all looks fine. But the problem is that the AI agent thinks everything went through and that it made the change. And the log will say so. No errors. But in fact it's not true. How do you feel about adding a short line at the top, like "state was changed back"?

dimhold · Imported from Product Hunt

One from building a board like this: keep a task's age when it changes hands. On mine a task passed to someone else keeps its clock, otherwise something bounced back and forth for a week always looks like it arrived today. A small "sent back 3 times" on the note would do a lot of it here, since the round trip with the AI is the loop that repeats.

dalemooney · Imported from Product Hunt