Skip to main content
Contributors

Open Source

The people building Daintree.

Daintree exists because of the work below. Every merged PR and every resolved issue on daintreehq/daintree, every commit on develop, and the people behind them. Thank you.

Daintree is built in Daintree. Every recent PR below was reviewed in the desktop app itself.

contributions
649
last 30 days
PRs merged
6,483
all-time, every branch
resolved issues
177
filed by one person, fixed by another
contributors
12
all-time

Contributors

Credit where it's due.

The people who have contributed most to daintreehq/daintree, merged PRs first, with a writeup of what each has been building or finding.

Greg Priday

Creator

Creator of Daintree. Builds the desktop habitat, the agent integration layer, and the review-first workflow the rest of the app is arranged around. Most weeks that means working across the whole stack rather than inside any one system.

The last 30 days ran to 625 merged PRs, and plugins took the largest share. A project can load its own plugins from .daintree/plugins, each with one named MCP server. Plugins can now read declared databases, ship their own SVG icons, give their views an identity and header actions, list agents across every open project, read a terminal's screen behind a terminal:read permission, and track the actions they have running.

The last week brought dictation reliability fixes and new assistant powers over MCP: deleting worktrees, closing a pane it launched once the handback arrives, and changing Daintree's confirmation settings. Rendered Markdown now draws Mermaid diagrams, and the E2E suite was overhauled. Before that came a performance pass on re-renders and git spawns, and a consistency sweep that put UI controls onto shared primitives.

First contribution
November 2025
Merged PRs
6,457
Last contribution
Oct 3, 2026

Devendra Mulewa

Founding collaboratorEarly contributorReporterTestsCode

Works on test reliability and platform QA. Most of the pull requests land in the E2E suite and the Windows-specific paths that only break on CI. Most of the issues come from running Daintree on Windows and Linux and writing down exactly where it breaks: 51 of them so far, more than anyone else, each one fixed by Greg.

The reports read like a platform matrix. On Windows: a PTY with pid 0 starting the process detector and spamming invalid PID warnings, Smart App Control blocking the unsigned installer (and the follow-up request for Authenticode signing), a system requirements check failing on REG_EXPAND_SZ registry values, a better-sqlite3 ABI mismatch. On Linux: an AppImage write EIO on startup, the terminal opening blank from a fit-and-resize race, the CLI unable to open projects from the deb or AppImage. Across both: polling loops retrying a dead git path after a project directory was deleted, a terminal that would not clear its Paused backpressure state, a window restoring collapsed when an external monitor disconnected.

The pull requests are the same territory from the other side: coverage for untested Windows kill and shell paths and the write-error throttle in the pty layer, a fix for duplicate agent spawns when Enter arrives at the trust prompt, Windows CI failures traced to path separators and shell quoting, and a run of E2E repairs covering selector precision and adaptive timeouts.

First contribution
March 2026
Merged PRs
10
Resolved issues
51
Last contribution
Jun 26, 2026

Jonathan Borduas

Founding collaboratorEarly contributorReporterTestsDocs

Works on dev preview and the MCP server, with 12 merged pull requests and 35 resolved issues. Lately that means driving Daintree from the outside: running an orchestrator against the MCP server and reporting each place it couldn't do what an orchestrator needs.

Thirteen issues in September came from that work. There was no way to discover workspace ids, panel ownership didn't survive a client reconnect, a bound session couldn't keep its workspace resident, there was no interrupt short of destroying the panel, a closed terminal read the same as an idle agent, and a client couldn't confirm that a send was delivered. Each became an MCP feature: workspace.list, a session-scoped interrupt, client metadata on terminals, submission confirmation. The latest asks that a RESOURCE_NOT_OWNED refusal tell the agent how the user can hand the terminal over.

The pull requests are mostly test infrastructure around MCP: an end-to-end test covering bound-view eviction protection and a Playwright-free harness for the CDP renderer freeze. Earlier work added the per-worktree dev server port registry, the agent flavor system with CCR discovery, and the per-worktree remote compute lifecycle. A request for GitLab support alongside GitHub also shipped.

First contribution
March 2026
Merged PRs
12
Resolved issues
38
Last contribution
Sep 30, 2026

Andrew Misplon

ContributorEarly contributorReporterTestsCode

