{"repo":"NousResearch/hermes-agent","public_id":"43690","display_label":"FTS5 trigram index bloat from tool_calls JSON","summary":"These items address excessive database size caused by trigram full-text search indexing of structured JSON tool_calls data. Proposed fixes include excluding tool_calls from the trigram index and restructuring FTS layout to reduce storage expansion.","subsystem":"agent","counts":{"members":3,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":1,"attempt_prs":1},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":65798,"merged_at":"2026-07-22T11:42:51+00:00"},"resolution":{"state":"resolved","by":"pr-65798"},"freshness":{"state":"verified","last_verified_at":"2026-07-22T11:42:51+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[{"issue_number":22478,"pr_number":65798,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-07-22T11:42:51+00:00"},{"issue_number":43690,"pr_number":65798,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-07-22T11:42:51+00:00"},{"issue_number":55233,"pr_number":65798,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-07-22T11:42:51+00:00"}],"members":[{"kind":"issue","number":43690,"title":"FTS5 Trigram Index Bloat: 18.3x Expansion on Structured JSON Data (tool_calls)","url":null,"state":"closed"},{"kind":"pr","number":43701,"title":"fix(db): exclude tool_calls JSON from trigram FTS5 index to reduce bloat","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#65798","number":65798}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false},{"kind":"pr","number":65798,"title":"perf(state): compact v23 FTS layout — external-content indexes, tool-row-free trigram, opt-in `hermes sessions optimize-storage`","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":[".github/actions/detect-changes/action.yml",".github/actions/get-app-token/action.yml",".github/workflows/ci.yml",".github/workflows/contributor-check.yml",".github/workflows/deploy-site.yml",".github/workflows/e2e-desktop.yml",".github/workflows/history-check.yml",".github/workflows/js-autofix.yml",".github/workflows/label-rerun.yml",".github/workflows/lint.yml",".github/workflows/lockfile-diff.yml",".github/workflows/osv-scanner.yml",".github/workflows/review-labels.yml",".github/workflows/skills-index-freshness.yml",".github/workflows/skills-index.yml",".github/workflows/supply-chain-audit.yml",".github/workflows/upload_to_pypi.yml",".github/workflows/uv-lockfile-check.yml",".gitignore","Dockerfile","MANIFEST.in","acp_registry/agent.json","agent/account_usage.py","agent/agent_init.py","agent/agent_runtime_helpers.py","agent/anthropic_adapter.py","agent/async_utils.py","agent/auxiliary_client.py","agent/battery.py","agent/bedrock_adapter.py","agent/billing_usage.py","agent/billing_view.py","agent/chat_completion_helpers.py","agent/coding_context.py","agent/context_compressor.py","agent/context_engine.py","agent/conversation_compression.py","agent/conversation_loop.py","agent/credential_pool.py","agent/credits_tracker.py","agent/curator_backup.py","agent/display.py","agent/error_classifier.py","agent/lsp/client.py","agent/lsp/manager.py","agent/model_metadata.py","agent/moonshot_schema.py","agent/prompt_builder.py","agent/reasoning_timeouts.py","agent/redact.py","agent/replay_cleanup.py","agent/secret_scope.py","agent/secret_sources/base.py","agent/secret_sources/bitwarden.py","agent/secret_sources/onepassword.py","agent/secret_sources/registry.py","agent/subscription_view.py","agent/system_prompt.py","agent/tool_executor.py","agent/tool_guardrails.py","agent/transports/chat_completions.py","agent/turn_context.py","agent/turn_finalizer.py","agent/usage_pricing.py","agent/verification_evidence.py","apps/bootstrap-installer/src-tauri/src/install_script.rs","apps/bootstrap-installer/src-tauri/src/powershell.rs","apps/bootstrap-installer/src-tauri/src/update.rs","apps/desktop/AGENTS.md","apps/desktop/e2e/boot-failure.spec.ts","apps/desktop/e2e/boot.spec.ts","apps/desktop/e2e/chat.spec.ts","apps/desktop/e2e/fix-electron-tracing.ts","apps/desktop/e2e/fixtures.ts","apps/desktop/e2e/launch-packaged-app.spec.ts","apps/desktop/e2e/mock-backend-setup.spec.ts","apps/desktop/e2e/mock-server.ts","apps/desktop/e2e/onboarding.spec.ts","apps/desktop/e2e/scripts/seed_session_db.py","apps/desktop/e2e/test.ts","apps/desktop/e2e/visual-snapshot.ts","apps/desktop/electron/bootstrap-runner.test.ts","apps/desktop/electron/bootstrap-runner.ts","apps/desktop/electron/connection-apply.test.ts","apps/desktop/electron/connection-apply.ts","apps/desktop/electron/connection-config.test.ts","apps/desktop/electron/connection-config.ts","apps/desktop/electron/desktop-installation.test.ts","apps/desktop/electron/desktop-installation.ts","apps/desktop/electron/event-dedupe.test.ts","apps/desktop/electron/event-dedupe.ts","apps/desktop/electron/git-repo-scan.test.ts","apps/desktop/electron/git-repo-scan.ts","apps/desktop/electron/git-review-ops.test.ts","apps/desktop/electron/git-review-ops.ts","apps/desktop/electron/main.ts","apps/desktop/electron/power-save.test.ts","apps/desktop/electron/power-save.ts","apps/desktop/electron/preload.ts","apps/desktop/electron/remote-lifecycle.test.ts","apps/desktop/electron/remote-lifecycle.ts","apps/desktop/electron/remote-liveness.test.ts","apps/desktop/electron/remote-liveness.ts","apps/desktop/electron/session-windows.test.ts","apps/desktop/electron/session-windows.ts","apps/desktop/electron/spawn-helper-perms.test.ts","apps/desktop/electron/spawn-helper-perms.ts","apps/desktop/electron/ssh-bootstrap-coordinator.test.ts","apps/desktop/electron/ssh-bootstrap-coordinator.ts","apps/desktop/electron/ssh-config.test.ts","apps/desktop/electron/ssh-config.ts","apps/desktop/electron/ssh-connection.test.ts","apps/desktop/electron/ssh-connection.ts","apps/desktop/electron/windows-remote-lifecycle.test.ts","apps/desktop/electron/windows-remote-lifecycle.ts","apps/desktop/electron/windows-remote-live.test.ts","apps/desktop/electron/windows-sandbox-fallback.test.ts","apps/desktop/electron/windows-sandbox-fallback.ts","apps/desktop/electron/windows-system-ca.test.ts","apps/desktop/electron/windows-system-ca.ts","apps/desktop/electron/zoom.test.ts","apps/desktop/electron/zoom.ts","apps/desktop/package.json","apps/desktop/playwright.config.ts","apps/desktop/scripts/dev-mock.mjs","apps/desktop/scripts/leak-typing.mjs","apps/desktop/scripts/measure-jump.mjs","apps/desktop/scripts/measure-latency.mjs","apps/desktop/scripts/measure-profile-switch.mjs","apps/desktop/scripts/measure-real-stream.mjs","apps/desktop/scripts/measure-submit.mjs","apps/desktop/scripts/measure-synthetic-stream.mjs","apps/desktop/scripts/perf/README.md","apps/desktop/scripts/perf/baseline.json","apps/desktop/scripts/perf/lib/baseline.mjs","apps/desktop/scripts/perf/lib/cdp.mjs","apps/desktop/scripts/perf/lib/launch.mjs","apps/desktop/scripts/perf/lib/stats.mjs","apps/desktop/scripts/perf/run.mjs","apps/desktop/scripts/perf/scenarios/cold-start.mjs","apps/desktop/scripts/perf/scenarios/first-token.mjs","apps/desktop/scripts/perf/scenarios/index.mjs","apps/desktop/scripts/perf/scenarios/keystroke.mjs","apps/desktop/scripts/perf/scenarios/profile-switch.mjs","apps/desktop/scripts/perf/scenarios/session-switch.mjs","apps/desktop/scripts/perf/scenarios/stream.mjs","apps/desktop/scripts/perf/scenarios/submit.mjs","apps/desktop/scripts/perf/scenarios/transcript.mjs","apps/desktop/scripts/perf/serve.mjs","apps/desktop/scripts/profile-long-stream.mjs","apps/desktop/scripts/profile-real-stream.mjs","apps/desktop/scripts/profile-session-switch.mjs","apps/desktop/scripts/profile-synth-stream.mjs","apps/desktop/scripts/profile-typing-lag.md","apps/desktop/scripts/profile-typing.mjs","apps/desktop/scripts/write-build-stamp.mjs","apps/desktop/scripts/write-build-stamp.test.mjs","apps/desktop/src/app/chat/close-tab.test.ts","apps/desktop/src/app/chat/close-tab.ts","apps/desktop/src/app/chat/composer/focus.ts","apps/desktop/src/app/chat/composer/hooks/use-auto-speak-replies.ts","apps/desktop/src/app/chat/composer/hooks/use-composer-draft.ts","apps/desktop/src/app/chat/composer/hooks/use-composer-queue.test.tsx","apps/desktop/src/app/chat/composer/hooks/use-composer-queue.ts","apps/desktop/src/app/chat/composer/index.tsx","apps/desktop/src/app/chat/composer/model-pill.test.tsx","apps/desktop/src/app/chat/composer/model-pill.tsx","apps/desktop/src/app/chat/composer/queue-panel.tsx","apps/desktop/src/app/chat/composer/rich-editor.ts","apps/desktop/src/app/chat/index.tsx","apps/desktop/src/app/chat/pane-mirror.ts","apps/desktop/src/app/chat/perf-probe.tsx","apps/desktop/src/app/chat/right-rail/preview-pane.tsx","apps/desktop/src/app/chat/session-tile.tsx","apps/desktop/src/app/chat/session-view.tsx","apps/desktop/src/app/chat/sidebar/index.tsx","apps/desktop/src/app/chat/sidebar/load-more-row.test.tsx","apps/desktop/src/app/chat/sidebar/load-more-row.tsx","apps/desktop/src/app/chat/sidebar/project-dialog.test.tsx","apps/desktop/src/app/chat/sidebar/project-dialog.tsx","apps/desktop/src/app/chat/sidebar/projects/overview-row.test.tsx","apps/desktop/src/app/chat/sidebar/projects/overview-row.tsx","apps/desktop/src/app/chat/sidebar/projects/project-menu.test.tsx","apps/desktop/src/app/chat/sidebar/projects/project-menu.tsx","apps/desktop/src/app/chat/sidebar/projects/workspace-groups.test.ts","apps/desktop/src/app/chat/sidebar/projects/workspace-groups.ts","apps/desktop/src/app/chat/sidebar/projects/workspace-header.test.tsx","apps/desktop/src/app/chat/sidebar/projects/workspace-header.tsx","apps/desktop/src/app/chat/sidebar/session-actions-menu.test.ts","apps/desktop/src/app/chat/sidebar/session-actions-menu.test.tsx","apps/desktop/src/app/chat/sidebar/session-actions-menu.tsx","apps/desktop/src/app/chat/sidebar/session-row-state.test.ts","apps/desktop/src/app/chat/sidebar/session-row-state.ts","apps/desktop/src/app/chat/sidebar/session-row.test.tsx","apps/desktop/src/app/chat/sidebar/session-row.tsx","apps/desktop/src/app/command-palette/index.tsx","apps/desktop/src/app/contrib/controller.tsx","apps/desktop/src/app/contrib/hooks/use-background-sync.test.ts","apps/desktop/src/app/contrib/hooks/use-background-sync.ts","apps/desktop/src/app/contrib/wiring.tsx","apps/desktop/src/app/cron/cron-job-model.test.ts","apps/desktop/src/app/cron/cron-job-model.ts","apps/desktop/src/app/cron/index.tsx","apps/desktop/src/app/gateway/hooks/use-gateway-boot.test.tsx","apps/desktop/src/app/gateway/hooks/use-gateway-boot.ts","apps/desktop/src/app/gateway/hooks/use-gateway-request.ts","apps/desktop/src/app/hooks/use-keybinds.ts","apps/desktop/src/app/messaging/platform-icon.tsx","apps/desktop/src/app/model-picker-overlay.tsx","apps/desktop/src/app/overlays/panel.test.tsx","apps/desktop/src/app/overlays/panel.tsx","apps/desktop/src/app/right-sidebar/files/use-project-tree.ts","apps/desktop/src/app/right-sidebar/review/index.tsx","apps/desktop/src/app/session/hooks/use-background-queue-drain.test.tsx","apps/desktop/src/app/session/hooks/use-background-queue-drain.ts","apps/desktop/src/app/session/hooks/use-hermes-config.test.ts","apps/desktop/src/app/session/hooks/use-hermes-config.ts","apps/desktop/src/app/session/hooks/use-message-stream/composer-model-event.test.tsx","apps/desktop/src/app/session/hooks/use-message-stream/gateway-event.ts","apps/desktop/src/app/session/hooks/use-message-stream/index.ts","apps/desktop/src/app/session/hooks/use-message-stream/interim-sealing.test.tsx","apps/desktop/src/app/session/hooks/use-message-stream/session-info-side-effects.test.tsx","apps/desktop/src/app/session/hooks/use-model-controls.test.tsx","apps/desktop/src/app/session/hooks/use-model-controls.ts","apps/desktop/src/app/session/hooks/use-session-actions.test.tsx","apps/desktop/src/app/session/hooks/use-session-actions/index.ts","apps/desktop/src/app/session/hooks/use-session-actions/utils.test.ts","apps/desktop/src/app/session/hooks/use-session-actions/utils.ts","apps/desktop/src/app/session/hooks/use-session-list-actions.test.tsx","apps/desktop/src/app/session/hooks/use-session-list-actions.ts","apps/desktop/src/app/session/hooks/use-session-state-cache.test.tsx","apps/desktop/src/app/session/hooks/use-session-state-cache.ts","apps/desktop/src/app/settings/billing/account-row-value.tsx","apps/desktop/src/app/settings/billing/api.test.ts","apps/desktop/src/app/settings/billing/api.ts","apps/desktop/src/app/settings/billing/auto-reload-row.tsx","apps/desktop/src/app/settings/billing/billing-amounts.ts","apps/desktop/src/app/settings/billing/current-plan-card.tsx","apps/desktop/src/app/settings/billing/dev-fixtures.ts","apps/desktop/src/app/settings/billing/errors.test.ts","apps/desktop/src/app/settings/billing/errors.ts","apps/desktop/src/app/settings/billing/fixtures.test-util.ts","apps/desktop/src/app/settings/billing/index.test.tsx","apps/desktop/src/app/settings/billing/index.tsx","apps/desktop/src/app/settings/billing/inline-feedback.tsx","apps/desktop/src/app/settings/billing/open-external.ts","apps/desktop/src/app/settings/billing/plans-view.tsx","apps/desktop/src/app/settings/billing/simulated-api.test.ts","apps/desktop/src/app/settings/billing/simulated-api.ts","apps/desktop/src/app/settings/billing/tier-art.test.ts","apps/desktop/src/app/settings/billing/tier-art.tsx","apps/desktop/src/app/settings/billing/types.test.ts","apps/desktop/src/app/settings/billing/types.ts","apps/desktop/src/app/settings/billing/use-billing-state.test.ts","apps/desktop/src/app/settings/billing/use-billing-state.ts","apps/desktop/src/app/settings/billing/use-charge-poller.test.ts","apps/desktop/src/app/settings/billing/use-charge-poller.ts","apps/desktop/src/app/settings/billing/use-step-up.test.tsx","apps/desktop/src/app/settings/billing/use-step-up.ts","apps/desktop/src/app/settings/billing/use-subscription-change.test.tsx","apps/desktop/src/app/settings/billing/use-subscription-change.ts","apps/desktop/src/app/settings/config-field.tsx","apps/desktop/src/app/settings/config-settings.tsx","apps/desktop/src/app/settings/constants.ts","apps/desktop/src/app/settings/custom-endpoints-settings.tsx","apps/desktop/src/app/settings/env-var-actions-menu.tsx","apps/desktop/src/app/settings/gateway-settings.tsx","apps/desktop/src/app/settings/helpers.test.ts","apps/desktop/src/app/settings/helpers.ts","apps/desktop/src/app/settings/index.tsx","apps/desktop/src/app/settings/keys-settings.tsx","apps/desktop/src/app/settings/memory/field-control.tsx","apps/desktop/src/app/settings/memory/provider-config-modal.test.tsx","apps/desktop/src/app/settings/memory/provider-config-modal.tsx","apps/desktop/src/app/settings/memory/provider-config-panel.test.tsx","apps/desktop/src/app/settings/memory/provider-config-panel.tsx","apps/desktop/src/app/settings/model-settings.test.tsx","apps/desktop/src/app/settings/model-settings.tsx","apps/desktop/src/app/settings/notifications-settings.tsx","apps/desktop/src/app/settings/primitives.tsx","apps/desktop/src/app/settings/provider-config-panel.test.tsx","apps/desktop/src/app/settings/provider-config-panel.tsx","apps/desktop/src/app/settings/providers-settings.test.tsx","apps/desktop/src/app/settings/providers-settings.tsx","apps/desktop/src/app/settings/ssh-host-selection.test.ts","apps/desktop/src/app/settings/ssh-host-selection.ts","apps/desktop/src/app/settings/terminal-backend-panel.test.tsx","apps/desktop/src/app/settings/terminal-backend-panel.tsx","apps/desktop/src/app/settings/toolset-config-panel.test.tsx","apps/desktop/src/app/settings/toolset-config-panel.tsx","apps/desktop/src/app/settings/types.ts","apps/desktop/src/app/settings/voice-provider-fields.test.ts","apps/desktop/src/app/settings/voice-provider-fields.tsx","apps/desktop/src/app/shell/hooks/use-overlay-routing.ts","apps/desktop/src/app/shell/hooks/use-status-snapshot.test.ts","apps/desktop/src/app/shell/hooks/use-status-snapshot.ts","apps/desktop/src/app/shell/hooks/use-statusbar-items.tsx","apps/desktop/src/app/shell/model-edit-submenu.test.tsx","apps/desktop/src/app/shell/model-edit-submenu.tsx","apps/desktop/src/app/shell/model-menu-panel.test.tsx","apps/desktop/src/app/shell/model-menu-panel.tsx","apps/desktop/src/app/skills/index.test.tsx","apps/desktop/src/app/skills/index.tsx","apps/desktop/src/app/starmap/share-controls.test.tsx","apps/desktop/src/app/starmap/share-controls.tsx","apps/desktop/src/app/types.ts","apps/desktop/src/app/updates-overlay.tsx","apps/desktop/src/assets/tiers/feature-automation.webp","apps/desktop/src/assets/tiers/feature-connect.webp","apps/desktop/src/assets/tiers/feature-memory.webp","apps/desktop/src/assets/tiers/feature-sandbox.webp","apps/desktop/src/components/assistant-ui/ansi-text.tsx","apps/desktop/src/components/assistant-ui/markdown-text.test.ts","apps/desktop/src/components/assistant-ui/markdown-text.tsx","apps/desktop/src/components/assistant-ui/thread/list.test.ts","apps/desktop/src/components/assistant-ui/thread/list.tsx","apps/desktop/src/components/assistant-ui/thread/status.test.tsx","apps/desktop/src/components/assistant-ui/thread/user-edit-composer.tsx","apps/desktop/src/components/assistant-ui/thread/user-message-edit.test.tsx","apps/desktop/src/components/assistant-ui/tool/fallback-model.test.ts","apps/desktop/src/components/assistant-ui/tool/fallback-model/index.ts","apps/desktop/src/components/assistant-ui/tool/fallback-model/types.ts","apps/desktop/src/components/assistant-ui/tool/fallback.tsx","apps/desktop/src/components/boot-failure-overlay.tsx","apps/desktop/src/components/boot-failure-reauth.test.ts","apps/desktop/src/components/boot-failure-reauth.ts","apps/desktop/src/components/chat/activity-timer-text.tsx","apps/desktop/src/components/chat/compact-markdown.tsx","apps/desktop/src/components/chat/diff-lines.tsx","apps/desktop/src/components/chat/stable-text.tsx","apps/desktop/src/components/gateway-connecting-overlay.tsx","apps/desktop/src/components/idle-mount.test.tsx","apps/desktop/src/components/idle-mount.tsx","apps/desktop/src/components/pane-shell/tree/focus-tab-hijack.test.ts","apps/desktop/src/components/pane-shell/tree/reactive-unhide.test.ts","apps/desktop/src/components/pane-shell/tree/renderer/lone-header.test.ts","apps/desktop/src/components/pane-shell/tree/renderer/lone-header.ts","apps/desktop/src/components/pane-shell/tree/renderer/track-model.ts","apps/desktop/src/components/pane-shell/tree/renderer/tree-group.tsx","apps/desktop/src/components/pane-shell/tree/renderer/tree-split.tsx","apps/desktop/src/components/pane-shell/tree/store.ts","apps/desktop/src/components/ui/decode-text.tsx","apps/desktop/src/components/ui/dialog.test.tsx","apps/desktop/src/components/ui/dialog.tsx","apps/desktop/src/components/ui/select.tsx","apps/desktop/src/components/ui/tooltip.test.tsx","apps/desktop/src/components/ui/tooltip.tsx","apps/desktop/src/contrib/plugin.ts","apps/desktop/src/global.d.ts","apps/desktop/src/hermes-cron-scope.test.ts","apps/desktop/src/hermes-profile-scope.test.ts","apps/desktop/src/hermes.test.ts","apps/desktop/src/hermes.ts","apps/desktop/src/i18n/en.ts","apps/desktop/src/i18n/index.ts","apps/desktop/src/i18n/ja.ts","apps/desktop/src/i18n/plugin-i18n.test.tsx","apps/desktop/src/i18n/plugin-i18n.ts","apps/desktop/src/i18n/runtime.ts","apps/desktop/src/i18n/types.ts","apps/desktop/src/i18n/zh-hant.ts","apps/desktop/src/i18n/zh.ts","apps/desktop/src/lib/chat-messages.test.ts","apps/desktop/src/lib/chat-messages.ts","apps/desktop/src/lib/chat-runtime.ts","apps/desktop/src/lib/completion-sound.ts","apps/desktop/src/lib/desktop-fs.test.ts","apps/desktop/src/lib/desktop-fs.ts","apps/desktop/src/lib/gateway-events.test.ts","apps/desktop/src/lib/gateway-events.ts","apps/desktop/src/lib/gateway-ws-url.test.ts","apps/desktop/src/lib/icons.ts","apps/desktop/src/lib/keybinds/actions.ts","apps/desktop/src/lib/keybinds/composer-focus-keys.test.ts","apps/desktop/src/lib/keybinds/composer-focus-keys.ts","apps/desktop/src/lib/markdown-blocks.test.ts","apps/desktop/src/lib/markdown-blocks.ts","apps/desktop/src/lib/markdown-preprocess.ts","apps/desktop/src/lib/model-options.test.ts","apps/desktop/src/lib/model-options.ts","apps/desktop/src/lib/query-client.test.ts","apps/desktop/src/lib/query-client.ts","apps/desktop/src/lib/raf-coalesce.ts","apps/desktop/src/lib/stable-array.ts","apps/desktop/src/lib/statusbar.tsx","apps/desktop/src/main.tsx","apps/desktop/src/sdk/index.ts","apps/desktop/src/store/ambient.ts","apps/desktop/src/store/boot.ts","apps/desktop/src/store/coding-status.test.ts","apps/desktop/src/store/coding-status.ts","apps/desktop/src/store/composer-queue.test.ts","apps/desktop/src/store/composer-queue.ts","apps/desktop/src/store/composer-status.ts","apps/desktop/src/store/composer.test.ts","apps/desktop/src/store/composer.ts","apps/desktop/src/store/gateway-switch.test.ts","apps/desktop/src/store/gateway-switch.ts","apps/desktop/src/store/keep-awake.test.ts","apps/desktop/src/store/keep-awake.ts","apps/desktop/src/store/model-presets.test.ts","apps/desktop/src/store/model-presets.ts","apps/desktop/src/store/preview.ts","apps/desktop/src/store/profile.test.ts","apps/desktop/src/store/profile.ts","apps/desktop/src/store/projects.test.ts","apps/desktop/src/store/projects.ts","apps/desktop/src/store/provider-collapse.ts","apps/desktop/src/store/review.ts","apps/desktop/src/store/session-color.test.ts","apps/desktop/src/store/session-color.ts","apps/desktop/src/store/session-states.test.ts","apps/desktop/src/store/session-states.ts","apps/desktop/src/store/session-watchdog.test.ts","apps/desktop/src/store/session.test.ts","apps/desktop/src/store/session.ts","apps/desktop/src/store/tool-diffs.test.ts","apps/desktop/src/store/tool-diffs.ts","apps/desktop/src/store/updates.test.ts","apps/desktop/src/store/updates.ts","apps/desktop/src/store/windows.test.ts","apps/desktop/src/store/windows.ts","apps/desktop/src/store/workspace-events.ts","apps/desktop/src/styles.css","apps/desktop/src/themes/backend-sync.test.ts","apps/desktop/src/themes/backend-sync.ts","apps/desktop/src/themes/context.tsx","apps/desktop/src/themes/index.ts","apps/desktop/src/themes/skin.test.ts","apps/desktop/src/themes/skin.ts","apps/desktop/src/themes/user-themes.ts","apps/desktop/src/types/hermes.ts","apps/desktop/tsconfig.e2e.json","apps/desktop/tsconfig.json","apps/desktop/vite.config.ts","apps/desktop/vitest.config.ts","apps/desktop/vitest.setup.ts","apps/shared/package.json","apps/shared/src/billing-policy.ts","apps/shared/src/billing-types.ts","apps/shared/src/charge-settlement.ts","apps/shared/src/index.ts","apps/shared/src/json-rpc-gateway.ts","apps/shared/src/skin.ts","apps/shared/src/websocket-url.ts","cli-config.yaml.example","cli.py","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/austinpickett@users.noreply.github.com","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/deusyu@users.noreply.github.com","contributors/emails/[redacted:email]","contributors/emails/eazye19@users.noreply.github.com","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/githubespresso407@users.noreply.github.com","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/jasonfang1993@users.noreply.github.com","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/kshitij@users.noreply.github.com","contributors/emails/[redacted:email]","contributors/emails/kubolko@users.noreply.github.com","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/ly-wang19@users.noreply.github.com","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/nyaruko@hermes","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/punyko8@users.noreply.github.com","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/tars@users.noreply.github.com","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","cron/jobs.py","cron/scheduler.py","docker/tini-shim.sh","docs/billing-lifecycle.md","docs/session-lifecycle.md","gateway/authz_mixin.py","gateway/config.py","gateway/delivery_ledger.py","gateway/display_config.py","gateway/platforms/api_server.py","gateway/platforms/base.py","gateway/platforms/helpers.py","gateway/platforms/qqbot/adapter.py","gateway/platforms/whatsapp_cloud.py","gateway/relay/adapter.py","gateway/run.py","gateway/session.py","gateway/session_context.py","gateway/shutdown_watchdog.py","gateway/slash_commands.py","gateway/status.py","gateway/stream_consumer.py","gateway/systemd_notify.py","gateway/turn_lease.py","hermes_cli/__init__.py","hermes_cli/_subprocess_compat.py","hermes_cli/auth.py","hermes_cli/backup.py","hermes_cli/browser_connect.py","hermes_cli/callbacks.py","hermes_cli/cli_billing_mixin.py","hermes_cli/cli_commands_mixin.py","hermes_cli/codex_models.py","hermes_cli/commands.py","hermes_cli/config.py","hermes_cli/context_switch_guard.py","hermes_cli/credential_lifecycle.py","hermes_cli/doctor.py","hermes_cli/dump.py","hermes_cli/env_loader.py","hermes_cli/gateway.py","hermes_cli/goals.py","hermes_cli/inventory.py","hermes_cli/kanban.py","hermes_cli/kanban_db.py","hermes_cli/main.py","hermes_cli/mcp_startup.py","hermes_cli/memory_providers.py","hermes_cli/model_switch.py","hermes_cli/models.py","hermes_cli/nous_billing.py","hermes_cli/onepassword_secrets_cli.py","hermes_cli/oneshot.py","hermes_cli/projects_db.py","hermes_cli/providers.py","hermes_cli/route_identity.py","hermes_cli/runtime_provider.py","hermes_cli/secrets_cli.py","hermes_cli/setup.py","hermes_cli/skin_cmd.py","hermes_cli/skin_engine.py","hermes_cli/status.py","hermes_cli/subcommands/config.py","hermes_cli/subcommands/dashboard.py","hermes_cli/subcommands/skin.py","hermes_cli/tools_config.py","hermes_cli/web_server.py","hermes_cli/windows_ssh_runtime.py","hermes_constants.py","hermes_state.py","model_tools.py","nix/devShell.nix","nix/hermes-agent.nix","nix/tui.nix","optional-skills/finance/excel-author/SKILL.md","plugins/memory/config_schema.py","plugins/memory/hindsight/config_schema.py","plugins/memory/honcho/config_schema.py","plugins/memory/openviking/README.md","plugins/memory/openviking/__init__.py","plugins/memory/supermemory/README.md","plugins/memory/supermemory/__init__.py","plugins/model-providers/gmi/__init__.py","plugins/platforms/dingtalk/adapter.py","plugins/platforms/discord/adapter.py","plugins/platforms/discord/recovery.py","plugins/platforms/feishu/adapter.py","plugins/platforms/google_chat/adapter.py","plugins/platforms/matrix/adapter.py","plugins/platforms/slack/adapter.py","plugins/platforms/teams/adapter.py","plugins/platforms/telegram/adapter.py","plugins/web/ddgs/_search_worker.py","plugins/web/ddgs/provider.py","pyproject.toml","run_agent.py","scripts/check_subprocess_stdin.py","scripts/ci/assemble_review_comment.py","scripts/ci/emit_review_status.py","scripts/ci/live_comment.py","scripts/ci/lockfile_diff.py","scripts/ci/timings_report.py","scripts/contributor_audit.py","scripts/install.ps1","scripts/install.sh","scripts/release.py","skills/computer-use/SKILL.md","skills/hermes-desktop-plugins/SKILL.md","skills/hermes-desktop-plugins/templates/plugin.js","skills/hermes-themes/SKILL.md","skills/hermes-themes/templates/skin.yaml","skills/productivity/docx/LICENSE.txt","skills/productivity/docx/SKILL.md","skills/productivity/docx/scripts/__init__.py","skills/productivity/docx/scripts/accept_changes.py","skills/productivity/docx/scripts/comment.py","skills/productivity/docx/scripts/merge_runs.py","skills/productivity/docx/scripts/office/helpers/__init__.py","skills/productivity/docx/scripts/office/helpers/pptx_chart.py","skills/productivity/docx/scripts/office/helpers/pptx_slide.py","skills/productivity/docx/scripts/office/helpers/pptx_theme.py","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd","skills/productivity/docx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd","skills/productivity/docx/scripts/office/schemas/ecma/fourth-edition/opc-contentTypes.xsd","skills/productivity/docx/scripts/office/schemas/ecma/fourth-edition/opc-coreProperties.xsd","skills/productivity/docx/scripts/office/schemas/ecma/fourth-edition/opc-digSig.xsd","skills/productivity/docx/scripts/office/schemas/ecma/fourth-edition/opc-relationships.xsd","skills/productivity/docx/scripts/office/schemas/mce/mc.xsd","skills/productivity/docx/scripts/office/schemas/microsoft/wml-2010.xsd","skills/productivity/docx/scripts/office/schemas/microsoft/wml-2012.xsd","skills/productivity/docx/scripts/office/schemas/microsoft/wml-2018.xsd","skills/productivity/docx/scripts/office/schemas/microsoft/wml-cex-2018.xsd","skills/productivity/docx/scripts/office/schemas/microsoft/wml-cid-2016.xsd","skills/productivity/docx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd","skills/productivity/docx/scripts/office/schemas/microsoft/wml-symex-2015.xsd","skills/productivity/docx/scripts/office/soffice.py","skills/productivity/docx/scripts/office/validate.py","skills/productivity/docx/scripts/office/validators/__init__.py","skills/productivity/docx/scripts/office/validators/base.py","skills/productivity/docx/scripts/office/validators/docx.py","skills/productivity/docx/scripts/office/validators/pptx.py","skills/productivity/docx/scripts/office/validators/redlining.py","skills/productivity/docx/scripts/templates/comments.xml","skills/productivity/docx/scripts/templates/commentsExtended.xml","skills/productivity/docx/scripts/templates/commentsExtensible.xml","skills/productivity/docx/scripts/templates/commentsIds.xml","skills/productivity/docx/scripts/templates/people.xml","skills/productivity/nano-pdf/SKILL.md","skills/productivity/ocr-and-documents/SKILL.md","skills/productivity/pdf/LICENSE.txt","skills/productivity/pdf/SKILL.md","skills/productivity/pdf/forms.md","skills/productivity/pdf/reference.md","skills/productivity/pdf/scripts/check_bounding_boxes.py","skills/productivity/pdf/scripts/check_fillable_fields.py","skills/productivity/pdf/scripts/convert_pdf_to_images.py","skills/productivity/pdf/scripts/create_validation_image.py","skills/productivity/pdf/scripts/extract_form_field_info.py","skills/productivity/pdf/scripts/extract_form_structure.py","skills/productivity/pdf/scripts/fill_fillable_fields.py","skills/productivity/pdf/scripts/fill_pdf_form_with_annotations.py","skills/productivity/powerpoint/SKILL.md","skills/productivity/powerpoint/editing.md","skills/productivity/powerpoint/pptxgenjs.md","skills/productivity/powerpoint/scripts/add_slide.py","skills/productivity/powerpoint/scripts/clean.py","skills/productivity/powerpoint/scripts/office/helpers/__init__.py","skills/productivity/powerpoint/scripts/office/helpers/merge_runs.py","skills/productivity/powerpoint/scripts/office/helpers/pptx_chart.py","skills/productivity/powerpoint/scripts/office/helpers/pptx_slide.py","skills/productivity/powerpoint/scripts/office/helpers/pptx_theme.py","skills/productivity/powerpoint/scripts/office/helpers/simplify_redlines.py","skills/productivity/powerpoint/scripts/office/pack.py","skills/productivity/powerpoint/scripts/office/soffice.py","skills/productivity/powerpoint/scripts/office/validate.py","skills/productivity/powerpoint/scripts/office/validators/__init__.py","skills/productivity/powerpoint/scripts/office/validators/base.py","skills/productivity/powerpoint/scripts/office/validators/docx.py","skills/productivity/powerpoint/scripts/office/validators/pptx.py","skills/productivity/powerpoint/scripts/office/validators/redlining.py","skills/productivity/powerpoint/scripts/thumbnail.py","skills/productivity/tui-widgets/SKILL.md","skills/productivity/tui-widgets/templates/clock.mjs","skills/productivity/xlsx/LICENSE.txt","skills/productivity/xlsx/SKILL.md","skills/productivity/xlsx/scripts/office/soffice.py","skills/productivity/xlsx/scripts/recalc.py","tests/agent/lsp/_mock_lsp_server.py","tests/agent/lsp/test_stale_diagnostics.py","tests/agent/test_anthropic_adapter.py","tests/agent/test_anthropic_kimi_signed_thinking_replay.py","tests/agent/test_api_content_sidecar.py","tests/agent/test_battery.py","tests/agent/test_bedrock_adapter.py","tests/agent/test_bedrock_empty_text_blocks.py","tests/agent/test_bedrock_interrupt_post_worker.py","tests/agent/test_billing_usage.py","tests/agent/test_billing_view.py","tests/agent/test_cascading_interrupt_6600.py","tests/agent/test_compression_concurrent_fork.py","tests/agent/test_compression_progress.py","tests/agent/test_compression_rotation_state.py","tests/agent/test_compressor_assistant_tail_anchor.py","tests/agent/test_compressor_tail_cut_tool_pair_floor.py","tests/agent/test_context_compressor.py","tests/agent/test_context_compressor_summary_continuity.py","tests/agent/test_credits_policy.py","tests/agent/test_credits_view.py","tests/agent/test_curator_backup.py","tests/agent/test_display.py","tests/agent/test_error_classifier.py","tests/agent/test_gateway_turn_sidecar.py","tests/agent/test_kimi_coding_anthropic_thinking.py","tests/agent/test_minimax_provider.py","tests/agent/test_model_metadata.py","tests/agent/test_moonshot_schema.py","tests/agent/test_nous_credits_snapshot.py","tests/agent/test_pre_compress_memory_context.py","tests/agent/test_prompt_builder.py","tests/agent/test_reasoning_stale_timeout_floor.py","tests/agent/test_redact.py","tests/agent/test_rotation_flush_persisted_boundary_68196.py","tests/agent/test_secret_scope.py","tests/agent/test_session_rotation_flush_cold_resume_68454.py","tests/agent/test_subscription_view.py","tests/agent/test_tool_executor_checkpoint_paths.py","tests/agent/test_tool_guardrails.py","tests/agent/test_turn_finalizer_final_response_persistence.py","tests/agent/test_turn_finalizer_iteration_limit_exit.py","tests/agent/test_turn_overlap_tripwire.py","tests/agent/test_usage_pricing.py","tests/agent/test_verification_evidence.py","tests/agent/test_verification_stop_caching.py","tests/agent/transports/test_chat_completions.py","tests/ci/test_assemble_review_comment.py","tests/ci/test_live_comment.py","tests/ci/test_lockfile_diff.py","tests/ci/test_timings_report.py","tests/cli/test_branch_command.py","tests/cli/test_cli_browser_connect.py","tests/cli/test_cli_codex_context_reference.py","tests/cli/test_cli_external_editor.py","tests/cli/test_cli_goal_interrupt.py","tests/cli/test_cli_init.py","tests/cli/test_cli_mcp_config_watch.py","tests/cli/test_cli_resume_command.py","tests/cli/test_cpr_local_leak.py","tests/cli/test_fast_command.py","tests/cli/test_reasoning_command.py","tests/cron/test_codex_execution_paths.py","tests/cron/test_cron_provider_pin.py","tests/cron/test_cron_script.py","tests/cron/test_jobs.py","tests/docker/test_tini_compat_shim.py","tests/gateway/relay/test_relay_adapter.py","tests/gateway/test_10710_auto_reset_evicts_cached_agent.py","tests/gateway/test_25107_stale_base_url_api_mode.py","tests/gateway/test_48031_model_switch_after_auto_reset.py","tests/gateway/test_agent_cache.py","tests/gateway/test_api_server.py","tests/gateway/test_async_delivery_capability.py","tests/gateway/test_background_command.py","tests/gateway/test_bounded_adapter_teardown.py","tests/gateway/test_checkpoint_config.py","tests/gateway/test_choice_picker.py","tests/gateway/test_config.py","tests/gateway/test_context_ref_expansion_runtime.py","tests/gateway/test_conversation_scope_funnel.py","tests/gateway/test_delivery_ledger.py","tests/gateway/test_delivery_ledger_producer.py","tests/gateway/test_discord_approval_mentions.py","tests/gateway/test_discord_liveness.py","tests/gateway/test_discord_missed_message_backfill.py","tests/gateway/test_display_config.py","tests/gateway/test_fast_command.py","tests/gateway/test_feishu.py","tests/gateway/test_feishu_table_markdown.py","tests/gateway/test_gateway_shutdown.py","tests/gateway/test_goal_verdict_send.py","tests/gateway/test_google_chat.py","tests/gateway/test_image_input_routing_runtime.py","tests/gateway/test_matrix.py","tests/gateway/test_matrix_exec_approval.py","tests/gateway/test_matrix_message_length.py","tests/gateway/test_message_deduplicator.py","tests/gateway/test_model_command_flat_string_config.py","tests/gateway/test_model_picker_persist.py","tests/gateway/test_model_switch_persistence.py","tests/gateway/test_multiplex_adapter_registry.py","tests/gateway/test_platform_reconnect.py","tests/gateway/test_prompt_tail_freeze.py","tests/gateway/test_replace_child_reap.py","tests/gateway/test_replay_entry_fields.py","tests/gateway/test_restart_redelivery_dedup.py","tests/gateway/test_run_cleanup_progress.py","tests/gateway/test_run_progress_topics.py","tests/gateway/test_runner_fatal_adapter.py","tests/gateway/test_runner_startup_failures.py","tests/gateway/test_safe_adapter_disconnect.py","tests/gateway/test_session_info.py","tests/gateway/test_shutdown_cache_cleanup.py","tests/gateway/test_shutdown_watchdog.py","tests/gateway/test_slack.py","tests/gateway/test_stale_platform_lock_retryable.py","tests/gateway/test_status.py","tests/gateway/test_stream_consumer.py","tests/gateway/test_stream_consumer_thread_routing.py","tests/gateway/test_systemd_notify.py","tests/gateway/test_systemd_watchdog_lifecycle.py","tests/gateway/test_telegram_approval_buttons.py","tests/gateway/test_telegram_audio_vs_voice.py","tests/gateway/test_telegram_auth_check.py","tests/gateway/test_telegram_conflict.py","tests/gateway/test_telegram_group_gating.py","tests/gateway/test_telegram_network_reconnect.py","tests/gateway/test_telegram_voice_v0_regressions.py","tests/gateway/test_text_batching.py","tests/gateway/test_turn_lease.py","tests/hermes_cli/test_25106_global_switch_persists_base_url_api_mode.py","tests/hermes_cli/test_anthropic_picker_curated.py","tests/hermes_cli/test_apply_model_switch_result_context.py","tests/hermes_cli/test_authenticated_providers_exhausted_pool.py","tests/hermes_cli/test_backup.py","tests/hermes_cli/test_billing_cli.py","tests/hermes_cli/test_bitwarden_status.py","tests/hermes_cli/test_browser_connect_dual_stack.py","tests/hermes_cli/test_cli_model_once.py","tests/hermes_cli/test_codex_models.py","tests/hermes_cli/test_config.py","tests/hermes_cli/test_config_validation.py","tests/hermes_cli/test_console_engine.py","tests/hermes_cli/test_context_switch_guard.py","tests/hermes_cli/test_credential_lifecycle.py","tests/hermes_cli/test_custom_provider_context_length.py","tests/hermes_cli/test_custom_provider_extra_headers.py","tests/hermes_cli/test_custom_provider_tls.py","tests/hermes_cli/test_dashboard_admin_endpoints.py","tests/hermes_cli/test_dashboard_auth_status_endpoint.py","tests/hermes_cli/test_dashboard_web_dist_validation.py","tests/hermes_cli/test_desktop_repo_discovery_config.py","tests/hermes_cli/test_doctor.py","tests/hermes_cli/test_ensure_hermes_home_memo.py","tests/hermes_cli/test_env_export_line_lifecycle.py","tests/hermes_cli/test_env_loader.py","tests/hermes_cli/test_gateway.py","tests/hermes_cli/test_gateway_run_hard_exit.py","tests/hermes_cli/test_gateway_runtime_health.py","tests/hermes_cli/test_gateway_service.py","tests/hermes_cli/test_goals.py","tests/hermes_cli/test_inventory.py","tests/hermes_cli/test_jobs_json_utf8_bom.py","tests/hermes_cli/test_kanban_db_repair.py","tests/hermes_cli/test_kanban_goal_mode.py","tests/hermes_cli/test_kimi_cn_provider_listing.py","tests/hermes_cli/test_list_picker_providers.py","tests/hermes_cli/test_mcp_startup.py","tests/hermes_cli/test_model_picker_excluded_providers.py","tests/hermes_cli/test_model_switch_context_display.py","tests/hermes_cli/test_model_switch_custom_providers.py","tests/hermes_cli/test_model_switch_once_flags.py","tests/hermes_cli/test_model_switch_openai_api_mode.py","tests/hermes_cli/test_model_switch_persist_default.py","tests/hermes_cli/test_models.py","tests/hermes_cli/test_models_dev_preferred_merge.py","tests/hermes_cli/test_nous_billing_request.py","tests/hermes_cli/test_placeholder_usage.py","tests/hermes_cli/test_projects_db.py","tests/hermes_cli/test_provider_section3_grouping.py","tests/hermes_cli/test_reasoning_full_command.py","tests/hermes_cli/test_remote_spending_gate_contract.py","tests/hermes_cli/test_runtime_provider_resolution.py","tests/hermes_cli/test_secrets_token_rotation.py","tests/hermes_cli/test_set_config_value.py","tests/hermes_cli/test_skin_cmd.py","tests/hermes_cli/test_skin_engine.py","tests/hermes_cli/test_skin_palettes.py","tests/hermes_cli/test_ssh_ownership_endpoint.py","tests/hermes_cli/test_ssh_session_token_parser.py","tests/hermes_cli/test_subscription_cli.py","tests/hermes_cli/test_systemd_watchdog_unit.py","tests/hermes_cli/test_tools_config.py","tests/hermes_cli/test_tui_npm_install.py","tests/hermes_cli/test_tui_resume_flow.py","tests/hermes_cli/test_update_fleet_restart_timeout.py","tests/hermes_cli/test_user_providers_model_switch.py","tests/hermes_cli/test_web_server.py","tests/hermes_cli/test_web_server_cron_profiles.py","tests/hermes_cli/test_web_ui_build.py","tests/openviking_plugin/test_openviking.py","tests/plugins/memory/test_config_schema.py","tests/plugins/memory/test_hindsight_config_schema.py","tests/plugins/memory/test_honcho_config_schema.py","tests/plugins/memory/test_openviking_provider.py","tests/plugins/memory/test_supermemory_provider.py","tests/run_agent/test_28161_anthropic_stream_pool_cleanup.py","tests/run_agent/test_413_compression.py","tests/run_agent/test_66267_multimodal_interim.py","tests/run_agent/test_compression_feasibility.py","tests/run_agent/test_credential_rotation_route_settings.py","tests/run_agent/test_in_place_compaction.py","tests/run_agent/test_invalid_context_length_warning.py","tests/run_agent/test_partial_stream_finish_reason.py","tests/run_agent/test_pre_compress_memory_context.py","tests/run_agent/test_run_agent.py","tests/run_agent/test_run_agent_codex_responses.py","tests/run_agent/test_stream_interrupt_retry.py","tests/run_agent/test_stream_stale_circuit_breaker.py","tests/run_agent/test_streaming.py","tests/run_agent/test_switch_model_context.py","tests/run_agent/test_verification_continuation_budget.py","tests/secret_sources/test_error_remediation.py","tests/secret_sources/test_profile_secrets.py","tests/skills/test_office_document_skills.py","tests/state/test_fts_runtime_rebuild.py","tests/test_bitwarden_secrets.py","tests/test_env_loader_applied_homes.py","tests/test_env_loader_secret_sources.py","tests/test_gateway_streaming_nested_config.py","tests/test_hermes_constants.py","tests/test_hermes_state.py","tests/test_install_autostash_conflict_recovery.py","tests/test_install_ps1_ascii_only.py","tests/test_live_system_guard_self_test.py","tests/test_onepassword_secrets.py","tests/test_slash_worker_watchdog.py","tests/test_state_db_malformed_repair.py","tests/test_tini_shim.py","tests/test_tui_entry_mcp_owner.py","tests/test_tui_gateway_queue_on_busy.py","tests/test_tui_gateway_server.py","tests/test_web_server.py","tests/test_wheel_locales_e2e.py","tests/test_windows_subprocess_no_window_flags.py","tests/tools/test_browser_headed_mode.py","tests/tools/test_command_guards.py","tests/tools/test_computer_use_delivery_ladder.py","tests/tools/test_credential_files.py","tests/tools/test_delegate.py","tests/tools/test_delegation_live_log.py","tests/tools/test_env_probe.py","tests/tools/test_file_sync.py","tests/tools/test_kanban_tools.py","tests/tools/test_mcp_bridge_single_failure.py","tests/tools/test_mcp_failure_classification.py","tests/tools/test_mcp_parked_self_probe.py","tests/tools/test_mcp_poll_loop_oom_integration.py","tests/tools/test_mcp_rapid_drop_budget.py","tests/tools/test_mcp_reconnect_log_hygiene.py","tests/tools/test_mcp_resource_content.py","tests/tools/test_mcp_stdio_watchdog.py","tests/tools/test_mcp_tool.py","tests/tools/test_mcp_tool_session_expired.py","tests/tools/test_mcp_transport_group_reconnect.py","tests/tools/test_skill_manager_tool.py","tests/tools/test_tool_search_context_provider.py","tests/tools/test_web_providers_ddgs.py","tests/tools/test_x_search_tool.py","tests/tui_gateway/test_inline_rpc_gil_starvation.py","tests/tui_gateway/test_interim_assistant_callback.py","tests/tui_gateway/test_mcp_reload_rev.py","tests/tui_gateway/test_projects_rpc.py","tests/tui_gateway/test_protocol.py","tools/approval.py","tools/async_delegation.py","tools/browser_tool.py","tools/computer_use/backend.py","tools/computer_use/cua_backend.py","tools/computer_use/schema.py","tools/computer_use/tool.py","tools/credential_files.py","tools/delegate_tool.py","tools/delegation_live_log.py","tools/env_probe.py","tools/environments/file_sync.py","tools/kanban_tools.py","tools/mcp_stdio_watchdog.py","tools/mcp_tool.py","tools/memory_tool.py","tools/process_registry.py","tools/session_search_tool.py","tools/skill_manager_tool.py","tools/terminal_tool.py","tools/x_search_tool.py","tui_gateway/_stdin_recovery.py","tui_gateway/compute_host.py","tui_gateway/entry.py","tui_gateway/git_probe.py","tui_gateway/server.py","tui_gateway/slash_worker.py","tui_gateway/ws.py","ui-tui/README.md","ui-tui/package.json","ui-tui/packages/hermes-ink/src/entry-exports.ts","ui-tui/packages/hermes-ink/src/ink/components/App.tsx","ui-tui/packages/hermes-ink/src/ink/osc-response-chain.test.ts","ui-tui/packages/hermes-ink/src/ink/parse-keypress.test.ts","ui-tui/packages/hermes-ink/src/ink/parse-keypress.ts","ui-tui/packages/hermes-ink/src/ink/terminal-background.test.ts","ui-tui/packages/hermes-ink/src/ink/terminal.ts","ui-tui/scripts/bench-streaming-md.tsx","ui-tui/scripts/billing-fixtures.tsx","ui-tui/scripts/visual/paths.mjs","ui-tui/scripts/visual/render.tsx","ui-tui/scripts/visual/run.mjs","ui-tui/scripts/visual/shot.mjs","ui-tui/src/__tests__/activeSessionSwitcher.test.ts","ui-tui/src/__tests__/appChromeStatusRule.test.tsx","ui-tui/src/__tests__/billingStepUp.test.tsx","ui-tui/src/__tests__/charts.test.ts","ui-tui/src/__tests__/createGatewayEventHandler.test.ts","ui-tui/src/__tests__/createSlashHandler.test.ts","ui-tui/src/__tests__/creditsCommand.test.ts","ui-tui/src/__tests__/loaders.test.ts","ui-tui/src/__tests__/overlayPrimitives.test.ts","ui-tui/src/__tests__/paths.test.ts","ui-tui/src/__tests__/streamingMarkdown.test.ts","ui-tui/src/__tests__/subscriptionCommand.test.ts","ui-tui/src/__tests__/subscriptionOverlay.test.tsx","ui-tui/src/__tests__/terminalModes.test.ts","ui-tui/src/__tests__/theme.test.ts","ui-tui/src/__tests__/themeBoot.test.ts","ui-tui/src/__tests__/topupCommand.test.ts","ui-tui/src/__tests__/turnControllerNotice.test.ts","ui-tui/src/__tests__/usageCommand.test.ts","ui-tui/src/__tests__/useBatteryPoll.test.ts","ui-tui/src/__tests__/useConfigSync.test.ts","ui-tui/src/__tests__/userWidgets.test.ts","ui-tui/src/__tests__/weatherApp.test.ts","ui-tui/src/__tests__/widgetGrid.test.ts","ui-tui/src/__tests__/widgetGridComponent.test.tsx","ui-tui/src/__tests__/widgetSdk.test.ts","ui-tui/src/app/createGatewayEventHandler.ts","ui-tui/src/app/createSlashHandler.ts","ui-tui/src/app/interfaces.ts","ui-tui/src/app/overlayStore.ts","ui-tui/src/app/slash/commands/billing.ts","ui-tui/src/app/slash/commands/core.ts","ui-tui/src/app/slash/commands/credits.ts","ui-tui/src/app/slash/commands/debug.ts","ui-tui/src/app/slash/commands/session.ts","ui-tui/src/app/slash/commands/subscription.ts","ui-tui/src/app/slash/commands/topup.ts","ui-tui/src/app/slash/registry.ts","ui-tui/src/app/turnController.ts","ui-tui/src/app/uiStore.ts","ui-tui/src/app/useBatteryPoll.ts","ui-tui/src/app/useConfigSync.ts","ui-tui/src/app/useInputHandlers.ts","ui-tui/src/app/useMainApp.ts","ui-tui/src/app/useSubmission.test.ts","ui-tui/src/app/useSubmission.ts","ui-tui/src/components/accordion.tsx","ui-tui/src/components/activeSessionSwitcher.tsx","ui-tui/src/components/agentsOverlay.tsx","ui-tui/src/components/appChrome.tsx","ui-tui/src/components/appLayout.tsx","ui-tui/src/components/appOverlays.tsx","ui-tui/src/components/billingOverlay.tsx","ui-tui/src/components/branding.tsx","ui-tui/src/components/gridStreamsDemo.tsx","ui-tui/src/components/gridTestOverlay.tsx","ui-tui/src/components/journey.tsx","ui-tui/src/components/loaders.tsx","ui-tui/src/components/modelPicker.tsx","ui-tui/src/components/overlay.tsx","ui-tui/src/components/overlayPrimitives.tsx","ui-tui/src/components/overlayScrollbar.tsx","ui-tui/src/components/petPicker.tsx","ui-tui/src/components/pluginsHub.tsx","ui-tui/src/components/prompts.tsx","ui-tui/src/components/skillsHub.tsx","ui-tui/src/components/streamingMarkdown.tsx","ui-tui/src/components/subscriptionOverlay.tsx","ui-tui/src/components/textInput.tsx","ui-tui/src/components/thinking.tsx","ui-tui/src/components/widgetGrid.tsx","ui-tui/src/domain/paths.ts","ui-tui/src/entry.tsx","ui-tui/src/gatewayTypes.ts","ui-tui/src/hooks/useCompletion.ts","ui-tui/src/lib/charts.ts","ui-tui/src/lib/color.test.ts","ui-tui/src/lib/color.ts","ui-tui/src/lib/syntax.ts","ui-tui/src/lib/terminalModes.ts","ui-tui/src/lib/themeBoot.ts","ui-tui/src/lib/widgetGrid.ts","ui-tui/src/sdk/apps/dialogTest.tsx","ui-tui/src/sdk/apps/gridTest.tsx","ui-tui/src/sdk/apps/gridTestState.ts","ui-tui/src/sdk/apps/index.ts","ui-tui/src/sdk/apps/ticker.tsx","ui-tui/src/sdk/apps/weather.tsx","ui-tui/src/sdk/host.tsx","ui-tui/src/sdk/index.ts","ui-tui/src/sdk/registry.ts","ui-tui/src/sdk/types.ts","ui-tui/src/sdk/userWidgets.ts","ui-tui/src/theme.ts","ui-tui/src/types.ts","ui-tui/src/types/hermes-ink.d.ts","web/src/components/ModelPickerDialog.tsx","web/src/lib/chat-activation.test.ts","web/src/lib/chat-activation.ts","web/src/lib/dashboard-modal-shell.test.ts","web/src/lib/dashboard-modal-shell.ts","web/src/lib/model-picker-filter.test.ts","web/src/lib/model-picker-filter.ts","web/src/pages/ChatPage.tsx","web/src/pages/ModelsPage.tsx","website/docs/developer-guide/desktop-plugin-sdk.md","website/docs/developer-guide/plugins/index.md","website/docs/developer-guide/secret-source-plugin.md","website/docs/guides/delegation-patterns.md","website/docs/guides/run-hermes-with-nous-portal.md","website/docs/integrations/nous-portal.md","website/docs/integrations/providers.md","website/docs/reference/cli-commands.md","website/docs/reference/environment-variables.md","website/docs/reference/model-catalog.md","website/docs/reference/optional-skills-catalog.md","website/docs/reference/skills-catalog.md","website/docs/reference/slash-commands.md","website/docs/reference/tools-reference.md","website/docs/user-guide/configuration.md","website/docs/user-guide/configuring-models.md","website/docs/user-guide/desktop.md","website/docs/user-guide/features/browser.md","website/docs/user-guide/features/delegation.md","website/docs/user-guide/features/deliverable-mode.md","website/docs/user-guide/features/extending-the-dashboard.md","website/docs/user-guide/features/kanban.md","website/docs/user-guide/features/lsp.md","website/docs/user-guide/features/memory-providers.md","website/docs/user-guide/features/x-search.md","website/docs/user-guide/messaging/dingtalk.md","website/docs/user-guide/messaging/discord.md","website/docs/user-guide/messaging/google_chat.md","website/docs/user-guide/messaging/index.md","website/docs/user-guide/messaging/matrix.md","website/docs/user-guide/messaging/slack.md","website/docs/user-guide/messaging/whatsapp-cloud.md","website/docs/user-guide/secrets/bitwarden.md","website/docs/user-guide/secrets/index.md","website/docs/user-guide/secrets/onepassword.md","website/docs/user-guide/security.md","website/docs/user-guide/skills/bundled/apple/apple-macos-computer-use.md","website/docs/user-guide/skills/bundled/computer-use/computer-use-computer-use.md","website/docs/user-guide/skills/bundled/hermes-desktop-plugins/hermes-desktop-plugins-hermes-desktop-plugins.md","website/docs/user-guide/skills/bundled/productivity/productivity-docx.md","website/docs/user-guide/skills/bundled/productivity/productivity-nano-pdf.md","website/docs/user-guide/skills/bundled/productivity/productivity-ocr-and-documents.md","website/docs/user-guide/skills/bundled/productivity/productivity-pdf.md","website/docs/user-guide/skills/bundled/productivity/productivity-powerpoint.md","website/docs/user-guide/skills/bundled/productivity/productivity-xlsx.md","website/docs/user-guide/skills/optional/creative/creative-unreal-mcp.md","website/docs/user-guide/skills/optional/finance/finance-excel-author.md","website/docs/user-guide/skills/optional/security/security-unbroker.md","website/docs/user-guide/skills/optional/web-development/web-development-cloudflare-temporary-deploy.md","website/docs/user-guide/tui.md","website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/guides/delegation-patterns.md","website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/guides/run-hermes-with-nous-portal.md","website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/integrations/nous-portal.md","website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/integrations/providers.md","website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/features/delegation.md","website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/features/memory-providers.md","website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/features/x-search.md","website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/messaging/dingtalk.md","website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/messaging/discord.md","website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/secrets/bitwarden.md","website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/security.md","website/sidebars.ts","website/static/api/model-catalog.json"]}],"trust":{"default_tier":"verified","includes_suggested":false}}