Commit Graph

598 Commits

Author SHA1 Message Date
Will Chen
9869fefbcb Support dyad docker (#674)
TODOs:
- [ ] clean-up docker images

https://claude.ai/chat/13b2c5d3-0d46-49e3-a771-d10edf1e29f4
2025-08-26 11:07:40 -07:00
Toni Alatalo
e6c92a24ed Prompts: align examples to TypeScript (.tsx/.ts) to avoid .jsx drift (#1076)
The prompt text says:

> - Use TypeScript.

But in the examples there are .jsx files.

I got errors sometimes (in my fork with other changes too) that JSX got
generated instead of TSX. This seems to have fixed it for me.
    
<!-- This is an auto-generated description by cubic. -->
---

## Summary by cubic
Updated system prompt examples to use .tsx/.ts instead of .jsx/.js,
matching the “Use TypeScript” instruction. This prevents JSX drift and
reduces cases where generated code uses JSX instead of TSX.

<!-- End of auto-generated description by cubic. -->
2025-08-26 09:59:05 -07:00
Will Chen
53bbfc9813 Read JSON (#1081)
Fixes #1037 
    
<!-- This is an auto-generated description by cubic. -->
---

## Summary by cubic
Enable JSON file support in codebase scanning so common configs and data
(e.g., package.json, vercel.json, translations) are included. Adds .json
to the allowed extensions and removes special-casing for
package.json/vercel.json.

<!-- End of auto-generated description by cubic. -->
2025-08-26 09:57:19 -07:00
Will Chen
1dfa0d1004 Fix package.json (#1080)
Fixes #554 #1049 
    
<!-- This is an auto-generated description by cubic. -->
---

## Summary by cubic
Stop mutating package.json when reading files. readFileWithCache now
returns raw content so all fields are preserved (e.g., packageManager).
Fixes #554 and #1049.

- **Bug Fixes**
  - Removed package.json "cleaning" logic and the cleanContent helper.
- Return and cache unmodified file content from both fs and
virtualFileSystem.

<!-- End of auto-generated description by cubic. -->
2025-08-25 21:11:27 -07:00
Will Chen
72be54e6c5 verify jwt to false (#1085)
fixes #1010 
    
<!-- This is an auto-generated description by cubic. -->
---

## Summary by cubic
Disable automatic JWT verification for Supabase Edge Functions and
update prompts/templates to require and demonstrate manual auth
handling. Fixes #1010.

- **Bug Fixes**
  - Set verify_jwt: false in function deployment.
- Updated Supabase prompt with an Authentication section and guidance to
manually verify tokens.
- Adjusted the hello function template to check the Authorization header
and return 401 when missing.

<!-- End of auto-generated description by cubic. -->
2025-08-25 21:10:22 -07:00
Will Chen
d8e54d9a10 Parameterize sys prompt (#1082)
<!-- This is an auto-generated description by cubic. -->

## Summary by cubic
Parameterized the system prompt and tokenized it in e2e dumps to make
snapshots smaller and stable. No runtime behavior changes; future prompt
edits won’t churn tests.

- **Refactors**
- Exported BUILD_SYSTEM_PREFIX and BUILD_SYSTEM_POSTFIX from
system_prompt.ts.
- Updated test_helper to replace the full prompt with
${BUILD_SYSTEM_PREFIX}/${BUILD_SYSTEM_POSTFIX} tokens in message dumps.
- Regenerated e2e snapshots to use tokens, reducing ~270 lines per
snapshot.

<!-- End of auto-generated description by cubic. -->
2025-08-25 17:56:14 -07:00
Will Chen
b14177b049 fix contrib format (#1083) 2025-08-25 17:25:39 -07:00
顾颢
2d5aa7e711 style(chat): solve the issue where the SetupBanner is cut off (#1078)
Fixes #1077 
    
<!-- This is an auto-generated description by cubic. -->
---

## Summary by cubic
Fix the SetupBanner being cut off in the empty chat state. The
placeholder message now uses flex-1 instead of h-full so the banner
renders fully.

<!-- End of auto-generated description by cubic. -->

Co-authored-by: 顾颢 <guhao@dayee.com>
2025-08-25 17:24:19 -07:00
Mohamed Aziz Mejri
7adffc7576 fix text overflow in chat messages (#1073)
This PR fixes the issue #1072 where long words in chat messages overflow
outside the message container.
The fix applies Tailwind’s `break-words` utility to ensure that overly
long words wrap properly within the chat bubble.
    
<!-- This is an auto-generated description by cubic. -->
---

## Summary by cubic
Fixes text overflow in chat messages by adding Tailwind’s break-words to
the message content. Long words and URLs now wrap inside the bubble
instead of spilling out.

<!-- End of auto-generated description by cubic. -->
2025-08-25 16:57:57 -07:00
Mohamed Aziz Mejri
c23e0ae434 update contributing.md so that it refers to the architecture doc (#1057)
This PR adds a reference to the architecture doc in contributing.md .
    
<!-- This is an auto-generated description by cubic. -->
---

## Summary by cubic
Added a link to the Architecture Guide in CONTRIBUTING.md to give
contributors a high-level overview and ensure changes align with the
project architecture.

<!-- End of auto-generated description by cubic. -->
2025-08-25 16:57:13 -07:00
Will Chen
2a90d2af5f architecture (#1052)
<!-- This is an auto-generated description by cubic. -->

## Summary by cubic
Add a high-level Architecture doc for Dyad in docs/architecture.md. It
explains the Electron renderer/main model, the life of a request
(streaming, parsing, applying Dyad tags), and the reasoning behind our
context and agentic choices to improve onboarding and clarity.

<!-- End of auto-generated description by cubic. -->
2025-08-22 22:51:16 -07:00
Will Chen
2285b5ebdf Disable encryption for e2e tests (#1024)
<!-- This is an auto-generated description by cubic. -->

## Summary by cubic
Disable Electron safeStorage encryption in test builds so e2e runs are
consistent and don’t require the OS keychain. Added an IS_TEST_BUILD
guard in encrypt() to force the unencrypted fallback during tests.

<!-- End of auto-generated description by cubic. -->
2025-08-20 17:19:57 -07:00
Will Chen
a66ac3c4a4 Bump to v0.18.0 (#1026)
<!-- This is an auto-generated description by cubic. -->

## Summary by cubic
Bump version from 0.18.0-beta.1 to the stable 0.18.0. Updates
package.json to finalize the v0.18.0 release for publishing.

<!-- End of auto-generated description by cubic. -->
2025-08-20 17:19:18 -07:00
Will Chen
ef4871bfdb Bump to 0.18.0-beta.2 (#1023)
<!-- This is an auto-generated description by cubic. -->

## Summary by cubic
Bumped the package version from 0.18.0-beta.1 to 0.18.0-beta.2 to
prepare the next beta release.

<!-- End of auto-generated description by cubic. -->
2025-08-20 15:35:54 -07:00
Will Chen
4e9a927a7b smart context v3 (#1022)
<!-- This is an auto-generated description by cubic. -->

## Summary by cubic
Adds Smart Context v3 with selectable modes (Off, Conservative,
Balanced) and surfaces token savings in chat. Also improves token
estimation by counting per-file tokens when Smart Context is enabled.

- **New Features**
- Smart Context selector in Pro settings with three options.
Conservative is the default when enabled without an explicit choice.
- New setting: proSmartContextOption ("balanced"); undefined implies
Conservative.
- Engine now receives enable_smart_files_context and smart_context_mode.
- Chat shows a DyadTokenSavings card when the message contains
token-savings?original-tokens=...&smart-context-tokens=..., with percent
saved and a tooltip for exact tokens.
- Token estimation uses extracted file contents for accuracy when Pro +
Smart Context is on; otherwise falls back to formatted codebase output.

<!-- End of auto-generated description by cubic. -->
2025-08-20 14:16:07 -07:00
Will Chen
34215db141 Help chat (#1007) 2025-08-19 15:31:17 -07:00
Adeniji Adekunle James
0cdd13dcbe feat: add timestamp and message version to prompt (#944) (#959)
### Summary

This PR implements a timestamp feature for messages in the prompt
window, responding to feature request #944.

**What this does:**
- Prefixes each sent message with a timestamp and message version.
### Screenshot

<img width="530" height="116" alt="image"
src="https://github.com/user-attachments/assets/62a86890-b120-42dd-ab48-8eeb4515a292"
/>

---------

Co-authored-by: Will Chen <willchen90@gmail.com>
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
2025-08-18 22:27:19 -07:00
Will Chen
d535db6251 Upgrade to AI sdk with codemod (#1000) 2025-08-18 22:21:27 -07:00
Will Chen
573642ae5f Prompt gallery (#957)
- [x] show prompt instead of app in autocomplete
- [x] use proper array/list for db (tags)
- [x] don't do <dyad-prompt> - replace inline
2025-08-18 13:25:11 -07:00
Will Chen
a547735714 Skip delete for windows (#992) 2025-08-18 11:00:03 -07:00
Olyno
237017acd9 feat: allow custom install and start commands (#892)
# Description

Gives the ability to define an `install` and `startup` command when
importing a project, so we can work on a project locally without any
issue.

# Preview

<img width="2256" height="1422" alt="image"
src="https://github.com/user-attachments/assets/2132b1cb-5f71-4b88-84db-8ecc81cf1f66"
/>

---------

Co-authored-by: Will Chen <willchen90@gmail.com>
2025-08-18 10:41:22 -07:00
Will Chen
f72157a443 bump to v0.18.0 beta 1 (#991) 2025-08-18 10:36:43 -07:00
Will Chen
55cc5460e3 Support next.js for routes and handle long width address bar (#958) 2025-08-15 17:56:44 -07:00
Adeniji Adekunle James
e554fd962b feat: add copy to clipboard functionality for code blocks (#934)
## 🚀 Feature: Copy to Clipboard for Code Blocks

### What's Changed
- Added a copy button to all code blocks that allows users to easily
copy code snippets
- Implemented visual feedback showing a checkmark when code is
successfully copied
- Copy button automatically reverts back after 2 seconds

### Technical Details
- Uses `navigator.clipboard.writeText()` for modern clipboard API
- Positioned copy button in the top-right corner alongside language
label
- Maintains existing code highlighting functionality

### UI/UX Improvements
- Clean, minimal copy button design that doesn't interfere with code
readability
- Clear visual feedback with copy and check icon transition
- Consistent styling with existing theme system

### Video



https://github.com/user-attachments/assets/8f388217-da8a-422e-9087-42cce8df68ad

---------

Co-authored-by: Will Chen <willchen90@gmail.com>
2025-08-15 16:52:37 -07:00
Will Chen
b06f658fc5 Add link for rate limit errors (#956) 2025-08-15 14:29:28 -07:00
Will Chen
60b1f509e6 increase mem size to avoid OOM (#942) 2025-08-14 14:21:28 -07:00
Will Chen
8ef84285fc Shard E2E tests (#941) 2025-08-14 13:48:27 -07:00
Will Chen
cc72990f0d Bump to v0.17.0 (#940) 2025-08-14 10:17:35 -07:00
Will Chen
4bc961ffb4 Fix preset value (#933) 2025-08-13 17:25:21 -07:00
Will Chen
b8362a74a7 bump to v0.17.0 beta 2 (#932) 2025-08-13 16:24:15 -07:00
Will Chen
a6dca76d29 Allow referencing other apps (#692)
- [x] Update chat_stream_handlers
- [x] Update token handlers
- [x] Update HomeChatInput
- [x] update lexical chat input: do not allow referencing same app
(current app, or other already selected apps)
- [x] I don't think smart context will work on this...
- [x] Enter doesn't clear...
2025-08-13 16:22:49 -07:00
Adeniji Adekunle James
76054c6db7 fix(ui): prevent content click from toggling accordion and improve UX with cursor-text in Codeblock (#930)
Hovering over the code block previously showed a pointer cursor, and
clicking inside would collapse/expand the accordion. This PR updates the
DyadWrite component to use `cursor-text` and adds `e.stopPropagation()`
so clicks inside the code block no longer toggle the accordion, making
it behave like other AI tools and improving user friendliness.


Before


https://github.com/user-attachments/assets/7b6983fd-91a0-4f30-9337-d444cbfcc110

After


https://github.com/user-attachments/assets/07d0d765-7206-4552-b0b4-2665d87df4a1
2025-08-13 15:34:11 -07:00
Olyno
c4420a56e2 docs(contribute): add explainations about SQL migration (#893)
# Description

This pull request adds some explanations on how to do the SQL
migrations, required to contribute to the project, when required.
2025-08-12 21:54:29 -07:00
BlueRaw
2c208e3ace add editable custom model (#794)
Now users can free to edit their custom models by double clicking any
custom models created in each provider.
Before this, they have to delete -> create a new one.
I simply add an edit panel (which looks the same as 'Add Custom Model')
and integrate that process into the "update" button.

There is one more issue that if a user deletes a model that he was using
in chat, then back to chat, that model would still appear (and work)
unless user chooses a new one.
Tried to modify "delete-custom-model" in language_model_handlers.ts by
the logic that if the name of that model matches the latest using one ->
switch to auto (or default) model. Yet I failed, maybe need more
explanation for this :)
2025-08-12 21:53:44 -07:00
Will Chen
ac948412dc Clearer help instructions (#919) 2025-08-12 11:31:06 -07:00
Will Chen
c6eb3975f3 Rebase GPT 4.1 engine (#909) 2025-08-11 15:53:31 -07:00
Will Chen
09efb7e10e Update README.md (#908) 2025-08-11 15:37:34 -07:00
Will Chen
c54635d834 Read .py files (#907)
Fixes #880
2025-08-11 15:03:50 -07:00
Will Chen
599f4c214c bump to v0.17.0-beta.1 (#906) 2025-08-11 15:01:28 -07:00
Will Chen
ab757d2b96 Add GPT 5 support (#902) 2025-08-11 15:00:02 -07:00
Fox
adc724cadf Add missing app description (#847)
The description for the program/app is set to the default placeholder.
Making it look like [this](https://imgur.com/a/gsIgSx4) in systems like
Linux.

So all I did was adding part of the GitHub description as it. Everything
else is okay.

Linked image, tho.
<img width="587" height="141" alt="Screenshot_20250806_102625"
src="https://github.com/user-attachments/assets/98764d70-4b07-4978-a91a-d0c69e939433"
/>
2025-08-11 10:26:35 -07:00
Bryan
3d014e5866 feat: add .env.example for local development (#831)
Closes #820; adds a .env.example file to document required environment
variables and streamline the setup process for new developers.

---------

Co-authored-by: Will Chen <willchen90@gmail.com>
2025-08-11 10:15:52 -07:00
Bryan
dfe6da063e fix: add Node.js version check for capacitor cmds (#801)
Resolves #787. Prevents crashes when running capacitor commands on a
system with an incompatible (older) Node.js version.

---------

Co-authored-by: Will Chen <willchen90@gmail.com>
2025-08-11 10:13:04 -07:00
HotPlugin
676d07e905 Update README.md (#795) 2025-08-05 14:46:23 -07:00
Will Chen
7f13157128 add docs on testing (#833) 2025-08-05 14:39:38 -07:00
Abdur Rahman
bbc50197c2 fix: improve close button alignment in chat error containers (#782)
Adjusted positioning to top-2.5 left-2 and add left padding to prevent
text overlap with the close button. 

<img width="715" height="61" alt="image"
src="https://github.com/user-attachments/assets/1e47f577-2b11-4928-82a6-053abc77dd1e"
/>

<img width="727" height="101" alt="image"
src="https://github.com/user-attachments/assets/b6058eca-93e0-445e-b17a-dee81911b90b"
/>
2025-08-05 14:34:17 -07:00
Will Chen
5db0b04400 Support exclude paths in manual context management (#774) 2025-08-05 14:33:39 -07:00
Erfan1987
74ada7054b Create devcontainer.json (#766) 2025-08-05 14:20:36 -07:00
Will Chen
bcab612dcb Bump to v0.16.0 (#822) 2025-08-05 09:43:49 -07:00
Will Chen
5693cff7ff Update README.md with linked gif (#821) 2025-08-05 09:41:39 -07:00