Uses Daintree the way a user does and files what turns up: 41 issues, each one fixed by Greg. Most came during the early releases in March and April 2026, and together they are a usability pass over the app, from the notes panel to the project switcher to what happens after a crash.

Two more came in September. The welcome screen didn't scale its layout or type up on large displays, and file paths that an agent's terminal UI hard-wrapped at the margin weren't linked correctly. Both were fixed within a day of being filed.

The earlier specifics: a saved note not editable in the modal view, custom session names not persisting across projects, dark mode toggle and button contrast, cursor states on modal close icons, tooltips missing from the refresh, plus, copy and menu icons, keyboard navigation in the projects list, a way out of a stuck loading screen, Start Fresh after a crash removing every existing project, a close warning, CMD W to close an instance, and Option Enter to insert a newline in the command input. The one pull request restored the fontFamily in the CodeMirror editor theme.

First contribution
March 2026
Merged PRs
1
Resolved issues
41
Last contribution
Sep 18, 2026

Y. Chamare

ContributorEarly contributorTestsDocsCode

Extended Daintree's built-in agent roster. Added Kiro CLI as a first-class agent, covering setup wizard integration, auth detection, and panel glue. Kiro users don't have to hand-roll a custom terminal recipe anymore.

Followed up with AWS SSO token support in the auth check, so Kiro users authenticating through an AWS identity center get detected correctly instead of bouncing through the setup flow on every launch. Also added Kiro to the README agent list and install section so newcomers evaluating the project can see the full agent lineup from the landing doc. Quiet, infrastructural work that makes agent onboarding invisible for a whole class of users.

First contribution
April 2026
Merged PRs
3
Last contribution
Apr 14, 2026

Carlos Martins

ContributorReporterActive

Reported a Windows 11 bug where the launch dialog kept saying the Claude Code binary wasn't found, even though the CLI ran fine from a shell and a restart cleared it for a while. The report traced it to two separate causes. On a native install, probeNativePaths checked the path without appending .exe, so claude.exe could never match. And one 10 second timeout covered the checks for all 18 or so agents; when it ran out, every agent was marked missing and the error was discarded. Greg fixed both the next day.

First contribution
September 2026
Resolved issues
1
Last contribution
Sep 11, 2026

Mudasir Shah

ContributorReporter

