├── src ├── d.ts ├── types │ ├── d.ts │ ├── appearance.d.ts │ ├── device.d.ts │ ├── error.d.ts │ ├── auth.d.ts │ ├── bookmark.d.ts │ ├── usage.d.ts │ ├── settings.d.ts │ └── knowledge.d.ts ├── assets │ └── images │ │ ├── door.dark.png │ │ ├── hint.dark.png │ │ ├── design.dark.png │ │ ├── design.light.png │ │ ├── door.light.png │ │ ├── hint.light.png │ │ ├── reading.dark.png │ │ ├── tools.dark.png │ │ ├── tools.light.png │ │ ├── usage.dark.png │ │ ├── usage.light.png │ │ ├── knowledge.dark.png │ │ ├── reading.light.png │ │ ├── construction.dark.png │ │ ├── knowledge.light.png │ │ └── construction.light.png ├── renderer │ ├── apps │ │ ├── sora │ │ │ ├── app-sora.png │ │ │ ├── App.tsx │ │ │ └── index.tsx │ │ ├── leonardo │ │ │ ├── App.tsx │ │ │ ├── app-leonardo.png │ │ │ └── index.tsx │ │ ├── index.ts │ │ ├── types.ts │ │ ├── NotFound.tsx │ │ └── Loader.tsx │ ├── components │ │ ├── layout │ │ │ ├── AppHeader.scss │ │ │ ├── aside │ │ │ │ ├── AppNav.tsx │ │ │ │ ├── AppSidebar.scss │ │ │ │ ├── AppSidebar.tsx │ │ │ │ ├── ChatNav.tsx │ │ │ │ └── BookmarkNav.tsx │ │ │ └── AppHeader.tsx │ │ ├── ToolSpinner.scss │ │ ├── TooltipIcon.tsx │ │ ├── Spinner.tsx │ │ ├── StateButton.tsx │ │ ├── Spinner.scss │ │ ├── MaskableInput.tsx │ │ ├── ToolSpinner.tsx │ │ ├── Assets.tsx │ │ ├── StateInput.tsx │ │ ├── MaskableStateInput.tsx │ │ ├── Empty.tsx │ │ ├── ToolStatusIndicator.tsx │ │ ├── ConfirmDialog.tsx │ │ └── AlertDialog.tsx │ ├── preload.d.ts │ ├── pages │ │ ├── bookmark │ │ │ └── Bookmark.scss │ │ ├── settings │ │ │ ├── Settings.scss │ │ │ ├── AppearanceSettings.tsx │ │ │ └── Version.tsx │ │ ├── chat │ │ │ ├── Messages.tsx │ │ │ ├── Editor │ │ │ │ └── Toolbar │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── StreamCtrl.tsx │ │ │ ├── CitationDialog.tsx │ │ │ ├── Header.tsx │ │ │ └── Chat.scss │ │ ├── apps │ │ │ └── index.tsx │ │ ├── knowledge │ │ │ └── index.tsx │ │ ├── prompt │ │ │ └── index.tsx │ │ ├── user │ │ │ └── TabPassword.tsx │ │ └── tool │ │ │ ├── index.tsx │ │ │ └── ParamsDialog.tsx │ ├── index.tsx │ ├── i18n.ts │ ├── fluentui.scss │ ├── logging.ts │ ├── index.ejs │ ├── variables.scss │ └── App.tsx ├── hooks │ ├── useNav.ts │ ├── useLazyEffect.ts │ ├── useChatService.ts │ ├── useOnlineStatus.ts │ ├── useToast.tsx │ ├── useMarkdown.ts │ └── useProvider.ts ├── CrashReporter.ts ├── intellichat │ ├── readers │ │ ├── IChatReader.ts │ │ ├── OllamaChatReader.ts │ │ ├── OpenAIReader.ts │ │ ├── FireReader.ts │ │ ├── ChatBroReader.ts │ │ └── AnthropicReader.ts │ ├── services │ │ ├── IChatService.ts │ │ ├── INextCharService.ts │ │ ├── GrokChatService.ts │ │ ├── DeepSeekChatService.ts │ │ ├── DoubaoChatService.ts │ │ ├── AzureChatService.ts │ │ ├── MoonshotChatService.ts │ │ ├── OllamaChatService.ts │ │ ├── FireChatService.ts │ │ ├── index.ts │ │ └── ChatBroChatService.ts │ └── validators.ts ├── consts.ts ├── vendors │ ├── axiom.ts │ └── supa.ts ├── providers │ ├── DeepSeek.ts │ ├── Grok.ts │ ├── Ollama.ts │ ├── Moonshot.ts │ ├── index.ts │ ├── Fire.ts │ ├── ChatBro.ts │ ├── Google.ts │ ├── Doubao.ts │ └── types.ts ├── utils │ ├── cache.ts │ ├── validators.ts │ ├── mcp.ts │ └── token.ts ├── main │ ├── logging.ts │ ├── crypt.ts │ ├── docloader.ts │ └── downloader.ts └── stores │ ├── useStageStore.ts │ ├── useAppearanceStore.ts │ ├── useSettingsStore.ts │ └── useUsageStore.ts ├── .erb ├── mocks │ └── fileMock.js ├── img │ └── erb-logo.png ├── configs │ ├── .eslintrc │ ├── webpack.config.eslint.ts │ ├── webpack.paths.ts │ ├── webpack.config.renderer.dev.dll.ts │ ├── webpack.config.base.ts │ ├── webpack.config.preload.dev.ts │ └── webpack.config.main.prod.ts └── scripts │ ├── .eslintrc │ ├── link-modules.ts │ ├── clean.js │ ├── check-node-env.js │ ├── check-port-in-use.js │ ├── delete-source-maps.js │ ├── electron-rebuild.js │ ├── remove-locales.js │ ├── check-build-exists.ts │ ├── notarize.js │ ├── remove-useless.js │ └── check-native-dep.js ├── assets ├── icon.icns ├── icon.ico ├── icon.png ├── dockicon.png ├── icons │ ├── 128x128.png │ ├── 16x16.png │ ├── 256x256.png │ ├── 32x32.png │ ├── 512x512.png │ ├── 64x64.png │ └── 1024x1024.png ├── fonts │ ├── barlow400.woff2 │ └── JetBrainsMono.woff2 ├── entitlements.mac.plist └── assets.d.ts ├── test ├── assets │ ├── 演示项目.xlsx │ ├── 长恨歌.docx │ ├── 探索智慧的疆界.pptx │ ├── AI-Career.pdf │ ├── SOTA.md │ └── 出师表.txt ├── mocks │ ├── electron.js │ └── electron-log.js ├── main │ ├── util.spec.ts │ ├── embedder.spec.ts │ ├── knowledge.spec.ts │ └── docloader.spec.ts ├── utils │ ├── token.test.ts │ ├── mcp.test.ts │ └── validators.test.ts └── intellichat │ └── validators.spec.ts ├── tailwind.config.js ├── postcss.config.js ├── .editorconfig ├── .gitattributes ├── .vscode-upload.json ├── .gitignore ├── tsconfig.json ├── .eslintignore ├── installer.nsh ├── release └── app │ └── package.json └── .eslintrc.js /src/d.ts: -------------------------------------------------------------------------------- 1 | declare module "*.png"; 2 | -------------------------------------------------------------------------------- /.erb/mocks/fileMock.js: -------------------------------------------------------------------------------- 1 | export default 'test-file-stub'; 2 | -------------------------------------------------------------------------------- /src/types/d.ts: -------------------------------------------------------------------------------- 1 | declare interface Window { 2 | Canny: any; 3 | } 4 | -------------------------------------------------------------------------------- /assets/icon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/assets/icon.icns -------------------------------------------------------------------------------- /assets/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/assets/icon.ico -------------------------------------------------------------------------------- /assets/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/assets/icon.png -------------------------------------------------------------------------------- /src/types/appearance.d.ts: -------------------------------------------------------------------------------- 1 | export type ThemeType = 'light' | 'dark' | 'system'; 2 | -------------------------------------------------------------------------------- /assets/dockicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/assets/dockicon.png -------------------------------------------------------------------------------- /.erb/img/erb-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/.erb/img/erb-logo.png -------------------------------------------------------------------------------- /test/assets/演示项目.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/test/assets/演示项目.xlsx -------------------------------------------------------------------------------- /test/assets/长恨歌.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/test/assets/长恨歌.docx -------------------------------------------------------------------------------- /assets/icons/128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/assets/icons/128x128.png -------------------------------------------------------------------------------- /assets/icons/16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/assets/icons/16x16.png -------------------------------------------------------------------------------- /assets/icons/256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/assets/icons/256x256.png -------------------------------------------------------------------------------- /assets/icons/32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/assets/icons/32x32.png -------------------------------------------------------------------------------- /assets/icons/512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/assets/icons/512x512.png -------------------------------------------------------------------------------- /assets/icons/64x64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/assets/icons/64x64.png -------------------------------------------------------------------------------- /test/assets/探索智慧的疆界.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/test/assets/探索智慧的疆界.pptx -------------------------------------------------------------------------------- /assets/icons/1024x1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/assets/icons/1024x1024.png -------------------------------------------------------------------------------- /test/assets/AI-Career.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/test/assets/AI-Career.pdf -------------------------------------------------------------------------------- /assets/fonts/barlow400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/assets/fonts/barlow400.woff2 -------------------------------------------------------------------------------- /src/assets/images/door.dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/door.dark.png -------------------------------------------------------------------------------- /src/assets/images/hint.dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/hint.dark.png -------------------------------------------------------------------------------- /assets/fonts/JetBrainsMono.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/assets/fonts/JetBrainsMono.woff2 -------------------------------------------------------------------------------- /src/assets/images/design.dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/design.dark.png -------------------------------------------------------------------------------- /src/assets/images/design.light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/design.light.png -------------------------------------------------------------------------------- /src/assets/images/door.light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/door.light.png -------------------------------------------------------------------------------- /src/assets/images/hint.light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/hint.light.png -------------------------------------------------------------------------------- /src/assets/images/reading.dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/reading.dark.png -------------------------------------------------------------------------------- /src/assets/images/tools.dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/tools.dark.png -------------------------------------------------------------------------------- /src/assets/images/tools.light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/tools.light.png -------------------------------------------------------------------------------- /src/assets/images/usage.dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/usage.dark.png -------------------------------------------------------------------------------- /src/assets/images/usage.light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/usage.light.png -------------------------------------------------------------------------------- /src/assets/images/knowledge.dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/knowledge.dark.png -------------------------------------------------------------------------------- /src/assets/images/reading.light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/reading.light.png -------------------------------------------------------------------------------- /src/renderer/apps/sora/app-sora.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/renderer/apps/sora/app-sora.png -------------------------------------------------------------------------------- /src/assets/images/construction.dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/construction.dark.png -------------------------------------------------------------------------------- /src/assets/images/knowledge.light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/knowledge.light.png -------------------------------------------------------------------------------- /src/assets/images/construction.light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kuilenren/5ire/main/src/assets/images/construction.light.png -------------------------------------------------------------------------------- /src/renderer/apps/leonardo/App.tsx: -------------------------------------------------------------------------------- 1 | // unused component 2 | export default function Leonardo() { 3 | return
` +
26 | `${hljs.highlight(lang, code, true).value}${
27 | isLoading ? loader : ''
28 | }`
29 | );
30 | } catch (__) {
31 | return (
32 | `` +
33 | `${hljs.highlightAuto(code).value}${
34 | isLoading ? loader : ''
35 | }` +
36 | ``
37 | );
38 | }
39 | }
40 | return (
41 | `` +
42 | `${hljs.highlightAuto(code).value}${
43 | isLoading ? loader : ''
44 | }` +
45 | ``
46 | );
47 | },
48 | }).use(mathjax3);
49 | const defaultRender =
50 | md.renderer.rules.link_open ||
51 | function (tokens: any, idx: any, options: any, env: any, self: any) {
52 | return self.renderToken(tokens, idx, options);
53 | };
54 | md.renderer.rules.link_open = function (
55 | tokens: any,
56 | idx: any,
57 | options: any,
58 | env: any,
59 | self: any
60 | ) {
61 | // Add a new `target` attribute, or replace the value of the existing one.
62 | tokens[idx].attrSet('target', '_blank');
63 | // Pass the token to the default renderer.
64 | return defaultRender(tokens, idx, options, env, self);
65 | };
66 | return {
67 | render: (str: string): string => md.render(str),
68 | };
69 | }
70 |
--------------------------------------------------------------------------------
/src/intellichat/services/ChatBroChatService.ts:
--------------------------------------------------------------------------------
1 | import Debug from 'debug';
2 | import {
3 | IChatContext,
4 | IChatRequestMessage,
5 | IChatRequestPayload,
6 | } from 'intellichat/types';
7 | import ChatBro from '../../providers/ChatBro';
8 | import INextChatService from './INextCharService';
9 | import OpenAIChatService from './OpenAIChatService';
10 | import ChatBroReader from 'intellichat/readers/ChatBroReader';
11 |
12 | const debug = Debug('5ire:intellichat:ChatBroChatService');
13 |
14 | export default class ChatBroChatService
15 | extends OpenAIChatService
16 | implements INextChatService
17 | {
18 | constructor(context: IChatContext) {
19 | super(context);
20 | this.provider = ChatBro;
21 | }
22 |
23 | protected getReaderType() {
24 | return ChatBroReader;
25 | }
26 |
27 | protected async makePayload(
28 | messages: IChatRequestMessage[]
29 | ): Promise