{"repo":"tiddly-gittly/TidGi-Desktop","free":true,"listed":false,"github":"https://github.com/tiddly-gittly/TidGi-Desktop","clone":"git clone https://github.com/tiddly-gittly/TidGi-Desktop.git","description":"TidGi is an privacy-in-mind, automated, auto-git-backup, freely-deployed knowledge management Desktop note app, based on Tiddlywiki, with REST API for web-clipping and Anki connect. 「 太记 」是一个基于「 太微 TiddlyWiki 」的知识管理桌面应用，能保护隐私内容、高级自动化、自动Git云备份、部署为博客，且可通过RESTAPI与Anki等应用连接。（迭代开发中欢迎试用，开发进度见下方链接）(Under active development, see website below for details) ","language":"TypeScript","stars":2000,"topics":["all-in-one","anki","backlinks","electron","evernote","knowledge-graph","knowledge-management","linux","local-first","macos","note-taking","notebook","notes-app","notion","obsidian","pkm","tiddlywiki","tiddlywiki5","windows","zettelkasten"],"license":"MPL-2.0","category":"knowledge_management","readme_excerpt":"<div align=\"center\">\n<h1> TidGi </h1>\n<p> Customizable personal knowledge-base with git as backup manager and blogging platform. </p>\n\n[![License: MPL 2.0](https://img.shields.io/badge/License-MPL%202.0-brightgreen.svg)](LICENSE)\n[![GitHub Actions Build Status](https://github.com/tiddly-gittly/TidGi-Desktop/actions/workflows/release.yml/badge.svg)](https://github.com/tiddly-gittly/TidGi-Desktop/actions)\n[![Lin Onetwo!](https://img.shields.io/github/followers/linonetwo)](https://github.com/linonetwo)\n[![Power by tiddlywiki!](https://github.com/tiddly-gittly/TidGi-Desktop/raw/master/docs/images/Powered%20by-Tiddlywiki-green.svg)](https://tiddlywiki.com/)\n\n</div>\n\n<hr>\n\n> Pronounce: Same as Tai Chi /ˌtaɪ ˈtʃiː/\n\n🇬🇧 English | <a href=\"./docs/readme/README.zh-CN.md\">🇨🇳 简体中文</a>\n\n<div align=\"center\">\n\n|                                                                          [Download](https://github.com/tiddly-gittly/TidGi-Desktop/releases/latest)                                                                          |\n| :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |\n| [![GitHub Releases](https://img.shields.io/github/downloads/tiddly-gittly/TidGi-Desktop/latest/total?label=Download%20Latest%20Release&style=for-the-badge)](https://github.com/tiddly-gittly/TidGi-Desktop/releases/latest) |\n|                                                                                                 More: [Download](#download)                                                                                                  |\n\n</div>\n\n## ShowCases And Demo\n\n### Demo\n\n- [Demo Online Web Blog Page](https://tiddly-gittly.github.io/Tiddlywiki-NodeJS-Github-Template/)\n- [TiddlyWiki Official Website](https://tiddlywiki.com/)\n\n### Screenshot\n\n![Screenshot of main-window](./docs/images/main-window-hide-bar.png)\n\n<details>\n\n|                      Load NodeJS Wiki                       |\n| :---------------------------------------------------------: |\n| ![Screenshot of main-window](./docs/images/main-window.png) |\n\n|                        Create Local Wiki                        |                          Clone Online Wiki                          |\n| :-------------------------------------------------------------: | :-----------------------------------------------------------------: |\n| ![Screenshot of add-workspace](./docs/images/add-workspace.png) | ![Screenshot of clone-workspace](./docs/images/clone-workspace.png) |\n\n|                                                               Translation, Preferences                                                               |\n| :--------------------------------------------------------------------------------------------------------------------------------------------------: |\n|                                              ![Screenshot of preference](./docs/images/preference.png)                                               |\n|                                                                   Interactive code                                                                   |\n| ![Screen recording of zx-script in tiddlywiki](https://user-images.githubusercontent.com/3746270/133831500-ae91164c-7948-4de4-9a81-7017ed3b65c9.gif) |\n|                                                               Community Plugin Library                                                               |\n|                                      ![Screenshot of add-workspace](./docs/images/community-plugin-library.png)                                      |\n\n</details>\n\n<details>\n<summary>For mac users, since I haven't buy Apple developer key yet, so you have to entrust App to open it, click here to expand details.◀</summary>\n\nFirst of all, you need to drag this App into Applications folder! Otherwise there will be an error.\n\nClick \"Cancel\" ↓\n\n![step00001](https://user-images.githubusercontent.com/3746270/87882506-eb1ddd80-ca32-11ea-942f-1f530767db02.png)\n\n![step00002](https://user-images.githubusercontent.com/3746270/87882509-ece7a100-ca32-11ea-8d29-a4977201090d.png)\n\n![step00003](https://user-images.githubusercontent.com/3746270/87882510-ed803780-ca32-11ea-8996-0f3c7060131a.png)\n\nClick \"Open\" ↓\n\n![step00004](https://user-images.githubusercontent.com/3746270/87882512-ee18ce00-ca32-11ea-8225-045ffc0a8b86.png)\n\nClick \"OK\" ↓\n\n![step00005](https://user-images.githubusercontent.com/3746270/87882514-eeb16480-ca32-11ea-9afd-cae6f2bea2db.png)\n\nOr you could start the Terminal from launchpad, and run [the command](https://apple.stackexchange.com/questions/202169/how-can-i-open-an-app-from-an-unidentified-developer-without-using-the-gui) below, make sure your terminal's \"working dir\" has the tidgi app\n\n```sh\nxattr -dr com.apple.quarantine \"tidgi.app\"\n```\n\n</details>\n\n## Related Posts About TidGi\n\nNo English posts yet...Please help sharing!\n\n## About TidGi-Desktop\n\nTidGi is a cross-platform Note Taking & GTD & Fragment Knowledge Management desktop app powered by [nodejs-TiddlyWiki](https://github.com/Jermolene/TiddlyWiki5#installing-tiddlywiki-on-nodejs), it ship with a lot of tiddlywiki plugins from the [TiddlyWiki community](https://groups.google.com/forum/#!forum/tiddlywiki).\n\nYou can call it [TG-Note](https://github.com/tiddly-gittly/TGNote), it is totally free and you own all your data. Code by the people, build for the people.\n\nIt used to named TiddlyGit, means TiddlyWiki with easy Git backup, short for TidGi now.\n\n## Download\n\n<a href=\"https://repology.org/project/tidgi/versions\">\n  <img src=\"https://repology.org/badge/vertical-allrepos/tidgi.svg\" alt=\"Packaging status\">\n</a>\n\nThe packaging-status badge is an external [Repology](https://repology.org/) index. It reports versions found in independent package repositories; it does not publish or automatically update those packages.\n\n> Official packages for Windows, macOS, Debian/Ubuntu, and RPM-based Linux distributions\n\n|                                                                          [Download](https://github.com/tiddly-gittly/TidGi-Desktop/releases/latest)                                                                          |\n| :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |\n| [![GitHub Releases](https://img.shields.io/github/downloads/tiddly-gittly/TidGi-Desktop/latest/total?label=Download%20Latest%20Release&style=for-the-badge)](https://github.com/tiddly-gittly/TidGi-Desktop/releases/latest) |\n\nOfficial release assets are built by this repository. Future stable releases built by the updated workflow include per-platform SHA-256 checksum files.\n\n> Arch Linux community package\n\n```bash\nyay -S tidgi-desktop-bin\n```\n\nThe AUR package is maintained outside this repository. Its version may follow GitHub Releases, but updates and package modifications are controlled by the listed AUR maintainer.\n\n> Homebrew Cask\n\n```bash\nbrew install --cask tidgi\n```\n\nHomebrew's livecheck/BrewTestBot follows stable GitHub Releases automatically. The cask is currently deprecated because existing macOS archives fail Gatekeeper checks and is scheduled to be disabled on September 1, 2026. Homebrew installation will remain deprecated until a signed and notarized release is available.\n\n## Mobile App\n\n- [TidGi-Mobile](https://github.com/tiddly-gittly/TidGi-Mobile) is the official pair with TidGi-Desktop, developed by [@linonetwo](https://github.com/linonetwo), fast for 100MB+ wiki.\n- See [Tiddloid](https://github.com/donmor/Tiddloid) for Android App developed by [@donmor](https://github.com/donmor). Good for smaller wiki, and you can have access to your HTML wiki.\n\nYou can switch between them, and sync data between them and TidGi at any time. All of them are local-first, open-sourced and compatible with TiddlyWiki ecosystem.\n\n## Data Privacy Protection\n\nYou can choose storage provider for your wiki workspace:\n\n1. \"Github\" as unlimited storage and gh-pages blogging platform.\n2. \"Local\" will create a local git repo for you, you can use [GithubDesktop](https://github.com/desktop/desktop) to sync manually.\n3. \"Gitlab\" and \"Gitee\" is on the way\n\n## Differences\n\n### Differences from [TiddlyDesktop](https://github.com/Jermolene/TiddlyDesktop)?\n\n1. NodeJS version of TiddlyWiki have seamless auto-save experience, which is taking the advantage of SyncAdaptor instead of Saver, TG have better support for NodeJS wiki\n2. Using NodeJS wiki, We can have separated tiddler files, which can be modified by hand, or by other programs (e.g. VSCode with [VSCode-TW5-Syntax](https://github.com/joshuafontany/VSCode-TW5-Syntax))\n3. Though TiddlyDesktop can also load wiki folder generated by nodejs-TiddlyWiki, TG can backup that folder to the Github easily\n4. With the Electron technology, we can use `fs`, `git` and many other nodejs things within TiddlyWiki, which greatly extend the hackability, which is the reason why I choose TiddlyWiki as my daily KM tool\n\n## Why Github?\n\nBecause Github is one of the best free civil level [BaaS](https://www.alibabacloud.com/blog/backend-as-a-service-baas-for-efficient-software-development_519851):\n\n1. Its storage is basically free, allow us to store unlimited images and PDF files, which can have permanent URIs for public download\n2. It has GraphQL API that allow us programmatically update our wiki\n3. It has free [CI](https://github.com/features/actions) to automatically deploy our TiddlyWiki blog\n4. It provides unlimited repository, public and private, which enables us to store private content into our TiddlyWiki\n\n## Development\n\nRead [Dev doc](docs/Development.md) for details.\n\n## Credits\n\nThe desktop app shell is based on [https://github.com/atomery/singlebox](atomery/singlebox) and [atomery/webcatalog](https://github.com/atomery/webcatalog)","default_branch":"master","files":994,"tree":[".editorconfig",".env",".gitattributes",".github/FUNDING.yml",".github/ISSUE_TEMPLATE/bug.yml",".github/ISSUE_TEMPLATE/config.yml",".github/ISSUE_TEMPLATE/feature.yaml",".github/codeql/codeql-config.yml",".github/codeql/codeql-pack.lock.yml",".github/codeql/electron-executejavascript.ql",".github/codeql/new-function-injection.ql",".github/codeql/qlpack.yml",".github/codeql/template-string-injection.ql",".github/instructions/agent.instructions.md",".github/instructions/testing.instructions.md",".github/workflows/codeql.yml",".github/workflows/release.yml",".github/workflows/steam-release.yml",".github/workflows/test.yml",".gitignore",".gitmodules",".husky/pre-push",".npmrc",".nvmrc",".vscode/launch.json",".vscode/mcp.json",".vscode/settings.json","LICENSE","PrivacyPolicy.md","README.md","build-resources/entitlements.mac.plist","build-resources/icon-borderless.png","build-resources/icon-installer.ico","build-resources/icon-installer@5x.png","build-resources/icon.icns","build-resources/icon.ico","build-resources/icon.png","build-resources/icon.psd","build-resources/icon@2x.png","build-resources/icon@3x.png","build-resources/icon@4x.png","build-resources/icon@5x.png","build-resources/installer.nsh","build-resources/overlay-icon.png","build-resources/overlay-icon@2x.png","build-resources/overlay-icon@3x.png","build-resources/overlay-icon@4x.png","build-resources/overlay-icon@5x.png","build-resources/tidgi.nuspectemplate","build-resources/tidgiMiniWindow@2x.png","build-resources/tidgiMiniWindowTemplate@2x.png","docs/Analytics.md","docs/Development.md","docs/ErrorDuringRelease.md","docs/ErrorDuringStart.md","docs/ErrorDuringTest.md","docs/MCP.md","docs/McpVsCodeSetup.md","docs/Publish.md","docs/Release.md","docs/Testing.md","docs/TestingE2E.md","docs/TestingUnit.md","docs/TidGiServiceAPI.md","docs/Translate.md","docs/environment/Environment-en-GB.md","docs/environment/Environment-zh-Hans.md","docs/features/AgentInstanceWorkflow.md","docs/features/FileProtocol.md","docs/features/OAuthFlow.md","docs/features/SubWiki.md","docs/features/WikiWorkspaceCreation.md","docs/features/WorkspaceConfigSync.md","docs/features/WorkspaceGrouping.md","docs/images/Powered by-Tiddlywiki-green.svg","docs/images/add-workspace.png","docs/images/allow-in-firewall-windows-zh-cn.png","docs/images/clone-workspace.png","docs/images/community-plugin-library.png","docs/images/main-window-hide-bar.png","docs/images/main-window.png","docs/images/preference.png","docs/images/trust-downloaded-windows-zh-cn.png","docs/internal/AICommitMessage.md","docs/internal/DragAndDrop.md","docs/internal/IPCSyncAdaptorAndFSAdaptor.md","docs/internal/MenuSystem.md","docs/internal/NodeDependency.md","docs/internal/PromptTreeNavigation.md","docs/internal/ServiceIPC.md","docs/readme/README.zh-CN.md","dprint.json","eslint.config.mjs","features/__tests__/validate-cucumber-arguments.test.ts","features/agent.feature","features/agentTool.feature","features/aiCommitMessage.feature","features/configError.feature","features/crossWindowSync.feature","features/cucumber.config.js","features/deepLink.feature","features/defaultWiki.feature","features/editWorkspace.feature","features/filesystemPlugin.feature","features/gitLog.feature","features/hibernation.feature","features/htmlWikiWorkspace.feature","features/logViewer.feature","features/newAgent.feature","features/oauthLogin.feature","features/preference.feature","features/promptEditAndToolToggle.feature","features/proxy.feature","features/scheduledTask.feature","features/simplifiedWiki.feature","features/smoke.feature","features/stepDefinitions/agent.ts","features/stepDefinitions/analytics.ts","features/stepDefinitions/application.ts","features/stepDefinitions/browserView.ts","features/stepDefinitions/cleanup.ts","features/stepDefinitions/logging.ts","features/stepDefinitions/menu.ts","features/stepDefinitions/sync.ts","features/stepDefinitions/tidgiMiniWindow.ts","features/stepDefinitions/ui.ts","features/stepDefinitions/wiki.ts","features/stepDefinitions/window.ts","features/stepDefinitions/workspaceGroup.ts","features/streamingStatus.feature","features/subWiki.feature","features/supports/calibration.ts","features/supports/dataTable.ts","features/supports/killProcessTree.ts","features/supports/mockAnalytics.ts","features/supports/mockOAuthServer.ts","features/supports/mockOpenAI.test.ts","features/supports/mockOpenAI.ts","features/supports/mockProxy.ts","features/supports/networkProxyFixture.ts","features/supports/paths.test.ts","features/supports/paths.ts","features/supports/timeouts.ts","features/supports/webContentsViewHelper.ts","features/sync.feature","features/talkWithAI.feature","features/tiddler.feature","features/tidgiMiniWindow.feature","features/tidgiMiniWindowWorkspace.feature","features/tsconfig.json","features/vectorSearch.feature","features/webviewPalette.feature","features/windowRestore.feature","features/workspaceConfig.feature","features/workspaceGroup.feature","forge.config.ts","forge.env.d.ts","index.html","localization/locales/en/agent.json","localization/locales/en/translation.json","localization/locales/fr/agent.json","localization/locales/fr/translation.json","localization/locales/ja/agent.json","localization/locales/ja/translation.json","localization/locales/ru/agent.json","localization/locales/ru/translation.json","localization/locales/zh-Hans/agent.json","localization/locales/zh-Hans/translation.json","localization/locales/zh-Hant/agent.json","localization/locales/zh-Hant/translation.json","localization/supportedLanguages.json","localization/tiddlywikiLanguages.json","package.json","packages/tidgi-shared/.gitignore","packages/tidgi-shared/README.md","packages/tidgi-shared/package.json","packages/tidgi-shared/src/externals.d.ts","packages/tidgi-shared/src/global.d.ts","packages/tidgi-shared/src/index.ts","packages/tidgi-shared/src/tidgiGlobal.ts","packages/tidgi-shared/tsconfig.json","packages/tidgi-shared/tsup.config.ts","patches/threads.patch","pnpm-lock.yaml","pnpm-workspace.yaml","reviewpad.yml","scripts/__tests__/prepareSquirrelVendor.test.ts","scripts/__tests__/releaseChecksums.test.ts","scripts/afterPack.ts","scripts/beforeAsar.ts","scripts/compilePlugins.mjs","scripts/developmentMkdir.ts","scripts/end-to-end-preflight.ts","scripts/generateReleaseChecksums.ts","scripts/prepareSquirrelVendor.ts","scripts/releaseChecksums.ts","scripts/run-e2e.ts","scripts/start-e2e-app.ts","scripts/startMockOpenAI.ts","scripts/trimDugite.ts","src/__tests__/__mocks__/react-i18next.ts","src/__tests__/__mocks__/services-container.ts","src/__tests__/__mocks__/services-i18n.ts","src/__tests__/__mocks__/services-log.ts","src/__tests__/__mocks__/window.ts","src/__tests__/__stubs__/mcpSdkStub.ts","src/__tests__/environment.test.ts","src/__tests__/environment.ts","src/__tests__/security/injection-prevention.test.ts","src/__tests__/setup-vitest.ts","src/components/ErrorBoundary.tsx","src/components/InfoSnackbar.tsx","src/components/KeyboardShortcutRegister.tsx","src/components/ListItem.tsx","src/components/RestartSnackbar.tsx","src/components/RootStyle.tsx","src/components/StorageService/SearchGithubRepo.tsx","src/components/StorageService/__tests__/SearchGithubRepo.test.tsx","src/components/StorageService/interfaces.ts","src/components/TokenForm/CustomServerTokenForm.tsx","src/components/TokenForm/GitTokenForm.tsx","src/components/TokenForm/__tests__/GitTokenForm.test.tsx","src/components/TokenForm/gitTokenHooks.ts","src/components/TokenForm/index.tsx","src/components/TokenForm/useTokenForm.ts","src/components/__tests__/KeyboardShortcutRegister.test.tsx","src/components/icon/CommandPaletteSVG.tsx","src/components/icon/SVGContainer.tsx","src/constants/__tests__/appPaths.test.ts","src/constants/appPaths.ts","src/constants/auth.ts","src/constants/channels.ts","src/constants/defaultTiddlerNames.ts","src/constants/environment.ts","src/constants/fileNames.ts","src/constants/hunspellLanguages.ts","src/constants/isElectronDevelopment.ts","src/constants/isWorkerDevelopment.ts","src/constants/oauthConfig.ts","src/constants/pageTypes.ts","src/constants/parameters.ts","src/constants/paths.ts","src/constants/protocol.ts","src/constants/urls.ts","src/constants/wiki.ts","src/constants/wikiCreation.ts","src/debug.ts","src/global.d.ts","src/helpers/__tests__/mainBootstrap.test.ts","src/helpers/__tests__/squirrelStartup.test.ts","src/helpers/__tests__/url.test.ts","src/helpers/findPath.ts","src/helpers/installV8Cache.ts","src/helpers/ip.ts","src/helpers/mainBootstrap.ts","src/helpers/mainInitFinished.ts","src/helpers/monacoConfig.ts","src/helpers/singleInstance.ts","src/helpers/slugify.ts","src/helpers/squirrelStartup.ts","src/helpers/system.ts","src/helpers/testKeyboardShortcuts.ts","src/helpers/twUtilities.ts","src/helpers/url.ts","src/helpers/useOptimisticField.ts","src/helpers/useServiceValue.ts","src/images/arrow-black.png","src/images/arrow-white.png","src/images/default-icon.png","src/images/night-background.png","src/images/search-by-algolia-dark.svg","src/images/search-by-algolia-light.svg","src/images/translatium-logo.svg","src/images/webcatalog-logo.svg","src/main.ts","src/mainApplication.ts","src/pages/Agent/TabContent/TabContentArea.tsx","src/pages/Agent/TabContent/TabContentView.tsx","src/pages/Agent/TabContent/TabTypes/CreateNewAgentContent.tsx","src/pages/Agent/TabContent/TabTypes/EditAgentDefinitionContent.tsx","src/pages/Agent/TabContent/TabTypes/NewTabContent.tsx","src/pages/Agent/TabContent/TabTypes/SplitViewTabContent.tsx","src/pages/Agent/TabContent/TabTypes/WebTabContent.tsx","src/pages/Agent/TabContent/TabTypes/WikiEmbedTabContent.tsx","src/pages/Agent/TabContent/TabTypes/__tests__/CreateNewAgentContent.test.tsx","src/pages/Agent/TabContent/TabTypes/__tests__/EditAgentDefinitionContent.test.tsx","src/pages/Agent/TabContent/TabTypes/__tests__/NewTabContent.test.tsx","src/pages/Agent/TabContent/TabTypes/__tests__/agentDefinitionSaveQueue.test.ts","src/pages/Agent/TabContent/TabTypes/agentDefinitionSaveQueue.ts","src/pages/Agent/components/Search/Search.tsx","src/pages/Agent/components/Search/TemplateSearch.tsx","src/pages/Agent/components/Search/plugins/AgentsPlugin.tsx","src/pages/Agent/components/Search/plugins/ClosedTabsPlugin.tsx","src/pages/Agent/components/Search/plugins/OpenTabsPlugin.tsx","src/pages/Agent/components/Search/styles.ts","src/pages/Agent/components/TabBar/TabContextMenu.tsx","src/pages/Agent/components/TabBar/TabItem.tsx","src/pages/Agent/components/TabBar/TabListDropdown.tsx","src/pages/Agent/components/TabBar/VerticalTabBar.tsx","src/pages/Agent/components/TabStoreInitializer.tsx","src/pages/Agent/components/UI/AgentLayout.tsx","src/pages/Agent/constants/tab.ts","src/pages/Agent/index.tsx","src/pages/Agent/store/agentChatStore/actions/agentActions.ts","src/pages/Agent/store/agentChatStore/actions/basicActions.ts","src/pages/Agent/store/agentChatStore/actions/messageActions.ts","src/pages/Agent/store/agentChatStore/actions/previewActions.ts","src/pages/Agent/store/agentChatStore/actions/streamingActions.ts","src/pages/Agent/store/agentChatStore/index.ts","src/pages/Agent/store/agentChatStore/types.ts","src/pages/Agent/store/initialData.ts","src/pages/Agent/store/tabStore/actions/basicActions.ts","src/pages/Agent/store/tabStore/actions/closeTabsActions.ts","src/pages/Agent/store/tabStore/actions/historyActions.ts","src/pages/Agent/store/tabStore/actions/initializeActions.ts","src/pages/Agent/store/tabStore/actions/splitViewActions.ts","src/pages/Agent/store/tabStore/actions/utilityActions.ts","src/pages/Agent/store/tabStore/index.ts","src/pages/Agent/store/tabStore/types.ts","src/pages/Agent/types/tab.ts","src/pages/ChatTabContent/components/APILogsDialog.tsx","src/pages/ChatTabContent/components/AgentSwitcher.tsx","src/pages/ChatTabContent/components/ChatHeader.tsx","src/pages/ChatTabContent/components/ChatTitle.tsx","src/pages/ChatTabContent/components/CompactModelSelector.tsx","src/pages/ChatTabContent/components/FlatPromptList.tsx","src/pages/ChatTabContent/components/InputContainer.tsx","src/pages/ChatTabContent/components/LastUpdatedIndicator.tsx","src/pages/ChatTabContent/components/MessageBubble.tsx","src/pages/ChatTabContent/components/MessageRenderer/AskQuestionRenderer.tsx","src/pages/ChatTabContent/components/MessageRenderer/BaseMessageRenderer.tsx","src/pages/ChatTabContent/components/MessageRenderer/EditDiffRenderer.tsx","src/pages/ChatTabContent/components/MessageRenderer/ErrorMessageRenderer.tsx","src/pages/ChatTabContent/components/MessageRenderer/ThinkingMessageRenderer.tsx","src/pages/ChatTabContent/components/MessageRenderer/TodoListRenderer.tsx","src/pages/ChatTabContent/components/MessageRenderer/ToolApprovalRenderer.tsx","src/pages/ChatTabContent/components/MessageRenderer/ToolResultRenderer.tsx","src/pages/ChatTabContent/components/MessageRenderer/WikitextMessageRenderer.tsx","src/pages/ChatTabContent/components/MessageRenderer/__tests__/MessageRenderers.test.tsx","src/pages/ChatTabContent/components/MessageRenderer/i18nPlaceholders.ts","src/pages/ChatTabContent/components/MessageRenderer/index.tsx","src/pages/ChatTabContent/components/MessageRenderer/types.ts","src/pages/ChatTabContent/components/MessagesContainer.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/EditView.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/LoadingView.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PreviewProgressBar.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PreviewTabsView.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/ErrorDisplay.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/controls/ArrayAddButton.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/controls/StyledButtons.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/controls/StyledControls.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/controls/index.ts","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/display/HelpTooltip.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/display/StyledChips.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/display/StyledLabels.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/display/index.ts","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/index.ts","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/input/StyledSelects.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/input/StyledTextFields.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/input/index.ts","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/layout/ArrayAddButton.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/layout/StyledArrayContainer.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/layout/StyledCard.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/layout/StyledCollapsible.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/components/layout/index.ts","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/context/ArrayItemContext.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/context/index.ts","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/defaultUiSchema.ts","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/fields/ConditionalField.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/fields/index.ts","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/index.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/store/arrayFieldStore.ts","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/templates/ArrayFieldItemTemplate.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/templates/ArrayFieldTemplate.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/templates/FieldTemplate.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/templates/ObjectFieldTemplate.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/templates/RootObjectFieldTemplate.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/templates/index.ts","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/widgets/AutoResizeTextareaWidget.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/widgets/CheckboxWidget.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/widgets/NumberWidget.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/widgets/SelectWidget.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/widgets/TagsWidget.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/widgets/TextWidget.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/PromptConfigForm/widgets/index.ts","src/pages/ChatTabContent/components/PromptPreviewDialog/__tests__/PromptPreviewDialog.promptConcat.test.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/__tests__/PromptPreviewDialog.ui.test.tsx","src/pages/ChatTabContent/components/PromptPreviewDialog/index.tsx","src/pages/ChatTabContent/components/PromptTree.tsx","src/pages/ChatTabContent/components/ScrollToBottomButton.tsx","src/pages/ChatTabContent/components/TokenPieChart.tsx","src/pages/ChatTabContent/components/TurnActionBar.tsx","src/pages/ChatTabContent/components/__tests__/MessageBubble.test.tsx","src/pages/ChatTabContent/components/__tests__/PromptTree.test.tsx","src/pages/ChatTabContent/components/types.ts","src/pages/ChatTabContent/hooks/useMessageHandling.tsx","src/pages/ChatTabContent/hooks/useMessageRendering.ts","src/pages/ChatTabContent/hooks/useScrollHandling.tsx","src/pages/ChatTabContent/hooks/useTypingEffect.ts","src/pages/ChatTabContent/index.tsx"],"storefront":"/r/tiddly-gittly","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/tiddly-gittly/TidGi-Desktop/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}