"""Move map for hermes_agent restructure PR 1. Used by the restructure mover (Task 2) and later by the migration script. """ MOVE_MAP: dict[str, str] = { # === Top-level modules (section 1a) === "run_agent.py": "hermes_agent/agent/loop.py", "cli.py": "hermes_agent/cli/repl.py", "model_tools.py": "hermes_agent/tools/dispatch.py", "toolsets.py": "hermes_agent/tools/toolsets.py", "toolset_distributions.py": "hermes_agent/tools/distributions.py", "mcp_serve.py": "hermes_agent/tools/mcp/serve.py", "utils.py": "hermes_agent/utils.py", "hermes_constants.py": "hermes_agent/constants.py", "hermes_state.py": "hermes_agent/state.py", "hermes_logging.py": "hermes_agent/logging.py", "hermes_time.py": "hermes_agent/time.py", # === agent/ → hermes_agent/agent/ (section 1b, stays in agent) === "agent/__init__.py": "hermes_agent/agent/__init__.py", "agent/prompt_builder.py": "hermes_agent/agent/prompt_builder.py", "agent/context_engine.py": "hermes_agent/agent/context/engine.py", "agent/context_compressor.py": "hermes_agent/agent/context/compressor.py", "agent/context_references.py": "hermes_agent/agent/context/references.py", "agent/memory_manager.py": "hermes_agent/agent/memory/manager.py", "agent/memory_provider.py": "hermes_agent/agent/memory/provider.py", "agent/image_gen_provider.py": "hermes_agent/agent/image_gen/provider.py", "agent/image_gen_registry.py": "hermes_agent/agent/image_gen/registry.py", "agent/display.py": "hermes_agent/agent/display.py", "agent/redact.py": "hermes_agent/agent/redact.py", "agent/trajectory.py": "hermes_agent/agent/trajectory.py", "agent/insights.py": "hermes_agent/agent/insights.py", "agent/title_generator.py": "hermes_agent/agent/title_generator.py", "agent/skill_commands.py": "hermes_agent/agent/skill_commands.py", "agent/skill_utils.py": "hermes_agent/agent/skill_utils.py", "agent/shell_hooks.py": "hermes_agent/agent/shell_hooks.py", "agent/file_safety.py": "hermes_agent/agent/file_safety.py", "agent/subdirectory_hints.py": "hermes_agent/agent/subdirectory_hints.py", "agent/manual_compression_feedback.py": "hermes_agent/agent/manual_compression_feedback.py", "agent/copilot_acp_client.py": "hermes_agent/agent/copilot_acp_client.py", # === agent/ → hermes_agent/providers/ (section 1b, provider files) === "agent/google_code_assist.py": "hermes_agent/providers/google_code_assist.py", "agent/transports/__init__.py": "hermes_agent/providers/__init__.py", "agent/transports/base.py": "hermes_agent/providers/base.py", "agent/transports/types.py": "hermes_agent/providers/types.py", "agent/transports/anthropic.py": "hermes_agent/providers/anthropic_transport.py", "agent/transports/bedrock.py": "hermes_agent/providers/bedrock_transport.py", "agent/transports/chat_completions.py": "hermes_agent/providers/openai_transport.py", "agent/transports/codex.py": "hermes_agent/providers/codex_transport.py", "agent/anthropic_adapter.py": "hermes_agent/providers/anthropic_adapter.py", "agent/bedrock_adapter.py": "hermes_agent/providers/bedrock_adapter.py", "agent/codex_responses_adapter.py": "hermes_agent/providers/codex_adapter.py", "agent/gemini_native_adapter.py": "hermes_agent/providers/gemini_adapter.py", "agent/gemini_cloudcode_adapter.py": "hermes_agent/providers/gemini_cloudcode_adapter.py", "agent/gemini_schema.py": "hermes_agent/providers/gemini_schema.py", "agent/google_oauth.py": "hermes_agent/providers/google_oauth.py", "agent/auxiliary_client.py": "hermes_agent/providers/auxiliary.py", "agent/model_metadata.py": "hermes_agent/providers/metadata.py", "agent/models_dev.py": "hermes_agent/providers/metadata_dev.py", "agent/usage_pricing.py": "hermes_agent/providers/pricing.py", "agent/account_usage.py": "hermes_agent/providers/account_usage.py", "agent/prompt_caching.py": "hermes_agent/providers/caching.py", "agent/credential_pool.py": "hermes_agent/providers/credential_pool.py", "agent/credential_sources.py": "hermes_agent/providers/credential_sources.py", "agent/rate_limit_tracker.py": "hermes_agent/providers/rate_limiting.py", "agent/nous_rate_guard.py": "hermes_agent/providers/nous_rate_guard.py", "agent/retry_utils.py": "hermes_agent/providers/retry.py", "agent/error_classifier.py": "hermes_agent/providers/errors.py", # === tools/environments/ → hermes_agent/backends/ (section 1c) === "tools/environments/__init__.py": "hermes_agent/backends/__init__.py", "tools/environments/base.py": "hermes_agent/backends/base.py", "tools/environments/local.py": "hermes_agent/backends/local.py", "tools/environments/docker.py": "hermes_agent/backends/docker.py", "tools/environments/ssh.py": "hermes_agent/backends/ssh.py", "tools/environments/modal.py": "hermes_agent/backends/modal.py", "tools/environments/managed_modal.py": "hermes_agent/backends/managed_modal.py", "tools/environments/modal_utils.py": "hermes_agent/backends/modal_utils.py", "tools/environments/daytona.py": "hermes_agent/backends/daytona.py", "tools/environments/singularity.py": "hermes_agent/backends/singularity.py", "tools/environments/file_sync.py": "hermes_agent/backends/file_sync.py", # === tools/ → hermes_agent/tools/ subgroups (section 1c) === # Browser "tools/browser_tool.py": "hermes_agent/tools/browser/tool.py", "tools/browser_cdp_tool.py": "hermes_agent/tools/browser/cdp.py", "tools/browser_camofox.py": "hermes_agent/tools/browser/camofox.py", "tools/browser_camofox_state.py": "hermes_agent/tools/browser/camofox_state.py", "tools/browser_providers/__init__.py": "hermes_agent/tools/browser/providers/__init__.py", "tools/browser_providers/base.py": "hermes_agent/tools/browser/providers/base.py", "tools/browser_providers/browser_use.py": "hermes_agent/tools/browser/providers/browser_use.py", "tools/browser_providers/browserbase.py": "hermes_agent/tools/browser/providers/browserbase.py", "tools/browser_providers/firecrawl.py": "hermes_agent/tools/browser/providers/firecrawl.py", # MCP "tools/mcp_tool.py": "hermes_agent/tools/mcp/tool.py", "tools/mcp_oauth.py": "hermes_agent/tools/mcp/oauth.py", "tools/mcp_oauth_manager.py": "hermes_agent/tools/mcp/oauth_manager.py", # Skills "tools/skill_manager_tool.py": "hermes_agent/tools/skills/manager.py", "tools/skills_tool.py": "hermes_agent/tools/skills/tool.py", "tools/skills_hub.py": "hermes_agent/tools/skills/hub.py", "tools/skills_guard.py": "hermes_agent/tools/skills/guard.py", "tools/skills_sync.py": "hermes_agent/tools/skills/sync.py", # Media "tools/voice_mode.py": "hermes_agent/tools/media/voice.py", "tools/tts_tool.py": "hermes_agent/tools/media/tts.py", "tools/transcription_tools.py": "hermes_agent/tools/media/transcription.py", "tools/neutts_synth.py": "hermes_agent/tools/media/neutts.py", "tools/image_generation_tool.py": "hermes_agent/tools/media/image_gen.py", # Files "tools/file_tools.py": "hermes_agent/tools/files/tools.py", "tools/file_operations.py": "hermes_agent/tools/files/operations.py", "tools/file_state.py": "hermes_agent/tools/files/state.py", # Security "tools/path_security.py": "hermes_agent/tools/security/paths.py", "tools/url_safety.py": "hermes_agent/tools/security/urls.py", "tools/tirith_security.py": "hermes_agent/tools/security/tirith.py", "tools/approval.py": "hermes_agent/tools/security/approval.py", # === tools/ flat files (section 1c, just gain prefix) === "tools/__init__.py": "hermes_agent/tools/__init__.py", "tools/registry.py": "hermes_agent/tools/registry.py", "tools/terminal_tool.py": "hermes_agent/tools/terminal.py", "tools/web_tools.py": "hermes_agent/tools/web.py", "tools/vision_tools.py": "hermes_agent/tools/vision.py", "tools/code_execution_tool.py": "hermes_agent/tools/code_execution.py", "tools/delegate_tool.py": "hermes_agent/tools/delegate.py", "tools/memory_tool.py": "hermes_agent/tools/memory.py", "tools/todo_tool.py": "hermes_agent/tools/todo.py", "tools/clarify_tool.py": "hermes_agent/tools/clarify.py", "tools/cronjob_tools.py": "hermes_agent/tools/cronjob.py", "tools/send_message_tool.py": "hermes_agent/tools/send_message.py", "tools/discord_tool.py": "hermes_agent/tools/discord.py", "tools/homeassistant_tool.py": "hermes_agent/tools/homeassistant.py", "tools/rl_training_tool.py": "hermes_agent/tools/rl_training.py", "tools/mixture_of_agents_tool.py": "hermes_agent/tools/mixture_of_agents.py", "tools/session_search_tool.py": "hermes_agent/tools/session_search.py", "tools/managed_tool_gateway.py": "hermes_agent/tools/managed_gateway.py", "tools/checkpoint_manager.py": "hermes_agent/tools/checkpoint.py", "tools/openrouter_client.py": "hermes_agent/tools/openrouter.py", "tools/feishu_doc_tool.py": "hermes_agent/tools/feishu_doc.py", "tools/feishu_drive_tool.py": "hermes_agent/tools/feishu_drive.py", "tools/budget_config.py": "hermes_agent/tools/budget_config.py", "tools/process_registry.py": "hermes_agent/tools/process_registry.py", "tools/tool_result_storage.py": "hermes_agent/tools/result_storage.py", "tools/tool_backend_helpers.py": "hermes_agent/tools/backend_helpers.py", "tools/debug_helpers.py": "hermes_agent/tools/debug_helpers.py", "tools/env_passthrough.py": "hermes_agent/tools/env_passthrough.py", "tools/osv_check.py": "hermes_agent/tools/osv_check.py", "tools/patch_parser.py": "hermes_agent/tools/patch_parser.py", "tools/xai_http.py": "hermes_agent/tools/xai_http.py", "tools/credential_files.py": "hermes_agent/tools/credential_files.py", "tools/binary_extensions.py": "hermes_agent/tools/binary_extensions.py", "tools/ansi_strip.py": "hermes_agent/tools/ansi_strip.py", "tools/fuzzy_match.py": "hermes_agent/tools/fuzzy_match.py", "tools/interrupt.py": "hermes_agent/tools/interrupt.py", "tools/website_policy.py": "hermes_agent/tools/website_policy.py", # === hermes_cli/ → hermes_agent/cli/ (section 1d) === "hermes_cli/__init__.py": "hermes_agent/cli/__init__.py", "hermes_cli/main.py": "hermes_agent/cli/main.py", "hermes_cli/commands.py": "hermes_agent/cli/commands.py", "hermes_cli/config.py": "hermes_agent/cli/config.py", "hermes_cli/auth.py": "hermes_agent/cli/auth/auth.py", "hermes_cli/auth_commands.py": "hermes_agent/cli/auth/commands.py", "hermes_cli/copilot_auth.py": "hermes_agent/cli/auth/copilot.py", "hermes_cli/dingtalk_auth.py": "hermes_agent/cli/auth/dingtalk.py", "hermes_cli/providers.py": "hermes_agent/cli/providers.py", "hermes_cli/runtime_provider.py": "hermes_agent/cli/runtime_provider.py", "hermes_cli/models.py": "hermes_agent/cli/models/models.py", "hermes_cli/model_normalize.py": "hermes_agent/cli/models/normalize.py", "hermes_cli/model_switch.py": "hermes_agent/cli/models/switch.py", "hermes_cli/codex_models.py": "hermes_agent/cli/models/codex.py", "hermes_cli/plugins.py": "hermes_agent/cli/plugins.py", "hermes_cli/plugins_cmd.py": "hermes_agent/cli/plugins_cmd.py", "hermes_cli/skills_config.py": "hermes_agent/cli/skills_config.py", "hermes_cli/skills_hub.py": "hermes_agent/cli/skills_hub.py", "hermes_cli/tools_config.py": "hermes_agent/cli/tools_config.py", "hermes_cli/profiles.py": "hermes_agent/cli/profiles.py", "hermes_cli/cron.py": "hermes_agent/cli/cron.py", "hermes_cli/gateway.py": "hermes_agent/cli/gateway.py", "hermes_cli/mcp_config.py": "hermes_agent/cli/mcp_config.py", "hermes_cli/memory_setup.py": "hermes_agent/cli/memory_setup.py", "hermes_cli/env_loader.py": "hermes_agent/cli/env_loader.py", "hermes_cli/nous_subscription.py": "hermes_agent/cli/nous_subscription.py", "hermes_cli/banner.py": "hermes_agent/cli/ui/banner.py", "hermes_cli/callbacks.py": "hermes_agent/cli/ui/callbacks.py", "hermes_cli/cli_output.py": "hermes_agent/cli/ui/output.py", "hermes_cli/colors.py": "hermes_agent/cli/ui/colors.py", "hermes_cli/skin_engine.py": "hermes_agent/cli/ui/skin_engine.py", "hermes_cli/curses_ui.py": "hermes_agent/cli/ui/curses.py", "hermes_cli/tips.py": "hermes_agent/cli/ui/tips.py", "hermes_cli/status.py": "hermes_agent/cli/ui/status.py", "hermes_cli/completion.py": "hermes_agent/cli/ui/completion.py", "hermes_cli/backup.py": "hermes_agent/cli/backup.py", "hermes_cli/clipboard.py": "hermes_agent/cli/clipboard.py", "hermes_cli/debug.py": "hermes_agent/cli/debug.py", "hermes_cli/doctor.py": "hermes_agent/cli/doctor.py", "hermes_cli/dump.py": "hermes_agent/cli/dump.py", "hermes_cli/hooks.py": "hermes_agent/cli/hooks.py", "hermes_cli/logs.py": "hermes_agent/cli/logs.py", "hermes_cli/pairing.py": "hermes_agent/cli/pairing.py", "hermes_cli/platforms.py": "hermes_agent/cli/platforms.py", "hermes_cli/setup.py": "hermes_agent/cli/setup_wizard.py", "hermes_cli/timeouts.py": "hermes_agent/cli/timeouts.py", "hermes_cli/uninstall.py": "hermes_agent/cli/uninstall.py", "hermes_cli/web_server.py": "hermes_agent/cli/web_server.py", "hermes_cli/webhook.py": "hermes_agent/cli/webhook.py", "hermes_cli/default_soul.py": "hermes_agent/cli/default_soul.py", "hermes_cli/claw.py": "hermes_agent/cli/claw.py", # === gateway/ → hermes_agent/gateway/ (section 1e) === "gateway/__init__.py": "hermes_agent/gateway/__init__.py", "gateway/builtin_hooks/__init__.py": "hermes_agent/gateway/builtin_hooks/__init__.py", "gateway/builtin_hooks/boot_md.py": "hermes_agent/gateway/builtin_hooks/boot_md.py", "gateway/channel_directory.py": "hermes_agent/gateway/channel_directory.py", "gateway/config.py": "hermes_agent/gateway/config.py", "gateway/delivery.py": "hermes_agent/gateway/delivery.py", "gateway/display_config.py": "hermes_agent/gateway/display_config.py", "gateway/hooks.py": "hermes_agent/gateway/hooks.py", "gateway/mirror.py": "hermes_agent/gateway/mirror.py", "gateway/pairing.py": "hermes_agent/gateway/pairing.py", "gateway/platforms/__init__.py": "hermes_agent/gateway/platforms/__init__.py", "gateway/platforms/api_server.py": "hermes_agent/gateway/platforms/api_server.py", "gateway/platforms/base.py": "hermes_agent/gateway/platforms/base.py", "gateway/platforms/bluebubbles.py": "hermes_agent/gateway/platforms/bluebubbles.py", "gateway/platforms/dingtalk.py": "hermes_agent/gateway/platforms/dingtalk.py", "gateway/platforms/discord.py": "hermes_agent/gateway/platforms/discord.py", "gateway/platforms/email.py": "hermes_agent/gateway/platforms/email.py", "gateway/platforms/feishu_comment_rules.py": "hermes_agent/gateway/platforms/feishu_comment_rules.py", "gateway/platforms/feishu_comment.py": "hermes_agent/gateway/platforms/feishu_comment.py", "gateway/platforms/feishu.py": "hermes_agent/gateway/platforms/feishu.py", "gateway/platforms/helpers.py": "hermes_agent/gateway/platforms/helpers.py", "gateway/platforms/homeassistant.py": "hermes_agent/gateway/platforms/homeassistant.py", "gateway/platforms/matrix.py": "hermes_agent/gateway/platforms/matrix.py", "gateway/platforms/mattermost.py": "hermes_agent/gateway/platforms/mattermost.py", "gateway/platforms/qqbot/__init__.py": "hermes_agent/gateway/platforms/qqbot/__init__.py", "gateway/platforms/qqbot/adapter.py": "hermes_agent/gateway/platforms/qqbot/adapter.py", "gateway/platforms/qqbot/constants.py": "hermes_agent/gateway/platforms/qqbot/constants.py", "gateway/platforms/qqbot/crypto.py": "hermes_agent/gateway/platforms/qqbot/crypto.py", "gateway/platforms/qqbot/onboard.py": "hermes_agent/gateway/platforms/qqbot/onboard.py", "gateway/platforms/qqbot/utils.py": "hermes_agent/gateway/platforms/qqbot/utils.py", "gateway/platforms/signal.py": "hermes_agent/gateway/platforms/signal.py", "gateway/platforms/slack.py": "hermes_agent/gateway/platforms/slack.py", "gateway/platforms/sms.py": "hermes_agent/gateway/platforms/sms.py", "gateway/platforms/telegram_network.py": "hermes_agent/gateway/platforms/telegram_network.py", "gateway/platforms/telegram.py": "hermes_agent/gateway/platforms/telegram.py", "gateway/platforms/webhook.py": "hermes_agent/gateway/platforms/webhook.py", "gateway/platforms/wecom_callback.py": "hermes_agent/gateway/platforms/wecom_callback.py", "gateway/platforms/wecom_crypto.py": "hermes_agent/gateway/platforms/wecom_crypto.py", "gateway/platforms/wecom.py": "hermes_agent/gateway/platforms/wecom.py", "gateway/platforms/weixin.py": "hermes_agent/gateway/platforms/weixin.py", "gateway/platforms/whatsapp.py": "hermes_agent/gateway/platforms/whatsapp.py", "gateway/restart.py": "hermes_agent/gateway/restart.py", "gateway/run.py": "hermes_agent/gateway/run.py", "gateway/session_context.py": "hermes_agent/gateway/session_context.py", "gateway/session.py": "hermes_agent/gateway/session.py", "gateway/status.py": "hermes_agent/gateway/status.py", "gateway/sticker_cache.py": "hermes_agent/gateway/sticker_cache.py", "gateway/stream_consumer.py": "hermes_agent/gateway/stream_consumer.py", # === acp_adapter/ → hermes_agent/acp/ (section 1e) === "acp_adapter/__init__.py": "hermes_agent/acp/__init__.py", "acp_adapter/__main__.py": "hermes_agent/acp/__main__.py", "acp_adapter/auth.py": "hermes_agent/acp/auth.py", "acp_adapter/entry.py": "hermes_agent/acp/entry.py", "acp_adapter/events.py": "hermes_agent/acp/events.py", "acp_adapter/permissions.py": "hermes_agent/acp/permissions.py", "acp_adapter/server.py": "hermes_agent/acp/server.py", "acp_adapter/session.py": "hermes_agent/acp/session.py", "acp_adapter/tools.py": "hermes_agent/acp/tools.py", # === cron/ → hermes_agent/cron/ (section 1e) === "cron/__init__.py": "hermes_agent/cron/__init__.py", "cron/jobs.py": "hermes_agent/cron/jobs.py", "cron/scheduler.py": "hermes_agent/cron/scheduler.py", # === plugins/ → hermes_agent/plugins/ (interview decision) === "plugins/__init__.py": "hermes_agent/plugins/__init__.py", "plugins/context_engine/__init__.py": "hermes_agent/plugins/context_engine/__init__.py", "plugins/disk-cleanup/__init__.py": "hermes_agent/plugins/disk-cleanup/__init__.py", "plugins/disk-cleanup/disk_cleanup.py": "hermes_agent/plugins/disk-cleanup/disk_cleanup.py", "plugins/example-dashboard/dashboard/plugin_api.py": "hermes_agent/plugins/example-dashboard/dashboard/plugin_api.py", "plugins/image_gen/openai/__init__.py": "hermes_agent/plugins/image_gen/openai/__init__.py", "plugins/memory/__init__.py": "hermes_agent/plugins/memory/__init__.py", "plugins/memory/byterover/__init__.py": "hermes_agent/plugins/memory/byterover/__init__.py", "plugins/memory/hindsight/__init__.py": "hermes_agent/plugins/memory/hindsight/__init__.py", "plugins/memory/holographic/__init__.py": "hermes_agent/plugins/memory/holographic/__init__.py", "plugins/memory/holographic/holographic.py": "hermes_agent/plugins/memory/holographic/holographic.py", "plugins/memory/holographic/retrieval.py": "hermes_agent/plugins/memory/holographic/retrieval.py", "plugins/memory/holographic/store.py": "hermes_agent/plugins/memory/holographic/store.py", "plugins/memory/honcho/__init__.py": "hermes_agent/plugins/memory/honcho/__init__.py", "plugins/memory/honcho/cli.py": "hermes_agent/plugins/memory/honcho/cli.py", "plugins/memory/honcho/client.py": "hermes_agent/plugins/memory/honcho/client.py", "plugins/memory/honcho/session.py": "hermes_agent/plugins/memory/honcho/session.py", "plugins/memory/mem0/__init__.py": "hermes_agent/plugins/memory/mem0/__init__.py", "plugins/memory/openviking/__init__.py": "hermes_agent/plugins/memory/openviking/__init__.py", "plugins/memory/retaindb/__init__.py": "hermes_agent/plugins/memory/retaindb/__init__.py", "plugins/memory/supermemory/__init__.py": "hermes_agent/plugins/memory/supermemory/__init__.py", }