Found a terminal input ordering bug. When a submit timed out, its trailing Enter keypress was interleaved with the body of the next submit, so the second command reached the terminal out of order (issue #11875). Fixed in pull request #11882 on 20 August 2026.

First contribution
August 2026
Resolved issues
1
Last contribution
Aug 20, 2026

Growth

From the first commit to now.

Every commit on develop, bucketed by week. Markers show where each contributor first landed a PR or a resolved issue.

Total commits since Nov 2025
Nov 30Feb 1Apr 5Jun 7Aug 9
Weekly values
Cumulative commits over time
Week endingTotal commits
2025-11-30287
2025-12-071,006
2025-12-141,528
2025-12-211,839
2025-12-281,983
2026-01-042,186
2026-01-112,376
2026-01-182,494
2026-01-252,610
2026-02-012,936
2026-02-083,110
2026-02-153,259
2026-02-223,297
2026-03-013,545
2026-03-083,961
2026-03-155,169
2026-03-226,559
2026-03-297,381
2026-04-058,084
2026-04-128,360
2026-04-199,266
2026-04-269,680
2026-05-0311,133
2026-05-1012,855
2026-05-1713,795
2026-05-2415,440
2026-05-3116,425
2026-06-0717,718
2026-06-1418,147
2026-06-2118,542
2026-06-2818,808
2026-07-0519,101
2026-07-1219,484
2026-07-1919,834
2026-07-2620,331
2026-08-0220,809
2026-08-0921,045
2026-08-1621,259
2026-08-2321,514
2026-08-3021,949
2026-09-0622,620
2026-09-1322,927
2026-09-2023,442
2026-09-2725,154
2026-10-0326,220

The work

Recently merged.

Merged PRs in reverse-chronological order, grouped by week. Click any row to open it on GitHub.

Recently shipped 25 of 300 recent · 6,483 merged all-time
Week of Sep 28
  1. #13163 [feat] Track running actions and close plugin feedback gaps (plugins) @gregpriday
  2. #13162 [feat] Extend app-painted backgrounds into the padding (terminal) @gregpriday
  3. #13161 [feat] Let plugins read a terminal's screen behind terminal:read (plugins) @gregpriday
  4. #13158 [feat] Let plugins list agents across every open project (plugins) @gregpriday
  5. #13159 [feat] Tell plugins which terminal and workspace an agent event came from (plugins) @gregpriday
  6. #13151 [feat] Anchored flash instead of corner toast for menu copies (copy) @gregpriday
  7. #13153 [fix] Re-detect project scripts when the preview opens (dev-preview) @gregpriday
  8. #13149 [feat] Give plugin views identity, ledgers and header actions (plugins) @gregpriday
  9. #13148 [fix] Keep hover from retargeting the saved theme (theme-browser) @gregpriday
  10. #13146 [chore] Remove the online suite and ANTHROPIC_API_KEY secret use (e2e) @gregpriday
  11. #13144 [feat] Let plugins ship their own SVG icons (plugins) @gregpriday
  12. #13125 [misc] Plugin performance and consistency: fast, native plugins by default @gregpriday
  13. #13145 [fix] Give every toolbar control the same press (toolbar) @gregpriday
  14. #13142 [fix] Rework the footer's terminal watch item and row spacing (assistant) @gregpriday
  15. #13140 [fix] Link file paths that contain spaces (terminal) @gregpriday
  16. #13126 [feat] Render Mermaid diagrams in rendered Markdown (markdown) @gregpriday
  17. #13139 [feat] Let the assistant's confirm dialog change Daintree confirmations (mcp) @gregpriday
  18. #13134 [feat] Let the assistant close a pane it launched once its handback arrives (mcp) @gregpriday
  19. #13138 [feat] Let the assistant delete any eligible worktree at core (mcp) @gregpriday
  20. #13133 [feat] Report when agent.launch cwd is outside its worktree (agent) @gregpriday
  21. #13131 [fix] Detect Claude Code's weekly-limit banner as a rate limit (pty) @gregpriday
  22. #13132 [fix] Retry a stale daintree MCP session instead of giving up (help) @gregpriday
  23. #13123 [feat] Let installed plugins target a project on host.dispatch (plugins) @gregpriday
  24. #13141 [test] Overhaul the E2E suite for real coverage, speed and stability (e2e) @gregpriday
  25. #13121 [fix] Keep row menu Copy items working when an ancestor steals focus (ui) @gregpriday

The reports

Found, then fixed.

Issues filed by one person and closed by another's merged PR. Filing the bug is the contribution; the fix is what made it count.

Resolved issues 15 of 150 recent · 177 all-time

First contributions

Everyone's first contribution.

The date each person's first merged PR or resolved issue landed, oldest first.

First contributions 12 so far
  1. @gregpriday started Daintree
  2. @Misplon first resolved issue
  3. @dev-en-m first resolved issue
  4. @TrinhNhatHung first resolved issue
  5. @jobordu first resolved issue
  6. @alyssaxuu first resolved issue
  7. @ychamare first merged PR
  8. @mai1015 first resolved issue
  9. @JustinPriday first resolved issue
  10. @el-noir first resolved issue
  11. @sheik-rhinos first resolved issue
  12. @cmartins88 first resolved issue

Contributing

If you want it in Daintree, build it.

There's no triage queue, no good-first-issue board, no contributor program. Daintree is open source and most pull requests come from people fixing or adding the thing they personally needed. The workflow below is the whole workflow.

AI-assisted PRs are welcome. Daintree is built to review them. Slop isn't, so read the code before you push it.

01

Load Daintree in your agent

Clone daintreehq/daintree and point your favorite coding agent at it: Claude Code, Codex, Antigravity, OpenCode, whatever you run. The repo is a normal Electron + TypeScript codebase, so there's nothing exotic to learn first; your agent can read its way around in a few minutes, then spin up a worktree. The contributing guide has the local setup steps.

02

Build it and test it

Make the change you want. Run Daintree locally and visually test it: click through the actual UI, because Electron bugs hide from unit tests. Add unit or integration tests for the logic that matters. Even single-line fixes count: every one chips away at rough edges and helps build a habitat for AI agents that everyone can rely on.

03

Open a PR against develop

Fork, branch, and send a pull request targeting develop. Conventional-commit titles (feat:, fix:, perf:) render with color tags above, and once it merges your row lands in the first-contributions log alongside everyone else's. Set a profile picture first if you want a spotlight card up top. Your PRs and your row in the log appear either way.