95 Commits

Author SHA1 Message Date
Bartosz Taudul
00b6abd67b Move achievements text to markdown files. 2026-06-06 13:19:55 +02:00
Bartosz Taudul
86fbe529ed Bump font awesome to 7.2. 2026-06-05 23:28:09 +02:00
Bartosz Taudul
05c2638467 Remove option to build profiler GUI with no statistics. 2026-05-24 15:07:53 +02:00
Bartosz Taudul
beec259520 Extract symbol code disassembly into a separate source file.
Two bugs fixed in the process:

1. X86_REG_BPL is now properly set (previously there were duplicate
   X86_REG_BP entries).
2. maxLine is now properly calculated, instead of being set to the
   last line value.
2026-05-11 01:30:28 +02:00
Bartosz Taudul
39cd16a92b Move specialized LLM skills out of the system prompt. 2026-04-30 02:41:48 +02:00
Marcos Slomp
ee976f8146 Prevent CMake from re-generating files in the data folder every time (#1327) 2026-04-03 00:24:39 +02:00
Bartosz Taudul
af5f1c4d52 Use CMake option macros. 2026-03-31 23:15:15 +02:00
Bartosz Taudul
5877db5411 Move NO_ISA_EXTENSIONS option to config.cmake. 2026-03-31 23:15:14 +02:00
Bartosz Taudul
1b34592d80 Move git ref CMake extractor to a separate file. 2026-03-28 19:23:15 +01:00
DaniPopes
7d27fe6ff9 fix: handle paste events in wasm backend
Listen for browser paste events and directly inject clipboard text via
AddInputCharactersUTF8. Also suppress character input when Ctrl/Meta is
held to prevent 'v' from being typed on Cmd+V.
2026-02-11 23:42:45 -05:00
Bartosz Taudul
d1e831f69d Proper way of setting sanitizer parameters. 2026-02-01 16:44:15 +01:00
Bartosz Taudul
a371325346 Bump dependencies. 2026-01-26 20:48:15 +01:00
Bartosz Taudul
38b73254e9 Add emoji font. 2026-01-14 01:51:32 +01:00
Bartosz Taudul
c9443db053 Provide LLM tools using a standard API. 2025-12-29 20:43:26 +01:00
Bartosz Taudul
0246cec0a7 System reminder is no longer in use. 2025-12-29 20:43:26 +01:00
Bartosz Taudul
29e8bbbbb2 Add user manual viewer. 2025-12-01 00:29:42 +01:00
Bartosz Taudul
154712bc81 Keep user manual chunks in a separate object.
This makes the user manual available outside of the LLM context.

The code is also more readable, as splitting the manual into sections and
splitting section content into chunks fit for embeddings is now separated.
A bug has been fixed, where the above splits were mixed up for the last
manual section, producing invalid data.

The unembedded manual contents are no longer held in the memory. The only
use case for this was to calculate the manual contents hash. The hash is
now precalculated and cached.
2025-11-29 20:16:00 +01:00
Clément Grégoire
3f5d07ebd7 Fix embed dependency
add_custom_command DEPENDS can only see the output of other commands or targets names, not the targets installation through ExternalProject_Add.
Add the `embed` target (created by `ExternalProject_Add`) as a dependency for commands using the utility
2025-07-18 15:23:18 +02:00
Bartosz Taudul
70d6d7e756 Fully externalize markdown printer. 2025-07-12 23:42:21 +02:00
Bartosz Taudul
3d183e2da1 Markdown renderer is not strictly an LLM functionality. 2025-07-12 23:26:55 +02:00
Bartosz Taudul
b58388316a Fix emscripten build. 2025-07-12 18:19:56 +02:00
Bartosz Taudul
e77240a47d Workaround broken md4c CMake configuration. 2025-07-12 18:09:31 +02:00
Bartosz Taudul
fcfbd9810a Add md extension to system prompt files, to get coloring in editor. 2025-07-12 11:50:28 +02:00
Bartosz Taudul
5ccd05d2a5 Rework chat rendering. 2025-07-12 11:50:19 +02:00
Bartosz Taudul
e0820587a5 Add md4c. 2025-07-12 11:50:18 +02:00
Bartosz Taudul
9c648232a8 Disable LLM integration on emscripten. 2025-07-12 11:50:18 +02:00
Bartosz Taudul
ec205fa854 Move embed utility to a separate project.
This has to be separate to build a host executable during cross-compilation
(e.g. on emscripten builds).
2025-07-12 11:50:18 +02:00
Bartosz Taudul
111f68052f No LLM libs on emscripten. 2025-07-12 11:50:18 +02:00
Bartosz Taudul
cadfa3f9fb Change user manual embeddings chunking strategy.
The source is now the markdown text, not latex. Each embedding is now
a single paragraph from the manual. The search now returns whole sections
from the manual matching the query.
2025-07-12 11:50:16 +02:00
Bartosz Taudul
fb0d4f0d82 Make config accessible to all code without extern hacks. 2025-07-12 11:50:15 +02:00
Bartosz Taudul
1c9ef33e8c Add system prompt reinforcement. 2025-07-12 11:50:12 +02:00
Bartosz Taudul
e54f4d6a15 Add vector database. 2025-07-12 11:50:11 +02:00
Bartosz Taudul
4301573d95 Embed manual contents. 2025-07-12 11:50:10 +02:00
Bartosz Taudul
b398a4641a Switch from Ollama API to OpenAI API commonly used by all LLM providers. 2025-07-12 11:50:08 +02:00
Bartosz Taudul
43463abdfe Add bold, italic and bold+italic font. 2025-07-12 11:50:07 +02:00
Bartosz Taudul
654243eeea Use embed utility to provide fonts. Replace Droid Sans with Roboto. 2025-07-12 11:50:06 +02:00
Bartosz Taudul
ebe50c9981 Move implementation of all LLM tools to a separate file. 2025-07-12 11:50:05 +02:00
Bartosz Taudul
518587779f Add an option to enable sanitizers. 2025-07-12 11:50:04 +02:00
Bartosz Taudul
92288bc710 Implement web search. 2025-07-12 11:50:04 +02:00
Bartosz Taudul
68b73811c4 Retrieve images from wikipedia. 2025-07-12 11:50:02 +02:00
Bartosz Taudul
f65302984e Remove html2md, remove access to web for LLM. 2025-07-12 11:50:00 +02:00
Bartosz Taudul
8b100ff11d Use custom tool handling.
The ollama tool_calls do not preserve the context of why the tool was
called. The feature as it is right now doesn't seem to be designed for
the LLM to make queries, but rather to act as an agent that is supposed
to call some functions that will directly provide their output to the
user.

Instead, let's encode the tool calling protocol in the system prompt.
2025-07-12 11:50:00 +02:00
Bartosz Taudul
4ad9e05814 Convert html to markdown. 2025-07-12 11:49:59 +02:00
Bartosz Taudul
3a60926f65 Link with libcurl. 2025-07-12 11:49:59 +02:00
Bartosz Taudul
4c46cc4deb Push available tools list to ollama. 2025-07-12 11:49:58 +02:00
Bartosz Taudul
c8dbe33a3c Move LLM system prompt to an external file. 2025-07-12 11:49:58 +02:00
Bartosz Taudul
cc0aa73527 Add embed utilities. 2025-07-12 11:49:58 +02:00
Bartosz Taudul
8006ae9e30 Build embed tool. 2025-07-12 11:49:58 +02:00
Bartosz Taudul
a3e3f9a98f Add basic integration with ollama-hpp. 2025-07-12 11:49:49 +02:00
Bartosz Taudul
f1119d88b9 Merge pull request #1072 from neobrain/profiler_include_dirs
Add include directories for pkg-config dependencies in the profiler build
2025-06-17 18:40:40 +02:00