Commit Graph

53 Commits

Author SHA1 Message Date
Evan Simkowitz
93b9432f99
Add support for Google AI models (#1612) 2024-12-27 14:52:38 -05:00
Evan Simkowitz
dbacae8a99
Rename outdated WaveAI types (#1609)
A bunch of the Wave AI types still mentioned OpenAI. Now that most of
them are being used for multiple AI backends, we need to update the
names to be more generic.
2024-12-23 10:55:04 -08:00
Evan Simkowitz
4280a0981f
Fix more WaveAI scroll issues (#1597)
This adds a split atom for the messages so that the WaveAI component and
the ChatWindow component don't actually need to watch changes to all of
the messages. This makes the repaining a lot less expensive and makes it
easier to scroll while new messages come in.

I also increased the tolerance on the `determineUnsetScroll` callback so
that the bottom message won't get unattached as easily.
2024-12-20 14:01:19 -08:00
Evan Simkowitz
e0c875afeb
Remove WaveAI dynamic height adjustment, use pure CSS, also fix scrolling (#1594)
This makes the chat window flex-grow so we no longer need to manually
fix its height. It also cleans up some other styling.

It also fixes the scroll handlers so we detect when the user is at the
bottom of the chat window so we can follow the latest message. It also
fixes some circular references in the callbacks that were causing React
to bug out.
2024-12-20 11:49:29 -08:00
Sylvie Crowe
9f9190b93c
fix: dynamically determine the chat window height (#1588)
The AI chat window was not allowing the user to resize it due to an
interacting scss class being removed. This replaces the max-height from
the removed class with a dynamic calculation to resize properly.
2024-12-20 03:18:44 -08:00
Sylvie Crowe
71961b373f
Extra Font Size Controls (#1537)
This adds:
- "editor:fontsize" to modify the code editor's font size
- "ai:fontsize" to modify the ai widget's font size (for general text)
- "ai:fixedfontsize" to modify the ai widget's fixed font size (for code
fragments)
2024-12-16 18:23:42 -08:00
Mike Sawka
f1cd6b933d
relative markdown text (#1489) 2024-12-16 16:04:07 -08:00
systemshift
c071cc04c3
Perplexity api (#1432)
I have added Perplexity to the default AI models. I see Anthropic models
are becoming part of the default as well, so I thought I should add a
model that is specific for web search.

This pull request is a work in progress; reviews and edit
recommendations are welcome.

---------

Co-authored-by: sawka <mike@commandline.dev>
2024-12-09 15:48:33 -08:00
Evan Simkowitz
7a61f25331
Auditing async usage in frontend code (#1402)
I found a lot of places where asyncs weren't being properly wrapped or
awaited
2024-12-05 18:09:54 -08:00
Evan Simkowitz
cb50023d79
Fix issue where WaveAI text area would resize on launch (#1397) 2024-12-05 14:06:52 -08:00
Mike Sawka
72f36a9639
wsh run (#1376)
implements `wsh run` command.  lots of fixes (and new options) for command blocks.  cleans up the UX/UI for command blocks.  lots of bug fixes for blockcontrollers.  other minor bug fixes.

also makes editor:* vars into settings override atoms.
2024-12-04 14:16:50 -08:00
Evan Simkowitz
d8edea9fbc
Oops i actually made the tabs wrong (#1384)
forgot to update .editorconfig to include scss...
2024-12-04 13:49:14 -08:00
Evan Simkowitz
0145e8fe99
Fix SCSS formatting after migration (#1382)
The migration tool we used didn't take into account our formatting
standards so I'm bulk-formatting the SCSS files to bring them back up to
our standards. Basically this just changes the tab size for all the
files.
2024-12-04 12:49:44 -08:00
Evan Simkowitz
2e91ee843c
Switch from Less to Scss (#1335)
Less hasn't received an update in over a year and the parser is missing
some modern syntax like relative colors so this switches us to scss
2024-11-21 16:05:04 -08:00
Evan Simkowitz
d38f889bd6
Add tooltip for clear chat history (#1276) 2024-11-13 18:02:47 -08:00
Evan Simkowitz
3fcf209b52
Add ephemeral block support (#1275)
Ephemeral blocks can now be added to the LayoutModel for a tab. Only one
ephemeral block can exist at a time. It is placed above all other
blocks, including the magnified blocks.

Updates how magnified and ephemeral blocks overlay the other blocks.
Now, there's a blurred backdrop behind them that will obscure the other
blocks. As a result of this, the overlayed blocks are now translucent.
2024-11-13 18:00:13 -08:00
Sylvie Crowe
31d0aa114d
AI Clear Button (#1274)
Adds a button and Cmd:l keybinding to clear the ai message history in
the current block
2024-11-13 15:00:33 -08:00
Mike Sawka
de902ec2b7
ai backend refactor + claude/anthropic API support (#1262) 2024-11-11 11:39:08 -08:00
Mike Sawka
045405aa5e
new wsh ai command (#1257) 2024-11-08 16:34:50 -08:00
Mike Sawka
58f2f4ae8e
fix display order sort (#1256) 2024-11-08 15:46:44 -08:00
Evan Simkowitz
96cc2adc91
Fix Wave AI styling again (#1164) 2024-10-28 16:46:00 -07:00
Evan Simkowitz
be5d73af21
Fix wave ai styling (#1157) 2024-10-27 21:34:20 -07:00
Sylvie Crowe
bbd530c052
AI Sliding Window (#1151)
Only send the 30 most recent ai questions and responses to the model
when making requests. This prevents the amount of data being sent from
getting too big.
2024-10-27 11:49:34 -07:00
Evan Simkowitz
39fff9ecfd
Allow separate directories for each config part, add dropdown for editing AI presets (#1074)
Adds new functionality on the backend that will merge any file from the
config directory that matches `<partName>.json` or `<partName>/*.json`
into the corresponding config part (presets, termthemes, etc.). This
lets us separate the AI presets into `presets/ai.json` so that we can
add a dropdown in the AI preset selector that will directly open the
file so a user can edit it more easily. Right now, this will create a
preview block in the layout, but in the future we can look into making
this block disconnected from the layout.

If you put AI presets in the regular presets.json file, it will still
work, since all the presets get merged. Same for any other config part.
2024-10-21 16:51:18 -07:00
Mike Sawka
c1c90bb4f8
browser view (#1005) 2024-10-17 14:34:02 -07:00
Evan Simkowitz
a90e747f92
Fix runaway name appending on the default AI preset (#1051)
Shallow copy the presets when updating `display:name` so that the
appending of the model name for the default preset doesn't accumulate
every time the tab refreshes.

closes #1040
2024-10-17 09:53:49 -07:00
Evan Simkowitz
0b88fa590d
Move AI model configs to presets and add a dropdown to swap between configs (#1024) 2024-10-12 18:40:14 -04:00
Evan Simkowitz
3ae8d693e8
Adjust the gap sizes and padding for the Wave AI controls div so it's more uniform (#1008)
Fix two-tone color in input box as well
2024-10-10 14:13:25 -07:00
Mike Sawka
4f00595311
allow ai defaults to be overridden by block meta (#1000) 2024-10-09 15:16:35 -07:00
Sylvie Crowe
9dd4188810
fix: add error messages to ai chat (#999)
This will print error messages to the chat when there is an error
getting an ai response. The actual content of the responses are not
forwarded to the models in future requests.

<img width="389" alt="Screenshot 2024-10-09 at 2 36 13 PM"
src="https://github.com/user-attachments/assets/e6c6b1c1-fa19-4456-be3b-596feaeaafed">
2024-10-09 14:50:56 -07:00
Mike Sawka
f33028af1d
azure ai support (#997) 2024-10-09 13:36:02 -07:00
Red J Adaya
28ca193c19
Add 'scrollable' prop to Markdown component for better control over scrolling behavior (#964)
The scrollable prop controls if ScrollbarOverlay is added to the
Markdown component.
2024-10-06 13:30:02 -07:00
Mike Sawka
b490113a87
change cursorAccent to cursor to match xtermjs. (#968)
also add more feedback for waveai -- tooltips + icon for local/cloud.
also use 'ai:name' correctly
2024-10-06 12:42:25 -07:00
Sylvie Crowe
7df587d9a4
Speed Up Ai (#911)
fix: remove ai frontend throttling
2024-09-30 22:14:30 -07:00
Mike Sawka
cacde1b0ba
fix use dimensions hook (#905) 2024-09-30 12:19:29 -07:00
sawka
8fb831fac6 focus selection stuff 2024-09-19 16:47:59 -07:00
Red J Adaya
dae72e7009
more on button refactor (#388)
- Removed opacity for hover effect. Now uses a brighter variant of color
- Updated other Button usages
2024-09-17 22:38:17 -07:00
sawka
f7272c6375 remove aichat-input opacity 2024-09-17 00:10:42 -07:00
Sylvie Crowe
ea19444710
Various Bug Fixes and UI Improvements (#386)
This change adds
- performance improvements for ai chat
- new ai chat user interface
- open blank files with codeedit
- fix for userinput password modal
2024-09-16 22:59:09 -07:00
Mike Sawka
3939648bbb
fe wsh router + wsh client impl (#381) 2024-09-16 11:59:39 -07:00
Evan Simkowitz
9e3c9f9253
Make IconButton its own element, move CopyButton to use it (#357) 2024-09-09 12:35:53 -07:00
Evan Simkowitz
015ebf5dd5
Make textAtom and showTocAtom in Markdown element optional (#331)
Fix backwards-compatibility for the Markdown element by adding back the option to pass text directly to the element and make atom parameters optional.
2024-09-05 15:35:57 -07:00
Evan Simkowitz
86685e4bcf
simplify waveai imports 2024-09-05 14:43:14 -07:00
Evan Simkowitz
7393e5e7b6
Missed one 2024-09-05 14:40:25 -07:00
Evan Simkowitz
959255af30
Fix markdown impl in waveai 2024-09-05 14:40:24 -07:00
Mike Sawka
53d3ad04b7
focus/key handling for directory preview (#291) 2024-08-29 17:00:24 -07:00
sawka
a7606b8363 update visuals to say gpt-4o-mini 2024-08-28 12:05:36 -07:00
Mike Sawka
8630e23239
new config system (#283) 2024-08-27 18:49:49 -07:00
Sylvie Crowe
ee0bc0a377
Windows Bug Fixes (#281)
Fixes two bugs
- ai component now works on windows
- forces files to use lf line endings on windows instead of crlf
2024-08-27 15:12:26 -07:00
sawka
43138f754c fix double model creation 2024-08-22 16:25:53 -07:00